(Business rule) - Update balance

0
  • I'm developing a business rule in which the user typing the number and branch of the bank account, it has two options:

    1- Credit: The user will type through the JTextField the char 'c' equivalent to credit and this will add to your balance with the value that the same request.

    2- Debit: The user will type through the JTextField the char 'd' equivalent to debit and this will decrease your balance with the value that the same request.

  • So the logic I've already developed in the DAO class, now my biggest difficulty is in calling the UpdateSaldo method in the MAIN class,
    so I ask for your help.

MAIN class

public class Main {



    public static void main(String[] args) {
            menu();
        }

        public static ContaBancariaBean gerarConta() {
            ContaBancariaBean e = new ContaBancariaBean();
            e.setNumero(JOptionPane.showInputDialog("Número: "));
            e.setAgencia(JOptionPane.showInputDialog("Agência: "));
            e.setLimite(new Integer(JOptionPane.showInputDialog("Limite: ")));
            e.setSaldo(new Integer(JOptionPane.showInputDialog("Saldo: ")));
            return e;

        }

        public static void cadastrar() {
            ContaBancariaBean conta = gerarConta();
            if (ContaBancariaDao.inserir(conta, conta.getNumero(), conta.getAgencia())) {
                JOptionPane.showMessageDialog(null, "Gravado Com Sucesso!");
            } else {
                JOptionPane.showMessageDialog(null, "Não foi possível Gravar!");
            }
        }
        public static void listarConta() {
            String dados = ContaBancariaDao.listar();
            TextArea ta = new TextArea();
            ta.setEditable(false);
            ta.setText(dados);
            JOptionPane.showMessageDialog(null, ta);
        }



        public static void alterarSaldo() {
            String numero = JOptionPane.showInputDialog("Número:");
            String agencia = JOptionPane.showInputDialog("Agência:");
            String valor = JOptionPane.showInputDialog("Valor:");
            String operacao = JOptionPane.showInputDialog("Operação:");
            ContaBancariaBean e = ContaBancariaDao.pesquisa(numero,agencia);
            if (e == null)
                JOptionPane.showMessageDialog(null,
                        "Agência ou número Inexistente!");
            else {
                e.setSaldo(new Integer(JOptionPane.showInputDialog("Número: ",
                        e.getSaldo())));
            }e.setAgencia(JOptionPane.showInputDialog("Agência: ",
                    e.getAgencia()));

            if (ContaBancariaDao.atualizarSaldo(e, e.getSaldo()))

                    JOptionPane.showMessageDialog(null, "Atualizado");
                else
                    JOptionPane.showMessageDialog(null, "Não foi Atualizado");
            }




        public static void menu() {
            String opcoes = "1-Cadastrar-Alterar saldo"
                    + "\n3-Listar\n4-Sair";
            int op = 0;
            do {
                op = new Integer(JOptionPane.showInputDialog(opcoes));
                switch (op) {
                case 1:
                    cadastrar();
                    break;
                case 2:
                    alterarSaldo();
                    break;

                case 3:
                    listarConta();
                    break;

                }
            } while (op != 4);
        }

    }

DAO Class

 import javax.swing.JOptionPane;

    public class ContaBancariaDao {

        private static final int QTDE = 10;
        private static ContaBancariaBean vetor[] = new ContaBancariaBean[QTDE];

        public static boolean inserir(ContaBancariaBean conta, String numero, String agencia) {
            for (ContaBancariaBean item : vetor) {
                if ((item != null) && (item.getNumero().equals(numero))
                        && (item.getAgencia().equals(agencia))) {
                    JOptionPane.showMessageDialog(null, "Mesmo número ou Agência!");
                    return false;
                } else {
                    for (int i = 0; i < QTDE; i++) {
                        if (vetor[i] == null) {
                            vetor[i] = conta;
                            return true;
                        }
                    }
                }
            }
            return false;
        }


        public static String listar() {
            String saida = "";
            for (int i = 0; i < QTDE; i++) {
                if (vetor[i] != null)
                    saida += vetor[i].toString();
            }
            return saida;
        }

public static boolean atualizarSaldo(ContaBancariaBean numero,
            ContaBancariaBean agencia, int valor, char operacao) {
        for (int i = 0; i < QTDE; i++) {
            if (vetor[i] != null) {
                if (vetor[i].getNumero().equals(numero)
                    && vetor[i].getAgencia().equals(agencia)) {
                if (operacao == 'c')
                        vetor[i].setSaldo(vetor[i].getSaldo() + valor);
                    else
                        vetor[i].setSaldo(vetor[i].getSaldo() - valor);
                    return true;
                }
            }
        }
        return false;
    }


    }

BEAN Class

public class ContaBancariaBean {
    private String numero;
    private String agencia;
    private int saldo;
    private int limite;
    private int valor;
    private int operacao;


    public int getValor() {
        return valor;
    }
    public void setValor(int valor) {
        this.valor = valor;
    }
    public int getOperacao() {
        return operacao;
    }
    public void setOperacao(int operacao) {
        this.operacao = operacao;
    }
    public String getNumero() {
        return numero;
    }
    public void setNumero(String numero) {
        this.numero = numero;
    }
    public String getAgencia() {
        return agencia;
    }
    public void setAgencia(String agencia) {
        this.agencia = agencia;
    }
    public int getSaldo() {
        return saldo;
    }
    public void setSaldo(int saldo) {
        this.saldo = saldo;
    }
    public int getLimite() {
        return limite;
    }
    public void setLimite(int limite) {
        this.limite = limite;
    }
    public String toString(){
        return "Número: "+getNumero()+"\n"+
               "Agência: "+ getAgencia()+"\n"+
               "Limite: " +getLimite()+"\n"+
               "Saldo: "+getSaldo()+"\n";
    }

    public String getDados(){
        return getNumero()+","+
               getAgencia()+","+
               getSaldo()+","+
               getLimite()+"\n";
    }


}
    
asked by anonymous 11.05.2015 / 23:01

0 answers