public void GravarCliente(Cliente cliente) { GravadorArquivo arquivo = new GravadorArquivo(); string registro = cliente.ExibirCPF() + ";" + cliente.ExibirNome() + ";" + cliente.ExibirRG() + ";" + cliente.ExibirDataNascimento(); arquivo.EscreverArquivo(arquivo.dirGravacao, "clientes.txt", registro); }
public void GravarConta(Conta cc) { GravadorArquivo arquivo = new GravadorArquivo(); string registro = cc.ExibirNumero() + ";" + cc.ExibirCliente().ExibirCPF() + ";" + cc.RetornarSaldo(false) + ";" + cc.ExibirTipo(); arquivo.EscreverArquivo(arquivo.dirGravacao, "contas.txt", registro); }
public bool Transferir(int numeroContaDeSaque, int numeroContaDeDeposito, double valorTransferencia) { var contaSaque = ConsultarContaPorNumero(numeroContaDeSaque); var contaDeposito = ConsultarContaPorNumero(numeroContaDeDeposito); contaSaque.Sacar(valorTransferencia, false); contaDeposito.Depositar(valorTransferencia, false); GravadorArquivo comprovante = new GravadorArquivo(); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, "******TRANSFERÊNCIA******"); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, ""); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, "CONTA SAQUE: " + contaSaque.ExibirNumero()); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, "CORRENTISTA SAQUE: " + contaSaque.ExibirTitular()); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, ""); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, "CONTA DEPÓSITO: " + contaDeposito.ExibirNumero()); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, "CORRENTISTA DEPÓSITO: " + contaDeposito.ExibirTitular()); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, ""); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, "VALOR: " + String.Format("{0:C}", valorTransferencia)); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, ""); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, "Feito em " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoTransf, "*************************"); comprovante.EscreverArquivo(comprovante.dirGravacao, contaSaque.arquivoLog, "OPERAÇÃO TRANSFERÊNCIA feita em " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); return(true); }
public void Sacar(double valor, bool emiteComprovante) { if (TemSaldo(valor)) { this.saldo -= valor; if (emiteComprovante) { GravadorArquivo comprovante = new GravadorArquivo(); StringBuilder log = new StringBuilder(); log.AppendLine("**********SAQUE**********"); log.AppendLine(""); log.AppendLine("CONTA: " + this.ExibirNumero()); log.AppendLine("CORRENTISTA: " + this.ExibirTitular()); log.AppendLine("VALOR BRUTO: " + String.Format("{0:C}", valor)); log.AppendLine(""); log.AppendLine("TRIBUTOS: " + String.Format("{0:C}", this.RetornarTaxa() * valor)); log.AppendLine(""); log.AppendLine("SALDO DISPONÍVEL: " + this.RetornarSaldoFormatado(false)); log.AppendLine(""); log.AppendLine("Feito em " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); log.AppendLine("*************************"); comprovante.EscreverArquivo(comprovante.dirGravacao, arquivoSaque, log.ToString()); comprovante.EscreverArquivo(comprovante.dirGravacao, arquivoLog, "OPERAÇÃO SAQUE feita em " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); } } else { throw new SaldoInsuficienteException(); } }
public void AtualizarBases() { GravadorArquivo arquivo = new GravadorArquivo(); arquivo.SobreescreverArquivo(arquivo.dirGravacao, "clientes.txt"); foreach (var cliente in this.Clientes) { GravarCliente(cliente); } }
public void AtualizarBases() { GravadorArquivo arquivo = new GravadorArquivo(); arquivo.SobreescreverArquivo(arquivo.dirGravacao, "contas.txt"); foreach (var conta in this.Contas) { GravarConta(conta); } }
public void Depositar(double valor, bool emiteComprovante) { this.saldo += valor; if (emiteComprovante) { GravadorArquivo comprovante = new GravadorArquivo(); StringBuilder log = new StringBuilder(); log.AppendLine("********DEPÓSITO********"); log.AppendLine(""); log.AppendLine("CONTA: " + this.ExibirNumero()); log.AppendLine("CORRENTISTA: " + this.ExibirTitular()); log.AppendLine("VALOR: " + string.Format("{0:C}", valor)); log.AppendLine(""); log.AppendLine("Feito em " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); log.AppendLine("*************************"); comprovante.EscreverArquivo(comprovante.dirGravacao, arquivoDeposito, log.ToString()); comprovante.EscreverArquivo(comprovante.dirGravacao, arquivoLog, "OPERAÇÃO DEPÓSITO feita em " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); } }
public double RetornarSaldo(bool emiteComprovante) { if (emiteComprovante) { GravadorArquivo comprovante = new GravadorArquivo(); StringBuilder log = new StringBuilder(); log.AppendLine("**********SALDO**********"); log.AppendLine(""); log.AppendLine("CONTA: " + this.ExibirNumero()); log.AppendLine("CORRENTISTA: " + this.ExibirTitular()); log.AppendLine(""); log.AppendLine("SALDO DISPONÍVEL: " + this.RetornarSaldoFormatado(false)); log.AppendLine(""); log.AppendLine("Feito em " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); log.AppendLine("*************************"); comprovante.EscreverArquivo(comprovante.dirGravacao, arquivoSaldo, log.ToString()); comprovante.EscreverArquivo(comprovante.dirGravacao, arquivoLog, "OPERAÇÃO SALDO feita em " + DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); } return(this.saldo); }
private static void MenuDaConta(Conta conta, ITributavel tributo = null) { string key = ""; StringBuilder comp = new StringBuilder(); double valor = 0; var caminhoComprovantes = "D:\\Users\\314171\\Desktop\\CodingDojo C#\\CaixaEletronico_Exemplo\\Comprovantes.txt"; var caminhoLogs = "D:\\Users\\314171\\Desktop\\CodingDojo C#\\CaixaEletronico_Exemplo\\Logs.txt"; var leitor = new LeitorArquivo(); var gravador = new GravadorArquivo(); var retornoComprovantes = leitor.LerLinhasArquivo(caminhoComprovantes); var retornoLogs = leitor.LerLinhasArquivo(caminhoLogs); while (key.ToUpper() != "Q") { Console.Clear(); Console.WriteLine("Cliente: {0}!", conta.ExibirTitular()); Console.WriteLine("CPF: {0}", conta.ExibirCpf()); Console.WriteLine("Data de Nascimento: {0}\n", conta.ExibirDataNascimento()); Console.WriteLine("1 - Depositar."); Console.WriteLine("2 - Sacar."); Console.WriteLine("3 - Transferir."); Console.WriteLine("4 - Ver Saldo."); Console.WriteLine("5 - Resumo Tributário."); Console.WriteLine("Q - Para Sair"); Console.WriteLine(); Console.Write("Informe um valor: "); key = Convert.ToString(Console.ReadLine()); switch (key) { case "1": Console.Clear(); Console.Write("Informe o valor a depositar: "); valor = Convert.ToDouble(Console.ReadLine()); conta.Depositar(valor); Console.WriteLine(); Console.WriteLine("Saldo Atual: {0}", conta.saldo); key = PressioneParaContinuar(); break; case "2": Console.Clear(); Console.Write("Informe o valor a sacar: "); valor = Convert.ToDouble(Console.ReadLine()); conta.Sacar(valor); Console.WriteLine(); Console.WriteLine("Saldo Atual: {0}", conta.saldo); key = PressioneParaContinuar(); break; case "3": Console.Clear(); if (GerenciadorDeContasBanco.ExisteContaPorNumero(conta.ExibirNumero())) { Console.Write("Informe o número da Conta de Depósito: "); int numeroContaDeDeposito = Convert.ToInt32(Console.ReadLine()); if (GerenciadorDeContasBanco.ExisteContaPorNumero(numeroContaDeDeposito)) { Console.Write("Informe o valor da transferência: "); var valorTransferencia = Convert.ToDouble(Console.ReadLine()); string msgOperacao = "Transferência feita com sucesso!"; if (!GerenciadorDeContasBanco.Transferir(conta.ExibirNumero(), numeroContaDeDeposito, valorTransferencia)) { msgOperacao = "Transferência não foi realizada com sucesso. Tente novamente"; } Console.WriteLine(msgOperacao); } else { throw new ContaInexistenteException(); } } else { throw new ContaInexistenteException(); } key = PressioneParaContinuar(); break; case "4": Console.Clear(); Console.WriteLine("Saldo Atual: " + conta.RetornarSaldo()); key = PressioneParaContinuar(); break; case "5": if (tributo != null) { Console.Clear(); Console.WriteLine("Conta: " + conta.ExibirNumero()); Console.WriteLine("Titular: " + conta.ExibirTitular()); Console.WriteLine("Total de Tributos: " + tributo.CalcularTributo()); conta.MostrarTributos(); } else { Console.WriteLine("Função inexistente"); } key = PressioneParaContinuar(); break; default: break; } } }