public void Executar()
 {
     ServicoTela.LimparTela();
     ServicoTela.MostrarMensagemLinha(" ");
     ServicoTela.MostrarMensagem("Informe um valor de depósito ou digite '0' para cancelar: ");
     try
     {
         var valorDeposito = ObtemValorDoDeposito();
         if (valorDeposito != 0)
         {
             if (ServicoEntradaDeDeposito.EnvelopeDeDepositoRecebido(ServicoTela))
             {
                 try
                 {
                     ServicoBancoDeDadosDoBanco.Depositar(NumeroDaConta, valorDeposito);
                     ServicoTela.MostrarMensagemLinhaEspera("Transação Efetuada!");
                 }
                 catch (Exception)
                 {
                     ServicoTela.MostrarMensagemLinhaEspera("Transação cancelada!");
                 }
             }
         }
         else
         {
             ServicoTela.MostrarMensagemLinhaEspera("Transação cancelada!");
         }
     }
     catch (FormatException)
     {
         ServicoTela.MostrarMensagemLinhaEspera("Formato inválido! Informe um valor válido.");
     }
 }
 public ServicoDeposito(int numeroDaConta)
 {
     NumeroDaConta              = numeroDaConta;
     ServicoTela                = new ServicoTela();
     ServicoTeclado             = new ServicoTeclado();
     ServicoEntradaDeDeposito   = new ServicoEntradaDeDeposito();
     ServicoBancoDeDadosDoBanco = new ServicoBancoDeDadosDoBanco();
 }
Exemplo n.º 3
0
 public ServicoSaque(int numeroDaConta)
 {
     NumeroDaConta  = numeroDaConta;
     ServicoTela    = new ServicoTela();
     ServicoTeclado = new ServicoTeclado();
     ServicoDispensadorDeCedulas = new ServicoDispensadorDeCedulas();
     ServicoBancoDeDadosDoBanco  = new ServicoBancoDeDadosDoBanco();
 }
Exemplo n.º 4
0
        public void Executar()
        {
            var saldo = ServicoBancoDeDadosDoBanco.ConsultarSaldo(NumeroDaConta);

            ServicoTela.MostrarMensagemLinha("");
            ServicoTela.MostrarMensagem("Seu saldo é de ");
            ServicoTela.MostrarValorEmReais(saldo.ToString());
            ServicoTela.MostrarMensagemLinhaEspera("");
        }
Exemplo n.º 5
0
 public void MostrarMenuDeValores()
 {
     ServicoTela.LimparTela();
     ServicoTela.MostrarMensagemLinha(" ");
     ServicoTela.MostrarMensagemLinha("Menu de Valores para Saque");
     ServicoTela.MostrarMensagemLinha("     1 - R$20     4 - R$100");
     ServicoTela.MostrarMensagemLinha("     2 - R$40     5 - R$200");
     ServicoTela.MostrarMensagemLinha("     3 - R$60     6 - Cancelar Transação");
     ServicoTela.MostrarMensagem("Escolha um valor para sacar:");
 }
Exemplo n.º 6
0
        public void Executar()
        {
            int opcSaque = 0;

            while (opcSaque != 6)
            {
                ServicoTela.MostrarMensagemLinha("");
                //Mostrar opcoes
                MostrarMenuDeValores();
                //Pedir opcao
                try
                {
                    opcSaque = ServicoTeclado.ObterEntrada();
                    decimal valorSaque = 0;
                    switch (opcSaque)
                    {
                    case 1:
                        valorSaque = 20;
                        break;

                    case 2:
                        valorSaque = 40;
                        break;

                    case 3:
                        valorSaque = 60;
                        break;

                    case 4:
                        valorSaque = 100;
                        break;

                    case 5:
                        valorSaque = 200;
                        break;

                    case 6:
                        valorSaque = 0;
                        break;

                    default:
                        valorSaque = 0;
                        break;
                    }

                    if (valorSaque > 0)
                    {
                        //Consulta Saldo Diponivel
                        if (ServicoBancoDeDadosDoBanco.ConsultarSaldoDisponivel(NumeroDaConta, valorSaque))
                        {
                            //Verifica se o dispensador tem celulas suficientes
                            if (ServicoDispensadorDeCedulas.TemCedulasSuficienteDisponiveis(valorSaque))
                            {
                                try
                                {
                                    //Efetuar Saque
                                    ServicoBancoDeDadosDoBanco.Sacar(NumeroDaConta, valorSaque);
                                    //Dispensar Cedulas
                                    ServicoDispensadorDeCedulas.DispensarCedulas(valorSaque);
                                    //Avisar que saque foi realizado
                                    ServicoTela.MostrarMensagemLinhaEspera("Saque realizado com sucesso! Retire o dinheiro!");
                                    //Sair
                                    opcSaque = 6;
                                }
                                catch (Exception ex)
                                {
                                    ServicoTela.MostrarMensagemLinhaEspera(ex.Message);
                                }
                            }
                            else
                            {
                                ServicoTela.MostrarMensagemLinhaEspera("Não há cedulas suficientes para realizar este saque! Escolha um valor menor.");
                            }
                        }
                        else
                        {
                            ServicoTela.MostrarMensagemLinhaEspera("Saldo insuficiente! Escolha um valor menor.");
                        }
                    }
                }
                catch (Exception ex)
                {
                    ServicoTela.MostrarMensagemLinhaEspera(ex.Message);
                }
            }
        }
Exemplo n.º 7
0
 public ServicoPesquisaSaldo(int numeroDaConta)
 {
     NumeroDaConta = numeroDaConta;
     ServicoTela   = new ServicoTela();
     ServicoBancoDeDadosDoBanco = new ServicoBancoDeDadosDoBanco();
 }