vista.cliente.DiagClientePersona.java Source code

Java tutorial

Introduction

Here is the source code for vista.cliente.DiagClientePersona.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 vista.cliente;

import entidades.Sucursal;
import entidades.articulo.ListaPrecio;
import entidades.cliente.Organismo;
import entidades.cliente.Persona;
import entidades.localidad.Departamento;
import entidades.localidad.Localidad;
import entidades.localidad.Provincia;
import entidades.persona.CorreoElectronico;
import entidades.persona.DocumentoIdentidad;
import entidades.persona.Domicilio;
import entidades.persona.Sexo;
import entidades.persona.Telefono;
import entidades.persona.TipoDocumento;
import entidades.persona.TipoTelefono;
import facade.ArticuloFacade;
import facade.ClienteFacade;
import facade.DepartamentoFacade;
import facade.ListaPrecioFacade;
import facade.LocalidadFacade;
import facade.ProvinciaFacade;
import facade.TipoDocumentoFacade;
import facade.TipoTelefonoFacade;
import includes.Comunes;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.swing.JOptionPane;
import org.apache.commons.validator.routines.BigIntegerValidator;
import org.apache.commons.validator.routines.LongValidator;

/**
 *
 * @author hugo
 */
public class DiagClientePersona extends javax.swing.JDialog {

    private String tipoOperacion;
    List<Telefono> telefonos = new ArrayList<>();
    List<CorreoElectronico> correosElectronicos = new ArrayList<>();
    private Persona persona;
    private String tipoEntidad;
    private Organismo organismo;
    private Sucursal sucursal;

    public DiagClientePersona(java.awt.Frame parent, boolean modal, String tipoEntidad, String tipoOperacion,
            Sucursal sucursal) {
        super(parent, modal);
        initComponents();
        this.sucursal = sucursal;
        this.tipoEntidad = tipoEntidad;
        this.tipoOperacion = tipoOperacion;
        inicializarComponentes();
    }

    public DiagClientePersona(java.awt.Frame parent, boolean modal, String tipoEntidad, String tipoOperacion,
            Persona persona, Sucursal sucursal) {
        super(parent, modal);
        initComponents();
        this.sucursal = sucursal;
        this.persona = persona;
        this.tipoEntidad = tipoEntidad;
        this.tipoOperacion = tipoOperacion;
        inicializarComponentes();

    }

    public DiagClientePersona(java.awt.Frame parent, boolean modal, String tipoEntidad, String tipoOperacion,
            Organismo organismo, Sucursal sucursal) {
        super(parent, modal);
        initComponents();
        this.sucursal = sucursal;
        this.organismo = organismo;
        this.tipoEntidad = tipoEntidad;
        this.tipoOperacion = tipoOperacion;
        inicializarComponentes();

    }

