示例#1
0
        protected void BtnLogar_Click(object sender, EventArgs e)
        {
            ContaCorrente cc = null;

            try
            {
                cc = new ContaCorrente()
                {
                    Numero = int.Parse(TxtNumConta.Text),
                    Senha  = Criptografia.GerarHashMd5(TxtSenha.Text)
                };
                if (cc.Numero <= 0)
                {
                    throw new System.ArgumentException();
                }

                cc = new ContaCorrenteDAO().Login(cc);

                if (cc != null)
                {
                    Session["contaCorrente"] = cc;
                    Response.Redirect("~/Views/vwsContaCorrente.aspx");
                }
                else
                {
                    LblResultado.Text = "Usuário não encontrado!";
                }
            }
            catch
            {
                LblResultado.Text = "Entrada inválida!";
            }
        }
        private void buttonCadastrar_Click(object sender, EventArgs e)
        {
            Cliente          cliente          = new Cliente();
            Usuario          usuario          = new Usuario();
            Conta            conta            = new Conta();
            ContaCorrente    contaCorrente    = new ContaCorrente();
            ClienteDAO       clienteDAO       = new ClienteDAO();
            UsuarioDAO       usuarioDAO       = new UsuarioDAO();
            ContaDAO         contaDAO         = new ContaDAO();
            ContaCorrenteDAO contaCorrenteDAO = new ContaCorrenteDAO();

            try
            {
                cliente.Nome = textBoxNome.Text;
                cliente.Cpf  = maskedTextBoxCpf.Text;
                string dia  = maskedTextBoxNascimento.Text.Substring(0, 2);
                string mes  = maskedTextBoxNascimento.Text.Substring(2, 4);
                string ano  = maskedTextBoxNascimento.Text.Substring(6, 4);
                string data = ano + mes + dia;
                cliente.Nascimento = DateTime.Parse(data);
                cliente.Endereco   = textBoxEndereco.Text;
                cliente.Uf         = comboBoxUf.Text;
                cliente.Celular    = maskedTextBoxCelular.Text;
                cliente.Email      = textBoxEmail.Text;
                usuario.IdNome     = textBoxUsuarioInsert.Text;
                usuario.Senha      = textBoxSenhaConfirm.Text;
                // metodos
                bool validadoC = cliente.ValidaCliente(cliente);
                clienteDAO.Salvar(cliente, validadoC);
                bool   validadoU  = usuario.ValidaUsuario(usuario);
                string cpfCliente = cliente.Cpf;
                usuarioDAO.Salvar(usuario, validadoU, cpfCliente);
                conta = contaCorrente.CriarConta();
                contaDAO.Salvar(validadoC, conta, cpfCliente);
            }
            catch (ArgumentOutOfRangeException)
            {
                MessageBox.Show("Por favor informe sua data de nascimento. ");
            }
            catch (FormatException)
            {
                MessageBox.Show("Formato de data de nascimento invalida!. ");
            }

            panelLogin.Visible    = true;
            panelCadastro.Visible = false;

            //Limpa os campos após salvar
            textBoxNome.Text             = "";
            maskedTextBoxCpf.Text        = "";
            maskedTextBoxNascimento.Text = "";
            textBoxEndereco.Text         = "";
            comboBoxUf.SelectedIndex     = 0;
            maskedTextBoxCelular.Text    = "";
            textBoxEmail.Text            = "";
            textBoxUsuarioInsert.Text    = "";
            textBoxSenhaInsert.Text      = "";
            textBoxSenhaConfirm.Text     = "";
        }
        /// <summary>
        /// Validar a Conta Corrente
        /// </summary>
        /// <param name="conta">para verificar se ela existe</param>
        /// <returns>retorna uma conta</returns>
        public ContaCorrente validarContaCorrente(ContaCorrente conta)
        {
            var account = new ContaCorrenteDAO();

            var contacorrente = account.getByNumero(conta);

            return(contacorrente);
        }
        protected void btnCadastrar_Click(object sender, EventArgs e)
        {
            try
            {
                if (!string.IsNullOrEmpty(txtCpf.Text) && !string.IsNullOrEmpty(txtNome.Text) && !string.IsNullOrEmpty(txtLimite.Text) && !string.IsNullOrEmpty(txtSenha.Text))
                {
                    if (txtCpf.Text.Length == 11)
                    {
                        Pessoa p = new Pessoa()
                        {
                            Nome = txtNome.Text,
                            Cpf  = txtCpf.Text
                        };

                        ContaCorrente cc = new ContaCorrente()
                        {
                            Limite = float.Parse(txtLimite.Text, CultureInfo.InvariantCulture.NumberFormat),
                            Pessoa = p,
                            Senha  = txtSenha.Text
                        };

                        cc = new ContaCorrenteDAO().InserirContaCorrente(cc);

                        if (cc != null)
                        {
                            lblResultado.Text  = "Cadastro de Cliente Realizado com Sucesso!";
                            lblResultado2.Text = "Numero da Conta: " + cc.Numero.ToString();
                        }
                    }
                    else
                    {
                        throw new ArgumentException("CPF deve possuir 11 caracteres.");
                    }
                }
                else
                {
                    throw new ArgumentException("Dados inválidos.");
                }
            }
            catch (Exception exc)
            {
                if (exc is ArgumentException)
                {
                    lblResultado.Text = exc.Message;
                }

                else if (exc is MySql.Data.MySqlClient.MySqlException)
                {
                    lblResultado.Text = "CPF Já Cadastrado em Nosso Sistema.";
                }

                lblResultado2.Text = "Favor verificar os dados de entrada.";
            }
        }
        public void TestMethod3()
        {
            ContaCorrente cc = new ContaCorrenteDAO().Login(new ContaCorrente()
            {
                Numero = 3,
                Senha  = Utils.Criptografia.GerarHashMd5("1234")
            }
                                                            );

            Console.WriteLine(cc.Senha);
            Assert.IsNotNull(cc);
        }
