示例#1
0
 private void doReport(Discapacidad o) throws MissingReportException, JRException {
   Reportes r =
       new Reportes(
           DAO.getJDBCConnection(),
           SGD.getResources().getString("report.codigobarra"),
           "Archivo " + o.getClass().getSimpleName() + " N" + o.getBarcode());
   r.addParameter("TABLA", o.getClass().getSimpleName());
   r.addParameter("ID_TABLA", o.getId());
   r.viewReport();
 }
示例#2
0
 private void setPanelABM(Discapacidad afiliacion) {
   UTIL.setSelectedItem(abmPanel.getCbInstitucion(), afiliacion.getInstitucion().getNombre());
   abmPanel.setBarcode(SGDUtilities.getBarcode(afiliacion));
   DefaultTableModel dtm = (DefaultTableModel) abmPanel.getjTable1().getModel();
   dtm.setRowCount(0);
   for (DiscapacidadDetalle afiliacionDetalle : afiliacion.getDetalle()) {
     cargarTablaDetalle(afiliacionDetalle);
   }
   abmPanel.getBtnPrecintos().setEnabled(!afiliacion.getPrecintos().isEmpty());
 }
示例#3
0
 private void persistEntity() {
   if (entity.getId() == null) {
     jpaController.create(entity);
   } else {
     jpaController.merge(entity);
   }
 }
示例#4
0
 CustomABMJDialog viewArchivo(Discapacidad o) {
   abmPanel = new ABMDiscapacidadPanel();
   UTIL.hideColumnTable(abmPanel.getjTable1(), 0);
   abmPanel.getCbInstitucion().addItem(o.getInstitucion().getNombre());
   setPanelABM(o);
   CustomABMJDialog ccustomABMJDialog =
       new CustomABMJDialog(
           null,
           abmPanel,
           "Archivo " + o.getClass().getSimpleName() + " " + o.getBarcode(),
           true,
           null);
   ccustomABMJDialog.setToolBarVisible(false);
   ccustomABMJDialog.setBottomButtonsVisible(false);
   ccustomABMJDialog.setPanelComponentsEnabled(false);
   return ccustomABMJDialog;
 }
示例#5
0
 private void borrarDetalle() {
   int[] selectedRows = abmPanel.getjTable1().getSelectedRows();
   for (int ii = 0; ii < selectedRows.length; ii++) {
     int selectedRow = selectedRows[ii];
     DefaultTableModel dtm = (DefaultTableModel) abmPanel.getjTable1().getModel();
     DiscapacidadDetalle candidate = (DiscapacidadDetalle) dtm.getValueAt(selectedRow, 0);
     DiscapacidadDetalle removed = null;
     for (int i = 0; i < entity.getDetalle().size(); i++) {
       DiscapacidadDetalle ad = entity.getDetalle().get(i);
       if (candidate.getId() != null && candidate.getId().equals(ad.getId())) {
         removed = entity.getDetalle().remove(i);
       } else if (candidate.getId() == null
           && ad.getId() == null
           && candidate.getOrderIndex().equals(ad.getOrderIndex())) {
         removed = entity.getDetalle().remove(i);
       }
     }
     LOG.debug("borrando.. " + selectedRow + ", " + removed);
     dtm.removeRow(selectedRow);
   }
 }
示例#6
0
 private void crearArchivo(boolean cerrarYPrecintar) {
   try {
     if (entity == null) {
       throw new IllegalArgumentException(
           "Seleccione \"Nuevo\" para crear un Usuario nuevo o \"Editar\" para uno existente.");
     }
     String msj = entity.getId() == null ? "Registrado.." : "Modificado..";
     boolean nuevo = entity.getId() == null;
     setEntity(cerrarYPrecintar);
     persistEntity();
     customABMJDialog.showMessage(msj, null, 1);
     if (nuevo || SGDUtilities.reImprimirCodigoBarraArchivo()) {
       doReport(entity);
     }
     btnCancelarAction();
     customABMJDialog.getBtnNuevo().requestFocusInWindow();
   } catch (IllegalArgumentException | MessageException ex) {
     customABMJDialog.showMessage(
         ex.getMessage(), "Datos incorrectos", JOptionPane.WARNING_MESSAGE);
   } catch (Exception ex) {
     customABMJDialog.showMessage(ex.getLocalizedMessage(), "ERROR", JOptionPane.ERROR_MESSAGE);
     Logger.getLogger(this.getClass()).error(ex.getLocalizedMessage(), ex);
   }
 }