    /**
     * 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() {

        jPanel1 = new javax.swing.JPanel();
        lbTipoDNI = new javax.swing.JLabel();
        cboTipoDoc = new javax.swing.JComboBox();
        lbDocumento = new javax.swing.JLabel();
        tfDocumento = new javax.swing.JTextField();
        lbNombre = new javax.swing.JLabel();
        tfNombre = new javax.swing.JTextField();
        tfApellido = new javax.swing.JTextField();
        lbApellido = new javax.swing.JLabel();
        jPanel2 = new javax.swing.JPanel();
        jLabel5 = new javax.swing.JLabel();
        tfCalle = new javax.swing.JTextField();
        jLabel6 = new javax.swing.JLabel();
        tfNumero = new javax.swing.JTextField();
        jLabel7 = new javax.swing.JLabel();
        tfPiso = new javax.swing.JTextField();
        jLabel8 = new javax.swing.JLabel();
        tfDpto = new javax.swing.JTextField();
        jLabel9 = new javax.swing.JLabel();
        jLabel10 = new javax.swing.JLabel();
        jLabel11 = new javax.swing.JLabel();
        tfCodigoPostal = new javax.swing.JTextField();
        cboProvincias = new javax.swing.JComboBox();
        cboLocalidades = new javax.swing.JComboBox();
        jLabel16 = new javax.swing.JLabel();
        cboDepartamentos = new javax.swing.JComboBox();
        jLabel17 = new javax.swing.JLabel();
        tfEntreCalles = new javax.swing.JTextField();
        jLabel18 = new javax.swing.JLabel();
        tfReferencia = new javax.swing.JTextField();
        jLabel19 = new javax.swing.JLabel();
        tfBarrio = new javax.swing.JTextField();
        jLabel12 = new javax.swing.JLabel();
        tfCuil = new javax.swing.JTextField();
        lbSexo = new javax.swing.JLabel();
        cboSexo = new javax.swing.JComboBox();
        jPanel3 = new javax.swing.JPanel();
        cboTiposTelefonos = new javax.swing.JComboBox();
        tfNumeroTelefono = new javax.swing.JTextField();
        btnAgregarTelefono = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        jListTelefonos = new javax.swing.JList();
        btnEliminarTelefono = new javax.swing.JButton();
        jPanel5 = new javax.swing.JPanel();
        tfCorreoElectronico = new javax.swing.JTextField();
        btnAgregarCorreoElectronico = new javax.swing.JButton();
        jScrollPane3 = new javax.swing.JScrollPane();
        jListCorreosElectronicos = new javax.swing.JList();
        btnEliminarCorreoElectronico = new javax.swing.JButton();
        lbRazonSocial = new javax.swing.JLabel();
        tfRazonSocial = new javax.swing.JTextField();
        jLabel1 = new javax.swing.JLabel();
        cboListaPrecio = new javax.swing.JComboBox();
        jPanel4 = new javax.swing.JPanel();
        jxdFechaNacimiento = new org.jdesktop.swingx.JXDatePicker();
        chactivar = new javax.swing.JCheckBox();
        lbFechaNac = new javax.swing.JLabel();
        btnAceptar = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

        jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(org.openide.util.NbBundle
                .getMessage(DiagClientePersona.class, "DiagClientePersona.jPanel1.border.title"))); // NOI18N

        lbTipoDNI.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.lbTipoDNI.text")); // NOI18N

        cboTipoDoc.setModel(
                new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));

        lbDocumento.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.lbDocumento.text")); // NOI18N

        tfDocumento.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.tfDocumento.text")); // NOI18N
        tfDocumento.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyTyped(java.awt.event.KeyEvent evt) {
                tfDocumentoKeyTyped(evt);
            }
        });

        lbNombre.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.lbNombre.text")); // NOI18N

        tfNombre.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.tfNombre.text")); // NOI18N

        tfApellido.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.tfApellido.text")); // NOI18N

        lbApellido.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.lbApellido.text")); // NOI18N

        jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(org.openide.util.NbBundle
                .getMessage(DiagClientePersona.class, "DiagClientePersona.jPanel2.border.title"))); // NOI18N

        jLabel5.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel5.text")); // NOI18N

        tfCalle.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.tfCalle.text")); // NOI18N

        jLabel6.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel6.text")); // NOI18N

        tfNumero.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.tfNumero.text")); // NOI18N

        jLabel7.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel7.text")); // NOI18N

        tfPiso.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.tfPiso.text")); // NOI18N

        jLabel8.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel8.text")); // NOI18N

        tfDpto.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.tfDpto.text")); // NOI18N

        jLabel9.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel9.text")); // NOI18N

        jLabel10.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel10.text")); // NOI18N

        jLabel11.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel11.text")); // NOI18N

        tfCodigoPostal.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.tfCodigoPostal.text")); // NOI18N
        tfCodigoPostal.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tfCodigoPostalActionPerformed(evt);
            }
        });

        cboProvincias.addItemListener(new java.awt.event.ItemListener() {
            public void itemStateChanged(java.awt.event.ItemEvent evt) {
                cboProvinciasItemStateChanged(evt);
            }
        });

        jLabel16.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel16.text")); // NOI18N

        cboDepartamentos.addItemListener(new java.awt.event.ItemListener() {
            public void itemStateChanged(java.awt.event.ItemEvent evt) {
                cboDepartamentosItemStateChanged(evt);
            }
        });

        jLabel17.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel17.text")); // NOI18N

        tfEntreCalles.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.tfEntreCalles.text")); // NOI18N
        tfEntreCalles.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                tfEntreCallesActionPerformed(evt);
            }
        });

        jLabel18.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel18.text")); // NOI18N

        tfReferencia.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.tfReferencia.text")); // NOI18N

        jLabel19.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel19.text")); // NOI18N

        tfBarrio.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.tfBarrio.text")); // NOI18N

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(jPanel2Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel2Layout.createSequentialGroup().addContainerGap().addGroup(jPanel2Layout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING).addComponent(jLabel11)
                        .addComponent(jLabel6).addComponent(jLabel5).addComponent(jLabel17).addComponent(jLabel18)
                        .addComponent(jLabel19).addComponent(jLabel9).addComponent(jLabel16).addComponent(jLabel10))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(cboDepartamentos, 0, 265, Short.MAX_VALUE)
                                .addComponent(
                                        cboProvincias, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(tfCalle)
                                .addGroup(jPanel2Layout.createSequentialGroup()
                                        .addComponent(tfNumero, javax.swing.GroupLayout.PREFERRED_SIZE, 53,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addGap(18, 18, 18).addComponent(jLabel7)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(tfPiso, javax.swing.GroupLayout.PREFERRED_SIZE, 38,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addGap(18, 18, 18).addComponent(jLabel8)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(tfDpto, javax.swing.GroupLayout.PREFERRED_SIZE, 34,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addComponent(tfEntreCalles).addComponent(tfReferencia).addComponent(tfBarrio)
                                .addComponent(cboLocalidades, javax.swing.GroupLayout.Alignment.TRAILING, 0,
                                        javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(tfCodigoPostal, javax.swing.GroupLayout.PREFERRED_SIZE, 65,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addContainerGap()));
        jPanel2Layout.setVerticalGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel2Layout.createSequentialGroup()
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel5).addComponent(tfCalle, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(
                                javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel6)
                                .addComponent(tfNumero, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(jLabel7)
                                .addComponent(tfPiso, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(jLabel8).addComponent(tfDpto, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel17).addComponent(tfEntreCalles,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel18).addComponent(tfReferencia,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel19).addComponent(tfBarrio,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel9)
                                .addComponent(cboProvincias, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel16).addComponent(cboDepartamentos,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel10).addComponent(cboLocalidades,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jLabel11).addComponent(tfCodigoPostal,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addContainerGap(13, Short.MAX_VALUE)));

        jLabel12.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel12.text")); // NOI18N

        tfCuil.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.tfCuil.text")); // NOI18N

        lbSexo.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.lbSexo.text")); // NOI18N

        cboSexo.setModel(
                new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));

        jPanel3.setBorder(javax.swing.BorderFactory.createTitledBorder(org.openide.util.NbBundle
                .getMessage(DiagClientePersona.class, "DiagClientePersona.jPanel3.border.title"))); // NOI18N

        btnAgregarTelefono.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/add.png"))); // NOI18N
        btnAgregarTelefono.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.btnAgregarTelefono.text")); // NOI18N
        btnAgregarTelefono.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAgregarTelefonoActionPerformed(evt);
            }
        });

        jScrollPane1.setViewportView(jListTelefonos);

        btnEliminarTelefono.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/delete.png"))); // NOI18N
        btnEliminarTelefono.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.btnEliminarTelefono.text")); // NOI18N
        btnEliminarTelefono.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnEliminarTelefonoActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
        jPanel3.setLayout(jPanel3Layout);
        jPanel3Layout.setHorizontalGroup(jPanel3Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel3Layout.createSequentialGroup().addContainerGap()
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                .addGroup(jPanel3Layout.createSequentialGroup()
                                        .addComponent(cboTiposTelefonos, javax.swing.GroupLayout.PREFERRED_SIZE, 87,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(tfNumeroTelefono, javax.swing.GroupLayout.PREFERRED_SIZE, 96,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 191,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(18, 18, 18)
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(btnEliminarTelefono, javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(btnAgregarTelefono, javax.swing.GroupLayout.DEFAULT_SIZE, 123,
                                        Short.MAX_VALUE))
                        .addContainerGap()));
        jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel3Layout.createSequentialGroup().addContainerGap().addGroup(jPanel3Layout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addComponent(btnAgregarTelefono, javax.swing.GroupLayout.Alignment.TRAILING,
                                javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(cboTiposTelefonos, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(tfNumeroTelefono, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 66,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(btnEliminarTelefono))
                        .addContainerGap(13, Short.MAX_VALUE)));

        jPanel5.setBorder(javax.swing.BorderFactory.createTitledBorder(org.openide.util.NbBundle
                .getMessage(DiagClientePersona.class, "DiagClientePersona.jPanel5.border.title"))); // NOI18N

        btnAgregarCorreoElectronico.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/add.png"))); // NOI18N
        btnAgregarCorreoElectronico.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.btnAgregarCorreoElectronico.text")); // NOI18N
        btnAgregarCorreoElectronico.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAgregarCorreoElectronicoActionPerformed(evt);
            }
        });

        jScrollPane3.setViewportView(jListCorreosElectronicos);

        btnEliminarCorreoElectronico
                .setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/delete.png"))); // NOI18N
        btnEliminarCorreoElectronico.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.btnEliminarCorreoElectronico.text")); // NOI18N
        btnEliminarCorreoElectronico.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnEliminarCorreoElectronicoActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5);
        jPanel5.setLayout(jPanel5Layout);
        jPanel5Layout.setHorizontalGroup(jPanel5Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap()
                        .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 0,
                                        Short.MAX_VALUE)
                                .addComponent(tfCorreoElectronico))
                        .addGap(18, 18, 18)
                        .addGroup(jPanel5Layout
                                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                .addComponent(btnAgregarCorreoElectronico, javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(btnEliminarCorreoElectronico, javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                        .addContainerGap()));
        jPanel5Layout.setVerticalGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel5Layout.createSequentialGroup()
                        .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(jPanel5Layout.createSequentialGroup()
                                        .addComponent(tfCorreoElectronico, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 66,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(jPanel5Layout.createSequentialGroup()
                                        .addComponent(btnAgregarCorreoElectronico)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(btnEliminarCorreoElectronico)))
                        .addContainerGap(20, Short.MAX_VALUE)));

        lbRazonSocial.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.lbRazonSocial.text")); // NOI18N

        tfRazonSocial.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.tfRazonSocial.text")); // NOI18N

        jLabel1.setText(
                org.openide.util.NbBundle.getMessage(DiagClientePersona.class, "DiagClientePersona.jLabel1.text")); // NOI18N

        cboListaPrecio.setModel(
                new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));

        jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(org.openide.util.NbBundle
                .getMessage(DiagClientePersona.class, "DiagClientePersona.jPanel4.border.title"))); // NOI18N

        chactivar.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.chactivar.text")); // NOI18N
        chactivar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                chactivarActionPerformed(evt);
            }
        });

        lbFechaNac.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.lbFechaNac.text")); // NOI18N

        javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
        jPanel4.setLayout(jPanel4Layout);
        jPanel4Layout.setHorizontalGroup(jPanel4Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel4Layout.createSequentialGroup().addContainerGap()
                        .addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jxdFechaNacimiento, javax.swing.GroupLayout.PREFERRED_SIZE, 181,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(chactivar).addComponent(lbFechaNac))
                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));
        jPanel4Layout.setVerticalGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup()
                        .addComponent(chactivar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(lbFechaNac)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 7, Short.MAX_VALUE)
                        .addComponent(jxdFechaNacimiento, javax.swing.GroupLayout.PREFERRED_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(21, 21, 21)));

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(jPanel1Layout
                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel1Layout.createSequentialGroup().addContainerGap().addGroup(jPanel1Layout
                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(jPanel1Layout.createSequentialGroup().addGap(33, 33, 33).addComponent(lbApellido)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(tfApellido, javax.swing.GroupLayout.PREFERRED_SIZE, 196,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addComponent(lbNombre)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(tfNombre))
                        .addGroup(jPanel1Layout.createSequentialGroup().addComponent(lbRazonSocial)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(tfRazonSocial))
                        .addGroup(jPanel1Layout.createSequentialGroup().addGroup(jPanel1Layout
                                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGroup(jPanel1Layout.createSequentialGroup().addGap(12, 12, 12)
                                        .addComponent(jLabel1)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(cboListaPrecio, javax.swing.GroupLayout.PREFERRED_SIZE, 276,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(jPanel1Layout.createSequentialGroup().addGap(56, 56, 56)
                                        .addGroup(jPanel1Layout
                                                .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                                .addComponent(lbSexo).addComponent(jLabel12))
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addGroup(jPanel1Layout
                                                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                                .addGroup(jPanel1Layout.createSequentialGroup()
                                                        .addComponent(tfCuil,
                                                                javax.swing.GroupLayout.PREFERRED_SIZE, 163,
                                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                                        .addPreferredGap(
                                                                javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                Short.MAX_VALUE)
                                                        .addComponent(lbTipoDNI))
                                                .addGroup(jPanel1Layout.createSequentialGroup()
                                                        .addComponent(cboSexo,
                                                                javax.swing.GroupLayout.PREFERRED_SIZE, 149,
                                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                                        .addGap(0, 0, Short.MAX_VALUE)))))
                                .addGap(18, 18, 18)
                                .addGroup(jPanel1Layout
                                        .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                        .addGroup(jPanel1Layout.createSequentialGroup()
                                                .addGap(0, 0, Short.MAX_VALUE)
                                                .addComponent(cboTipoDoc, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                        111, javax.swing.GroupLayout.PREFERRED_SIZE)
                                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                .addComponent(lbDocumento)
                                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                                .addComponent(tfDocumento, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                        156, javax.swing.GroupLayout.PREFERRED_SIZE))
                                        .addGroup(jPanel1Layout.createSequentialGroup().addGroup(jPanel1Layout
                                                .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
                                                        false)
                                                .addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                        javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                                .addComponent(jPanel5, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                        javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                                .addComponent(jPanel4, javax.swing.GroupLayout.DEFAULT_SIZE,
                                                        javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                                                .addContainerGap(46, Short.MAX_VALUE)))))));
        jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(jPanel1Layout.createSequentialGroup().addGap(7, 7, 7)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(lbRazonSocial).addComponent(tfRazonSocial,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(lbApellido)
                                .addComponent(tfApellido, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(lbNombre).addComponent(tfNombre,
                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(lbTipoDNI)
                                .addComponent(cboTipoDoc, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(tfDocumento, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(lbDocumento)
                                .addComponent(tfCuil, javax.swing.GroupLayout.PREFERRED_SIZE,
                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(jLabel12))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(jPanel1Layout
                                .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                .addGroup(jPanel1Layout.createSequentialGroup()
                                        .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                        .addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                        .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGroup(jPanel1Layout.createSequentialGroup().addGroup(jPanel1Layout
                                        .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                        .addComponent(cboSexo, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addComponent(lbSexo))
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                                javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                        .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE,
                                                javax.swing.GroupLayout.DEFAULT_SIZE,
                                                javax.swing.GroupLayout.PREFERRED_SIZE)
                                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                        .addGroup(jPanel1Layout
                                                .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                                .addComponent(jLabel1).addComponent(cboListaPrecio,
                                                        javax.swing.GroupLayout.PREFERRED_SIZE,
                                                        javax.swing.GroupLayout.DEFAULT_SIZE,
                                                        javax.swing.GroupLayout.PREFERRED_SIZE))))
                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)));

        btnAceptar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/save.png"))); // NOI18N
        btnAceptar.setText(org.openide.util.NbBundle.getMessage(DiagClientePersona.class,
                "DiagClientePersona.btnAceptar.text")); // NOI18N
        btnAceptar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAceptarActionPerformed(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()
                        .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addContainerGap())
                .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                        layout.createSequentialGroup()
                                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                .addComponent(btnAceptar, javax.swing.GroupLayout.PREFERRED_SIZE, 125,
                                        javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(380, 380, 380)));
        layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                .addGroup(layout.createSequentialGroup().addContainerGap()
                        .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
                                javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(btnAceptar, javax.swing.GroupLayout.PREFERRED_SIZE, 34,
                                javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addContainerGap()));

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

    private void cboProvinciasItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_cboProvinciasItemStateChanged
        cargarDepartamentos();
    }//GEN-LAST:event_cboProvinciasItemStateChanged

    private void cboDepartamentosItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_cboDepartamentosItemStateChanged
        cargarLocalidades();
    }//GEN-LAST:event_cboDepartamentosItemStateChanged

    private void btnAgregarTelefonoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAgregarTelefonoActionPerformed
        agregarTelefono();
    }//GEN-LAST:event_btnAgregarTelefonoActionPerformed

    private void btnEliminarTelefonoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnEliminarTelefonoActionPerformed
        eliminarTelefono();
    }//GEN-LAST:event_btnEliminarTelefonoActionPerformed

    private void btnAgregarCorreoElectronicoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAgregarCorreoElectronicoActionPerformed
        agregarCorreoElectronico();
    }//GEN-LAST:event_btnAgregarCorreoElectronicoActionPerformed

    private void btnEliminarCorreoElectronicoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnEliminarCorreoElectronicoActionPerformed
        eliminarCorreoElectronico();
    }//GEN-LAST:event_btnEliminarCorreoElectronicoActionPerformed

    private void btnAceptarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAceptarActionPerformed
        aceptar();
    }//GEN-LAST:event_btnAceptarActionPerformed

    private void tfEntreCallesActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_tfEntreCallesActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_tfEntreCallesActionPerformed

    private void tfCodigoPostalActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_tfCodigoPostalActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_tfCodigoPostalActionPerformed

    private void chactivarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_chactivarActionPerformed
        if (chactivar.isSelected()) {
            jxdFechaNacimiento.setEnabled(true);
        } else {
            jxdFechaNacimiento.setEnabled(false);
            try {
                persona.setFechaNacimiento(null);
            } catch (Exception e) {
            }
        }
    }//GEN-LAST:event_chactivarActionPerformed

    private void tfDocumentoKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_tfDocumentoKeyTyped
        Comunes.numeros(tfDocumento, evt);
    }//GEN-LAST:event_tfDocumentoKeyTyped

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnAceptar;
    private javax.swing.JButton btnAgregarCorreoElectronico;
    private javax.swing.JButton btnAgregarTelefono;
    private javax.swing.JButton btnEliminarCorreoElectronico;
    private javax.swing.JButton btnEliminarTelefono;
    private javax.swing.JComboBox cboDepartamentos;
    private javax.swing.JComboBox cboListaPrecio;
    private javax.swing.JComboBox cboLocalidades;
    private javax.swing.JComboBox cboProvincias;
    private javax.swing.JComboBox cboSexo;
    private javax.swing.JComboBox cboTipoDoc;
    private javax.swing.JComboBox cboTiposTelefonos;
    private javax.swing.JCheckBox chactivar;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel11;
    private javax.swing.JLabel jLabel12;
    private javax.swing.JLabel jLabel16;
    private javax.swing.JLabel jLabel17;
    private javax.swing.JLabel jLabel18;
    private javax.swing.JLabel jLabel19;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;
    private javax.swing.JList jListCorreosElectronicos;
    private javax.swing.JList jListTelefonos;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JPanel jPanel3;
    private javax.swing.JPanel jPanel4;
    private javax.swing.JPanel jPanel5;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane3;
    private org.jdesktop.swingx.JXDatePicker jxdFechaNacimiento;
    private javax.swing.JLabel lbApellido;
    private javax.swing.JLabel lbDocumento;
    private javax.swing.JLabel lbFechaNac;
    private javax.swing.JLabel lbNombre;
    private javax.swing.JLabel lbRazonSocial;
    private javax.swing.JLabel lbSexo;
    private javax.swing.JLabel lbTipoDNI;
    private javax.swing.JTextField tfApellido;
    private javax.swing.JTextField tfBarrio;
    private javax.swing.JTextField tfCalle;
    private javax.swing.JTextField tfCodigoPostal;
    private javax.swing.JTextField tfCorreoElectronico;
    private javax.swing.JTextField tfCuil;
    private javax.swing.JTextField tfDocumento;
    private javax.swing.JTextField tfDpto;
    private javax.swing.JTextField tfEntreCalles;
    private javax.swing.JTextField tfNombre;
    private javax.swing.JTextField tfNumero;
    private javax.swing.JTextField tfNumeroTelefono;
    private javax.swing.JTextField tfPiso;
    private javax.swing.JTextField tfRazonSocial;
    private javax.swing.JTextField tfReferencia;

    // End of variables declaration//GEN-END:variables
    private void cargarDepartamentos() {
        try {
            Comunes.cargarJComboConBlanco(cboDepartamentos, DepartamentoFacade.getInstance()
                    .listarTodosDepartamentoOrdenados((Provincia) cboProvincias.getSelectedItem()));
            cargarLocalidades();
        } catch (java.lang.ClassCastException ex) {
        }
    }

    private void cargarLocalidades() {
        try {
            Comunes.cargarJComboConBlanco(cboLocalidades, LocalidadFacade.getInstance()
                    .listarTodosLocalidadOrdenados((Departamento) cboDepartamentos.getSelectedItem()));
        } catch (java.lang.ClassCastException ex) {
        }

    }

    private void cargarProvincias() {
        try {
            Comunes.cargarJComboConBlanco(cboProvincias,
                    ProvinciaFacade.getInstance().listarTodosProvinciaOrdenados());
            cargarDepartamentos();
        } catch (java.lang.ClassCastException ex) {
        }
    }

    private void inicializarComponentes() {
        cargarListaPrecio();
        cargarTiposDocumento();
        cargarProvincias();
        cargarSexos();
        cargarTiposTelefono();
        configurarSegunEntidad();
        Comunes.formatearJXdatePicker(jxdFechaNacimiento);
        jxdFechaNacimiento.setEnabled(false);
        if (tipoOperacion.equals("ModificacinPersona")) {
            cargarPersona();
        }
        if (tipoOperacion.equals("ModificacinOrganismo")) {
            cargarOrganismo();
        }

    }

    private void cargarTiposDocumento() {
        Comunes.cargarJComboConBlanco(cboTipoDoc, TipoDocumentoFacade.getInstance().getTodos());
    }

    private void agregarTelefono() {
        if (cboTiposTelefonos.getSelectedIndex() > 0) {
            if (BigIntegerValidator.getInstance().isValid(tfNumeroTelefono.getText())) {
                Telefono telefono = new Telefono();
                telefono.setNumero(tfNumeroTelefono.getText());
                telefono.setTipoTelefono((TipoTelefono) cboTiposTelefonos.getSelectedItem());
                telefonos.add(telefono);
                Comunes.cargarJList(jListTelefonos, telefonos);
                cboTiposTelefonos.setSelectedIndex(0);
                tfNumeroTelefono.setText("");
                tfNumeroTelefono.requestFocus();
            } else {
                JOptionPane.showMessageDialog(null, "Nmero de telfono incorrecto", "Error",
                        JOptionPane.ERROR_MESSAGE);
                tfNumeroTelefono.requestFocus();
            }
        } else {
            JOptionPane.showMessageDialog(null, "Debe escoger un tipo de telfono", "Error",
                    JOptionPane.ERROR_MESSAGE);
            cboTiposTelefonos.requestFocus();
        }
    }

    private void agregarCorreoElectronico() {
        if (Comunes.validarEmail(tfCorreoElectronico)) {
            CorreoElectronico correoElectronico = new CorreoElectronico();
            correoElectronico.setDireccion(tfCorreoElectronico.getText());
            correosElectronicos.add(correoElectronico);
            Comunes.cargarJList(jListCorreosElectronicos, correosElectronicos);
            tfCorreoElectronico.setText("");
            tfCorreoElectronico.requestFocus();
        } else {
            JOptionPane.showMessageDialog(null, "Correo electrnico incorrecto", "Error",
                    JOptionPane.ERROR_MESSAGE);
            tfCorreoElectronico.requestFocus();
        }

    }

    private void eliminarTelefono() {
        if (jListTelefonos.getSelectedIndex() != -1) {
            telefonos.remove((Telefono) jListTelefonos.getSelectedValue());
            Comunes.cargarJList(jListTelefonos, telefonos);
        }
    }

    private void eliminarCorreoElectronico() {
        if (jListCorreosElectronicos.getSelectedIndex() != -1) {
            correosElectronicos.remove((CorreoElectronico) jListCorreosElectronicos.getSelectedValue());
            Comunes.cargarJList(jListCorreosElectronicos, correosElectronicos);
        }
    }

    private void configurarSegunEntidad() {
        if (tipoEntidad.equals("Persona")) {
            this.setTitle("Datos personales");
            lbRazonSocial.setVisible(false);
            tfRazonSocial.setVisible(false);
        }
        if (tipoEntidad.equals("Organismo")) {
            this.setTitle("Datos del Organismo/Empresa");
            lbApellido.setVisible(false);
            tfApellido.setVisible(false);
            lbNombre.setVisible(false);
            tfNombre.setVisible(false);
            lbTipoDNI.setVisible(false);
            cboTipoDoc.setVisible(false);
            lbDocumento.setVisible(false);
            tfDocumento.setVisible(false);
            lbSexo.setVisible(false);
            cboSexo.setVisible(false);
            lbFechaNac.setVisible(false);
            jxdFechaNacimiento.setVisible(false);
        }
    }

    private void cargarSexos() {
        cboSexo.setModel(new javax.swing.DefaultComboBoxModel(Sexo.values()));
    }

    private void cargarTiposTelefono() {
        Comunes.cargarJComboConBlanco(cboTiposTelefonos, TipoTelefonoFacade.getInstance().getTodos());
    }

    private void aceptar() {
        if (tipoOperacion.equals("AltaPersona")) {
            if (validarPersona2()) {
                persona = new Persona();
                cargarEntidadPersona();
                ClienteFacade.getInstance().altaCentral(persona);
                JOptionPane.showMessageDialog(null, "Persona agregada!");
                this.dispose();
            }
        }
        if (tipoOperacion.equals("AltaOrganismo")) {
            if (validarOrganismo()) {
                Organismo organismo = new Organismo();
                organismo.setRazonSocial(tfRazonSocial.getText().toUpperCase());
                organismo.setCUIT(tfCuil.getText());
                organismo.setCorreosElectronicos(correosElectronicos);
                organismo.setTelefonos(telefonos);
                Domicilio domicilio = new Domicilio();
                domicilio.setCalle(tfCalle.getText());
                domicilio.setNumero(tfNumero.getText());
                domicilio.setPiso(tfPiso.getText());
                domicilio.setDpto(tfDpto.getText());
                domicilio.setEntreCalles(tfEntreCalles.getText());
                domicilio.setReferencia(tfReferencia.getText());
                domicilio.setBarrio(tfBarrio.getText());
                domicilio.setLocalidad((Localidad) cboLocalidades.getSelectedItem());
                domicilio.setCodigoPostal(tfCodigoPostal.getText());
                organismo.setDomicilio(domicilio);
                try {
                    organismo.setListaPrecio((ListaPrecio) cboListaPrecio.getSelectedItem());
                } catch (Exception e) {

                }
                organismo.setFechaAlta(Comunes.obtenerFechaActualDesdeDB());
                ClienteFacade.getInstance().altaCentral(organismo);
                JOptionPane.showMessageDialog(null, "Organismo agregado!");
                this.dispose();
            }
        }
        if (tipoOperacion.equals("ModificacinPersona")) {
            if (validarPersona2()) {
                cargarEntidadPersonaModificacion();
                ClienteFacade.getInstance().modificarCentral(persona);
                JOptionPane.showMessageDialog(null, "Persona modificada!");
                this.dispose();

            }

        }
        if (tipoOperacion.equals("ModificacinOrganismo")) {
            if (validarOrganismo()) {
                cargarEntidadOrganismo();
                ClienteFacade.getInstance().modificarCentral(organismo);
                JOptionPane.showMessageDialog(null, "Organismo modificado!");
                this.dispose();

            }

        }
    }

    private boolean validarPersona() {
        boolean flag = false;
        if (!tfNombre.getText().isEmpty() && !tfApellido.getText().isEmpty()) {
            if (!tfCuil.getText().equals("") && Comunes.validarTextFieldCuit(tfCuil)) {

                if (cboTipoDoc.getSelectedIndex() > 0 && LongValidator.getInstance().isValid(tfDocumento.getText())
                        && !tfDocumento.getText().contains(".")) {
                    flag = true;
                } else if (!tfDocumento.getText().equals("")) {
                    JOptionPane.showMessageDialog(null, "Nmero de documento incorrecto", "Error",
                            JOptionPane.ERROR_MESSAGE);
                } else {
                    flag = true;
                }

            } else if (tfCuil.getText().equals("")) {
                flag = true;
            } else {
                JOptionPane.showMessageDialog(null, "Debe ingresar correctamente el CUIL", "Error",
                        JOptionPane.ERROR_MESSAGE);

            }
        } else {
            JOptionPane.showMessageDialog(null, "El cliente debe tener Nombre y Apellido", "Error",
                    JOptionPane.ERROR_MESSAGE);
        }
        if (tfDocumento.getText().isEmpty()) {
            flag = false;
            JOptionPane.showMessageDialog(null, "Debe ingresar nro de documento", "Error",
                    JOptionPane.ERROR_MESSAGE);
        }
        return flag;
    }

    private boolean validarPersona2() {
        boolean flag = false;
        if (tfApellido.getText().isEmpty()) {
            JOptionPane.showMessageDialog(null, "Debe ingresar el apellido");
            flag = false;
        } else if (tfNombre.getText().isEmpty()) {
            JOptionPane.showMessageDialog(null, "Debe ingresar el nombre");
            flag = false;
        } else if (tfDocumento.getText().isEmpty()) {
            JOptionPane.showMessageDialog(null, "Debe ingresar numero de documento");
            flag = false;
        } else if (cboTipoDoc.getSelectedIndex() <= 0) {
            JOptionPane.showMessageDialog(null, "Debe seleccionar el tipo de documento");
            flag = false;
        } else if (ClienteFacade.getInstance().buscarDniPersonaCentral(tfDocumento.getText().trim())
                && tipoOperacion.equals("AltaPersona")) {
            JOptionPane.showMessageDialog(null, "Numero dni Existente");
            flag = false;
        } else {
            flag = true;
        }
        return flag;
    }

    private boolean validarOrganismo() {
        /*   boolean flag = false;
         if (!tfRazonSocial.getText().isEmpty()) {
         if (!tfCuil.getText().isEmpty() || Comunes.validarTextFieldCuit(tfCuil)) {
         flag = true;
         }
            
         else {
         JOptionPane.showMessageDialog(null, "Debe ingresar correctamente el CUIL", "Error", JOptionPane.ERROR_MESSAGE);
         }
         } else {
         JOptionPane.showMessageDialog(null, "El Organismo debe tener razon social", "Error", JOptionPane.ERROR_MESSAGE);
         }
         return flag;*/
        boolean flag = false;
        if (tfRazonSocial.getText().isEmpty()) {
            JOptionPane.showMessageDialog(null, "Debe ingresar Razon Social");
            flag = false;
        } else if (tfCuil.getText().isEmpty()) {
            JOptionPane.showMessageDialog(null, "Debe ingresar el CUIT");
            flag = false;
        } else if (!Comunes.validarTextFieldCuit(tfCuil)) {
            JOptionPane.showMessageDialog(null, "CUIT invalido");
            flag = false;
        } else if (ClienteFacade.getInstance().buscarCuitEmpresaCentral(tfCuil.getText().trim())
                && tipoOperacion.equals("AltaOrganismo")) {
            JOptionPane.showMessageDialog(null, "CUIT Existente");
            flag = false;
        } else {
            flag = true;
        }
        return flag;
    }

    private void cargarPersona() {
        tfApellido.setText(persona.getApellido());
        tfNombre.setText(persona.getNombre());
        tfCuil.setText(persona.getCuil());
        try {
            cboTipoDoc.setSelectedItem(persona.getDocumentoIdentidad().getTipoDocumento());
        } catch (Exception e) {

        }
        try {
            cboListaPrecio.setSelectedItem(persona.getListaPrecio());
        } catch (Exception e) {

        }
        try {
            tfDocumento.setText(persona.getDocumentoIdentidad().getNumero());
        } catch (Exception e) {

        }
        try {
            cboSexo.setSelectedItem(persona.getSexo());
        } catch (Exception e) {

        }
        if (persona.getFechaNacimiento() != null) {
            jxdFechaNacimiento.setEnabled(true);
            jxdFechaNacimiento.setDate(persona.getFechaNacimiento());
        }

        try {
            telefonos = persona.getTelefonos();
            Comunes.cargarJList(jListTelefonos, telefonos);
        } catch (Exception e) {

        }
        try {
            correosElectronicos = persona.getCorreosElectronicos();
            Comunes.cargarJList(jListCorreosElectronicos, correosElectronicos);
        } catch (Exception e) {

        }
        try {
            tfCalle.setText(persona.getDomicilio().getCalle());
        } catch (Exception e) {

        }
        try {
            tfNumero.setText(persona.getDomicilio().getNumero());
        } catch (Exception e) {

        }
        try {
            tfPiso.setText(persona.getDomicilio().getPiso());
        } catch (Exception e) {

        }
        try {
            tfDpto.setText(persona.getDomicilio().getDpto());
        } catch (Exception e) {

        }
        try {
            tfEntreCalles.setText(persona.getDomicilio().getEntreCalles());
        } catch (Exception e) {

        }
        try {
            tfReferencia.setText(persona.getDomicilio().getReferencia());
        } catch (Exception e) {

        }
        try {
            tfBarrio.setText(persona.getDomicilio().getBarrio());
        } catch (Exception e) {

        }
        try {
            cboProvincias.setSelectedItem(persona.getDomicilio().getLocalidad().getDepartamento().getProvincia());
            cargarDepartamentos();
        } catch (java.lang.NullPointerException ex) {
        }
        try {
            cboDepartamentos.setSelectedItem(persona.getDomicilio().getLocalidad().getDepartamento());
            cargarLocalidades();
        } catch (java.lang.NullPointerException ex) {
        }
        try {
            if (persona.getDomicilio().getLocalidad() != null) {
                cboLocalidades.setSelectedItem(persona.getDomicilio().getLocalidad());
            }
        } catch (java.lang.NullPointerException ex) {
        }
        try {
            tfCodigoPostal.setText(persona.getDomicilio().getCodigoPostal());
        } catch (java.lang.NullPointerException ex) {
        }
    }

    private void cargarEntidadPersona() {
        persona.setApellido(tfApellido.getText().toUpperCase());
        persona.setNombre(tfNombre.getText().toUpperCase());
        persona.setCorreosElectronicos(correosElectronicos);
        persona.setCuil(tfCuil.getText());
        DocumentoIdentidad documentoIdentidad = new DocumentoIdentidad();
        try {
            documentoIdentidad.setTipoDocumento((TipoDocumento) cboTipoDoc.getSelectedItem());
        } catch (Exception e) {

        }
        documentoIdentidad.setNumero(tfDocumento.getText());
        persona.setDocumentoIdentidad(documentoIdentidad);
        if (jxdFechaNacimiento.isEnabled()) {
            persona.setFechaNacimiento(jxdFechaNacimiento.getDate());
        }
        persona.setSexo((Sexo) cboSexo.getSelectedItem());
        persona.setTelefonos(telefonos);
        Domicilio domicilio = new Domicilio();
        domicilio.setCalle(tfCalle.getText());
        domicilio.setNumero(tfNumero.getText());
        domicilio.setPiso(tfPiso.getText());
        domicilio.setDpto(tfDpto.getText());
        domicilio.setEntreCalles(tfEntreCalles.getText());
        domicilio.setReferencia(tfReferencia.getText());
        domicilio.setBarrio(tfBarrio.getText());
        domicilio.setLocalidad((Localidad) cboLocalidades.getSelectedItem());
        domicilio.setCodigoPostal(tfCodigoPostal.getText());
        persona.setDomicilio(domicilio);
        try {
            persona.setListaPrecio((ListaPrecio) cboListaPrecio.getSelectedItem());
        } catch (Exception e) {

        }
        persona.setFechaAlta(Comunes.obtenerFechaActualDesdeDB());

    }

    private void cargarEntidadPersonaModificacion() {
        persona.setApellido(tfApellido.getText().toUpperCase());
        persona.setNombre(tfNombre.getText().toUpperCase());
        persona.setCorreosElectronicos(correosElectronicos);
        persona.setCuil(tfCuil.getText());
        DocumentoIdentidad documentoIdentidad = new DocumentoIdentidad();
        try {
            documentoIdentidad.setTipoDocumento((TipoDocumento) cboTipoDoc.getSelectedItem());
        } catch (Exception e) {

        }
        documentoIdentidad.setNumero(tfDocumento.getText());
        persona.setDocumentoIdentidad(documentoIdentidad);
        if (jxdFechaNacimiento.isEnabled()) {
            persona.setFechaNacimiento(jxdFechaNacimiento.getDate());
        }
        persona.setSexo((Sexo) cboSexo.getSelectedItem());
        persona.setTelefonos(telefonos);
        //        Domicilio domicilio = new Domicilio();
        persona.getDomicilio().setCalle(tfCalle.getText());
        persona.getDomicilio().setNumero(tfNumero.getText());
        persona.getDomicilio().setPiso(tfPiso.getText());
        persona.getDomicilio().setDpto(tfDpto.getText());
        persona.getDomicilio().setEntreCalles(tfEntreCalles.getText());
        persona.getDomicilio().setReferencia(tfReferencia.getText());
        persona.getDomicilio().setBarrio(tfBarrio.getText());
        persona.getDomicilio().setLocalidad((Localidad) cboLocalidades.getSelectedItem());
        persona.getDomicilio().setCodigoPostal(tfCodigoPostal.getText());

        //        persona.setDomicilio(domicilio);
        try {
            persona.setListaPrecio((ListaPrecio) cboListaPrecio.getSelectedItem());
        } catch (Exception e) {

        }

    }

    private void cargarOrganismo() {
        tfRazonSocial.setText(organismo.getRazonSocial());
        tfCuil.setText(organismo.getCUIT());
        try {
            telefonos = organismo.getTelefonos();
            Comunes.cargarJList(jListTelefonos, telefonos);
        } catch (Exception e) {

        }
        try {
            correosElectronicos = organismo.getCorreosElectronicos();
            Comunes.cargarJList(jListCorreosElectronicos, correosElectronicos);
        } catch (Exception e) {

        }
        try {
            tfCalle.setText(organismo.getDomicilio().getCalle());
        } catch (Exception e) {

        }
        try {
            tfNumero.setText(organismo.getDomicilio().getNumero());
        } catch (Exception e) {

        }
        try {
            tfPiso.setText(organismo.getDomicilio().getPiso());
        } catch (Exception e) {

        }
        try {
            tfDpto.setText(organismo.getDomicilio().getDpto());
        } catch (Exception e) {

        }
        try {
            tfEntreCalles.setText(organismo.getDomicilio().getEntreCalles());
        } catch (Exception e) {

        }
        try {
            tfReferencia.setText(organismo.getDomicilio().getReferencia());
        } catch (Exception e) {

        }
        try {
            tfBarrio.setText(organismo.getDomicilio().getBarrio());
        } catch (Exception e) {

        }
        try {
            cboProvincias.setSelectedItem(organismo.getDomicilio().getLocalidad().getDepartamento().getProvincia());
            cargarDepartamentos();
        } catch (java.lang.NullPointerException ex) {
        }
        try {
            cboDepartamentos.setSelectedItem(organismo.getDomicilio().getLocalidad().getDepartamento());
            cargarLocalidades();
        } catch (java.lang.NullPointerException ex) {
        }
        try {
            cboLocalidades.setSelectedItem(organismo.getDomicilio().getLocalidad());

        } catch (java.lang.NullPointerException ex) {
        }
        try {
            if (persona.getDomicilio().getLocalidad() != null) {
                cboLocalidades.setSelectedItem(organismo.getDomicilio().getLocalidad());
            }
        } catch (java.lang.NullPointerException ex) {
        }
        try {
            tfCodigoPostal.setText(organismo.getDomicilio().getCodigoPostal());
        } catch (java.lang.NullPointerException ex) {
        }
        try {
            cboListaPrecio.setSelectedItem(organismo.getListaPrecio());
        } catch (Exception e) {
        }

    }

    private void cargarEntidadOrganismo() {
        organismo.setRazonSocial(tfRazonSocial.getText().toUpperCase());
        organismo.setCorreosElectronicos(correosElectronicos);
        organismo.setCUIT(tfCuil.getText());
        organismo.setTelefonos(telefonos);
        //        Domicilio domicilio = new Domicilio();
        organismo.getDomicilio().setCalle(tfCalle.getText());
        organismo.getDomicilio().setNumero(tfNumero.getText());
        organismo.getDomicilio().setPiso(tfPiso.getText());
        organismo.getDomicilio().setDpto(tfDpto.getText());
        organismo.getDomicilio().setEntreCalles(tfEntreCalles.getText());
        organismo.getDomicilio().setReferencia(tfReferencia.getText());
        organismo.getDomicilio().setBarrio(tfBarrio.getText());
        organismo.getDomicilio().setLocalidad((Localidad) cboLocalidades.getSelectedItem());
        organismo.getDomicilio().setCodigoPostal(tfCodigoPostal.getText());
        //        organismo.setDomicilio(domicilio);
        try {
            organismo.setListaPrecio((ListaPrecio) cboListaPrecio.getSelectedItem());
        } catch (Exception e) {

        }
    }

    private void cargarListaPrecio() {
        Comunes.cargarJCombo(cboListaPrecio, ListaPrecioFacade.getInstance().getTodos());
        if (sucursal != null && sucursal.getId() == 1L) {
            cboListaPrecio.setEditable(true);
        } else {
            cboListaPrecio.setEditable(false);
            //            List<ListaPrecio> listasPrecio = new ArrayList<>();
            //            listasPrecio.add(ListaPrecioFacade.getInstance().buscar(1L));
            //            Comunes.cargarJCombo(cboListaPrecio, listasPrecio);
        }
    }

}