Exemplo n.º 1
0
        public ActionResult Form(ProductViewModel model)
        {
            try
            {
                if (string.IsNullOrEmpty(model.CategoryIdSelect) || model.CategoryIdSelect == "0")
                {
                    throw new Exception("Selecione uma Categoria.");
                }


                if (string.IsNullOrEmpty(model.Name))
                {
                    throw new Exception("Informe o Produto.");
                }

                if (model.Price <= 0)
                {
                    throw new Exception("Informe a Preço.");
                }

                if (model.Id == 0)
                {
                    model.StoreId    = Util.Configuracao.PerfilSelecionadoLogado.Cliente.Id;
                    model.CategoryId = Convert.ToInt32(model.CategoryIdSelect);

                    ProductAPI   api     = new ProductAPI();
                    ProductModel created = (api.Create(model.Cast <ProductModel>()));

                    model.ReturnAttribute.Status   = Helpers.Constantes.StatusRetorno.Sucesso;
                    model.ReturnAttribute.Mensagem = "Novo produto cadastrada com sucesso!";
                    model.Id = created.Id;
                }
                else
                {
                    // Chamar PUT

                    model.ReturnAttribute.Status   = Helpers.Constantes.StatusRetorno.Sucesso;
                    model.ReturnAttribute.Mensagem = "Oroduto alterado com sucesso!";
                }
            }
            catch (Exception ex)
            {
                model.ReturnAttribute.Titulo   = "Erro ao editar produto";
                model.ReturnAttribute.Mensagem = ex.Message;
                model.ReturnAttribute.Status   = Helpers.Constantes.StatusRetorno.Erro;
            }
            finally
            {
                loadCategory(model);
            }


            return(View(model));
        }