Merge branch 'develop' into feature/RefactoringCRM
Some checks failed
IntegryManagementSystem_Multi/pipeline/head There was a failure building this commit
Some checks failed
IntegryManagementSystem_Multi/pipeline/head There was a failure building this commit
# Conflicts: # ems-engine/src/main/java/it/integry/ems/order/crm/service/CrmService.java
This commit is contained in:
@@ -49,8 +49,8 @@ pipeline {
|
||||
steps {
|
||||
echo "Updating Tomcat9 from ${WORKSPACE}"
|
||||
powershell returnStdout: true, script: "build\\update_tomcat.ps1 -serviceName \"Tomcat9Backup\" -httpPort \"8082\" -updatedArtifactPath \"${WORKSPACE}\\ems-engine\\target\\ems-api.war\""
|
||||
bat 'curl -k https://devservices.studioml.it/ems-api/updateWMSApp'
|
||||
bat 'curl -k https://devservices.studioml.it/ems-api/updateWMSApp?suffix=beta'
|
||||
bat 'curl -k https://devservices.studioml.it/ems-api/updateWMSApp?overrideForced=false'
|
||||
bat 'curl -k https://devservices.studioml.it/ems-api/updateWMSApp?overrideForced=false&suffix=beta'
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -83,8 +83,8 @@ sudo /usr/bin/systemctl start tomcat9backup
|
||||
/home/studioml/./wait_tomcat_startup.sh 8082
|
||||
|
||||
sleep 10''', execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: '[, ]+', remoteDirectory: '/tomcat9backup/webapps', remoteDirectorySDF: false, removePrefix: 'ems-engine/target/', sourceFiles: 'ems-engine/target/*.war*')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
|
||||
bat 'curl -k https://services.studioml.it/ems-api/updateWMSApp'
|
||||
bat 'curl -k https://services.studioml.it/ems-api/updateWMSApp?suffix=beta'
|
||||
bat 'curl -k https://services.studioml.it/ems-api/updateWMSApp?overrideForced=false'
|
||||
bat 'curl -k https://services.studioml.it/ems-api/updateWMSApp?overrideForced=false&suffix=beta'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20250617102219 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
executeStatement("ALTER TABLE vtb_dest ADD stampa_doc_cons BIT NOT NULL DEFAULT 0");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20250617132439 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetup("DTB_ORDT", "SETUP", "SERIE_SUDDIVISIONE", null,
|
||||
"serie ordine utilizzata per riconoscere gli ordini di suddivisione", false, null, false, false,
|
||||
false, false, false, null, false, null);
|
||||
|
||||
if ( isCustomer(IntegryCustomer.Carelli)) {
|
||||
updateSetupValue("DTB_ORDT", "SETUP", "SERIE_SUDDIVISIONE", "SU");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20250617161250 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if (isCustomer(IntegryCustomer.Agricoper)) {
|
||||
updateSetupValue("w_vordi_rc", "SETUP", "RIF_ORD_AUTOCOMP","S");
|
||||
}
|
||||
|
||||
if (isWingest())
|
||||
updateSetupValue("w_tmcolt_rc","STAMPA_COLLO", "PRINT_AFTER_INS", "N");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.IntegryCustomer;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20250618145438 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createSetupQuery("SI_NO", "SI_NO", "SELECT 'S' UNION ALL SELECT 'N'");
|
||||
createSetup("DATI_AZIENDA", "FATTURAZIONE_ELETTRONICA", "SALVA_IBAN_FORN", "S",
|
||||
"Salva l'iban nell'anagrafica del fornitore", false, "SI_NO", false, false,
|
||||
false, false, false, null, false, "SELECT 'S' UNION ALL SELECT 'N'");
|
||||
|
||||
if (isCustomer(IntegryCustomer.Carelli)) {
|
||||
updateSetupValue("DATI_AZIENDA", "FATTURAZIONE_ELETTRONICA", "SALVA_IBAN_FORN", "N");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -651,13 +651,12 @@ public class DocOrdCalTotaliRules extends QueryRules {
|
||||
"Impossibile salvare l'ordine %s del %s n. %s, riga %s senza aliquota IVA",
|
||||
gestione, UtilityDate.formatDate(row.getDataOrd(), CommonConstants.DATE_FORMAT_DMY), row.getNumOrd(), riga));
|
||||
} else {
|
||||
riga = ((DtbBaseDocR) row).getIdRiga();
|
||||
throw new Exception(String.format(
|
||||
"Impossibile salvare il documento %s del %s n. %s/%s, riga %s senza aliquota IVA",
|
||||
"Impossibile salvare il documento %s del %s n. %s/%s, articolo %s senza aliquota IVA",
|
||||
((DtbBaseDocR) row).getCodDtip(),
|
||||
UtilityDate.formatDate(((DtbBaseDocR) row).getDataDoc(), CommonConstants.DATE_FORMAT_DMY),
|
||||
((DtbBaseDocR) row).getSerDoc(),
|
||||
((DtbBaseDocR) row).getNumDoc(), riga
|
||||
((DtbBaseDocR) row).getNumDoc(), (codMart == null ? "" : codMart + " - ") + row.getDescrizione()
|
||||
));
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package it.integry.ems.rules.completing;
|
||||
|
||||
import it.integry.common.var.CommonConstants;
|
||||
import it.integry.ems.sync.MultiDBTransaction.Connection;
|
||||
import it.integry.ems_model.config.EmsRestConstants;
|
||||
import it.integry.ems_model.entity.*;
|
||||
import it.integry.ems_model.entity.common.DtbDocOrdT;
|
||||
import it.integry.ems_model.entity.common.DtbOrdCommonR;
|
||||
@@ -246,7 +247,7 @@ public class OrderRules extends QueryRules {
|
||||
|
||||
boolean generaCommessa = setupGest.getSetupBoolean(conn, "w_dordi_rc", "CREA_COMMESSA", "AUTO_GENERATE");
|
||||
String descrizioneCommessa = null;
|
||||
if (generaCommessa || ( dtbOrdt.getJtbComt() != null && (!UtilityString.isNullOrEmpty(dtbOrdt.getJtbComt().getCig()) || !UtilityString.isNullOrEmpty(dtbOrdt.getJtbComt().getCup()) ))) {
|
||||
if (generaCommessa || (dtbOrdt.getJtbComt() != null && (!UtilityString.isNullOrEmpty(dtbOrdt.getJtbComt().getCig()) || !UtilityString.isNullOrEmpty(dtbOrdt.getJtbComt().getCup())))) {
|
||||
String destinazione = null;
|
||||
String formatoDescrizione = setupGest.getSetup(conn, "w_dordi_rc", "CREA_COMMESSA", "FORMATO_DESCRIZIONE");
|
||||
jtbComt = new JtbComt();
|
||||
@@ -306,27 +307,27 @@ public class OrderRules extends QueryRules {
|
||||
String codFirstMart = wdtbOrdt.getWdtbOrdr().get(0).getCodMart();
|
||||
sql =
|
||||
Query.format(
|
||||
"SELECT cast(COUNT(*) as bit)\n" +
|
||||
"FROM wdtb_ordt t\n" +
|
||||
" INNER JOIN tvvw_style_min_ord wr\n" +
|
||||
" ON t.gestione = wr.gestione AND t.num_ord = wr.num_ord AND t.data_ord = wr.data_ord AND\n" +
|
||||
" t.serie = wr.serie\n" +
|
||||
" INNER JOIN ttb_style s ON wr.cod_mart = s.cod_style\n" +
|
||||
" INNER JOIN ttb_line ON s.cod_line = ttb_line.cod_line\n" +
|
||||
" INNER JOIN mtb_aart m ON wr.cod_mart = m.cod_mart\n" +
|
||||
"WHERE dbo.md5_encode(LOWER(ISNULL(CONVERT(VARCHAR, num_ord_rif), '') + ISNULL(CONVERT(VARCHAR, data_ord_rif, 103), '') +\n" +
|
||||
" ISNULL(rif_ord, ''))) = dbo.md5_encode(LOWER(ISNULL(CONVERT(VARCHAR, %s), '') + ISNULL(\n" +
|
||||
" CONVERT(VARCHAR, CONVERT(DATETIME,%s, 111), 103), '') +\n" +
|
||||
" ISNULL(%s, '')))\n" +
|
||||
" AND t.cod_mdep = %s\n" +
|
||||
" AND t.listino = %s\n" +
|
||||
" AND t.cod_jcom = %s\n" +
|
||||
" AND COALESCE(m.cod_dgrp_art, ttb_line.cod_dgrp_art, s.cod_line) =\n" +
|
||||
" (SELECT COALESCE(mtb_aart.cod_dgrp_art, ttb_line.cod_dgrp_art, ttb_style.cod_line)\n" +
|
||||
" FROM ttb_style\n" +
|
||||
" INNER JOIN mtb_aart ON ttb_style.cod_style = mtb_aart.cod_mart\n" +
|
||||
" INNER JOIN ttb_line ON ttb_style.cod_line = ttb_line.cod_line\n" +
|
||||
" WHERE cod_style = %s)",
|
||||
"SELECT cast(COUNT(*) as bit)\n" +
|
||||
"FROM wdtb_ordt t\n" +
|
||||
" INNER JOIN tvvw_style_min_ord wr\n" +
|
||||
" ON t.gestione = wr.gestione AND t.num_ord = wr.num_ord AND t.data_ord = wr.data_ord AND\n" +
|
||||
" t.serie = wr.serie\n" +
|
||||
" INNER JOIN ttb_style s ON wr.cod_mart = s.cod_style\n" +
|
||||
" INNER JOIN ttb_line ON s.cod_line = ttb_line.cod_line\n" +
|
||||
" INNER JOIN mtb_aart m ON wr.cod_mart = m.cod_mart\n" +
|
||||
"WHERE dbo.md5_encode(LOWER(ISNULL(CONVERT(VARCHAR, num_ord_rif), '') + ISNULL(CONVERT(VARCHAR, data_ord_rif, 103), '') +\n" +
|
||||
" ISNULL(rif_ord, ''))) = dbo.md5_encode(LOWER(ISNULL(CONVERT(VARCHAR, %s), '') + ISNULL(\n" +
|
||||
" CONVERT(VARCHAR, CONVERT(DATETIME,%s, 111), 103), '') +\n" +
|
||||
" ISNULL(%s, '')))\n" +
|
||||
" AND t.cod_mdep = %s\n" +
|
||||
" AND t.listino = %s\n" +
|
||||
" AND t.cod_jcom = %s\n" +
|
||||
" AND COALESCE(m.cod_dgrp_art, ttb_line.cod_dgrp_art, s.cod_line) =\n" +
|
||||
" (SELECT COALESCE(mtb_aart.cod_dgrp_art, ttb_line.cod_dgrp_art, ttb_style.cod_line)\n" +
|
||||
" FROM ttb_style\n" +
|
||||
" INNER JOIN mtb_aart ON ttb_style.cod_style = mtb_aart.cod_mart\n" +
|
||||
" INNER JOIN ttb_line ON ttb_style.cod_line = ttb_line.cod_line\n" +
|
||||
" WHERE cod_style = %s)",
|
||||
wdtbOrdt.getNumOrdRif(), wdtbOrdt.getDataOrdRif(), wdtbOrdt.getRifOrd(),
|
||||
wdtbOrdt.getCodMdep(), wdtbOrdt.getListino(), wdtbOrdt.getCodJcom(), codFirstMart);
|
||||
} else {
|
||||
@@ -482,12 +483,12 @@ public class OrderRules extends QueryRules {
|
||||
}
|
||||
|
||||
public static void setCodVvetIdViaggio(Connection conn, DtbOrdt dtbOrdt) throws SQLException {
|
||||
if ( dtbOrdt.getDtbOrdr() != null && !dtbOrdt.getDtbOrdr().isEmpty()){
|
||||
if (dtbOrdt.getDtbOrdr() != null && !dtbOrdt.getDtbOrdr().isEmpty()) {
|
||||
List<String> listaIdViaggio = dtbOrdt.getDtbOrdr().stream()
|
||||
.filter(x->x.getIdViaggio() != null)
|
||||
.filter(x -> x.getIdViaggio() != null)
|
||||
.map(
|
||||
DtbOrdr::getIdViaggio
|
||||
).distinct().collect(Collectors.toList());
|
||||
DtbOrdr::getIdViaggio
|
||||
).distinct().collect(Collectors.toList());
|
||||
|
||||
if (listaIdViaggio != null && !listaIdViaggio.isEmpty()) {
|
||||
String sql =
|
||||
@@ -502,4 +503,24 @@ public class OrderRules extends QueryRules {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void setRifOrd(Connection conn, DtbOrdt dtbOrdt) throws Exception {
|
||||
Boolean completeRifOrd = setupGest.getSetupBoolean("w_vordi_rc", "SETUP", "RIF_ORD_AUTOCOMP");
|
||||
if (UtilityString.isNullOrEmpty(dtbOrdt.getRifOrd()) && completeRifOrd) {
|
||||
String setupRifOrd = setupGest.getSetup("w_vordi_rc", "SETUP", "RIF_ORD_FORMATO");
|
||||
if (!UtilityString.isNullOrEmpty(setupRifOrd) &&
|
||||
dtbOrdt.getRifDataOrd() != null && !dtbOrdt.getRifDataOrd().equals(EmsRestConstants.DATE_NULL) &&
|
||||
dtbOrdt.getRifNumOrd() != null && dtbOrdt.getRifNumOrd() != EmsRestConstants.NULL) {
|
||||
String rifOrd = setupRifOrd.replace("[NUM_ORD]", dtbOrdt.getRifNumOrd());
|
||||
String formatoData = setupRifOrd.substring(setupRifOrd.indexOf("DEL ") + 4);
|
||||
String formato = formatoData
|
||||
.replace("[", "")
|
||||
.replace("]", "")
|
||||
.replaceAll("D", "d")
|
||||
.replaceAll("Y", "y");
|
||||
rifOrd = rifOrd.replace(formatoData, new SimpleDateFormat(formato).format(dtbOrdt.getRifDataOrd()));
|
||||
dtbOrdt.setRifOrd(rifOrd);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -619,6 +619,12 @@ public class CodiceFiscaleService {
|
||||
String codiceComune = codiceFiscale.substring(11, 15);
|
||||
if (!codiceComune.matches("^[A-Z]\\d{3}$"))
|
||||
throw new Exception("Codice catastale non valido nel codice fiscale");
|
||||
|
||||
char carattereControllo = calcolaCarattereControllo(codiceFiscale.substring(0, 15)); // Controllo carattere di controllo
|
||||
|
||||
if (carattereControllo != codiceFiscale.charAt(15)) {
|
||||
throw new Exception("Carattere di controllo non valido nel codice fiscale");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -230,6 +230,8 @@ public class RemoteSynchronizationService {
|
||||
|
||||
UtilityEntity.throwEntitiesException(entities);
|
||||
|
||||
multiDBTransactionManager.commitAll();
|
||||
|
||||
return cloneSubscriptionItem.getLastTransactionIdImported();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -522,7 +522,7 @@ public class GeneraOrdLav {
|
||||
|
||||
private static String generateActivity(Connection connect, DtbOrdr dtbOrdr, String codProd, String codJcom, String gestione, Date dataOrd, Integer numOrd, String userName, String activityID, Enum operationType, List<ActivityCicloProdDTO> activityCicloProd) throws Exception {
|
||||
Integer durataFasiPrec = 0;
|
||||
Date dataIniz = null, dataFine = null, oraDataMod = new Date();
|
||||
Date dataIniz = null, dataFine = null;
|
||||
String classNameOrdProd = "W_PORDI_RC", activityIDRoot = null, activityTypeID = null, flagTipologia = null, sql;
|
||||
StbActivity activity = new StbActivity();
|
||||
List<StbActivity> activityList = new ArrayList<StbActivity>();
|
||||
@@ -581,7 +581,6 @@ public class GeneraOrdLav {
|
||||
activity.setActivityId(activityIDLav);
|
||||
activity.setCodJcom(codJcom);
|
||||
activity.setUserName(userName);
|
||||
activity.setOraModAct(oraDataMod);
|
||||
activityList.add(activity);
|
||||
}
|
||||
rs.close();
|
||||
@@ -629,7 +628,6 @@ public class GeneraOrdLav {
|
||||
activity.setEstimatedEnddate(dataFine);
|
||||
activity.setEstimatedTime(dataIniz);
|
||||
activity.setEstimatedEndtime(dataFine);
|
||||
activity.setOraModAct(oraDataMod);
|
||||
activity.setGestione("L");
|
||||
activity.setDataOrd(dataOrd);
|
||||
activity.setNumOrd(numOrd);
|
||||
@@ -686,7 +684,6 @@ public class GeneraOrdLav {
|
||||
activity.setEstimatedEnddate(dataFine);
|
||||
activity.setEstimatedTime(dataIniz);
|
||||
activity.setEstimatedEndtime(dataFine);
|
||||
activity.setOraModAct(oraDataMod);
|
||||
activity.setGestione("L");
|
||||
activity.setDataOrd(dataOrd);
|
||||
activity.setNumOrd(numOrd);
|
||||
@@ -735,7 +732,6 @@ public class GeneraOrdLav {
|
||||
activity.setEstimatedEnddate(dataFine);
|
||||
activity.setEstimatedTime(dataIniz);
|
||||
activity.setEstimatedEndtime(dataFine);
|
||||
activity.setOraModAct(oraDataMod);
|
||||
activity.setUserName(userName);
|
||||
activity.setGestione("L");
|
||||
activity.setDataOrd(dataOrd);
|
||||
|
||||
@@ -101,7 +101,7 @@ public class ProductionBusinessLogic {
|
||||
|
||||
private static String generateActivity(Connection connect, DtbOrdr dtbOrdr, String codProd, String codJcom, String gestione, Date dataOrd, Integer numOrd, String userName, String activityID, Enum operationType, List<ActivityCicloProdDTO> activityCicloProd) throws Exception {
|
||||
Integer durataFasiPrec = 0;
|
||||
Date dataIniz = null, dataFine = null, oraDataMod = new Date();
|
||||
Date dataIniz = null, dataFine = null;
|
||||
String classNameOrdProd = "W_PORDI_RC", activityIDRoot = null, activityTypeID = null, flagTipologia = null, sql;
|
||||
StbActivity activity = new StbActivity();
|
||||
List<StbActivity> activityList = new ArrayList<StbActivity>();
|
||||
@@ -160,7 +160,6 @@ public class ProductionBusinessLogic {
|
||||
activity.setActivityId(activityIDLav);
|
||||
activity.setCodJcom(codJcom);
|
||||
activity.setUserName(userName);
|
||||
activity.setOraModAct(oraDataMod);
|
||||
activityList.add(activity);
|
||||
}
|
||||
rs.close();
|
||||
@@ -208,7 +207,6 @@ public class ProductionBusinessLogic {
|
||||
activity.setEstimatedEnddate(dataFine);
|
||||
activity.setEstimatedTime(dataIniz);
|
||||
activity.setEstimatedEndtime(dataFine);
|
||||
activity.setOraModAct(oraDataMod);
|
||||
activity.setGestione("L");
|
||||
activity.setDataOrd(dataOrd);
|
||||
activity.setNumOrd(numOrd);
|
||||
@@ -265,7 +263,6 @@ public class ProductionBusinessLogic {
|
||||
activity.setEstimatedEnddate(dataFine);
|
||||
activity.setEstimatedTime(dataIniz);
|
||||
activity.setEstimatedEndtime(dataFine);
|
||||
activity.setOraModAct(oraDataMod);
|
||||
activity.setGestione("L");
|
||||
activity.setDataOrd(dataOrd);
|
||||
activity.setNumOrd(numOrd);
|
||||
@@ -314,7 +311,6 @@ public class ProductionBusinessLogic {
|
||||
activity.setEstimatedEnddate(dataFine);
|
||||
activity.setEstimatedTime(dataIniz);
|
||||
activity.setEstimatedEndtime(dataFine);
|
||||
activity.setOraModAct(oraDataMod);
|
||||
activity.setUserName(userName);
|
||||
activity.setGestione("L");
|
||||
activity.setDataOrd(dataOrd);
|
||||
|
||||
@@ -1691,6 +1691,7 @@ public class DtbDoct extends DtbBaseDocT implements EquatableEntityInterface<Dtb
|
||||
connection.createStatement().executeUpdate(sql);
|
||||
sql = "UPDATE mtb_colt SET cod_anag = null, cod_dtip = null, data_doc = null, ser_doc = null, num_doc = null ";
|
||||
sql = UtilityDB.addwhereCond(sql, this.getWhereCondOldPk(null), false);
|
||||
connection.createStatement().executeUpdate(sql);
|
||||
|
||||
if ("S".equalsIgnoreCase(getGeneraMovCont())) {
|
||||
if (getWhereCond() == null) {
|
||||
|
||||
@@ -7,6 +7,7 @@ import it.integry.ems_model.base.EntityBase;
|
||||
import it.integry.ems_model.utility.UtilityDB;
|
||||
import org.kie.api.definition.type.PropertyReactive;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.ArrayList;
|
||||
@@ -174,7 +175,7 @@ public class StbActivity extends EntityBase {
|
||||
private String userModifier;
|
||||
|
||||
@SqlField(value = "ora_mod_act", defaultObjectValue = CommonConstants.TIMESTAMP)
|
||||
private Date oraModAct;
|
||||
private LocalDateTime oraModAct;
|
||||
|
||||
@SqlField(value = "ora_view_act")
|
||||
private Date oraViewAct;
|
||||
@@ -680,11 +681,11 @@ public class StbActivity extends EntityBase {
|
||||
return this;
|
||||
}
|
||||
|
||||
public Date getOraModAct() {
|
||||
public LocalDateTime getOraModAct() {
|
||||
return oraModAct;
|
||||
}
|
||||
|
||||
public StbActivity setOraModAct(Date oraModAct) {
|
||||
public StbActivity setOraModAct(LocalDateTime oraModAct) {
|
||||
this.oraModAct = oraModAct;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -222,6 +222,9 @@ public class VtbDest extends EntityBase implements EquatableEntityInterface<VtbD
|
||||
@SqlField(value = "cod_fisc_legale", maxLength = 16)
|
||||
private String codFiscLegale;
|
||||
|
||||
@SqlField(value = "stampa_doc_cons", nullable = false, defaultObjectValue = "0")
|
||||
private Boolean stampaDocCons;
|
||||
|
||||
private String precode;
|
||||
|
||||
@EntityChild
|
||||
@@ -816,6 +819,15 @@ public class VtbDest extends EntityBase implements EquatableEntityInterface<VtbD
|
||||
return this;
|
||||
}
|
||||
|
||||
public Boolean getStampaDocCons() {
|
||||
return stampaDocCons;
|
||||
}
|
||||
|
||||
public VtbDest setStampaDocCons(Boolean stampaDocCons) {
|
||||
this.stampaDocCons = stampaDocCons;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void insertChilds() throws Exception {
|
||||
for (VtbDestIntercode vtbDestIntercode : getVtbDestIntercode()) {
|
||||
|
||||
@@ -77,6 +77,15 @@ then
|
||||
modify ( $entity ) { setDataInsAct($entity.getOraInsAct()==null?new Date():$entity.getOraInsAct()) }
|
||||
end
|
||||
|
||||
|
||||
rule "completeOraModAct"
|
||||
when
|
||||
eval(completeRulesEnabled)
|
||||
$entity : StbActivity()
|
||||
then
|
||||
modify ( $entity ) { setOraModAct(UtilityLocalDate.getNowTime()) }
|
||||
end
|
||||
|
||||
rule "completeOraInsAct"
|
||||
when
|
||||
eval(completeRulesEnabled)
|
||||
|
||||
@@ -59,6 +59,7 @@ then
|
||||
OrdWebRules.completeIdArtOrd(conn, $testata);
|
||||
if ($testata.getGestione().equalsIgnoreCase("V")) {
|
||||
OrderRules.setCodVvetIdViaggio(conn, $testata);
|
||||
OrderRules.setRifOrd(conn, $testata);
|
||||
}
|
||||
if ($testata.getExecuteRecalc() ) {
|
||||
DocOrdCalTotaliRules.calcTotali(conn, $testata);
|
||||
|
||||
@@ -240,7 +240,6 @@ public class ActivityService {
|
||||
}
|
||||
|
||||
stbActivity.setUserModifier(userModifier);
|
||||
stbActivity.setOraModAct(oraModAct);
|
||||
|
||||
attivita.setUserModifier(userModifier);
|
||||
attivita.setOraModAct(oraModAct);
|
||||
|
||||
@@ -294,7 +294,6 @@ public class SteUPService {
|
||||
if (this.isGroupRilevatore(keyGroup) && userName.equalsIgnoreCase(userNameRilevatore)) {
|
||||
if (this.isIspezioneCompletata(ispezione)) {
|
||||
if (!(indiceGradimento != null && (indiceGradimento < 0 || indiceGradimento > maxValue))) {
|
||||
Date now = new Date();
|
||||
List<StbActivity> entityList = new ArrayList<>();
|
||||
|
||||
String sql = "SELECT activity_id " +
|
||||
@@ -308,7 +307,6 @@ public class SteUPService {
|
||||
StbActivity activityEntry = new StbActivity();
|
||||
activityEntry.setActivityId(activityIdChild.toString());
|
||||
activityEntry.setOperation(OperationType.UPDATE);
|
||||
activityEntry.setOraModAct(now);
|
||||
activityEntry.setUserModifier(userName);
|
||||
// activityEntry.setIndiceGradimento(indiceGradimento!=null?indiceGradimento:"NULL");
|
||||
//activityEntry.setIndiceGradimento(indiceGradimento);
|
||||
@@ -354,7 +352,6 @@ public class SteUPService {
|
||||
StbActivity activityIsp =
|
||||
new StbActivity()
|
||||
.setActivityId(activityId)
|
||||
.setOraModAct(now)
|
||||
.setUserModifier(userName)
|
||||
.setEffectiveEnddate(now)
|
||||
.setEffectiveEndtime(now)
|
||||
@@ -499,7 +496,6 @@ public class SteUPService {
|
||||
.setActivityTypeId(activityTypeIdIspezione)
|
||||
.setDataInsAct(UtilityLocalDate.localDateToDate(now))
|
||||
.setOraInsAct(UtilityLocalDate.localDateToDate(now))
|
||||
.setOraModAct(UtilityLocalDate.localDateToDate(now))
|
||||
.setEffectiveDate(dataCreation)
|
||||
.setEffectiveTime(dataCreation);
|
||||
flag_isNewIspezione = true;
|
||||
@@ -511,8 +507,6 @@ public class SteUPService {
|
||||
}
|
||||
|
||||
activityIsp.setActivityId(parentActivityId)
|
||||
.setOraModAct(UtilityLocalDate.localDateToDate(now))
|
||||
.setOraModAct(UtilityLocalDate.localDateToDate(now))
|
||||
.setUserModifier(userNameCreator);
|
||||
activityIsp.setOperation(OperationType.UPDATE);
|
||||
}
|
||||
@@ -531,8 +525,7 @@ public class SteUPService {
|
||||
.setUserModifier(userNameCreator)
|
||||
.setActivityTypeId(activityTypeId)
|
||||
.setDataInsAct(UtilityLocalDate.localDateToDate(now))
|
||||
.setOraInsAct(UtilityLocalDate.localDateToDate(now))
|
||||
.setOraModAct(UtilityLocalDate.localDateToDate(now));
|
||||
.setOraInsAct(UtilityLocalDate.localDateToDate(now));
|
||||
|
||||
activityItem.setOperation(OperationType.INSERT);
|
||||
if (!UtilityString.isNullOrEmpty(codCmac)) {
|
||||
@@ -760,7 +753,6 @@ public class SteUPService {
|
||||
.setActivityTypeId(activityTypeArt)
|
||||
.setDataInsAct(now)
|
||||
.setOraInsAct(now)
|
||||
.setOraModAct(now)
|
||||
.setEffectiveDate(dataCreation)
|
||||
.setEffectiveTime(dataCreation)
|
||||
.setParentActivityId(activityId);
|
||||
@@ -1202,7 +1194,6 @@ public class SteUPService {
|
||||
activityToMove.setParentActivityId(parentActivity.getActivityId());
|
||||
activityToMove.setUserName(usernamePv);
|
||||
activityToMove.setUserModifier(userNameCreator);
|
||||
activityToMove.setOraModAct(new Date());
|
||||
|
||||
sql =
|
||||
"SELECT activity_id, " + UtilityDB.valueToString(usernamePv) + " as user_name " +
|
||||
|
||||
@@ -13,6 +13,7 @@ import it.integry.ems_model.entity.DtbDoct;
|
||||
import it.integry.ems_model.entity.WdtbDoct;
|
||||
import it.integry.ems_model.service.SetupGest;
|
||||
import it.integry.ems_model.types.OperationType;
|
||||
import it.integry.ems_model.utility.Query;
|
||||
import it.integry.ems_model.utility.UtilityDB;
|
||||
import it.integry.ems_model.utility.UtilityDate;
|
||||
import it.integry.ems_model.utility.UtilityString;
|
||||
@@ -35,8 +36,8 @@ public class DocumentiWebImportService {
|
||||
private SetupGest setupGest;
|
||||
|
||||
public List<EntityBase> importDocWeb(String type, String format, String whereCond, List<AnomalieDTO> anomalie) throws Exception {
|
||||
List<EntityBase> toBeProcessed = new ArrayList<EntityBase>();
|
||||
List<WdtbDoct> toBeUpdated = new ArrayList<WdtbDoct>();
|
||||
List<EntityBase> toBeProcessed = new ArrayList<>();
|
||||
List<WdtbDoct> toBeUpdated = new ArrayList<>();
|
||||
Connection connection = multiDBTransactionManager.getPrimaryDatasource().getConnection();
|
||||
|
||||
Map<String, String> setup = setupGest.getImportSetupSection(connection, type, format);
|
||||
@@ -49,90 +50,83 @@ public class DocumentiWebImportService {
|
||||
throw new Exception("Condizione di ricerca non specificata");
|
||||
}
|
||||
|
||||
String query =
|
||||
"SELECT wdtb_doct.cod_anag, wdtb_doct.cod_dtip, wdtb_doct.data_doc, wdtb_doct.ser_doc, wdtb_doct.num_doc " +
|
||||
"FROM wdtb_doct INNER JOIN wdtb_docr on wdtb_doct.cod_anag = wdtb_docr.cod_anag AND " +
|
||||
"wdtb_doct.cod_dtip = wdtb_docr.cod_dtip AND " +
|
||||
"wdtb_doct.data_doc = wdtb_docr.data_doc AND " +
|
||||
"wdtb_doct.ser_doc = wdtb_docr.ser_doc AND " +
|
||||
"wdtb_doct.num_doc = wdtb_docr.num_doc " +
|
||||
"WHERE wdtb_doct.flag_elaborato <> 'S' " +
|
||||
"GROUP BY wdtb_doct.cod_anag, wdtb_doct.cod_dtip, wdtb_doct.data_doc, wdtb_doct.ser_doc, wdtb_doct.num_doc " +
|
||||
"HAVING count(*) > 0 " +
|
||||
"ORDER BY wdtb_doct.data_doc ";
|
||||
query = UtilityDB.addwhereCond(query, whereCond, true);
|
||||
PreparedStatement ps = connection.prepareStatement(query);
|
||||
ResultSet rs = ps.executeQuery();
|
||||
String queryTestata =
|
||||
"SELECT wdtb_doct.gestione,\n" +
|
||||
" wdtb_doct.cod_anag,\n" +
|
||||
" wdtb_doct.cod_dtip,\n" +
|
||||
" wdtb_doct.data_doc,\n" +
|
||||
" wdtb_doct.ser_doc,\n" +
|
||||
" wdtb_doct.num_doc,\n" +
|
||||
" wdtb_doct.data_reg,\n" +
|
||||
" wdtb_doct.gestione,\n" +
|
||||
" wdtb_doct.tipo_anag,\n" +
|
||||
" wdtb_doct.data_ord,\n" +
|
||||
" wdtb_doct.num_ord,\n" +
|
||||
" wdtb_doct.rif_ord,\n" +
|
||||
" wdtb_doct.cod_mdep,\n" +
|
||||
" wdtb_doct.listino,\n" +
|
||||
" wdtb_doct.cod_vdes,\n" +
|
||||
" wdtb_doct.porto,\n" +
|
||||
" wdtb_doct.mezzo,\n" +
|
||||
" wdtb_doct.cod_auto,\n" +
|
||||
" wdtb_doct.causale_trasp,\n" +
|
||||
" wdtb_doct.aspetto_beni,\n" +
|
||||
" wdtb_doct.num_colli,\n" +
|
||||
" wdtb_doct.peso,\n" +
|
||||
" wdtb_doct.data_iniz_trasp,\n" +
|
||||
" wdtb_doct.ora_iniz_trasp,\n" +
|
||||
" wdtb_doct.annotazioni,\n" +
|
||||
" wdtb_doct.cod_paga,\n" +
|
||||
" wdtb_doct.cod_banc,\n" +
|
||||
" wdtb_doct.cod_vage,\n" +
|
||||
" wdtb_doct.sconto1,\n" +
|
||||
" wdtb_doct.sconto2,\n" +
|
||||
" wdtb_doct.sconto3,\n" +
|
||||
" wdtb_doct.sconto4,\n" +
|
||||
" wdtb_doct.compilato_da,\n" +
|
||||
" wdtb_doct.modificato_da,\n" +
|
||||
" wdtb_doct.annotazioni,\n" +
|
||||
" wdtb_doct.user_name\n" +
|
||||
"FROM wdtb_doct\n" +
|
||||
" INNER JOIN dtb_tipi ON wdtb_doct.cod_dtip = dtb_tipi.cod_dtip\n" +
|
||||
"WHERE wdtb_doct.flag_elaborato <> 'S'\n" +
|
||||
" AND EXISTS(SELECT *\n" +
|
||||
" FROM wdtb_docr\n" +
|
||||
" WHERE wdtb_doct.cod_anag = wdtb_docr.cod_anag\n" +
|
||||
" AND wdtb_doct.cod_dtip = wdtb_docr.cod_dtip\n" +
|
||||
" AND wdtb_doct.data_doc = wdtb_docr.data_doc\n" +
|
||||
" AND wdtb_doct.ser_doc = wdtb_docr.ser_doc\n" +
|
||||
" AND wdtb_doct.num_doc = wdtb_docr.num_doc)\n" +
|
||||
"ORDER BY wdtb_doct.data_doc";
|
||||
|
||||
while (rs.next()) {
|
||||
String codAnag = rs.getString("cod_anag");
|
||||
String codDtip = rs.getString("cod_dtip");
|
||||
Date dataDoc = rs.getDate("data_doc");
|
||||
String serDoc = rs.getString("ser_doc");
|
||||
int numDoc = rs.getInt("num_doc");
|
||||
List<DtbDoct> dtbDocts = UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), queryTestata, DtbDoct.class);
|
||||
|
||||
for (DtbDoct dtbDoct : dtbDocts) {
|
||||
String chkExist =
|
||||
Query.format(
|
||||
"SELECT count(*) " +
|
||||
" FROM dtb_doct " +
|
||||
" WHERE dtb_doct.cod_dtip in ( " +
|
||||
"SELECT cod_dtip " +
|
||||
" FROM dtb_tipi " +
|
||||
" WHERE cod_dtip = " + UtilityDB.valueToString(codDtip) +
|
||||
" WHERE cod_dtip = %s \n " +
|
||||
" UNION " +
|
||||
" SELECT value_string as cod_dtip" +
|
||||
" FROM dbo.ParseStringIntoArray(" + UtilityDB.valueToString(setup.get("COD_DTIP_CHK")) + ", '|')) AND " +
|
||||
" dtb_doct.cod_anag = " + UtilityDB.valueToString(codAnag) + " AND " +
|
||||
" dtb_doct.data_doc = " + UtilityDB.valueDateToString(dataDoc, CommonConstants.DATE_FORMAT_YMD) + " AND " +
|
||||
" dtb_doct.ser_doc = " + UtilityDB.valueToString(serDoc) + " AND " +
|
||||
" dtb_doct.num_doc = " + UtilityDB.valueToString(numDoc);
|
||||
" dtb_doct.cod_anag = %s AND " +
|
||||
" dtb_doct.data_doc = %s AND " +
|
||||
" dtb_doct.ser_doc = %s AND " +
|
||||
" dtb_doct.num_doc = %s ",
|
||||
dtbDoct.getCodDtip(),
|
||||
dtbDoct.getCodAnag(),
|
||||
dtbDoct.getDataDoc(),
|
||||
dtbDoct.getSerDoc(),
|
||||
dtbDoct.getNumDoc());
|
||||
|
||||
Integer countDoc = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(multiDBTransactionManager.getPrimaryConnection(), chkExist);
|
||||
|
||||
if (countDoc == 0) {
|
||||
|
||||
String condDoc = String.format("wdtb_doct.cod_anag = '%s' AND wdtb_doct.cod_dtip = '%s' AND wdtb_doct.data_doc = %s AND wdtb_doct.ser_doc = '%s' AND wdtb_doct.num_doc = %d",
|
||||
codAnag, codDtip, UtilityDB.valueDateToString(dataDoc, CommonConstants.DATE_FORMAT_YMD), serDoc, numDoc);
|
||||
String queryTestata =
|
||||
"SELECT Wdtb_doct.gestione, " +
|
||||
" wdtb_doct.cod_anag, " +
|
||||
" wdtb_doct.cod_dtip, " +
|
||||
" wdtb_doct.data_doc, " +
|
||||
" wdtb_doct.ser_doc, " +
|
||||
" wdtb_doct.num_doc, " +
|
||||
" wdtb_doct.data_reg, " +
|
||||
" wdtb_doct.gestione, " +
|
||||
" wdtb_doct.tipo_anag, " +
|
||||
" wdtb_doct.data_ord, " +
|
||||
" wdtb_doct.num_ord, " +
|
||||
" wdtb_doct.rif_ord, " +
|
||||
" wdtb_doct.cod_mdep, " +
|
||||
" wdtb_doct.listino, " +
|
||||
" wdtb_doct.cod_vdes, " +
|
||||
" wdtb_doct.porto, " +
|
||||
" wdtb_doct.mezzo, " +
|
||||
" wdtb_doct.cod_auto, " +
|
||||
" wdtb_doct.causale_trasp, " +
|
||||
" wdtb_doct.aspetto_beni, " +
|
||||
" wdtb_doct.num_colli, " +
|
||||
" wdtb_doct.peso, " +
|
||||
" wdtb_doct.data_iniz_trasp, " +
|
||||
" wdtb_doct.ora_iniz_trasp, " +
|
||||
" wdtb_doct.annotazioni, " +
|
||||
" wdtb_doct.cod_paga, " +
|
||||
" wdtb_doct.cod_banc, " +
|
||||
" wdtb_doct.cod_vage, " +
|
||||
" wdtb_doct.sconto1, " +
|
||||
" wdtb_doct.sconto2, " +
|
||||
" wdtb_doct.sconto3, " +
|
||||
" wdtb_doct.sconto4, " +
|
||||
" wdtb_doct.compilato_da, " +
|
||||
" wdtb_doct.modificato_da, " +
|
||||
" wdtb_doct.annotazioni, " +
|
||||
" wdtb_doct.user_name " +
|
||||
" FROM Wdtb_doct INNER JOIN dtb_tipi ON Wdtb_doct.cod_dtip = dtb_tipi.cod_dtip ";
|
||||
|
||||
queryTestata = UtilityDB.addwhereCond(queryTestata, condDoc, true);
|
||||
ResultSetMapper dtbDoctResultSetMapper = new ResultSetMapper();
|
||||
DtbDoct dtbDoct = dtbDoctResultSetMapper.mapQueryToObject(multiDBTransactionManager.getPrimaryConnection(), queryTestata, DtbDoct.class, OperationType.INSERT);
|
||||
dtbDoct.setOperation(OperationType.INSERT);
|
||||
|
||||
String queryRighe =
|
||||
"WITH griglia AS ( " +
|
||||
@@ -200,9 +194,12 @@ public class DocumentiWebImportService {
|
||||
" Wdtb_docr.num_ord IS NULL and" +
|
||||
" Wdtb_docr.riga_ord IS NULL " +
|
||||
"ORDER BY dtb_ordt.data_ord desc, dtb_ordr.num_ord desc ) ordini " +
|
||||
" WHERE 1 = 1 ";
|
||||
" WHERE wdtb_docr.cod_nang = " + UtilityDB.valueToString(dtbDoct.getCodAnag()) + " AND " +
|
||||
" wdtb_docr.cod_dtip = " + UtilityDB.valueToString(dtbDoct.getCodDtip()) + " AND " +
|
||||
" wdtb_docr.data_doc = " + UtilityDB.valueToString(dtbDoct.getDataDoc()) + " AND " +
|
||||
" wdtb_docr.ser_doc = " + UtilityDB.valueToString(dtbDoct.getSerDoc()) + " AND " +
|
||||
" wdtb_docr.num_doc = " + UtilityDB.valueToString(dtbDoct.getNumDoc());
|
||||
|
||||
queryRighe = UtilityDB.addwhereCond(queryRighe, condDoc, true);
|
||||
|
||||
ResultSetMapper dtbDocrResultSetMapper = new ResultSetMapper();
|
||||
List<DtbDocr> dtbDocrList = dtbDocrResultSetMapper.mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), queryRighe, DtbDocr.class, OperationType.INSERT);
|
||||
@@ -225,19 +222,16 @@ public class DocumentiWebImportService {
|
||||
} else {
|
||||
WdtbDoct wdtbDoct = new WdtbDoct();
|
||||
wdtbDoct.setOperation(OperationType.UPDATE);
|
||||
wdtbDoct.setCodAnag(codAnag);
|
||||
wdtbDoct.setCodDtip(codDtip);
|
||||
wdtbDoct.setDataDoc(dataDoc);
|
||||
wdtbDoct.setSerDoc(serDoc);
|
||||
wdtbDoct.setNumDoc(numDoc);
|
||||
wdtbDoct.setCodAnag(dtbDoct.getCodAnag());
|
||||
wdtbDoct.setCodDtip(dtbDoct.getCodDtip());
|
||||
wdtbDoct.setDataDoc(dtbDoct.getDataDoc());
|
||||
wdtbDoct.setSerDoc(dtbDoct.getSerDoc());
|
||||
wdtbDoct.setNumDoc(dtbDoct.getNumDoc());
|
||||
wdtbDoct.setFlagElaborato("S");
|
||||
toBeUpdated.add(wdtbDoct);
|
||||
}
|
||||
}
|
||||
|
||||
rs.close();
|
||||
ps.close();
|
||||
|
||||
List<EntityBase> objects = null;
|
||||
if (!toBeProcessed.isEmpty()) {
|
||||
objects = entityProcessor.processEntityList(toBeProcessed, true, false, false);
|
||||
|
||||
@@ -2115,6 +2115,20 @@ public class DocumentService {
|
||||
}
|
||||
|
||||
String sql = it.integry.ems_model.utility.Query.format(
|
||||
"SELECT cod_vdes\n" +
|
||||
"FROM dtb_doct\n" +
|
||||
"WHERE cod_anag = %s\n" +
|
||||
" AND cod_dtip = %s\n" +
|
||||
" AND data_doc = %s\n" +
|
||||
" AND ser_doc = %s\n" +
|
||||
" AND num_doc = %s",
|
||||
printDocumentRequest.getCodAnag(), codDtip, printDocumentRequest.getDataDoc(),
|
||||
printDocumentRequest.getSerDoc(), printDocumentRequest.getNumDoc()
|
||||
);
|
||||
String codVdes = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(conn, sql);
|
||||
|
||||
|
||||
sql = it.integry.ems_model.utility.Query.format(
|
||||
"SELECT archiviazione_elettronica\n" +
|
||||
"FROM vtb_vett\n" +
|
||||
" INNER JOIN dtb_doct ON vtb_vett.cod_vvet = dtb_doct.cod_vvet\n" +
|
||||
@@ -2129,6 +2143,17 @@ public class DocumentService {
|
||||
Boolean archiviazioneElettronica = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(conn, sql);
|
||||
if (archiviazioneElettronica == null) archiviazioneElettronica = false;
|
||||
|
||||
if ( archiviazioneElettronica && !UtilityString.isNullOrEmpty(codVdes)){
|
||||
sql = it.integry.ems_model.utility.Query.format(
|
||||
"SELECT stampa_doc_cons FROM vtb_dest WHERE cod_anag= %s AND cod_vdes = %s",
|
||||
printDocumentRequest.getCodAnag(), codVdes
|
||||
);
|
||||
Boolean stampaDocCons = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(conn, sql);
|
||||
if (stampaDocCons != null && stampaDocCons) {
|
||||
archiviazioneElettronica = false;
|
||||
}
|
||||
}
|
||||
|
||||
List<byte[]> listPdf = new ArrayList<>();
|
||||
if (dtbTipi.getNumCopie() == null ) {
|
||||
dtbTipi.setNumCopie(1);
|
||||
@@ -2156,19 +2181,6 @@ public class DocumentService {
|
||||
boolean stampaImmediata = setupGest.getSetupBoolean("W_VDIFF_BOLLE_DLG", "SETUP", "STAMPA_IMMEDIATA");
|
||||
|
||||
if (printDocumentRequest.isSendEmail() || stampaImmediata) {
|
||||
sql = it.integry.ems_model.utility.Query.format(
|
||||
"SELECT cod_vdes\n" +
|
||||
"FROM dtb_doct\n" +
|
||||
"WHERE cod_anag = %s\n" +
|
||||
" AND cod_dtip = %s\n" +
|
||||
" AND data_doc = %s\n" +
|
||||
" AND ser_doc = %s\n" +
|
||||
" AND num_doc = %s",
|
||||
printDocumentRequest.getCodAnag(), codDtip, printDocumentRequest.getDataDoc(),
|
||||
printDocumentRequest.getSerDoc(), printDocumentRequest.getNumDoc()
|
||||
);
|
||||
String codVdes = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(conn, sql);
|
||||
|
||||
sql = it.integry.ems_model.utility.Query.format(
|
||||
"SELECT e_mail\n" +
|
||||
"FROM vtb_clie_pers_rif\n" +
|
||||
|
||||
@@ -75,14 +75,15 @@ public class DocumentiDirettiService {
|
||||
|
||||
boolean salvaImballiAttiva = setupGest.getSetupBoolean("DTB_DOCT", "FATTURA_PEDANE", "ATTIVA");
|
||||
|
||||
if (UtilityHashMap.<String>getValueIfExists(datiTipoDoc, "gestione").equalsIgnoreCase("V") &&
|
||||
String gestione = UtilityHashMap.getValueIfExists(datiTipoDoc, "gestione");
|
||||
if (gestione.equalsIgnoreCase("V") &&
|
||||
TipoEmissione.valueOf(UtilityHashMap.getValueIfExists(datiTipoDoc, "tipo_emissione")) == TipoEmissione.DIRETTA &&
|
||||
!dtbDoct.getDtbDocImb().isEmpty() && salvaImballiAttiva) {
|
||||
saveDocImballi(dtbDoct, entityList, isInsert);
|
||||
|
||||
}
|
||||
//controllo packingList documento per eventuali trasferimenti
|
||||
if (dtbDoct.getGestione().equalsIgnoreCase("V")) {
|
||||
if (gestione.equalsIgnoreCase("V")) {
|
||||
checkUDSForTransfer(dtbDoct, entityList, isInsert);
|
||||
}
|
||||
|
||||
@@ -112,7 +113,7 @@ public class DocumentiDirettiService {
|
||||
entityRet.add(e);
|
||||
}
|
||||
|
||||
if (UtilityString.equalsIgnoreCase((String) datiTipoDoc.get("gestione"), "A")) {
|
||||
if (UtilityString.equalsIgnoreCase(gestione, "A")) {
|
||||
List<MtbLisaCostoData> mtbLisaCostoData = documentService.popolaTabellaCosti(dtbDoct.getCodAnag(),
|
||||
dtbDoct.getCodDtip(),
|
||||
dtbDoct.getDataDoc(),
|
||||
|
||||
@@ -44,7 +44,6 @@ public class ImportApuliaPromoService {
|
||||
throw new Exception("Nessun csv da importare.");
|
||||
}
|
||||
|
||||
|
||||
final CsvMapper<PromoDto> mapper = new CsvMapper<>();
|
||||
List<PromoDto> promozioni = mapper.deserialize(request.getRawContent(), PromoDto.class, ";");
|
||||
|
||||
@@ -61,20 +60,31 @@ public class ImportApuliaPromoService {
|
||||
promozioni = Stream.of(promozioni).filterNot(x -> listiniDaEscludere.contains(x.getPartIva())).toList();
|
||||
}
|
||||
|
||||
String codAlis = null;
|
||||
if ( !UtilityString.isNullOrEmpty(request.getWhereCond())) {
|
||||
codAlis = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(
|
||||
connection,
|
||||
UtilityDB.addwhereCond("select cod_alis from atb_list", request.getWhereCond(), true, false));
|
||||
|
||||
}
|
||||
|
||||
List<EntityBase> entityList = new ArrayList<>();
|
||||
List<MtbLisaData> mtbLisaDataList = new ArrayList<>();
|
||||
for (PromoDto promozione : promozioni) {
|
||||
try {
|
||||
String partitaIva = promozione.getPartIva();
|
||||
partitaIva = UtilityString.FillString(partitaIva, '0', 11, "L");
|
||||
String codAlis = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(connection,
|
||||
String.format("select cod_alis from atb_list where part_iva_forn = '%s'", partitaIva)
|
||||
);
|
||||
|
||||
if (codAlis == null) {
|
||||
codAlis = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(connection,
|
||||
String.format("select cod_alis from gtb_anag inner join atb_forn on gtb_anag.cod_anag = atb_forn.cod_anag where atb_forn.flag_stato = 'A' AND gtb_anag.part_iva = '%s'", partitaIva)
|
||||
);
|
||||
String partitaIva = promozione.getPartIva();
|
||||
if (UtilityString.isNullOrEmpty(codAlis)) {
|
||||
partitaIva = UtilityString.FillString(partitaIva, '0', 11, "L");
|
||||
String sql =
|
||||
Query.format("select cod_alis from atb_list where part_iva_forn = %s", partitaIva);
|
||||
codAlis = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(connection, sql);
|
||||
|
||||
if (codAlis == null) {
|
||||
codAlis = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(connection,
|
||||
String.format("select cod_alis from gtb_anag inner join atb_forn on gtb_anag.cod_anag = atb_forn.cod_anag where atb_forn.flag_stato = 'A' AND gtb_anag.part_iva = '%s'", partitaIva)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (codAlis == null) {
|
||||
|
||||
@@ -405,7 +405,7 @@ public class ProductionOrdersLifecycleService {
|
||||
if (UtilityString.equalsIgnoreCase(ripianificaOrdineLavRequestDTO.getCodJfasNew(), ripianificaOrdineLavRequestDTO.getCodJfasOld())) {
|
||||
sql =
|
||||
Query.format(
|
||||
"SELECT * FROM dtb_ords WHERE gestione = %s AND data_ord = %s AND num_ord = %s ORDER BY data_fine desc",
|
||||
"SELECT * FROM dtb_ord_steps WHERE gestione = %s AND data_ord = %s AND num_ord = %s ORDER BY data_fine desc",
|
||||
ripianificaOrdineLavRequestDTO.getGestione(),
|
||||
ripianificaOrdineLavRequestDTO.getDataOrd(),
|
||||
ripianificaOrdineLavRequestDTO.getNumOrd());
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package it.integry.ems.retail.wms.generic.controller;
|
||||
|
||||
import com.gentlyweb.utils.IOUtils;
|
||||
import it.integry.common.var.CommonConstants;
|
||||
import it.integry.ems.Import.dto.AnomalieDTO;
|
||||
import it.integry.ems.javabeans.RequestDataDTO;
|
||||
import it.integry.ems.properties.EmsProperties;
|
||||
import it.integry.ems.response.ServiceRestResponse;
|
||||
import it.integry.ems.retail.dto.PrintOrderCloseDTO;
|
||||
import it.integry.ems.retail.pvmRetail.dto.GiacenzaColliInMagDTO;
|
||||
@@ -104,7 +104,8 @@ public class WMSGenericController {
|
||||
}
|
||||
|
||||
@GetMapping(value = "updateWMSApp")
|
||||
public ServiceRestResponse updateWMSApp(@RequestParam(required = false) String suffix) throws Exception {
|
||||
public ServiceRestResponse updateWMSApp(@RequestParam(required = false) String suffix,
|
||||
@RequestParam(required = false, defaultValue = "null") Boolean overrideForced) throws Exception {
|
||||
String baseDownloadUrl = "https://jnxuo98bbuecrmbkciijvpkg.file.core.windows.net/storage-ci/wms/";
|
||||
String azureToken = "?sv=2022-11-02&ss=bf&srt=sco&sp=r&se=2030-11-04T17:45:57Z&st=2024-11-04T09:45:57Z&spr=https&sig=CGxbbC08xuvAz%2B6k2C6HDq6e9UGitb0lnbbsWeRG%2FiU%3D";
|
||||
|
||||
@@ -120,6 +121,13 @@ public class WMSGenericController {
|
||||
String androidAppVersionFilePath = Paths.get(UtilityDirs.getWebAppPath(), "wms", "version" + suffix + ".txt").toString();
|
||||
HttpRestWrapper.downloadFile(baseDownloadUrl + "version" + suffix + ".txt" + azureToken, androidAppVersionFilePath);
|
||||
|
||||
if(overrideForced != null ) {
|
||||
File versionFile = new File(androidAppVersionFilePath);
|
||||
String versionFileContent = IOUtils.getFile(versionFile);
|
||||
versionFileContent = versionFileContent.replaceAll("forced=true", "forced=" + overrideForced);
|
||||
IOUtils.writeStringToFile(versionFile, versionFileContent, false);
|
||||
}
|
||||
|
||||
return ServiceRestResponse.createPositiveResponse();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user