Merge remote-tracking branch 'origin/develop' into develop
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -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_20241015163618 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
if(isCustomer(IntegryCustomer.Suit)) {
|
||||
updateSetupValue("w_cscadfor_disp", "DATAWINDOW", "d_cscadfor_rep", "d_cscadfor_suit_rep");
|
||||
updateSetupValue("w_cscadfor_disp", "DATAWINDOW", "d_cscadfor_nobanca_rep", "d_cscadfor_nobanca_suit_rep");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,151 @@
|
||||
package it.integry.ems.migration.model;
|
||||
|
||||
import it.integry.ems.migration._base.BaseMigration;
|
||||
import it.integry.ems.migration._base.MigrationModelInterface;
|
||||
|
||||
public class Migration_20241016163028 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
createOrUpdateFunction("CountAllegatiCommessa", "CREATE FUNCTION [dbo].[CountAllegatiCommessa](@codJcom VARCHAR(10), @userName VARCHAR(40))\n" +
|
||||
" RETURNS INTEGER\n" +
|
||||
"AS\n" +
|
||||
"BEGIN\n" +
|
||||
" DECLARE @countAllegati INTEGER\n" +
|
||||
"\n" +
|
||||
" SELECT @countAllegati = SUM(cnt)\n" +
|
||||
" FROM (SELECT COUNT(file_name) AS cnt\n" +
|
||||
" FROM stb_activity_file\n" +
|
||||
" WHERE id IN (SELECT stb_activity.activity_id\n" +
|
||||
" FROM jtb_comt\n" +
|
||||
" INNER JOIN stb_activity ON jtb_comt.cod_jcom = stb_activity.cod_jcom AND\n" +
|
||||
" stb_activity.parent_activity_id IS NULL\n" +
|
||||
" INNER JOIN stb_activity_type\n" +
|
||||
" ON stb_activity.activity_type_id =\n" +
|
||||
" stb_activity_type.activity_type_id AND\n" +
|
||||
" stb_activity_type.flag_tipologia = 'P'\n" +
|
||||
" WHERE jtb_comt.cod_jcom = @codJcom)\n" +
|
||||
"\n" +
|
||||
" UNION ALL\n" +
|
||||
"\n" +
|
||||
" SELECT COUNT(stb_activity_file.file_name) AS cnt\n" +
|
||||
" FROM stb_activity\n" +
|
||||
" INNER JOIN stb_activity_file ON stb_activity.activity_id = stb_activity_file.id\n" +
|
||||
" WHERE stb_activity.cod_jcom = @codJcom\n" +
|
||||
" AND activity_type_id IN (SELECT activity_type_id\n" +
|
||||
" FROM srl_activity_type_user\n" +
|
||||
" INNER JOIN jrl_flav_users\n" +
|
||||
" ON srl_activity_type_user.user_name = jrl_flav_users.user_name\n" +
|
||||
" INNER JOIN wtb_users\n" +
|
||||
" ON wtb_users.User_name =\n" +
|
||||
" jrl_flav_users.user_name AND\n" +
|
||||
" wtb_users.user_name = @userName)\n" +
|
||||
" AND @userName IN (stb_activity.user_creator, stb_activity.user_name)\n" +
|
||||
"\n" +
|
||||
" UNION ALL\n" +
|
||||
"\n" +
|
||||
" SELECT COUNT(filename) AS cnt\n" +
|
||||
" FROM dtb_doc_pdf\n" +
|
||||
" INNER JOIN\n" +
|
||||
" (SELECT dtb_doct.num_doc,\n" +
|
||||
" dtb_doct.data_doc,\n" +
|
||||
" dtb_doct.cod_dtip,\n" +
|
||||
" dtb_doct.cod_anag,\n" +
|
||||
" dtb_doct.ser_doc,\n" +
|
||||
" dtb_doct.cod_jcom,\n" +
|
||||
" dtb_doct.gestione,\n" +
|
||||
" MAX(versione) AS versione,\n" +
|
||||
" dtb_ordt.data_ord,\n" +
|
||||
" dtb_ordt.num_ord,\n" +
|
||||
" dtb_ordt.num_ord_provv\n" +
|
||||
" FROM dtb_doc_pdf\n" +
|
||||
" INNER JOIN dtb_doct\n" +
|
||||
" ON dtb_doct.data_doc = dtb_doc_pdf.data_doc AND\n" +
|
||||
" dtb_doct.num_doc = dtb_doc_pdf.num_doc AND\n" +
|
||||
" dtb_doct.cod_dtip = dtb_doc_pdf.cod_dtip AND\n" +
|
||||
" dtb_doct.cod_anag = dtb_doc_pdf.cod_anag AND\n" +
|
||||
" dtb_doct.ser_doc = dtb_doc_pdf.ser_doc\n" +
|
||||
" INNER JOIN dtb_docr ON dtb_doct.data_doc = dtb_docr.data_doc AND\n" +
|
||||
" dtb_doct.num_doc = dtb_docr.num_doc AND\n" +
|
||||
" dtb_doct.ser_doc = dtb_docr.ser_doc AND\n" +
|
||||
" dtb_doct.cod_dtip = dtb_docr.cod_dtip AND\n" +
|
||||
" dtb_doct.cod_anag = dtb_docr.cod_anag\n" +
|
||||
" LEFT OUTER JOIN dtb_ordt\n" +
|
||||
" ON dtb_doct.gestione = dtb_ordt.gestione AND\n" +
|
||||
" dtb_doct.data_ord = dtb_ordt.data_ord AND\n" +
|
||||
" dtb_doct.num_ord = dtb_ordt.num_ord\n" +
|
||||
" WHERE (filecontent IS NOT NULL OR ref_uuid IS NOT NULL)\n" +
|
||||
" GROUP BY dtb_doct.num_doc, dtb_doct.data_doc, dtb_doct.cod_dtip,\n" +
|
||||
" dtb_doct.cod_anag, dtb_doct.ser_doc,\n" +
|
||||
" dtb_doct.cod_jcom, dtb_doct.gestione, dtb_ordt.data_ord,\n" +
|
||||
" dtb_ordt.num_ord, dtb_ordt.num_ord_provv) t\n" +
|
||||
" ON dtb_doc_pdf.num_doc = t.num_doc AND\n" +
|
||||
" dtb_doc_pdf.data_doc = t.data_doc AND\n" +
|
||||
" dtb_doc_pdf.cod_dtip = t.cod_dtip AND\n" +
|
||||
" dtb_doc_pdf.cod_anag = t.cod_anag AND\n" +
|
||||
" dtb_doc_pdf.ser_doc = t.ser_doc AND\n" +
|
||||
" dtb_doc_pdf.versione = t.versione\n" +
|
||||
" WHERE cod_jcom = @codJcom\n" +
|
||||
"\n" +
|
||||
" UNION ALL\n" +
|
||||
"\n" +
|
||||
" SELECT COUNT(stb_files_attached.file_name) AS cnt\n" +
|
||||
" FROM stb_files_attached,\n" +
|
||||
" drl_ord_attached,\n" +
|
||||
" dtb_ordt\n" +
|
||||
" WHERE stb_files_attached.id_attach = drl_ord_attached.id_attach\n" +
|
||||
" AND drl_ord_attached.gestione = dtb_ordt.gestione\n" +
|
||||
" AND drl_ord_attached.data_ord = dtb_ordt.data_ord\n" +
|
||||
" AND drl_ord_attached.num_ord = dtb_ordt.num_ord\n" +
|
||||
" AND dtb_ordt.cod_jcom = @codJcom\n" +
|
||||
"\n" +
|
||||
" UNION ALL\n" +
|
||||
"\n" +
|
||||
" SELECT COUNT(DISTINCT stb_files_attached.file_name) AS cnt\n" +
|
||||
" FROM stb_files_attached,\n" +
|
||||
" drl_doc_attached,\n" +
|
||||
" dtb_docr\n" +
|
||||
" WHERE stb_files_attached.id_attach = drl_doc_attached.id_attach\n" +
|
||||
" AND drl_doc_attached.cod_anag = dtb_docr.cod_anag\n" +
|
||||
" AND drl_doc_attached.cod_dtip = dtb_docr.cod_dtip\n" +
|
||||
" AND drl_doc_attached.data_doc = dtb_docr.data_doc\n" +
|
||||
" AND drl_doc_attached.ser_doc = dtb_docr.ser_doc\n" +
|
||||
" AND drl_doc_attached.num_doc = dtb_docr.num_doc\n" +
|
||||
" AND dtb_docr.cod_jcom = @codJcom\n" +
|
||||
"\n" +
|
||||
" UNION ALL\n" +
|
||||
"\n" +
|
||||
" SELECT COUNT(mtb_aart_link.id_riga) AS cnt\n" +
|
||||
" FROM mtb_aart_link\n" +
|
||||
" WHERE cod_mart IN (SELECT DISTINCT cod_mart\n" +
|
||||
" FROM (SELECT Wot.cod_jcom, Wor.cod_mart\n" +
|
||||
" FROM Wdtb_ordr Wor\n" +
|
||||
" INNER JOIN Wdtb_ordt Wot\n" +
|
||||
" ON Wor.gestione = Wot.gestione AND\n" +
|
||||
" Wor.data_ord = Wot.data_ord AND Wor.num_ord = Wot.num_ord\n" +
|
||||
" AND Wot.serie = Wor.serie\n" +
|
||||
" UNION ALL\n" +
|
||||
" SELECT wot.cod_jcom, dtb_ordr.cod_mart\n" +
|
||||
" FROM wdtb_ordt wot\n" +
|
||||
" INNER JOIN dtb_ordt ON wot.gestione = dtb_ordt.gestione AND\n" +
|
||||
" wot.data_ord = dtb_ordt.data_ord AND\n" +
|
||||
" wot.num_ord = dtb_ordt.num_ord_provv AND\n" +
|
||||
" wot.serie = dtb_ordt.serie\n" +
|
||||
" INNER JOIN dtb_ordr ON dtb_ordt.gestione = dtb_ordr.gestione AND\n" +
|
||||
" dtb_ordt.data_ord = dtb_ordr.data_ord AND\n" +
|
||||
" dtb_ordt.num_ord = dtb_ordr.num_ord) t\n" +
|
||||
" WHERE cod_jcom = @codJcom)) t\n" +
|
||||
"\n" +
|
||||
" RETURN @countAllegati\n" +
|
||||
"END");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -716,94 +716,94 @@ public class CrmService {
|
||||
wdtbOrdsDelete.setNativeSql(sql);
|
||||
entityProcessor.processEntity(wdtbOrdsDelete, true, multiDBTransactionManager);
|
||||
|
||||
if (activityId == null) { // SE NON HA ATTIVITA PREVENTIVAZIONE, NE CREA UNA
|
||||
if (codJcom == null) {
|
||||
CrmCommessa crmCommessa = completaOrd.getCommessa();
|
||||
if (codJcom == null) {
|
||||
CrmCommessa crmCommessa = completaOrd.getCommessa();
|
||||
|
||||
if (crmCommessa != null) {
|
||||
JtbComt jtbComt = new JtbComt();
|
||||
jtbComt.setOperation(OperationType.INSERT);
|
||||
jtbComt.setPrecode("C");
|
||||
jtbComt.setTipoAnag(tipoAnag);
|
||||
jtbComt.setCodAnag(codAnag);
|
||||
jtbComt.setCodVdes(codVdes);
|
||||
jtbComt.setDescrizione(crmCommessa.getDescrizione());
|
||||
jtbComt.setDescrizioneEstesa(crmCommessa.getDescrizioneEstesa());
|
||||
jtbComt.setNote(crmCommessa.getNote());
|
||||
jtbComt.setCodJflav(crmCommessa.getCodJflav());
|
||||
jtbComt.setCodJfas(crmCommessa.getCodJfas());
|
||||
jtbComt.setStatoCommessa(crmCommessa.getStatoCommessa());
|
||||
if (crmCommessa != null) {
|
||||
JtbComt jtbComt = new JtbComt();
|
||||
jtbComt.setOperation(OperationType.INSERT);
|
||||
jtbComt.setPrecode("C");
|
||||
jtbComt.setTipoAnag(tipoAnag);
|
||||
jtbComt.setCodAnag(codAnag);
|
||||
jtbComt.setCodVdes(codVdes);
|
||||
jtbComt.setDescrizione(crmCommessa.getDescrizione());
|
||||
jtbComt.setDescrizioneEstesa(crmCommessa.getDescrizioneEstesa());
|
||||
jtbComt.setNote(crmCommessa.getNote());
|
||||
jtbComt.setCodJflav(crmCommessa.getCodJflav());
|
||||
jtbComt.setCodJfas(crmCommessa.getCodJfas());
|
||||
jtbComt.setStatoCommessa(crmCommessa.getStatoCommessa());
|
||||
|
||||
entityProcessor.processEntity(jtbComt, true, multiDBTransactionManager);
|
||||
entityBaseList.add(jtbComt);
|
||||
codJcom = jtbComt.getCodJcom();
|
||||
entityProcessor.processEntity(jtbComt, true, multiDBTransactionManager);
|
||||
entityBaseList.add(jtbComt);
|
||||
codJcom = jtbComt.getCodJcom();
|
||||
|
||||
if (!completaOrd.getCrmAttivita().isEmpty()) {
|
||||
for (int i = 0; i < completaOrd.getCrmAttivita().size(); i++) {
|
||||
CrmAttivita crmAttivita = completaOrd.getCrmAttivita().get(i);
|
||||
if (!completaOrd.getCrmAttivita().isEmpty()) {
|
||||
for (int i = 0; i < completaOrd.getCrmAttivita().size(); i++) {
|
||||
CrmAttivita crmAttivita = completaOrd.getCrmAttivita().get(i);
|
||||
|
||||
StbActivity stbActivity = new StbActivity();
|
||||
stbActivity.setOperation(OperationType.INSERT);
|
||||
if (processActivityId != null) {
|
||||
stbActivity.setParentActivityId(processActivityId);
|
||||
}
|
||||
stbActivity.setTipoAnag(tipoAnag);
|
||||
stbActivity.setCodAnag(codAnag);
|
||||
stbActivity.setCodJcom(codJcom);
|
||||
stbActivity.setActivityTypeId(crmAttivita.getActivityTypeId());
|
||||
stbActivity.setActivityDescription(crmAttivita.getActivityDescription());
|
||||
stbActivity.setActivityResultId(crmAttivita.getActivityResultId());
|
||||
stbActivity.setNote(crmAttivita.getNote());
|
||||
stbActivity.setFlagTipologia(crmAttivita.getFlagTipologia());
|
||||
stbActivity.setUserName(crmAttivita.getUserName());
|
||||
stbActivity.setUserCreator(crmAttivita.getUserCreator());
|
||||
stbActivity.setUserModifier(crmAttivita.getUserModifier());
|
||||
stbActivity.setOraModAct(crmAttivita.getOraModAct());
|
||||
stbActivity.setOraViewAct(crmAttivita.getOraViewAct());
|
||||
stbActivity.setEstimatedDate(crmAttivita.getEstimatedTime());
|
||||
stbActivity.setEstimatedTime(crmAttivita.getEstimatedTime());
|
||||
stbActivity.setEstimatedEnddate(crmAttivita.getEstimatedEndtime());
|
||||
stbActivity.setEstimatedEndtime(crmAttivita.getEstimatedEndtime());
|
||||
stbActivity.setEffectiveDate(crmAttivita.getEffectiveTime());
|
||||
stbActivity.setEffectiveTime(crmAttivita.getEffectiveTime());
|
||||
stbActivity.setEffectiveEnddate(crmAttivita.getEffectiveEndtime());
|
||||
stbActivity.setEffectiveEndtime(crmAttivita.getEffectiveEndtime());
|
||||
|
||||
entityProcessor.processEntity(stbActivity, true, multiDBTransactionManager);
|
||||
if (i == 0 && processActivityId == null) {
|
||||
// Se si tratta della prima attività e non è specificato il processActivityId (activity_id del processo) allora
|
||||
// vuol dire che si sta creando un nuovo contatto e quindi verrà creato sia il processo che l'attività semplice
|
||||
processActivityId = stbActivity.getActivityId();
|
||||
}
|
||||
StbActivity stbActivity = new StbActivity();
|
||||
stbActivity.setOperation(OperationType.INSERT);
|
||||
if (processActivityId != null) {
|
||||
stbActivity.setParentActivityId(processActivityId);
|
||||
}
|
||||
stbActivity.setTipoAnag(tipoAnag);
|
||||
stbActivity.setCodAnag(codAnag);
|
||||
stbActivity.setCodJcom(codJcom);
|
||||
stbActivity.setActivityTypeId(crmAttivita.getActivityTypeId());
|
||||
stbActivity.setActivityDescription(crmAttivita.getActivityDescription());
|
||||
stbActivity.setActivityResultId(crmAttivita.getActivityResultId());
|
||||
stbActivity.setNote(crmAttivita.getNote());
|
||||
stbActivity.setFlagTipologia(crmAttivita.getFlagTipologia());
|
||||
stbActivity.setUserName(crmAttivita.getUserName());
|
||||
stbActivity.setUserCreator(crmAttivita.getUserCreator());
|
||||
stbActivity.setUserModifier(crmAttivita.getUserModifier());
|
||||
stbActivity.setOraModAct(crmAttivita.getOraModAct());
|
||||
stbActivity.setOraViewAct(crmAttivita.getOraViewAct());
|
||||
stbActivity.setEstimatedDate(crmAttivita.getEstimatedTime());
|
||||
stbActivity.setEstimatedTime(crmAttivita.getEstimatedTime());
|
||||
stbActivity.setEstimatedEnddate(crmAttivita.getEstimatedEndtime());
|
||||
stbActivity.setEstimatedEndtime(crmAttivita.getEstimatedEndtime());
|
||||
stbActivity.setEffectiveDate(crmAttivita.getEffectiveTime());
|
||||
stbActivity.setEffectiveTime(crmAttivita.getEffectiveTime());
|
||||
stbActivity.setEffectiveEnddate(crmAttivita.getEffectiveEndtime());
|
||||
stbActivity.setEffectiveEndtime(crmAttivita.getEffectiveEndtime());
|
||||
|
||||
entityProcessor.processEntity(stbActivity, true, multiDBTransactionManager);
|
||||
if (i == 0 && processActivityId == null) {
|
||||
// Se si tratta della prima attività e non è specificato il processActivityId (activity_id del processo) allora
|
||||
// vuol dire che si sta creando un nuovo contatto e quindi verrà creato sia il processo che l'attività semplice
|
||||
processActivityId = stbActivity.getActivityId();
|
||||
}
|
||||
} else {
|
||||
throw new Exception("I dati del processo e/o dell'attività da creare inesistenti");
|
||||
}
|
||||
} else {
|
||||
throw new Exception("Dati di commessa da creare inesistenti");
|
||||
throw new Exception("I dati del processo e/o dell'attività da creare inesistenti");
|
||||
}
|
||||
} else {
|
||||
throw new Exception("Dati di commessa da creare inesistenti");
|
||||
}
|
||||
}
|
||||
|
||||
// Acquisizione processo padre
|
||||
String parentActivityId = null;
|
||||
String activityDescription = "PREVENTIVO N. " + numOrd + " DEL " + new SimpleDateFormat(CommonConstants.DATE_FORMAT_DMY).format(dataOrd);
|
||||
Date dataOraIns = new Date();
|
||||
Date dataIns = UtilityDate.removeTime(dataOraIns);
|
||||
sql = "SELECT stb_activity.activity_id " +
|
||||
"FROM stb_activity, stb_activity_type " +
|
||||
"WHERE stb_activity.flag_tipologia = stb_activity_type.flag_tipologia AND " +
|
||||
" stb_activity.activity_type_id = stb_activity_type.activity_type_id AND " +
|
||||
" stb_activity_type.link_gest = 'PREVENTIVAZIONE' AND " +
|
||||
" stb_activity.cod_jcom = " + UtilityDB.valueToString(codJcom);
|
||||
// Acquisizione processo padre
|
||||
String parentActivityId = null;
|
||||
String activityDescription = "PREVENTIVO N. " + numOrd + " DEL " + new SimpleDateFormat(CommonConstants.DATE_FORMAT_DMY).format(dataOrd);
|
||||
Date dataOraIns = new Date();
|
||||
Date dataIns = UtilityDate.removeTime(dataOraIns);
|
||||
sql = "SELECT stb_activity.activity_id " +
|
||||
"FROM stb_activity, stb_activity_type " +
|
||||
"WHERE stb_activity.flag_tipologia = stb_activity_type.flag_tipologia AND " +
|
||||
" stb_activity.activity_type_id = stb_activity_type.activity_type_id AND " +
|
||||
" stb_activity_type.link_gest = 'PREVENTIVAZIONE' AND " +
|
||||
" stb_activity.cod_jcom = " + UtilityDB.valueToString(codJcom);
|
||||
|
||||
info = multiDBTransactionManager.prepareStatement(sql);
|
||||
res = info.executeQuery();
|
||||
while (res.next()) {
|
||||
parentActivityId = res.getString(1);
|
||||
}
|
||||
res.close();
|
||||
info.close();
|
||||
info = multiDBTransactionManager.prepareStatement(sql);
|
||||
res = info.executeQuery();
|
||||
while (res.next()) {
|
||||
parentActivityId = res.getString(1);
|
||||
}
|
||||
res.close();
|
||||
info.close();
|
||||
|
||||
if (activityId == null) { // SE NON HA ATTIVITA PREVENTIVAZIONE, NE CREA UNA
|
||||
// Inserimento attività completamento ordine
|
||||
StbActivity stbActivity = new StbActivity();
|
||||
stbActivity.setOperation(OperationType.INSERT);
|
||||
@@ -822,6 +822,24 @@ public class CrmService {
|
||||
|
||||
entityProcessor.processEntity(stbActivity, true, multiDBTransactionManager);
|
||||
activityId = stbActivity.getActivityId();
|
||||
} else {
|
||||
StbActivity stbActivity = new StbActivity();
|
||||
stbActivity.setOperation(OperationType.UPDATE);
|
||||
stbActivity.setActivityId(activityId);
|
||||
stbActivity.setParentActivityId(parentActivityId);
|
||||
stbActivity.setTipoAnag(tipoAnag);
|
||||
stbActivity.setCodAnag(codAnag);
|
||||
stbActivity.setCodJcom(codJcom);
|
||||
stbActivity.setActivityTypeId(activityTypeId);
|
||||
stbActivity.setActivityDescription(activityDescription);
|
||||
stbActivity.setFlagTipologia(flagTipologia);
|
||||
stbActivity.setUserName(requestDataDTO.getUsername());
|
||||
stbActivity.setUserCreator(requestDataDTO.getUsername());
|
||||
stbActivity.setOraViewAct(dataOraIns);
|
||||
stbActivity.setEffectiveDate(dataIns);
|
||||
stbActivity.setEffectiveTime(dataOraIns);
|
||||
|
||||
entityProcessor.processEntity(stbActivity, true, multiDBTransactionManager);
|
||||
}
|
||||
|
||||
// Aggiornamento ordine WEB
|
||||
|
||||
Reference in New Issue
Block a user