示例#6
0
 public void AtualizarSaldoPositivo(int contaID, string valor)
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     contaCorrenteDAO.AtualizarSaldoPositivo(contaID, valor);
 }
示例#7
0
 public ContaCorrente SelecionarContaCorrenteBancoID(int bancoID)
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     return(contaCorrenteDAO.SelecionarContaCorrenteBancoID(bancoID));
 }
示例#8
0
 public ContaCorrente RetornaContaCorrenteID(int contaID)
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     return(contaCorrenteDAO.SelecionarContaCorrenteID(contaID));
 }
示例#9
0
 public void DeletarContaCorrente(int contaID)
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     contaCorrenteDAO.DeletarContaCorrente(contaID);
 }
示例#10
0
 public void AtualizarSaldoDespesaEstorno(int contaID, string valor)
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     contaCorrenteDAO.AtualizarSaldoDespesaEstorno(contaID, valor);
 }
示例#11
0
 public void AlterarContaCorrente(ContaCorrente contaCorrente)
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     contaCorrenteDAO.AlterarContaCorrente(contaCorrente);
 }
        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();
                }
            }
        }
        public void TestAtualizarLimite()
        {
            bool atualizado = new ContaCorrenteDAO().AtualizarLimite(3, -5000);

            Assert.AreEqual(true, atualizado);
        }
示例#15
0
 public IList <ContaCorrente> RetornaListaContaCorrente()
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     return(contaCorrenteDAO.RetornaListaContaCorrentes());
 }
示例#16
0
 public DataTable RetornaDataTableContaCorrente(string parametro)
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     return(contaCorrenteDAO.CriaDataTableContaCorrentes(parametro));
 }
示例#17
0
 public void GravarContaCorrente(ContaCorrente contaCorrente)
 {
     contaCorrenteDAO = new ContaCorrenteDAO();
     contaCorrenteDAO.InserirContaCorrente(contaCorrente);
 }