Пример #1
0
        private void btnTransferir_Click(object sender, EventArgs e)
        {
            double retNum;
            bool   ehNumerico = double.TryParse(txtTransfValor.Text, System.Globalization.NumberStyles.Currency, System.Globalization.NumberFormatInfo.InvariantInfo, out retNum);

            if (ehNumerico)
            {
                try
                {
                    GerenciadorDeContasBanco.Transferir(contaSelecionada.ExibirNumero(), int.Parse(txtTransfConta.Text), Convert.ToDouble(txtTransfValor.Text));
                    StringBuilder mensagem = new StringBuilder();
                    mensagem.AppendLine("Transferência efetuada com sucesso!");
                    mensagem.AppendLine("Conta Origem: " + contaSelecionada.ExibirNumero());
                    mensagem.AppendLine("Titular Origem: " + contaSelecionada.ExibirTitular());
                    mensagem.AppendLine("");
                    mensagem.AppendLine("Conta Destino: " + txtTransfConta.Text);
                    mensagem.AppendLine("Titular Destino: " + lblTransfTitular.Text);
                    mensagem.AppendLine("");
                    mensagem.AppendLine("Valor: " + String.Format("{0:C}", Convert.ToDouble(txtTransfValor.Text)));
                    MessageBox.Show(mensagem.ToString(), "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Erro!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                finally
                {
                    btnConsultarConta_Click(this, new EventArgs());
                }
            }
        }
Пример #2
0
        private static void MenuDaConta(Conta conta, ITributavel tributo = null)
        {
            string key   = "";
            double valor = 0;

            while (key.ToUpper() != "Q")
            {
                Console.Clear();

                Console.WriteLine("Nome do Cliente: " + conta.ExibirTitular());
                Console.WriteLine("Número da Conta: " + conta.ExibirNumero());
                Console.WriteLine();
                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, true);
                    Console.WriteLine();
                    Console.WriteLine("Saldo Atual: " + conta.RetornarSaldoFormatado(false));

                    key = PressioneParaContinuar();
                    break;

                case "2":
                    Console.Clear();
                    Console.Write("Informe o valor a sacar: ");
                    valor = Convert.ToDouble(Console.ReadLine());
                    conta.Sacar(valor, true);
                    Console.WriteLine();
                    Console.WriteLine("Saldo Atual: " + conta.RetornarSaldoFormatado(false));

                    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: " + String.Format("{0:C}", conta.RetornarSaldo(true)));

                    key = PressioneParaContinuar();
                    break;

                case "5":
                    Console.Clear();
                    Console.WriteLine("Conta: " + conta.ExibirNumero());
                    Console.WriteLine("Titular: " + conta.ExibirTitular());
                    Console.WriteLine("Total de Tributos: " + CalcularTaxaOtimizada(conta));

                    key = PressioneParaContinuar();
                    break;

                default:
                    break;
                }
            }
        }