예제 #1
0
        public IHttpActionResult Delete([FromUri] int id)
        {
            try
            {
                _categoriaApplication.Delete(id);

                return(Ok());
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public ActionResult Delete(int id)
        {
            try
            {
                var userSession = HttpContext.Session.GetUsuario();
                if (userSession == null)
                {
                    RedirectToAction("Index", "Login");
                }

                var categoriaRequest = _categoriaApplication.Delete(userSession.Token, id);
                if (!categoriaRequest.IsSuccessStatusCode)
                {
                    if (categoriaRequest.StatusCode == HttpStatusCode.Unauthorized)
                    {
                        return(RedirectToAction("Index", "Login"));
                    }

                    var errorContent = JsonConvert.DeserializeObject <ErrorContent>(categoriaRequest.Content.ReadAsStringAsync().Result);
                    ModelState.AddModelError("Error", errorContent.GetErrorMessage());

                    var categoriasRequest = _categoriaApplication.Get(userSession.Token);
                    var categoriaResponse = JsonConvert.DeserializeObject <IEnumerable <Categoria> >(categoriasRequest.Content.ReadAsStringAsync().Result);
                    var lstCategoria      = new List <CategoriaViewModel>();

                    foreach (var item in categoriaResponse)
                    {
                        lstCategoria.Add(new CategoriaViewModel
                        {
                            CategoriaId        = item.CategoriaId,
                            Nome               = item.Nome,
                            CadastroUsuarioId  = item.CadastroUsuarioId,
                            DataCadastro       = item.DataCadastro,
                            AlteracaoUsuarioId = item.AlteracaoUsuarioId,
                            DataAlteracao      = item.DataAlteracao,
                            Ativo              = item.Ativo,
                        });
                    }

                    return(View("_Grid", lstCategoria));
                }

                return(RedirectToAction("Categorias"));
            }
            catch (Exception e)
            {
                ModelState.AddModelError("Error", "Ocorreu um erro inesperado");
                return(View("_Grid"));
            }
        }