public async Task <DefaultResponse <BalancoDia> > Post( [FromServices] DataContext context, [FromBody] BalancoDia dataBalanco) { try { Acoes_LancamentoFinanceiro acoes = new Acoes_LancamentoFinanceiro(); List <LancamentoFinanceiro> lancamentosDia = await context.LancamentosFinanceiros.Where(x => x.DataLancamento == dataBalanco.DataBalanco).ToListAsync(); var model = acoes.Conciliacao(lancamentosDia); context.BalancosDia.Add(model); await context.SaveChangesAsync(); acoes.AtualizarLancamentosAposBalanco(context, lancamentosDia, model.IdBalanco); return(new DefaultResponse <BalancoDia>() { success = true, message = $"Balanço do dia {dataBalanco.DataBalanco} efetuado com sucesso!", result = model }); } catch (Exception ex) { throw ex; } }
public async Task <DefaultResponse <LancamentoFinanceiro> > Put( [FromServices] DataContext context, int id, [FromBody] LancamentoFinanceiro model) { Acoes_LancamentoFinanceiro aux = new Acoes_LancamentoFinanceiro(); try { var lancamento = await GetById(context, id); bool altera = aux.PodeAtualizarOuApagar(lancamento.Value); if (altera) { var lancamentoAtualizado = aux.Atualiza(lancamento.Value, model); context.Update(lancamento.Value); await context.SaveChangesAsync(); return(new DefaultResponse <LancamentoFinanceiro>() { success = true, message = "Lançamento atualizado com sucesso!", result = lancamentoAtualizado }); } else { return(new DefaultResponse <LancamentoFinanceiro>() { success = false, message = "Lançamento não pode ser atualizado porque já foi conciliado!", result = lancamento.Value }); } } catch (Exception ex) { throw ex; } }
public async Task <DefaultResponse <LancamentoFinanceiro> > Delete( [FromServices] DataContext context, int id) { Acoes_LancamentoFinanceiro aux = new Acoes_LancamentoFinanceiro(); try { var lancamento = await GetById(context, id); bool podeApagar = aux.PodeAtualizarOuApagar(lancamento.Value); if (podeApagar) { context.Remove(lancamento.Value); await context.SaveChangesAsync(); return(new DefaultResponse <LancamentoFinanceiro>() { success = true, message = "Lancamento apagado com sucesso!", result = lancamento.Value }); } else { return(new DefaultResponse <LancamentoFinanceiro>() { success = false, message = "Lançamento não pode ser apagado porque já foi conciliado!", result = lancamento.Value }); } } catch (Exception ex) { throw ex; } }