Example #1
0
        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
Example #2
0
        public void realizarSolicitacao(Banco banco)
        {
            using (var db = new StoreContext())
            {
                banco.findAllAgencia();
                Console.WriteLine("Informe o Id da agência: ");
                Agencia agencia = banco.findAgencia(int.Parse(Console.ReadLine()));

                if (agencia == null)
                {
                    Console.WriteLine(
                        "**********************\n" +
                        "**Agência não existe**\n" +
                        "**********************\n");
                    return;
                }

                Console.WriteLine(
                    "Informe o tipo da conta:\n" +
                    "1 - Corrente | 2 - Poupança");

                int tipoConta = int.Parse(Console.ReadLine());

                if (tipoConta == 1)
                {
                    agencia.findAllCCorrente();

                    Console.WriteLine("Informe o numero da conta: ");
                    int numConta = int.Parse(Console.ReadLine());
                    try
                    {
                        var cc = db.Set <ContaCorrente>().First(p => p.Id == numConta);                         //Update Conta Corrente in banco

                        Console.WriteLine(
                            "1 - Consultar Saldo\n" +
                            "2 - Sacar\n" +
                            "3 - Depositar\n" +
                            "4 - Remover Conta");
                        int op = int.Parse(Console.ReadLine());

                        if (op == 1)
                        {
                            Console.WriteLine(
                                "Conta: " + cc.Id +
                                "\nTitular: " + cc.Titular +
                                "\nSaldo: R$ " + cc.Saldo);
                        }
                        else if (op == 2)
                        {
                            Console.WriteLine("Informe o valor para saque: ");
                            double valor = Double.Parse(Console.ReadLine());

                            if (valor <= cc.Saldo)
                            {
                                cc.Saldo -= valor;
                            }
                            else
                            {
                                Console.WriteLine(
                                    "**********************\n" +
                                    "**Saldo insuficiente**\n" +
                                    "**********************\n");
                            }
                        }
                        else if (op == 3)
                        {
                            Console.WriteLine("Informe o valor para deposito: ");
                            double valor = Double.Parse(Console.ReadLine());

                            cc.Saldo += valor;
                        }
                        else if (op == 4)
                        {
                            Console.WriteLine(
                                "******************************************\n" +
                                "**Realmente deseja remover a conta(s/n)?**\n" +
                                "******************************************\n");
                            string ex = Console.ReadLine();

                            if (ex == "s")
                            {
                                db.Remove(cc);
                                Console.WriteLine("Conta removida com sucesso!");
                            }
                            else
                            {
                                return;
                            }
                        }
                    }
                    catch
                    {
                        Console.WriteLine(
                            "******************\n" +
                            "**Conta inválida**\n" +
                            "******************\n");
                    }
                }
                else if (tipoConta == 2)
                {
                    agencia.findAllCPoupanca();
                    Console.WriteLine("Informe o numero da conta: ");
                    int numConta = int.Parse(Console.ReadLine());

                    try
                    {
                        var cp = db.Set <ContaPoupanca>().First(p => p.Id == numConta);                         //Update Conta Poupança in banco

                        Console.WriteLine(
                            "1 - Consultar Saldo\n" +
                            "2 - Sacar\n" +
                            "3 - Depositar\n" +
                            "4 - Remover Conta");
                        int op = int.Parse(Console.ReadLine());

                        if (op == 1)
                        {
                            Console.WriteLine(
                                "Conta = " + cp.Id +
                                "\nTitular = " + cp.Titular +
                                "\nSeu saldo é = R$ " + cp.Saldo);
                        }
                        else if (op == 2)
                        {
                            Console.WriteLine("Informe o valor para saque: ");
                            double valor = Double.Parse(Console.ReadLine());

                            if (valor <= cp.Saldo)
                            {
                                cp.Saldo -= valor;
                            }
                            else
                            {
                                Console.WriteLine(
                                    "**********************\n" +
                                    "**Saldo insuficiente**\n" +
                                    "**********************\n");
                            }
                        }
                        else if (op == 3)
                        {
                            Console.WriteLine("Informe o valor para deposito: ");
                            double valor = Double.Parse(Console.ReadLine());

                            cp.Saldo += valor;
                        }
                        else if (op == 4)
                        {
                            Console.WriteLine(
                                "******************************************\n" +
                                "**Realmente deseja remover a conta(s/n)?**\n" +
                                "******************************************\n");
                            string ex = Console.ReadLine();

                            if (ex == "s")
                            {
                                db.Remove(cp);
                                Console.WriteLine("Conta removida com sucesso!");
                            }
                            else
                            {
                                return;
                            }
                        }
                    }
                    catch
                    {
                        Console.WriteLine(
                            "******************\n" +
                            "**Conta inválida**\n" +
                            "******************\n");
                    }
                }
                db.SaveChanges();                   //Save banco
                Console.WriteLine("");
            }
        }       //Fim do método