Package com.dataman.prometeo.swing

Source Code of com.dataman.prometeo.swing.PnlItems

/*
* Copyright (C) 2014 heap.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301  USA
*/
package com.dataman.prometeo.swing;

import com.dataman.prometeo.core.Catalogo;
import com.dataman.prometeo.core.DbOperation;
import com.dataman.prometeo.core.Item;
import com.dataman.prometeo.core.TYPE_Categoria;
import com.dataman.prometeo.core.TYPE_Color;
import com.dataman.prometeo.core.TYPE_EstadoItem;
import com.dataman.prometeo.core.Valida;
import java.awt.Dimension;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.DateFormat;
import java.util.Calendar;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

/**
*
* @author heap
*/
public class PnlItems extends javax.swing.JPanel {

    private Valida valida = new Valida();
    private ResultSet rs;
    private String estado = "";
    private DbOperation catalogo = new DbOperation();
    private Catalogo cmdCatalogo = new Catalogo();

    private JFrame frame;
    private Item item;
    private PnlBuscador<Item> buscador;

    /**
     * Creates new form PnlItems
     */
    public PnlItems() {
        initComponents();
        /**
         * Inicia combos desde TYPES
         */
        initCombos();

    }

    public PnlItems(String id) {
        initComponents();
        /**
         * Inicia combos desde TYPES
         */
        initCombos();
        mostrar();
        this.jtxtID.setText(id);
    }

    public void initCombos() {
        clearAll();
        for (TYPE_Categoria t : TYPE_Categoria.values()) {
            jcmbCategoria.addItem(t.toString());
        }
        for (TYPE_EstadoItem t : TYPE_EstadoItem.values()) {
            jcmbEstado.addItem(t.toString());
        }
       

    }

