public void IniciaMenuConta(ViewContaBancaria viewConta, ViewPessoa viewPessoa, ViewAgencia viewAgencia, IDao <Agencia> agenciaDao, ContaBancariaDao contaDao, PessoaDao pessoaDao)
        {
            ConsoleKeyInfo _opcao;
            ViewMenu       viewMenu = new ViewMenu();

            Console.WriteLine("\n PRESSIONE: \n\n F1 Para cadastrar uma conta bancaria \n F2 Para mostrar o saldo \n F12 para voltar ao menu principal");
            _opcao = Console.ReadKey();
            switch (_opcao.Key)
            {
            case ConsoleKey.F1:
                Console.Clear();
                viewConta.CadastraDados();
                break;

            case ConsoleKey.F2:
                Console.Clear();
                viewConta.MostraSaldo(contaDao);
                break;

            case ConsoleKey.F12:
                Console.Clear();
                viewMenu.IniciaMenu();
                break;
            }
        }
        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");
            }
        }
예제 #3
0
        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");
            }
        }
예제 #4
0
        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");
            }
        }