Skip to content

Commit

Permalink
revisione formattazione sequenza su legame titolo-titolo.
Browse files Browse the repository at this point in the history
  • Loading branch information
IstitutoCentraleCatalogoUnicoBiblio committed May 31, 2023
1 parent 747b34d commit 3d4bc6c
Show file tree
Hide file tree
Showing 14 changed files with 45 additions and 31 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6046,7 +6046,7 @@ private ActionForward invioIndiceOggetto(ActionMapping mapping, HttpServletReque
legameDocType.setIdArrivo(keyFiglio);
legameDocType.setCondiviso(LegameDocTypeCondivisoType.S);
legameDocType.setNoteLegame(treeElementViewFiglio.getDatiLegame().getNotaLegame());
legameDocType.setSequenza(treeElementViewFiglio.getDatiLegame().getSequenza());
legameDocType.setSequenza(SBNMarcUtil.formattaSequenza(treeElementViewFiglio.getDatiLegame().getSequenza()));
legameDocType.setSici(treeElementViewFiglio.getDatiLegame().getSici());
legameDocType.setTipoLegame(SbnLegameDoc.valueOf(treeElementViewFiglio.getDatiLegame().getTipoLegame()));
arrivoLegame.setLegameDoc(legameDocType);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@

package it.iccu.sbn.web.actions.gestionebibliografica.titolo;

import it.iccu.sbn.ejb.utils.ValidazioneDati;
import it.iccu.sbn.ejb.vo.common.CodiciType;
import it.iccu.sbn.ejb.vo.common.CodiciType.CodiciRicercaType;
import it.iccu.sbn.ejb.vo.gestionebibliografica.AreaDatiVariazioneReturnVO;
Expand All @@ -30,6 +31,7 @@
import it.iccu.sbn.web.integration.bd.FactoryEJBDelegate;
import it.iccu.sbn.web.util.CaricamentoCombo;
import it.iccu.sbn.web2.navigation.Navigation;
import it.iccu.sbn.web2.util.LinkableTagUtils;

import java.rmi.RemoteException;
import java.util.ArrayList;
Expand Down Expand Up @@ -117,11 +119,9 @@ protected ActionForward unspecified(ActionMapping mapping, ActionForm form,
if (gestLegTTForm.getAreaDatiLegameTitoloVO().getTipoOperazione().equals("Crea")) {
if (gestLegTTForm.getAreaDatiLegameTitoloVO().getNaturaBidPartenza().equals("M")
&& gestLegTTForm.getAreaDatiLegameTitoloVO().getNaturaBidArrivo().equals("M")) {
List listaTipoLegame = gestLegTTForm.getListaTipoLegame();
List listaTipoLegameDepurato = new ArrayList();
ComboCodDescVO codDesc;
for (int i = 0; i < listaTipoLegame.size(); i++) {
codDesc = (ComboCodDescVO) listaTipoLegame.get(i);
List<ComboCodDescVO> listaTipoLegame = gestLegTTForm.getListaTipoLegame();
List<ComboCodDescVO> listaTipoLegameDepurato = new ArrayList<ComboCodDescVO>();
for (ComboCodDescVO codDesc : listaTipoLegame) {
if (!codDesc.getCodice().equals(
gestLegTTForm.getAreaDatiLegameTitoloVO().getNaturaBidPartenza()
+ "51"
Expand Down Expand Up @@ -376,16 +376,17 @@ public ActionForward confermaOper(ActionMapping mapping, ActionForm form,

// Inizio Modifica almaviva2 01.12.2010 BUG MANTIS 4023 verifica che la nota al legame non superi gli 80 caratteri
// (GestioneLegameTitoloTitoloAction - confermaOper)
if (gestLegTTForm.getAreaDatiLegameTitoloVO().getNoteLegameNew() != null) {
if (gestLegTTForm.getAreaDatiLegameTitoloVO().getNoteLegameNew().length() > 80) {
ActionMessages errors = new ActionMessages();
errors.add("Attenzione", new ActionMessage("errors.gestioneBibliografica.notaLegameSup80Char"));
this.saveErrors(request, errors);
return mapping.getInputForward();
}
if (ValidazioneDati.length(gestLegTTForm.getAreaDatiLegameTitoloVO().getNoteLegameNew()) > 80) {
ActionMessages errors = new ActionMessages();
errors.add("Attenzione", new ActionMessage("errors.gestioneBibliografica.notaLegameSup80Char"));
this.saveErrors(request, errors);
return mapping.getInputForward();
}
// Fine Modifica almaviva2 01.12.2010 BUG MANTIS 4023

if (ValidazioneDati.length(gestLegTTForm.getAreaDatiLegameTitoloVO().getSequenzaNew()) > 10) {
LinkableTagUtils.addError(request, new ActionMessage("errors.gestioneBibliografica.sequenza10Chr"));
return mapping.getInputForward();
}

AreaDatiVariazioneReturnVO areaDatiPassReturn = null;
if (gestLegTTForm.getCreaLegameInferiore().equals("SI")) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<td width="60" class="etichetta"><bean:message
key="dettaglio.sequenzaLegame" bundle="gestioneBibliograficaLabels" /></td>
<td width="100" class="testoNormale"><html:text
property="areaDatiVarTitoloVO.sequenza" size="10"></html:text></td>
property="areaDatiVarTitoloVO.sequenza" size="10" maxlength="10"></html:text></td>
</tr>
</table>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
<td width="60" class="etichetta"><bean:message
key="dettaglio.sequenzaLegame" bundle="gestioneBibliograficaLabels" /></td>
<td width="100" class="testoNormale"><html:text
property="areaDatiLegameTitoloVO.sequenzaNew" size="10"></html:text></td>
property="areaDatiLegameTitoloVO.sequenzaNew" size="10" maxlength="10"></html:text></td>
</c:when>
</c:choose>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,7 @@ errors.gestioneBibliografica.ins046=<p class="messaggioAvviso">Campi obbligatori
errors.gestioneBibliografica.ins047=<p class="messaggioAvviso">Attenzione: I titoli di natura R (raccolta fattizia) possono essere catalogati solo in locale</p>
errors.gestioneBibliografica.catt02=<p class="messaggioAvviso">Attenzione: il titolo selezionato \u00e8 gi\u00e0 legato ad altro titolo; \u00e8 possibile catturare solo quelli gi\u00e0 presenti nel reticolo di {1}</p>
errors.gestioneBibliografica.notaLegameSup80Char=<p class="messaggioAvviso">Attenzione: La nota al legame supera gli 80 caratteri</p>
errors.gestioneBibliografica.sequenza10Chr=<p class="messaggioAvviso">Attenzione: La sequenza del legame supera i 10 caratteri</p>
errors.gestioneBibliografica.ric001=<p class="messaggioAvviso">Campi obbligatori - Attenzione: Indicare la data DA</p>
errors.gestioneBibliografica.ric002=<p class="messaggioAvviso">Campi obbligatori - Attenzione: La data DA non pu\u00f2 essere successiva alla data A</p>
errors.gestioneBibliografica.ric003=<p class="messaggioAvviso">Campi obbligatori - Attenzione: Inserire un canale primario</p>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ public class Configuration {
public static final String WS_MAX_CONCURRENT_CLIENTS = "WS_MAX_CONCURRENT_CLIENTS";

public static final String EXPORT_UNIMARC_AUTORI_FILE_ACCESSORI = "EXPORT_UNIMARC_AUTORI_FILE_ACCESSORI";
public static final String EXPORT_UNIMARC_FILE_ULTIMO_ID = "EXPORT_UNIMARC_FILE_ULTIMO_ID";

public static final String CSV_FIELD_SEPARATOR = "CSV_FIELD_SEPARATOR";

Expand Down
3 changes: 3 additions & 0 deletions SbnWebCommon/src/vo/it/iccu/sbn/util/config/sbnweb.conf
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,9 @@ FUSIONE_DELEGATE_CLASS=it.iccu.sbn.util.bibliografica.impl.SbnWebFusioneBaseDele
#file accessori export unimarc (separati da ;)
EXPORT_UNIMARC_FILE_ACCESSORI=BID-Classificazioni_SBW.txt;CategorieDiFruizione_SBW.txt;CodiciDiNonDisponibilita_SBW.txt;DescClassificazioni_SBW.txt;FruizioneInventari_SBW.txt;biblioteche.txt

#file che contiene il nr. richiesta dell'ultimo export elaborato
EXPORT_UNIMARC_FILE_ULTIMO_ID=ultimo_exp.txt

#webservice max clients
WS_MAX_CONCURRENT_CLIENTS=10

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2206,7 +2206,7 @@ public String[] creazioneCopiaTitoliAnaliticiConLegame(String monogDaCopiare, St
legameDocType.setNoteLegame(documentoType.getLegamiDocumento(i).getArrivoLegame(j).getLegameDoc().getNoteLegame());

// Mail scognamiglio 26.01.2017 - non viene copiato il numero di sequenza
legameDocType.setSequenza(documentoType.getLegamiDocumento(i).getArrivoLegame(j).getLegameDoc().getSequenza());
legameDocType.setSequenza(SBNMarcUtil.formattaSequenza(documentoType.getLegamiDocumento(i).getArrivoLegame(j).getLegameDoc().getSequenza()));

legameDocType.setIdArrivo(monogNuova);

Expand Down Expand Up @@ -4188,7 +4188,7 @@ public String inserisciDocumentoCatturato(

LegameDocType legameDocType = new LegameDocType();
legameDocType.setNoteLegame(areaDatiCatturaReticoloVO.getLegameDocType().getNoteLegame());
legameDocType.setSequenza(areaDatiCatturaReticoloVO.getLegameDocType().getSequenza());
legameDocType.setSequenza(SBNMarcUtil.formattaSequenza(areaDatiCatturaReticoloVO.getLegameDocType().getSequenza()));

// Inizio Modifica ALMAVIVA2 29.09.2009
// Per copia reticolo si deve inserire il legame 51 (e ovviamente la W) come locale
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,7 @@
import it.iccu.sbn.polo.orm.bibliografica.Tb_report_indice_id_arrivo;
import it.iccu.sbn.polo.orm.bibliografica.Tb_report_indice_id_locali;
import it.iccu.sbn.servizi.codici.CodiciProvider;

import it.iccu.sbn.util.sbnmarc.SBNMarcUtil;
import it.iccu.sbn.util.semantica.SemanticaUtil;
import it.iccu.sbn.vo.domain.CodiciAttivita;
import it.iccu.sbn.vo.domain.bibliografica.AreaDatiServizioInterrTitoloDomVO;
Expand Down Expand Up @@ -3192,7 +3192,7 @@ public AreaDatiVariazioneReturnVO inserisciTitolo(
} else {
LegameDocType legameDocType = new LegameDocType();
legameDocType.setNoteLegame(areaDatiPass.getNoteLegame());
legameDocType.setSequenza(areaDatiPass.getSequenza());
legameDocType.setSequenza(SBNMarcUtil.formattaSequenza(areaDatiPass.getSequenza()));
// Inizio intervento almaviva2 BUG 3288 - 28 ottobre 2009 -->
// Inizio modifica almaviva2 BUG MANTIS 4131 (Collaudo): inserito controllo su contenuto SICI
// che deve essere impostato solo se valorizzato
Expand Down Expand Up @@ -7386,7 +7386,7 @@ public String getDocumento(DocumentoType documentoType,
// value = Natura + livelloAutorita + " " + codiceLegameCompleto + " " + myData1 + " " + TitoloProprio;
// value = livelloAutoritaDesc + " " + Natura + " " + codiceLegameCompleto + " " + myData1 + " " + TitoloProprio;
if (visualizzaSequenza) {
if (numeroSequenza == null || numeroSequenza.equals("")) {
if (!ValidazioneDati.isFilled(numeroSequenza)) {
value = livelloAutoritaDesc + " " + Natura + " " + codiceLegameCompleto + " " + myData1 + " " + TitoloProprio;
} else {
value = livelloAutoritaDesc + " " + Natura + " " + codiceLegameCompleto + " " + myData1 + " (" +
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1925,8 +1925,7 @@ public DatiLegame getDatiLegameElemento(String id, SBNMarc sbnMarcType,

// prendo la sequenza
datiLegame
.setSequenza(legameDocumento
.getSequenza());
.setSequenza(ValidazioneDati.trimOrNull(legameDocumento.getSequenza()));

// prendo il sici
datiLegame.setSici(legameDocumento
Expand Down Expand Up @@ -2222,7 +2221,7 @@ private DatiLegame getDatiLegameElemento(SBNMarc sbnMarcType,
.toString());

// prendo la sequenza
datiLegame.setSequenza(legameDocType.getSequenza());
datiLegame.setSequenza(ValidazioneDati.trimOrNull(legameDocType.getSequenza()));

// prendo il sici
datiLegame.setSici(legameDocType.getSici());
Expand Down Expand Up @@ -3874,7 +3873,7 @@ public DatiLegame getDatiLegameNodo(LegameElementoAutType legameElemAut,
// LEGAME A DOCUMENTO
datiLegame = new DatiLegame();
datiLegame.setNotaLegame(legameDoc.getNoteLegame());
datiLegame.setSequenza(legameDoc.getSequenza());
datiLegame.setSequenza(ValidazioneDati.trimOrNull(legameDoc.getSequenza()));
datiLegame.setSici(legameDoc.getSici());
if (legameDoc.getTipoLegame() != null) {
datiLegame.setTipoLegame(legameDoc.getTipoLegame().toString());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -887,7 +887,7 @@ public SinteticaTitoliView creaElementoLista(SbnOutputType sbnOutPut,
if (visualNumSequenza.equals("SI")
&& (tipoLegameNumerico == 410 || tipoLegameNumerico == 461)
&& legameDocType.getSequenza() != null) {
stringArrivoLegame = stringArrivoLegame + " [sequenza:" + legameDocType.getSequenza() + "]";
stringArrivoLegame = stringArrivoLegame + " [sequenza:" + legameDocType.getSequenza().trim() + "]";

}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2057,8 +2057,8 @@ public LegamiType[] addLegami(AreaDatiLegameTitoloVO areaDatiPass) {
if ((areaDatiPass.getSiciNew() != null) && (ValidazioneDati.notEmpty(areaDatiPass.getSiciNew())))
legameDocType.setSici(areaDatiPass.getSiciNew());

if ((areaDatiPass.getSequenzaNew() != null) && (ValidazioneDati.notEmpty(areaDatiPass.getSequenzaNew())))
legameDocType.setSequenza(areaDatiPass.getSequenzaNew());
if (ValidazioneDati.isFilled(areaDatiPass.getSequenzaNew()))
legameDocType.setSequenza(SBNMarcUtil.formattaSequenza(areaDatiPass.getSequenzaNew()));

arrivoLegame.setLegameDoc(legameDocType);

Expand Down Expand Up @@ -2098,8 +2098,8 @@ public LegamiType[] addLegami(AreaDatiLegameTitoloVO areaDatiPass) {
if ((areaDatiPass.getSiciNew() != null) && (ValidazioneDati.notEmpty(areaDatiPass.getSiciNew())))
legameDocType.setSici(areaDatiPass.getSiciNew());

if ((areaDatiPass.getSequenzaNew() != null) && (ValidazioneDati.notEmpty(areaDatiPass.getSequenzaNew())))
legameDocType.setSequenza(areaDatiPass.getSequenzaNew());
if (ValidazioneDati.isFilled(areaDatiPass.getSequenzaNew()))
legameDocType.setSequenza(SBNMarcUtil.formattaSequenza(areaDatiPass.getSequenzaNew()));

arrivoLegame = new ArrivoLegame();
arrivoLegame.setLegameDoc(legameDocType);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,8 @@ public ElaborazioniDifferiteOutputVo execute(String prefissoOutput,
}

private boolean scriviFileUtimoExport(EsportaVO richiesta) throws Exception {
final String fileName = getDataPrepHome() + File.separator + "unimarc" + File.separator + "ultimo_exp.txt";
final String ultimoExport = CommonConfiguration.getProperty(Configuration.EXPORT_UNIMARC_FILE_ULTIMO_ID);
final String fileName = getDataPrepHome() + File.separator + "unimarc" + File.separator + ultimoExport;
return FileUtil.writeStringToFile(fileName, richiesta.getIdBatch());
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -461,6 +461,14 @@ public static final boolean eqAuthority(SbnAuthority authority, SbnAuthority...
return false;
}

public static String formattaSequenza(final String seq) {
if (ValidazioneDati.isFilled(seq)) {
return ValidazioneDati.trunc(ValidazioneDati.fillLeft(seq.trim(), ' ', 10), 10);
} else {
return null;
}
}

public static void main(String... args) {
System.out.println(timestampToT005(DaoManager.now()));
System.out.println(formattaSbnId("XXX1234567"));
Expand Down

0 comments on commit 3d4bc6c

Please sign in to comment.