public async Task <IActionResult> EditFatura([FromRoute] long id) { var fatura = await _context.Fatura.Include(m => m.Fornecedor).Include(m => m.EstadoFatura).SingleOrDefaultAsync(m => m.FaturaID == id); var estadosFatura = await _context.EstadoFatura.ToListAsync(); var fornecedores = await _context.Fornecedor.ToListAsync(); var model = new EditFaturaViewModel { FaturaID = id, Valor = Convert.ToDouble(fatura.Valor), Fornecedor = fatura.Fornecedor.DescritivoFornecedor, EstadoFatura = fatura.EstadoFatura.DescritivoEstadoFatura }; foreach (EstadoFatura e in estadosFatura) { model.EstadosFatura.Add(new SelectListItem { Text = e.DescritivoEstadoFatura }); } foreach (Fornecedor f in fornecedores) { model.Fornecedores.Add(new SelectListItem { Text = f.DescritivoFornecedor }); } return(View(model)); }
public async Task <IActionResult> EditFatura(EditFaturaViewModel faturaModel) { if (string.IsNullOrEmpty(faturaModel.EstadoFatura) || string.IsNullOrEmpty(faturaModel.Fornecedor) || faturaModel.FaturaID <= 0 || faturaModel.Valor <= 0.00) { return(BadRequest()); } Fornecedor fornecedor = await GetFornecedorByName(faturaModel.Fornecedor); EstadoFatura estadoFatura = await GetEstadoFaturaByName(faturaModel.EstadoFatura); Fatura oldFatura = await GetFaturaById(faturaModel.FaturaID); if (fornecedor == null || estadoFatura == null || oldFatura == null) { return(NotFound()); } try { oldFatura.Valor = Convert.ToDecimal(faturaModel.Valor); oldFatura.FornecedorID = fornecedor.FornecedorID; oldFatura.AlterUser = User.Identity.Name.Split('\\')[1]; oldFatura.AlterDate = DateTime.Now; oldFatura.EstadoFaturaID = estadoFatura.EstadoFaturaID; return(await PutFatura(faturaModel.FaturaID, oldFatura)); } catch (Exception e) { Debug.WriteLine("Ex:->" + e); throw; } }