public IActionResult CreateTipoVittima([FromBody] TipoVittima tipoVittimaToCreate)
        {
            if (tipoVittimaToCreate == null)
            {
                return(BadRequest(ModelState));
            }

            var tipoVittima = _tipoVittimaRepository.GetTipiVittima().Where(t => t.NomeTipoVittima.Trim().ToUpper() == tipoVittimaToCreate.NomeTipoVittima.Trim().ToUpper()).FirstOrDefault();

            if (tipoVittima != null)
            {
                ModelState.AddModelError("", $"TipoVittima {tipoVittimaToCreate.NomeTipoVittima} esiste già");
                return(StatusCode(422, ModelState));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!_tipoVittimaRepository.CreateTipoVittima(tipoVittimaToCreate))
            {
                ModelState.AddModelError("", $"Qualcosa è andato storto durante il salvataggio {tipoVittimaToCreate.NomeTipoVittima}");
                return(StatusCode(500, ModelState));
            }

            return(CreatedAtRoute("GetTipoVittima", new { tipoVittimaId = tipoVittimaToCreate.TipoVittimaId }, tipoVittimaToCreate));
        }
Пример #2
0
        public ActionResult Create(TipoVittima tipoVittima)
        {
            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri("https://localhost:44357/api/");
                var responseTask = client.PostAsJsonAsync("tipovittime", tipoVittima);
                responseTask.Wait();

                var result = responseTask.Result;
                if (result.IsSuccessStatusCode)
                {
                    var newTipoVittimaTask = result.Content.ReadAsAsync <TipoVittima>();
                    newTipoVittimaTask.Wait();

                    var newTipoVittime = newTipoVittimaTask.Result;
                    TempData["SuccessMessage"] = $"Il tipo Vittima {newTipoVittime.NomeTipoVittima} è stato creato con successo. ";

                    return(RedirectToAction("Index", "TipoVittima"));
                }

                if ((int)result.StatusCode == 422)
                {
                    ModelState.AddModelError("", $"TipoVittima {tipoVittima.NomeTipoVittima} Esiste già!");
                }

                else
                {
                    ModelState.AddModelError("", "Qualche tipo di errore. TipoVittima non creato!");
                }
            }
            return(View());
        }
        public IActionResult UpdateTipoVittima(int tipoVittimaId, [FromBody] TipoVittima tipoVittimaToUpdate)
        {
            if (tipoVittimaToUpdate == null)
            {
                return(BadRequest(ModelState));
            }

            if (tipoVittimaId != tipoVittimaToUpdate.TipoVittimaId)
            {
                return(BadRequest(ModelState));
            }

            if (!_tipoVittimaRepository.TipoVittimaExists(tipoVittimaId))
            {
                return(NotFound());
            }

            if (_tipoVittimaRepository.IsDuplicateTipoVittima(tipoVittimaId, tipoVittimaToUpdate.NomeTipoVittima))
            {
                ModelState.AddModelError("", $"TipoVitttima {tipoVittimaToUpdate.NomeTipoVittima} esiste già");
                return(StatusCode(422, ModelState));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!_tipoVittimaRepository.UpdateTipoVittima(tipoVittimaToUpdate))
            {
                ModelState.AddModelError("", $"Si è verificato un errore durante l'aggiornamento {tipoVittimaToUpdate.NomeTipoVittima}");
                return(StatusCode(500, ModelState));
            }

            return(NoContent());
        }
 public bool UpdateTipoVittima(TipoVittima tipoVittima)
 {
     _tipoVittimaContext.Update(tipoVittima);
     return(Save());
 }
 public bool DeleteTipoVittima(TipoVittima tipoVittima)
 {
     _tipoVittimaContext.Remove(tipoVittima);
     return(Save());
 }
 public bool CreateTipoVittima(TipoVittima tipoVittima)
 {
     _tipoVittimaContext.Add(tipoVittima);
     return(Save());
 }