Aggiunto controllo su import ordini EDI che permette al cliente MERCADONA di assegnare la data consegna del file piuttosto che calcolarla

This commit is contained in:
2024-05-06 16:35:32 +02:00
parent f8623173cb
commit e899ea74b9
2 changed files with 42 additions and 6 deletions

View File

@@ -0,0 +1,27 @@
package it.integry.ems.migration.model;
import it.integry.ems.migration._base.BaseMigration;
import it.integry.ems.migration._base.IntegryCustomerDB;
import it.integry.ems.migration._base.MigrationModelInterface;
public class Migration_20240506152142 extends BaseMigration implements MigrationModelInterface {
@Override
public void up() throws Exception {
if (isHistoryDB())
return;
if (!isCustomerDb(
IntegryCustomerDB.Gramm_Gramm)){
return;
}
createSetup("IMPORT_ORDINI", "EURITMO", "SET_DATA_CONS_CLIE_C2339", "N", "Se impostato a S allora la data di consegna non viene calcolata, ma presa quella del cliente", false, null, false, false, false, false, false, null, false, null);
}
@Override
public void down() throws Exception {
}
}

View File

@@ -331,13 +331,22 @@ public class OrdiniEDIimportService {
Date dataInizTrasp = dataOrd;
if ( flagDataCons ) {
String ggCons = UtilityHashMap.getValueIfExists(setup, "GG_CONS_"+codAnag);
sql = "SELECT dbo.RelativeWorkDate(" + UtilityDB.valueDateToString(dataOrd, CommonConstants.DATE_FORMAT_YMD) + "," + ggCons + ") ";
Date dataConsNew = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql);
if (dataConsNew != null) {
if (UtilityDate.DaysAfter(dataOrd, dataConsNew) > 0) {
dataInizTrasp = dataConsNew;
// Se il cliente setDataConsClieCustom = true allora vuol dire che la data di consengna deve essere quella del cliente, piuttosto che quella calcolata
boolean setDataConsClieCustom = UtilityHashMap.getValueIfExists(setup, "SET_DATA_CONS_CLIE_" + clienti.get(0), "N").equalsIgnoreCase("S");
if (setDataConsClieCustom){
if (UtilityDate.DaysAfter(dataOrd, dataConsClie) > 0) {
dataInizTrasp = dataConsClie;
}
} else {
String ggCons = UtilityHashMap.getValueIfExists(setup, "GG_CONS_"+codAnag);
sql = "SELECT dbo.RelativeWorkDate(" + UtilityDB.valueDateToString(dataOrd, CommonConstants.DATE_FORMAT_YMD) + "," + ggCons + ") ";
Date dataConsNew = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), sql);
if (dataConsNew != null) {
if (UtilityDate.DaysAfter(dataOrd, dataConsNew) > 0) {
dataInizTrasp = dataConsNew;
}
}
}
}