public async Task <IActionResult> AtualizarAsync(Guid id, [FromForm] ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                NotificarErro("Os ids informados não são iguais!");
                return(CustomResponse());
            }

            var produtoAtualizacao = await ObterProduto(id);

            if (string.IsNullOrEmpty(produtoViewModel.Imagem))
            {
                produtoViewModel.Imagem = produtoAtualizacao.Imagem;
            }

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

            if (produtoViewModel.ImagemUpload is not null)
            {
                produtoViewModel.Imagem = Guid.NewGuid() + "-" + produtoViewModel.ImagemUpload.FileName;

                produtoAtualizacao.Visualizacao = await UploadArquivo(produtoViewModel.ImagemUpload, produtoViewModel.Imagem);

                produtoAtualizacao.Imagem = produtoViewModel.Imagem;
            }

            produtoAtualizacao.FornecedorId = produtoViewModel.FornecedorId;
            produtoAtualizacao.Nome         = produtoViewModel.Nome;
            produtoAtualizacao.Descricao    = produtoViewModel.Descricao;
            produtoAtualizacao.Valor        = produtoViewModel.Valor;
            produtoAtualizacao.Ativo        = produtoViewModel.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));

            return(CustomResponse(produtoViewModel));
        }
        public async Task <IActionResult> Atualizar(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                NotificarErro("Os ids informados não são iguais!");
                return(CustomResponse());
            }

            var produtoAtualizacao = await ObterProduto(id);

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

            produtoAtualizacao.Nome  = produtoViewModel.Nome;
            produtoAtualizacao.Preco = produtoViewModel.Preco;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));

            return(CustomResponse(produtoViewModel));
        }
        public async Task <IActionResult> Edit(Guid id, ProdutoDTO produtoDTO)
        {
            if (id != produtoDTO.Id)
            {
                return(NotFound());
            }

            var produtoAtualizacao = await ObterProduto(id);

            produtoDTO.Fornecedor = produtoAtualizacao.Fornecedor;
            produtoDTO.Imagem     = produtoAtualizacao.Imagem;
            if (!ModelState.IsValid)
            {
                return(View(produtoDTO));
            }

            if (produtoDTO.ImagemUpload != null)
            {
                string preFixo = Guid.NewGuid() + "-";
                if (!await UploadArquivo(produtoDTO.ImagemUpload, preFixo))
                {
                    return(View(produtoDTO));
                }
                produtoAtualizacao.Imagem = preFixo + produtoDTO.ImagemUpload.FileName;
            }
            produtoAtualizacao.Nome      = produtoDTO.Nome;
            produtoAtualizacao.Descricao = produtoDTO.Descricao;
            produtoAtualizacao.Valor     = produtoDTO.Valor;
            produtoAtualizacao.Ativo     = produtoDTO.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));

            if (!OperacaoValida())
            {
                return(View(produtoDTO));
            }

            return(RedirectToAction(nameof(Index)));
        }
