From bb1d007ecbf9a02ad7ec6c397afa2c52cf1da489 Mon Sep 17 00:00:00 2001 From: manuelstefanile Date: Tue, 4 Mar 2025 16:32:36 +0100 Subject: [PATCH] Ril. DBCFX_RU_374 - Modifica flussi Cubo Saldi Netti (Consumer e Business) gestione Codice_Sessione del.82 --- .../sql/alterTableGnpDwhe2eSaldinettiIn.sql | 2 + .../dao/db/hb/GnpDwhe2eSaldiNettiIn.hbm.xml | 4 +- .../gnp/dao/db/hb/GnpDwhe2eSaldinettiIn.java | 10 +- .../in/Dwhe2eRepoSaldiNettiIn.java | 100 +++++++++++------- 4 files changed, 70 insertions(+), 46 deletions(-) create mode 100644 gnpapp/script/RU_374_SaldiNetti_DwhE2e/sql/alterTableGnpDwhe2eSaldinettiIn.sql diff --git a/gnpapp/script/RU_374_SaldiNetti_DwhE2e/sql/alterTableGnpDwhe2eSaldinettiIn.sql b/gnpapp/script/RU_374_SaldiNetti_DwhE2e/sql/alterTableGnpDwhe2eSaldinettiIn.sql new file mode 100644 index 00000000..e5f4c81d --- /dev/null +++ b/gnpapp/script/RU_374_SaldiNetti_DwhE2e/sql/alterTableGnpDwhe2eSaldinettiIn.sql @@ -0,0 +1,2 @@ +TRUNCATE TABLE GNP_DWHE2E_SALDINETTI_IN; +ALTER TABLE GNP_DWHE2E_SALDINETTI_IN MODIFY ID_RICHIESTA varchar2(50); diff --git a/gnpdev/dbcfx/src/it/valueteam/gnp/dao/db/hb/GnpDwhe2eSaldiNettiIn.hbm.xml b/gnpdev/dbcfx/src/it/valueteam/gnp/dao/db/hb/GnpDwhe2eSaldiNettiIn.hbm.xml index 84b619be..d2bdb018 100644 --- a/gnpdev/dbcfx/src/it/valueteam/gnp/dao/db/hb/GnpDwhe2eSaldiNettiIn.hbm.xml +++ b/gnpdev/dbcfx/src/it/valueteam/gnp/dao/db/hb/GnpDwhe2eSaldiNettiIn.hbm.xml @@ -16,8 +16,8 @@ - - + + diff --git a/gnpdev/dbcfx/src/it/valueteam/gnp/dao/db/hb/GnpDwhe2eSaldinettiIn.java b/gnpdev/dbcfx/src/it/valueteam/gnp/dao/db/hb/GnpDwhe2eSaldinettiIn.java index af449eb6..70691a12 100644 --- a/gnpdev/dbcfx/src/it/valueteam/gnp/dao/db/hb/GnpDwhe2eSaldinettiIn.java +++ b/gnpdev/dbcfx/src/it/valueteam/gnp/dao/db/hb/GnpDwhe2eSaldinettiIn.java @@ -13,7 +13,7 @@ public class GnpDwhe2eSaldinettiIn implements java.io.Serializable { private Long uniqueId; private String nomeFile; private String crm; - private Long idRichiesta; + private String idRichiesta; private String linea; private String cor; private Date e2eDataCessazione; @@ -31,11 +31,11 @@ public class GnpDwhe2eSaldinettiIn implements java.io.Serializable { } - public GnpDwhe2eSaldinettiIn(Long idRichiesta) { + public GnpDwhe2eSaldinettiIn(String idRichiesta) { this.idRichiesta = idRichiesta; } - public GnpDwhe2eSaldinettiIn(String nomeFile, String crm, Long idRichiesta, String linea, String cor, Date e2eDataCessazione, String e2eServizioAccesso, String e2eDimensione1, String e2eDimensione2, String e2eDimensione3, String e2eDimensione4, String e2eDimensione5, String dbcfxDimCodiceOlo, String dbcfxDimTipoUscita, String dbcfxDimDelibera) { + public GnpDwhe2eSaldinettiIn(String nomeFile, String crm, String idRichiesta, String linea, String cor, Date e2eDataCessazione, String e2eServizioAccesso, String e2eDimensione1, String e2eDimensione2, String e2eDimensione3, String e2eDimensione4, String e2eDimensione5, String dbcfxDimCodiceOlo, String dbcfxDimTipoUscita, String dbcfxDimDelibera) { this.nomeFile = nomeFile; this.crm = crm; this.idRichiesta = idRichiesta; @@ -77,11 +77,11 @@ public class GnpDwhe2eSaldinettiIn implements java.io.Serializable { this.crm = crm; } - public Long getIdRichiesta() { + public String getIdRichiesta() { return this.idRichiesta; } - public void setIdRichiesta(Long idRichiesta) { + public void setIdRichiesta(String idRichiesta) { this.idRichiesta = idRichiesta; } diff --git a/gnpdev/dbcfx/src/it/valueteam/gnp/internalflow/in/Dwhe2eRepoSaldiNettiIn.java b/gnpdev/dbcfx/src/it/valueteam/gnp/internalflow/in/Dwhe2eRepoSaldiNettiIn.java index 1b08c63b..ad09effd 100644 --- a/gnpdev/dbcfx/src/it/valueteam/gnp/internalflow/in/Dwhe2eRepoSaldiNettiIn.java +++ b/gnpdev/dbcfx/src/it/valueteam/gnp/internalflow/in/Dwhe2eRepoSaldiNettiIn.java @@ -42,7 +42,7 @@ public class Dwhe2eRepoSaldiNettiIn extends InternalSenderProcess implements Log private static final String DEL_103_NATOLO_TIPOUSCITA = "Uscite 103 Donor Nativo OLO"; private static final String DEL_103_STD_VOIP_TIPOUSCITA = "Uscite 103 Standard o VOIP"; private static final String DATACESSAZIONE_FORMAT = new String("yyyy-MM-dd"); - private static final String REGEXP_SALDINETTI_LINE = "^(\\d{1,22});([^;]{0,15});([^;]{0,50});((\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01]))|);([^;]{0,1000});([^;]{0,1000});([^;]{0,1000});([^;]{0,1000});([^;]{0,1000});([^;]{0,1000})$"; + private static final String REGEXP_SALDINETTI_LINE = "^([^;]{1,50});([^;]{0,15});([^;]{0,50});((\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01]))|);([^;]{0,1000});([^;]{0,1000});([^;]{0,1000});([^;]{0,1000});([^;]{0,1000});([^;]{0,1000})$"; //variabible usata per associare ad ogni nome file il proprio numero di righe e di errori private HashMap associazioneFileReport; @@ -330,7 +330,7 @@ public class Dwhe2eRepoSaldiNettiIn extends InternalSenderProcess implements Log listForFile.add(gnpDwhe2eSaldinettiIn); else { irf.incrementRowError(); - log.write("9999", "Errore record nel formato della linea " + (row +1)); + log.write("9999", "Errore record nel formato della linea " + (row +1) + " : " +nextLine); } }catch (Exception e){ @@ -426,9 +426,20 @@ public class Dwhe2eRepoSaldiNettiIn extends InternalSenderProcess implements Log gnpDwhe2eSaldinettiIn.setNomeFile(nomeFile); gnpDwhe2eSaldinettiIn.setCrm(piattaforma); - //se manca l' ID_RICHIESTA, si romper il parse e non calcola il record - if (0 82 + Long id = Long.parseLong(parts[0]); + gnpDwhe2eSaldinettiIn.setIdRichiesta(parts[0]); + }catch (Exception e){ + // potrebbe essere popolato con un codice_sessione del.82 + if(parts[0].startsWith("C")||parts[0].startsWith("B")) + gnpDwhe2eSaldinettiIn.setIdRichiesta(parts[0]); + else + throw e; + } + } if (1