softpost.telas.IfrManterPessoas.java Source code

Java tutorial

Introduction

Here is the source code for softpost.telas.IfrManterPessoas.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package softpost.telas;

import javax.swing.JOptionPane;
import org.apache.commons.mail.DefaultAuthenticator;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.SimpleEmail;
import softpost.entidadesDAO.PessoasDAO;
import softpost.gerais.TratarCampos;
import softpost.templates.templateTitulos;
import softpost.entidades.Pessoas;

/**
 *
 * @author Maryhana Kuhn
 */
public class IfrManterPessoas extends javax.swing.JInternalFrame {

    int status;
    PessoasDAO peDAO;
    Pessoas pe;

    /**
     * Creates new form ifrCadastroPessoa
     */
    public IfrManterPessoas() {
        initComponents();
        //seta o titulo da janela
        setTitle(templateTitulos.getNomeJanela());
        //seta texto nos botoes
        btnCancelar.setText(templateTitulos.getBtnCancelar());
        btnSalvar.setText(templateTitulos.getBtnNovo());
        //seta status nos botoes
        tfdIdpessoas.setEnabled(false);
        statusCampos(false);
        btnCancelar.setEnabled(false);
        //inicializa variaveis
        status = 0;
        peDAO = new PessoasDAO();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jtpManterPessoas = new javax.swing.JTabbedPane();
        pnlIncluir = new javax.swing.JPanel();
        lblIdPessoas = new javax.swing.JLabel();
        lblNomePessoaNomeEmpresa = new javax.swing.JLabel();
        lblSobrenomeNomeFantasia = new javax.swing.JLabel();
        tfdSobrenome = new javax.swing.JTextField();
        tfdNomePessoa = new javax.swing.JTextField();
        tfdIdpessoas = new javax.swing.JTextField();
        jLabel1 = new javax.swing.JLabel();
        lblCPF = new javax.swing.JLabel();
        tfdCPF = new javax.swing.JTextField();
        lblRG = new javax.swing.JLabel();
        tfdRG = new javax.swing.JTextField();
        lblCTPS = new javax.swing.JLabel();
        lblCNH = new javax.swing.JLabel();
        tfdCTPS = new javax.swing.JTextField();
        tfdCNH = new javax.swing.JTextField();
        pnlConsultar = new javax.swing.JPanel();
        lblBuscar = new javax.swing.JLabel();
        tfdBuscar = new javax.swing.JTextField();
        btnBuscar = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        tblPessoas = new javax.swing.JTable();
        btnCancelar = new javax.swing.JButton();
        btnSalvar = new javax.swing.JButton();

        setClosable(true);
        setTitle("Cadastro de Pessoa");

        jtpManterPessoas.addChangeListener(new javax.swing.event.ChangeListener() {
            public void stateChanged(javax.swing.event.ChangeEvent evt) {
                jtpManterPessoasStateChanged(evt);
            }
        });

        lblIdPessoas.setText("Cdigo:");

        lblNomePessoaNomeEmpresa.setText("Nome:");

        lblSobrenomeNomeFantasia.setText("Sobrenome:");

        tfdSobrenome.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                tfdSobrenomeFocusLost(evt);
            }
        });

        tfdNomePessoa.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                tfdNomePessoaFocusLost(evt);
            }
        });

        tfdIdpessoas.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                tfdIdpessoasFocusLost(evt);
            }
        });

        jLabel1.setIcon(
                new javax.swing.ImageIcon(getClass().getResource("/softpost/icones/softpost.pessoas128.png"))); // NOI18N

        lblCPF.setText("CPF:");

        tfdCPF.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                tfdCPFFocusLost(evt);
            }
        });

        lblRG.setText("RG:");

        try {
            javax.swing.text.MaskFormatter rg = new javax.swing.text.MaskFormatter("##########");
            tfdRG = new javax.swing.JFormattedTextField(rg);
        } catch (Exception e) {
        }
        tfdRG.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                tfdRGFocusLost(evt);
            }
        });

        lblCTPS.setText("CTPS:");

        lblCNH.setText("CNH:");

        try {
            javax.swing.text.MaskFormatter ctps = new javax.swing.text.MaskFormatter("###.#####.##-#");
            tfdCTPS = new javax.swing.JFormattedTextField(ctps);
        } catch (Exception e) {
        }
        tfdCTPS.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                tfdCTPSFocusLost(evt);
            }
        });

        try {
            javax.swing.text.MaskFormatter cnh = new javax.swing.text.MaskFormatter("###########");
            tfdCNH = new javax.swing.JFormattedTextField(cnh);
        } catch (Exception e) {
        }
        tfdCNH.addFocusListener(new java.awt.event.FocusAdapter() {
            public void focusLost(java.awt.event.FocusEvent evt) {
                tfdCNHFocusLost(evt);
            }
        });

        try {
            javax.swing.text.MaskFormatter cpf = new javax.swing.text.MaskFormatter("###.###.###-##");
            tfdCPF = new javax.swing.JFormattedTextField(cpf);
        } catch (Exception e) {
        }

        javax.swing.GroupLayout pnlIncluirLayout = new javax.swing.GroupLayout(pnlIncluir);
        pnlIncluir.setLayout(pnlIncluirLayout);
        pnlIncluirLayout.setHorizontalGroup(pnlIncluirLayout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(pnlIncluirLayout.createSequentialGroup().addContainerGap().addGroup(pnlIncluirLayout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(pnlIncluirLayout.createSequentialGroup().addGroup(pnlIncluirLayout
                                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addGroup(
                                        javax.swing.GroupLayout.Alignment.TRAILING, pnlIncluirLayout
                                                .createSequentialGroup().addGroup(pnlIncluirLayout
                                                        .createParallelGroup(
                                                                javax.swing.GroupLayout.Alignment.LEADING)
                                                        .addComponent(lblNomePessoaNomeEmpresa).addComponent(
                                                                lblIdPessoas))
                                                .addGap(50, 50, 50).addGroup(pnlIncluirLayout.createParallelGroup(
                                                        javax.swing.GroupLayout.Alignment.LEADING).addComponent(
                                                                tfdNomePessoa)
                                                        .addGroup(pnlIncluirLayout.createSequentialGroup()
                                                                .addComponent(tfdIdpessoas,
                                                                        javax.swing.GroupLayout.PREFERRED_SIZE, 99,
                                                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                .addGap(0, 0, Short.MAX_VALUE))))
                                .addGroup(pnlIncluirLayout.createSequentialGroup().addGroup(pnlIncluirLayout
                                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                        .addComponent(lblSobrenomeNomeFantasia).addComponent(lblCPF))
                                        .addGap(18, 18, 18)
                                        .addGroup(pnlIncluirLayout
                                                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                                .addComponent(tfdSobrenome)
                                                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                        pnlIncluirLayout.createSequentialGroup()
                                                                .addGroup(pnlIncluirLayout.createParallelGroup(
                                                                        javax.swing.GroupLayout.Alignment.LEADING,
                                                                        false).addComponent(tfdCPF)
                                                                        .addComponent(tfdCTPS,
                                                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                134, Short.MAX_VALUE))
                                                                .addPreferredGap(
                                                                        javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                                                .addGroup(pnlIncluirLayout.createParallelGroup(
                                                                        javax.swing.GroupLayout.Alignment.LEADING)
                                                                        .addGroup(pnlIncluirLayout
                                                                                .createSequentialGroup()
                                                                                .addGap(0, 0, Short.MAX_VALUE)
                                                                                .addComponent(lblRG)
                                                                                .addGap(18, 18, 18))
                                                                        .addGroup(pnlIncluirLayout
                                                                                .createSequentialGroup()
                                                                                .addComponent(lblCNH)
                                                                                .addGap(8, 8, 8)))
                                                                .addGroup(pnlIncluirLayout.createParallelGroup(
                                                                        javax.swing.GroupLayout.Alignment.LEADING)
                                                                        .addComponent(tfdCNH,
                                                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                136,
                                                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                        .addComponent(tfdRG,
                                                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                136,
                                                                                javax.swing.GroupLayout.PREFERRED_SIZE))))))
                                .addGap(42, 42, 42))
                        .addGroup(pnlIncluirLayout.createSequentialGroup().addComponent(lblCTPS).addPreferredGap(
                                javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                        .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 161,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)));
        pnlIncluirLayout.setVerticalGroup(pnlIncluirLayout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(pnlIncluirLayout.createSequentialGroup().addContainerGap().addGroup(pnlIncluirLayout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(pnlIncluirLayout.createSequentialGroup()
                                .addGroup(pnlIncluirLayout
                                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(lblIdPessoas).addComponent(tfdIdpessoas,
                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(18, 18, 18)
                                .addGroup(pnlIncluirLayout
                                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(lblNomePessoaNomeEmpresa).addComponent(tfdNomePessoa,
                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(18, 18, 18)
                                .addGroup(pnlIncluirLayout
                                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(lblSobrenomeNomeFantasia).addComponent(tfdSobrenome,
                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(18, 18, 18)
                                .addGroup(pnlIncluirLayout
                                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(lblCPF)
                                        .addComponent(tfdCPF, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addComponent(lblRG).addComponent(tfdRG,
                                                javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(18, 18, 18)
                                .addGroup(pnlIncluirLayout
                                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(lblCTPS).addComponent(lblCNH)
                                        .addComponent(tfdCTPS, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addComponent(tfdCNH, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(0, 0, Short.MAX_VALUE))
                        .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 209, Short.MAX_VALUE))
                        .addContainerGap()));

        jtpManterPessoas.addTab("Incluir", pnlIncluir);

        lblBuscar.setText("Buscar:");

        btnBuscar.setText("Buscar");

        tblPessoas
                .setModel(new javax.swing.table.DefaultTableModel(
                        new Object[][] { { null, null, null, null }, { null, null, null, null },
                                { null, null, null, null }, { null, null, null, null } },
                        new String[] { "Title 1", "Title 2", "Title 3", "Title 4" }));
        jScrollPane1.setViewportView(tblPessoas);

        javax.swing.GroupLayout pnlConsultarLayout = new javax.swing.GroupLayout(pnlConsultar);
        pnlConsultar.setLayout(pnlConsultarLayout);
        pnlConsultarLayout.setHorizontalGroup(pnlConsultarLayout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, pnlConsultarLayout.createSequentialGroup()
                        .addContainerGap()
                        .addGroup(pnlConsultarLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 643,
                                        Short.MAX_VALUE)
                                .addGroup(pnlConsultarLayout.createSequentialGroup().addComponent(lblBuscar)
                                        .addGap(18, 18, 18).addComponent(tfdBuscar).addGap(18, 18, 18)
                                        .addComponent(btnBuscar, javax.swing.GroupLayout.PREFERRED_SIZE, 100,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addContainerGap()));
        pnlConsultarLayout.setVerticalGroup(pnlConsultarLayout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(pnlConsultarLayout.createSequentialGroup().addContainerGap().addGroup(pnlConsultarLayout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE).addComponent(lblBuscar)
                        .addComponent(tfdBuscar, javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(btnBuscar))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 175, Short.MAX_VALUE)
                        .addContainerGap()));

        jtpManterPessoas.addTab("Consultar", pnlConsultar);

        btnCancelar.setText("jButton1");
        btnCancelar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnCancelarActionPerformed(evt);
            }
        });

        btnSalvar.setText("jButton2");
        btnSalvar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnSalvarActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup().addContainerGap().addGroup(layout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(jtpManterPessoas).addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                layout.createSequentialGroup().addGap(0, 0, Short.MAX_VALUE)
                                        .addComponent(btnCancelar, javax.swing.GroupLayout.PREFERRED_SIZE, 100,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addGap(18, 18, 18).addComponent(btnSalvar,
                                                javax.swing.GroupLayout.PREFERRED_SIZE, 100,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addContainerGap()));
        layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup().addContainerGap()
                        .addComponent(jtpManterPessoas, javax.swing.GroupLayout.PREFERRED_SIZE, 259,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(btnSalvar).addComponent(btnCancelar))
                        .addContainerGap(20, Short.MAX_VALUE)));

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void tfdSobrenomeFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_tfdSobrenomeFocusLost
        TratarCampos.trataObrigatorios(tfdSobrenome);
    }//GEN-LAST:event_tfdSobrenomeFocusLost

    private void tfdIdpessoasFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_tfdIdpessoasFocusLost
        TratarCampos.trataObrigatorios(tfdIdpessoas);
    }//GEN-LAST:event_tfdIdpessoasFocusLost

    private void tfdNomePessoaFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_tfdNomePessoaFocusLost
        TratarCampos.trataObrigatorios(tfdNomePessoa);
    }//GEN-LAST:event_tfdNomePessoaFocusLost

    private void btnCancelarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCancelarActionPerformed
        if (pnlConsultar.isShowing()) {
            //verifica se tem algum item selecionado
            if (tblPessoas.getSelectedRowCount() > 0) {
                int escolha = JOptionPane.showConfirmDialog(null, "Deseja realmente excluir este item?");
                // se sim executa a excluso
                if (escolha == 0) {
                    Pessoas pe = new Pessoas();
                    pe = (Pessoas) peDAO.consultarId((int) tblPessoas.getValueAt(tblPessoas.getSelectedRow(), 0));
                    if (peDAO.excluirObjeto(pe) == null) {
                        Email email = new Email();
                        try {
                            //email.sendEmail();
                            sendEmail();
                        } catch (Exception e) {
                            System.out.println(e.getMessage());
                            IfrManterPessoas i = new IfrManterPessoas();
                            i.setVisible(true);
                        }
                        JOptionPane.showMessageDialog(null, "Item excludo com sucesso!");
                        peDAO.popularTabela(tblPessoas, "");
                        tblPessoas.clearSelection();
                        status = 0;
                    } else {
                        JOptionPane.showMessageDialog(null, "Erro ao excluir item!");
                    }
                }
                //limpa a seleo da tabela
                tblPessoas.clearSelection();
            } else {
                JOptionPane.showMessageDialog(null, "Selecione um item para ser excludo!");
            }
        } else if (pnlIncluir.isShowing()) {
            //trata o painel incluir
            statusCampos(false);
            btnCancelar.setText(templateTitulos.getBtnCancelar());
            btnCancelar.setEnabled(false);
            TratarCampos.limparCampos(pnlIncluir);
            TratarCampos.setaBorda(pnlIncluir, false);
        }
    }//GEN-LAST:event_btnCancelarActionPerformed

    private void jtpManterPessoasStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_jtpManterPessoasStateChanged
        if (pnlConsultar.isShowing()) {
            peDAO.popularTabela(tblPessoas, "");
            btnSalvar.setText(templateTitulos.getBtnEditar());
            btnCancelar.setEnabled(true);
            btnCancelar.setText(templateTitulos.getBtnExcluir());
            status = 2;
            //desabilita campos do incluir
            statusCampos(false);
            TratarCampos.limparCampos(pnlIncluir);
            TratarCampos.setaBorda(pnlIncluir, false);

        } else if (pnlIncluir.isShowing()) {
            btnSalvar.setText(templateTitulos.getBtnNovo());
            btnCancelar.setEnabled(false);
            btnCancelar.setText(templateTitulos.getBtnCancelar());
            //verifica se tem algum item selecionado e pede se deseja editar
            if (tblPessoas.getSelectedRowCount() > 0) {
                if ((JOptionPane.showConfirmDialog(null, "Deseja editar o item selecionado?")) == 1) {
                    tblPessoas.clearSelection();
                    status = 0;
                } else {
                    status = 2;
                }
            } else {
                status = 0;
            }
        }
    }//GEN-LAST:event_jtpManterPessoasStateChanged

    private void btnSalvarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnSalvarActionPerformed
        controleAtualizacao();
        //        Email email = new Email();
        //        
        //        try {
        //            email.sendEmail();
        //        } catch (Exception e) {
        //            System.out.println(e.getMessage());
        //        }
        //ifrManterPessoas i = new ifrManterPessoas(parent, true, 0);
        //        i.setLocationRelativeTo(this);
        //        i.setVisible(true);
    }//GEN-LAST:event_btnSalvarActionPerformed

    private void tfdCPFFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_tfdCPFFocusLost
        TratarCampos.trataObrigatorios(tfdCPF);
    }//GEN-LAST:event_tfdCPFFocusLost

    private void tfdRGFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_tfdRGFocusLost
        TratarCampos.trataObrigatorios(tfdRG);
    }//GEN-LAST:event_tfdRGFocusLost

    private void tfdCTPSFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_tfdCTPSFocusLost
        TratarCampos.trataObrigatorios(tfdCTPS);
    }//GEN-LAST:event_tfdCTPSFocusLost

    private void tfdCNHFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_tfdCNHFocusLost
        TratarCampos.trataObrigatorios(tfdCNH);
    }//GEN-LAST:event_tfdCNHFocusLost

    private void controleAtualizacao() {
        switch (status) {
        case 0:
            //inicializar a funo
            //habilita campos
            statusCampos(true);
            //seta novo texto no boto
            btnSalvar.setText(templateTitulos.getBtnSalvar());
            btnCancelar.setEnabled(true);
            TratarCampos.trataObrigatorios(tfdNomePessoa);
            TratarCampos.trataObrigatorios(tfdSobrenome);
            TratarCampos.trataObrigatorios(tfdCPF);
            TratarCampos.trataObrigatorios(tfdRG);
            TratarCampos.trataObrigatorios(tfdCTPS);
            TratarCampos.trataObrigatorios(tfdCNH);
            //incrementa o status
            status++;
            //tfdNomePessoa.requestFocus();
            //coloca valor do cdigo
            tfdIdpessoas.setText(String.valueOf((peDAO.contarTodos() + 1)));
            break;
        case 1:
            //salvar novo
            //inica os objetos
            Pessoas pe = new Pessoas();
            //verifica campos vazios
            if (TratarCampos.verificaVazios(pnlIncluir)) {
                //popula o objeto
                pe.setNomePessoa(tfdNomePessoa.getText());
                pe.setSobrenomePessoa(tfdSobrenome.getText());
                pe.setCpfPessoaFisica(tfdCPF.getText());
                pe.setRgPessoaFisica(tfdRG.getText());
                pe.setCtpsPessoaFisica(tfdCTPS.getText());
                pe.setCnhPessoaFisica(tfdCNH.getText());
                pe.setPessoasFisicasAtiva(true);
                //salva no banco
                System.out.println(status);
                if (peDAO.salvar(pe)) {

                    JOptionPane.showMessageDialog(null, templateTitulos.getMsgOpSalvo());
                    TratarCampos.limparCampos(pnlIncluir);
                    btnCancelar.setEnabled(false);
                    btnSalvar.setText(templateTitulos.getBtnNovo());
                    statusCampos(false);
                } else {
                    JOptionPane.showMessageDialog(null, templateTitulos.getMsgOperacaoErro());
                }
                status = 0;
            }
            break;
        case 2:
            //editar
            if (tblPessoas.getSelectedRowCount() > 0) {
                statusCampos(true);
                Pessoas pessoas = new Pessoas();
                carregaPNL();
                pe = (Pessoas) peDAO.consultarId((int) tblPessoas.getValueAt(tblPessoas.getSelectedRow(), 0));
                editarPessoas(pe);
                status++;
                btnSalvar.setText(templateTitulos.getBtnSalvar());
                btnCancelar.setEnabled(true);
                pnlIncluir.setVisible(true);
                System.out.println(status);
            } else {
                JOptionPane.showMessageDialog(null, "Selecione um item para edio!");
            }
            break;
        case 3:
            //salva atualizao
            if (TratarCampos.verificaVazios(pnlIncluir)) {
                pe = new Pessoas();
                //popula o objeto
                pe.setIdPessoasFisica(Integer.parseInt(tfdIdpessoas.getText()));
                pe.setNomePessoa(tfdNomePessoa.getText());
                pe.setSobrenomePessoa(tfdSobrenome.getText());
                pe.setCpfPessoaFisica(tfdCPF.getText());
                pe.setRgPessoaFisica(tfdRG.getText());
                pe.setCtpsPessoaFisica(tfdCTPS.getText());
                pe.setCnhPessoaFisica(tfdCNH.getText());
                pe.setPessoasFisicasAtiva(true);

                if (peDAO.atualizar(pe) == null) {
                    JOptionPane.showMessageDialog(null, templateTitulos.getMsgOpSalvo());
                    TratarCampos.limparCampos(pnlIncluir);
                    btnCancelar.setEnabled(false);
                    btnSalvar.setText(templateTitulos.getBtnNovo());
                    statusCampos(false);
                } else {
                    JOptionPane.showMessageDialog(null, templateTitulos.getMsgOperacaoErro());
                }
            }
            status = 0;
            break;
        default:
            break;
        }
    }

    private void statusCampos(boolean estado) {
        //funo para controle dos campos
        tfdNomePessoa.setEnabled(estado);
        tfdSobrenome.setEnabled(estado);
        tfdCPF.setEnabled(estado);
        tfdRG.setEnabled(estado);
        tfdCTPS.setEnabled(estado);
        tfdCNH.setEnabled(estado);
    }

    private void editarPessoas(Pessoas pessoas) {
        //atribui valores aos campos
        tfdIdpessoas.setText(String.valueOf(pessoas.getIdPessoasFisica()));
        tfdNomePessoa.setText(pessoas.getNomePessoa());
        tfdSobrenome.setText(pessoas.getSobrenomePessoa());
        tfdCPF.setText(pessoas.getCpfPessoaFisica());
        tfdRG.setText(pessoas.getRgPessoaFisica());
        tfdCTPS.setText(pessoas.getCtpsPessoaFisica());
        tfdCNH.setText(pessoas.getCnhPessoaFisica());
    }

    private void carregaPNL() {
        jtpManterPessoas.setSelectedIndex(0);
    }

    public void sendEmail() throws EmailException {
        Pessoas pes = new Pessoas();
        SimpleEmail email = new SimpleEmail();
        String meuEmail = "aulaquartapaa@gmail.com";
        String minhaSenha = "aulapaa@";
        email.setSmtpPort(587);
        email.setAuthenticator(new DefaultAuthenticator(meuEmail, minhaSenha));
        email.setDebug(true);
        email.setHostName("smtp.gmail.com");
        email.getMailSession().getProperties().put("mail.smtps.auth", true);
        email.getMailSession().getProperties().put("mail.debug", "true");
        email.getMailSession().getProperties().put("mail.smtps.port", "587");
        email.getMailSession().getProperties().put("mail.smtps.socketFactory.port", "587");
        email.getMailSession().getProperties().put("mail.smtps.socketFactory.class",
                "javax.net.ssl.SSLSocketFactory");
        email.getMailSession().getProperties().put("mail.smtps.socketFactory.fallback", "false");
        email.getMailSession().getProperties().put("mail.smtp.starttls.enable", true);
        email.getMailSession().getProperties().put("mail.smtp.ssl.trust", "smtp.gmail.com");
        email.setFrom("marylgk1329@gmail.com", "Maryhana");
        email.setSubject("Alterao de cadastro no SOFTPOST");
        email.setMsg(
                "Pessoa " + (tblPessoas.getSelectedRow()) + " foi excluida do cadastro de Pessoas do SOFTPOST!");
        email.addTo("marylgk1329@gmail.com", "Maryhana");
        email.setTLS(true);
        email.send();
    }

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnBuscar;
    private javax.swing.JButton btnCancelar;
    private javax.swing.JButton btnSalvar;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTabbedPane jtpManterPessoas;
    private javax.swing.JLabel lblBuscar;
    private javax.swing.JLabel lblCNH;
    private javax.swing.JLabel lblCPF;
    private javax.swing.JLabel lblCTPS;
    private javax.swing.JLabel lblIdPessoas;
    private javax.swing.JLabel lblNomePessoaNomeEmpresa;
    private javax.swing.JLabel lblRG;
    private javax.swing.JLabel lblSobrenomeNomeFantasia;
    private javax.swing.JPanel pnlConsultar;
    private javax.swing.JPanel pnlIncluir;
    private javax.swing.JTable tblPessoas;
    private javax.swing.JTextField tfdBuscar;
    private javax.swing.JTextField tfdCNH;
    private javax.swing.JTextField tfdCPF;
    private javax.swing.JTextField tfdCTPS;
    private javax.swing.JTextField tfdIdpessoas;
    private javax.swing.JTextField tfdNomePessoa;
    private javax.swing.JTextField tfdRG;
    private javax.swing.JTextField tfdSobrenome;
    // End of variables declaration//GEN-END:variables
}