Java tutorial
/* * 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 Valuacion; import Hibernate.Util.HibernateUtil; import Hibernate.entidades.Configuracion; import Hibernate.entidades.Ejemplar; import Hibernate.entidades.Foto; import Hibernate.entidades.Orden; import Hibernate.entidades.Partida; import Hibernate.entidades.Usuario; import Servicios.EnviarCorreo; import com.itextpdf.text.BaseColor; import com.itextpdf.text.Element; import com.itextpdf.text.Font; import com.itextpdf.text.PageSize; import com.itextpdf.text.Paragraph; import com.itextpdf.text.Rectangle; import com.itextpdf.text.pdf.BaseFont; import com.itextpdf.text.pdf.GrayColor; import com.itextpdf.text.pdf.PdfContentByte; import com.itextpdf.text.pdf.PdfPTable; import java.awt.Color; import java.awt.Desktop; import java.awt.Dimension; import java.awt.Toolkit; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.math.BigDecimal; import java.nio.file.CopyOption; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.StandardCopyOption; import java.text.DateFormat; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Enumeration; import java.util.Vector; import javax.swing.DefaultCellEditor; import javax.swing.ImageIcon; import javax.swing.JOptionPane; import javax.swing.ListSelectionModel; import javax.swing.SwingConstants; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.DefaultTableModel; import javax.swing.table.JTableHeader; import javax.swing.table.TableCellRenderer; import javax.swing.table.TableColumn; import javax.swing.table.TableColumnModel; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.util.CellRangeAddress; import org.apache.poi.poifs.filesystem.POIFSFileSystem; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.hibernate.Criteria; import org.hibernate.Session; import org.hibernate.criterion.Order; import org.hibernate.criterion.Restrictions; import Integral.DefaultTableHeaderCellRenderer; import Integral.ExtensionFileFilter; import Integral.FormatoEditor; import Integral.FormatoTabla; import Integral.Herramientas; import Integral.HorizontalBarUI; import Integral.PDF; import Integral.VerticalBarUI; import Integral.VerticalTableHeaderCellRenderer; import java.awt.event.KeyEvent; import java.math.RoundingMode; import java.util.ArrayList; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; import javax.swing.table.TableModel; import org.hibernate.Query; /** * * @author I.S.C Salvador */ public class valuacion extends javax.swing.JPanel implements ListSelectionListener { /** * Creates new form valuacionDirecta */ private String orden; private Usuario user; String sessionPrograma = ""; ListSelectionModel selectionModel; Herramientas h; int x = 0, entro = 0; String[] columnas = new String[] { "No", "#", "Grupo", "Descripcion", "D/M", "Rep Min", "Rep Med", "Rep Max", "Cam", "Pin", "Can", "Med", "Inst", "Codigo", "Costo c/u", "%", "$ Cia. Seg", "Can Aut", "$ Aut. c/u", "$ Aut. Tot", "OK", "Aut", "Hrs.", "R.Cot", "R.Com", "Prov", "SO", "PD", "Ori", "Pedido", "I. DM", "Camb", "Rep Min", "Rep Med", "Rep Max", "Pin Min", "Pin Med", "Pin Max", "Tipo", "Orden" }; String[] columnas2 = new String[] { "No", "#", "Grupo", "Descripcion" }; private Partida aux; Orden ord; FormatoTabla formato; MyModel model; MyModel model2; int menu; boolean[] edita_columnas; String estado; Class[] types; public valuacion(String ord, Usuario us, String edo, String ses, int op) { initComponents(); scroll.getVerticalScrollBar().setUI(new VerticalBarUI()); scroll.getHorizontalScrollBar().setUI(new HorizontalBarUI()); estado = edo; menu = op; sessionPrograma = ses; orden = ord; user = us; if (menu == 3) { edita_columnas = new boolean[] { true/*horas mo*/, false/*costo c/u*/, false/*%*/, true/*cant aut*/, true/*$ autorizado*/, true/*autorizar partida*/, true/*r cot*/, true/*r com*/, true/*tipo de surtido*/ }; t_ok.setVisible(false); b_ok.setVisible(false); bt.setVisible(false); r_cerrar_cotizacion.setVisible(false); r_cerrar_valuacion.setVisible(true); } else { edita_columnas = new boolean[] { false/*horas mo*/, true/*costo c/u*/, true/*%*/, false/*cant aut*/, false/*$ autorizado*/, false/*autorizar partida*/, false/*r cot*/, false/*r com*/, false/*tipo de surtido*/ }; t_ok.setVisible(true); b_ok.setVisible(true); bt.setVisible(true); r_cerrar_cotizacion.setVisible(true); r_cerrar_valuacion.setVisible(false); } types = new Class[] { java.lang.String.class/*No*/, java.lang.String.class/*#*/, java.lang.String.class/*Grupo*/, java.lang.String.class/*Descripcion*/, java.lang.Double.class/*D/M*/, java.lang.Double.class/*Rep Min*/, java.lang.Double.class/*Rep Med*/, java.lang.Double.class/*Rep Max*/, java.lang.Double.class/*Cam*/, java.lang.Double.class/*Pin*/, java.lang.Double.class/*Can*/, java.lang.String.class/*Med*/, java.lang.String.class/*Ins*/, java.lang.String.class/*Cod*/, java.lang.Double.class/*Costo c/u*/, java.lang.Double.class/*%*/, java.lang.Double.class/*cia seguroa*/, java.lang.Double.class/*cant autorizada*/, java.lang.Double.class/*$ aut c/u*/, java.lang.Double.class, /*$ aut tot*/ java.lang.Boolean.class, /*$ vales*/ java.lang.Boolean.class/*autorizado*/, java.lang.Double.class/*Horas*/, java.lang.Boolean.class/*R cot*/, java.lang.Boolean.class/*R com*/, java.lang.String.class/*Proveedor*/, java.lang.Boolean.class/*SO*/, java.lang.Boolean.class/*PD*/, java.lang.String.class/*Ori*/, java.lang.String.class/*Pedido*/, //java.lang.String.class/*Plazo*/, java.lang.Boolean.class/*I. DM*/, java.lang.Boolean.class/*Camb*/, java.lang.Boolean.class/*Rep Min*/, java.lang.Boolean.class/**Rep Med*/ , java.lang.Boolean.class/*Rep Max*/, java.lang.Boolean.class/*Pin Min*/, java.lang.Boolean.class/*Pin Med*/, java.lang.Boolean.class/*Pin Max*/, java.lang.String.class/*Tipo*/, java.lang.String.class/*Orden*/ }; this.l5.setVisible(false); this.t_porcentaje.setVisible(false); this.repaint(); t_datos.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION); formato = new FormatoTabla(); buscaCuentas(-1, -1); verEstado(); h = new Herramientas(user, 0); if (h.isCerrada(orden) == true) { visualiza(false); t_deducible.setEnabled(false); t_demerito.setEnabled(false); t_vales.setEnabled(false); b_ok.setEnabled(false); b_ac.setEnabled(false); r_cerrar_valuacion.setEnabled(false); this.r_cerrar_cotizacion.setEnabled(false); } } public void tabla_tamaos() { TableColumnModel col_model = t_datos.getColumnModel(); DefaultTableCellRenderer tcr = new DefaultTableCellRenderer(); tcr.setHorizontalAlignment(SwingConstants.RIGHT); FormatoEditor fe=new FormatoEditor(); t_datos.setDefaultEditor(Double.class, fe); for (int i=0; i<t_datos.getColumnCount(); i++) { TableColumn column = col_model.getColumn(i); switch(i) { case 0://N column.setPreferredWidth(54); //column.setCellRenderer(tcr); break; case 1://# column.setPreferredWidth(38); //column.setCellRenderer(tcr); break; case 2://Grupo column.setPreferredWidth(90); break; case 3://descripcion column.setPreferredWidth(300); break; case 4://D/M column.setPreferredWidth(45); break; case 5://rep min column.setPreferredWidth(45); break; case 6://rep med column.setPreferredWidth(45); break; case 7://rep max column.setPreferredWidth(45); break; case 8://camb column.setPreferredWidth(45); break; case 9://pintar column.setPreferredWidth(45); break; case 10://cant column.setPreferredWidth(45); break; case 11://medida column.setPreferredWidth(50); DefaultCellEditor editor = new DefaultCellEditor(medida); column.setCellEditor(editor); editor.setClickCountToStart(2); break; case 12://folio column.setPreferredWidth(100); break; case 13://codigo column.setPreferredWidth(100); //DefaultCellEditor miEditor = new DefaultCellEditor(numeros); //miEditor.setClickCountToStart(2); //column.setCellEditor(miEditor); //column.setCellRenderer(tcr); break; case 14://Costo c/u column.setPreferredWidth(75); break; case 15://% column.setPreferredWidth(35); break; case 16://precio cia seg column.setPreferredWidth(75); break; case 17://cant autorizada column.setPreferredWidth(50); break; case 18://precio aut c/u column.setPreferredWidth(75); break; case 19://precio aut tot column.setPreferredWidth(75); break; case 22://horas column.setPreferredWidth(50); break; case 25://proveedor column.setPreferredWidth(50); break; case 28://original column.setPreferredWidth(40); break; case 29://Pedido column.setPreferredWidth(50); break; case 39://enlazada column.setPreferredWidth(70); break; default: column.setPreferredWidth(17); break; } } JTableHeader header = t_datos.getTableHeader(); header.setBackground(new java.awt.Color(2, 135, 242));//102,102,102 header.setForeground(Color.white); } /** * 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() { numeros = new javax.swing.JComboBox(); medida = new javax.swing.JComboBox(); instruccion = new javax.swing.JTextField(); t_numero = new javax.swing.JTextField(); jScrollPane1 = new javax.swing.JScrollPane(); t_cantidad = new javax.swing.JFormattedTextField(); ventanaReportes = new javax.swing.JDialog(); jPanel2 = new javax.swing.JPanel(); jButton1 = new javax.swing.JButton(); b_exel1 = new javax.swing.JButton(); jPanel5 = new javax.swing.JPanel(); jButton4 = new javax.swing.JButton(); jPanel4 = new javax.swing.JPanel(); cb_precio = new javax.swing.JComboBox(); jButton2 = new javax.swing.JButton(); jButton5 = new javax.swing.JButton(); jButton3 = new javax.swing.JButton(); b_exel2 = new javax.swing.JButton(); cb_partidas = new javax.swing.JComboBox(); jLabel7 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); cb_tipo = new javax.swing.JComboBox(); t_num = new javax.swing.JFormattedTextField(); l3 = new javax.swing.JLabel(); t_ref_presupuesto = new javax.swing.JFormattedTextField(); l1 = new javax.swing.JLabel(); l5 = new javax.swing.JLabel(); t_porcentaje = new javax.swing.JTextField(); jPanel1 = new javax.swing.JPanel(); jLabel1 = new javax.swing.JLabel(); t_busca = new javax.swing.JTextField(); b_busca = new javax.swing.JButton(); b_pdf = new javax.swing.JButton(); b_exel = new javax.swing.JButton(); b_enviar = new javax.swing.JButton(); b_enviar.setContentAreaFilled(false); r_cerrar_cotizacion = new javax.swing.JRadioButton(); r_cerrar_valuacion = new javax.swing.JRadioButton(); jPanel6 = new javax.swing.JPanel(); t_costo_refacciones = new javax.swing.JFormattedTextField(); jLabel3 = new javax.swing.JLabel(); l2 = new javax.swing.JLabel(); t_ref_autorizadas_directo = new javax.swing.JFormattedTextField(); jLabel5 = new javax.swing.JLabel(); t_cia_seguros = new javax.swing.JFormattedTextField(); jLabel6 = new javax.swing.JLabel(); t_autorizado = new javax.swing.JFormattedTextField(); t_autorizado1 = new javax.swing.JFormattedTextField(); jLabel8 = new javax.swing.JLabel(); jPanel7 = new javax.swing.JPanel(); jLabel11 = new javax.swing.JLabel(); t_horas = new javax.swing.JFormattedTextField(); jLabel13 = new javax.swing.JLabel(); t_importe = new javax.swing.JFormattedTextField(); l4 = new javax.swing.JLabel(); t_mo_directa = new javax.swing.JFormattedTextField(); t_mo_directa1 = new javax.swing.JFormattedTextField(); l6 = new javax.swing.JLabel(); scroll = new javax.swing.JScrollPane(); t_datos = new javax.swing.JTable(); jPanel3 = new javax.swing.JPanel(); jLabel29 = new javax.swing.JLabel(); t_deducible = new javax.swing.JFormattedTextField(); jLabel30 = new javax.swing.JLabel(); t_demerito = new javax.swing.JFormattedTextField(); b_ac = new javax.swing.JButton(); t_ok = new javax.swing.JTextField(); b_ok = new javax.swing.JButton(); bt = new javax.swing.JButton(); t_vales = new javax.swing.JFormattedTextField(); jLabel31 = new javax.swing.JLabel(); numeros.setFont(new java.awt.Font("Dialog", 0, 9)); // NOI18N numeros.addFocusListener(new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent evt) { numerosFocusLost(evt); } }); medida.setFont(new java.awt.Font("Dialog", 0, 9)); // NOI18N medida.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "PZAS", "LTS", "MTS", "CMS", "MMS", "GRS", "MLS", "KGS", "HRS", "MIN", "KIT", "FT", "LB", "JGO", "NA" })); instruccion.setText("jTextField1"); instruccion.setBorder(null); instruccion.addKeyListener(new java.awt.event.KeyAdapter() { public void keyTyped(java.awt.event.KeyEvent evt) { instruccionKeyTyped(evt); } }); t_numero.setFont(new java.awt.Font("Dialog", 0, 10)); // NOI18N t_numero.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_numero.setAlignmentX(0.0F); t_numero.setAlignmentY(0.0F); t_numero.setBorder(null); t_numero.setMinimumSize(new java.awt.Dimension(3, 14)); t_numero.setPreferredSize(new java.awt.Dimension(3, 14)); t_numero.addKeyListener(new java.awt.event.KeyAdapter() { public void keyTyped(java.awt.event.KeyEvent evt) { t_numeroKeyTyped(evt); } }); t_cantidad.setBorder(null); t_cantidad.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#0")))); t_cantidad.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_cantidad.setEnabled(false); t_cantidad.setFont(new java.awt.Font("Dialog", 0, 10)); // NOI18N ventanaReportes.setMinimumSize(new java.awt.Dimension(270, 160)); ventanaReportes.setModal(true); ventanaReportes.setResizable(false); jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder( new javax.swing.border.LineBorder(new java.awt.Color(0, 0, 0), 1, true), "Reportes", javax.swing.border.TitledBorder.CENTER, javax.swing.border.TitledBorder.TOP)); jButton1.setBackground(new java.awt.Color(2, 135, 242)); jButton1.setText("Valuacin"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); b_exel1.setIcon(new ImageIcon("imagenes/xls_icon.png")); b_exel1.setToolTipText("Exporta a EXCEL"); b_exel1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { b_exel1ActionPerformed(evt); } }); jPanel5.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(0, 0, 0), 1, true)); jButton4.setBackground(new java.awt.Color(2, 135, 242)); jButton4.setText("Solo compra"); jButton4.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton4ActionPerformed(evt); } }); jPanel4.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(0, 0, 0), 1, true)); cb_precio.setModel(new javax.swing.DefaultComboBoxModel( new String[] { "Compaia", "Autorizado", "Cotizado", "Compra" })); cb_precio.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { cb_precioActionPerformed(evt); } }); jButton2.setBackground(new java.awt.Color(2, 135, 242)); jButton2.setText("Ref.precio "); jButton2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton2ActionPerformed(evt); } }); 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.TRAILING) .addComponent(cb_precio, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, 101, Short.MAX_VALUE)) .addGap(11, 11, 11))); jPanel4Layout.setVerticalGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel4Layout.createSequentialGroup().addContainerGap().addComponent(jButton2) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(cb_precio, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); jButton5.setBackground(new java.awt.Color(2, 135, 242)); jButton5.setText("Reparaciones"); jButton5.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton5ActionPerformed(evt); } }); jButton3.setBackground(new java.awt.Color(2, 135, 242)); jButton3.setText("Ref. sin precio"); jButton3.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton3ActionPerformed(evt); } }); b_exel2.setIcon(new ImageIcon("imagenes/xls_icon.png")); b_exel2.setToolTipText("Exporta a EXCEL"); b_exel2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { b_exel2ActionPerformed(evt); } }); cb_partidas.setModel(new javax.swing.DefaultComboBoxModel( new String[] { "Marcadas", "Todas", "Autorizadas", "Sin Autorizar" })); jLabel7.setText("Partidas:"); jLabel2.setText("Especialidad"); cb_tipo.setModel(new javax.swing.DefaultComboBoxModel( new String[] { "Todas", "Hojalateria", "Mecanica", "Suspension", "Electrico", "Pintura" })); 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.TRAILING) .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(jPanel5Layout.createSequentialGroup() .addComponent(b_exel2, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jButton4))) .addGap(18, 18, 18) .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jButton3).addComponent(jButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 101, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel5Layout.createSequentialGroup().addGap(0, 2, Short.MAX_VALUE) .addGroup(jPanel5Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(cb_tipo, javax.swing.GroupLayout.PREFERRED_SIZE, 101, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel2))) .addComponent(cb_partidas, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(jLabel7)) .addContainerGap())); jPanel5Layout.setVerticalGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel5Layout.createSequentialGroup().addContainerGap() .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel5Layout.createSequentialGroup().addGroup(jPanel5Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(b_exel2, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(jPanel5Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jButton5).addComponent(jButton4))) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jPanel4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGroup(jPanel5Layout.createSequentialGroup().addGap(2, 2, 2) .addComponent(jLabel2) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(cb_tipo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(jPanel5Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel7).addComponent(jButton3)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(cb_partidas, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); 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.LEADING) .addGroup(jPanel2Layout.createSequentialGroup() .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(b_exel1, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)) .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); jPanel2Layout .setVerticalGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel2Layout.createSequentialGroup() .addGroup(jPanel2Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(b_exel1, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jPanel5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))); javax.swing.GroupLayout ventanaReportesLayout = new javax.swing.GroupLayout( ventanaReportes.getContentPane()); ventanaReportes.getContentPane().setLayout(ventanaReportesLayout); ventanaReportesLayout.setHorizontalGroup( ventanaReportesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent( jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)); ventanaReportesLayout.setVerticalGroup( ventanaReportesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING).addComponent( jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)); t_num.setBorder(null); t_num.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#0.00")))); t_num.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_num.addFocusListener(new java.awt.event.FocusAdapter() { public void focusGained(java.awt.event.FocusEvent evt) { t_numFocusGained(evt); } }); l3.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N l3.setForeground(new java.awt.Color(255, 255, 255)); l3.setText("M.O. Presupuestada:"); t_ref_presupuesto.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_ref_presupuesto.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_ref_presupuesto.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_ref_presupuesto.setText("0.00"); t_ref_presupuesto.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_ref_presupuesto.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N t_ref_presupuesto.setNextFocusableComponent(t_busca); t_ref_presupuesto.addFocusListener(new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent evt) { t_ref_presupuestoFocusLost(evt); } }); t_ref_presupuesto.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { t_ref_presupuestoActionPerformed(evt); } }); l1.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N l1.setForeground(new java.awt.Color(255, 255, 255)); l1.setText("Ref.Presupuesto:"); l5.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N l5.setForeground(new java.awt.Color(255, 255, 255)); l5.setText("% de utilidad:"); t_porcentaje.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_porcentaje.setEnabled(false); t_porcentaje.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { t_porcentajeActionPerformed(evt); } }); t_porcentaje.addKeyListener(new java.awt.event.KeyAdapter() { public void keyTyped(java.awt.event.KeyEvent evt) { t_porcentajeKeyTyped(evt); } }); setBorder(new javax.swing.border.LineBorder(new java.awt.Color(0, 0, 0), 1, true)); setLayout(new java.awt.BorderLayout()); jPanel1.setBackground(new java.awt.Color(2, 135, 242)); jPanel1.setBorder(javax.swing.BorderFactory.createEtchedBorder()); jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel1.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N jLabel1.setForeground(new java.awt.Color(255, 255, 255)); jLabel1.setText("Buscar:"); jPanel1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 46, -1, -1)); t_busca.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N t_busca.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_busca.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { t_buscaActionPerformed(evt); } }); t_busca.addKeyListener(new java.awt.event.KeyAdapter() { public void keyTyped(java.awt.event.KeyEvent evt) { t_buscaKeyTyped(evt); } }); jPanel1.add(t_busca, new org.netbeans.lib.awtextra.AbsoluteConstraints(695, 44, 200, -1)); b_busca.setIcon(new ImageIcon("imagenes/buscar1.png")); b_busca.setToolTipText("Busca una partida"); b_busca.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { b_buscaActionPerformed(evt); } }); jPanel1.add(b_busca, new org.netbeans.lib.awtextra.AbsoluteConstraints(900, 38, 23, 23)); b_pdf.setIcon(new ImageIcon("imagenes/pdf_icon.png")); b_pdf.setToolTipText("Exporta a PDF"); b_pdf.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { b_pdfActionPerformed(evt); } }); jPanel1.add(b_pdf, new org.netbeans.lib.awtextra.AbsoluteConstraints(839, 0, 23, 23)); b_exel.setIcon(new ImageIcon("imagenes/xls_icon.png")); b_exel.setToolTipText("Exporta a EXCEL"); b_exel.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { b_exelActionPerformed(evt); } }); jPanel1.add(b_exel, new org.netbeans.lib.awtextra.AbsoluteConstraints(865, 0, 23, 23)); b_enviar.setIcon(new ImageIcon("imagenes/send.png")); b_enviar.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT); b_enviar.setPressedIcon(new ImageIcon("imagenes/send2.png")); b_enviar.setRolloverIcon(new ImageIcon("imagenes/send1.png")); b_enviar.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseReleased(java.awt.event.MouseEvent evt) { b_enviarMouseReleased(evt); } public void mouseExited(java.awt.event.MouseEvent evt) { b_enviarMouseExited(evt); } public void mouseEntered(java.awt.event.MouseEvent evt) { b_enviarMouseEntered(evt); } }); b_enviar.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { b_enviarActionPerformed(evt); } }); jPanel1.add(b_enviar, new org.netbeans.lib.awtextra.AbsoluteConstraints(890, 0, 23, 23)); r_cerrar_cotizacion.setFont(new java.awt.Font("Tahoma", 0, 9)); // NOI18N r_cerrar_cotizacion.setForeground(new java.awt.Color(255, 255, 255)); r_cerrar_cotizacion.setText("Cerrar cotizacion"); r_cerrar_cotizacion.setToolTipText("Al marcar esta casilla el levantamiento se cerrara."); r_cerrar_cotizacion.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { r_cerrar_cotizacionActionPerformed(evt); } }); jPanel1.add(r_cerrar_cotizacion, new org.netbeans.lib.awtextra.AbsoluteConstraints(665, 23, -1, -1)); r_cerrar_valuacion.setFont(new java.awt.Font("Tahoma", 0, 9)); // NOI18N r_cerrar_valuacion.setForeground(new java.awt.Color(255, 255, 255)); r_cerrar_valuacion.setText("Autorizar valuacin"); r_cerrar_valuacion.setToolTipText("Al marcar esta casilla la valuacion se cerrara."); r_cerrar_valuacion.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { r_cerrar_valuacionActionPerformed(evt); } }); jPanel1.add(r_cerrar_valuacion, new org.netbeans.lib.awtextra.AbsoluteConstraints(665, 2, -1, -1)); jPanel6.setBackground(new java.awt.Color(2, 135, 242)); jPanel6.setBorder(javax.swing.BorderFactory.createTitledBorder( new javax.swing.border.LineBorder(new java.awt.Color(0, 0, 0), 1, true), "Refacciones", javax.swing.border.TitledBorder.LEFT, javax.swing.border.TitledBorder.TOP, new java.awt.Font("Tahoma", 1, 10))); // NOI18N jPanel6.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); t_costo_refacciones.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_costo_refacciones.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_costo_refacciones.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_costo_refacciones.setText("0.00"); t_costo_refacciones.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_costo_refacciones.setEnabled(false); t_costo_refacciones.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N t_costo_refacciones.addFocusListener(new java.awt.event.FocusAdapter() { public void focusGained(java.awt.event.FocusEvent evt) { t_costo_refaccionesFocusGained(evt); } }); t_costo_refacciones.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { t_costo_refaccionesActionPerformed(evt); } }); jPanel6.add(t_costo_refacciones, new org.netbeans.lib.awtextra.AbsoluteConstraints(47, 13, 88, -1)); jLabel3.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N jLabel3.setForeground(new java.awt.Color(255, 255, 255)); jLabel3.setText("Cotizado:"); jPanel6.add(jLabel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(7, 16, -1, -1)); l2.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N l2.setForeground(new java.awt.Color(255, 255, 255)); l2.setText("Cot. Final:"); jPanel6.add(l2, new org.netbeans.lib.awtextra.AbsoluteConstraints(140, 15, -1, -1)); t_ref_autorizadas_directo.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_ref_autorizadas_directo.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_ref_autorizadas_directo.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_ref_autorizadas_directo.setText("0.00"); t_ref_autorizadas_directo.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_ref_autorizadas_directo.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N t_ref_autorizadas_directo.setNextFocusableComponent(t_busca); t_ref_autorizadas_directo.addFocusListener(new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent evt) { t_ref_autorizadas_directoFocusLost(evt); } }); t_ref_autorizadas_directo.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { t_ref_autorizadas_directoActionPerformed(evt); } }); jPanel6.add(t_ref_autorizadas_directo, new org.netbeans.lib.awtextra.AbsoluteConstraints(188, 13, 88, -1)); jLabel5.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N jLabel5.setForeground(new java.awt.Color(255, 255, 255)); jLabel5.setText("Cia/Seg:"); jPanel6.add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(7, 37, -1, -1)); t_cia_seguros.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_cia_seguros.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_cia_seguros.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_cia_seguros.setText("0.00"); t_cia_seguros.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_cia_seguros.setEnabled(false); t_cia_seguros.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N jPanel6.add(t_cia_seguros, new org.netbeans.lib.awtextra.AbsoluteConstraints(47, 35, 88, -1)); jLabel6.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N jLabel6.setForeground(new java.awt.Color(255, 255, 255)); jLabel6.setText("Autorizado:"); jPanel6.add(jLabel6, new org.netbeans.lib.awtextra.AbsoluteConstraints(140, 38, -1, -1)); t_autorizado.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_autorizado.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_autorizado.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_autorizado.setText("0.00"); t_autorizado.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_autorizado.setEnabled(false); t_autorizado.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N jPanel6.add(t_autorizado, new org.netbeans.lib.awtextra.AbsoluteConstraints(188, 35, 88, -1)); t_autorizado1.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_autorizado1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_autorizado1.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_autorizado1.setText("0.00"); t_autorizado1.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_autorizado1.setEnabled(false); t_autorizado1.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N jPanel6.add(t_autorizado1, new org.netbeans.lib.awtextra.AbsoluteConstraints(280, 35, 88, -1)); jLabel8.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N jLabel8.setForeground(new java.awt.Color(255, 255, 255)); jLabel8.setText("Total en Vales"); jPanel6.add(jLabel8, new org.netbeans.lib.awtextra.AbsoluteConstraints(293, 20, -1, -1)); jPanel1.add(jPanel6, new org.netbeans.lib.awtextra.AbsoluteConstraints(2, 2, 375, 60)); jPanel7.setBackground(new java.awt.Color(2, 135, 242)); jPanel7.setBorder(javax.swing.BorderFactory.createTitledBorder( new javax.swing.border.LineBorder(new java.awt.Color(0, 0, 0), 1, true), "Mano de Obra", javax.swing.border.TitledBorder.LEFT, javax.swing.border.TitledBorder.TOP, new java.awt.Font("Tahoma", 1, 10))); // NOI18N jPanel7.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); jLabel11.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N jLabel11.setForeground(new java.awt.Color(255, 255, 255)); jLabel11.setText("Horas:"); jPanel7.add(jLabel11, new org.netbeans.lib.awtextra.AbsoluteConstraints(7, 16, -1, -1)); t_horas.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_horas.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_horas.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_horas.setText("0.00"); t_horas.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_horas.setEnabled(false); t_horas.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N jPanel7.add(t_horas, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 13, 88, -1)); jLabel13.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N jLabel13.setForeground(new java.awt.Color(255, 255, 255)); jLabel13.setText("Cot.:"); jPanel7.add(jLabel13, new org.netbeans.lib.awtextra.AbsoluteConstraints(7, 38, -1, -1)); t_importe.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_importe.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_importe.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_importe.setText("0.00"); t_importe.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_importe.setEnabled(false); t_importe.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N jPanel7.add(t_importe, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 35, 88, -1)); l4.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N l4.setForeground(new java.awt.Color(255, 255, 255)); l4.setText("Directa:"); jPanel7.add(l4, new org.netbeans.lib.awtextra.AbsoluteConstraints(132, 40, -1, -1)); t_mo_directa.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_mo_directa.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_mo_directa.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_mo_directa.setText("0.00"); t_mo_directa.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_mo_directa.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N t_mo_directa.setNextFocusableComponent(t_busca); t_mo_directa.addFocusListener(new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent evt) { t_mo_directaFocusLost(evt); } }); t_mo_directa.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { t_mo_directaActionPerformed(evt); } }); jPanel7.add(t_mo_directa, new org.netbeans.lib.awtextra.AbsoluteConstraints(178, 35, 88, -1)); t_mo_directa1.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_mo_directa1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_mo_directa1.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_mo_directa1.setText("0.00"); t_mo_directa1.setDisabledTextColor(new java.awt.Color(2, 38, 253)); t_mo_directa1.setFont(new java.awt.Font("Arial", 0, 11)); // NOI18N t_mo_directa1.setNextFocusableComponent(t_busca); t_mo_directa1.addFocusListener(new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent evt) { t_mo_directa1FocusLost(evt); } }); t_mo_directa1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { t_mo_directa1ActionPerformed(evt); } }); jPanel7.add(t_mo_directa1, new org.netbeans.lib.awtextra.AbsoluteConstraints(178, 10, 88, -1)); l6.setFont(new java.awt.Font("Arial", 0, 9)); // NOI18N l6.setForeground(new java.awt.Color(255, 255, 255)); l6.setText("Cot: Final:"); jPanel7.add(l6, new org.netbeans.lib.awtextra.AbsoluteConstraints(132, 16, -1, -1)); jPanel1.add(jPanel7, new org.netbeans.lib.awtextra.AbsoluteConstraints(380, 2, 275, 60)); add(jPanel1, java.awt.BorderLayout.PAGE_END); scroll.setHorizontalScrollBarPolicy(javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS); scroll.setPreferredSize(new java.awt.Dimension(453, 150)); t_datos.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0))); t_datos.setForeground(new java.awt.Color(102, 102, 102)); t_datos.setModel(new javax.swing.table.DefaultTableModel( new Object[][] { { null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null } }, new String[] { "N", "#", "Grupo", "D/M", "Rep Min ", "Title 6", "Title 7", "Title 8", "Title 9", "Title 10", "Title 11", "Title 12", "Title 13", "Title 14", "Title 15", "Title 16", "Title 17", "Title 18", "Title 19", "Title 20", "Title 21", "Title 22", "Title 23", "Title 24", "Title 25", "Title 26", "Title 27", "Title 28", "Title 29", "Title 30" })); t_datos.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF); t_datos.setGridColor(new java.awt.Color(102, 102, 102)); t_datos.getTableHeader().setReorderingAllowed(false); t_datos.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(java.awt.event.MouseEvent evt) { t_datosMouseClicked(evt); } }); t_datos.addKeyListener(new java.awt.event.KeyAdapter() { public void keyPressed(java.awt.event.KeyEvent evt) { t_datosKeyPressed(evt); } }); scroll.setViewportView(t_datos); add(scroll, java.awt.BorderLayout.CENTER); jPanel3.setBackground(new java.awt.Color(2, 135, 242)); jLabel29.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N jLabel29.setForeground(new java.awt.Color(254, 254, 254)); jLabel29.setText("Deducible:"); t_deducible.setBackground(new java.awt.Color(204, 255, 255)); t_deducible.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_deducible.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_deducible.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_deducible.setText("0.00"); t_deducible.setDisabledTextColor(new java.awt.Color(2, 38, 253)); jLabel30.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N jLabel30.setForeground(new java.awt.Color(254, 254, 254)); jLabel30.setText("Demerito:"); t_demerito.setBackground(new java.awt.Color(204, 255, 255)); t_demerito.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_demerito.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_demerito.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_demerito.setText("0.00"); t_demerito.setDisabledTextColor(new java.awt.Color(2, 38, 253)); b_ac.setText("Guardar"); b_ac.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { b_acActionPerformed(evt); } }); t_ok.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_ok.addKeyListener(new java.awt.event.KeyAdapter() { public void keyTyped(java.awt.event.KeyEvent evt) { t_okKeyTyped(evt); } public void keyReleased(java.awt.event.KeyEvent evt) { t_okKeyReleased(evt); } }); b_ok.setText("Ok"); b_ok.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { b_okActionPerformed(evt); } }); bt.setText("cotizacion"); bt.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { btActionPerformed(evt); } }); t_vales.setBackground(new java.awt.Color(204, 255, 255)); t_vales.setBorder(javax.swing.BorderFactory.createEtchedBorder()); t_vales.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory( new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#,##0.00")))); t_vales.setHorizontalAlignment(javax.swing.JTextField.RIGHT); t_vales.setText("0.00"); t_vales.setDisabledTextColor(new java.awt.Color(2, 38, 253)); jLabel31.setFont(new java.awt.Font("Arial", 0, 12)); // NOI18N jLabel31.setForeground(new java.awt.Color(254, 254, 254)); jLabel31.setText("Presupuesto:"); javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); jPanel3.setLayout(jPanel3Layout); jPanel3Layout.setHorizontalGroup(jPanel3Layout .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createSequentialGroup().addComponent(jLabel29) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(t_deducible, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jLabel30) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(t_demerito, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jLabel31) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(t_vales, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED).addComponent(b_ac) .addGap(133, 133, 133).addComponent(bt).addGap(34, 34, 34) .addComponent(t_ok, javax.swing.GroupLayout.PREFERRED_SIZE, 55, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(b_ok) .addContainerGap(116, Short.MAX_VALUE))); jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(t_ok, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b_ok).addComponent(bt)) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel31) .addComponent(t_vales, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(b_ac)) .addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel29).addComponent(jLabel30) .addComponent(t_deducible, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(t_demerito, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))); add(jPanel3, java.awt.BorderLayout.PAGE_START); }// </editor-fold>//GEN-END:initComponents private void b_buscaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_buscaActionPerformed // TODO add your handling code here: h = new Herramientas(user, 0); h.session(sessionPrograma); if (this.t_busca.getText().compareToIgnoreCase("") != 0) { if (x >= t_datos.getRowCount()) { x = 0; java.awt.Rectangle r = t_datos.getCellRect(x, 3, true); t_datos.scrollRectToVisible(r); } for (; x < t_datos.getRowCount(); x++) { if (t_datos.getValueAt(x, 3).toString().indexOf(t_busca.getText()) != -1) { t_datos.setRowSelectionInterval(x, x); t_datos.setColumnSelectionInterval(3, 3); java.awt.Rectangle r = t_datos.getCellRect(x, 3, true); t_datos.scrollRectToVisible(r); break; } } x++; } }//GEN-LAST:event_b_buscaActionPerformed private void b_pdfActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_pdfActionPerformed // TODO add your handling code here: Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); ventanaReportes.setSize(404, 220); ventanaReportes.setLocation((d.width / 2) - 202, (d.height / 2) - 110); ventanaReportes.setVisible(true); }//GEN-LAST:event_b_pdfActionPerformed private void b_exelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_exelActionPerformed // TODO add your handling code here: h = new Herramientas(user, 0); h.session(sessionPrograma); javax.swing.JFileChooser jF1 = new javax.swing.JFileChooser(); jF1.setFileFilter(new ExtensionFileFilter("Excel document (*.xls)", new String[] { "xls" })); String ruta = null; if (jF1.showSaveDialog(null) == jF1.APPROVE_OPTION) { ruta = jF1.getSelectedFile().getAbsolutePath(); File archivoXLS = new File(ruta + ".xls"); try { if (archivoXLS.exists()) archivoXLS.delete(); archivoXLS.createNewFile(); Workbook libro = new HSSFWorkbook(); FileOutputStream archivo = new FileOutputStream(archivoXLS); Sheet hoja = libro.createSheet("VALUACION"); //hoja.protectSheet("04650077"); for (int ren = 0; ren < (t_datos.getRowCount() + 1); ren++) { Row fila = hoja.createRow(ren); for (int col = 0; col < t_datos.getColumnCount(); col++) { Cell celda = fila.createCell(col); if (ren == 0) { celda.setCellValue(columnas[col]); } else { try { if (t_datos.getValueAt(ren - 1, col).toString().compareToIgnoreCase("true") == 0) celda.setCellValue(""); else { if (t_datos.getValueAt(ren - 1, col).toString() .compareToIgnoreCase("false") == 0) celda.setCellValue(""); else celda.setCellValue(t_datos.getValueAt(ren - 1, col).toString()); } } catch (Exception e) { celda.setCellValue(""); } } } } libro.write(archivo); archivo.close(); Desktop.getDesktop().open(archivoXLS); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto"); } } }//GEN-LAST:event_b_exelActionPerformed private void numerosFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_numerosFocusLost // TODO add your handling code here: entro = 1; }//GEN-LAST:event_numerosFocusLost private void instruccionKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_instruccionKeyTyped // TODO add your handling code here: char car = evt.getKeyChar(); evt.setKeyChar(Character.toUpperCase(evt.getKeyChar())); if (instruccion.getText().length() >= 100) evt.consume(); }//GEN-LAST:event_instruccionKeyTyped private void t_numeroKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t_numeroKeyTyped // TODO add your handling code here: char car = evt.getKeyChar(); if (t_numero.getText().length() >= 4) evt.consume(); if ((car < '0' || car > '9')) evt.consume(); }//GEN-LAST:event_t_numeroKeyTyped private void t_costo_refaccionesActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t_costo_refaccionesActionPerformed // TODO add your handling code here: }//GEN-LAST:event_t_costo_refaccionesActionPerformed private void t_costo_refaccionesFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_t_costo_refaccionesFocusGained // TODO add your handling code here: }//GEN-LAST:event_t_costo_refaccionesFocusGained private void r_cerrar_cotizacionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_r_cerrar_cotizacionActionPerformed // TODO add your handling code here: if (r_cerrar_cotizacion.isSelected() == true) { Session session = HibernateUtil.getSessionFactory().openSession(); try { user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getCerrarCotizaciones() == true) { h = new Herramientas(user, 0); h.session(sessionPrograma); int opt = JOptionPane.showConfirmDialog(this, "Confirma que deseas cerrar la cotizacin!"); if (opt == 0) { session.beginTransaction().begin(); Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); //***guardar la fecha de cierre del levantamiento***** Date fecha = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");//YYYY-MM-DD HH:MM:SS String valor = dateFormat.format(fecha); String[] fech = valor.split("-"); String[] hora = fech[2].split(":"); String[] aux = hora[0].split(" "); fech[2] = aux[0]; hora[0] = aux[1]; Calendar calendario3 = Calendar.getInstance(); calendario3.set(Integer.parseInt(fech[2]), Integer.parseInt(fech[1]) - 1, Integer.parseInt(fech[0]), Integer.parseInt(hora[0]), Integer.parseInt(hora[1]), Integer.parseInt(hora[2])); ord.setRCotizaCierre(calendario3.getTime()); session.update(ord); session.getTransaction().commit(); JOptionPane.showMessageDialog(null, "La cotizacion fue cerrada"); buscaCuentas(-1, -1); } else r_cerrar_cotizacion.setSelected(false); } else { r_cerrar_cotizacion.setSelected(false); JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { e.printStackTrace(); session.getTransaction().rollback(); r_cerrar_cotizacion.setSelected(false); JOptionPane.showMessageDialog(null, "Error no se pudo cerrar la cotizacin"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getAbrirCotizaciones() == true) { h = new Herramientas(user, 0); h.session(sessionPrograma); int opt = JOptionPane.showConfirmDialog(this, "Confirma que deseas abrir la cotizacin!"); if (opt == 0) { session.beginTransaction().begin(); Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); //***guardar el usuario que abrio el levantamiento***** ord.setRCotizaCierre(null); session.update(ord); session.getTransaction().commit(); JOptionPane.showMessageDialog(null, "La cotizacin fue abierta"); buscaCuentas(-1, -1); } else r_cerrar_cotizacion.setSelected(true); } else { r_cerrar_cotizacion.setSelected(true); JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { e.printStackTrace(); session.getTransaction().rollback(); r_cerrar_valuacion.setSelected(true); JOptionPane.showMessageDialog(null, "Error no se pudo abrir la cotizacion"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } }//GEN-LAST:event_r_cerrar_cotizacionActionPerformed private void r_cerrar_valuacionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_r_cerrar_valuacionActionPerformed // TODO add your handling code here: if (r_cerrar_valuacion.isSelected() == true) { Session session = HibernateUtil.getSessionFactory().openSession(); try { user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getCerrarValuacion() == true) { h = new Herramientas(user, 0); h.session(sessionPrograma); int opt = JOptionPane.showConfirmDialog(this, "Confirma que deseas autorizar la valuacin!"); if (opt == 0) { session.beginTransaction().begin(); Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); //***guardar la fecha de cierre del levantamiento***** Date fecha = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");//YYYY-MM-DD HH:MM:SS String valor = dateFormat.format(fecha); String[] fech = valor.split("-"); String[] hora = fech[2].split(":"); String[] aux = hora[0].split(" "); fech[2] = aux[0]; hora[0] = aux[1]; Calendar calendario3 = Calendar.getInstance(); calendario3.set(Integer.parseInt(fech[2]), Integer.parseInt(fech[1]) - 1, Integer.parseInt(fech[0]), Integer.parseInt(hora[0]), Integer.parseInt(hora[1]), Integer.parseInt(hora[2])); ord.setRValuacionCierre(calendario3.getTime()); ord.setUsuarioByRValuacionCierreAsigno(user); session.update(ord); session.getTransaction().commit(); JOptionPane.showMessageDialog(null, "La valuacin fue autorizada"); buscaCuentas(-1, -1); } else r_cerrar_valuacion.setSelected(false); } else { r_cerrar_valuacion.setSelected(false); JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { e.printStackTrace(); session.getTransaction().rollback(); r_cerrar_valuacion.setSelected(false); JOptionPane.showMessageDialog(null, "Error no se pudo cerrar la valuacin"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getAbrirValuacion() == true) { h = new Herramientas(user, 0); h.session(sessionPrograma); int opt = JOptionPane.showConfirmDialog(this, "Confirma que deseas abrir la valuacin!"); if (opt == 0) { session.beginTransaction().begin(); Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); //***guardar el usuario que abrio el levantamiento***** ord.setRValuacionCierre(null); ord.setUsuarioByRValuacionCierreAsigno(user); session.update(ord); session.getTransaction().commit(); JOptionPane.showMessageDialog(null, "La valuacin fue abierta"); buscaCuentas(-1, -1); } else r_cerrar_valuacion.setSelected(true); } else { r_cerrar_valuacion.setSelected(true); JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { e.printStackTrace(); session.getTransaction().rollback(); r_cerrar_valuacion.setSelected(true); JOptionPane.showMessageDialog(null, "Error no se pudo abrir la valuacin"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } }//GEN-LAST:event_r_cerrar_valuacionActionPerformed private void t_porcentajeActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t_porcentajeActionPerformed // TODO add your handling code here: if (r_cerrar_valuacion.isSelected() == false) { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); if (t_porcentaje.getText().compareTo("") != 0) { ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); Partida[] cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden())) .add(Restrictions.eq("autorizadoValuacion", true)).list().toArray(new Partida[0]); if (cuentas != null) { for (int p = 0; p < cuentas.length; p++) { cuentas[p].setPorcentaje(Double.parseDouble(t_porcentaje.getText())); session.update(cuentas[p]); } session.getTransaction().commit(); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } JOptionPane.showMessageDialog(null, "Las partidas fueron actualizadas"); } } else { JOptionPane.showMessageDialog(null, "no se puede introducir datos vacios"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } buscaCuentas(-1, -1); }//GEN-LAST:event_t_porcentajeActionPerformed private void t_porcentajeKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t_porcentajeKeyTyped // TODO add your handling code here: char car = evt.getKeyChar(); if (t_porcentaje.getText().length() >= 3) evt.consume(); if ((car < '0' || car > '9')) evt.consume(); }//GEN-LAST:event_t_porcentajeKeyTyped private void t_ref_presupuestoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t_ref_presupuestoActionPerformed // TODO add your handling code here: t_busca.requestFocus(); }//GEN-LAST:event_t_ref_presupuestoActionPerformed private void t_ref_presupuestoFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_t_ref_presupuestoFocusLost // TODO add your handling code here: if (t_ref_presupuesto.getText().compareTo("") == 0) { t_ref_presupuesto.setText("0"); t_ref_presupuesto.setValue(0.00); } Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); //if(user.getEditaRefPresupuesto()==true) //{ h = new Herramientas(user, 0); h.session(sessionPrograma); ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); double valor = Double.parseDouble(t_ref_presupuesto.getText()); ord.setRefPresupuesto(valor); session.update(ord); session.getTransaction().commit(); /*} else JOptionPane.showMessageDialog(null, "Acceso denegado!");*/ } catch (Exception e) { session.getTransaction().rollback(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos!"); e.printStackTrace(); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_t_ref_presupuestoFocusLost private void t_ref_autorizadas_directoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t_ref_autorizadas_directoActionPerformed // TODO add your handling code here: t_busca.requestFocus(); }//GEN-LAST:event_t_ref_autorizadas_directoActionPerformed private void t_ref_autorizadas_directoFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_t_ref_autorizadas_directoFocusLost // TODO add your handling code here: if (t_mo_directa.getText().compareTo("") == 0) { t_mo_directa.setText("0"); t_mo_directa.setValue(0.00); } try { t_mo_directa.commitEdit(); } catch (Exception e) { e.printStackTrace(); } if (t_mo_directa1.getText().compareTo("") == 0) { t_mo_directa1.setText("0"); t_mo_directa1.setValue(0.00); } try { t_mo_directa1.commitEdit(); } catch (Exception e) { e.printStackTrace(); } if (t_ref_autorizadas_directo.getText().compareTo("") == 0) { t_ref_autorizadas_directo.setText("0"); t_ref_autorizadas_directo.setValue(0.00); } try { t_ref_autorizadas_directo.commitEdit(); } catch (Exception e) { e.printStackTrace(); } Session session = HibernateUtil.getSessionFactory().openSession(); try { session.getTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); h = new Herramientas(user, 0); h.session(sessionPrograma); ord = (Orden) session.load(Orden.class, ord.getIdOrden()); ord.setMoDirecta(((Number) t_mo_directa.getValue()).doubleValue()); ord.setRefAutorizadas(((Number) t_ref_autorizadas_directo.getValue()).doubleValue()); ord.setMoPresupuestada(((Number) t_mo_directa1.getValue()).doubleValue()); session.update(ord); session.getTransaction().commit(); } catch (Exception e) { session.getTransaction().rollback(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos!"); e.printStackTrace(); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_t_ref_autorizadas_directoFocusLost private void t_mo_directaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t_mo_directaActionPerformed // TODO add your handling code here: t_busca.requestFocus(); }//GEN-LAST:event_t_mo_directaActionPerformed private void t_mo_directaFocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_t_mo_directaFocusLost // TODO add your handling code here: if (t_mo_directa.getText().compareTo("") == 0) { t_mo_directa.setText("0"); t_mo_directa.setValue(0.00); } try { t_mo_directa.commitEdit(); } catch (Exception e) { e.printStackTrace(); } if (t_mo_directa1.getText().compareTo("") == 0) { t_mo_directa1.setText("0"); t_mo_directa1.setValue(0.00); } try { t_mo_directa1.commitEdit(); } catch (Exception e) { e.printStackTrace(); } if (t_ref_autorizadas_directo.getText().compareTo("") == 0) { t_ref_autorizadas_directo.setText("0"); t_ref_autorizadas_directo.setValue(0.00); } try { t_ref_autorizadas_directo.commitEdit(); } catch (Exception e) { e.printStackTrace(); } Session session = HibernateUtil.getSessionFactory().openSession(); try { session.getTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); h = new Herramientas(user, 0); h.session(sessionPrograma); ord = (Orden) session.load(Orden.class, ord.getIdOrden()); ord.setMoDirecta(((Number) t_mo_directa.getValue()).doubleValue()); ord.setRefAutorizadas(((Number) t_ref_autorizadas_directo.getValue()).doubleValue()); ord.setMoPresupuestada(((Number) t_mo_directa1.getValue()).doubleValue()); session.update(ord); session.getTransaction().commit(); } catch (Exception e) { session.getTransaction().rollback(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos!"); e.printStackTrace(); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_t_mo_directaFocusLost private void t_datosMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_t_datosMouseClicked // TODO add your handling code here: /*if(t_datos.getSelectedRow()>=0) { if(t_datos.getSelectedColumn()==13) { numeros.removeAllItems(); numeros.addItem("S/C"); numeros.setSelectedItem("S/C"); Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); Partida partida=(Partida) session.createCriteria(Partida.class).add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))).add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0).toString()))).add(Restrictions.eq("subPartida", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))).setMaxResults(1).uniqueResult(); Ejemplar[] codigos = (Ejemplar[]) partida.getCatalogo().getEjemplars().toArray(new Ejemplar[0]); Ejemplar codigoAux= new Ejemplar(); for(int k=0;k<codigos.length;k++) { for(int f=0;f<(codigos.length-1)-k;f++) { if (codigos[f].getIdParte().compareTo(codigos[f+1].getIdParte())==1) { codigoAux=codigos[f]; codigos[f]=codigos[f+1]; codigos[f+1]=codigoAux; } } } if(codigos.length>0) { for(int i=0; i<codigos.length; i++) { numeros.addItem(codigos[i].getIdParte()); } } session.beginTransaction().commit(); }catch(Exception e) { System.out.println(e); } if(session!=null) if(session.isOpen()==true) session.close(); } }*/ }//GEN-LAST:event_t_datosMouseClicked private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed // TODO add your handling code here: //h=new Herramientas(user, 0); //h.session(sessionPrograma); Session session = HibernateUtil.getSessionFactory().openSession(); try { DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00"); DecimalFormat formatoDecimal = new DecimalFormat("####0.0"); formatoPorcentaje.setMinimumFractionDigits(2); session.beginTransaction().begin(); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); //Orden ord=buscaApertura(); PDF reporte = new PDF(); Date fecha = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS String valor = dateFormat.format(fecha); File folder = new File("reportes/" + ord.getIdOrden()); folder.mkdirs(); reporte.Abrir(PageSize.LETTER, "Valuacin", "reportes/" + ord.getIdOrden() + "/" + valor + "-valuacion.pdf"); Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL); BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; float tam[] = new float[] { 15, 15, 60, 140, 14, 14, 14, 14, 14, 14, 25 }; PdfPTable tabla = reporte.crearTabla(11, tam, 100, Element.ALIGN_LEFT); cabecera(reporte, bf, tabla); int ren = 0; double dm = 0d, cam = 0d, min = 0d, med = 0d, max = 0d, pin = 0d, tot = 0d; for (int i = 0; i < t_datos.getRowCount(); i++) { if (t_datos.getValueAt(i, 38).toString().compareTo("e") != 0) { double suma = 0d; double v = 0.0d; tabla.addCell(reporte.celda("" + t_datos.getValueAt(i, 10).toString(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(t_datos.getValueAt(i, 11).toString(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(t_datos.getValueAt(i, 2).toString(), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(t_datos.getValueAt(i, 3).toString(), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); if (t_datos.getValueAt(i, 4) != null) { v = Double.parseDouble(t_datos.getValueAt(i, 4).toString()) * Double.parseDouble(t_datos.getValueAt(i, 10).toString()); tabla.addCell( reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); suma += Double.parseDouble(t_datos.getValueAt(i, 4).toString()); dm += v; } else tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (t_datos.getValueAt(i, 8) != null) { v = Double.parseDouble(t_datos.getValueAt(i, 8).toString()) * Double.parseDouble(t_datos.getValueAt(i, 10).toString()); tabla.addCell( reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); suma += Double.parseDouble(t_datos.getValueAt(i, 8).toString()); cam += v; } else tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (t_datos.getValueAt(i, 5) != null) { v = Double.parseDouble(t_datos.getValueAt(i, 5).toString()) * Double.parseDouble(t_datos.getValueAt(i, 10).toString()); tabla.addCell( reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); suma += Double.parseDouble(t_datos.getValueAt(i, 5).toString()); min += v; } else tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (t_datos.getValueAt(i, 6) != null) { v = Double.parseDouble(t_datos.getValueAt(i, 6).toString()) * Double.parseDouble(t_datos.getValueAt(i, 10).toString()); tabla.addCell( reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); suma += Double.parseDouble(t_datos.getValueAt(i, 6).toString()); med += v; } else tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (t_datos.getValueAt(i, 7) != null) { v = Double.parseDouble(t_datos.getValueAt(i, 7).toString()) * Double.parseDouble(t_datos.getValueAt(i, 10).toString()); tabla.addCell( reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); suma += Double.parseDouble(t_datos.getValueAt(i, 7).toString()); max += v; } else tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (t_datos.getValueAt(i, 9) != null) { v = Double.parseDouble(t_datos.getValueAt(i, 9).toString()) * Double.parseDouble(t_datos.getValueAt(i, 10).toString()); tabla.addCell( reporte.celda(new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); suma += Double.parseDouble(t_datos.getValueAt(i, 9).toString()); pin += v; } else tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); suma *= ord.getCompania().getImporteHora(); suma *= Double.parseDouble(t_datos.getValueAt(i, 10).toString()); tabla.addCell(reporte.celda(formatoPorcentaje.format(suma), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tot += suma; /*if(ren==38) { reporte.agregaObjeto(tabla); reporte.writer.newPage(); tabla=reporte.crearTabla(11, tam, 100, Element.ALIGN_LEFT); cabecera(reporte, bf, tabla); ren=-1; } ren++;*/ } } Double tot_horas = dm + cam + min + med + max + pin; tabla.addCell(reporte.celda( "Costo M.O:$" + formatoPorcentaje.format(ord.getCompania().getImporteHora()) + " Total de Horas:" + formatoDecimal.format(tot_horas), font, contenido, derecha, 4, 1, Rectangle.RIGHT)); tabla.addCell(reporte.celda("" + formatoDecimal.format(dm), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + formatoDecimal.format(cam), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + formatoDecimal.format(min), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + formatoDecimal.format(med), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + formatoDecimal.format(max), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + formatoDecimal.format(pin), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(formatoPorcentaje.format(tot), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(" ", font, contenido, izquierda, 4, 1, Rectangle.NO_BORDER)); tabla.addCell(reporte.celda(" ", font, contenido, izquierda, 7, 1, Rectangle.TOP)); tabla.setHeaderRows(2); PdfPTable tabla1 = reporte.crearTabla(11, tam, 100, Element.ALIGN_LEFT); tabla1.addCell(reporte.celda("OBSERVACIONES", font, contenido, izquierda, 11, 1, Rectangle.NO_BORDER)); tabla1.addCell(reporte.celda(" ", font, contenido, izquierda, 11, 1, Rectangle.BOTTOM)); tabla1.addCell(reporte.celda(" ", font, contenido, izquierda, 11, 1, Rectangle.BOTTOM)); tabla1.addCell(reporte.celda(" ", font, contenido, izquierda, 11, 1, Rectangle.BOTTOM)); tabla1.addCell(reporte.celda(" ", font, contenido, izquierda, 11, 1, Rectangle.BOTTOM)); reporte.agregaObjeto(tabla); reporte.agregaObjeto(tabla1); reporte.cerrar(); reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-valuacion.pdf"); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto."); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_jButton1ActionPerformed private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed // TODO add your handling code here: //h=new Herramientas(user, 0); //h.session(sessionPrograma); Session session = HibernateUtil.getSessionFactory().openSession(); try { DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00"); formatoPorcentaje.setMinimumFractionDigits(2); session.beginTransaction().begin(); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); PDF reporte = new PDF(); Date fecha = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS String valor = dateFormat.format(fecha); File folder = new File("reportes/" + ord.getIdOrden()); folder.mkdirs(); reporte.Abrir(PageSize.LETTER.rotate(), "Valuacin", "reportes/" + ord.getIdOrden() + "/" + valor + "-ref_precio.pdf"); Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL); BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; int ren = 0; double dm = 0d, cam = 0d, min = 0d, med = 0d, max = 0d, pin = 0d, tot = 0d; session.beginTransaction().begin(); Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); Configuracion config = (Configuracion) session.get(Configuracion.class, 1); /*Todas Autorizadas Sin Autorizar*/ Partida[] cuentas = new Partida[] {}; switch (cb_partidas.getSelectedItem().toString()) { case "Todas": switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espHoj", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Mecanica": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espMec", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Suspension": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espSus", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Electrico": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espEle", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Pintura": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.or( Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Todas": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; } break; case "Autorizadas": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", true)).add(Restrictions.eq("espHoj", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Mecanica": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", true)).add(Restrictions.eq("espMec", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Suspension": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", true)).add(Restrictions.eq("espSus", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Electrico": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", true)).add(Restrictions.eq("espEle", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Pintura": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", true)) .add(Restrictions.or( Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Todas": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; } break; case "Sin Autorizar": switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", false)).add(Restrictions.eq("espHoj", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Mecanica": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", false)).add(Restrictions.eq("espMec", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Suspension": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", false)).add(Restrictions.eq("espSus", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Electrico": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", false)).add(Restrictions.eq("espEle", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Pintura": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", false)) .add(Restrictions.or( Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Todas": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; } break; case "Marcadas": if (t_datos.getSelectedRows().length > 0) { String consulta = "from Partida where concat(idEvaluacion, subPartida) in ("; int[] selec = t_datos.getSelectedRows(); for (int x = 0; x < selec.length; x++) { if (x > 0) consulta += ", "; consulta += t_datos.getValueAt(selec[x], 0).toString() + t_datos.getValueAt(selec[x], 1).toString(); } switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": consulta += ") AND(espHoj=true) "; break; case "Mecanica": consulta += ") AND(espMec=true) "; break; case "Suspension": consulta += ") AND(espSus=true) "; break; case "Electrico": consulta += ") AND(espEle=true) "; break; case "Pintura": consulta += ")) AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) "; break; case "Todas": consulta += ") "; break; } consulta += "AND (ordenByIdOrden.idOrden=" + orden + ") order by idEvaluacion asc, subPartida asc"; Query q = session.createQuery(consulta); cuentas = (Partida[]) q.list().toArray(new Partida[0]); } else cuentas = new Partida[0]; break; } /*if(this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra")!=0) {*/ float tam[]; if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra") == 0) tam = new float[] { 12, 12, 50, 110, 15, 15, 25, 25, 25, 25 }; else tam = new float[] { 12, 12, 50, 110, 15, 15, 25, 25, 35, 12 }; PdfPTable tabla = reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT); cabecera1(reporte, bf, tabla); for (int i = 0; i < cuentas.length; i++) { double suma = 0d; tabla.addCell(reporte.celda("" + cuentas[i].getIdEvaluacion(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getSubPartida(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (cuentas[i].getEjemplar() != null) tabla.addCell(reporte.celda(cuentas[i].getEjemplar().getIdParte(), font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else tabla.addCell(reporte.celda("S/N", font, contenido, centro, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(cuentas[i].getCatalogo().getNombre(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getCant(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell( reporte.celda(cuentas[i].getMed(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Cotizado") == 0) { tabla.addCell(reporte.celda(formatoPorcentaje.format(cuentas[i].getCU()), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); Double precio = cuentas[i].getCU() * cuentas[i].getCant(); tot += precio; tabla.addCell(reporte.celda(formatoPorcentaje.format(precio), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (cuentas[i].isOri() == true) { tabla.addCell(reporte.celda("Ori", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); } else { if (cuentas[i].isNal() == true) tabla.addCell(reporte.celda("Nal", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isDesm() == true) tabla.addCell( reporte.celda("Des", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isPd() == true) tabla.addCell(reporte.celda("Recon", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else tabla.addCell( reporte.celda(" ", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); } } } } if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Autorizado") == 0) { tabla.addCell(reporte.celda(formatoPorcentaje.format(cuentas[i].getPrecioAutCU()), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); Double precio = cuentas[i].getPrecioAutCU() * cuentas[i].getCant(); tot += precio; tabla.addCell(reporte.celda(formatoPorcentaje.format(precio), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (cuentas[i].isOri() == true) tabla.addCell(reporte.celda("Ori", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isNal() == true) tabla.addCell(reporte.celda("Nal", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isDesm() == true) tabla.addCell( reporte.celda("Des", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isPd() == true) tabla.addCell(reporte.celda("Recon", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else tabla.addCell( reporte.celda(" ", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); } } } } if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compaia") == 0) { Double costo = 0.0 + Math.round(cuentas[i].getCU() / (1 - (cuentas[i].getPorcentaje() * 0.01))); tabla.addCell(reporte.celda(formatoPorcentaje.format(costo), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); Double precio = costo * cuentas[i].getCant(); tot += precio; tabla.addCell(reporte.celda(formatoPorcentaje.format(precio), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (cuentas[i].isOri() == true) tabla.addCell(reporte.celda("Ori", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isNal() == true) tabla.addCell(reporte.celda("Nal", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isDesm() == true) tabla.addCell( reporte.celda("Des", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isPd() == true) tabla.addCell(reporte.celda("Recon", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else tabla.addCell( reporte.celda(" ", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); } } } } if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra") == 0) { //costo de cotizacion tabla.addCell(reporte.celda(formatoPorcentaje.format(cuentas[i].getCU()), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); //costo de compra si ya fue comprado //PartidaPedido pc = (PartidaPedido)session.createCriteria(PartidaPedido.class).add(Restrictions.eq("partida.idPartida", cuentas[i].getIdPartida())).add(Restrictions.ne("pedido", null)).addOrder(Order.desc("idPartidaPedido")).setMaxResults(1).uniqueResult(); double pcom = 0d; if (cuentas[i].getPedido() != null) { pcom = cuentas[i].getPcp(); tabla.addCell(reporte.celda(formatoPorcentaje.format(pcom), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); Double precio = pcom * cuentas[i].getCantPcp(); tot += precio; } else tabla.addCell(reporte.celda("0.00", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); //cosoto autorizado tabla.addCell(reporte.celda(formatoPorcentaje.format(cuentas[i].getPrecioAutCU()), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); //Utlidad double util = cuentas[i].getPrecioAutCU() - pcom; tabla.addCell(reporte.celda(formatoPorcentaje.format(util), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); } /*if(ren==37) { reporte.agregaObjeto(tabla); reporte.writer.newPage(); tabla=reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT); cabecera1(reporte, bf, tabla); ren=-1; } ren++;*/ } if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra") != 0) { tabla.addCell(reporte.celda(" ", font, contenido, derecha, 7, 1, Rectangle.TOP)); tabla.addCell(reporte.celda(formatoPorcentaje.format(tot), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(" ", font, contenido, derecha, 2, 1, Rectangle.TOP)); } else { tabla.addCell(reporte.celda(" ", font, contenido, derecha, 7, 1, Rectangle.TOP)); tabla.addCell(reporte.celda(formatoPorcentaje.format(tot), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(" ", font, contenido, derecha, 2, 1, Rectangle.TOP)); } tabla.setHeaderRows(1); reporte.agregaObjeto(tabla); //} reporte.cerrar(); reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-ref_precio.pdf"); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_jButton2ActionPerformed private void cb_precioActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cb_precioActionPerformed // TODO add your handling code here: }//GEN-LAST:event_cb_precioActionPerformed private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed // TODO add your handling code here: h = new Herramientas(user, 0); h.session(sessionPrograma); Session session = HibernateUtil.getSessionFactory().openSession(); try { //NumberFormat formatoPorcentaje = NumberFormat.getCurrencyInstance(); DecimalFormat formatoPorcentaje = new DecimalFormat("#,###.00"); formatoPorcentaje.setMinimumFractionDigits(2); session.beginTransaction().begin(); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); //Orden ord=buscaApertura(); PDF reporte = new PDF(); Date fecha = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS String valor = dateFormat.format(fecha); File folder = new File("reportes/" + ord.getIdOrden()); folder.mkdirs(); reporte.Abrir(PageSize.LETTER.rotate(), "Valuacin", "reportes/" + ord.getIdOrden() + "/" + valor + "-ref_sin_precio.pdf"); Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL); BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; int ren = 0; double dm = 0d, cam = 0d, min = 0d, med = 0d, max = 0d, pin = 0d, tot = 0d; session.beginTransaction().begin(); Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); /*Todas Autorizadas Sin Autorizar*/ Partida[] cuentas = new Partida[] {}; switch (cb_partidas.getSelectedItem().toString()) { case "Todas": switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espHoj", true)).add(Restrictions.eq("refCoti", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Mecanica": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espMec", true)).add(Restrictions.eq("refCoti", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Suspension": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espSus", true)).add(Restrictions.eq("refCoti", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Electrico": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espEle", true)).add(Restrictions.eq("refCoti", true)) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Pintura": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("refCoti", true)) .add(Restrictions.or( Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Todas": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("refCoti", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; } break; case "Autorizadas": switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espHoj", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Mecanica": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espMec", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Suspension": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espSus", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Electrico": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espEle", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Pintura": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("refCoti", true)).add(Restrictions.eq("autorizado", true)) .add(Restrictions.or( Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Todas": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("refCoti", true)).addOrder(Order.asc("idEvaluacion")) .add(Restrictions.eq("autorizado", true)).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; } break; case "Sin Autorizar": switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espHoj", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Mecanica": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espMec", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Suspension": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espSus", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Electrico": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espEle", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); break; case "Pintura": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("espEle", true)).add(Restrictions.eq("refCoti", true)) .add(Restrictions.eq("autorizado", false)) .add(Restrictions.or( Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))) .addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; case "Todas": cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("refCoti", true)).addOrder(Order.asc("idEvaluacion")) .add(Restrictions.eq("autorizado", false)).addOrder(Order.asc("subPartida")).list() .toArray(new Partida[0]); break; } break; case "Marcadas": if (t_datos.getSelectedRows().length > 0) { //cuentas= (Partida[]) session.createCriteria(Partida.class).add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))).add(Restrictions.and(Restrictions.in("subPartida", seleccion(1)), Restrictions.in("idEvaluacion", seleccion(0)))).addOrder(Order.asc("idEvaluacion")).addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); String consulta = "from Partida where concat(idEvaluacion, subPartida) in ("; int[] selec = t_datos.getSelectedRows(); for (int x = 0; x < selec.length; x++) { if (x > 0) consulta += ", "; consulta += t_datos.getValueAt(selec[x], 0).toString() + t_datos.getValueAt(selec[x], 1).toString(); } switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": consulta += ") AND(espHoj=true) "; break; case "Mecanica": consulta += ") AND(espMec=true) "; break; case "Suspension": consulta += ") AND(espSus=true) "; break; case "Electrico": consulta += ") AND(espEle=true) "; break; case "Pintura": consulta += ")) AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) "; break; case "Todas": consulta += ") "; break; } consulta += "AND (ordenByIdOrden.idOrden=" + orden + ") order by idEvaluacion asc, subPartida asc"; Query q = session.createQuery(consulta); cuentas = (Partida[]) q.list().toArray(new Partida[0]); } else cuentas = new Partida[0]; break; } float tam[] = new float[] { 12, 12, 50, 110, 15, 15, 25, 25, 35, 12 }; PdfPTable tabla = reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT); cabecera1(reporte, bf, tabla); for (int i = 0; i < cuentas.length; i++) { double suma = 0d; tabla.addCell(reporte.celda("" + cuentas[i].getIdEvaluacion(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getSubPartida(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (cuentas[i].getEjemplar() != null) tabla.addCell(reporte.celda(cuentas[i].getEjemplar().getIdParte(), font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else tabla.addCell(reporte.celda("S/N", font, contenido, centro, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(cuentas[i].getCatalogo().getNombre(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getCant(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell( reporte.celda(cuentas[i].getMed(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (cuentas[i].isOri() == true) { tabla.addCell(reporte.celda("Ori", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); } else { if (cuentas[i].isNal() == true) { tabla.addCell(reporte.celda("Nal", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); } else { if (cuentas[i].isDesm() == true) tabla.addCell(reporte.celda("Des", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else { if (cuentas[i].isPd() == true) tabla.addCell( reporte.celda("Rec", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else tabla.addCell( reporte.celda(" ", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); } } } /*if(ren==37) { reporte.agregaObjeto(tabla); reporte.writer.newPage(); tabla=reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT); cabecera1(reporte, bf, tabla); ren=-1; } ren++;*/ } tabla.setHeaderRows(1); reporte.agregaObjeto(tabla); reporte.cerrar(); reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-ref_sin_precio.pdf"); } catch (Exception e) { e.printStackTrace(); e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto."); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_jButton3ActionPerformed private void t_buscaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t_buscaActionPerformed // TODO add your handling code here: h = new Herramientas(user, 0); h.session(sessionPrograma); if (this.t_busca.getText().compareToIgnoreCase("") != 0) { //buscaCuentas(); if (x >= t_datos.getRowCount()) { x = 0; java.awt.Rectangle r = t_datos.getCellRect(x, 3, true); t_datos.scrollRectToVisible(r); } for (; x < t_datos.getRowCount(); x++) { if (t_datos.getValueAt(x, 3).toString().indexOf(t_busca.getText()) != -1) { t_datos.setRowSelectionInterval(x, x); t_datos.setColumnSelectionInterval(3, 3); java.awt.Rectangle r = t_datos.getCellRect(x, 3, true); t_datos.scrollRectToVisible(r); break; } } x++; } }//GEN-LAST:event_t_buscaActionPerformed private void t_buscaKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t_buscaKeyTyped // TODO add your handling code here: char car = evt.getKeyChar(); evt.setKeyChar(Character.toUpperCase(evt.getKeyChar())); }//GEN-LAST:event_t_buscaKeyTyped private void b_acActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_acActionPerformed // TODO add your handling code here: h = new Herramientas(this.user, menu); Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); ord = (Orden) session.get(Orden.class, Integer.parseInt(this.orden)); if (t_deducible.getText().compareTo("") != 0) ord.setDeducible(((Number) t_deducible.getValue()).doubleValue()); else ord.setDeducible(null); if (t_demerito.getText().compareTo("") != 0) ord.setDemerito(((Number) t_demerito.getValue()).doubleValue()); else ord.setDemerito(null); if (t_vales.getText().compareTo("") != 0) ord.setVales(((Number) t_vales.getValue()).doubleValue()); else ord.setVales(0.0d); session.update(ord); session.beginTransaction().commit(); JOptionPane.showMessageDialog(this, "Los datos han sido almacenados"); } catch (Exception e) { session.beginTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar la actualizacion."); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_b_acActionPerformed private void t_okKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t_okKeyTyped // TODO add your handling code here: char car = evt.getKeyChar(); if (t_ok.getText().length() >= 3) evt.consume(); if ((car < '0' || car > '9')) evt.consume(); }//GEN-LAST:event_t_okKeyTyped private void t_okKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t_okKeyReleased // TODO add your handling code here: if (t_ok.getText().compareTo("") != 0) { if (Integer.parseInt(t_ok.getText()) > 100 || Integer.parseInt(t_ok.getText()) < 0) t_ok.setText("0"); } }//GEN-LAST:event_t_okKeyReleased private void b_okActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_okActionPerformed // TODO add your handling code here: if (t_ok.getText().compareTo("") != 0) { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); ord = (Orden) session.get(Orden.class, ord.getIdOrden()); Partida[] cuentas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden())) .add(Restrictions.eq("refCoti", true)).add(Restrictions.eq("autorizadoValuacion", true)) .list().toArray(new Partida[0]); for (int g = 0; g < cuentas.length; g++) { cuentas[g].setPorcentaje(Integer.parseInt(this.t_ok.getText())); cuentas[g].setPrecioAutCU( 0.0 + Math.round(cuentas[g].getCU() / (1 - (cuentas[g].getPorcentaje() * 0.01)))); cuentas[g].setPrecioFactura(cuentas[g].getPrecioAutCU()); session.update(cuentas[g]); } session.beginTransaction().commit(); this.buscaCuentas(-1, -1); JOptionPane.showMessageDialog(this, "Se actualizaron todos los porcentajes!"); } catch (Exception e) { session.beginTransaction().rollback(); JOptionPane.showMessageDialog(this, "Error al actualizar los porcentajes!"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } else JOptionPane.showMessageDialog(this, "Debes ingresar el porcentaje!"); }//GEN-LAST:event_b_okActionPerformed private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed // TODO add your handling code here: //h=new Herramientas(user, 0); //h.session(sessionPrograma); Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00"); DecimalFormat formatoDecimal = new DecimalFormat("####0.0"); formatoPorcentaje.setMinimumFractionDigits(2); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); //Orden ord=buscaApertura(); PDF reporte = new PDF(); Date fecha = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS String valor = dateFormat.format(fecha); File folder = new File("reportes/" + ord.getIdOrden()); folder.mkdirs(); reporte.Abrir(PageSize.LETTER.rotate(), "Operaciones", "reportes/" + ord.getIdOrden() + "/" + valor + "-operaciones.pdf"); Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL); BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; float tam[] = new float[] { 15, 12, 10, 10, 10, 10, 15, 15, 15, 10, 10, 10, 10, 10, 10, 10, 10, 140, 90 }; PdfPTable tabla = reporte.crearTabla(19, tam, 100, Element.ALIGN_LEFT); cabecera2(reporte, bf, tabla, " Cambios "); Partida[] cuentas = new Partida[0]; ; Criteria cr; switch (cb_partidas.getSelectedItem().toString()) { case "Marcadas": if (t_datos.getSelectedRows().length > 0) { String consulta = "from Partida where (concat(idEvaluacion, subPartida) in ("; int[] selec = t_datos.getSelectedRows(); for (int x = 0; x < selec.length; x++) { if (x > 0) consulta += ", "; consulta += t_datos.getValueAt(selec[x], 0).toString() + t_datos.getValueAt(selec[x], 1).toString(); } switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": consulta += ")) AND(espHoj=true) "; break; case "Mecanica": consulta += ")) AND(espMec=true) "; break; case "Suspension": consulta += ")) AND(espSus=true) "; break; case "Electrico": consulta += ")) AND(espEle=true) "; break; case "Pintura": consulta += ")) AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) "; break; case "Todas": consulta += ")) "; break; } consulta += "AND (ordenByIdOrden.idOrden=" + orden + ") AND (autorizadoValuacion=true) AND (intCamb>-1) order by idEvaluacion asc, subPartida asc"; Query q = session.createQuery(consulta); cuentas = (Partida[]) q.list().toArray(new Partida[0]); } else cuentas = new Partida[0]; break; case "Sin Autorizar": cr = session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden())) .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.eq("autorizado", false)) .add(Restrictions.ne("intCamb", -1.0d)); switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cr.add(Restrictions.eq("espHoj", true)); break; case "Mecanica": cr.add(Restrictions.eq("espMec", true)); break; case "Suspension": cr.add(Restrictions.eq("espSus", true)); break; case "Electrico": cr.add(Restrictions.eq("espEle", true)); break; case "Pintura": cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))); break; } cr.addOrder(Order.asc("idEvaluacion")); cr.addOrder(Order.asc("subPartida")); cuentas = (Partida[]) cr.list().toArray(new Partida[0]); ; break; default: cr = session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden())) .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.ne("intCamb", -1.0d)); switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cr.add(Restrictions.eq("espHoj", true)); break; case "Mecanica": cr.add(Restrictions.eq("espMec", true)); break; case "Suspension": cr.add(Restrictions.eq("espSus", true)); break; case "Electrico": cr.add(Restrictions.eq("espEle", true)); break; case "Pintura": cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))); break; } cr.addOrder(Order.asc("idEvaluacion")); cr.addOrder(Order.asc("subPartida")); cuentas = (Partida[]) cr.list().toArray(new Partida[0]); ; break; } int ren = 0; for (int i = 0; i < cuentas.length; i++) { double suma = 0d; tabla.addCell(reporte.celda("" + cuentas[i].getIdEvaluacion(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getSubPartida(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isEspHoj() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isEspMec() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isEspSus() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isEspEle() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getCant(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getCantidadAut(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell( reporte.celda(cuentas[i].getMed(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isRefCoti() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntCamb() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntRepMin() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntRepMed() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntRepMax() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntPinMin() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntPinMed() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntPinMax() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(cuentas[i].getCatalogo().getNombre(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell( reporte.celda((cuentas[i].getInstruccion() != null ? cuentas[i].getInstruccion() : ""), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); /*if(ren==37) { reporte.agregaObjeto(tabla); reporte.writer.newPage(); tabla=reporte.crearTabla(19, tam, 100, Element.ALIGN_LEFT); cabecera2(reporte, bf, tabla); ren=-1; } ren++;*/ } tabla.setHeaderRows(3); reporte.agregaObjeto(tabla); reporte.cerrar(); reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-operaciones.pdf"); } catch (Exception e) { e.printStackTrace(); e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto."); } if (session != null) if (session.isOpen()) session.close(); }//GEN-LAST:event_jButton4ActionPerformed private void t_numFocusGained(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_t_numFocusGained // TODO add your handling code here: t_num.selectAll(); }//GEN-LAST:event_t_numFocusGained private void b_exel1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_exel1ActionPerformed // TODO add your handling code here: //h=new Herramientas(user, 0); //h.session(sessionPrograma); javax.swing.JFileChooser jF1 = new javax.swing.JFileChooser(); jF1.setFileFilter(new ExtensionFileFilter("Excel document (*.xls)", new String[] { "xls" })); String ruta = null; DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00"); formatoPorcentaje.setMinimumFractionDigits(2); if (jF1.showSaveDialog(null) == jF1.APPROVE_OPTION) { ruta = jF1.getSelectedFile().getAbsolutePath(); if (ruta != null) { File archivoXLS = new File(ruta + ".xls"); File plantilla = new File("imagenes/plantillaValuacion.xls"); Session session = HibernateUtil.getSessionFactory().openSession(); try { Path FROM = Paths.get("imagenes/plantillaValuacion.xls"); Path TO = Paths.get(ruta + ".xls"); //sobreescribir el fichero de destino, si existe, y copiar // los atributos, incluyendo los permisos rwx CopyOption[] options = new CopyOption[] { StandardCopyOption.REPLACE_EXISTING, StandardCopyOption.COPY_ATTRIBUTES }; Files.copy(FROM, TO, options); FileInputStream miPlantilla = new FileInputStream(archivoXLS); POIFSFileSystem fsFileSystem = new POIFSFileSystem(miPlantilla); Workbook libro = new HSSFWorkbook(fsFileSystem); //Sheet hoja = libro.getSheet("valuacion"); //Cargamos las cabeceras Configuracion con = (Configuracion) session.get(Configuracion.class, 1); ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); libro.getSheet("valuacion").getRow(0).getCell(10).setCellValue(con.getEmpresa()); libro.getSheet("valuacion").getRow(1).getCell(2).setCellValue(ord.getIdOrden()); libro.getSheet("valuacion").getRow(1).getCell(6).setCellValue(ord.getFecha().toString()); libro.getSheet("valuacion").getRow(1).getCell(10).setCellValue(ord.getTipo().getTipoNombre()); libro.getSheet("valuacion").getRow(2).getCell(2).setCellValue(ord.getClientes().getNombre()); libro.getSheet("valuacion").getRow(2).getCell(10).setCellValue(ord.getMarca().getMarcaNombre()); if (ord.getSiniestro() != null) libro.getSheet("valuacion").getRow(3).getCell(2).setCellValue(ord.getSiniestro()); if (ord.getFechaSiniestro() != null) libro.getSheet("valuacion").getRow(3).getCell(6) .setCellValue(ord.getFechaSiniestro().toString()); if (ord.getNoMotor() != null) libro.getSheet("valuacion").getRow(3).getCell(10).setCellValue(ord.getNoMotor()); libro.getSheet("valuacion").getRow(3).getCell(16).setCellValue(ord.getModelo()); if (ord.getPoliza() != null) libro.getSheet("valuacion").getRow(4).getCell(2).setCellValue(ord.getPoliza()); if (ord.getInciso() != null) libro.getSheet("valuacion").getRow(4).getCell(6).setCellValue(ord.getInciso()); if (ord.getNoSerie() != null) libro.getSheet("valuacion").getRow(4).getCell(10).setCellValue(ord.getNoSerie()); if (ord.getNoEconomico() != null) libro.getSheet("valuacion").getRow(4).getCell(16).setCellValue(ord.getNoEconomico()); CellStyle borde_d = libro.createCellStyle(); borde_d.setBorderBottom(CellStyle.BORDER_THIN); borde_d.setBorderTop(CellStyle.BORDER_THIN); borde_d.setBorderRight(CellStyle.BORDER_THIN); borde_d.setBorderLeft(CellStyle.BORDER_THIN); borde_d.setAlignment(CellStyle.ALIGN_RIGHT); CellStyle borde_i = libro.createCellStyle(); borde_i.setBorderBottom(CellStyle.BORDER_THIN); borde_i.setBorderTop(CellStyle.BORDER_THIN); borde_i.setBorderRight(CellStyle.BORDER_THIN); borde_i.setBorderLeft(CellStyle.BORDER_THIN); borde_i.setAlignment(CellStyle.ALIGN_LEFT); CellStyle borde_c = libro.createCellStyle(); borde_c.setBorderBottom(CellStyle.BORDER_THIN); borde_c.setBorderTop(CellStyle.BORDER_THIN); borde_c.setBorderRight(CellStyle.BORDER_THIN); borde_c.setBorderLeft(CellStyle.BORDER_THIN); borde_c.setAlignment(CellStyle.ALIGN_CENTER); double total = 0.0D; for (int ren = 0; ren < t_datos.getRowCount(); ren++) { double v = 0.0d; libro.getSheet("valuacion").createRow(ren + 8); libro.getSheet("valuacion").getRow(ren + 8).createCell(1) .setCellValue(t_datos.getValueAt(ren, 10).toString());//cant libro.getSheet("valuacion").getRow(ren + 8).getCell(1).setCellStyle(borde_d); libro.getSheet("valuacion").getRow(ren + 8).createCell(2) .setCellValue(t_datos.getValueAt(ren, 11).toString());//Med libro.getSheet("valuacion").getRow(ren + 8).getCell(2).setCellStyle(borde_c); libro.getSheet("valuacion").getRow(ren + 8).createCell(3) .setCellValue(t_datos.getValueAt(ren, 2).toString());//Grupo libro.getSheet("valuacion").getRow(ren + 8).getCell(3).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(ren + 8).createCell(4); libro.getSheet("valuacion").getRow(ren + 8).getCell(4).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(ren + 8).createCell(5); libro.getSheet("valuacion").getRow(ren + 8).getCell(5).setCellStyle(borde_i); libro.getSheet("valuacion").addMergedRegion(new CellRangeAddress(ren + 8, ren + 8, 3, 5)); libro.getSheet("valuacion").getRow(ren + 8).createCell(6) .setCellValue(t_datos.getValueAt(ren, 3).toString());//Descripcin libro.getSheet("valuacion").getRow(ren + 8).getCell(6).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(ren + 8).createCell(7); libro.getSheet("valuacion").getRow(ren + 8).getCell(7).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(ren + 8).createCell(8); libro.getSheet("valuacion").getRow(ren + 8).getCell(8).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(ren + 8).createCell(9); libro.getSheet("valuacion").getRow(ren + 8).getCell(9).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(ren + 8).createCell(10); libro.getSheet("valuacion").getRow(ren + 8).getCell(10).setCellStyle(borde_i); libro.getSheet("valuacion").addMergedRegion(new CellRangeAddress(ren + 8, ren + 8, 6, 10)); if (t_datos.getValueAt(ren, 4) != null) { v = Double.parseDouble(t_datos.getValueAt(ren, 4).toString()) * Double.parseDouble(t_datos.getValueAt(ren, 10).toString()); libro.getSheet("valuacion").getRow(ren + 8).createCell(11).setCellValue( new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());//D/M } else libro.getSheet("valuacion").getRow(ren + 8).createCell(11).setCellValue(""); libro.getSheet("valuacion").getRow(ren + 8).getCell(11).setCellStyle(borde_d); if (t_datos.getValueAt(ren, 8) != null) { v = Double.parseDouble(t_datos.getValueAt(ren, 8).toString()) * Double.parseDouble(t_datos.getValueAt(ren, 10).toString()); libro.getSheet("valuacion").getRow(ren + 8).createCell(12).setCellValue( new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());//Cam } else libro.getSheet("valuacion").getRow(ren + 8).createCell(12).setCellValue(""); libro.getSheet("valuacion").getRow(ren + 8).getCell(12).setCellStyle(borde_d); if (t_datos.getValueAt(ren, 5) != null) { v = Double.parseDouble(t_datos.getValueAt(ren, 5).toString()) * Double.parseDouble(t_datos.getValueAt(ren, 10).toString()); libro.getSheet("valuacion").getRow(ren + 8).createCell(13).setCellValue( new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());//R. min } else libro.getSheet("valuacion").getRow(ren + 8).createCell(13).setCellValue(""); libro.getSheet("valuacion").getRow(ren + 8).getCell(13).setCellStyle(borde_d); if (t_datos.getValueAt(ren, 6) != null) { v = Double.parseDouble(t_datos.getValueAt(ren, 6).toString()) * Double.parseDouble(t_datos.getValueAt(ren, 10).toString()); libro.getSheet("valuacion").getRow(ren + 8).createCell(14).setCellValue( new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());//R. med } else libro.getSheet("valuacion").getRow(ren + 8).createCell(14).setCellValue(""); libro.getSheet("valuacion").getRow(ren + 8).getCell(14).setCellStyle(borde_d); if (t_datos.getValueAt(ren, 7) != null) { v = Double.parseDouble(t_datos.getValueAt(ren, 7).toString()) * Double.parseDouble(t_datos.getValueAt(ren, 10).toString()); libro.getSheet("valuacion").getRow(ren + 8).createCell(15).setCellValue( new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());//R. max } else libro.getSheet("valuacion").getRow(ren + 8).createCell(15).setCellValue(""); libro.getSheet("valuacion").getRow(ren + 8).getCell(15).setCellStyle(borde_d); if (t_datos.getValueAt(ren, 9) != null) { v = Double.parseDouble(t_datos.getValueAt(ren, 9).toString()) * Double.parseDouble(t_datos.getValueAt(ren, 10).toString()); libro.getSheet("valuacion").getRow(ren + 8).createCell(16).setCellValue( new BigDecimal(v).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());//Pin } else libro.getSheet("valuacion").getRow(ren + 8).createCell(16).setCellValue(""); libro.getSheet("valuacion").getRow(ren + 8).getCell(16).setCellStyle(borde_d); Double suma = Double.parseDouble(t_datos.getValueAt(ren, 22).toString()); suma *= ord.getCompania().getImporteHora(); total += suma; if (t_datos.getValueAt(ren, 22) != null) libro.getSheet("valuacion").getRow(ren + 8).createCell(17) .setCellValue(formatoPorcentaje.format(suma));//Costo M.O else libro.getSheet("valuacion").getRow(ren + 8).createCell(17).setCellValue(""); libro.getSheet("valuacion").getRow(ren + 8).getCell(17).setCellStyle(borde_d); } int renglon = t_datos.getRowCount() + 8; int celda = renglon; libro.getSheet("valuacion").createRow(renglon); libro.getSheet("valuacion").getRow(renglon).createCell(6);// libro.getSheet("valuacion").getRow(renglon).getCell(6).setCellValue( "Costo M.O:$" + formatoPorcentaje.format(ord.getCompania().getImporteHora()) + " Total de Horas:" + t_horas.getText()); libro.getSheet("valuacion").getRow(renglon).getCell(6).setCellStyle(borde_c); libro.getSheet("valuacion").getRow(renglon).createCell(7); libro.getSheet("valuacion").getRow(renglon).getCell(7).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(renglon).createCell(8); libro.getSheet("valuacion").getRow(renglon).getCell(8).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(renglon).createCell(9); libro.getSheet("valuacion").getRow(renglon).getCell(9).setCellStyle(borde_i); libro.getSheet("valuacion").getRow(renglon).createCell(10); libro.getSheet("valuacion").getRow(renglon).getCell(10).setCellStyle(borde_i); libro.getSheet("valuacion").addMergedRegion(new CellRangeAddress(renglon, renglon, 6, 10)); libro.getSheet("valuacion").getRow(renglon).createCell(11);// libro.getSheet("valuacion").getRow(renglon).getCell(11).setCellType(HSSFCell.CELL_TYPE_FORMULA); libro.getSheet("valuacion").getRow(renglon).getCell(11) .setCellFormula("SUM(L9:L" + celda + ")"); libro.getSheet("valuacion").getRow(renglon).getCell(11).setCellStyle(borde_d); libro.getSheet("valuacion").getRow(renglon).createCell(12);// libro.getSheet("valuacion").getRow(renglon).getCell(12).setCellType(HSSFCell.CELL_TYPE_FORMULA); libro.getSheet("valuacion").getRow(renglon).getCell(12) .setCellFormula("SUM(M9:M" + celda + ")"); libro.getSheet("valuacion").getRow(renglon).getCell(12).setCellStyle(borde_d); libro.getSheet("valuacion").getRow(renglon).createCell(13);// libro.getSheet("valuacion").getRow(renglon).getCell(13).setCellType(HSSFCell.CELL_TYPE_FORMULA); libro.getSheet("valuacion").getRow(renglon).getCell(13) .setCellFormula("SUM(N9:N" + celda + ")"); libro.getSheet("valuacion").getRow(renglon).getCell(13).setCellStyle(borde_d); libro.getSheet("valuacion").getRow(renglon).createCell(14);// libro.getSheet("valuacion").getRow(renglon).getCell(14).setCellType(HSSFCell.CELL_TYPE_FORMULA); libro.getSheet("valuacion").getRow(renglon).getCell(14) .setCellFormula("SUM(O9:O" + celda + ")"); libro.getSheet("valuacion").getRow(renglon).getCell(14).setCellStyle(borde_d); libro.getSheet("valuacion").getRow(renglon).createCell(15);// libro.getSheet("valuacion").getRow(renglon).getCell(15).setCellType(HSSFCell.CELL_TYPE_FORMULA); libro.getSheet("valuacion").getRow(renglon).getCell(15) .setCellFormula("SUM(P9:P" + celda + ")"); libro.getSheet("valuacion").getRow(renglon).getCell(15).setCellStyle(borde_d); libro.getSheet("valuacion").getRow(renglon).createCell(16);// libro.getSheet("valuacion").getRow(renglon).getCell(16).setCellType(HSSFCell.CELL_TYPE_FORMULA); libro.getSheet("valuacion").getRow(renglon).getCell(16) .setCellFormula("SUM(Q9:Q" + celda + ")"); libro.getSheet("valuacion").getRow(renglon).getCell(16).setCellStyle(borde_d); libro.getSheet("valuacion").getRow(renglon).createCell(17);// libro.getSheet("valuacion").getRow(renglon).getCell(17) .setCellValue(formatoPorcentaje.format(total)); libro.getSheet("valuacion").getRow(renglon).getCell(17).setCellStyle(borde_d); FileOutputStream archivo = new FileOutputStream(archivoXLS); libro.write(archivo); archivo.close(); //miPlantilla.close(); Desktop.getDesktop().open(archivoXLS); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } } }//GEN-LAST:event_b_exel1ActionPerformed private void b_enviarMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b_enviarMouseReleased // TODO add your handling code here: }//GEN-LAST:event_b_enviarMouseReleased private void b_enviarMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b_enviarMouseExited // TODO add your handling code here: }//GEN-LAST:event_b_enviarMouseExited private void b_enviarMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_b_enviarMouseEntered // TODO add your handling code here: }//GEN-LAST:event_b_enviarMouseEntered private void b_enviarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_enviarActionPerformed // TODO add your handling code here: EnviarCorreo en = new EnviarCorreo(new javax.swing.JFrame(), true, "", "", "", null, this.user, this.sessionPrograma); Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); en.setLocation((d.width / 2) - (en.getWidth() / 2), (d.height / 2) - (en.getHeight() / 2)); en.setVisible(true); }//GEN-LAST:event_b_enviarActionPerformed private void t_datosKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_t_datosKeyPressed // TODO add your handling code here: int code = evt.getKeyCode(); if (code == KeyEvent.VK_ENTER) { if (t_datos.isCellEditable(t_datos.getSelectedRow(), t_datos.getSelectedColumn()) == true) { if (t_datos.getSelectedColumn() > -1) { Class edo = t_datos.getColumnClass(t_datos.getSelectedColumn()); if (edo == Boolean.class) { boolean val = (boolean) t_datos.getValueAt(t_datos.getSelectedRow(), t_datos.getSelectedColumn()); if (val == false) t_datos.setValueAt(true, t_datos.getSelectedRow(), t_datos.getSelectedColumn()); else t_datos.setValueAt(false, t_datos.getSelectedRow(), t_datos.getSelectedColumn()); } } } } }//GEN-LAST:event_t_datosKeyPressed private void b_exel2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_exel2ActionPerformed // TODO add your handling code here: //h=new Herramientas(user, 0); //h.session(sessionPrograma); javax.swing.JFileChooser jF1 = new javax.swing.JFileChooser(); jF1.setFileFilter(new ExtensionFileFilter("Excel document (*.xls)", new String[] { "xls" })); String ruta = null; if (jF1.showSaveDialog(null) == jF1.APPROVE_OPTION) { ruta = jF1.getSelectedFile().getAbsolutePath(); if (ruta != null) { File archivoXLS = new File(ruta + ".xls"); try { if (archivoXLS.exists()) archivoXLS.delete(); archivoXLS.createNewFile(); Workbook libro = new HSSFWorkbook(); FileOutputStream archivo = new FileOutputStream(archivoXLS); Sheet hoja = libro.createSheet("compra"); //hoja.protectSheet("04650077"); for (int ren = 0; ren < (t_datos.getRowCount() + 1); ren++) { Row fila = hoja.createRow(ren); if (ren == 0 || ((boolean) t_datos.getValueAt(ren - 1, 23)) == true) { for (int col = 0; col < t_datos.getColumnCount(); col++) { Cell celda = fila.createCell(col); if (ren == 0) { celda.setCellValue(columnas[col]); } else { try { if (t_datos.getValueAt(ren - 1, col).toString() .compareToIgnoreCase("false") == 0) celda.setCellValue(""); else { if (t_datos.getValueAt(ren - 1, col).toString() .compareToIgnoreCase("true") == 0) celda.setCellValue(""); else celda.setCellValue(t_datos.getValueAt(ren - 1, col).toString()); } } catch (Exception e) { celda.setCellValue(""); } } } } } libro.write(archivo); archivo.close(); Desktop.getDesktop().open(archivoXLS); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto"); } } } }//GEN-LAST:event_b_exel2ActionPerformed private void btActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btActionPerformed // TODO add your handling code here: //h=new Herramientas(user, 0); //h.session(sessionPrograma); Session session = HibernateUtil.getSessionFactory().openSession(); try { DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00"); formatoPorcentaje.setMinimumFractionDigits(2); session.beginTransaction().begin(); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); PDF reporte = new PDF(); Date fecha = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS String valor = dateFormat.format(fecha); File folder = new File("reportes/" + ord.getIdOrden()); folder.mkdirs(); reporte.Abrir(PageSize.LETTER.rotate(), "Valuacin", "reportes/" + ord.getIdOrden() + "/" + valor + "-ref_precio.pdf"); Font font = new Font(Font.FontFamily.HELVETICA, 6, Font.BOLD); BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; int ren = 0; double dm = 0d, cam = 0d, min = 0d, med = 0d, max = 0d, pin = 0d, tot = 0d; session.beginTransaction().begin(); Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); Configuracion config = (Configuracion) session.get(Configuracion.class, 1); float tam[]; if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra") == 0) tam = new float[] { 12, 12, 50, 110, 15, 15, 25, 25, 25, 25 }; else tam = new float[] { 12, 12, 50, 110, 15, 15, 25, 25, 35, 12 }; PdfPTable tabla = reporte.crearTabla(10, tam, 100, Element.ALIGN_LEFT); cabecera1(reporte, bf, tabla); for (int i = 0; i < t_datos.getRowCount(); i++) { double suma = 0d; tabla.addCell(reporte.celda("" + t_datos.getValueAt(i, 0).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + t_datos.getValueAt(i, 1).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (t_datos.getValueAt(i, 13) != null) tabla.addCell(reporte.celda(t_datos.getValueAt(i, 13).toString(), font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else tabla.addCell(reporte.celda("S/N", font, contenido, centro, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(t_datos.getValueAt(i, 3).toString(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + t_datos.getValueAt(i, 10).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(t_datos.getValueAt(i, 11).toString(), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); //Double costo=0.0+Math.round(cuentas[i].getCU()/(1-(cuentas[i].getPorcentaje()*0.01))); Double costo = 0.0; if (t_datos.getValueAt(i, 16) != null) { costo = (Double) t_datos.getValueAt(i, 16); tabla.addCell(reporte.celda(formatoPorcentaje.format(costo), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); } else tabla.addCell(reporte.celda(formatoPorcentaje.format(0.0), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); //Double precio=costo*cuentas[i].getCant(); Double precio = costo * (Double) t_datos.getValueAt(i, 10); tot += precio; tabla.addCell(reporte.celda(formatoPorcentaje.format(precio), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("", font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); if (t_datos.getValueAt(i, 27) != null) tabla.addCell(reporte.celda(t_datos.getValueAt(i, 27).toString(), font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); else tabla.addCell(reporte.celda("", font, contenido, centro, 0, 1, Rectangle.RECTANGLE)); } //if(this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra")!=0) //{ tabla.addCell(reporte.celda(" ", font, contenido, derecha, 7, 1, Rectangle.TOP)); tabla.addCell(reporte.celda(formatoPorcentaje.format(tot), font, contenido, derecha, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(" ", font, contenido, derecha, 2, 1, Rectangle.TOP)); //} tabla.setHeaderRows(1); reporte.agregaObjeto(tabla); reporte.cerrar(); reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-ref_precio.pdf"); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_btActionPerformed private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed // TODO add your handling code here: Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00"); DecimalFormat formatoDecimal = new DecimalFormat("####0.0"); formatoPorcentaje.setMinimumFractionDigits(2); BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); //Orden ord=buscaApertura(); PDF reporte = new PDF(); Date fecha = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS String valor = dateFormat.format(fecha); File folder = new File("reportes/" + ord.getIdOrden()); folder.mkdirs(); reporte.Abrir(PageSize.LETTER.rotate(), "Operaciones", "reportes/" + ord.getIdOrden() + "/" + valor + "-operaciones1.pdf"); Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL); BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; float tam[] = new float[] { 15, 12, 10, 10, 10, 10, 15, 15, 15, 10, 10, 10, 10, 10, 10, 10, 10, 140, 90 }; PdfPTable tabla = reporte.crearTabla(19, tam, 100, Element.ALIGN_LEFT); cabecera2(reporte, bf, tabla, " Reparaciones "); Partida[] cuentas = new Partida[0]; ; Criteria cr; switch (cb_partidas.getSelectedItem().toString()) { case "Marcadas": if (t_datos.getSelectedRows().length > 0) { String consulta = "from Partida where (concat(idEvaluacion, subPartida) in ("; int[] selec = t_datos.getSelectedRows(); for (int x = 0; x < selec.length; x++) { if (x > 0) consulta += ", "; consulta += t_datos.getValueAt(selec[x], 0).toString() + t_datos.getValueAt(selec[x], 1).toString(); } switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": consulta += ")) AND(espHoj=true) "; break; case "Mecanica": consulta += ")) AND(espMec=true) "; break; case "Suspension": consulta += ")) AND(espSus=true) "; break; case "Electrico": consulta += ")) AND(espEle=true) "; break; case "Pintura": consulta += ")) AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) "; break; case "Todas": consulta += ")) "; break; } consulta += "AND (ordenByIdOrden.idOrden=" + orden + ") AND (autorizadoValuacion=true) AND (intCamb=-1) order by idEvaluacion asc, subPartida asc"; Query q = session.createQuery(consulta); cuentas = (Partida[]) q.list().toArray(new Partida[0]); } else cuentas = new Partida[0]; break; case "Sin Autorizar": cr = session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden())) .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.eq("autorizado", false)) .add(Restrictions.eq("intCamb", -1.0d)); switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cr.add(Restrictions.eq("espHoj", true)); break; case "Mecanica": cr.add(Restrictions.eq("espMec", true)); break; case "Suspension": cr.add(Restrictions.eq("espSus", true)); break; case "Electrico": cr.add(Restrictions.eq("espEle", true)); break; case "Pintura": cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))); //cr.add(Restrictions.sqlRestriction(" AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) ")); break; } cr.addOrder(Order.asc("idEvaluacion")); cr.addOrder(Order.asc("subPartida")); cuentas = (Partida[]) cr.list().toArray(new Partida[0]); break; case "Autorizadas": cr = session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden())) .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.eq("autorizado", true)) .add(Restrictions.eq("intCamb", -1.0d)); switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cr.add(Restrictions.eq("espHoj", true)); break; case "Mecanica": cr.add(Restrictions.eq("espMec", true)); break; case "Suspension": cr.add(Restrictions.eq("espSus", true)); break; case "Electrico": cr.add(Restrictions.eq("espEle", true)); break; case "Pintura": cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))); //cr.add(Restrictions.sqlRestriction(" AND(intPinMin>-1 OR intPinMed>-1 OR intPinMax>-1) ")); break; } cr.addOrder(Order.asc("idEvaluacion")); cr.addOrder(Order.asc("subPartida")); cuentas = (Partida[]) cr.list().toArray(new Partida[0]); break; default: cr = session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", ord.getIdOrden())) .add(Restrictions.eq("autorizadoValuacion", true)).add(Restrictions.eq("intCamb", -1.0d)); switch (cb_tipo.getSelectedItem().toString()) { case "Hojalateria": cr.add(Restrictions.eq("espHoj", true)); break; case "Mecanica": cr.add(Restrictions.eq("espMec", true)); break; case "Suspension": cr.add(Restrictions.eq("espSus", true)); break; case "Electrico": cr.add(Restrictions.eq("espEle", true)); break; case "Pintura": cr.add(Restrictions.or(Restrictions.or(Restrictions.ne("intPinMin", -1.0d), Restrictions.ne("intPinMed", -1.0d)), Restrictions.ne("intPinMax", -1.0d))); break; } cr.addOrder(Order.asc("idEvaluacion")); cr.addOrder(Order.asc("subPartida")); cuentas = (Partida[]) cr.list().toArray(new Partida[0]); break; } int ren = 0; for (int i = 0; i < cuentas.length; i++) { double suma = 0d; tabla.addCell(reporte.celda("" + cuentas[i].getIdEvaluacion(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getSubPartida(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isEspHoj() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isEspMec() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isEspSus() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isEspEle() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getCant(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("" + cuentas[i].getCantidadAut(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell( reporte.celda(cuentas[i].getMed(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].isRefCoti() == true ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntCamb() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntRepMin() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntRepMed() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntRepMax() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntPinMin() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntPinMed() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda((cuentas[i].getIntPinMax() != -1 ? "x" : ""), font, contenido, izquierda, 0, 0, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda(cuentas[i].getCatalogo().getNombre(), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); tabla.addCell( reporte.celda((cuentas[i].getInstruccion() != null ? cuentas[i].getInstruccion() : ""), font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE)); } tabla.setHeaderRows(3); reporte.agregaObjeto(tabla); reporte.cerrar(); reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-operaciones1.pdf"); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto."); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_jButton5ActionPerformed private void t_mo_directa1FocusLost(java.awt.event.FocusEvent evt) {//GEN-FIRST:event_t_mo_directa1FocusLost // TODO add your handling code here: if (t_mo_directa.getText().compareTo("") == 0) { t_mo_directa.setText("0"); t_mo_directa.setValue(0.00); } try { t_mo_directa.commitEdit(); } catch (Exception e) { e.printStackTrace(); } if (t_mo_directa1.getText().compareTo("") == 0) { t_mo_directa1.setText("0"); t_mo_directa1.setValue(0.00); } try { t_mo_directa1.commitEdit(); } catch (Exception e) { e.printStackTrace(); } if (t_ref_autorizadas_directo.getText().compareTo("") == 0) { t_ref_autorizadas_directo.setText("0"); t_ref_autorizadas_directo.setValue(0.00); } try { t_ref_autorizadas_directo.commitEdit(); } catch (Exception e) { e.printStackTrace(); } Session session = HibernateUtil.getSessionFactory().openSession(); try { session.getTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); h = new Herramientas(user, 0); h.session(sessionPrograma); ord = (Orden) session.load(Orden.class, ord.getIdOrden()); ord.setMoDirecta(((Number) t_mo_directa.getValue()).doubleValue()); ord.setRefAutorizadas(((Number) t_ref_autorizadas_directo.getValue()).doubleValue()); ord.setMoPresupuestada(((Number) t_mo_directa1.getValue()).doubleValue()); session.update(ord); session.getTransaction().commit(); } catch (Exception e) { session.getTransaction().rollback(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos!"); e.printStackTrace(); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } }//GEN-LAST:event_t_mo_directa1FocusLost private void t_mo_directa1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_t_mo_directa1ActionPerformed // TODO add your handling code here: t_busca.requestFocus(); }//GEN-LAST:event_t_mo_directa1ActionPerformed // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton b_ac; private javax.swing.JButton b_busca; private javax.swing.JButton b_enviar; private javax.swing.JButton b_exel; private javax.swing.JButton b_exel1; private javax.swing.JButton b_exel2; private javax.swing.JButton b_ok; private javax.swing.JButton b_pdf; private javax.swing.JButton bt; private javax.swing.JComboBox cb_partidas; private javax.swing.JComboBox cb_precio; private javax.swing.JComboBox cb_tipo; private javax.swing.JTextField instruccion; private javax.swing.JButton jButton1; private javax.swing.JButton jButton2; private javax.swing.JButton jButton3; private javax.swing.JButton jButton4; private javax.swing.JButton jButton5; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel11; private javax.swing.JLabel jLabel13; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel29; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel30; private javax.swing.JLabel jLabel31; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JLabel jLabel7; private javax.swing.JLabel jLabel8; 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.JPanel jPanel6; private javax.swing.JPanel jPanel7; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JLabel l1; private javax.swing.JLabel l2; private javax.swing.JLabel l3; private javax.swing.JLabel l4; private javax.swing.JLabel l5; private javax.swing.JLabel l6; private javax.swing.JComboBox medida; private javax.swing.JComboBox numeros; private javax.swing.JRadioButton r_cerrar_cotizacion; public javax.swing.JRadioButton r_cerrar_valuacion; private javax.swing.JScrollPane scroll; private javax.swing.JFormattedTextField t_autorizado; private javax.swing.JFormattedTextField t_autorizado1; private javax.swing.JTextField t_busca; private javax.swing.JFormattedTextField t_cantidad; private javax.swing.JFormattedTextField t_cia_seguros; private javax.swing.JFormattedTextField t_costo_refacciones; private javax.swing.JTable t_datos; private javax.swing.JFormattedTextField t_deducible; private javax.swing.JFormattedTextField t_demerito; private javax.swing.JFormattedTextField t_horas; private javax.swing.JFormattedTextField t_importe; private javax.swing.JFormattedTextField t_mo_directa; private javax.swing.JFormattedTextField t_mo_directa1; private javax.swing.JFormattedTextField t_num; private javax.swing.JTextField t_numero; private javax.swing.JTextField t_ok; private javax.swing.JTextField t_porcentaje; private javax.swing.JFormattedTextField t_ref_autorizadas_directo; private javax.swing.JFormattedTextField t_ref_presupuesto; private javax.swing.JFormattedTextField t_vales; private javax.swing.JDialog ventanaReportes; // End of variables declaration//GEN-END:variables public void formatoTabla() { TableCellRenderer textNormal = new DefaultTableHeaderCellRenderer(); TableCellRenderer headerRenderer = new VerticalTableHeaderCellRenderer(); Enumeration columns = t_datos.getColumnModel().getColumns(); for(int x=0; x<t_datos.getColumnModel().getColumnCount(); x++) { if((x>4 && x<8) || (x>21 && x<25) || (x>29 && x<39)) t_datos.getColumnModel().getColumn(x).setHeaderRenderer(headerRenderer); else t_datos.getColumnModel().getColumn(x).setHeaderRenderer(textNormal); } tabla_tamaos(); t_datos.setShowVerticalLines(true); t_datos.setShowHorizontalLines(true); t_datos.setDefaultRenderer(String.class, formato); t_datos.setDefaultRenderer(Double.class, formato); t_datos.setDefaultRenderer(Integer.class, formato); t_datos.setDefaultRenderer(Boolean.class, formato); } private void buscaCuentas(int x, int y) { double imp = 0.0; if (orden != null) { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); if (ord.getRValuacionCierre() != null) this.r_cerrar_valuacion.setSelected(true); else this.r_cerrar_valuacion.setSelected(false); if (ord.getRCotizaCierre() != null) this.r_cerrar_cotizacion.setSelected(true); else this.r_cerrar_cotizacion.setSelected(false); if (ord.getDeducible() != null) { this.t_deducible.setText("" + ord.getDeducible()); this.t_deducible.setValue(ord.getDeducible()); } else { this.t_deducible.setText("0.00"); this.t_deducible.setValue(0); } if (ord.getDemerito() != null) { this.t_demerito.setText("" + ord.getDemerito()); t_demerito.setValue(ord.getDemerito()); } else { this.t_demerito.setText("0.00"); this.t_demerito.setValue(0); } if (ord.getVales() != null) { this.t_vales.setText("" + ord.getVales()); this.t_vales.setValue(ord.getVales()); } else { this.t_vales.setText("0.00"); this.t_vales.setValue(0); } this.t_ref_autorizadas_directo.setValue(ord.getRefAutorizadas()); this.t_ref_presupuesto.setValue(ord.getRefPresupuesto()); this.t_mo_directa.setValue(ord.getMoDirecta()); this.t_mo_directa1.setValue(ord.getMoPresupuestada()); imp = ord.getCompania().getImporteHora(); Partida[] cuentas = new Partida[0]; Query query; ArrayList lista = new ArrayList(); if (menu == 3) { query = session.createSQLQuery( "select id_evaluacion, sub_partida, especialidad.descripcion, catalogo.nombre, dm, rep_min, rep_med, rep_max, cam, pint, cant, med, if(Instruccion is null, '', Instruccion)as dato, \n" + "if(id_Parte is null, '', id_Parte) as parte, c_u, porcentaje, Precio_cia_seguros_c_u, Cantidad_aut, Precio_aut_c_u, (Cantidad_aut*Precio_aut_c_u) as total, \n" + "autorizado, ref_coti, ref_comp, tot, so, pd, if(partida.ori=1, 'ORI', if(partida.nal=1, 'NAL', if(partida.desm=1, 'DES', if(partida.pd=1, 'REC', '')))) as orig, id_pedido, if(int_desm=-1, 'false', 'true') as i_desm, if(Int_camb=-1, 'false', 'true') as i_cam, if(Int_rep_min=-1, 'false', 'true') as i_r_min, \n" + "if(Int_rep_med=-1, 'false', 'true') as i_r_med, if(Int_rep_max=-1, 'false', 'true') as i_r_max, if(int_pin_min=-1, 'false', 'true') as i_p_min, if(int_pin_med=-1, 'false', 'true') as i_p_med, \n" + "if(int_pin_max=-1, 'false', 'true')as i_p_max, \n" + "tipo, if(enlazada is null, '', enlazada) as ext, if(facturado is null, 'false', if(facturado=true, 'true', 'false'))as fac \n" + "from partida inner join catalogo on partida.id_catalogo=catalogo.id_catalogo \n" + "inner join especialidad on catalogo.id_grupo_mecanico=especialidad.id_grupo_mecanico where id_orden=" + ord.getIdOrden() + " and autorizado_valuacion=true order by id_evaluacion, sub_partida asc;"); query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP); lista = (ArrayList) query.list(); } else { query = session.createSQLQuery( "select id_evaluacion, sub_partida, especialidad.descripcion, catalogo.nombre, dm, rep_min, rep_med, rep_max, cam, pint, cant, med, if(Instruccion is null, '', Instruccion)as dato, \n" + "if(id_Parte is null, '', id_Parte) as parte, c_u, porcentaje, Precio_cia_seguros_c_u, Cantidad_aut, Precio_aut_c_u, (Cantidad_aut*Precio_aut_c_u) as total, \n" + "autorizado, ref_coti, ref_comp, tot, so, pd, if(partida.ori=1, 'ORI', if(partida.nal=1, 'NAL', if(partida.desm=1, 'DES', if(partida.pd=1, 'REC', '')))) as orig, id_pedido, if(int_desm=-1, 'false', 'true') as i_desm, if(Int_camb=-1, 'false', 'true') as i_cam, if(Int_rep_min=-1, 'false', 'true') as i_r_min, \n" + "if(Int_rep_med=-1, 'false', 'true') as i_r_med, if(Int_rep_max=-1, 'false', 'true') as i_r_max, if(int_pin_min=-1, 'false', 'true') as i_p_min, if(int_pin_med=-1, 'false', 'true') as i_p_med, \n" + "if(int_pin_max=-1, 'false', 'true')as i_p_max, \n" + "tipo, if(enlazada is null, '', enlazada) as ext, if(facturado is null, 'false', if(facturado=true, 'true', 'false'))as fac \n" + "from partida inner join catalogo on partida.id_catalogo=catalogo.id_catalogo \n" + "inner join especialidad on catalogo.id_grupo_mecanico=especialidad.id_grupo_mecanico where id_orden=" + ord.getIdOrden() + " and autorizado_valuacion=true and ref_coti=true order by id_evaluacion, sub_partida asc;"); query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP); lista = (ArrayList) query.list(); } Partida[] enlazadas = new Partida[0]; if (menu == 3) enlazadas = (Partida[]) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByEnlazada.idOrden", ord.getIdOrden())) .add(Restrictions.eq("autorizadoValuacion", true)).addOrder(Order.asc("idEvaluacion")) .addOrder(Order.asc("subPartida")).list().toArray(new Partida[0]); //else //enlazadas = (Partida[])session.createCriteria(Partida.class).add(Restrictions.eq("ordenByEnlazada.idOrden", ord.getIdOrden())).add(Restrictions.eq("refCoti", true)).add(Restrictions.eq("autorizadoValuacion", true)).list().toArray(new Partida[0]); if (lista.size() > 0 || enlazadas.length > 0) { model = new MyModel(lista.size() + enlazadas.length, columnas, this.types); t_datos.setModel(model); formatoTabla(); for (int i = 0; i < lista.size(); i++) { java.util.HashMap map = (java.util.HashMap) lista.get(i); model.setValueAt(map.get("id_evaluacion"), i, 0); model.setCeldaEditable(i, 0, false); model.setValueAt(map.get("sub_partida"), i, 1); model.setCeldaEditable(i, 1, false); model.setValueAt(map.get("descripcion"), i, 2); model.setCeldaEditable(i, 2, false); model.setValueAt(map.get("nombre"), i, 3); model.setCeldaEditable(i, 3, false); double dm = (double) map.get("dm"); if (dm == -1) { model.setValueAt(null, i, 4); model.setCeldaEditable(i, 4, false); } else { model.setValueAt(dm, i, 4); model.setCeldaEditable(i, 4, this.edita_columnas[0]); } double repMin = (double) map.get("rep_min"); if (repMin == -1) { model.setCeldaEditable(i, 5, false); model.setValueAt(null, i, 5); } else { model.setValueAt(repMin, i, 5); model.setCeldaEditable(i, 5, this.edita_columnas[0]); } double repMed = (double) map.get("rep_med"); if (repMed == -1) { model.setCeldaEditable(i, 6, false); model.setValueAt(null, i, 6); } else { model.setValueAt(repMed, i, 6); model.setCeldaEditable(i, 6, this.edita_columnas[0]); } double repMax = (double) map.get("rep_max"); if (repMax == -1) { model.setValueAt(null, i, 7); model.setCeldaEditable(i, 7, false); } else { model.setValueAt(repMax, i, 7); model.setCeldaEditable(i, 7, this.edita_columnas[0]); } double cam = (double) map.get("cam"); if (cam == -1) { model.setValueAt(null, i, 8); model.setCeldaEditable(i, 8, false); } else { model.setValueAt(cam, i, 8); model.setCeldaEditable(i, 8, this.edita_columnas[0]); } double pint = (double) map.get("pint"); if (pint == -1) { model.setValueAt(null, i, 9); model.setCeldaEditable(i, 9, false); } else { model.setValueAt(pint, i, 9); model.setCeldaEditable(i, 9, this.edita_columnas[0]); } model.setValueAt(map.get("cant"), i, 10); model.setCeldaEditable(i, 10, false); model.setValueAt(map.get("med"), i, 11); model.setCeldaEditable(i, 11, false); model.setValueAt(map.get("dato"), i, 12); model.setCeldaEditable(i, 12, false); model.setValueAt(map.get("parte"), i, 13); model.setValueAt(map.get("c_u"), i, 14); model.setCeldaEditable(i, 14, this.edita_columnas[1]); double porcentaje = (double) map.get("porcentaje"); model.setValueAt(porcentaje, i, 15); model.setCeldaEditable(i, 15, this.edita_columnas[2]); double cu = (double) map.get("c_u"); if (porcentaje == 0.0) { model.setValueAt(cu, i, 16); } else { model.setValueAt(0.0 + Math.round(cu / (1 - (porcentaje * 0.01))), i, 16); } model.setCeldaEditable(i, 16, false); model.setValueAt(map.get("Cantidad_aut"), i, 17); model.setCeldaEditable(i, 17, this.edita_columnas[3]); model.setValueAt(map.get("Precio_aut_c_u"), i, 18); model.setCeldaEditable(i, 18, this.edita_columnas[3]); model.setValueAt(map.get("total"), i, 19); model.setCeldaEditable(i, 19, false); model.setValueAt(map.get("fac").toString().contentEquals("true"), i, 20);//vales model.setCeldaEditable(i, 20, this.edita_columnas[4]); model.setValueAt(map.get("autorizado"), i, 21); model.setCeldaEditable(i, 21, this.edita_columnas[4]); double horas = 0.0; for (int r = 4; r < 10; r++) { if (model.getValueAt(i, r) != null) { double val = Double.parseDouble(model.getValueAt(i, r).toString()); horas += val; } } horas = horas * cu; model.setValueAt(horas, i, 22); model.setCeldaEditable(i, 22, false); model.setValueAt(map.get("ref_coti"), i, 23); model.setCeldaEditable(i, 23, this.edita_columnas[5]); model.setValueAt(map.get("ref_comp"), i, 24); model.setCeldaEditable(i, 24, this.edita_columnas[6]); model.setValueAt(map.get("tot"), i, 25);//proveedor model.setCeldaEditable(i, 25, false); model.setValueAt(map.get("so"), i, 26); model.setCeldaEditable(i, 26, this.edita_columnas[7]); model.setValueAt(map.get("pd"), i, 27); model.setCeldaEditable(i, 27, this.edita_columnas[7]); model.setValueAt(map.get("orig"), i, 28); model.setCeldaEditable(i, 28, false); //recorree model.setValueAt(map.get("id_pedido"), i, 29);//pedido model.setCeldaEditable(i, 29, false); model.setValueAt(map.get("i_desm").toString().contentEquals("true"), i, 30); model.setCeldaEditable(i, 30, false); model.setValueAt(map.get("i_cam").toString().contentEquals("true"), i, 31); model.setCeldaEditable(i, 31, false); model.setValueAt(map.get("i_r_min").toString().contentEquals("true"), i, 32); model.setCeldaEditable(i, 32, false); model.setValueAt(map.get("i_r_med").toString().contentEquals("true"), i, 33); model.setCeldaEditable(i, 33, false); model.setValueAt(map.get("i_r_max").toString().contentEquals("true"), i, 34); model.setCeldaEditable(i, 34, false); model.setValueAt(map.get("i_p_min").toString().contentEquals("true"), i, 35); model.setCeldaEditable(i, 35, false); model.setValueAt(map.get("i_p_med").toString().contentEquals("true"), i, 36); model.setCeldaEditable(i, 36, false); model.setValueAt(map.get("i_p_max").toString().contentEquals("true"), i, 37); model.setCeldaEditable(i, 37, false); model.setValueAt(map.get("tipo"), i, 38); model.setCeldaEditable(i, 38, false); model.setValueAt(map.get("ext"), i, 39); model.setCeldaEditable(i, 39, false); } //**********cargamos las enlazadas //cuentas.length+enlazadas.length for (int i = 0; i < enlazadas.length; i++) { model.setValueAt(enlazadas[i].getIdEvaluacion(), i + cuentas.length, 0); model.setCeldaEditable(i + cuentas.length, 0, false); model.setValueAt(enlazadas[i].getSubPartida(), i + cuentas.length, 1); model.setCeldaEditable(i + cuentas.length, 1, false); model.setValueAt(enlazadas[i].getCatalogo().getEspecialidad().getDescripcion(), i + cuentas.length, 2); model.setCeldaEditable(i + cuentas.length, 2, false); model.setValueAt(enlazadas[i].getCatalogo().getNombre(), i + cuentas.length, 3); model.setCeldaEditable(i + cuentas.length, 3, false); if (enlazadas[i].getDm() == -1) { model.setValueAt(null, i + cuentas.length, 4); model.setCeldaEditable(i + cuentas.length, 4, false); } else { model.setValueAt(enlazadas[i].getDm(), i + cuentas.length, 4); model.setCeldaEditable(i + cuentas.length, 4, false); } if (enlazadas[i].getRepMin() == -1) { model.setCeldaEditable(i + cuentas.length, 5, false); model.setValueAt(null, i + cuentas.length, 5); } else { model.setValueAt(enlazadas[i].getRepMin(), i + cuentas.length, 5); model.setCeldaEditable(i + cuentas.length, 5, false); } if (enlazadas[i].getRepMed() == -1) { model.setCeldaEditable(i + cuentas.length, 6, false); model.setValueAt(null, i + cuentas.length, 6); } else { model.setValueAt(enlazadas[i].getRepMed(), i + cuentas.length, 6); model.setCeldaEditable(i + cuentas.length, 6, false); } if (enlazadas[i].getRepMax() == -1) { model.setValueAt(null, i + cuentas.length, 7); model.setCeldaEditable(i + cuentas.length, 7, false); } else { model.setValueAt(enlazadas[i].getRepMax(), i + cuentas.length, 7); model.setCeldaEditable(i + cuentas.length, 7, false); } if (enlazadas[i].getCam() == -1) { model.setValueAt(null, i + cuentas.length, 8); model.setCeldaEditable(i + cuentas.length, 8, false); } else { model.setValueAt(enlazadas[i].getCam(), i + cuentas.length, 8); model.setCeldaEditable(i + cuentas.length, 8, false); } if (enlazadas[i].getPint() == -1) { model.setValueAt(null, i + cuentas.length, 9); model.setCeldaEditable(i + cuentas.length, 9, false); } else { model.setValueAt(enlazadas[i].getPint(), i + cuentas.length, 9); model.setCeldaEditable(i + cuentas.length, 9, false); } model.setValueAt(enlazadas[i].getCant(), i + cuentas.length, 10); model.setCeldaEditable(i + cuentas.length, 10, false); model.setValueAt(enlazadas[i].getMed(), i + cuentas.length, 11); model.setCeldaEditable(i + cuentas.length, 11, false); //model.setValueAt(enlazadas[i].getCatalogo().getIdCatalogo(), i+cuentas.length, 12); //model.setCeldaEditable(i+cuentas.length, 12, false); if (enlazadas[i].getInstruccion() != null) model.setValueAt(enlazadas[i].getInstruccion(), i + cuentas.length, 12); else model.setValueAt("", i + cuentas.length, 12); model.setCeldaEditable(i + cuentas.length, 12, false); try { model.setValueAt(enlazadas[i].getEjemplar().getIdParte(), i + cuentas.length, 13); } catch (Exception e) { model.setValueAt("", i + cuentas.length, 13); } model.setValueAt(enlazadas[i].getCU(), i + cuentas.length, 14); model.setCeldaEditable(i + cuentas.length, 14, false); model.setValueAt(enlazadas[i].getPorcentaje(), i + cuentas.length, 15); model.setCeldaEditable(i + cuentas.length, 15, false); if (enlazadas[i].getPorcentaje() == 0.0) { model.setValueAt(enlazadas[i].getCU(), i + cuentas.length, 16); } else { model.setValueAt( 0.0 + Math.round( enlazadas[i].getCU() / (1 - (enlazadas[i].getPorcentaje() * 0.01))), i + cuentas.length, 16); } model.setCeldaEditable(i + cuentas.length, 16, false); model.setValueAt(enlazadas[i].getCantidadAut(), i + cuentas.length, 17); model.setCeldaEditable(i + cuentas.length, 17, false); model.setValueAt(enlazadas[i].getPrecioAutCU(), i + cuentas.length, 18); model.setCeldaEditable(i + cuentas.length, 18, false); model.setValueAt((enlazadas[i].getCantidadAut() * enlazadas[i].getPrecioAutCU()), i + cuentas.length, 19); model.setCeldaEditable(i + cuentas.length, 19, false); model.setValueAt(enlazadas[i].getFacturado(), i + cuentas.length, 20);//vales model.setCeldaEditable(i + cuentas.length, 20, false); model.setValueAt(enlazadas[i].isAutorizado(), i + cuentas.length, 21); model.setCeldaEditable(i + cuentas.length, 21, false); double horas = 0.0; for (int r = 4; r < 10; r++) { if (model.getValueAt(i + cuentas.length, r) != null) { double val = Double.parseDouble(model.getValueAt(i + cuentas.length, r).toString()); horas += val; } } model.setValueAt(horas, i + cuentas.length, 22); model.setCeldaEditable(i + cuentas.length, 22, false); model.setValueAt(enlazadas[i].isRefCoti(), i + cuentas.length, 23); model.setCeldaEditable(i + cuentas.length, 23, false); model.setValueAt(enlazadas[i].isRefComp(), i + cuentas.length, 24); model.setCeldaEditable(i + cuentas.length, 24, false); if (enlazadas[i].getProveedor() != null) model.setValueAt(enlazadas[i].getProveedor().getIdProveedor(), i + cuentas.length, 25);//proveedor else model.setValueAt("", i + cuentas.length, 25);//proveedor model.setCeldaEditable(i + cuentas.length, 25, false); model.setValueAt(enlazadas[i].isSo(), i + cuentas.length, 26); model.setCeldaEditable(i + cuentas.length, 26, false); model.setValueAt(enlazadas[i].isPd(), i + cuentas.length, 27); model.setCeldaEditable(i + cuentas.length, 27, false); if (enlazadas[i].isOri() == true) model.setValueAt("ORI", i + cuentas.length, 28); if (enlazadas[i].isNal() == true) model.setValueAt("NAL", i + cuentas.length, 28); if (enlazadas[i].isDesm() == true) model.setValueAt("DES", i + cuentas.length, 28); if (cuentas[i].isPd() == true) model.setValueAt("RECON", i, 28); model.setCeldaEditable(i + cuentas.length, 28, false); if (enlazadas[i].getPedido() != null) model.setValueAt(enlazadas[i].getPedido().getProveedorByIdProveedor().getIdProveedor(), i + cuentas.length, 29);//pedido else model.setValueAt("", i + cuentas.length, 29);//pedido model.setCeldaEditable(i + cuentas.length, 29, false); if (enlazadas[i].getIntDesm() == -1) model.setValueAt(false, i + cuentas.length, 30); else model.setValueAt(true, i + cuentas.length, 30); model.setCeldaEditable(i + cuentas.length, 30, false); if (enlazadas[i].getIntCamb() == -1) model.setValueAt(false, i + cuentas.length, 31); else model.setValueAt(true, i + cuentas.length, 31); model.setCeldaEditable(i + cuentas.length, 31, false); if (enlazadas[i].getIntRepMin() == -1) model.setValueAt(false, i + cuentas.length, 32); else model.setValueAt(true, i + cuentas.length, 32); model.setCeldaEditable(i + cuentas.length, 32, false); if (enlazadas[i].getIntRepMed() == -1) model.setValueAt(false, i + cuentas.length, 33); else model.setValueAt(true, i + cuentas.length, 33); model.setCeldaEditable(i + cuentas.length, 33, false); if (enlazadas[i].getIntRepMax() == -1) model.setValueAt(false, i + cuentas.length, 34); else model.setValueAt(true, i + cuentas.length, 34); model.setCeldaEditable(i + cuentas.length, 34, false); if (enlazadas[i].getIntPinMin() == -1) model.setValueAt(false, i + cuentas.length, 35); else model.setValueAt(true, i + cuentas.length, 35); model.setCeldaEditable(i + cuentas.length, 35, false); if (enlazadas[i].getIntPinMed() == -1) model.setValueAt(false, i + cuentas.length, 36); else model.setValueAt(true, i + cuentas.length, 36); model.setCeldaEditable(i + cuentas.length, 36, false); if (enlazadas[i].getIntPinMax() == -1) model.setValueAt(false, i + cuentas.length, 37); else model.setValueAt(true, i + cuentas.length, 37); model.setCeldaEditable(i + cuentas.length, 37, false); model.setValueAt("e", i + cuentas.length, 38); model.setCeldaEditable(i + cuentas.length, 38, false); if (enlazadas[i].getOrdenByEnlazada() != null) { if (enlazadas[i].getOrdenByEnlazada().getIdOrden() == ord.getIdOrden()) model.setValueAt(enlazadas[i].getOrdenByIdOrden().getIdOrden(), i + cuentas.length, 39); else model.setValueAt(enlazadas[i].getOrdenByEnlazada().getIdOrden(), i + cuentas.length, 39); } else model.setValueAt("", i, 39); model.setCeldaEditable(i + cuentas.length, 39, false); } } else { model = new MyModel(0, columnas, this.types); t_datos.setModel(model); formatoTabla(); } //session.beginTransaction().rollback(); } catch (Exception e) { e.printStackTrace(); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } else { model = new MyModel(0, columnas, this.types); t_datos.setModel(model); formatoTabla(); } sumaTotales(imp); verEstado(); if (x >= 0 && y >= 0) { t_datos.setColumnSelectionInterval(y, y); t_datos.setRowSelectionInterval(x, x); } } @Override public void valueChanged(ListSelectionEvent e) { // See if this is a valid table selection if (e.getSource() == t_datos.getSelectionModel() && e.getFirstIndex() >= 0 && this.r_cerrar_valuacion.isSelected() == false) { TableModel model = (TableModel) t_datos.getModel(); Double valor = (Double) model.getValueAt(t_datos.getSelectedRow(), t_datos.getSelectedColumn()); if (valor == 0) if (t_datos.getSelectedColumn() == 18) { t_datos.setValueAt(t_datos.getValueAt(t_datos.getSelectedRow(), 16), t_datos.getSelectedRow(), t_datos.getSelectedColumn()); } } } public class MyModel extends DefaultTableModel { Class[] types; int ren = 0; int col = 0; private boolean[][] celdaEditable; double imp = 0.0; public MyModel(int renglones, String columnas[], Class[] tipo) { types = tipo; ren = renglones; col = columnas.length; celdaEditable = new boolean[types.length][renglones]; for (int x = 0; x < types.length; x++) { for (int y = 0; y < renglones; y++) { celdaEditable[x][y] = true; } } this.setDataVector(new Object[renglones][columnas.length], columnas); } @Override public int getRowCount() { return ren; } @Override public int getColumnCount() { return col; } @Override public void setValueAt(Object value, int row, int col) { Vector vector = (Vector) this.dataVector.elementAt(row); Object celda = ((Vector) this.dataVector.elementAt(row)).elementAt(col); switch (col) { case 4: if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaHoras() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); if (part != null) { part.setDm(BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } //buscaCuentas(row, col); sumaTotales(imp); verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); buscaCuentas(-1, -1); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 5: if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaHoras() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setRepMin(BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } sumaTotales(imp); verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 6: if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaHoras() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setRepMed(BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } //buscaCuentas(row, col); sumaTotales(imp); verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); //buscaCuentas(row, col); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 7: if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaHoras() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setRepMax(BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } //buscaCuentas(row, col); sumaTotales(imp); verEstado(); } else { buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); //buscaCuentas(row, col); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 8: if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaHoras() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setCam(BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } //buscaCuentas(row, col); sumaTotales(imp); verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); //buscaCuentas(row, col); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 9: if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaHoras() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setPint(BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } //buscaCuentas(row, col); sumaTotales(imp); verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); //buscaCuentas(row, col); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 13://codigo if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaCodigo() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (t_datos.getValueAt(row, 38).toString().compareTo("e") != 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { if (value.toString().compareToIgnoreCase("") != 0) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); Ejemplar ejem = (Ejemplar) session.get(Ejemplar.class, value.toString()); if (ejem != null) { Criteria crit = session.createCriteria(Partida.class); crit.add(Restrictions.eq("ejemplar.idParte", ejem.getIdParte())); crit = crit.createAlias("pedido", "ped"); //crit=crit.addOrder(Order.asc("ped.fechaPedido")); crit = crit.addOrder(Order.desc("pcp")); crit.add(Restrictions.isNotNull("pedido")); Partida partidaPrecio = (Partida) crit.setMaxResults(1) .uniqueResult(); part.setEjemplar(ejem); if (partidaPrecio != null) { if (partidaPrecio.getPcp() > part.getCU()) { part.setCU(partidaPrecio.getPcp()); part.setPrecioAutCU(0.0 + Math.round(part.getCU() / (1 - (part.getPorcentaje() * 0.01)))); part.setPrecioCiaSegurosCU(part.getPrecioAutCU()); } } /*else { part.setCU(0.0d); part.setPrecioAutCU(0.0); }*/ session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); vector.setElementAt(part.getCU(), 14); double aux = 0.0 + Math .round(part.getCU() / (1 - (part.getPorcentaje() * 0.01))); vector.setElementAt(aux, 16); vector.setElementAt(aux, 18); vector.setElementAt(aux * Double .parseDouble(t_datos.getValueAt(row, 17).toString()), 19); dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); fireTableCellUpdated(row, 14); fireTableCellUpdated(row, 16); fireTableCellUpdated(row, 18); fireTableCellUpdated(row, 19); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } //buscaCuentas(row, col); sumaTotales(imp); verEstado(); } } else { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setEjemplar(null); //part.setCU(0.0d); //part.setPrecioAutCU(0.0+Math.round(part.getCU()/(1-(part.getPorcentaje()*0.01)))); session.update(part); session.getTransaction().commit(); vector.setElementAt("", col); dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } //buscaCuentas(row, col); sumaTotales(imp); verEstado(); } } else { buscaCuentas(-1, -1); JOptionPane.showMessageDialog(null, "La partida ya no existe"); } } else { JOptionPane.showMessageDialog(null, "No se pueden modificar Partidas enlazadas de otra orden"); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { session.getTransaction().rollback(); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } JOptionPane.showMessageDialog(null, "Acceso denegado!"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 14://cu if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaPrecioCu() == true) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setCU(BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); part.setPrecioCiaSegurosCU( 0.0 + Math.round(part.getCU() / (1 - (part.getPorcentaje() * 0.01)))); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); vector.setElementAt(part.getPrecioCiaSegurosCU(), 16); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); fireTableCellUpdated(row, 16); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } sumaTotales(imp); verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 15://% if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaPorcentaje() == true) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setPorcentaje(BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); part.setPrecioCiaSegurosCU( 0.0 + Math.round(part.getCU() / (1 - (part.getPorcentaje() * 0.01)))); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); vector.setElementAt(part.getPrecioCiaSegurosCU(), 16); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); fireTableCellUpdated(row, 16); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } sumaTotales(imp); verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 17://can aut if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaCantAut() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { if (part.getOrdenByIdOrden().getAutorizadoFacturar() != true) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setCantidadAut( BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); part.setCantidadFactura(part.getCantidadAut()); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); vector.setElementAt(part.getPrecioAutCU() * BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue(), 19); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); fireTableCellUpdated(row, 19); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } sumaTotales(imp); verEstado(); } } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 18://aut c/u if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaCostoAut() == true) { if (r_cerrar_valuacion.isSelected() == false) { if (value.toString().compareTo("") != 0 && Double.parseDouble(value.toString()) >= 0) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { if (part.getOrdenByIdOrden().getAutorizadoFacturar() != true) { imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); part.setPrecioAutCU( BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue()); part.setPrecioFactura(part.getPrecioAutCU()); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); vector.setElementAt(part.getCantidadAut() * BigDecimal.valueOf(Double.parseDouble(value.toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue(), 19); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); fireTableCellUpdated(row, 19); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } sumaTotales(imp); verEstado(); } } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { if (Double.parseDouble(value.toString()) < 0) JOptionPane.showMessageDialog(null, "El campo no permite numeros negativos"); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 20://vales if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaCostoAut() == true) { if (r_cerrar_valuacion.isSelected() == false) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); if (part != null) { if (part.getOrdenByIdOrden().getAutorizadoFacturar() != true) { if ((boolean) value == true) { part.setFacturado(true); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } else { part.setFacturado(false); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } } else { JOptionPane.showMessageDialog(null, "La Orden ya se envo a facturar"); } } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } sumaTotales(imp); } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } break; case 21: if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaAutorizaPartida() == true) { if (r_cerrar_valuacion.isSelected() == false) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); imp = part.getOrdenByIdOrden().getCompania().getImporteHora(); if (part != null) { if ((boolean) value == true) { part.setAutorizado(true); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } else { if (part.getPedido() == null) { part.setAutorizado(false); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } else JOptionPane.showMessageDialog(null, "La partida ya fue pedida"); } } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } sumaTotales(imp); } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } break; case 23://r cotiza if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaAutorizaCompra() == true) { if (r_cerrar_valuacion.isSelected() == false) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { if ((boolean) value == true) part.setRefCoti(true); else part.setRefCoti(false); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 24://r compra if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaAutorizaCompra() == true) { if (r_cerrar_valuacion.isSelected() == false) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { if ((boolean) value == true) { if (part.getCam() != -1 || part.getIntCamb() != -1) { part.setRefComp(true); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } else JOptionPane.showMessageDialog(null, "No se puede compra sin cambiar en aseguradora"); } else { if (part.isRefComp() == true) { if (part.getPedido() == null) { part.setRefComp(false); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } else JOptionPane.showMessageDialog(null, "La partida ya fue pedida"); } } } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 26://so if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaTipoSustido() == true) { if (r_cerrar_valuacion.isSelected() == false) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { if ((boolean) value == true) part.setSo(true); else part.setSo(false); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; case 27://pd if (vector.get(col) == null) { vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); } else { Session session = HibernateUtil.getSessionFactory().openSession(); try { session.beginTransaction().begin(); user = (Usuario) session.get(Usuario.class, user.getIdUsuario()); if (user.getEditaTipoSustido() == true) { if (r_cerrar_valuacion.isSelected() == false) { Partida part = (Partida) session.createCriteria(Partida.class) .add(Restrictions.eq("ordenByIdOrden.idOrden", Integer.parseInt(orden))) .add(Restrictions.eq("idEvaluacion", Integer.parseInt(t_datos.getValueAt(t_datos.getSelectedRow(), 0) .toString()))) .add(Restrictions.eq("subPartida", Integer.parseInt( t_datos.getValueAt(t_datos.getSelectedRow(), 1).toString()))) .setMaxResults(1).uniqueResult(); if (part != null) { if ((boolean) value == true) part.setPd(true); else part.setPd(false); session.update(part); session.getTransaction().commit(); vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } verEstado(); } else { JOptionPane.showMessageDialog(null, "La partida ya no existe"); buscaCuentas(-1, -1); } } else { JOptionPane.showMessageDialog(null, "La valuacin esta cerrada"); } } else { JOptionPane.showMessageDialog(null, "Acceso denegado"); } } catch (Exception e) { session.getTransaction().rollback(); e.printStackTrace(); JOptionPane.showMessageDialog(null, "Error al actualizar los datos"); } if (session != null) if (session.isOpen() == true) { session.flush(); session.clear(); session.close(); } } break; default: vector.setElementAt(value, col); this.dataVector.setElementAt(vector, row); fireTableCellUpdated(row, col); break; } t_datos.requestFocus(); } public Class getColumnClass(int columnIndex) { return types[columnIndex]; } public boolean isCellEditable(int rowIndex, int columnIndex) { return this.celdaEditable[columnIndex][rowIndex]; } public void setCeldaEditable(int fila, int columna, boolean editable) { this.celdaEditable[columna][fila] = editable; } public void setColumnaEditable(int columna, boolean editable) { int i = 0; int cantidadFilas = this.getRowCount(); for (i = 0; i < celdaEditable[columna].length; i++) this.celdaEditable[columna][i] = editable; } //not necessary } public void sumaTotales(double importe) { double refacciones_costo = 0.0; double cia_seg = 0.0; double autorizado = 0.0; double vales = 0.0; double mano_obra_horas = 0.0; double mano_obra_cash = 0.0; for (int ren = 0; ren < t_datos.getRowCount(); ren++) { if (t_datos.getValueAt(ren, 38).toString().compareTo("e") != 0) { double res = 0.0; for (int r = 4; r < 10; r++) { if (t_datos.getValueAt(ren, r) != null) res += BigDecimal.valueOf(Double.parseDouble(t_datos.getValueAt(ren, r).toString())) .setScale(2, RoundingMode.HALF_UP).doubleValue(); } BigDecimal BigCantidad = BigDecimal .valueOf(Double.parseDouble(t_datos.getValueAt(ren, 10).toString())) .setScale(2, RoundingMode.HALF_UP); BigDecimal BigCU = BigDecimal.valueOf(Double.parseDouble(t_datos.getValueAt(ren, 14).toString())) .setScale(2, RoundingMode.HALF_UP); BigDecimal BigCIA = BigDecimal.valueOf(Double.parseDouble(t_datos.getValueAt(ren, 16).toString())) .setScale(2, RoundingMode.HALF_UP); BigDecimal BigAUT = BigDecimal.valueOf(Double.parseDouble(t_datos.getValueAt(ren, 19).toString())) .setScale(2, RoundingMode.HALF_UP); res *= BigCantidad.doubleValue(); t_datos.setValueAt(res, ren, 22); refacciones_costo += BigCU.doubleValue() * BigCantidad.doubleValue(); cia_seg += BigCIA.doubleValue() * BigCantidad.doubleValue(); if (((boolean) t_datos.getValueAt(ren, 21)) == true) autorizado += BigAUT.doubleValue(); if (((boolean) t_datos.getValueAt(ren, 20)) == true) vales += BigAUT.doubleValue(); mano_obra_horas += Double.parseDouble(t_datos.getValueAt(ren, 22).toString()); } } t_costo_refacciones.setValue(refacciones_costo); t_cia_seguros.setValue(cia_seg); t_autorizado.setValue(autorizado); t_autorizado1.setValue(vales); t_horas.setValue(mano_obra_horas); t_importe.setValue(importe * mano_obra_horas); } public void visualiza(boolean valor) { if (valor == true) { t_ref_presupuesto.setEnabled(user.getEditaRefPresupuesto()); t_ref_autorizadas_directo.setEnabled(user.getEditaRefAutorizadoDirecto()); t_mo_directa.setEnabled(user.getEditaMoDirecta()); t_mo_directa1.setEnabled(user.getEditaMoDirecta()); } else { t_ref_presupuesto.setEnabled(valor); t_ref_autorizadas_directo.setEnabled(valor); t_mo_directa.setEnabled(valor); t_mo_directa1.setEnabled(valor); for (int x = 0; x < t_datos.getColumnCount(); x++) { model.setColumnaEditable(x, valor); } } t_ref_presupuesto.setVisible(false); l1.setVisible(false); l3.setVisible(false); this.t_porcentaje.setEnabled(valor); this.t_porcentaje.setEnabled(valor); if (valor == true) { if (this.user.getEditaPorcentaje() == false) { this.t_ok.setEnabled(false); this.b_ok.setEnabled(false); } if (this.user.getEditaDd() == false) { this.t_deducible.setEnabled(false); this.t_demerito.setEnabled(false); t_vales.setEnabled(false); this.b_ac.setEnabled(false); } } else { this.t_ok.setEnabled(valor); this.b_ok.setEnabled(valor); } } public void verEstado() { if (estado.compareTo("") == 0) { Session session = HibernateUtil.getSessionFactory().openSession(); try { h = new Herramientas(user, 0); h.session(sessionPrograma); session.beginTransaction().begin(); ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); if (menu == 3) { if (ord.getRValuacionCierre() != null) visualiza(false); else visualiza(true); } if (menu == 4) { if (ord.getRCotizaCierre() != null) visualiza(false); else visualiza(true); } } catch (Exception e) { e.printStackTrace(); session.getTransaction().rollback(); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } else visualiza(false); } public void cabecera(PDF reporte, BaseFont bf, PdfPTable tabla) { Session session = HibernateUtil.getSessionFactory().openSession(); try { reporte.contenido.setLineWidth(0.5f); reporte.contenido.setColorStroke(new GrayColor(0.2f)); reporte.contenido.setColorFill(new GrayColor(0.9f)); reporte.contenido.roundRectangle(30, 700, 210, 45, 5); reporte.contenido.roundRectangle(250, 700, 325, 45, 5); //reporte.contenido.roundRectangle(550, 700, 210, 45, 5); Configuracion con = (Configuracion) session.get(Configuracion.class, 1); reporte.inicioTexto(); reporte.contenido.setFontAndSize(bf, 14); reporte.contenido.setColorFill(BaseColor.BLACK); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, con.getEmpresa(), 30, 760, 0); reporte.contenido.setFontAndSize(bf, 8); reporte.contenido.setColorFill(BaseColor.BLACK); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tabulador de Mano de Obra", 30, 750, 0); //reporte.contenido.showTextAligned(PdfContentByte.ALIGN_CENTER, "Consulta de Ordenes Filtrado por '"+this.c_filtro.getSelectedItem().toString()+"' ("+this.t_busca.getText()+")", 505, 537, 0); ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); //************************datos de la orden**************************** reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Orden:" + ord.getIdOrden(), 34, 735, 0); if (ord.getFecha() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Apertura:" + ord.getFecha(), 155, 735, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Apertura:", 155, 735, 0); String clien = ord.getClientes().getNombre(); if (clien.length() > 30) clien = ord.getClientes().getNombre().substring(0, 30); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Cliente:" + clien, 34, 725, 0); if (ord.getSiniestro() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Siniestro:" + ord.getSiniestro(), 34, 715, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Siniestro:", 34, 715, 0); if (ord.getFechaSiniestro() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "F. Siniestro:" + ord.getFechaSiniestro(), 155, 715, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "F.Siniestro:", 155, 715, 0); if (ord.getPoliza() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Poliza:" + ord.getPoliza(), 34, 705, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Poliza:", 34, 705, 0); if (ord.getInciso() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Inciso:" + ord.getInciso(), 155, 705, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Inciso:", 155, 705, 0); //********************************************************** //************datos de la unidad reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Unidad:" + ord.getTipo().getTipoNombre(), 255, 735, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Modelo:" + ord.getModelo(), 534, 735, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Marca:" + ord.getMarca().getMarcaNombre(), 255, 725, 0); if (ord.getNoEconomico() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Economico:" + ord.getNoEconomico(), 534, 725, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Economico:", 534, 725, 0); if (ord.getNoMotor() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Motor:" + ord.getNoMotor(), 255, 715, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Motor:", 255, 715, 0); if (ord.getNoSerie() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Serie:" + ord.getNoSerie(), 255, 705, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Serie:", 255, 705, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Fecha:" + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()), 564, 705, 0); //************************************************************* try { reporte.agregaObjeto(reporte.crearImagen(ord.getCompania().getFoto(), 455, -10, 13)); } catch (Exception e) { } reporte.finTexto(); //agregamos renglones vacios para dejar un espacio reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); //reporte.agregaObjeto(new Paragraph(" ")); Font font = new Font(Font.FontFamily.HELVETICA, 6, Font.BOLD); BaseColor cabecera = BaseColor.GRAY; BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; tabla.addCell(reporte.celda("Cant", font, cabecera, centro, 0, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Med", font, cabecera, centro, 0, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Grupo", font, cabecera, centro, 0, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Descripcin", font, cabecera, centro, 0, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("D/M", font, cabecera, centro, 0, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Cam", font, cabecera, centro, 0, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Reparar(hr)", font, cabecera, centro, 3, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Pin", font, cabecera, centro, 0, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Costo M.O.", font, cabecera, centro, 0, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Min", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Med", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Max", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); } catch (Exception e) { e.printStackTrace(); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } public void cabecera1(PDF reporte, BaseFont bf, PdfPTable tabla) { Session session = HibernateUtil.getSessionFactory().openSession(); try { reporte.contenido.setLineWidth(0.5f); reporte.contenido.setColorStroke(new GrayColor(0.2f)); reporte.contenido.setColorFill(new GrayColor(0.9f)); reporte.contenido.roundRectangle(30, 495, 210, 45, 5); reporte.contenido.roundRectangle(250, 495, 290, 45, 5); reporte.contenido.roundRectangle(550, 495, 210, 45, 5); reporte.agregaObjeto(reporte.crearImagen("imagenes/grande300115.jpg", 30, -40, 60)); reporte.inicioTexto(); reporte.contenido.setFontAndSize(bf, 8); reporte.contenido.setColorFill(BaseColor.BLACK); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "COTIZACIN DE REFACCIONES", 595, 552, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Especialidad: " + this.cb_tipo.getSelectedItem().toString(), 595, 542, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Fecha:" + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()), 760, 590, 0); ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); //************************datos de la orden**************************** reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Orden:" + ord.getIdOrden(), 34, 530, 0); if (ord.getFecha() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Apertura:" + ord.getFecha(), 155, 530, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Apertura:", 155, 530, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Compaia:" + ord.getCompania().getIdCompania() + " " + ord.getCompania().getNombre(), 34, 520, 0); if (ord.getSiniestro() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Siniestro:" + ord.getSiniestro(), 34, 510, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Siniestro:", 34, 510, 0); if (ord.getFechaSiniestro() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "F. Siniestro:" + ord.getFechaSiniestro(), 155, 510, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "F.Siniestro:", 155, 510, 0); if (ord.getPoliza() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Poliza:" + ord.getPoliza(), 34, 500, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Poliza:", 34, 500, 0); if (ord.getInciso() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Inciso:" + ord.getInciso(), 155, 500, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Inciso:", 155, 500, 0); //********************************************************** //************datos de la unidad reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Unidad:" + ord.getTipo().getTipoNombre(), 255, 530, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Modelo:" + ord.getModelo(), 534, 530, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Marca:" + ord.getMarca().getMarcaNombre(), 255, 520, 0); if (ord.getNoEconomico() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Economico:" + ord.getNoEconomico(), 534, 520, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Economico:", 534, 520, 0); if (ord.getNoMotor() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Motor:" + ord.getNoMotor(), 255, 510, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Motor:", 255, 510, 0); if (ord.getNoSerie() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Serie:" + ord.getNoSerie(), 255, 500, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Serie:", 255, 500, 0); //************************************************************* //****************Datos del valuador reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Valuador:", 555, 530, 0); if (ord.getEmpleadoByRLevantamiento() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, ord.getEmpleadoByRLevantamiento().getNombre(), 555, 520, 0); if (ord.getFechaTaller() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Fecha Entrega:" + ord.getFechaTaller(), 555, 510, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Fecha Entrega: //", 555, 510, 0); if (ord.getFechaCierre() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Cerrado:" + ord.getFechaCierre(), 555, 500, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Cerrado: //", 555, 500, 0); reporte.finTexto(); //agregamos renglones vacios para dejar un espacio reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); Font font = new Font(Font.FontFamily.HELVETICA, 6, Font.BOLD); BaseColor cabecera = BaseColor.GRAY; BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; tabla.addCell(reporte.celda("N", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("#", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Codigo", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Descripcin", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Cant", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Med", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); if (this.cb_precio.getSelectedItem().toString().compareToIgnoreCase("Compra") == 0) { tabla.addCell(reporte.celda("Cotizado", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Costo compra", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Autorizado", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Utilidad", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); } else { tabla.addCell(reporte.celda("Precio c/u", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Total", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Autorizado", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Ori", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE)); } } catch (Exception e) { e.printStackTrace(); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } public void cabecera2(PDF reporte, BaseFont bf, PdfPTable tabla, String tipo) { Session session = HibernateUtil.getSessionFactory().openSession(); try { reporte.contenido.setLineWidth(0.5f); reporte.contenido.setColorStroke(new GrayColor(0.2f)); reporte.contenido.setColorFill(new GrayColor(0.9f)); reporte.contenido.roundRectangle(160, 515, 210, 45, 5); reporte.contenido.roundRectangle(380, 515, 375, 45, 5); reporte.contenido.roundRectangle(35, 490, 720, 20, 5); reporte.inicioTexto(); reporte.contenido.setFontAndSize(bf, 14); reporte.contenido.setColorFill(BaseColor.BLACK); Configuracion con = (Configuracion) session.get(Configuracion.class, 1); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, con.getEmpresa(), 160, 580, 0); reporte.contenido.setFontAndSize(bf, 8); reporte.contenido.setColorFill(BaseColor.BLACK); //reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Refacciones de Operaciones", 160, 570, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Autorizacion de Operaciones (" + this.cb_tipo.getSelectedItem().toString() + tipo + ")", 160, 570, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Fecha:" + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()), 760, 580, 0); ord = (Orden) session.get(Orden.class, Integer.parseInt(orden)); Foto foto = (Foto) session.createCriteria(Foto.class) .add(Restrictions.eq("orden.idOrden", Integer.parseInt(orden))).addOrder(Order.desc("fecha")) .setMaxResults(1).uniqueResult(); if (foto != null) reporte.agregaObjeto(reporte.crearImagen( "ordenes/" + ord.getIdOrden() + "/miniatura/" + foto.getDescripcion(), 0, -60, 120, 70, 0)); else { } //************************datos de la orden**************************** reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Orden:" + ord.getIdOrden(), 164, 550, 0); if (ord.getFecha() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Apertura:" + ord.getFecha(), 285, 550, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Apertura:", 285, 550, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Compaia:" + ord.getCompania().getIdCompania() + " " + ord.getCompania().getNombre(), 164, 540, 0); if (ord.getSiniestro() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Siniestro:" + ord.getSiniestro(), 164, 530, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Siniestro:", 164, 530, 0); if (ord.getFechaSiniestro() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "F. Siniestro:" + ord.getFechaSiniestro(), 285, 530, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "F.Siniestro:", 285, 530, 0); if (ord.getPoliza() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Poliza:" + ord.getPoliza(), 164, 520, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Poliza:", 164, 520, 0); if (ord.getInciso() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Inciso:" + ord.getInciso(), 285, 520, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Inciso:", 285, 520, 0); //********************************************************** //************datos de la unidad reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Unidad:" + ord.getTipo().getTipoNombre(), 385, 550, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Modelo:" + ord.getModelo(), 664, 550, 0); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Marca:" + ord.getMarca().getMarcaNombre(), 385, 540, 0); if (ord.getNoEconomico() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Economico:" + ord.getNoEconomico(), 664, 540, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT, "Economico:", 664, 540, 0); if (ord.getNoMotor() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Motor:" + ord.getNoMotor(), 385, 530, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Motor:", 385, 530, 0); if (ord.getNoSerie() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Serie:" + ord.getNoSerie(), 385, 520, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N Serie:", 385, 520, 0); if (ord.getClientes() != null) { String val = ord.getClientes().getNombre(); if (ord.getClientes().getNombre().length() > 38) val = ord.getClientes().getNombre().substring(0, 37); reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Cliente:" + val, 525, 520, 0); } else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Cliente:", 525, 520, 0); //************************************************************* //****************Datos del valuador reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Valuador:", 40, 495, 0); if (ord.getEmpleadoByRLevantamiento() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, ord.getEmpleadoByRLevantamiento().getNombre(), 75, 495, 0); if (ord.getFechaTaller() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Fecha Entrega:" + ord.getFechaTaller(), 320, 495, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Fecha Entrega: //", 320, 495, 0); if (ord.getFechaCierre() != null) reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Cerrado:" + ord.getFechaCierre(), 500, 495, 0); else reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Cerrado: //", 500, 495, 0); reporte.finTexto(); //agregamos renglones vacios para dejar un espacio reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); reporte.agregaObjeto(new Paragraph(" ")); Font font = new Font(Font.FontFamily.HELVETICA, 6, Font.BOLD); BaseColor cabecera = BaseColor.GRAY; BaseColor contenido = BaseColor.WHITE; int centro = Element.ALIGN_CENTER; int izquierda = Element.ALIGN_LEFT; int derecha = Element.ALIGN_RIGHT; tabla.addCell(reporte.celda("No", font, cabecera, centro, 1, 3, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("#", font, cabecera, centro, 1, 3, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Especialidad", font, cabecera, centro, 4, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Cantidad", font, cabecera, centro, 2, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Med", font, cabecera, centro, 1, 3, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Ref. Cot.", font, cabecera, centro, 1, 3, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Cam", font, cabecera, centro, 1, 3, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Instruccion Final", font, cabecera, centro, 6, 1, Rectangle.RECTANGLE)); tabla.addCell( reporte.celda("D e s c r i p c i o n", font, cabecera, centro, 1, 3, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Inscruccion", font, cabecera, centro, 1, 3, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Hoj", font, cabecera, centro, 1, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Mec", font, cabecera, centro, 1, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Sus", font, cabecera, centro, 1, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Ele", font, cabecera, centro, 1, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Val", font, cabecera, centro, 1, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Aut", font, cabecera, centro, 1, 2, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Reparacion", font, cabecera, centro, 3, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Pintura", font, cabecera, centro, 3, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Min", font, cabecera, centro, 1, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Men", font, cabecera, centro, 1, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Max", font, cabecera, centro, 1, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Min", font, cabecera, centro, 1, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Men", font, cabecera, centro, 1, 1, Rectangle.RECTANGLE)); tabla.addCell(reporte.celda("Max", font, cabecera, centro, 1, 1, Rectangle.RECTANGLE)); } catch (Exception e) { e.printStackTrace(); } if (session != null) if (session.isOpen()) { session.flush(); session.clear(); session.close(); } } Object[] seleccion(int columna) { int[] selec = t_datos.getSelectedRows(); Object[] seleccion = new Object[selec.length]; for (int x = 0; x < seleccion.length; x++) { seleccion[x] = Integer.parseInt(t_datos.getValueAt(selec[x], columna).toString()); } return seleccion; } Object[] concatena() { int[] selec = t_datos.getSelectedRows(); Object[] seleccion = new Object[selec.length]; for (int x = 0; x < seleccion.length; x++) { seleccion[x] = t_datos.getValueAt(selec[x], 0).toString() + t_datos.getValueAt(selec[x], 0).toString(); } return seleccion; } }