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);
            }
        }