Código:
package controlador;
import modelo.ModeloProducto;
import vista.frmInventario;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
//import modelo.dbPersistencia;
import modelo.dbProducto;
[color=blue][/color]
public class ControladorProducto implements ActionListener{
DefaultTableModel modelotabla = new DefaultTableModel();
private frmInventario forminventario;
private ModeloProducto producto;
private dbProducto dbproducto = new dbProducto();
//ArrayList<Float> precios = new ArrayList<>();
public ControladorProducto(frmInventario frminventario, ModeloProducto producto) {
this.forminventario = frminventario;
this.producto = producto;
this.forminventario.btnAgregar.addActionListener(this);
this.forminventario.btnEditar.addActionListener(this);
this.forminventario.btnEliminar.addActionListener(this);
this.forminventario.btnGuardar.addActionListener(this);
this.forminventario.btnImprimir.addActionListener(this);
this.forminventario.btnRetirar.addActionListener(this);
iniciarVista();
}
public void iniciarVista(){
this.forminventario.setTitle("INVENTARIO UPMYS");
clean();
titulos();
this.forminventario.setVisible(true);
}
public void limpiarTabla(){
int a = this.forminventario.tbProducto.getRowCount() - 1;
for (int i = a; i >= 0; i--) {
modelotabla.removeRow(modelotabla.getRowCount() - 1);
}
}
public void clean(){
producto.setId(dbproducto.recuperarCodigo());
this.forminventario.txtId.setText(String.valueOf(producto.getId()));
this.forminventario.txtCodigo.setText("");
this.forminventario.txtDescripcion.setText("");
this.forminventario.txtNombre.setText("");
this.forminventario.txtPrecio.setText("");
this.forminventario.txtStock.setText("");
}
public void titulos() {
modelotabla.addColumn("#");
modelotabla.addColumn("NOMBRE");
modelotabla.addColumn("CODIGO");
modelotabla.addColumn("DESCRIPCION");
modelotabla.addColumn("PRECIO");
modelotabla.addColumn("STOCK");
this.forminventario.tbProducto.setModel(modelotabla);
}
public void agregarTabla() {
String datostabla[] = new String[6];
datostabla[0] = String.valueOf(this.forminventario.txtId.getText());
datostabla[1] = String.valueOf(this.forminventario.txtCodigo.getText());
datostabla[2] = String.valueOf(this.forminventario.txtNombre.getText());
datostabla[3] = String.valueOf(this.forminventario.txtDescripcion.getText());
datostabla[4] = String.valueOf(Float.parseFloat(this.forminventario.txtPrecio.getText()));
datostabla[5] = String.valueOf(this.forminventario.txtStock.getText());
modelotabla.addRow(datostabla);
//this.forminventario.tbProducto.setModel(modelotabla);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == this.forminventario.btnAgregar) {
this.forminventario.txtCodigo.getText();
this.forminventario.txtNombre.getText();
this.forminventario.txtDescripcion.getText();
this.forminventario.txtPrecio.getText();
this.forminventario.txtStock.getText();
} else if (e.getSource() == this.forminventario.btnGuardar) {
try {
dbproducto.insertar(producto);
clean();
limpiarTabla();
JOptionPane.showMessageDialog(forminventario, "REGISTRO GUARDADO!");
}
catch (Exception ex) {
Logger.getLogger(ControladorProducto.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}