Beispiel #4
0
        public async Task <IActionResult> Atualizar(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                NotificarErro("O id informado não é o mesmo que foi passado na query");
                return(CustomResponse(produtoViewModel));
            }

            var produtoAtualizacao = await ObterProduto(id);

            produtoViewModel.Imagem = produtoAtualizacao.Imagem;

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

            if (produtoViewModel.ImagemUpload != null)
            {
                var imagemNome = Guid.NewGuid() + "_" + produtoViewModel.Imagem;

                if (!UploadArquivo(produtoViewModel.ImagemUpload, imagemNome))
                {
                    return(CustomResponse(ModelState));
                }

                produtoAtualizacao.Imagem = imagemNome;
            }

            produtoAtualizacao.Nome      = produtoViewModel.Nome;
            produtoAtualizacao.Descricao = produtoViewModel.Descricao;
            produtoAtualizacao.Valor     = produtoViewModel.Valor;
            produtoAtualizacao.Ativo     = produtoViewModel.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));


            return(CustomResponse(produtoAtualizacao));
        }
        public async Task <IActionResult> Atualizar(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                NotificarErro("Os ids informados não são iguais");
                return(CustomResponse());
            }


            var produtoAtualizacao = await ObterProduto(id);

            produtoViewModel.Imagem = produtoAtualizacao.Imagem;

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

            if (produtoViewModel.ImagemUpload != null)
            {
                var imagemNome = $"{Guid.NewGuid()}_{produtoViewModel.Imagem}";
                if (!await UploadArquivo(produtoViewModel.ImagemUpload, imagemNome))
                {
                    return(CustomResponse(ModelState));
                }

                produtoAtualizacao.Imagem = imagemNome;
            }

            produtoAtualizacao.Nome      = produtoViewModel.Nome;
            produtoAtualizacao.Descricao = produtoViewModel.Descricao;
            produtoAtualizacao.Valor     = produtoViewModel.Valor;
            produtoAtualizacao.Ativo     = produtoViewModel.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoViewModel));

            return(CustomResponse(produtoViewModel));
        }
        public async Task <IActionResult> Edit(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                return(NotFound());
            }

            var produtoAtualizacao = await ObterProduto(id);

            produtoViewModel.FornecedorId = produtoAtualizacao.Fornecedor.Id;
            produtoViewModel.Imagem       = produtoAtualizacao.Imagem;

            if (!ModelState.IsValid)
            {
                produtoViewModel.Fornecedor = produtoAtualizacao.Fornecedor;
                return(View(produtoViewModel));
            }

            if (produtoViewModel.ImagemUpload != null)
            {
                var imgPrefixo = Guid.NewGuid() + "_";
                if (!await UploadArquivo(produtoViewModel.ImagemUpload, imgPrefixo))
                {
                    return(View(produtoViewModel));
                }

                produtoViewModel.Imagem = imgPrefixo + produtoViewModel.ImagemUpload.FileName;
            }

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoViewModel));

            if (!OperacaoValida())
            {
                return(View(produtoViewModel));
            }

            return(RedirectToAction("Index"));
        }
Beispiel #7
0
        public async Task <ActionResult <ProdutoDTO> > Atualizar(int id, ProdutoDTO produtoDTO)
        {
            try
            {
                if (id != produtoDTO.Id)
                {
                    return(BadRequest());
                }

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

                await _produtoService.Atualizar(_mapper.Map <Produto>(produtoDTO));

                return(Ok());
            }
            catch
            {
                return(BadRequest());
            }
        }
        public async Task <IActionResult> Atualizar(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id) //valida se o id do objeto é diferente do id enviado
            {
                NotificarErro("Os ids informados não são iguais!");
                return(CustomResponse());
            }

            var produtoAtualizacao = await ObterProduto(id);     //obtem o produto do banco

            produtoViewModel.Imagem = produtoAtualizacao.Imagem; //seta a imagem do produtoAtualizacao no produtoViewModel

            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));    //valida a ModelState
            }
            if (produtoViewModel.ImagemUpload != null) //se a imagemUpload for diferente de null, eu faço o upload
            {
                var imagemNome = Guid.NewGuid() + "_" + produtoViewModel.Imagem;
                if (!UploadArquivo(produtoViewModel.ImagemUpload, imagemNome))
                {
                    return(CustomResponse(ModelState));
                }

                produtoAtualizacao.Imagem = imagemNome; //troca a imagem do produtoAtualizacao para o imagemNome
            }

            //popula o restante dos dados
            produtoAtualizacao.Nome      = produtoViewModel.Nome;
            produtoAtualizacao.Descricao = produtoViewModel.Descricao;
            produtoAtualizacao.Valor     = produtoViewModel.Valor;
            produtoAtualizacao.Ativo     = produtoViewModel.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));

            return(CustomResponse(produtoViewModel));
        }
        public async Task <ActionResult <ProdutoViewModel> > Alterar(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                return(BadRequest());
            }

            var produtoAtualizacao = await ObterProduto(id);

            produtoViewModel.Imagem = produtoAtualizacao.Imagem;

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

            if (produtoViewModel.ImagemUpload != null)
            {
                var imagemNome = Guid.NewGuid() + "_" + produtoViewModel.Imagem;

                if (!UploadArquivo(produtoViewModel.ImagemUpload, imagemNome))
                {
                    return(CustomResponse(produtoViewModel));
                }

                produtoAtualizacao.Imagem = imagemNome;
            }

            produtoAtualizacao.Nome      = produtoViewModel.Nome;
            produtoAtualizacao.Descricao = produtoViewModel.Descricao;
            produtoAtualizacao.Valor     = produtoViewModel.Valor;
            produtoAtualizacao.Ativo     = produtoViewModel.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoViewModel));

            return(CustomResponse(produtoViewModel));
        }
        public async Task <ActionResult <ProdutoViewModel> > Atualizar(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                NotificarErro("O id informado não é o mesmo que foi passado na query");
                return(CustomResponse(produtoViewModel));
            }

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

            var produto = _mapper.Map <Produto>(produtoViewModel);

            if (!await UploadArquivo(produtoViewModel.FormFile, produto))
            {
                return(CustomResponse(ModelState));
            }

            await _produtoService.Atualizar(produto);

            return(CustomResponse(produtoViewModel));
        }
        public async Task <IActionResult> Edit(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                return(NotFound());
            }

            if (!ModelState.IsValid)
            {
                return(View(produtoViewModel));
            }

            var produto = _mapper.Map <Produto>(produtoViewModel);
            await _produtoService.Atualizar(produto);

            if (!OperacaoValida())
            {
                return(View(produtoViewModel));
            }



            return(RedirectToAction(nameof(Index)));
        }
        public async Task <IActionResult> Edit(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                return(NotFound());
            }

            var produtoAtualizado = await ObterProduto(id);

            //Update da Imagem
            if (!await UpdateImagemProduto(produtoViewModel, produtoAtualizado))
            {
                return(View(produtoAtualizado));
            }

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizado));

            if (!OperacaoValida())
            {
                return(View(produtoViewModel));
            }

            return(RedirectToAction(nameof(Index)));
        }
