public async Task <IActionResult> Edit(int id, [Bind("movSaidaID,dataSaida, Quantidade,obs,ProdutoID,MotivosSaidaID")] movSaida movSaida) { if (id != movSaida.movSaidaID) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(movSaida); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!movSaidaExists(movSaida.movSaidaID)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["MotivosSaidaID"] = new SelectList(_context.MotivosSaidas, "MotivosSaidaID", "motivo", movSaida.MotivosSaidaID); ViewData["ProdutoID"] = new SelectList(_context.Produtos, "ProdutoID", "Nome", movSaida.ProdutoID); return(View(movSaida)); }
public async Task <IActionResult> Create([Bind("movSaidaID,dataSaida,Quantidade,obs,ProdutoID,MotivosSaidaID")] movSaida movSaida) { if (movSaida.Quantidade < 1) { ModelState.AddModelError("Quantidade", "Quantidade inválida"); } if (movSaida.dataSaida < DateTimeOffset.UtcNow.DateTime.Date) { ModelState.AddModelError("dataSaida", "A Data não pode ser anterior a Data Atual"); } if (ModelState.IsValid) { _context.Add(movSaida); var produto = await _context.Produtos .FirstAsync(m => m.ProdutoID == movSaida.ProdutoID); produto.QtdEstoque -= movSaida.Quantidade; await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["MotivosSaidaID"] = new SelectList(_context.MotivosSaidas, "MotivosSaidaID", "motivo", movSaida.MotivosSaidaID); ViewData["ProdutoID"] = new SelectList(_context.Produtos, "ProdutoID", "Nome", movSaida.ProdutoID); return(View(movSaida)); }