public IActionResult Delete(int id) { VaccinationVM vaccination = repository.GetByCondition(v => v.Id == id).FirstOrDefault(); if (vaccination == null) { Log.Information($"{CurrentMethod.GetName()}: прививка Id = {id} отсутствует в базе данных"); return(NotFound()); } try { repository.Delete(id); } catch (ArgumentNullException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Параметр не может быть равен null\n Имя параметра: {e.ParamName}\n Стек вызовов:\n{e.StackTrace}"); return(StatusCode(500)); } catch (DbUpdateConcurrencyException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Стек вызовов:\n{e.StackTrace}"); return(StatusCode(500)); } catch (DbUpdateException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Стек вызовов:\n{e.StackTrace}"); return(StatusCode(500)); } Log.Information($"{CurrentMethod.GetName()}: удалена прививка Id = {id}"); return(Ok()); }
public ActionResult <ResponseVM> Post([FromBody] VaccinationVM vaccination) { if (vaccination == null) { Log.Information($"{CurrentMethod.GetName()}: не удалось связать модель"); ResponseVM response400 = new ResponseVM { IsSuccess = false, ErrorMessage = "Bad request", StatusCode = 400, Result = "Не удалось связать модель, vaccination была равна null" }; return(BadRequest(response400)); } try { repository.Add(vaccination); } catch (DbUpdateConcurrencyException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Стек вызовов:\n{e.StackTrace}"); ResponseVM response500 = new ResponseVM { IsSuccess = false, ErrorMessage = "Internal server error", StatusCode = 500, Result = "Внутренняя ошибка сервера" }; return(StatusCode(500, response500)); } catch (DbUpdateException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Стек вызовов:\n{e.StackTrace}"); ResponseVM response500 = new ResponseVM { IsSuccess = false, ErrorMessage = "Internal server error", StatusCode = 500, Result = "Внутренняя ошибка сервера" }; return(StatusCode(500, response500)); } Log.Information($"{CurrentMethod.GetName()}: добавлена прививка Id = {vaccination.Id}"); ResponseVM response200 = new ResponseVM { IsSuccess = true, StatusCode = 200, Result = $"Добавлена прививка Id = {vaccination.Id}" }; return(Ok(response200)); }
public ActionResult <ResponseVM> Put([FromRoute] int id, [FromBody] VaccinationVM vaccination) { if (vaccination == null) { Log.Information($"{CurrentMethod.GetName()}: не удалось связать модель"); ResponseVM response400 = new ResponseVM { IsSuccess = false, ErrorMessage = "Bad request", StatusCode = 400, Result = "Не удалось связать модель, vaccination была равна null" }; return(BadRequest(response400)); } VaccinationVM vaccinationFromDB = null; try { vaccinationFromDB = repository.GetByCondition(v => v.Id == id).FirstOrDefault(); } catch (ArgumentNullException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Параметр не может быть равен null\n Имя параметра: {e.ParamName}\n Стек вызовов:\n{e.StackTrace}"); ResponseVM response500 = new ResponseVM { IsSuccess = false, ErrorMessage = "Internal server error", StatusCode = 500, Result = "Внутренняя ошибка сервера" }; return(StatusCode(500, response500)); } if (vaccinationFromDB == null) { Log.Information($"{CurrentMethod.GetName()}: прививка Id = {id} отсутствует в базе данных"); ResponseVM response404 = new ResponseVM { IsSuccess = false, ErrorMessage = "Not found", StatusCode = 404, Result = $"Прививка Id = {id} отсутствует в базе данных" }; return(NotFound(response404)); } try { repository.Update(vaccination); } catch (ArgumentNullException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Параметр не может быть равен null\n Имя параметра: {e.ParamName}\n Стек вызовов:\n{e.StackTrace}"); ResponseVM response500 = new ResponseVM { IsSuccess = false, ErrorMessage = "Internal server error", StatusCode = 500, Result = "Внутренняя ошибка сервера" }; return(StatusCode(500, response500)); } catch (DbUpdateConcurrencyException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Стек вызовов:\n{e.StackTrace}"); ResponseVM response500 = new ResponseVM { IsSuccess = false, ErrorMessage = "Internal server error", StatusCode = 500, Result = "Внутренняя ошибка сервера" }; return(StatusCode(500, response500)); } catch (DbUpdateException e) { Log.Error($"{CurrentMethod.GetName()}: при обработке запроса произошло исключение {e.GetType()}\n Метод вызвавший исключение: {e.TargetSite.Name}\n Стек вызовов:\n{e.StackTrace}"); ResponseVM response500 = new ResponseVM { IsSuccess = false, ErrorMessage = "Internal server error", StatusCode = 500, Result = "Внутренняя ошибка сервера" }; return(StatusCode(500, response500)); } Log.Information($"{CurrentMethod.GetName()}: изменена прививка Id = {id}"); ResponseVM response200 = new ResponseVM { IsSuccess = true, StatusCode = 200, Result = $"Изменена прививка Id = {id}" }; return(Ok(response200)); }