//Efetivar o pagamento de um boleto public void EfetivarBoleto(Boleto b) { Movimentacao m = new Movimentacao(); b.Status = "PG"; _context.Entry(b).State = EntityState.Modified; _contaClienteDAO.AdicionarSaldo(b.ContaOrigem, b.Valor); //Adiciona saldo na conta //Gerar uma movimentação m.DtMovimentacao = DateTime.Now; m.ContaDestino = b.ContaOrigem; //Para pagamento de boleto, o cliente origem e destino é a própria conta a receber, pois quem paga o boleto m.ContaOrigem = b.ContaOrigem; //Não necessariamente deverá possuir uma conta, considera-se que o fiscal do sistema coletou o dinheiro e efetivou (loterica) m.TipoMovimentacao = "Boleto"; m.Valor = b.Valor; _movimentacaoDAO.Cadastrar(m); _context.SaveChanges(); }
public bool RealizaSaque(ContaCliente conta, double ValorSaque) { if (conta.Saldo >= ValorSaque) { Movimentacao m = new Movimentacao(); conta.Saldo -= ValorSaque; m.DtMovimentacao = DateTime.Now; m.ContaOrigem = conta; // m.ContaDestino = conta; m.TipoMovimentacao = "Saque"; m.Valor = -ValorSaque; _movimentacaoDAO.Cadastrar(m); _context.SaveChanges(); return(true); } return(false); }