static bool ListarContas(List <Conta> pListaConta) { string lTecla; bool lTeclaValida; do { ListaContas.Listar(pListaConta); Console.WriteLine("1 - Inserir conta | 2 - Transferir | 3 - Sacar | 4 - Depositar | X - Sair"); lTecla = Console.ReadLine().ToString().ToLower(); lTeclaValida = ValidarTecla(lTecla); if (lTeclaValida) { ChamarViewPelaOpcao(lTecla, pListaConta); } else { Console.WriteLine("---------------------"); Console.WriteLine("Tecla Inválida"); Console.ReadLine(); } }while (lTecla != "x"); return(true); }
public bool Depositar(List <Conta> pListaConta) { bool sair = false; string lInput = ""; int lNumeroConta; double lValorDeposito; Conta lContaDeposito; do { Console.Clear(); Console.WriteLine("---------------------"); Console.WriteLine("DEPÓSITO DE VALOR NA CONTA"); Console.WriteLine("---------------------"); Console.WriteLine("(digite 'sair' + <enter> a qualquer momento para sair)"); Console.WriteLine("---------------------"); ListaContas.Listar(pListaConta); Console.Write("Digite o número da conta: "); lInput = Console.ReadLine(); if (lInput.ToLower() == "sair") { sair = true; continue; } else if (Int32.TryParse(lInput, out lNumeroConta)) { if (pListaConta.Exists(p => p.Numero == lNumeroConta)) { lContaDeposito = pListaConta.Find(p => p.Numero == lNumeroConta); } else { Console.WriteLine("Número de Conta não encontrado! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } } else { Console.WriteLine("Valor inválido para Número de Conta! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } Console.WriteLine(lContaDeposito.ToString()); Console.WriteLine("Digite o valor do depósito: "); lInput = Console.ReadLine(); if (lInput.ToLower() == "sair") { return(false); } else if (double.TryParse(lInput, out lValorDeposito)) { lContaDeposito.Depositar(lValorDeposito); Console.WriteLine("Depósito realizado! Tecle <enter> para prosseguir..."); Console.WriteLine(lContaDeposito.ToString()); Console.ReadLine(); sair = true; continue; } }while (!sair); return(true); }
public bool Sacar(List <Conta> pListaConta) { bool sair = false; string lInput = ""; int lNumeroConta; double lValorSaque; Conta lContaSaque; do { Console.Clear(); ListaContas.Listar(pListaConta); Console.WriteLine("---------------------"); Console.WriteLine("SAQUE DE VALOR DA CONTA"); Console.WriteLine("---------------------"); Console.WriteLine("(digite 'sair' + <enter> a qualquer momento para sair)"); Console.WriteLine("---------------------"); ListaContas.Listar(pListaConta); Console.Write("Digite o número da conta: "); lInput = Console.ReadLine(); if (lInput.ToLower() == "sair") { sair = true; continue; } else if (Int32.TryParse(lInput, out lNumeroConta)) { if (pListaConta.Exists(p => p.Numero == lNumeroConta)) { lContaSaque = pListaConta.Find(p => p.Numero == lNumeroConta); } else { Console.WriteLine("Número de Conta não encontrado! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } } else { Console.WriteLine("Valor inválido para Número de Conta! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } Console.WriteLine(lContaSaque.ToString()); Console.WriteLine("Digite o valor de Saque: "); lInput = Console.ReadLine(); if (lInput.ToLower() == "sair") { return(false); } else if (double.TryParse(lInput, out lValorSaque)) { try { lContaSaque.Sacar(lValorSaque); Console.WriteLine("Saque realizado! Tecle <enter> para prosseguir..."); Console.WriteLine(lContaSaque.ToString()); Console.ReadLine(); sair = true; continue; } catch (SaldoInsuficienteException) { Console.WriteLine("Saldo insuficiente! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } } }while (!sair); return(true); }
public bool Transferir(List <Conta> pListaConta) { Conta lContaOrigem, lContaDestino; bool sair = false; string lInput = ""; int lNumeroConta; double lValorTransferencia; do { Console.Clear(); Console.WriteLine("---------------------"); Console.WriteLine("TRANSFERÊNCIA DE VALOR ENTRE CONTAS"); Console.WriteLine("---------------------"); Console.WriteLine("(digite 'sair' + <enter> a qualquer momento para sair)"); Console.WriteLine("---------------------"); ListaContas.Listar(pListaConta); Console.Write("Digite o número da conta origem: "); lInput = Console.ReadLine(); if (lInput.ToLower() == "sair") { sair = true; continue; } else if (Int32.TryParse(lInput, out lNumeroConta)) { if (pListaConta.Exists(p => p.Numero == lNumeroConta)) { lContaOrigem = pListaConta.Find(p => p.Numero == lNumeroConta); } else { Console.WriteLine("Número de conta não encontrado! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } } else { Console.WriteLine("Valor inválido para número de Conta! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } Console.Write("Digite o número da conta destino: "); lInput = Console.ReadLine(); if (lInput.ToLower() == "sair") { sair = true; continue; } else if (Int32.TryParse(lInput, out lNumeroConta)) { if (pListaConta.Exists(p => p.Numero == lNumeroConta)) { lContaDestino = pListaConta.Find(p => p.Numero == lNumeroConta); } else { Console.WriteLine("Número de conta não encontrado! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } } else { Console.WriteLine("Valor inválido para número de Conta! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } Console.WriteLine("Digite o valor da transferência: "); lInput = Console.ReadLine(); if (lInput.ToLower() == "sair") { return(false); } else if (double.TryParse(lInput, out lValorTransferencia)) { try { lContaOrigem.Transferir(lValorTransferencia, lContaDestino); Console.WriteLine("Transferência realizada! Tecle <enter> para prosseguir..."); Console.WriteLine(lContaOrigem.ToString()); Console.WriteLine(lContaDestino.ToString()); Console.ReadLine(); sair = true; continue; } catch (SaldoInsuficienteException) { Console.WriteLine("Saldo insuficiente! Tecle <enter> para prosseguir..."); Console.ReadLine(); continue; } } }while (!sair); return(true); }