Beispiel #13
0
        public async Task <ActionResult> Atualizar(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                NotificarErro("Id's informados são diferentes!");
                return(CustomResponse(produtoViewModel));
            }

            var produtoAtualizacao = await _produtoRepository.ObterPorId(id);

            produtoViewModel.Imagem = produtoAtualizacao.Imagem;
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            if (produtoViewModel.ImagemUpload != null)
            {
                var imagemNome = Guid.NewGuid() + "_" + produtoViewModel.Imagem;
                if (!UpdateArquivo(produtoViewModel.ImagemUpload, imagemNome))
                {
                    return(CustomResponse(ModelState));
                }

                produtoAtualizacao.Imagem = imagemNome;
            }

            produtoAtualizacao.Nome      = produtoViewModel.Nome;
            produtoAtualizacao.Descricao = produtoViewModel.Descricao;
            produtoAtualizacao.Valor     = produtoViewModel.Valor;
            produtoAtualizacao.Ativo     = produtoViewModel.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));

            return(CustomResponse(produtoViewModel));
        }
Beispiel #14
0
        public async Task <ActionResult> Update(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                NotificarErro(errorMsg: "The informed ID is not the same as the one passed on the query");
                return(CustomResponse(produtoViewModel));
            }

            var produtoAtualizacao = await ObterProduto(id);

            produtoViewModel.Imagem = produtoAtualizacao.Imagem;
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            if (produtoViewModel.ImagemUpload != null)
            {
                var imageName = Guid.NewGuid() + "_" + produtoViewModel.Imagem;
                if (!UploadFile(produtoViewModel.ImagemUpload, imageName))
                {
                    return(CustomResponse(ModelState));
                }

                produtoAtualizacao.Imagem = imageName;
            }

            produtoAtualizacao.Nome      = produtoViewModel.Nome;
            produtoAtualizacao.Descricao = produtoViewModel.Descricao;
            produtoAtualizacao.Valor     = produtoViewModel.Valor;
            produtoAtualizacao.Ativo     = produtoViewModel.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));

            return(CustomResponse(produtoViewModel));
        }