    /**
     * 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() {
        java.awt.GridBagConstraints gridBagConstraints;

        jLabel6 = new javax.swing.JLabel();
        jLabel1 = new javax.swing.JLabel();
        jcmbEstado = new javax.swing.JComboBox();
        jLabel2 = new javax.swing.JLabel();
        jtxtClave = new javax.swing.JTextField();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jtxtPrecio = new javax.swing.JTextField();
        jLabel5 = new javax.swing.JLabel();
        jtxtNombre = new javax.swing.JTextField();
        jbtnRegistrar = new javax.swing.JButton();
        jbtnActualizar = new javax.swing.JButton();
        jbtnMostrar = new javax.swing.JButton();
        jSeparator1 = new javax.swing.JSeparator();
        jbtnLimpiar = new javax.swing.JButton();
        jbtnSalir = new javax.swing.JButton();
        jLabel7 = new javax.swing.JLabel();
        jcmbCategoria = new javax.swing.JComboBox();
        jbtnBuscar = new javax.swing.JButton();
        jScrollPane1 = new javax.swing.JScrollPane();
        jtxaComentario = new javax.swing.JTextArea();
        jLabel8 = new javax.swing.JLabel();
        jtxtID = new javax.swing.JTextField();
        jtxtFecha = new javax.swing.JFormattedTextField();
        jLabel9 = new javax.swing.JLabel();
        jLabel10 = new javax.swing.JLabel();
        jtxtTalla = new javax.swing.JTextField();
        jtxtColor = new javax.swing.JTextField();

        setBorder(javax.swing.BorderFactory.createTitledBorder("Item"));
        setMinimumSize(new java.awt.Dimension(433, 310));
        setLayout(new java.awt.GridBagLayout());

        jLabel6.setText("   Clave:");
        jLabel6.setPreferredSize(new java.awt.Dimension(120, 30));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 0;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jLabel6, gridBagConstraints);

        jLabel1.setText("   Estado:");
        jLabel1.setMinimumSize(new java.awt.Dimension(96, 24));
        jLabel1.setPreferredSize(new java.awt.Dimension(120, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 13;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jLabel1, gridBagConstraints);

        jcmbEstado.setMaximumSize(new java.awt.Dimension(494, 24));
        jcmbEstado.setMinimumSize(new java.awt.Dimension(494, 20));
        jcmbEstado.setPreferredSize(new java.awt.Dimension(494, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 13;
        gridBagConstraints.gridwidth = 6;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        gridBagConstraints.weightx = 1.0;
        add(jcmbEstado, gridBagConstraints);

        jLabel2.setText("   Clave de producto:");
        jLabel2.setMinimumSize(new java.awt.Dimension(96, 24));
        jLabel2.setPreferredSize(new java.awt.Dimension(120, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 7;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jLabel2, gridBagConstraints);

        jtxtClave.setToolTipText("Las claves de productos  no pueden repetirse");
        jtxtClave.setMinimumSize(new java.awt.Dimension(4, 20));
        jtxtClave.setPreferredSize(new java.awt.Dimension(494, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 7;
        gridBagConstraints.gridwidth = 6;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        gridBagConstraints.weightx = 1.0;
        add(jtxtClave, gridBagConstraints);

        jLabel3.setText("   Fecha:");
        jLabel3.setMinimumSize(new java.awt.Dimension(96, 24));
        jLabel3.setPreferredSize(new java.awt.Dimension(120, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 15;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jLabel3, gridBagConstraints);

        jLabel4.setText("   Precio de catalogo: $");
        jLabel4.setMinimumSize(new java.awt.Dimension(96, 24));
        jLabel4.setPreferredSize(new java.awt.Dimension(130, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 11;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jLabel4, gridBagConstraints);

        jtxtPrecio.setToolTipText("(e.g: 5500.65)");
        jtxtPrecio.setMinimumSize(new java.awt.Dimension(4, 20));
        jtxtPrecio.setPreferredSize(new java.awt.Dimension(494, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 11;
        gridBagConstraints.gridwidth = 6;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        gridBagConstraints.weightx = 1.0;
        add(jtxtPrecio, gridBagConstraints);

        jLabel5.setText("   Nombre:");
        jLabel5.setMinimumSize(new java.awt.Dimension(96, 24));
        jLabel5.setPreferredSize(new java.awt.Dimension(120, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 5;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jLabel5, gridBagConstraints);

        jtxtNombre.setMinimumSize(new java.awt.Dimension(20, 20));
        jtxtNombre.setPreferredSize(new java.awt.Dimension(494, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 5;
        gridBagConstraints.gridwidth = 6;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        gridBagConstraints.weightx = 1.0;
        add(jtxtNombre, gridBagConstraints);

        jbtnRegistrar.setText("Registrar");
        jbtnRegistrar.setMinimumSize(new java.awt.Dimension(144, 26));
        jbtnRegistrar.setPreferredSize(new java.awt.Dimension(144, 26));
        jbtnRegistrar.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jbtnRegistrarMouseReleased(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 7;
        gridBagConstraints.gridy = 19;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
        add(jbtnRegistrar, gridBagConstraints);

        jbtnActualizar.setText("Actualizar");
        jbtnActualizar.setMinimumSize(new java.awt.Dimension(144, 26));
        jbtnActualizar.setPreferredSize(new java.awt.Dimension(144, 26));
        jbtnActualizar.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jbtnActualizarMouseReleased(evt);
            }
        });
        jbtnActualizar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbtnActualizarActionPerformed(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 8;
        gridBagConstraints.gridy = 19;
        gridBagConstraints.gridwidth = 2;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
        add(jbtnActualizar, gridBagConstraints);

        jbtnMostrar.setText("Mostrar datos");
        jbtnMostrar.setMinimumSize(new java.awt.Dimension(144, 26));
        jbtnMostrar.setPreferredSize(new java.awt.Dimension(144, 26));
        jbtnMostrar.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jbtnMostrarMouseReleased(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 7;
        gridBagConstraints.gridy = 0;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
        add(jbtnMostrar, gridBagConstraints);

        jSeparator1.setPreferredSize(new java.awt.Dimension(480, 10));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 2;
        gridBagConstraints.gridwidth = 4;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        gridBagConstraints.weightx = 1.0;
        add(jSeparator1, gridBagConstraints);

        jbtnLimpiar.setText("Limpiar");
        jbtnLimpiar.setToolTipText("Restablece el formulario a su estado inicial");
        jbtnLimpiar.setMinimumSize(new java.awt.Dimension(144, 26));
        jbtnLimpiar.setPreferredSize(new java.awt.Dimension(144, 26));
        jbtnLimpiar.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jbtnLimpiarMouseReleased(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 6;
        gridBagConstraints.gridy = 19;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
        add(jbtnLimpiar, gridBagConstraints);

        jbtnSalir.setText("Cerrar");
        jbtnSalir.setMaximumSize(new java.awt.Dimension(144, 26));
        jbtnSalir.setMinimumSize(new java.awt.Dimension(144, 26));
        jbtnSalir.setPreferredSize(new java.awt.Dimension(114, 26));
        jbtnSalir.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jbtnSalirMouseReleased(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 19;
        gridBagConstraints.gridwidth = 2;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jbtnSalir, gridBagConstraints);

        jLabel7.setText("   Categoria:");
        jLabel7.setMaximumSize(new java.awt.Dimension(128, 16));
        jLabel7.setMinimumSize(new java.awt.Dimension(96, 24));
        jLabel7.setPreferredSize(new java.awt.Dimension(120, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 3;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jLabel7, gridBagConstraints);

        jcmbCategoria.setMaximumSize(new java.awt.Dimension(494, 24));
        jcmbCategoria.setMinimumSize(new java.awt.Dimension(494, 24));
        jcmbCategoria.setPreferredSize(new java.awt.Dimension(494, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 3;
        gridBagConstraints.gridwidth = 6;
        gridBagConstraints.gridheight = 2;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jcmbCategoria, gridBagConstraints);

        jbtnBuscar.setText("Buscar | Ocultar Panel");
        jbtnBuscar.setMinimumSize(new java.awt.Dimension(164, 26));
        jbtnBuscar.setPreferredSize(new java.awt.Dimension(164, 26));
        jbtnBuscar.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jbtnBuscarMouseReleased(evt);
            }
        });
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 8;
        gridBagConstraints.gridy = 0;
        gridBagConstraints.gridwidth = 2;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
        add(jbtnBuscar, gridBagConstraints);

        jScrollPane1.setMinimumSize(new java.awt.Dimension(140, 93));

        jtxaComentario.setColumns(20);
        jtxaComentario.setRows(5);
        jtxaComentario.setMinimumSize(new java.awt.Dimension(45, 20));
        jtxaComentario.setPreferredSize(new java.awt.Dimension(494, 26));
        jScrollPane1.setViewportView(jtxaComentario);

        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 17;
        gridBagConstraints.gridwidth = 6;
        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
        gridBagConstraints.weightx = 1.0;
        gridBagConstraints.weighty = 1.0;
        add(jScrollPane1, gridBagConstraints);

        jLabel8.setText("   Comentario:");
        jLabel8.setMinimumSize(new java.awt.Dimension(96, 24));
        jLabel8.setPreferredSize(new java.awt.Dimension(120, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 17;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        add(jLabel8, gridBagConstraints);

        jtxtID.setMinimumSize(new java.awt.Dimension(45, 20));
        jtxtID.setPreferredSize(new java.awt.Dimension(55, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 0;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
        gridBagConstraints.weightx = 2.0;
        add(jtxtID, gridBagConstraints);

        jtxtFecha.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.DateFormatter()));
        jtxtFecha.setMinimumSize(new java.awt.Dimension(4, 24));
        jtxtFecha.setPreferredSize(new java.awt.Dimension(103, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 15;
        gridBagConstraints.gridwidth = 6;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
        gridBagConstraints.weightx = 1.0;
        add(jtxtFecha, gridBagConstraints);

        jLabel9.setText("   Color:");
        jLabel9.setMinimumSize(new java.awt.Dimension(37, 24));
        jLabel9.setPreferredSize(new java.awt.Dimension(37, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 0;
        gridBagConstraints.gridy = 9;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST;
        add(jLabel9, gridBagConstraints);

        jLabel10.setText("Talla:");
        jLabel10.setMinimumSize(new java.awt.Dimension(40, 24));
        jLabel10.setPreferredSize(new java.awt.Dimension(40, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 7;
        gridBagConstraints.gridy = 9;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
        add(jLabel10, gridBagConstraints);

        jtxtTalla.setMinimumSize(new java.awt.Dimension(4, 24));
        jtxtTalla.setPreferredSize(new java.awt.Dimension(55, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 8;
        gridBagConstraints.gridy = 9;
        gridBagConstraints.gridwidth = 2;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST;
        gridBagConstraints.weightx = 1.0;
        add(jtxtTalla, gridBagConstraints);

        jtxtColor.setMinimumSize(new java.awt.Dimension(4, 24));
        jtxtColor.setPreferredSize(new java.awt.Dimension(55, 26));
        gridBagConstraints = new java.awt.GridBagConstraints();
        gridBagConstraints.gridx = 4;
        gridBagConstraints.gridy = 9;
        gridBagConstraints.gridwidth = 3;
        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
        gridBagConstraints.weightx = 1.0;
        add(jtxtColor, gridBagConstraints);
    }// </editor-fold>//GEN-END:initComponents

    private void jbtnRegistrarMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jbtnRegistrarMouseReleased
        try {
            /**
             * valida que este habilitado el botón
             */
            if (jbtnRegistrar.isEnabled()) {
                /**
                 * Valida los campos no esten vacíos
                 */
                int ar = 0;
                if ((valida.esDouble(jtxtPrecio.getText()))
                        && (jtxtNombre.getText().length() != 0)
                        && (jtxtClave.getText().length() != 0)) {
                    int c = JOptionPane.showConfirmDialog(frame, "ESTA SEGURO(A)?",
                            "MENSAJE DEL SISTEMA", JOptionPane.YES_NO_OPTION);
                    if (c == 0) {
                        Double precio = new Double(jtxtPrecio.getText());
                        item = new Item(-1);
                        item.setIdProducto(jtxtClave.getText());
                        item.setCategoria(jcmbCategoria.getSelectedItem().toString());
                        item.setNombre(jtxtNombre.getText());
                        item.setPrecioBase(precio);
                        item.setEstado(jcmbEstado.getSelectedItem().toString());
                        item.setFechaRegistro(DateFormat.getDateInstance(
                                DateFormat.DEFAULT).parse(jtxtFecha.getText()));
                        item.setComentario(jtxaComentario.getText());
                        item.setColor(jtxtColor.getText());
                        item.setTalla(jtxtTalla.getText());

                        int r = item.insertaSQL();
                        if (r != -1) {

                            JOptionPane.showMessageDialog(frame, "EL REGISTRO FUE CORRECTO",
                                    "MENSAJE DEL SISTEMA", JOptionPane.INFORMATION_MESSAGE);
                            clearAll(); //limpia la forma y rellena el combo
                        } else {
                            JOptionPane.showMessageDialog(frame, "EL REGISTRO NO FUE CORRECTO",
                                    "MENSAJE DEL SISTEMA", JOptionPane.ERROR_MESSAGE);
                        }
                    }

                } else {
                    //muestra un mensaje de error
                    JOptionPane.showMessageDialog(frame, "VERIFICA LOS DATOS DE LA FORMA",
                            "MENSAJE DEL SISTEMA", JOptionPane.WARNING_MESSAGE);
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }//GEN-LAST:event_jbtnRegistrarMouseReleased
    /**
     * Metodo para limpiar la forma
     */
    private void clearAll() {
        jtxtNombre.setText("");             // limpia campos
        jtxtClave.setText("");
        jtxtPrecio.setText("");
        jtxtTalla.setText("");
        jtxtColor.setText("");
        jtxtFecha.setText(valida.fecha())// pone la fecha
        jtxaComentario.setText("");
        jbtnActualizar.setEnabled(false);   //restablece botones
        jbtnRegistrar.setEnabled(true);
        jtxtClave.setEditable(true);
       

    }
    private void jbtnActualizarMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jbtnActualizarMouseReleased

        if (jbtnActualizar.isEnabled()) {
            /**
             * Actualiza la base de datos con los cambios del GUI
             */

            /**
             * Valida si es numero el precio y no este vacio el nombre
             */
            if ((valida.esDouble(jtxtPrecio.getText())) && (jtxtNombre.getText().length() != 0)) {
                int c = JOptionPane.showConfirmDialog(frame, "ESTA SEGURO(A)?",
                        "MENSAJE DEL SISTEMA", JOptionPane.YES_NO_OPTION);
                if (c == 0) {
                    Double precio = new Double(jtxtPrecio.getText());
                    item.setIdProducto(jtxtClave.getText());
                    item.setCategoria(jcmbCategoria.getSelectedItem().toString());
                    item.setNombre(jtxtNombre.getText());
                    item.setPrecioBase(precio);
                    item.setEstado(jcmbEstado.getSelectedItem().toString());
                    item.setComentario(jtxaComentario.getText());
                    item.setFechaActualizacion(Calendar.getInstance().getTime() );
                    item.setTalla(jtxtTalla.getText());
                    item.setColor(jtxtColor.getText());

                    int r = item.actualizaSQL();

                    if (r != -1) {
                        JOptionPane.showMessageDialog(frame, "EL REGISTRO FUE CORRECTO",
                                "MENSAJE DEL SISTEMA", JOptionPane.INFORMATION_MESSAGE);
                        clearAll(); //limpia la forma
                    } else {
                        JOptionPane.showMessageDialog(frame, "EL REGISTRO NO FUE CORRECTO",
                                "MENSAJE DEL SISTEMA", JOptionPane.ERROR_MESSAGE);
                    }
                }
            } else {
                //muestra un mensaje de error
                JOptionPane.showMessageDialog(frame, "VERIFICA LOS DATOS DE LA FORMA",
                        "MENSAJE DEL SISTEMA", JOptionPane.WARNING_MESSAGE);
                //clearAll();
            }
        }

    }//GEN-LAST:event_jbtnActualizarMouseReleased

