public async Task <IActionResult> Gastos(Transacao transacao) { transacao.Id = 0; Despesa despesa = null; if (!ModelState.IsValid) { var obj = await _despesaService.ObterPorIdAsync(transacao.FundoId.Value); transacao = _transacaoService.ObterInstanciaGastoDespesa(transacao.Despesa); List <Conta> contas = await _contaService.ObterTodosAsync(); TransacaoFormViewModel viewModel = new TransacaoFormViewModel { Transacao = transacao, Contas = contas }; return(View(viewModel)); } despesa = await _despesaService.ObterPorIdAsync(transacao.DespesaId.Value); var conta = await _contaService.ObterPorIdAsync(transacao.ContaId); transacao.Despesa = despesa; transacao.Conta = conta; await _transacaoService.InserirAsync(transacao); return(RedirectToAction(nameof(Gastos), despesa.Id)); }
public async Task <IActionResult> Gastos(int?id) { if (id == null) { return(RedirectToAction(nameof(Error), new { message = "Id não provido (null)" })); } var obj = await _despesaService.ObterPorIdGastosAsync(id.Value); if (obj == null) { return(RedirectToAction(nameof(Error), new { message = "Id não encontrado" })); } Transacao transacao = _transacaoService.ObterInstanciaGastoDespesa(obj); var contas = await _contaService.ObterTodosAsync(); var viewModel = new TransacaoFormViewModel { Transacao = transacao, Contas = contas }; return(View(viewModel)); }