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:
@@ -1,10 +1,10 @@
|
||||
<component name="ProjectRunConfigurationManager">
|
||||
<configuration default="false" name="Tomcat 9 (RistoCash)" type="Remote">
|
||||
<configuration default="false" name="Tomcat 9 (AnydeskTunnel)" type="Remote">
|
||||
<module name="ems-engine" />
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true" />
|
||||
<option name="SERVER_MODE" value="false" />
|
||||
<option name="SHMEM_ADDRESS" />
|
||||
<option name="HOST" value="127.0.0.1" />
|
||||
<option name="HOST" value="localhost" />
|
||||
<option name="PORT" value="8001" />
|
||||
<option name="AUTO_RESTART" value="false" />
|
||||
<RunnerSettings RunnerId="Debug">
|
||||
16
.idea/runConfigurations/Tomcat__AnydeskTunnel_.xml
generated
16
.idea/runConfigurations/Tomcat__AnydeskTunnel_.xml
generated
@@ -1,16 +0,0 @@
|
||||
<component name="ProjectRunConfigurationManager">
|
||||
<configuration default="false" name="Tomcat (AnydeskTunnel)" type="Remote">
|
||||
<module name="ems-engine" />
|
||||
<option name="USE_SOCKET_TRANSPORT" value="true" />
|
||||
<option name="SERVER_MODE" value="false" />
|
||||
<option name="SHMEM_ADDRESS" />
|
||||
<option name="HOST" value="servertomcat" />
|
||||
<option name="PORT" value="8001" />
|
||||
<option name="AUTO_RESTART" value="false" />
|
||||
<RunnerSettings RunnerId="Debug">
|
||||
<option name="DEBUG_PORT" value="8001" />
|
||||
<option name="LOCAL" value="false" />
|
||||
</RunnerSettings>
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
</component>
|
||||
@@ -0,0 +1,40 @@
|
||||
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_20250929111320 extends BaseMigration implements MigrationModelInterface {
|
||||
|
||||
@Override
|
||||
public void up() throws Exception {
|
||||
if (isHistoryDB())
|
||||
return;
|
||||
|
||||
deleteSetup("w_jriep_presenze_dip_disp", "CB_AGGNOTE", "VISIBLE");
|
||||
|
||||
executeStatement("create table mtb_var_lisv_log (\n" +
|
||||
"id bigint identity,\n" +
|
||||
"datetime_var datetime not null,\n" +
|
||||
"user_name varchar(40),\n" +
|
||||
"cod_vlis varchar(5) not null, \n" +
|
||||
"versione int not null,\n" +
|
||||
"cod_promo varchar(10), \n" +
|
||||
"data_iniz datetime,\n" +
|
||||
"data_fine datetime,\n" +
|
||||
"cod_mart varchar(15),\n" +
|
||||
"note varchar(max))\n" ,
|
||||
"alter table mtb_var_lisv_log add constraint pk_mtb_var_lisv_log primary key ( id ) ");
|
||||
|
||||
if (isCustomer(IntegryCustomer.Carelli)) {
|
||||
executeStatement("update stb_abil set flag_abil = 'R'\n" +
|
||||
"where gest_name = 'vpromo'\n" +
|
||||
"and user_name not in ('Apapapicco', 'Gmezzapesa')\n" +
|
||||
"and flag_abil not in ('N', 'R')");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void down() throws Exception {
|
||||
}
|
||||
}
|
||||
@@ -87,8 +87,6 @@ public class SyncManager {
|
||||
entityToSave.manageWithParentConnection(connection);
|
||||
proceedSyncronization(entitySource, entityCloned, lastProfileUsed, multiDBTransactionManager);
|
||||
|
||||
multiDBTransactionManager.commitAll();
|
||||
|
||||
logger.debug("Fine sincronizzazione per " + entitySource.getTableName() + " su " + multiDBTransactionManager.getDistributoreProfileName());
|
||||
} catch (Exception e) {
|
||||
multiDBTransactionManager.rollbackAll();
|
||||
|
||||
@@ -76,8 +76,8 @@ public class UtilityUser {
|
||||
String sql = "SELECT md.* FROM " + MtbDepo.ENTITY + " md " +
|
||||
" INNER JOIN " + WtbDepo.ENTITY + " wd " +
|
||||
" ON md.cod_mdep = wd.cod_mdep" +
|
||||
" WHERE wd.user_name = " + UtilityDB.valueToString(userDTO.getUsername()+
|
||||
" order by wd.default_depo desc");
|
||||
" WHERE wd.user_name = " + UtilityDB.valueToString(userDTO.getUsername()) +
|
||||
" order by wd.default_depo desc";
|
||||
|
||||
List<MtbDepo> depos = UtilityDB.executeSimpleQueryDTO(multiDBTransactionManager.getPrimaryConnection(), sql, MtbDepo.class);
|
||||
|
||||
|
||||
@@ -0,0 +1,158 @@
|
||||
package it.integry.ems_model.entity;
|
||||
|
||||
import it.integry.common.var.CommonConstants;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.ArrayList;
|
||||
import it.integry.ems_model.base.EntityBase;
|
||||
import it.integry.ems_model.annotation.Master;
|
||||
import org.kie.api.definition.type.PropertyReactive;
|
||||
import it.integry.ems_model.annotation.Table;
|
||||
import com.fasterxml.jackson.annotation.JsonTypeName;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import it.integry.ems_model.annotation.PK;
|
||||
import it.integry.ems_model.annotation.Identity;
|
||||
import it.integry.ems_model.annotation.SqlField;
|
||||
import java.util.Date;
|
||||
|
||||
@Master()
|
||||
@PropertyReactive()
|
||||
@Table(value = MtbVarLisvLog.ENTITY)
|
||||
@JsonTypeName(value = MtbVarLisvLog.ENTITY)
|
||||
public class MtbVarLisvLog extends EntityBase {
|
||||
|
||||
public final static String ENTITY = "mtb_var_lisv_log";
|
||||
|
||||
private final static Long serialVersionUID = 1L;
|
||||
|
||||
private final static Logger logger = LogManager.getLogger();
|
||||
|
||||
public MtbVarLisvLog() {
|
||||
super(logger);
|
||||
}
|
||||
|
||||
@PK()
|
||||
@Identity()
|
||||
@SqlField(value = "id", nullable = false)
|
||||
private Long id;
|
||||
|
||||
@SqlField(value = "datetime_var", nullable = false, defaultObjectValue = CommonConstants.TIMESTAMP)
|
||||
private LocalDateTime datetimeVar;
|
||||
|
||||
@SqlField(value = "user_name", maxLength = 40, nullable = true)
|
||||
private String userName;
|
||||
|
||||
@SqlField(value = "cod_vlis", maxLength = 5, nullable = false)
|
||||
private String codVlis;
|
||||
|
||||
@SqlField(value = "versione", nullable = false)
|
||||
private Integer versione;
|
||||
|
||||
@SqlField(value = "cod_promo", maxLength = 10, nullable = true)
|
||||
private String codPromo;
|
||||
|
||||
@SqlField(value = "data_iniz", nullable = true)
|
||||
private LocalDate dataIniz;
|
||||
|
||||
@SqlField(value = "data_fine", nullable = true)
|
||||
private LocalDate dataFine;
|
||||
|
||||
@SqlField(value = "cod_mart", maxLength = 15, nullable = true)
|
||||
private String codMart;
|
||||
|
||||
@SqlField(value = "note", nullable = true)
|
||||
private String note;
|
||||
|
||||
public Long getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setId(Long id) {
|
||||
this.id = id;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalDateTime getDatetimeVar() {
|
||||
return datetimeVar;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setDatetimeVar(LocalDateTime datetimeVar) {
|
||||
this.datetimeVar = datetimeVar;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getUserName() {
|
||||
return userName;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setUserName(String userName) {
|
||||
this.userName = userName;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodVlis() {
|
||||
return codVlis;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setCodVlis(String codVlis) {
|
||||
this.codVlis = codVlis;
|
||||
return this;
|
||||
}
|
||||
|
||||
public Integer getVersione() {
|
||||
return versione;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setVersione(Integer versione) {
|
||||
this.versione = versione;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodPromo() {
|
||||
return codPromo;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setCodPromo(String codPromo) {
|
||||
this.codPromo = codPromo;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalDate getDataIniz() {
|
||||
return dataIniz;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setDataIniz(LocalDate dataIniz) {
|
||||
this.dataIniz = dataIniz;
|
||||
return this;
|
||||
}
|
||||
|
||||
public LocalDate getDataFine() {
|
||||
return dataFine;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setDataFine(LocalDate dataFine) {
|
||||
this.dataFine = dataFine;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getCodMart() {
|
||||
return codMart;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setCodMart(String codMart) {
|
||||
this.codMart = codMart;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String getNote() {
|
||||
return note;
|
||||
}
|
||||
|
||||
public MtbVarLisvLog setNote(String note) {
|
||||
this.note = note;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
@@ -179,20 +179,50 @@ public class DigitalInvoiceService {
|
||||
Azienda datiAzienda = this.getDatiAzienda(data);
|
||||
|
||||
// GET Dati Testata
|
||||
String queryDatiHeader = "SELECT dtb_doct.num_cmov, dtb_doct.gestione, dtb_doct.num_doc, isNull(vtb_dest.cuu_pa, gtb_anag.cuu_pa ) as cuu_pa, IsNull(vtb_dest.e_mail_pec, gtb_anag.e_mail_pec) as e_mail_pec, gtb_anag.flag_persona_fg, naziAnag.cod_nazi_alpha_2 as nazione, " +
|
||||
" gtb_anag.part_iva, gtb_anag.rag_soc + isNull(' ' + gtb_anag.rag_soc2, '') as rag_soc, gtb_anag.cod_fisc, gtb_anag.nome, " +
|
||||
" gtb_anag.cognome, gtb_anag.indirizzo, gtb_anag.cap, gtb_anag.citta, gtb_anag.prov, gtb_anag.reg_fisc, vtb_dest.destinatario as rag_soc_dest, vtb_dest.indirizzo AS indirizzo_dest, " +
|
||||
" vtb_dest.citta AS citta_dest, vtb_dest.cap AS cap_dest, vtb_dest.prov AS prov_dest, naziDest.cod_nazi_alpha_2 AS nazione_dest, " +
|
||||
" vtb_dest.part_iva AS part_iva_dest, CASE WHEN Len(isNull(vtb_dest.cuu_pa, gtb_anag.cuu_pa )) = 6 THEN 'FPA12' ELSE 'FPR12' END AS formato, isNull(vtb_dest.flag_stabile_org, 'N') as flag_stabile_org " +
|
||||
"FROM dtb_doct " +
|
||||
" LEFT OUTER JOIN gtb_anag ON gtb_anag.cod_anag = dtb_doct.cod_anag " +
|
||||
" LEFT OUTER JOIN (select gtb_nazi.nazione, gtb_nazi_iso.cod_nazione_iso, gtb_nazi_iso.cod_nazi_alpha_2 " +
|
||||
" from gtb_nazi left outer join gtb_nazi_iso on gtb_nazi.cod_nazione_iso = gtb_nazi_iso.cod_nazione_iso) naziAnag ON gtb_anag.nazione = naziAnag.nazione " +
|
||||
" LEFT OUTER JOIN vtb_dest " +
|
||||
" ON vtb_dest.cod_anag = dtb_doct.cod_anag " +
|
||||
" AND vtb_dest.cod_vdes = dtb_doct.cod_vdes " +
|
||||
" LEFT OUTER JOIN (select gtb_nazi.nazione, gtb_nazi_iso.cod_nazione_iso, gtb_nazi_iso.cod_nazi_alpha_2 " +
|
||||
" from gtb_nazi left outer join gtb_nazi_iso on gtb_nazi.cod_nazione_iso = gtb_nazi_iso.cod_nazione_iso) naziDest ON vtb_dest.nazione = naziDest.nazione " +
|
||||
String queryDatiHeader = "SELECT dtb_doct.num_cmov,\n" +
|
||||
" dtb_doct.gestione,\n" +
|
||||
" dtb_doct.num_doc,\n" +
|
||||
" IIF(ISNULL(dtb_tipi_fe.flag_integrazione, 0) = 1, azienda.cod_sdi_ditta,\n" +
|
||||
" ISNULL(vtb_dest.cuu_pa, gtb_anag.cuu_pa)) AS cuu_pa,\n" +
|
||||
" ISNULL(vtb_dest.e_mail_pec, gtb_anag.e_mail_pec) AS e_mail_pec,\n" +
|
||||
" gtb_anag.flag_persona_fg,\n" +
|
||||
" naziAnag.cod_nazi_alpha_2 AS nazione,\n" +
|
||||
" gtb_anag.part_iva,\n" +
|
||||
" gtb_anag.rag_soc + ISNULL(' ' + gtb_anag.rag_soc2, '') AS rag_soc,\n" +
|
||||
" gtb_anag.cod_fisc,\n" +
|
||||
" gtb_anag.nome,\n" +
|
||||
" gtb_anag.cognome,\n" +
|
||||
" gtb_anag.indirizzo,\n" +
|
||||
" IIF(ISNULL(dtb_tipi_fe.flag_integrazione, 0) = 1, '00000', gtb_anag.cap) AS cap,\n" +
|
||||
" gtb_anag.citta,\n" +
|
||||
" gtb_anag.prov,\n" +
|
||||
" gtb_anag.reg_fisc,\n" +
|
||||
" vtb_dest.destinatario AS rag_soc_dest,\n" +
|
||||
" vtb_dest.indirizzo AS indirizzo_dest,\n" +
|
||||
" vtb_dest.citta AS citta_dest,\n" +
|
||||
" vtb_dest.cap AS cap_dest,\n" +
|
||||
" vtb_dest.prov AS prov_dest,\n" +
|
||||
" naziDest.cod_nazi_alpha_2 AS nazione_dest,\n" +
|
||||
" vtb_dest.part_iva AS part_iva_dest,\n" +
|
||||
" IIF(LEN(ISNULL(vtb_dest.cuu_pa, gtb_anag.cuu_pa)) = 6, 'FPA12', 'FPR12') AS formato,\n" +
|
||||
" ISNULL(vtb_dest.flag_stabile_org, 'N') AS flag_stabile_org\n" +
|
||||
"FROM dtb_doct\n" +
|
||||
" INNER JOIN dtb_tipi ON dtb_doct.cod_dtip = dtb_tipi.cod_dtip\n" +
|
||||
" LEFT OUTER JOIN ctb_caus ON dtb_tipi.cod_ccau = ctb_caus.cod_ccau\n" +
|
||||
" LEFT OUTER JOIN dtb_tipi_fe ON ctb_caus.cod_dtip_ccau = dtb_tipi_fe.cod_dtip_ccau\n" +
|
||||
" LEFT OUTER JOIN gtb_anag ON gtb_anag.cod_anag = dtb_doct.cod_anag\n" +
|
||||
" LEFT OUTER JOIN (SELECT gtb_nazi.nazione, gtb_nazi_iso.cod_nazione_iso, gtb_nazi_iso.cod_nazi_alpha_2\n" +
|
||||
" FROM gtb_nazi\n" +
|
||||
" LEFT OUTER JOIN gtb_nazi_iso ON gtb_nazi.cod_nazione_iso = gtb_nazi_iso.cod_nazione_iso) naziAnag\n" +
|
||||
" ON gtb_anag.nazione = naziAnag.nazione\n" +
|
||||
" LEFT OUTER JOIN vtb_dest\n" +
|
||||
" ON vtb_dest.cod_anag = dtb_doct.cod_anag\n" +
|
||||
" AND vtb_dest.cod_vdes = dtb_doct.cod_vdes\n" +
|
||||
" LEFT OUTER JOIN (SELECT gtb_nazi.nazione, gtb_nazi_iso.cod_nazione_iso, gtb_nazi_iso.cod_nazi_alpha_2\n" +
|
||||
" FROM gtb_nazi\n" +
|
||||
" LEFT OUTER JOIN gtb_nazi_iso ON gtb_nazi.cod_nazione_iso = gtb_nazi_iso.cod_nazione_iso) naziDest\n" +
|
||||
" ON vtb_dest.nazione = naziDest.nazione\n" +
|
||||
" CROSS APPLY azienda\n" +
|
||||
"WHERE dtb_doct.cod_anag = " + UtilityDB.valueToString(codAnag) +
|
||||
" AND dtb_doct.cod_dtip = " + UtilityDB.valueToString(codDtip) +
|
||||
" AND dtb_doct.data_doc = " + UtilityDB.valueToString(dataDoc) +
|
||||
|
||||
@@ -67,6 +67,14 @@ public class DocumentiDirettiService {
|
||||
dtbDoc.setIdRiga(null);
|
||||
});
|
||||
}
|
||||
|
||||
if (UtilityString.isNullOrEmpty(dtbDoct.getCodAnag() )) {
|
||||
throw new Exception("Codice cliente/fornitore obbgligatorio");
|
||||
}
|
||||
|
||||
if (UtilityString.isNullOrEmpty(dtbDoct.getCodVdes() )) {
|
||||
throw new Exception("Tipo documento obbgligatorio");
|
||||
}
|
||||
entityList.add(dtbDoct);
|
||||
|
||||
String sql =
|
||||
|
||||
@@ -535,6 +535,30 @@ public class ListiniVenditaServices {
|
||||
}
|
||||
entities.addAll(getVtbListData(listini));
|
||||
|
||||
if ( userSession.getCurrentUser() != null ) {
|
||||
List<MtbVarLisvLog> chiusuraPromo = listini
|
||||
.stream()
|
||||
.map(
|
||||
l -> {
|
||||
MtbVarLisvLog log = new MtbVarLisvLog()
|
||||
.setUserName(userSession.getUsername())
|
||||
.setVersione(l.getVersione())
|
||||
.setCodVlis(l.getCodVlis())
|
||||
.setDataIniz(UtilityLocalDate.localDateFromDate(l.getDataIniz()))
|
||||
.setDataFine(UtilityLocalDate.localDateFromDate(l.getDataFine()))
|
||||
.setCodPromo(l.getCodPromo())
|
||||
.setCodMart(l.getCodMart())
|
||||
.setNote("Chiusura Promo");
|
||||
log.setOperation(OperationType.INSERT);
|
||||
return log;
|
||||
}
|
||||
).collect(Collectors.toList());
|
||||
|
||||
entities.addAll(chiusuraPromo);
|
||||
|
||||
|
||||
}
|
||||
|
||||
if (saveEntity) {
|
||||
entities = entityProcessor.processEntityList(entities, true);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user