/*
* 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
}