@@ -92,9 +92,11 @@ public it.govpay.bd.model.Versamento caricaVersamento(it.govpay.bd.model.Versame
92
92
BDConfigWrapper configWrapper = new BDConfigWrapper (ContextThreadLocal .get ().getTransactionId (), true );
93
93
VersamentiBD versamentiBD = null ;
94
94
try {
95
- ctx .getApplicationLogger ().log ("versamento.validazioneSemantica" , versamento .getApplicazione (configWrapper ).getCodApplicazione (), versamento .getCodVersamentoEnte ());
95
+ Dominio dominio = versamento .getDominio (configWrapper );
96
+ Applicazione applicazione = versamento .getApplicazione (configWrapper );
97
+ ctx .getApplicationLogger ().log ("versamento.validazioneSemantica" , applicazione .getCodApplicazione (), versamento .getCodVersamentoEnte ());
96
98
VersamentoUtils .validazioneSemantica (versamento );
97
- ctx .getApplicationLogger ().log ("versamento.validazioneSemanticaOk" , versamento . getApplicazione ( configWrapper ) .getCodApplicazione (), versamento .getCodVersamentoEnte ());
99
+ ctx .getApplicationLogger ().log ("versamento.validazioneSemanticaOk" , applicazione .getCodApplicazione (), versamento .getCodVersamentoEnte ());
98
100
99
101
if (bd == null ) {
100
102
versamentiBD = new VersamentiBD (configWrapper );
@@ -104,12 +106,11 @@ public it.govpay.bd.model.Versamento caricaVersamento(it.govpay.bd.model.Versame
104
106
}
105
107
106
108
appContext .getPagamentoCtx ().loadVersamentoContext (versamento );
107
-
108
109
try {
109
110
it .govpay .bd .model .Versamento versamentoLetto = versamentiBD .getVersamento (versamento .getIdApplicazione (), versamento .getCodVersamentoEnte (), true );
110
111
111
112
if (!aggiornaSeEsiste )
112
- throw new GovPayException (EsitoOperazione .VER_015 , versamento . getApplicazione ( configWrapper ) .getCodApplicazione (), versamento .getCodVersamentoEnte ());
113
+ throw new GovPayException (EsitoOperazione .VER_015 , applicazione .getCodApplicazione (), versamento .getCodVersamentoEnte ());
113
114
114
115
// Versamento presente.
115
116
versamento .setCreated (false );
@@ -118,19 +119,19 @@ public it.govpay.bd.model.Versamento caricaVersamento(it.govpay.bd.model.Versame
118
119
// se non erano stati assegnati o proposti iuv e numero avviso e ne e' richiesta l'assegnazione, li assegno
119
120
if (versamento .getIuvVersamento () == null && generaIuv ) {
120
121
Iuv iuvBusiness = new Iuv ();
121
- String iuv = iuvBusiness .generaIUV (versamento . getApplicazione ( configWrapper ), versamento . getDominio ( configWrapper ) , versamento .getCodVersamentoEnte (), TipoIUV .NUMERICO , bd );
122
+ String iuv = iuvBusiness .generaIUV (applicazione , dominio , versamento .getCodVersamentoEnte (), TipoIUV .NUMERICO , bd );
122
123
// imposto iuv calcolato
123
124
versamento .setIuvVersamento (iuv );
124
125
// calcolo il numero avviso
125
- it .govpay .core .business .model .Iuv iuvModel = IuvUtils .toIuv (versamento , versamento . getApplicazione ( configWrapper ), versamento . getDominio ( configWrapper ) );
126
+ it .govpay .core .business .model .Iuv iuvModel = IuvUtils .toIuv (versamento , applicazione , dominio );
126
127
versamento .setNumeroAvviso (iuvModel .getNumeroAvviso ());
127
128
}
128
129
129
130
// if(versamento.checkEsecuzioneUpdate(versamentoLetto)) { }
130
131
131
- ctx .getApplicationLogger ().log ("versamento.validazioneSemanticaAggiornamento" , versamento . getApplicazione ( configWrapper ) .getCodApplicazione (), versamento .getCodVersamentoEnte ());
132
+ ctx .getApplicationLogger ().log ("versamento.validazioneSemanticaAggiornamento" , applicazione .getCodApplicazione (), versamento .getCodVersamentoEnte ());
132
133
VersamentoUtils .validazioneSemanticaAggiornamento (versamentoLetto , versamento , log );
133
- ctx .getApplicationLogger ().log ("versamento.validazioneSemanticaAggiornamentoOk" , versamento . getApplicazione ( configWrapper ) .getCodApplicazione (), versamento .getCodVersamentoEnte ());
134
+ ctx .getApplicationLogger ().log ("versamento.validazioneSemanticaAggiornamentoOk" , applicazione .getCodApplicazione (), versamento .getCodVersamentoEnte ());
134
135
135
136
if (bd == null ) {
136
137
// creo connessione
@@ -149,24 +150,28 @@ public it.govpay.bd.model.Versamento caricaVersamento(it.govpay.bd.model.Versame
149
150
if (versamento .getId ()==null )
150
151
versamento .setId (versamentoLetto .getId ());
151
152
152
- ctx .getApplicationLogger ().log ("versamento.aggioramentoOk" , versamento . getApplicazione ( configWrapper ) .getCodApplicazione (), versamento .getCodVersamentoEnte ());
153
+ ctx .getApplicationLogger ().log ("versamento.aggioramentoOk" , applicazione .getCodApplicazione (), versamento .getCodVersamentoEnte ());
153
154
154
- log .info ("Versamento (" + versamento .getCodVersamentoEnte () + ") dell'applicazione (" + versamento . getApplicazione ( configWrapper ) .getCodApplicazione () + ") aggiornato" );
155
+ log .info ("Versamento (" + versamento .getCodVersamentoEnte () + ") dell'applicazione (" + applicazione .getCodApplicazione () + ") aggiornato" );
155
156
} else {
156
157
if (versamento .getId ()==null )
157
158
versamento .setId (versamentoLetto .getId ());
158
159
159
- log .info ("Versamento (" + versamento .getCodVersamentoEnte () + ") dell'applicazione (" + versamento . getApplicazione ( configWrapper ) .getCodApplicazione () + ") aggiornato in memoria." );
160
+ log .info ("Versamento (" + versamento .getCodVersamentoEnte () + ") dell'applicazione (" + applicazione .getCodApplicazione () + ") aggiornato in memoria." );
160
161
}
161
162
} catch (NotFoundException e ) {
162
163
if (versamento .getNumeroAvviso ()!=null ) {
164
+ // validazione del numero avviso in funzione della configurazione di dominio e applicazione
165
+ VersamentoUtils .checkNumeroAvvisoConformeAConfigurazioneDominioEStazione (versamento , applicazione , dominio );
166
+
167
+
163
168
try {
164
169
// verifica univocita dell'avviso pagamento prima di inserire il nuovo versamento
165
- it .govpay .bd .model .Versamento versamentoFromDominioNumeroAvviso = versamentiBD .getVersamentoByDominioIuv (versamento . getDominio ( configWrapper ) .getId (), IuvUtils .toIuv (versamento .getNumeroAvviso ()));
170
+ it .govpay .bd .model .Versamento versamentoFromDominioNumeroAvviso = versamentiBD .getVersamentoByDominioIuv (dominio .getId (), IuvUtils .toIuv (versamento .getNumeroAvviso ()));
166
171
167
172
// due pendenze non possono avere lo stesso numero avviso
168
173
//if(!versamentoFromDominioNumeroAvviso.getCodVersamentoEnte().equals(versamento.getCodVersamentoEnte()))
169
- throw new GovPayException (EsitoOperazione .VER_025 , versamento . getApplicazione ( configWrapper ) .getCodApplicazione (), versamento .getCodVersamentoEnte (),
174
+ throw new GovPayException (EsitoOperazione .VER_025 , applicazione .getCodApplicazione (), versamento .getCodVersamentoEnte (),
170
175
versamentoFromDominioNumeroAvviso .getApplicazione (configWrapper ).getCodApplicazione (), versamentoFromDominioNumeroAvviso .getCodVersamentoEnte (),versamento .getNumeroAvviso ());
171
176
172
177
}catch (NotFoundException e2 ) {
@@ -175,11 +180,11 @@ public it.govpay.bd.model.Versamento caricaVersamento(it.govpay.bd.model.Versame
175
180
} else if (generaIuv ) {
176
181
// Non ha numero avviso, ma e' richiesto che lo abbia
177
182
Iuv iuvBusiness = new Iuv ();
178
- String iuv = iuvBusiness .generaIUV (versamento . getApplicazione ( configWrapper ), versamento . getDominio ( configWrapper ) , versamento .getCodVersamentoEnte (), TipoIUV .NUMERICO , bd );
183
+ String iuv = iuvBusiness .generaIUV (applicazione , dominio , versamento .getCodVersamentoEnte (), TipoIUV .NUMERICO , bd );
179
184
// imposto iuv calcolato
180
185
versamento .setIuvVersamento (iuv );
181
186
// calcolo il numero avviso
182
- it .govpay .core .business .model .Iuv iuvModel = IuvUtils .toIuv (versamento , versamento . getApplicazione ( configWrapper ), versamento . getDominio ( configWrapper ) );
187
+ it .govpay .core .business .model .Iuv iuvModel = IuvUtils .toIuv (versamento , applicazione , dominio );
183
188
versamento .setNumeroAvviso (iuvModel .getNumeroAvviso ());
184
189
}
185
190
@@ -279,13 +284,13 @@ public it.govpay.bd.model.Versamento caricaVersamento(it.govpay.bd.model.Versame
279
284
280
285
if (salvataggioSuDB ) {
281
286
versamentiBD .insertVersamento (versamento );
282
- ctx .getApplicationLogger ().log ("versamento.inserimentoOk" , versamento . getApplicazione ( configWrapper ) .getCodApplicazione (), versamento .getCodVersamentoEnte ());
283
- log .info (MessageFormat .format ("Versamento ({0}) dell''applicazione ({1}) inserito" , versamento .getCodVersamentoEnte (), versamento . getApplicazione ( configWrapper ) .getCodApplicazione ()));
287
+ ctx .getApplicationLogger ().log ("versamento.inserimentoOk" , applicazione .getCodApplicazione (), versamento .getCodVersamentoEnte ());
288
+ log .info (MessageFormat .format ("Versamento ({0}) dell''applicazione ({1}) inserito" , versamento .getCodVersamentoEnte (), applicazione .getCodApplicazione ()));
284
289
285
290
// avvio il batch di gestione dei promemoria
286
291
Operazioni .setEseguiGestionePromemoria ();
287
292
} else {
288
- log .info (MessageFormat .format ("Versamento ({0}) dell''applicazione ({1}) inserito in memoria" , versamento .getCodVersamentoEnte (), versamento . getApplicazione ( configWrapper ) .getCodApplicazione ()));
293
+ log .info (MessageFormat .format ("Versamento ({0}) dell''applicazione ({1}) inserito in memoria" , versamento .getCodVersamentoEnte (), applicazione .getCodApplicazione ()));
289
294
}
290
295
}
291
296
if (doCommit ) versamentiBD .commit ();
0 commit comments