Exemplo n.º 1
0
        [HttpPost] //Recebe o SUBMIT (envio dos dados) do formulário
        public IActionResult Edicao(ProdutoEdicaoModel model)
        {
            //verificar se os campos da model passaram nas validações
            if (ModelState.IsValid)
            {
                try
                {
                    Produto produto = new Produto();
                    produto.IdProduto  = model.IdProduto;
                    produto.Nome       = model.Nome;
                    produto.Preco      = model.Preco;
                    produto.Quantidade = model.Quantidade;

                    repository.Alterar(produto);

                    TempData["Mensagem"] = $"Produto {produto.Nome}, atualizado com sucesso.";
                    return(RedirectToAction("Consulta")); //redirecionamento
                }
                catch (Exception e)
                {
                    TempData["Mensagem"] = e.Message;
                }
            }

            return(View());
        }
Exemplo n.º 2
0
 public IActionResult Put(ProdutoEdicaoModel model)
 {
     if (ModelState.IsValid)
     {
         try
         {
             var produto = mapper.Map <Produto>(model);
             produtoRepository.Alterar(produto);
             var result = new
             {
                 message = "Produto atualizado com sucesso.",
                 produto
             };
             return(Ok(result));
         }
         catch (Exception e)
         {
             return(StatusCode(500, "Erro: " + e.Message));
         }
     }
     else
     {
         return(BadRequest("Ocorreram erros de validação."));
     }
 }
Exemplo n.º 3
0
        public ActionResult Edicao(ProdutoEdicaoModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    Produto           produto    = Mapper.Map <Produto>(model);
                    ProdutoRepository repository = new ProdutoRepository();
                    repository.Update(produto);

                    TempData["Mensagem"] = $"Produto {produto.Nome} atualizado";
                }
                catch (Exception e)
                {
                    TempData["Mensagem"] = e.Message;
                }

                try
                {
                    EstoqueRepository repository = new EstoqueRepository();
                    model.Estoques = Mapper.Map <List <SelectListItem> >(repository.SelectAll());
                }
                catch (Exception e)
                {
                    TempData["Mensagem"] = e.Message;
                }
            }
            return(View(model));
        }
        public IActionResult Put(ProdutoEdicaoModel model, [FromServices] IProdutoRepository repository)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var produto = new Produto();
                    produto.IdProduto  = model.IdProduto;
                    produto.Nome       = model.Nome;
                    produto.Preco      = model.Preco;
                    produto.Quantidade = model.Quantidade;

                    repository.Alterar(produto);

                    return(Ok("Produto atualizado com sucesso."));
                }
                catch (Exception e)
                {
                    return(StatusCode(500, e.Message));
                }
            }
            else
            {
                return(BadRequest("Erro de validação."));
            }
        }
Exemplo n.º 5
0
        [HttpPost] //recebe os dados do formulário pelo controller
        public IActionResult Edicao(ProdutoEdicaoModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    Produto produto = new Produto();
                    //precisa do id do Prpduto para a edição
                    produto.IdProduto  = model.IdProduto;
                    produto.Nome       = model.Nome;
                    produto.Preco      = model.Preco;
                    produto.Quantidade = model.Quantidade;

                    //insere os dados do produto na base de dados
                    repository.Atualizar(produto);

                    //mensagem enviada com sucesso
                    TempData["Mensagem"] = $"Produto {produto.Nome}, alterado com sucesso.";

                    //excluido ModelState.Clear(); //limpa os campos do formulário
                    return(RedirectToAction("Consulta")); //redirecionamento
                }
                catch (Exception e)
                {
                    TempData["Mensagem"] = e.Message;
                }
            }

            return(View());
        }
Exemplo n.º 6
0
        public async Task Produtos_Put_ReturnsOk()
        {
            var produto = await CriarProduto();

            var model = new ProdutoEdicaoModel
            {
                Id         = produto.Id,
                Nome       = "Produto teste atualizado",
                Preco      = 2000,
                Quantidade = 20
            };

            var request = new StringContent(JsonConvert.SerializeObject(model),
                                            Encoding.UTF8, "application/json");

            var respose = await _httpclient.PutAsync("api/produtos", request);

            respose.StatusCode.Should().Be(HttpStatusCode.OK);

            var responseContent = string.Empty;

            using (var content = respose.Content) { responseContent += content.ReadAsStringAsync().Result; }

            var result = JsonConvert.DeserializeObject <ProdutoReturnsOk>(responseContent);

            result.message.Should().Be("Produto atualizado com sucesso");
        }