Beispiel #15
0
        public async Task <ActionResult <ProdutoViewModel> > Atualizar(Guid codProduto, ProdutoViewModel produtoViewModel)
        {
            if (codProduto.ToString().ToUpper() != produtoViewModel.CodProduto.ToUpper())
            {
                NotificarErro("O id informado não é o mesmo que foi passado na query");
                return(CustomResponse(produtoViewModel));
            }

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

            var produto = _mapper.Map <Produto>(produtoViewModel);

            var result = await _produtoService.Atualizar(produto);

            if (!result)
            {
                return(BadRequest());
            }

            return(CustomResponse(produtoViewModel));
        }
        public async Task <IActionResult> Atualizar(Guid id, ProdutoDTO ProdutoDTO)
        {
            if (id != ProdutoDTO.Id)
            {
                NotificarErro("Os ids informados não são iguais!");
                return(CustomResponse());
            }

            var produtoAtualizacao = await ObterProduto(id);

            ProdutoDTO.Imagem = produtoAtualizacao.Imagem;
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            if (ProdutoDTO.ImagemUpload != null)
            {
                var imagemNome = Guid.NewGuid() + "_" + ProdutoDTO.Imagem;
                if (!UploadArquivo(ProdutoDTO.ImagemUpload, imagemNome))
                {
                    return(CustomResponse(ModelState));
                }

                produtoAtualizacao.Imagem = imagemNome;
            }

            produtoAtualizacao.Nome      = ProdutoDTO.Nome;
            produtoAtualizacao.Descricao = ProdutoDTO.Descricao;
            produtoAtualizacao.Valor     = ProdutoDTO.Valor;
            produtoAtualizacao.Ativo     = ProdutoDTO.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));

            return(CustomResponse(ProdutoDTO));
        }
Beispiel #17
0
 public IActionResult AtualizarProduto(Produto produto)
 {
     _produtoService.Atualizar(produto);
     _session.SetString("Alertas", "Muito bem!!!|Você acabou de atualizar informações de um Produto!");
     return(RedirectToAction("Index"));
 }
Beispiel #18
0
 public async Task Atualizar(ProdutoViewModel produtoViewModel)
 {
     var produto = _mapper.Map <Produto>(produtoViewModel);
     await _produtoService.Atualizar(produto);
 }
        public async Task <IActionResult> Edit(Guid id, ProdutoViewModel produtoViewModel)
        {
            if (id != produtoViewModel.Id)
            {
                return(NotFound());
            }

            var produtoAtualizacao = await ObterProduto(id);

            produtoViewModel.Fornecedor = produtoAtualizacao.Fornecedor;
            produtoViewModel.Imagem     = produtoAtualizacao.Imagem;
            if (!ModelState.IsValid)
            {
                return(View(produtoViewModel));
            }

            if (produtoViewModel.ImagemUpload != null)
            {
                var imgPrefixo = Guid.NewGuid() + "_";
                if (!await UploadArquivo(produtoViewModel.ImagemUpload, imgPrefixo))
                {
                    return(View(produtoViewModel));
                }

                produtoAtualizacao.Imagem = imgPrefixo + produtoViewModel.ImagemUpload.FileName;
            }

            produtoAtualizacao.Nome      = produtoViewModel.Nome;
            produtoAtualizacao.Descricao = produtoViewModel.Descricao;
            produtoAtualizacao.Valor     = produtoViewModel.Valor;
            produtoAtualizacao.Ativo     = produtoViewModel.Ativo;

            await _produtoService.Atualizar(_mapper.Map <Produto>(produtoAtualizacao));

            if (!OperacaoValida())
            {
                return(View(produtoViewModel));
            }

            return(RedirectToAction("Index"));

            //if (ModelState.IsValid)
            //{
            //    try
            //    {
            //        _context.Update(produtoViewModel);
            //        await _context.SaveChangesAsync();
            //    }
            //    catch (DbUpdateConcurrencyException)
            //    {
            //        if (!ProdutoViewModelExists(produtoViewModel.Id))
            //        {
            //            return NotFound();
            //        }
            //        else
            //        {
            //            throw;
            //        }
            //    }
            //    return RedirectToAction(nameof(Index));
            //}
            //ViewData["FornecedorId"] = new SelectList(_context.Set<FornecedorViewModel>(), "Id", "Documento", produtoViewModel.FornecedorId);
            //return View(produtoViewModel);
        }
Beispiel #20
0
 public async Task <IActionResult> Atualizar(ProdutoInsertViewModel produtoViewModel)
 {
     return(!ModelState.IsValid ? CustomResponse(ModelState) : CustomResponse(await _produtoService.Atualizar(_mapper.Map <Produto>(produtoViewModel))));
 }