/** * Obtiene la unidad documental en el cuadro de clasificacion en la que se ha integrado la unidad * documental proveniente de relacion de entrega que se indica * * @param id * @return */ public UnidadDocumentalVO getUdocXUdocEnTransferencia(String idUdocEnRelacionEntrega) { List signaturasUdoc = _udocDepositoDBEntity.getPartesUdocByIDUdocEnRelacionEntrega(idUdocEnRelacionEntrega); if (CollectionUtils.isEmpty(signaturasUdoc)) return null; UDocEnUiDepositoVO signaturaUdoc = (UDocEnUiDepositoVO) signaturasUdoc.get(0); return _unidadDocumentalDBEntity.getUnidadDocumental(signaturaUdoc.getIdunidaddoc()); }
public void getStatementValues(DbOutputStatement stmt) throws Exception { HashMap valueHashMap = new HashMap(); Integer[] posColsIdsInteger = new Integer[posColsIds.length]; for (int i = 0; i < posColsIds.length; i++) posColsIdsInteger[i] = new Integer(posColsIds[i]); HashSet colsIds = new HashSet(CollectionUtils.createList(posColsIdsInteger)); String[] cadKeyMap = new String[posColsIds.length]; for (int i = 0; i < colDef.length; i++) { Object mapVal = valueGetter[i].extractValue(stmt, i + 1); valueHashMap.put(colDef[i].getBindPropertyVO(), mapVal); if (colsIds.contains("" + i)) cadKeyMap[i] = mapVal.toString(); } String key = ""; for (int i = 0; i < posColsIds.length; i++) { key += cadKeyMap[i]; if (i + 1 > posColsIds.length) key += separador; } values.put(key, valueHashMap); }
private void eliminarUnidadDocumental(UnidadDocumentalVO udoc, Integer motivo) throws Exception { // Abrimos la transaccion iniciarTransaccion(); // // TODO Incorporar la udoc al histórico // HistoricoUDOCVO historicoUDOC = new HistoricoUDOCVO(); // historicoUDOC.setCodRefUdoc(udoc.getCodReferencia()); // historicoUDOC.setIdEliminacion(null); // Error: NOT NULL // historicoUDOC.setIdUDOC(udoc.getId()); // historicoUDOC.setSignaturaUdoc(udoc.getCodigo()); // historicoUDOC.setTituloUdoc(udoc.getTitulo()); // historicoUDOC.setNumExpUdoc(udoc.getNumExp()); // getGestionEliminacionBI().crearHistoricoUDOC( historicoUDOC ); // Eliminar la descripción if (udoc.tieneDescripcion()) getGestionDescripcionBI().deleteFicha(udoc.getId(), TipoFicha.FICHA_ELEMENTO_CF); // Eliminar los documentos electrónicos GestionDocumentosElectronicosBI serviceDocumentos = getGestionDocumentosElectronicosBI(); serviceDocumentos.deleteDocumentos(udoc.getId(), TipoObjeto.ELEMENTO_CF); // Eliminamos las referencias a documentos vitales getGestionDocumentosVitalesBI() .eliminaVinculosExpediente(udoc.getNumExp(), udoc.getCodSistProductor()); // Eliminar las tareas de captura relacionadas serviceDocumentos.eliminarTareas( udoc.getId(), ElementoCuadroClasificacion.TIPO_UNIDAD_DOCUMENTAL); // Desinstalar la unidad documental List partesUdoc = getUdocsEnUI(udoc.getId()); CollectionUtils.transform( partesUdoc, new Transformer() { public Object transform(Object obj) { return ((UDocEnUiDepositoVO) obj).getIduinstalacion(); } }); desinstalarUnidadDocumental(udoc.getId()); // Eliminar la unidad documental y el elemento del cuadro eliminarUdocBasico(udoc.getId()); // Comprobar las unidades de instalación distintas // y si son vacías las eliminamos. int numUnidadesInstalacion = 0; // int volumenEliminado = 0; double volumenEliminado = 0; GestorEstructuraDepositoBI serviceEstructura = getGestorEstructuraDepositoBI(); for (Iterator itUnidades = partesUdoc.iterator(); itUnidades.hasNext(); ) { String idUnidadInstalacion = (String) itUnidades.next(); List udocsEnUI = getUdocsEnUnidadInstalacion(idUnidadInstalacion); if (CollectionUtils.isEmpty(udocsEnUI)) { UInsDepositoVO unidadInstalacion = serviceEstructura.getUinsEnDeposito(idUnidadInstalacion); FormatoHuecoVO formato = serviceEstructura.getFormatoHueco(unidadInstalacion.getIdformato()); // volumenEliminado += formato.getLongitud().intValue(); if (formato != null) { if (formato.getLongitud() == null || formato.getLongitud().doubleValue() == Double.MIN_VALUE) volumenEliminado += serviceEstructura.getLongitudHuecosIrregularesXIdUInstalacion(idUnidadInstalacion); else volumenEliminado += formato.getLongitud().doubleValue(); } if (unidadInstalacion == null) { unidadInstalacion = new UInsDepositoVO(); unidadInstalacion.setId(idUnidadInstalacion); } // Obtener el idArchivo HuecoVO huecoVO = serviceEstructura.getHuecoUInstalacion(idUnidadInstalacion); String idArchivo = null; if (huecoVO != null) { DepositoVO deposito = serviceEstructura.getUbicacion(huecoVO.getIddeposito()); if (deposito != null) idArchivo = deposito.getIdArchivo(); } serviceEstructura.deleteUInstDeposito(idArchivo, unidadInstalacion, motivo); serviceEstructura.liberaUnidadInstalacion(idUnidadInstalacion); numUnidadesInstalacion++; } } // Actualizar los datos de la serie GestionSeriesBI serieBI = getGestionSeriesBI(); serieBI.updateVolumenSerieNoTransaccional(udoc.getIdSerie()); serieBI.updateContenidoSerieNoTransaccional(udoc.getIdSerie()); // Cerramos la transaccion commit(); }