Exemplo n.º 7
0
        public ActionResult Edicao(ProdutoEdicaoModel model)

        {
            if (ModelState.IsValid)
            {
                try
                {
                    Produto produto = new Produto();
                    produto.IdProduto  = model.IdProduto;
                    produto.Nome       = model.Nome;
                    produto.Preco      = model.Preco;
                    produto.Quantidade = model.Quantidade;
                    produto.IdEstoque  = model.IdEstoque;

                    ProdutoBusiness business = new ProdutoBusiness();
                    business.AtualizarProduto(produto);

                    ModelState.Clear();
                    TempData["Mensagem"] = $"Produto {produto.Nome} atualizado com sucesso";

                    return(RedirectToAction("Consulta"));
                }
                catch (Exception e)
                {
                    TempData["Mensagem"] = e.Message;
                }
            }
            return(View(new ProdutoEdicaoModel()));
        }
        public ProdutoDTO Update(ProdutoEdicaoModel model)
        {
            var produto = mapper.Map <Produto>(model);

            produtoDomainService.Update(produto);

            return(mapper.Map <ProdutoDTO>(produto));
        }
Exemplo n.º 9
0
 public IActionResult Put(ProdutoEdicaoModel model)
 {
     try
     {
         produtoApplicationService.Update(model);
         return(Ok("Produto atualizado com sucesso."));
     }
     catch (Exception e)
     {
         return(StatusCode(500, e.Message));
     }
 }
        public void Update(ProdutoEdicaoModel model)
        {
            var produto = new Produto();

            produto.IdProduto    = int.Parse(model.IdProduto);
            produto.Nome         = model.Nome;
            produto.Preco        = decimal.Parse(model.Preco);
            produto.Quantidade   = int.Parse(model.Quantidade);
            produto.IdFornecedor = int.Parse(model.IdFornecedor);

            produtoDomainService.Update(produto);
        }
Exemplo n.º 11
0
        public IActionResult Put(ProdutoEdicaoModel model,
                                 [FromServices] IMapper mapper, [FromServices] ProdutoRepository repository)
        {
            if (model == null || !ModelState.IsValid)
            {
                return(BadRequest());
            }

            var produto = mapper.Map <Produto>(model);

            repository.Modify(produto);

            return(Ok(produto));
        }
Exemplo n.º 12
0
        [Fact, Priority(2)] // Método de teste do XUnit
        public async Task Produto_Put_ReturnsOkResponse()
        {
            var modelCadastro = new ProdutoCadastroModel
            {
                Nome       = "Monitor",
                Preco      = 500,
                Quantidade = 6
            };

            //criando uma requisição
            var requestPost = new StringContent(JsonConvert.SerializeObject(modelCadastro),
                                                Encoding.UTF8, "application/json");

            //enviando uma requisição PUT para a API
            var responsePost = await appContext.client.PostAsync(resource, requestPost);

            var contentPost = await responsePost.Content.ReadAsStringAsync();

            var produto = JsonConvert.DeserializeObject <Produto>(contentPost);

            var modelEdicao = new ProdutoEdicaoModel
            {
                Id         = produto.Id.ToString(),
                Nome       = "Celular",
                Preco      = 600,
                Quantidade = 6
            };

            var requestPut = new StringContent(JsonConvert.SerializeObject(modelEdicao),
                                               Encoding.UTF8, "application/json");

            //enviando requisição PUT para a API
            var responsePut = await appContext.client.PutAsync(resource, requestPut);

            var contentPut = await responsePut.Content.ReadAsStringAsync();

            var registro = JsonConvert.DeserializeObject <Produto>(contentPut);

            responsePut.StatusCode.Should().Be(HttpStatusCode.OK);

            Assert.Equal(modelEdicao.Id, registro.Id.ToString());
            Assert.Equal(modelEdicao.Nome, registro.Nome);
            Assert.Equal(modelEdicao.Preco, registro.Preco);
            Assert.Equal(modelEdicao.Quantidade, registro.Quantidade);
        }
Exemplo n.º 13
0
        public IActionResult Edicao(int id)
        {
            ProdutoEdicaoModel model   = new ProdutoEdicaoModel();
            Produto            produto = repositories.PesquisarPorID(id);

            try
            {
                model.IdProduto  = produto.IdProduto;
                model.Nome       = produto.Nome;
                model.Preco      = produto.Preco;
                model.Quantidade = produto.Quantidade;
            }
            catch (Exception e)
            {
                TempData["Mensagem"] = e.Message;
            }

            return(View(model));
        }
Exemplo n.º 14
0
        public IActionResult Put(ProdutoEdicaoModel model,
                                 [FromServices] IProdutoRepository produtoRepository)
        {
            try
            {
                var produto = new Produto();
                produto.IdProduto    = model.IdProduto;
                produto.Nome         = model.Nome;
                produto.Preco        = decimal.Parse(model.Preco);
                produto.Quantidade   = int.Parse(model.Quantidade);
                produto.IdFornecedor = int.Parse(model.IdFornecedor);

                produtoRepository.Update(produto);

                return(Ok("Produto atualizado com sucesso!"));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));
            }
        }
Exemplo n.º 15
0
        public IActionResult Put(ProdutoEdicaoModel model,
                                 [FromServices] IProdutoRepository repository,
                                 [FromServices] IMapper mapper)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Ocorreram erros de validações"));
            }

            try
            {
                var produto = mapper.Map <Produto>(model);
                repository.Alterar(produto);

                return(Ok("Produto atualizado com sucesso"));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));
            }
        }
