public async Task <IActionResult> Atualizar(AtualizarProdutoViewModel viewModel) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Produto produto = await dbApplication .Produtos .ComId(viewModel.Id) .SingleOrDefaultAsync(); if (produto == null) { return(Json("Produto não encontrado.")); } produto.Nome = viewModel.Nome; produto.Valor = viewModel.Valor; dbApplication.Update(produto); dbApplication.SaveChanges(); return(Json("Produto atualizado com sucesso")); }
public ActionResult Atualizar(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Produto produto = db.Produtos.ComId(id.Value).SingleOrDefault(); if (produto == null) { return(HttpNotFound()); } ViewBag.Categorias = db.Categorias; AtualizarProdutoViewModel viewModel = new AtualizarProdutoViewModel() { IdProduto = produto.IdProduto, IdCategoria = produto.IdCategoria, Descricao = produto.Descricao, Preco = produto.Preco }; return(View(viewModel)); }
public ActionResult Atualizar(AtualizarProdutoViewModel viewModel) { if (!ModelState.IsValid) { return(this.ModelErrors()); } using (DbApplication db = new DbApplication()) { Produto produtoBanco = db. Produtos .ComNome(viewModel.Nome) .SingleOrDefault(); if (produtoBanco != null && produtoBanco.IdProduto != viewModel.IdProduto) { return(this.ErrorMessage("Já existe um produto cadastrado com esta descrição.")); } Produto produto = db.Produtos .ComId(viewModel.IdProduto) .SingleOrDefault(); produto.IdCategoria = viewModel.IdCategoria; produto.Nome = viewModel.Nome; produto.Preco = viewModel.Preco; db.RegistrarAlterado(produto); db.Salvar(); } return(this.Message("Produto atualizado com sucesso.")); }
public AtualizarProdutoPage(Produto produto) { InitializeComponent(); var ProdutoRepo = new ProdutoRepository(); var CategoriaRepo = new CategoriaRepository(); ViewModel = new AtualizarProdutoViewModel(ProdutoRepo, CategoriaRepo, produto); BindingContext = ViewModel; }
public async Task <IActionResult> AtualizarProduto([FromRoute] Guid id, [FromBody] AtualizarProdutoViewModel model) { var produto = await _produtoRepository.ObterPorId(id); if (produto == null) { NotificarErro("AtualizarProduto", "Produto não encontrado."); return(BadRequest()); } if (produto.CategoriaId != model.CategoriaId) { produto.AlterarCategoria(model.CategoriaId); } produto.AlterarDescricaoEInformacoes(model.Descricao, model.InformacoesAdicionais); await _produtoService.Atualizar(produto); return(Response(produto.Id)); }
public ActionResult Atualizar(AtualizarProdutoViewModel viewModel) { if (viewModel.Preco <= 0) { ModelState.AddModelError(String.Empty, "Preço inválido."); } if (ModelState.IsValid) { Produto produto = db.Produtos.ComId(viewModel.IdProduto).SingleOrDefault(); Produto produtoBanco = db .Produtos .ComDescricao(viewModel.Descricao) .Where(p => p.IdProduto != produto.IdProduto) .SingleOrDefault(); if (produtoBanco != null) { ModelState.AddModelError(String.Empty, "Já existe um produto com essa descrição."); return(View("Atualizar", viewModel)); } produto.IdCategoria = viewModel.IdCategoria; produto.Descricao = viewModel.Descricao; produto.Preco = viewModel.Preco; db.RegistrarAlterado(produto); db.Salvar(); TempData["Success"] = "Produto atualizado com sucesso!"; return(RedirectToAction("Index", "Produtos")); } ViewBag.Categorias = db.Categorias; return(View(viewModel)); }
public IActionResult Atualizar(AtualizarProdutoViewModel viewModel) { if (!ModelState.IsValid) { return(BadRequest(this.MensagemErro(ModelState))); } Produto produto = dbContext .Produto .ComId(viewModel.IdProduto) .SingleOrDefault(); if (produto == null) { return(NotFound(this.MensagemErro("Produto não encontrado."))); } Produto produtoBanco = dbContext .Produto .ComDescricao(viewModel.Descricao) .Where(c => c.IdProduto != viewModel.IdProduto) .SingleOrDefault(); if (produtoBanco != null) { return(BadRequest(this.MensagemErro("Já existe um produto com esta descrição."))); } produto.IdCategoria = viewModel.IdCategoria; produto.Descricao = viewModel.Descricao; produto.Preco = viewModel.Preco; if (viewModel.Arquivo != null && viewModel.Arquivo.Length > 0) { if (!viewModel.Arquivo.FileName.Contains(".jpg") && !viewModel.Arquivo.FileName.Contains(".png") && !viewModel.Arquivo.FileName.Contains(".gif")) { return(BadRequest(this.MensagemErro("A imagem de estar no formato 'jpg', 'png' ou 'gif'"))); } var diretorio = "C:\\ArquivosComercio"; if (!Directory.Exists(diretorio)) { Directory.CreateDirectory(diretorio); } var path = Path.Combine( diretorio, viewModel.Arquivo.FileName); using (var stream = new FileStream(path, FileMode.Create)) { viewModel.Arquivo.CopyTo(stream); } produto.DiretorioImagem = path; } dbContext.Update(produto); dbContext.SaveChanges(); return(Ok(this.MensagemSucesso("Produto atualizado com sucesso."))); }