public void RealizaSaque(RelatorioOperacaoDao relatorioDao, ContaBancariaDao contaDao, ViewContaBancaria viewConta) { Console.Clear(); Console.WriteLine("Informe o ID da sua conta bancaria"); int IdConta = Convert.ToInt32(Console.ReadLine()); ContaBancaria contaOrigem = contaDao.BuscaPorId(IdConta); if (contaOrigem != null) { Operacao operacao = new Operacao(); Console.WriteLine("\nInforme o valor a ser sacado:\n"); double valor = Convert.ToDouble(Console.ReadLine()); if (contaOrigem.Saldo < valor) { Console.WriteLine("Voce não tem saldo suficiente para realizar este saque"); } else { contaOrigem.Saque(valor); operacao.RealizaOperacao(contaOrigem, contaOrigem, 2, valor); relatorioDao.AdicionaNovaOperacao(operacao); Console.WriteLine("\nOperacao realizada com sucesso"); } } else { Console.WriteLine("Conta não identificada"); } }
public void RealizaTransferencia(ViewContaBancaria viewConta, RelatorioOperacaoDao relatorioDao, ContaBancariaDao contaDao) { Console.Clear(); Console.WriteLine("Informe o ID da sua conta bancaria"); int IdContaOrigem = Convert.ToInt32(Console.ReadLine()); ContaBancaria contaOrigem = contaDao.BuscaPorId(IdContaOrigem); if (contaOrigem != null) { Operacao operacao = new Operacao(); Console.WriteLine("\nConfirme os dados: \n"); viewConta.ListaEFormata(); Console.WriteLine("\nInforme o ID da conta bancaria que vai receber a transferencia"); int IdContaDestino = Convert.ToInt32(Console.ReadLine()); ContaBancaria contaMovimentada = contaDao.BuscaPorId(IdContaDestino); if (contaMovimentada != null) { Console.WriteLine("\nConfirme os dados: \n"); viewConta.ListaEFormata(); Console.WriteLine("\nInforme o valor a ser transferido: "); double ValorTransferencia = Convert.ToDouble(Console.ReadLine()); if (contaOrigem.Saldo < ValorTransferencia) { Console.WriteLine("Voce não tem saldo suficiente para fazer este depósito"); } else { contaOrigem.Saque(ValorTransferencia); contaMovimentada.Deposito(ValorTransferencia); operacao.RealizaOperacao(contaMovimentada, contaOrigem, 3, ValorTransferencia); relatorioDao.AdicionaNovaOperacao(operacao); Console.WriteLine("Operacao realizada com sucesso"); } } else { Console.WriteLine("Nenhuma conta encontrada"); } } else { Console.WriteLine("Nenhuma conta encontrada"); } }
public void VisualizaRelatorioDeOperacoes(RelatorioOperacaoDao relatorioDao) { Console.Clear(); if (relatorioDao.RetornaOperacoes().Count != 0) { foreach (var operacao in relatorioDao.RetornaOperacoes()) { Console.WriteLine($"\nId desta operação: {operacao.Id} \n Conta Movimentada: \n Nome: {operacao.ContaMovimentada.DonoDaConta.Nome} \n Conta: {operacao.ContaMovimentada.Conta}\n" + $"Agencia: {operacao.ContaMovimentada.Agencia.Nome} \n\n Conta Origem: \n Nome: {operacao.ContaOrigem.DonoDaConta.Nome} \n Conta: {operacao.ContaOrigem.Conta} \n" + $"Agencia: {operacao.ContaOrigem.Agencia.Nome} \n Operacao Realizada: {operacao.OperacaoVinculada} \n Data da Operacao: {operacao.DataOperacao} \n Valor: {operacao.Valor}"); } } else { Console.WriteLine("Nenhuma operacao foi realizada ainda"); } }
public void RealizaDeposito(ContaBancariaDao contaDao, ViewContaBancaria viewConta, RelatorioOperacaoDao relatorioDao) { Console.Clear(); Console.WriteLine("Informe o ID da sua conta"); int IdContaOrigem = Convert.ToInt32(Console.ReadLine()); ContaBancaria contaOrigem = contaDao.BuscaPorId(IdContaOrigem); if (contaOrigem != null) { Operacao operacao = new Operacao(); Console.WriteLine("Informe o ID da conta bancaria a qual irá receber o deposito:\n"); int IdContaMovimentada = Convert.ToInt32(Console.ReadLine()); ContaBancaria contaMovimentada = contaDao.BuscaPorId(IdContaMovimentada); if (contaMovimentada != null) { Console.WriteLine("\nConfirme os dados: \n"); viewConta.ListaEFormata(); Console.WriteLine("\nInforme o valor a ser depositado: "); double ValorDeposito = Convert.ToDouble(Console.ReadLine()); contaMovimentada.Deposito(ValorDeposito); operacao.RealizaOperacao(contaMovimentada, contaOrigem, 1, ValorDeposito); relatorioDao.AdicionaNovaOperacao(operacao); Console.WriteLine("Operacao realizada com sucesso"); } else { Console.WriteLine("Nenhuma conta encontrada"); } } else { Console.WriteLine("Conta nao encontrada"); } }
public void StartMenuOperacoes(ViewContaBancaria viewConta, ViewRelatorioOperacoes viewRelatorioOperacoes, ViewMenu viewMenu, ViewTransferencia viewTransferencia, ViewDeposito viewDeposito, ViewSaque viewSaque, RelatorioOperacaoDao relatorioDao, ContaBancariaDao contaDao) { ConsoleKeyInfo _opcao; Console.WriteLine("\n PRESSIONE: \n\n F1 Para realizar um saque \n F2 Para fazer um deposito \n F3 Para fazer uma transferencia \n F4 Para exibir o relatorio de operacoes \n F12 para voltar ao menu principal"); _opcao = Console.ReadKey(); switch (_opcao.Key) { case ConsoleKey.F1: Console.Clear(); viewSaque.RealizaSaque(relatorioDao, contaDao, viewConta); break; case ConsoleKey.F2: Console.Clear(); viewDeposito.RealizaDeposito(contaDao, viewConta, relatorioDao); break; case ConsoleKey.F3: Console.Clear(); viewTransferencia.RealizaTransferencia(viewConta, relatorioDao, contaDao); break; case ConsoleKey.F4: Console.Clear(); viewRelatorioOperacoes.VisualizaRelatorioDeOperacoes(relatorioDao); break; case ConsoleKey.F12: Console.Clear(); viewMenu.IniciaMenu(); break; } }