public async Task <IActionResult> AddDefaultBotResponseAsync([FromBody] DefaultBotResponse resp) { if (resp == null) { return(BadRequest()); } if (!HasAccess(_validationRepo.GetProjectOwnerId(resp.TheProjectId))) { return(StatusCode(403)); } var validationContext = new System.ComponentModel.DataAnnotations.ValidationContext(resp, null, null); var validationResults = new List <ValidationResult>(); Validator.TryValidateObject(resp, validationContext, validationResults, true); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (await _defRespRepo.AddDefaultBotResponseAsync(resp)) { return(StatusCode(201)); } else { return(BadRequest()); } }
public async Task <bool> AddDefaultBotResponseAsync(DefaultBotResponse resp) { try { await _dbContext.DefaultBotResponses.AddAsync(resp); await _dbContext.SaveChangesAsync(); _logger.LogInformation("Default bot response ({resp.Id}) was added", resp.Id); return(true); } catch (Exception ex) { _logger.LogError(ex, "can't add default bot response"); return(false); } }
public async Task <bool> UpdateDefaultBotResponseAsync(DefaultBotResponse resp) { try { var respInDb = await _dbContext.DefaultBotResponses.FindAsync(resp.Id); _dbContext.Entry(respInDb).CurrentValues.SetValues(resp); await _dbContext.SaveChangesAsync(); _logger.LogInformation("Default bot response ({resp.Id}) was updated", resp.Id); return(true); } catch (Exception ex) { _logger.LogError(ex, "can't update default bot response ({resp.Id})", resp.Id); return(false); } }