示例#7
0
 private void setEntity(boolean cerrarYPrecintar) throws MessageException {
   if (entity.getDetalle() == null || entity.getDetalle().isEmpty()) {
     throw new MessageException(
         "Debe contener al menos un detalle (No vas a mandar la caja vacía..)");
   }
   if (cerrarYPrecintar) {
     List<String> codigoPrecintos = SGDUtilities.initPrecintosUI(customABMJDialog);
     if (codigoPrecintos.isEmpty()) {
       throw new MessageException(SGD.getResources().getString("cargaprecintoscancelada"));
     }
     for (String codigo : codigoPrecintos) {
       entity.getPrecintos().add(new DiscapacidadPrecinto(codigo, entity));
     }
   }
   if (entity.getId() == null) {
     @SuppressWarnings("unchecked")
     ComboBoxWrapper<UsuarioSector> cb =
         (ComboBoxWrapper<UsuarioSector>) abmPanel.getCbInstitucion().getSelectedItem();
     entity.setInstitucion(cb.getEntity().getInstitucion());
     entity.setSector(cb.getEntity().getSector());
     entity.setUsuario(UsuarioController.getCurrentUser());
   }
 }
示例#8
0
 @Override
 public void actionPerformed(ActionEvent e) {
   System.out.println(e.toString());
   System.out.println(customABMJDialog != null ? customABMJDialog.isActive() : "NO");
   if (customABMJDialog != null && customABMJDialog.isActive()) {
     if (e.getSource().getClass().equals(JButton.class)) {
       System.out.println("acá también..");
       if (e.getSource().equals(customABMJDialog.getBtnAceptar())) {
         crearArchivo(false);
       } else if (e.getSource().equals(customABMJDialog.getBtnExtraBottom())) {
         crearArchivo(true);
       } else if (e.getSource().equals(customABMJDialog.getBtnCancelar())) {
         btnCancelarAction();
       } else if (e.getSource().equals(customABMJDialog.getBtnNuevo())) {
         btnNuevoAction();
       } else if (e.getSource().equals(customABMJDialog.getBtnEditar())) {
         try {
           if (entity == null || entity.getId() == null) {
             throw new MessageException(
                 "No a seleccionado ninguna caja"
                     + "\nUtilice el buscador para seleccionar la que desea modificar.");
           }
           if (entity.getRecibo() != null) {
             throw new MessageException(
                 SGD.getResources()
                     .getString("recibonotnull")
                     .replaceAll("<Sector>", sectorUI.toString()));
           }
           if (!entity.getPrecintos().isEmpty()) {
             if (SGDUtilities.confirmarReAperturaDeArchivo()) {
               removePrecintos(entity);
             } else {
               return;
             }
           }
           customABMJDialog.setPanelComponentsEnabled(true);
           customABMJDialog.setEnabledBottomButtons(true);
           abmPanel.getCbInstitucion().setEnabled(false);
         } catch (MessageException ex) {
           ex.displayMessage(customABMJDialog);
         }
       } else if (e.getSource().equals(customABMJDialog.getBtnBuscar())) {
         initBuscador();
         if (buscador.isEligio()) {
           customABMJDialog.setPanelComponentsEnabled(false);
           customABMJDialog.setEnabledBottomButtons(false);
           setPanelABM(entity);
         }
       } else if (e.getSource().equals(customABMJDialog.getBtnBorrar())) {
         customABMJDialog.showMessage(
             "¡No implementado aún!", "Advertencia", JOptionPane.WARNING_MESSAGE);
       } else if (e.getSource().equals(abmPanel.getBtnAgregar())) {
         try {
           DiscapacidadDetalle detalle = getDetalle(abmPanel.getData());
           checkConstraints(detalle);
           entity.getDetalle().add(detalle);
           cargarTablaDetalle(detalle);
           abmPanel.resetUI(false);
           abmPanel.getCbTipoDocumento().requestFocusInWindow();
         } catch (MessageException ex) {
           customABMJDialog.showMessage(ex.getMessage(), "Error", JOptionPane.WARNING_MESSAGE);
         }
       } else if (e.getSource().equals(abmPanel.getBtnQuitar())) {
         borrarDetalle();
       } else if (e.getSource().equals(abmPanel.getBtnPrecintos())) {
         if (entity != null) {
           if (!entity.getPrecintos().isEmpty()) {
             SGDUtilities.initPrecintosUI(customABMJDialog, entity.getPrecintos());
           } else {
             customABMJDialog.showMessage(
                 SGD.getResources().getString("unclosedEntityPrecintos"),
                 "Error",
                 JOptionPane.WARNING_MESSAGE);
           }
         }
       }
     }
   } else if (buscador != null && buscador.isActive()) {
     if (e.getSource().equals(buscador.getbBuscar())) {
       String jpql = armarQuery();
       List<DiscapacidadDetalle> list = jpaController.findDetalleByJPQL(jpql);
       if (list.isEmpty()) {
         JOptionPane.showMessageDialog(buscador, "La busqueda no produjo ningún resultado");
         return;
       }
       cargarTablaBuscador(list);
     }
   }
 }
