private void panelConta_VisibleChanged(object sender, EventArgs e)
        {
            if (panelConta.Visible == true)
            {
                Cliente          cliente        = new Cliente();
                Conta            conta          = new Conta();
                ContaDAO         contaDAO       = new ContaDAO();
                Transacao        transacao      = new Transacao();
                TransacaoDAO     transacaoDAO   = new TransacaoDAO();
                List <Transacao> transacoesList = new List <Transacao>();

                string idUsuario = textBoxUsuario.Text;

                cliente = contaDAO.ConsultarDados(cliente, idUsuario);
                conta   = contaDAO.ConsultarDados(conta, idUsuario);

                labelNome.Text          = "Nome: " + cliente.Nome;
                labelAgencia.Text       = "Agencia: 0001 - 7";
                labelBanco.Text         = "Banco: 13";
                labelConta.Text         = "Conta: " + conta.Numero;
                labelSaldoCorrente.Text = "R$ " + conta.Saldo.ToString("0.00");


                transacoesList = transacaoDAO.ConsultarDados(conta.Numero);

                foreach (Transacao item in transacoesList)
                {
                    textBoxHistorico.AppendText("=================================" + System.Environment.NewLine.ToString());//metodo newline para pular linha
                    textBoxHistorico.AppendText("Data e Hora : " + item.DataHora.ToString() + " " + System.Environment.NewLine.ToString());
                    textBoxHistorico.AppendText("Descrição: " + item.Descricao + " " + System.Environment.NewLine.ToString());
                    textBoxHistorico.AppendText("Tipo: " + item.Tipo + " | ");
                    textBoxHistorico.AppendText("Valor: R$" + item.Valor.ToString("0.00") + " " + System.Environment.NewLine.ToString());
                    textBoxHistorico.AppendText("=================================" + System.Environment.NewLine.ToString());
                }
            }
        }
        private void buttonConfirmaTransf_Click(object sender, EventArgs e)
        {
            try
            {
                Transacao        transacaoTransfEnvio = new Transacao();
                Transacao        transacaoTransfReceb = new Transacao();
                TransacaoDAO     transacaoDAO         = new TransacaoDAO();
                ContaCorrenteDAO contaCorrenteDAO     = new ContaCorrenteDAO();
                List <Transacao> transacoesList       = new List <Transacao>();

                int    contaOrigem      = Convert.ToInt32(labelConta.Text.Substring(6));
                int    contaDestino     = Convert.ToInt32(textBoxContaDestino.Text);
                int    valorTransf      = Convert.ToInt32(textBoxValorTransf.Text);
                bool   aprovado         = contaCorrenteDAO.Transferir(contaOrigem, contaDestino, valorTransf);
                string nomeBeneficiario = contaCorrenteDAO.ConsultarNome(Convert.ToInt32(textBoxContaDestino.Text));

                if (nomeBeneficiario.Length == 0)
                {
                    labelNomeDestinoTransf.Visible = false;
                }
                else
                {
                    labelNomeDestinoTransf.Visible = true;
                    labelNomeDestinoTransf.Text    = "Beneficiario: " + nomeBeneficiario;
                    if (DialogResult.Cancel == MessageBox.Show("Deseja transferir R$ " + valorTransf.ToString("0.00") + " reais para: " + nomeBeneficiario + "?", "Confirmação", MessageBoxButtons.OKCancel, MessageBoxIcon.Question))
                    {
                        aprovado = false;
                    }
                }

                if (aprovado == true && valorTransf > 0)
                {
                    labelMensagemTransf.Visible = true;
                    labelMensagemTransf.Text    = "Transferencia realizada com sucesso.";
                    textBoxContaDestino.Text    = "";
                    textBoxValorTransf.Text     = "";
                    textBoxHistorico.Text       = "";
                    decimal saldoAnterior = Convert.ToDecimal(labelSaldoCorrente.Text.Substring(2));
                    decimal saldoAtual    = saldoAnterior - valorTransf;
                    labelSaldoCorrente.Text          = "R$ " + saldoAtual.ToString("0.00");
                    transacaoTransfEnvio.Tipo        = "Transferencia";
                    transacaoTransfEnvio.Descricao   = "Transferencia efetuada para " + nomeBeneficiario + " C/C: " + contaDestino.ToString();
                    transacaoTransfEnvio.Valor       = valorTransf;
                    transacaoTransfEnvio.DataHora    = DateTime.Now;
                    transacaoTransfEnvio.NumeroConta = contaOrigem;
                    transacaoDAO.RegistrarTransacao(transacaoTransfEnvio);
                    string nomeRemetente = labelNome.Text;
                    transacaoTransfReceb.Tipo        = "Transferencia";
                    transacaoTransfReceb.Descricao   = "Transferencia recebida de " + nomeRemetente.Substring(6) + " C/C: " + contaOrigem.ToString();
                    transacaoTransfReceb.Valor       = valorTransf;
                    transacaoTransfReceb.DataHora    = DateTime.Now;
                    transacaoTransfReceb.NumeroConta = contaDestino;
                    transacaoDAO.RegistrarTransacao(transacaoTransfReceb);
                    transacoesList = transacaoDAO.ConsultarDados(contaOrigem);

                    foreach (Transacao item in transacoesList)
                    {
                        textBoxHistorico.AppendText("=================================" + System.Environment.NewLine.ToString());
                        textBoxHistorico.AppendText("Data e Hora : " + item.DataHora.ToString() + " " + System.Environment.NewLine.ToString());
                        textBoxHistorico.AppendText("Descrição: " + item.Descricao + " " + System.Environment.NewLine.ToString());
                        textBoxHistorico.AppendText("Tipo: " + item.Tipo + " | ");
                        textBoxHistorico.AppendText("Valor: R$" + item.Valor.ToString("0.00") + " " + System.Environment.NewLine.ToString());
                        textBoxHistorico.AppendText("=================================" + System.Environment.NewLine.ToString());
                    }
                }
                else
                {
                    labelMensagemTransf.Visible   = true;
                    labelMensagemTransf.Text      = "Transferencia nao realizada.";
                    labelMensagemTransf.BackColor = Color.Red;
                    textBoxContaDestino.Focus();
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Valor invalido e/ou Conta para transferencia nao informada.", "Atenção");
                textBoxValorTransf.Focus();
            }
        }
        private void buttonConfirmaSaque_Click(object sender, EventArgs e)
        {
            Transacao        transacao        = new Transacao();
            TransacaoDAO     transacaoDAO     = new TransacaoDAO();
            ContaCorrenteDAO contaCorrenteDAO = new ContaCorrenteDAO();
            List <Transacao> transacoesList   = new List <Transacao>();

            string input          = textBoxValorSaque.Text;
            int    valorValidacao = 0;

            if (!int.TryParse(input, out valorValidacao))
            {
                textBoxValorSaque.Focus();
                labelMensagemSaque.Text    = "Digite um valor valido.";
                labelMensagemSaque.Visible = true;
                MessageBox.Show("Valor de deposito invalido!", "Atenção");
            }
            else
            {
                try
                {
                    decimal valorSaque = Convert.ToDecimal(textBoxValorSaque.Text);
                    int     conta      = Convert.ToInt32(labelConta.Text.Substring(6));
                    decimal saldo      = contaCorrenteDAO.ConsultarSaldo(conta);
                    bool    aprovado   = contaCorrenteDAO.Sacar(conta, saldo, valorSaque);

                    if (aprovado == true && valorSaque > 0)
                    {
                        labelMensagemSaque.Text    = "Saque confirmado.";
                        labelMensagemSaque.Visible = true;
                        textBoxValorSaque.Text     = "";
                        textBoxHistorico.Text      = "";
                        decimal saldoAtual = contaCorrenteDAO.ConsultarSaldo(conta);
                        labelSaldoCorrente.Text = "R$ " + saldoAtual.ToString("0.00");
                        transacao.Tipo          = "Saque";
                        transacao.Descricao     = "Saque em C/C";
                        transacao.Valor         = valorSaque;
                        transacao.DataHora      = DateTime.Now;
                        transacao.NumeroConta   = conta;
                        transacaoDAO.RegistrarTransacao(transacao);
                        transacoesList = transacaoDAO.ConsultarDados(conta);

                        foreach (Transacao item in transacoesList)
                        {
                            textBoxHistorico.AppendText("=================================" + System.Environment.NewLine.ToString());
                            textBoxHistorico.AppendText("Data e Hora : " + item.DataHora.ToString() + " " + System.Environment.NewLine.ToString());
                            textBoxHistorico.AppendText("Descrição: " + item.Descricao + " " + System.Environment.NewLine.ToString());
                            textBoxHistorico.AppendText("Tipo: " + item.Tipo + " | ");
                            textBoxHistorico.AppendText("Valor: R$" + item.Valor.ToString("0.00") + " " + System.Environment.NewLine.ToString());
                            textBoxHistorico.AppendText("=================================" + System.Environment.NewLine.ToString());
                        }
                    }
                    else
                    {
                        labelMensagemSaque.Text      = "Saque fracassou.";
                        labelMensagemSaque.Visible   = true;
                        labelMensagemSaque.BackColor = Color.Red;
                    }
                }
                catch (FormatException)
                {
                    MessageBox.Show("Valor de deposito invalido!", "Atenção");
                    labelMensagemSaque.Text    = "Digite um valor valido.";
                    labelMensagemSaque.Visible = true;
                    textBoxValorSaque.Focus();
                }
            }
        }
예제 #4
0
 public Transacao Get(
     [FromServices] TransacaoDAO transacaoDAO,
     int id)
 {
     return(transacaoDAO.Obter(id));
 }