private void btnAgregarViajeActionPerformed(
     java.awt.event.ActionEvent evt) { // GEN-FIRST:event_btnAgregarViajeActionPerformed
   DefaultTableModel modelo = (DefaultTableModel) tblViaje.getModel();
   int fila = tblViaje.getSelectedRow();
   Iterator ite = gestorH.listarClase(Viaje.class).iterator();
   while (ite.hasNext()) {
     Viaje viaje = (Viaje) ite.next();
     if (viaje.getIdViaje() == modelo.getValueAt(fila, 0)) {
       txtNumeroSolicitud.setText(viaje.getSolicitud().toString());
       txtNumViaje.setText(String.valueOf(viaje.getIdViaje()));
       txtFechaRealizacion.setText(viaje.getFecha());
       txtTipoViaje.setText(viaje.getTipoViaje().toString());
       txtCereal.setText(viaje.getSolicitud().getTipoCereal().toString());
       txtProductor.setText(viaje.getProductor().toString());
       txtHoraViaje.setText(viaje.getHora());
       Iterator ite1 = gestorH.listarClase(EstablecimientoPorViaje.class).iterator();
       while (ite1.hasNext()) {
         EstablecimientoPorViaje est = (EstablecimientoPorViaje) ite1.next();
         if (est.getViaje().equals(viaje)) {
           txtDestino.setText(est.getEstablecimiento().getNombreEstablecimiento());
         }
       }
       Iterator ite2 = gestorH.listarClase(PuertoPorViaje.class).iterator();
       while (ite2.hasNext()) {
         PuertoPorViaje est = (PuertoPorViaje) ite2.next();
         if (est.getViaje().equals(viaje)) {
           txtDestino.setText(est.getPuerto().getNombrePuerto());
         }
       }
       gestorA.RellenarTablaVehiculo(tblVehiculo, viaje);
     }
   }
 } // GEN-LAST:event_btnAgregarViajeActionPerformed
 private void btnAceptarVehiculoActionPerformed(
     java.awt.event.ActionEvent evt) { // GEN-FIRST:event_btnAceptarVehiculoActionPerformed
   DefaultTableModel modeloTabla = (DefaultTableModel) tblVehiculo.getModel();
   GestorHibernate gestorH = new GestorHibernate();
   int fila = tblVehiculo.getSelectedRow();
   Iterator ite = gestorH.listarClase(Vehiculo.class).iterator();
   while (ite.hasNext()) {
     Vehiculo vehiculo = (Vehiculo) ite.next();
     if (vehiculo.getDominio().equals(modeloTabla.getValueAt(fila, 0))) {
       txtVehiculo.setText(vehiculo.getModelo().toString());
       txtDominio.setText(vehiculo.getDominio());
       txtTransportista.setText(vehiculo.getTransportista().toString());
       txtTara.setText(String.valueOf(vehiculo.getTara()));
       txtTipoVehiculo.setText(vehiculo.getTipoVehiculo().toString());
     }
   }
 } // GEN-LAST:event_btnAceptarVehiculoActionPerformed
 private void btnGuardarActionPerformed(
     java.awt.event.ActionEvent evt) { // GEN-FIRST:event_btnGuardarActionPerformed
   gestorBitacora gestorB = new gestorBitacora();
   Iterator ite = gestorH.listarClase(Viaje.class).iterator();
   while (ite.hasNext()) {
     Viaje viaje = (Viaje) ite.next();
     if (viaje.getIdViaje() == Long.parseLong(txtNumViaje.getText())) {
       Iterator ite1 = gestorH.listarClase(Vehiculo.class).iterator();
       while (ite1.hasNext()) {
         Vehiculo vehiculo = (Vehiculo) ite1.next();
         if (vehiculo.getDominio().equalsIgnoreCase(txtDominio.getText())) {
           viaje.setVehiculo(vehiculo);
           viaje.setEstado("Con vehiculo asignado");
           gestorH.actualizarObjeto(viaje);
           vehiculo.setEstado("Asignado");
           gestorH.actualizarObjeto(vehiculo);
           gestorB.cargarBitacora(
               String.valueOf(viaje.getIdViaje()),
               txtFecha.getText(),
               3,
               labelusuario.getText(),
               "");
         }
       }
     }
   }
   DefaultTableModel modeloT = (DefaultTableModel) tblViaje.getModel();
   modeloT.setRowCount(0);
   gestorA.RellenarTablaViajes(tblViaje);
   txtNumeroSolicitud.setText("");
   txtDestino.setText("");
   txtCereal.setText("");
   txtFechaRealizacion.setText("");
   txtTipoViaje.setText("");
   txtNumViaje.setText("");
   txtProductor.setText("");
   DefaultTableModel modelo = (DefaultTableModel) tblVehiculo.getModel();
   modelo.setRowCount(0);
   txtVehiculo.setText("");
   txtTara.setText("");
   txtTipoVehiculo.setText("");
   txtTransportista.setText("");
   txtDominio.setText("");
   JOptionPane.showMessageDialog(null, "Se asigno correctamente el vehiculo");
 } // GEN-LAST:event_btnGuardarActionPerformed
  /** Creates new form frmAsignarTransporte */
  public frmAsignarTransporte() {
    initComponents();
    gestorH.actualizarUsuario(labelusuario);
    txtFecha.setEditable(false);
    txtFecha.setEnabled(false);
    txtHora.setEditable(false);
    txtHora.setEnabled(false);
    // setear el campo de fecha con la del sistema
    GregorianCalendar gc = new GregorianCalendar();
    GregorianCalendar.getInstance();
    gc.setTimeZone(TimeZone.getTimeZone("GMT-3"));
    gc.get(Calendar.DAY_OF_WEEK);
    gc.get(Calendar.MONTH);
    gc.get(Calendar.YEAR);
    SimpleDateFormat formateador = new SimpleDateFormat("dd-MM-yyyy");
    txtFecha.setText(formateador.format(gc.getTime()));
    // setear el campo de hora con la del sistema
    GregorianCalendar calendario = new GregorianCalendar();
    GregorianCalendar.getInstance();
    gc.setTimeZone(TimeZone.getTimeZone("GMT-3"));
    calendario.get(Calendar.HOUR);
    calendario.get(Calendar.MINUTE);
    SimpleDateFormat formateadorHora = new SimpleDateFormat("HH:mm");
    txtHora.setText(formateadorHora.format(calendario.getTime()));

    // Las siguientes lineas son para dar a la pantalla el tamaño requerido y luego centrarla en la
    // pantalla.
    Toolkit kit = Toolkit.getDefaultToolkit();
    Dimension tamanioPantalla = kit.getScreenSize();
    int ancho = 820;
    int alto = 570;
    //        int posX = (int) ((tamanioPantalla.width - ancho) / 2);
    //        int posY = (int) ((tamanioPantalla.height - alto) / 2);
    this.setSize(ancho, alto);
    this.setLocation(260, 30);

    // redimensionar columnas tabla
    tblViaje.getColumnModel().getColumn(0).setPreferredWidth(50);
    tblViaje.getColumnModel().getColumn(1).setPreferredWidth(50);
    tblViaje.getColumnModel().getColumn(2).setPreferredWidth(100);
    tblVehiculo.getColumnModel().getColumn(0).setPreferredWidth(100);
    tblVehiculo.getColumnModel().getColumn(1).setPreferredWidth(100);
    // centrar cabecera jtable
    DefaultTableCellRenderer renderer =
        (DefaultTableCellRenderer) tblVehiculo.getTableHeader().getDefaultRenderer();
    renderer.setHorizontalAlignment(0);
    DefaultTableCellRenderer renderer2 =
        (DefaultTableCellRenderer) tblViaje.getTableHeader().getDefaultRenderer();
    renderer2.setHorizontalAlignment(0);

    Iterator ite = gestorH.listarClase(Viaje.class).iterator();
    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yy");
    SimpleDateFormat sdfguion = new SimpleDateFormat("dd-MM-yyyy");
    while (ite.hasNext()) {
      Viaje viaje = (Viaje) ite.next();
      Date fecha1 = sdf.parse(viaje.getFecha(), new ParsePosition(0));
      Date fecha3 = sdfguion.parse(txtFecha.getText(), new ParsePosition(0));
      if (viaje.getEstado().equalsIgnoreCase("En Proceso")
          && (viaje.getTipoViaje().getNombreTipoViaje().equalsIgnoreCase("Traslado a Puerto")
              || viaje
                  .getTipoViaje()
                  .getNombreTipoViaje()
                  .equalsIgnoreCase("Traslado a Establecimiento"))) {
        if (fecha1.before(fecha3)) {
          viaje.setEstado("Finalizado");
          viaje.getVehiculo().setEstado("Disponible");
        }
      }
    }

    gestorA.RellenarTablaViajes(tblViaje);
  }