    private void jbtnActualizarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jbtnActualizarActionPerformed
        // Add your handling code here:
    }//GEN-LAST:event_jbtnActualizarActionPerformed

    private void jbtnMostrarMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jbtnMostrarMouseReleased
        mostrar();

    }//GEN-LAST:event_jbtnMostrarMouseReleased
    private void mostrar() {
        /**
         * Define variables p/manejar los datos en 2 partes clave y IDproducto
         */
        try {
            String iSelected, idProducto, categoria;

            item = new Item(-1);
            int id;
            /**
             * Verifica el uso del panel buscador
             */
            if (buscador != null) {
                item = buscador.getSelected();
                id = item.getId();
            } else {
                idProducto = jtxtID.getText();
                item = new Item(-1);

                /**
                 * Conecta con la base de datos p/obtener los datos del producto
                 * selecccionado con la clave de producto, luego cambia a la
                 * clave ID
                 */
                rs = catalogo.consultar("SELECT * FROM CATALOGO WHERE IDPRODUCTO='"
                        + idProducto + "'");
                if (!rs.first()) {
                    return;
                }

                id = rs.getInt("ID");
                rs.close();
            }
            /**
             * Conecta con la base de datos p/obtener los datos del item
             * selecccionado
             */
            item.buscarSQL(id);

            /**
             * Llena el formulario GUI
             */
            item.setID(id);
            jtxtNombre.setText(item.getNombre());
            jtxtClave.setText(item.getIdProducto());
            jtxtPrecio.setText(String.valueOf(item.getPrecioBase()));
            jtxaComentario.setText(item.getComentario());
            jtxtTalla.setText(item.getTalla());
            jtxtColor.setText(item.getColor());
            /**
             * Establece la fecha en formato adecuado
             */
            jtxtFecha.setToolTipText(null);
            jtxtFecha.setText(DateFormat.getDateInstance(DateFormat.DEFAULT).format(
                    item.getFechaRegistro()));
            if(item.getFechaActualizacion() !=null)
                jtxtFecha.setToolTipText(DateFormat.getDateInstance(DateFormat.DEFAULT).format(
                    item.getFechaActualizacion()));

            /**
             * Establece el combo de ESTADO
             */
            iSelected = item.getEstado();
            jcmbEstado.setSelectedItem(iSelected);
            /**
             * Establece la categoria
             */
            categoria = item.getCategoria();
            jcmbCategoria.setSelectedItem(categoria);
            /**
             * Prepara el formulario p/solo permitir Actualizaciones
             */
            jbtnRegistrar.setEnabled(false);
            jtxtClave.setEditable(false);
            jbtnActualizar.setEnabled(true);

        } catch (SQLException e) {
            System.err.println(e.getMessage());
        }
    }
    private void jbtnLimpiarMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jbtnLimpiarMouseReleased
           clearAll();
    }//GEN-LAST:event_jbtnLimpiarMouseReleased

    private void jbtnSalirMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jbtnSalirMouseReleased


    }//GEN-LAST:event_jbtnSalirMouseReleased

    private void jbtnBuscarMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jbtnBuscarMouseReleased
        if (buscador != null) {
            getRootPane().getContentPane().remove(buscador);
            getRootPane().getParent().setPreferredSize(
                    new Dimension((this.getWidth() - 50),
                            this.getHeight()));
            buscador = null;
        } else {
            buscador
                    = new PnlBuscador<>(new Item(-1));
            getRootPane().getContentPane().add(buscador);
            buscador.setVisible(true);

            getRootPane().getParent().setPreferredSize(
                    new Dimension((this.getWidth() + 150),
                            this.getHeight()));

        }
    }//GEN-LAST:event_jbtnBuscarMouseReleased


    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    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.JScrollPane jScrollPane1;
    private javax.swing.JSeparator jSeparator1;
    private javax.swing.JButton jbtnActualizar;
    private javax.swing.JButton jbtnBuscar;
    private javax.swing.JButton jbtnLimpiar;
    private javax.swing.JButton jbtnMostrar;
    private javax.swing.JButton jbtnRegistrar;
    private javax.swing.JButton jbtnSalir;
    private javax.swing.JComboBox jcmbCategoria;
    private javax.swing.JComboBox jcmbEstado;
    private javax.swing.JTextArea jtxaComentario;
    private javax.swing.JTextField jtxtClave;
    private javax.swing.JTextField jtxtColor;
    private javax.swing.JFormattedTextField jtxtFecha;
    private javax.swing.JTextField jtxtID;
    private javax.swing.JTextField jtxtNombre;
    private javax.swing.JTextField jtxtPrecio;
    private javax.swing.JTextField jtxtTalla;
    // End of variables declaration//GEN-END:variables
}
TOP

Related Classes of com.dataman.prometeo.swing.PnlItems

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.