示例#9
0
 void recepcionar(Integer archivoId) {
   Discapacidad o = jpaController.find(archivoId);
   o.setRecibo(null);
   jpaController.merge(o);
 }
示例#10
0
 void enviado(Integer archivoId, Recibo recibo) {
   Discapacidad o = jpaController.find(archivoId);
   o.setRecibo(recibo);
   jpaController.merge(o);
 }
示例#11
0
  private DiscapacidadDetalle getDetalle(Map<String, Object> data) throws MessageException {
    TipoDocumento td;
    SubTipoDocumento std;
    Long numeroDocumento = null;
    Integer periodoYear;
    String apellido;
    String nombre;
    Date documentoFecha;
    String observacion;

    try {
      @SuppressWarnings("unchecked")
      ComboBoxWrapper<TipoDocumento> cb = (ComboBoxWrapper<TipoDocumento>) data.get("td");
      td = cb.getEntity();
    } catch (Exception e) {
      throw new MessageException("Tipo de Documento no válido");
    }
    try {
      @SuppressWarnings("unchecked")
      ComboBoxWrapper<SubTipoDocumento> cbs = (ComboBoxWrapper<SubTipoDocumento>) data.get("std");
      std = cbs.getEntity();
    } catch (ClassCastException e) {
      std = null;
    }

    try {
      if (!data.get("documentonumero").toString().isEmpty()) {
        numeroDocumento = Long.valueOf(data.get("documentonumero").toString());
      }
    } catch (NumberFormatException numberFormatException) {
      throw new MessageException("Número de documento no válido (ingrese solo números)");
    }
    try {
      periodoYear = Integer.valueOf(data.get("periodo").toString());
    } catch (NumberFormatException numberFormatException) {
      throw new MessageException("Número de carpeta no válido (ingrese solo números)");
    }
    apellido = (String) data.get("apellido");
    if (apellido.isEmpty()) {
      apellido = null;
    }
    nombre = (String) data.get("nombre");
    if (nombre.isEmpty()) {
      nombre = null;
    }
    documentoFecha = (Date) data.get("documentofecha");
    observacion = (String) data.get("observacion");
    if (observacion.isEmpty()) {
      observacion = null;
    }
    DiscapacidadDetalle detalle =
        new DiscapacidadDetalle(
            entity.getNextOrderIndex(),
            td,
            std,
            entity,
            numeroDocumento,
            documentoFecha,
            periodoYear,
            apellido,
            nombre,
            observacion);
    return detalle;
  }