public static void abrirContaPoupanca(string cpf, string nome, int idade, Agencia agencia, BancoContext context) { try { var newCliente = new Cliente() { Nome = nome, Cpf = cpf, Idade = idade }; context.Add(newCliente); context.SaveChanges(); decimal saldo = 0; var newConta = new Conta() { Agencia = agencia, Cliente = newCliente, Saldo = saldo, Titular = newCliente.Nome }; context.Add(newConta); context.SaveChanges(); decimal taxaJuros = 0; var newContaPoupanca = new ContaPoupanca() { Conta = newConta, TaxaJuros = taxaJuros }; context.Add(newContaPoupanca); context.SaveChanges(); Console.Clear(); Console.WriteLine("OPERAÇÃO REALIZADA COM SUCESSO!"); } catch (Exception erro) { erro.ToString(); Console.Clear(); Console.WriteLine("NÃO FOI POSSÍVEL REALIZAR ESSA AÇÃO!"); } }
public static void abrirContaPoupanca(string cpf, string nome, int idade, Agencia agencia, BancoContext context) { try { var newCliente = new Cliente() { Nome = nome, Cpf = cpf, Idade = idade }; context.Add(newCliente); context.SaveChanges(); decimal saldo = 0; var newConta = new Conta() { Agencia = agencia, Cliente = newCliente, Saldo = saldo, Titular = newCliente.Nome }; context.Add(newConta); context.SaveChanges(); decimal taxaJuros = 0; var newContaPoupanca = new ContaPoupanca() { Conta = newConta, TaxaJuros = taxaJuros }; context.Add(newContaPoupanca); context.SaveChanges(); Console.Clear(); Console.WriteLine("Esta operação foi efetuada com sucesso!"); } catch (Exception erro) { erro.ToString(); Console.Clear(); Console.WriteLine("Atenção, erro ao realizar esta ação!"); } }
static void Main(string[] args) { var contexto = new Contexto(); if (!contexto.Bancos.Any()) { var banco = new Banco() { Nome = "Bradesco" }; contexto.Add(banco); contexto.SaveChanges(); if (!contexto.Agencias.Any()) { var Agencia = new Agencia() { NumeroAgencia = "0121", BancoId = banco.Id }; contexto.Add(Agencia); contexto.SaveChanges(); } } foreach (Agencia a in contexto.Agencias) { Console.WriteLine("bancoId: " + a.BancoId); } while (true) { Console.WriteLine("Digite a opcao desejada."); Console.WriteLine("1 - Listar agencias"); Console.WriteLine("2 - Agencia"); Console.WriteLine("3 - Conta"); Console.WriteLine("0 - Sair"); int op = int.Parse(Console.ReadLine()); Console.WriteLine(op); if (op == 0) { break; } if (op == 1) { List <Banco> bancos = contexto.Bancos.ToList(); foreach (Agencia a in bancos[0].Agencias) { Console.WriteLine("Identificador: " + a.NumeroAgencia); } } else if (op == 2) { Console.WriteLine("Numero da agencia."); string agencia = Console.ReadLine(); Agencia a = null; List <Banco> bancos = contexto.Bancos.ToList(); foreach (Agencia ag in bancos[0].Agencias) { if (ag.NumeroAgencia.Equals(agencia)) { a = ag; break; } } if (a == null) { Console.WriteLine("Agencia nao encontrada."); continue; } Console.WriteLine("Agencia " + a.NumeroAgencia); Console.WriteLine("1 - Abrir conta"); Console.WriteLine("2 - Fechar conta"); Console.WriteLine("3 - Consultar conta"); Console.WriteLine("0 - Voltar"); op = int.Parse(Console.ReadLine()); if (op == 1) { Console.WriteLine("Digite 1. Conta Corrente 2.Conta Poupanca "); op = int.Parse(Console.ReadLine()); if (op == 1) { Console.WriteLine("Digite o nome do titular "); string nome = Console.ReadLine(); ContaCorrente cc = new ContaCorrente(); cc.Titular = nome; contexto.Add(cc); a.Contas.Add(cc); contexto.SaveChanges(); continue; } else if (op == 2) { Console.WriteLine("Digite o nome do titular "); string nome = Console.ReadLine(); ContaPoupanca cp = new ContaPoupanca(); cp.Titular = nome; Console.WriteLine("Digite sua data de aniversario "); string niver = Console.ReadLine(); cp.DataAniversario = DateTime.ParseExact(niver, "dd/MM/yyyy", CultureInfo.InvariantCulture); contexto.Add(cp); a.Contas.Add(cp); contexto.SaveChanges(); continue; } } else if (op == 2) { Console.WriteLine("Digite o nome do titular."); string nome = Console.ReadLine(); Console.WriteLine("Digite 1. Conta Corrente 2.Conta Poupanca "); op = int.Parse(Console.ReadLine()); if (op == 1) { foreach (ContaCorrente cc in contexto.ContasCorrentes) { if (cc.Titular.Equals(nome)) { contexto.ContasCorrentes.Remove(cc); a.Contas.Remove(cc); contexto.SaveChanges(); break; } } } else if (op == 2) { foreach (ContaPoupanca cp in contexto.ContasPoupancas) { if (cp.Titular.Equals(nome)) { contexto.ContasPoupancas.Remove(cp); a.Contas.Remove(cp); contexto.SaveChanges(); break; } } } } else if (op == 3) { Console.WriteLine("Digite 1. Conta Corrente 2.Conta Poupanca "); op = int.Parse(Console.ReadLine()); if (op == 1) { Console.WriteLine("Digite o nome do titular "); string nome = Console.ReadLine(); foreach (ContaCorrente cc in contexto.ContasCorrentes) { if (cc.Titular.Equals(nome)) { Console.WriteLine("Identificador: " + cc.Id + " | Saldo: " + cc.Saldo); break; } } continue; } else if (op == 2) { Console.WriteLine("Digite o nome do titular "); string nome = Console.ReadLine(); foreach (ContaPoupanca cp in contexto.ContasPoupancas) { if (cp.Titular.Equals(nome)) { Console.WriteLine("Identificador: " + cp.Id + " | Saldo: " + cp.Saldo); break; } } continue; } } } else if (op == 3) { Console.WriteLine("Conta."); Console.WriteLine("1 - Solicitar"); Console.WriteLine("0 - Voltar"); op = int.Parse(Console.ReadLine()); if (op == 1) { Solicitacao s = new Solicitacao(); Console.WriteLine("digite Cpf do cliente"); string CpfCliente = Console.ReadLine(); Console.WriteLine("digite agencia do cliente"); string NumeroAgencia = Console.ReadLine(); Console.WriteLine("digite o tipo de transacao: (1- Deposito 2 - Saque) "); int opc = int.Parse(Console.ReadLine()); List <Agencia> agencias = contexto.Agencias.ToList(); Agencia a = null; foreach (Agencia ag in agencias) { if (ag.NumeroAgencia.Equals(NumeroAgencia)) { a = ag; break; } } if (a == null) { Console.WriteLine("Agencia nao encontrada"); continue; } if (opc == 1) { s.TipoT = TIPO_DEPOSITO; } else if (opc == 2) { s.TipoT = TIPO_SAQUE; } if (s.TipoT.Equals(TIPO_DEPOSITO)) { Console.WriteLine("digite a conta"); string conta = Console.ReadLine(); Console.WriteLine("Digite 1 - Conta Corrente 2 - Conta Poupanca "); opc = int.Parse(Console.ReadLine()); if (opc == 1) { ContaCorrente c = null; foreach (ContaCorrente cc in a.Contas) { if (cc.Titular.Equals(conta)) { c = cc; break; } } if (c == null) { Console.WriteLine("Conta nao encontrada"); break; } Console.WriteLine("Valor a ser Depositado"); decimal valor = decimal.Parse(Console.ReadLine()); decimal taxa = valor * c.Taxa; c.Saldo = c.Saldo + valor - taxa; Console.WriteLine("Valor atual: " + c.Saldo); contexto.SaveChanges(); } else if (opc == 2) { ContaPoupanca p = null; foreach (ContaPoupanca cp in a.Contas) { if (cp.Titular.Equals(conta)) { p = cp; break; } } if (p == null) { Console.WriteLine("Conta nao encontrada"); break; } Console.WriteLine("Valor a ser Depositado"); decimal valor = int.Parse(Console.ReadLine()); decimal taxa = valor * p.Juros; p.Saldo = p.Saldo + valor + taxa; Console.WriteLine("Valor atual: " + p.Saldo); contexto.SaveChanges(); } } else if (s.TipoT.Equals(TIPO_SAQUE)) { Console.WriteLine("digite a conta"); string conta = Console.ReadLine(); Console.WriteLine("Digite 1 - Conta Corrente 2 - Conta Poupanca "); opc = int.Parse(Console.ReadLine()); if (opc == 1) { ContaCorrente c = null; foreach (ContaCorrente cc in a.Contas) { if (cc.Titular.Equals(conta)) { c = cc; break; } } if (c == null) { Console.WriteLine("Conta nao encontrada"); break; } Console.WriteLine("Valor a ser Sacado "); decimal valor = decimal.Parse(Console.ReadLine()); if (c.Saldo >= valor) { c.Saldo = c.Saldo - valor; Console.WriteLine("Valor atual: " + c.Saldo); contexto.SaveChanges(); } else { Console.WriteLine("Saldo insufuciente."); continue; } } else if (op == 2) { ContaPoupanca p = null; foreach (ContaPoupanca cp in a.Contas) { if (cp.Titular.Equals(conta)) { p = cp; break; } } if (p == null) { Console.WriteLine("Conta nao encontrada"); break; } Console.WriteLine("Valor a ser Sacado"); decimal valor = decimal.Parse(Console.ReadLine()); if (p.Saldo >= valor) { p.Saldo = p.Saldo - valor; Console.WriteLine("Valor atual: " + p.Saldo); contexto.SaveChanges(); } else { Console.WriteLine("Saldo insufuciente."); continue; } } } } } else if (op == 0) { continue; } } }
static void Main(string[] args) { using (var db = new StoreContext()) { db.Set <Banco>().RemoveRange(db.Bancos); Banco banco = new Banco(); db.Bancos.Add(banco); db.SaveChanges(); while (true) { menu(); int op = int.Parse(Console.ReadLine()); if (op == 1) { Agencia agencia = new Agencia(); agencia.Banco = banco; db.Agencias.Add(agencia); //add agência in banco db.SaveChanges(); banco.findAllAgencia(); } else if (op == 2) { banco.findAllAgencia(); Console.WriteLine("Informe o número da agência: "); int numAgencia = int.Parse(Console.ReadLine()); Agencia agencia = banco.findAgencia(numAgencia); if (agencia == null) { Console.WriteLine( "*************************************\n" + "**Agencia inválida! Tente novamente**\n" + "*************************************\n"); continue; } Cliente cliente = new Cliente(); Console.WriteLine("Informe o nome do cliente: "); cliente.Nome = Console.ReadLine(); Console.WriteLine("Qual tipo de conta deseja criar:"); Console.WriteLine("1 - Corrente | 2 - Poupança"); int tipoConta = int.Parse(Console.ReadLine()); if (tipoConta == 1) { db.Clientes.Add(cliente); //add cliente in base ContaCorrente cc = new ContaCorrente(cliente.Nome, agencia); var x = db.ContasCorrente.Add(cc); //add Conta Corrente in base } else if (tipoConta == 2) { db.Clientes.Add(cliente); //add cliente in base ContaPoupanca cp = new ContaPoupanca(JUROS, DateTime.Now, cliente.Nome, agencia); db.ContasPoupanca.Add(cp); //add Conta Poupança in base } } else if (op == 3) { Solicitacao solicitacao = new Solicitacao(); solicitacao.realizarSolicitacao(banco); } else if (op == 4) { return; } else { Console.WriteLine( "***********************************\n" + "**Opção inválida! Tente novamente**\n" + "***********************************\n"); } db.SaveChanges(); } //Fim do while } } //Fim da main
static int deletarConta(BancoContext context, Conta conta, int opcao) { //VARIÁVEIS AUXILIARES Cliente cliente = new Cliente(); ContaCorrente contaC = new ContaCorrente(); ContaPoupanca contaP = new ContaPoupanca(); int option = 0; Console.WriteLine("DIGITE NOVAMENTE O NOME DO TITULAR DA CONTA"); string nome = Console.ReadLine(); Console.WriteLine("DIGITE NOVAMENTE O CPF DO TITULAR DA CONTA"); string cpf = Console.ReadLine(); try { if (opcao == 1) { cliente = context.Set <Cliente>().Where(b => b.Cpf == cpf && b.Nome == nome).FirstOrDefault(); contaC = context.Set <ContaCorrente>().Where(b => b.Conta == conta).FirstOrDefault(); } else if (opcao == 2) { cliente = context.Set <Cliente>().Where(b => b.Cpf == cpf && b.Nome == nome).FirstOrDefault(); contaP = context.Set <ContaPoupanca>().Where(b => b.Conta == conta).FirstOrDefault(); } for (; option != 2;) { Console.Clear(); Console.WriteLine("DESEJA REALMENTE DELETAR ESSA CONTA ?"); Console.WriteLine("SIM ------------------------------- 1"); Console.WriteLine("Não ------------------------------- 2"); try { option = Int32.Parse(Console.ReadLine()); } catch (Exception erro) { erro.ToString(); option = 10; } switch (option) { case 1: if (opcao == 1) { var solicitacao = context.Set <Solicitacao>(); foreach (var s in solicitacao) { if (s.Conta == conta) { context.Remove(s); } } context.Remove(contaC); context.Remove(conta); context.Remove(cliente); context.SaveChanges(); } else if (opcao == 2) { var solicitacao = context.Set <Solicitacao>(); foreach (var s in solicitacao) { if (s.Conta == conta) { context.Remove(s); } } context.Remove(contaP); context.Remove(conta); context.Remove(cliente); context.SaveChanges(); } Console.WriteLine("OPERAÇÃO REALIZADA COM SUCESSO!"); break; case 2: break; default: Console.Clear(); Console.WriteLine("OPÇÃO INVÁLIDA"); break; } if (option == 1) { return(0); } } } catch (Exception erro) { erro.ToString(); Console.Clear(); Console.WriteLine("CREDENCIAIS INCORRETAS"); } return(5); }
static int deletarConta(BancoContext context, Conta conta, int opcao) { Cliente cliente = new Cliente(); ContaCorrente contaC = new ContaCorrente(); ContaPoupanca contaP = new ContaPoupanca(); int option = 0; Console.WriteLine("****** Atualização de Dados Cadastrais *******"); Console.WriteLine("Informe o nome do titular: "); string nome = Console.ReadLine(); Console.WriteLine("Informe o CPF do titular: "); string cpf = Console.ReadLine(); try { if (opcao == 1) { cliente = context.Set <Cliente>().Where(b => b.Cpf == cpf && b.Nome == nome).FirstOrDefault(); contaC = context.Set <ContaCorrente>().Where(b => b.Conta == conta).FirstOrDefault(); } else if (opcao == 2) { cliente = context.Set <Cliente>().Where(b => b.Cpf == cpf && b.Nome == nome).FirstOrDefault(); contaP = context.Set <ContaPoupanca>().Where(b => b.Conta == conta).FirstOrDefault(); } for (; option != 2;) { Console.Clear(); Console.WriteLine("Tem certeza que deseja fazer a exclusão desta conta?"); Console.WriteLine("1 - Para Sim"); Console.WriteLine("2 - Para Não"); try { option = Int32.Parse(Console.ReadLine()); } catch (Exception erro) { erro.ToString(); option = 10; } switch (option) { case 1: if (opcao == 1) { var solicitacao = context.Set <Solicitacao>(); foreach (var s in solicitacao) { if (s.Conta == conta) { context.Remove(s); } } context.Remove(contaC); context.Remove(conta); context.Remove(cliente); context.SaveChanges(); } else if (opcao == 2) { var solicitacao = context.Set <Solicitacao>(); foreach (var s in solicitacao) { if (s.Conta == conta) { context.Remove(s); } } context.Remove(contaP); context.Remove(conta); context.Remove(cliente); context.SaveChanges(); } Console.WriteLine("Operação efetuada com sucessso!"); break; case 2: break; default: Console.Clear(); Console.WriteLine("Atenção, esta opção é inválida!"); break; } if (option == 1) { return(0); } } } catch (Exception erro) { erro.ToString(); Console.Clear(); Console.WriteLine("Atenção, dados cadastrais incorretos!"); } return(5); }