Exemplo n.º 16
0
        public IActionResult Put(ProdutoEdicaoModel model)
        {
            try
            {
                var produto = new Produto
                {
                    Id         = model.Id,
                    Nome       = model.Nome,
                    Preco      = model.Preco,
                    Quantidade = model.Quantidade
                };

                _produtoRepository.Update(produto);

                return(Ok(new { message = "Produto atualizado com sucesso", produto }));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));
            }
        }
Exemplo n.º 17
0
        public ActionResult Edicao(int id)
        {
            ProdutoEdicaoModel model = new ProdutoEdicaoModel();

            try
            {
                ProdutoRepository repository = new ProdutoRepository();
                Produto           produto    = repository.SelectById(id);

                model = Mapper.Map <ProdutoEdicaoModel>(produto);

                EstoqueRepository estoquerepository = new EstoqueRepository();
                model.Estoques = Mapper.Map <List <SelectListItem> >(estoquerepository.SelectAll());
            }
            catch (Exception e)
            {
                TempData["Mensagem"] = e.Message;
            }

            return(View(model));
        }
        public IActionResult EdicaoProduto(int id, [FromServices] ProdutoRepository produtoRepository)
        {
            var model = new ProdutoEdicaoModel();

            try
            {
                var produto = produtoRepository.GetById(id);

                model.Nome      = produto.Nome;
                model.Descricao = produto.Descricao.ToString();
                model.IdProduto = produto.IdProduto.ToString();
                model.Preco     = produto.Preco.ToString();
                model.Categoria = produto.Categoria;
            }
            catch (Exception e)
            {
                TempData["MensagemErro"] = "Erro " + e.Message;
            }

            return(View(model));
        }
Exemplo n.º 19
0
        public ActionResult Edicao(int id)
        {
            //criando um objeto da classe de modelo
            ProdutoEdicaoModel model = new ProdutoEdicaoModel();

            try
            {
                //buscar o produto no banco de dados pelo id..
                Produto produto = repository.ObterPorId(id);
                model.IdProduto  = produto.IdProduto;
                model.Nome       = produto.Nome;
                model.Preco      = produto.Preco;
                model.Quantidade = produto.Quantidade;
            }
            catch (Exception e)
            {
                TempData["Mensagem"] = e.Message;
            }

            //enviando a model para a página
            return(View(model));
        }
Exemplo n.º 20
0
        public ActionResult Edicao(int id)

        {
            ProdutoEdicaoModel model = new ProdutoEdicaoModel();

            try
            {
                ProdutoBusiness business = new ProdutoBusiness();
                Produto         produto  = business.ConsultarProdutoPorID(id);

                model.Nome       = produto.Nome;
                model.Preco      = produto.Preco;
                model.Quantidade = produto.Quantidade;
                model.IdEstoque  = produto.IdEstoque;
            }
            catch (Exception e)
            {
                TempData["Mensagem"] = e.Message;
            }


            return(View(model));
        }
Exemplo n.º 21
0
        public IActionResult Put([FromBody] ProdutoEdicaoModel model,
                                 [FromServices] IMapper mapper,
                                 [FromServices] IProdutoDomainService service)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var produto = mapper.Map <Produto>(model);
                    service.Atualizar(produto);

                    return(StatusCode(StatusCodes.Status204NoContent));
                }
                else
                {
                    return(StatusCode(StatusCodes.Status400BadRequest));
                }
            }
            catch (Exception e)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, e.Message));
            }
        }
Exemplo n.º 22
0
        public IActionResult Edicao(ProdutoEdicaoModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    Produto produto = new Produto();
                    produto.IdProduto  = model.IdProduto;
                    produto.Nome       = model.Nome;
                    produto.Preco      = model.Preco;
                    produto.Quantidade = model.Quantidade;

                    repositories.Atualizar(produto);

                    TempData["Mensagem"] = $"Produto {produto.Nome} cadastrado com sucesso";
                    return(RedirectToAction("Consulta"));
                }
                catch (Exception e)
                {
                    TempData["Mensagem"] = e.Message;
                }
            }
            return(View());
        }
        public IActionResult EdicaoProduto([FromServices] ProdutoRepository produtoRepository, ProdutoEdicaoModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var produto = new Produto();
                    produto.IdProduto = int.Parse(model.IdProduto);
                    produto.Nome      = model.Nome;
                    produto.Descricao = model.Descricao;
                    produto.Categoria = model.Categoria;
                    produto.Preco     = double.Parse(model.Preco);

                    produtoRepository.Update(produto);
                    TempData["MensagemSucesso"] = "Produto Atualizado com Sucesso";
                }
                catch (Exception e)
                {
                    TempData["MensagemErro"] = "Erro " + e.Message;
                }
            }
            return(View());
        }