Compare commits

..

14 Commits

Author SHA1 Message Date
5fbf7975d2 Migliorata gestione profile di default in RequestDataDTO
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
2025-12-17 18:32:02 +01:00
a75b66bd53 Fix su Hibernte che non funzionava correttamente con profileDb maiuscolo/minuscolo
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
2025-12-17 18:21:09 +01:00
13439c236d Creato repository per StbEmail
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
2025-12-17 16:34:21 +01:00
77d5a9cb9e aggiunta Roberta nelle notifiche
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
2025-12-17 12:56:06 +01:00
d4cfada677 Merge remote-tracking branch 'origin/develop' into develop 2025-12-17 12:52:25 +01:00
27c6795b9f Merge remote-tracking branch 'origin/develop' into develop 2025-12-17 12:52:07 +01:00
dd9ff5c111 prova 2025-12-17 12:52:06 +01:00
1a4773659a Nella procedura di importazione CRONOTIME Geestito invio mail di errore quando un badge non esiste 2025-12-17 12:52:03 +01:00
0d2da1a92c prova
Some checks are pending
IntegryManagementSystem_Multi/pipeline/head Build queued...
2025-12-17 12:51:46 +01:00
b203e94836 gestita equivalenza su dati di magazzino dell'articolo
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
2025-12-17 12:50:44 +01:00
b3c99f7937 Modificato formato data
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
2025-12-17 12:40:34 +01:00
6257fd540d Migliorie email interna di errore di sistema
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
2025-12-17 10:23:08 +01:00
635ac0a1c7 Merge remote-tracking branch 'origin/develop' into develop
Some checks failed
IntegryManagementSystem_Multi/pipeline/head There was a failure building this commit
2025-12-16 18:27:36 +01:00
8abf441a8a [carelli - ordini a]
- aggiunto controllo su qta_ord vs qta_cnf
- unificati tutti controlli di esportazione nei servizi
2025-12-16 18:27:29 +01:00
32 changed files with 487 additions and 112 deletions

2
.idea/sqldialects.xml generated
View File

@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="SqlDialectMappings">
<file url="file://$PROJECT_DIR$/.idea/queries/Query.sql" dialect="TSQL" />
<file url="file://$PROJECT_DIR$/.idea/queries/Query_1.sql" dialect="TSQL" />
<file url="file://$PROJECT_DIR$/.idea/queries/Query_2.sql" dialect="TSQL" />
</component>
</project>

View File

@@ -357,8 +357,8 @@ public abstract class BaseEntityExporter implements IEntityExporter {
case EMAIL:
if (UtilityString.isNullOrEmpty(wtbUserInfo.getEmail()) &&
UtilityString.isNullOrEmpty(wtbUserInfo.getEmailCc()) &&
UtilityString.isNullOrEmpty(wtbUserInfo.getEmailCcn())) {
UtilityString.isNullOrEmpty(wtbUserInfo.getEmailCc()) &&
UtilityString.isNullOrEmpty(wtbUserInfo.getEmailCcn())) {
break;
}
@@ -369,7 +369,8 @@ public abstract class BaseEntityExporter implements IEntityExporter {
entityExportResponse.setMessageContent("Messaggio creato automaticamente: " + "INVIO " + type + " formato " + format);
}
fileSharerSettings = MailService.readParameter(multiDBTransactionManager.getPrimaryConnection(), null);
fileSharerSettings = ApplicationContextProvider.getApplicationContext().getBean(MailService.class)
.readParameter(multiDBTransactionManager.getPrimaryConnection(), null);
((EmailFileSharerSettings) fileSharerSettings)
.withSubject(entityExportResponse.getMessageSubject())
.withTextMessage(entityExportResponse.getMessageContent())
@@ -403,7 +404,7 @@ public abstract class BaseEntityExporter implements IEntityExporter {
}
}
if (counterTotalSend > 0 && counterFailedSend == counterTotalSend && retException != null) {
if (counterTotalSend > 0 && counterFailedSend == counterTotalSend && retException != null) {
//Se gli invii precedenti sono andati bene usciamo
throw retException;
}

View File

@@ -39,6 +39,9 @@ public class RequestDataDTO {
@Autowired
private ResponseJSONObjectMapper jsonObjectMapper;
@Autowired
private SettingsModel settingsModel;
private String requestURI;
private String requestClientIP;
@@ -104,13 +107,10 @@ public class RequestDataDTO {
jsonObjectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
}
// Logica di fallback o recupero tenant da sessione/utente
if (profileDB == null || profileDB.isEmpty()) {
// Esempio: recupero da sessione se presente
// tenantId = (String) request.getSession().getAttribute("TENANT_ID");
// Fallback temporaneo per test
// tenantId = DEFAULT_TENANT;
profileDB = settingsModel.getDefaultProfile();
}
if (profileDB != null) {
@@ -130,10 +130,10 @@ public class RequestDataDTO {
.setPassword("sql");
}
public static RequestDataDTO scheduledOperationsMockupData() {
return new RequestDataDTO()
.setUsername("INTEGRY")
.setPassword("INTEGRY");
public static RequestDataDTO systemMockupData(String profileDb) {
final RequestDataDTO requestDataDTO = systemMockupData();
requestDataDTO.profileDB = profileDb;
return requestDataDTO;
}
public boolean isValidProfileDB() {

View File

@@ -31,20 +31,20 @@ public class MultiTenantDataSource extends AbstractRoutingDataSource {
List<AvailableConnectionModel> connections = settingsModel.getAvailableConnections(false);
// Imposta il primo come default se necessario, o gestisci il caso null
DataSource defaultDataSource = null;
// DataSource defaultDataSource = null;
for (AvailableConnectionModel model : connections) {
DataSource ds = basicConnectionPool.getDataSource(model.getProfileName());
if (ds != null) {
targetDataSources.put(model.getProfileName(), ds);
if (defaultDataSource == null) {
defaultDataSource = ds;
}
targetDataSources.put(model.getProfileName().toLowerCase(), ds);
// if (defaultDataSource == null) {
// defaultDataSource = ds;
// }
}
}
this.setTargetDataSources(targetDataSources);
this.setDefaultTargetDataSource(defaultDataSource);
//this.setDefaultTargetDataSource(defaultDataSource);
super.afterPropertiesSet();
}

View File

@@ -4,7 +4,10 @@ public class TenantContext {
private static final ThreadLocal<String> currentTenant = new ThreadLocal<>();
public static void setCurrentTenant(String tenant) {
currentTenant.set(tenant);
if (tenant == null)
throw new IllegalArgumentException("Tenant identifier cannot be null");
currentTenant.set(tenant.toLowerCase());
}
public static String getCurrentTenant() {

View File

@@ -0,0 +1,15 @@
package it.integry.ems.jpa.repository;
import it.integry.ems_model.entity.StbEmail;
import org.springframework.data.jpa.repository.Query;
import java.util.Optional;
public interface StbEmailRepository extends BaseRepository<StbEmail, Integer> {
@Query("SELECT e FROM StbEmail e WHERE e.flagDefault = 'S'")
Optional<StbEmail> findByFlagDefaultTrue();
@Query("SELECT e FROM StbEmail e WHERE UPPER(e.eMail) = UPPER(?1)")
Optional<StbEmail> findByEmailIgnoreCase(String email);
}

View File

@@ -0,0 +1,23 @@
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_20251217111203 extends BaseMigration implements MigrationModelInterface {
@Override
public void up() throws Exception {
if (isHistoryDB())
return;
enableSaveToRest("maart_equi");
if ( !isCustomer(IntegryCustomer.Smetar)) return;
executeStatement("update mtb_aart_equi set flag_equi_anag = 1");
}
@Override
public void down() throws Exception {
}
}

View File

@@ -22,6 +22,7 @@ import it.integry.ems_model.rulescompleting.DroolsDataCompleting;
import it.integry.ems_model.types.ApplicationName;
import it.integry.ems_model.types.OperationType;
import it.integry.ems_model.utility.*;
import org.apache.commons.lang3.StringUtils;
import org.springframework.expression.Expression;
import org.springframework.expression.ExpressionParser;
import org.springframework.expression.spel.standard.SpelExpressionParser;
@@ -1395,4 +1396,61 @@ public class CommonRules extends QueryRules {
return chkCompatibilita;
}
public static void updArtEqui(Connection conn, MtbAart mtbAart) throws Exception {
if (UtilityString.isNullOrEmpty(mtbAart.getIdArtEqui())) return;
if (!mtbAart.isUpdArtEqui()) return;
boolean equiAnag = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(conn,
Query.format("select flag_equi_anag \n" +
"FROM mtb_aart_equi \n" +
"WHERE id_art_equi = {} ",
mtbAart.getIdArtEqui()));
if (!equiAnag) return;
boolean modify = true;
if (mtbAart.getOriginalEntity() != null) {
MtbAart originalMtbAart = (MtbAart) mtbAart.getOriginalEntity();
modify = (!UtilityString.isNullOrEmpty(originalMtbAart.getUntMis()) ||
!UtilityString.isNullOrEmpty(originalMtbAart.getUntMis2()) ||
!UtilityString.isNullOrEmpty(originalMtbAart.getUntMis3()) ||
!UtilityBigDecimal.isNullOrZero(originalMtbAart.getRapConv2()) ||
!UtilityBigDecimal.isNullOrZero(originalMtbAart.getRapConv3()) ||
!UtilityBigDecimal.isNullOrZero(originalMtbAart.getPesoKg()) ||
!UtilityBigDecimal.isNullOrZero(originalMtbAart.getQtaCnf()) ||
!UtilityBigDecimal.isNullOrZero(originalMtbAart.getColliPedana()) ||
!UtilityBigDecimal.isNullOrZero(originalMtbAart.getColliStrato()) ||
!UtilityBigDecimal.isNullOrZero(originalMtbAart.getTaraKg()));
}
if (!modify) return;
List<MtbAart> mtbAarts = UtilityDB.executeSimpleQueryDTO(conn,
Query.format("SELECT * \n" +
"FROM mtb_aart \n" +
"WHERE id_art_equi is not null AND \n" +
"id_art_equi = {} AND \n " +
"cod_mart <> {}",
mtbAart.getIdArtEqui(),
mtbAart.getCodMart()), MtbAart.class);
if ( mtbAarts == null || mtbAarts.isEmpty()) return;
for (MtbAart m : mtbAarts) {
m.setUntMis(mtbAart.getUntMis())
.setUntMis2(mtbAart.getUntMis2())
.setUntMis3(mtbAart.getUntMis3())
.setRapConv2(mtbAart.getRapConv2())
.setRapConv3(mtbAart.getRapConv3())
.setPesoKg(mtbAart.getPesoKg())
.setQtaCnf(mtbAart.getQtaCnf())
.setColliPedana(mtbAart.getColliPedana())
.setColliStrato(mtbAart.getColliStrato())
.setTaraKg(mtbAart.getTaraKg())
.setUpdArtEqui(false)
.setOperation(OperationType.UPDATE);
}
mtbAart.setArticoliEquivalenti(mtbAarts);
}
}

View File

@@ -27,7 +27,7 @@ public class DocumentRules extends QueryRules {
public static Date getDataRicezioneAllegati(Connection conn, List<DrlDocAttached> drlDocAttached) throws Exception {
String minDataRic = setupGest.getSetup(conn, "CTB_MOVI", "SETUP", "SET_DATA_RICEZIONE");
LocalDateTime dataRicMin = LocalDateTime.parse(minDataRic, CommonConstants.DATETIME_YMD_DASHED_FORMATTER);
LocalDateTime dataRicMin = UtilityString.parseLocalDateTime(minDataRic);
String idAttach = drlDocAttached.get(0).getIdAttach();
String sqlAttach =

View File

@@ -9,6 +9,7 @@ import it.integry.ems.file_sharer.IFileSharerAttachment;
import it.integry.ems.file_sharer.sharers.email.EmailFileAttachment;
import it.integry.ems.file_sharer.sharers.email.EmailFileSharer;
import it.integry.ems.file_sharer.sharers.email.EmailFileSharerSettings;
import it.integry.ems.jpa.repository.StbEmailRepository;
import it.integry.ems.json.ResponseJSONObjectMapper;
import it.integry.ems.media.MimeTypesHandler;
import it.integry.ems.response.FileItem;
@@ -24,7 +25,6 @@ import it.integry.ems.utility.UtilityDebug;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.entity.StbEmail;
import it.integry.ems_model.service.SetupGest;
import it.integry.ems_model.utility.UtilityDB;
import it.integry.ems_model.utility.UtilityList;
import it.integry.ems_model.utility.UtilityLocalDate;
import it.integry.ems_model.utility.UtilityString;
@@ -78,6 +78,9 @@ public class MailService {
@Autowired
private EmsDBConst emsDBConst;
@Autowired
private StbEmailRepository stbEmailRepository;
private final Logger logger = LogManager.getLogger();
public enum Level {
@@ -87,7 +90,7 @@ public class MailService {
ERROR
}
public static EmailFileSharerSettings readParameter(@NotNull Connection connection, String fromEmail) throws Exception {
public EmailFileSharerSettings readParameter(@NotNull Connection connection, String fromEmail) throws Exception {
if (UtilityDebug.isIntegryServerDev()) {
return useSystemParams();
}
@@ -95,15 +98,16 @@ public class MailService {
EmailFileSharerSettings emailSettings = new EmailFileSharerSettings();
String sql;
StbEmail stbEmail = null;
if (!UtilityString.isNullOrEmpty(fromEmail)) {
sql = "SELECT * from stb_email WHERE e_mail = " + UtilityDB.valueToString(fromEmail);
stbEmail = stbEmailRepository.findByEmailIgnoreCase(fromEmail)
.orElse(null);
} else {
sql = "SELECT * from stb_email WHERE flag_default = 'S'";
stbEmail = stbEmailRepository.findByFlagDefaultTrue()
.orElse(null);
}
List<StbEmail> listEmail = UtilityDB.executeSimpleQueryDTO(connection, sql, StbEmail.class);
StbEmail stbEmail = listEmail != null && !listEmail.isEmpty() ? listEmail.get(0) : null;
if (stbEmail != null && stbEmail.getIdRiga() != null) {
EmailFileSharerSettings.ENCRYPTION encryption = EmailFileSharerSettings.ENCRYPTION.NONE;
@@ -204,7 +208,7 @@ public class MailService {
}
public Message sendMailPrimary(Connection connection, String from, String
fromName, String to, String cc, String ccn,
fromName, String to, String cc, String ccn,
String subject, String msgText, Boolean isHtml, Boolean isDebug, String replyTo, String
replyToName, List<IFileSharerAttachment> emailFileAttachmentList, boolean requestDeliveryNotification,
String deliveryNotificationTo) throws
@@ -231,7 +235,7 @@ public class MailService {
}
public Message sendMailPrimary(Connection connection, String from, String
fromName, List<String> listTo, List<String> listCc, List<String> ListCcn,
fromName, List<String> listTo, List<String> listCc, List<String> ListCcn,
String subject, String msgText, Boolean isHtml, Boolean isDebug, String replyTo, String
replyToName, List<IFileSharerAttachment> emailFileAttachmentList, boolean requestDeliveryNotification,
String deliveryNotificationTo) throws
@@ -300,7 +304,7 @@ public class MailService {
}
public EmailFileSharerSettings internalReadParameter(Connection connection, String fromEmail) throws Exception {
return MailService.readParameter(connection, fromEmail);
return readParameter(connection, fromEmail);
}
public Message sendMail(String from, String fromName, String to, String cc, String subject, String msg) throws Exception {
@@ -492,56 +496,29 @@ public class MailService {
internalSendSystemMail(Level.SUCCESS, mailSubject, mailTitle, mailContent, footerDate);
}
public void sendSystemWarningLog(String mailSubject, String mailTitle, String mailContent, String exceptionMessage, Date footerDate) throws Exception {
mailContent += "<br /><br /><br />\n" +
"<hr noshade size=\"1\"><br />" +
"<p style=\"text-align: left; font-weight: bold;font-size: 12px;\">ERROR LOG</p>" +
"<p style=\"text-align: left; font-size: 12px; color: gray; font-family: consolas;\">" + exceptionMessage + "</p>";
internalSendSystemMail(Level.WARNING, mailSubject, mailTitle, mailContent, footerDate);
}
public void sendSystemWarningLog(String mailSubject, String mailTitle, String mailContent, Exception ex, Date footerDate) throws Exception {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
ex.printStackTrace(pw);
mailContent += "<br /><br /><br />\n" +
"<hr noshade size=\"1\"><br />" +
"<p style=\"text-align: left; font-weight: bold;font-size: 12px;\">ERROR LOG</p>" +
"<p style=\"text-align: left; font-size: 12px; color: gray; font-family: consolas;\">" + sw + "</p>";
pw.close();
sw.close();
internalSendSystemMail(Level.WARNING, mailSubject, mailTitle, mailContent, footerDate);
}
public void sendSystemErrorLog(String mailSubject, String mailTitle, String mailContent, String exceptionMessage, Date footerDate) throws Exception {
mailContent += "<br /><br /><br />\n" +
"<hr noshade size=\"1\"><br />" +
"<p style=\"text-align: left; font-weight: bold;font-size: 12px;\">ERROR LOG</p>" +
"<p style=\"text-align: left; font-size: 12px; color: gray; font-family: consolas;\">" + exceptionMessage + "</p>";
internalSendSystemMail(Level.ERROR, mailSubject, mailTitle, mailContent, footerDate);
internalSendSystemLogMail(Level.WARNING, mailSubject, mailTitle, mailContent, ex, footerDate);
}
public void sendSystemErrorLog(String mailSubject, String mailTitle, String mailContent, Exception ex, Date footerDate) throws Exception {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
ex.printStackTrace(pw);
internalSendSystemLogMail(Level.ERROR, mailSubject, mailTitle, mailContent, ex, footerDate);
}
private void internalSendSystemLogMail(Level mailLevel, String mailSubject, String mailTitle, String mailContent, Exception ex, Date footerDate) throws Exception {
if (ex != null) {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
ex.printStackTrace(pw);
mailContent += "<br /><br /><br />\n" +
"<hr noshade size=\"1\"><br />" +
"<p style=\"text-align: left; font-weight: bold;font-size: 12px;\">ERROR LOG</p>" +
"<p style=\"text-align: left; font-size: 12px; color: gray; font-family: consolas;\">" + sw + "</p>";
pw.close();
sw.close();
mailContent += "<br /><br /><br />\n" +
"<p style=\"text-align: left; font-weight: bold;font-size: 12px;\">Stacktrace</p>" +
"<pre>" + sw + "</pre>";
pw.close();
sw.close();
}
internalSendSystemMail(Level.ERROR, mailSubject, mailTitle, mailContent, footerDate);
internalSendSystemMail(mailLevel, mailSubject, mailTitle, mailContent, footerDate);
}
private void internalSendSystemMail(Level mailLevel, String mailSubject, String mailTitle, String mailContent, Date footerDate) throws Exception {

View File

@@ -25,7 +25,7 @@ public class MailTemplateService {
URL url = new URL(baseUrl + fileName);
InputStream inputStream = url.openStream();
String htmlMailBody = IOUtils.toString(inputStream, StandardCharsets.ISO_8859_1);
String htmlMailBody = IOUtils.toString(inputStream, StandardCharsets.UTF_8);
inputStream.close();
return htmlMailBody;

View File

@@ -101,7 +101,7 @@ public class MultiDBTransactionManager implements AutoCloseable {
return;
}
try {
String profileDb = settingsModel.getDefaultProfile();
String profileDb = null;
if (requestData != null && requestData.isValidProfileDB()) {
profileDb = requestData.getProfileDB();
}

View File

@@ -430,6 +430,9 @@ public class MtbAart extends EntityBase implements EquatableEntityInterface<MtbA
@javax.persistence.JoinColumn(name = "unt_mis", insertable = false, updatable = false)
private MtbUntMis mtbUntMis;
@Transient
private boolean updArtEqui = true;
@Priority(1)
@Transient
//Compatible with EntityBase
@@ -443,6 +446,10 @@ public class MtbAart extends EntityBase implements EquatableEntityInterface<MtbA
@Transient
private MtbAartEqui mtbAartEqui;
@Priority(value = 101, copyPk = false)
@Transient
private List<MtbAart> articoliEquivalenti;
@EntityChild
@javax.persistence.OneToMany(fetch = javax.persistence.FetchType.LAZY, mappedBy = "mtbAart")
private List<MtbAartBarCode> mtbAartBarCode = new ArrayList<>();
@@ -1455,6 +1462,24 @@ public class MtbAart extends EntityBase implements EquatableEntityInterface<MtbA
this.mtbAartEqui = mtbAartEqui;
}
public boolean isUpdArtEqui() {
return updArtEqui;
}
public MtbAart setUpdArtEqui(boolean updArtEqui) {
this.updArtEqui = updArtEqui;
return this;
}
public List<MtbAart> getArticoliEquivalenti() {
return articoliEquivalenti;
}
public MtbAart setArticoliEquivalenti(List<MtbAart> articoliEquivalenti) {
this.articoliEquivalenti = articoliEquivalenti;
return this;
}
public List<JtbCicl> getJtbCicl() {
return jtbCicl;
}

View File

@@ -3,10 +3,12 @@ package it.integry.ems_model.entity;
import com.fasterxml.jackson.annotation.JsonTypeName;
import it.integry.ems_model.annotation.*;
import it.integry.ems_model.base.EntityBase;
import org.kie.api.definition.type.PropertyReactive;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.kie.api.definition.type.PropertyReactive;
@javax.persistence.Entity
@javax.persistence.Table(name = StbEmail.ENTITY)
@Master
@PropertyReactive
@Table(StbEmail.ENTITY)
@@ -19,44 +21,58 @@ public class StbEmail extends EntityBase {
private static final long serialVersionUID = 1L;
@javax.persistence.Id
@javax.persistence.Column(name = "id_riga")
@PK
@SqlDetailId
@SqlField(value = "id_riga", nullable = false)
private Integer idRiga;
@javax.persistence.Column(name = "e_mail")
@SqlField(value = "e_mail", maxLength = 255, nullable = false)
private String eMail;
@javax.persistence.Column(name = "smtp")
@SqlField(value = "smtp", maxLength = 255)
private String smtp;
@javax.persistence.Column(name = "authentication")
@SqlField(value = "authentication", maxLength = 1, nullable = false, defaultObjectValue = "S")
private String authentication;
@javax.persistence.Column(name = "user_name")
@SqlField(value = "user_name", maxLength = 255)
private String userName;
@javax.persistence.Column(name = "password")
@SqlField(value = "password", maxLength = 255)
private String password;
@javax.persistence.Column(name = "port")
@SqlField(value = "port", maxLength = 255)
private String port;
@javax.persistence.Column(name = "SSL")
@SqlField(value = "SSL", maxLength = 1, nullable = false, defaultObjectValue = "N")
private String ssl;
@javax.persistence.Column(name = "crypt_password")
@SqlField(value = "crypt_password", maxLength = 1, nullable = false, defaultObjectValue = "S")
private String cryptPassword;
@javax.persistence.Column(name = "flag_default")
@SqlField(value = "flag_default", maxLength = 1, nullable = false, defaultObjectValue = "N")
private String flagDefault;
@javax.persistence.Column(name = "flag_default_contabilita")
@SqlField(value = "flag_default_contabilita", maxLength = 1, nullable = false, defaultObjectValue = "N")
private String flagDefaultContabilita;
@javax.persistence.Column(name = "imap")
@SqlField(value = "imap", maxLength = 255)
private String imap;
@javax.persistence.Column(name = "imap_port")
@SqlField(value = "imap_port", maxLength = 255)
private String imapPort;

View File

@@ -5,9 +5,11 @@ import java.util.Objects;
public class DtbOrdtKey {
private final String gestione;
private final Date dataOrd;
private final Integer numOrd;
private String gestione;
private Date dataOrd;
private Integer numOrd;
public DtbOrdtKey() {}
public DtbOrdtKey(String gestione, Date dataOrd, Integer numOrd) {
this.gestione = gestione;

View File

@@ -123,6 +123,7 @@ when
then
CommonRules.setIdArtEqui(conn, $mtbAart);
CommonRules.updateDescrDistintaBase(conn, $mtbAart);
CommonRules.updArtEqui(conn, $mtbAart);
end
rule "completeIdRigaCtbScad"

View File

@@ -687,6 +687,7 @@ public class ActivityService {
utenti.add("F0003");
utenti.add("F0237");
utenti.add("F0060");
utenti.add("L0019");
} else
utenti.add(user.getUsername());
@@ -1377,6 +1378,7 @@ public class ActivityService {
utenti.add("F0003");
utenti.add("F0237");
utenti.add("F0060");
utenti.add("L0019");
} else if (!activity.getEsito().equalsIgnoreCase(EmsRestConstants.NULL)) {
sql = Query.format(
"SELECT CAST(IIF(flag_invio_notifica = 'N', 0, 1) AS BIT)\n" +

View File

@@ -469,7 +469,7 @@ public class AutofatturaService {
mailService.sendSystemErrorLog("[" + model.getProfileName() + " - " + azienda.getNomeDitta() + "][" + UtilityServer.getHostName() + "] Verifica autofatture ",
"Verifica autofatture",
"Sull'azienda " + azienda.getNomeDitta() + " non è presente nessuna email con flag default contabilità, non sarà possibile inviare la mail di verifica.",
(String) null, new Date());
(Exception) null, new Date());
} else {
String elencoMovimenti = String.join(CommonConstants.A_CAPO, listMov);
String elencoEmail = String.join(",", email);

View File

@@ -3,6 +3,7 @@ package it.integry.ems.contabil.service;
import it.integry.common.var.CommonConstants;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.service.MailService;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.UtilityDebug;
import it.integry.ems.utility.UtilityEntity;
@@ -18,9 +19,6 @@ import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import java.sql.SQLException;
import java.time.LocalDate;
import java.time.ZoneId;
@@ -279,7 +277,7 @@ public class PassaggioAnno {
private void sendMail(String message, List<String> email) throws Exception {
if (email == null || email.isEmpty()) {
mailService.sendSystemErrorLog("ATTENZIONE", "ATTENZIONE", message, (String) null, new Date());
mailService.sendSystemErrorLog("ATTENZIONE", "ATTENZIONE", message, (Exception) null, new Date());
} else {
String elencoEmail = String.join(",", email);
mailService.sendMail(elencoEmail, null, "ATTENZIONE", message);

View File

@@ -46,7 +46,7 @@ public class ScadenzeService {
mailService.sendSystemErrorLog("[" + multiDBTransactionManager.getPrimaryConnection().getProfileName() + "][" + UtilityServer.getHostName() + "] Verifica scadenze ",
"Verifica scadenze",
"Sull'azienda " + multiDBTransactionManager.getPrimaryConnection().getProfileName() + " ci sono scadenze con data documenti disallineata: " + CommonConstants.A_CAPO + elencoScadenze,
(String) null, new Date());
(Exception) null, new Date());
}
}

View File

@@ -74,6 +74,16 @@ public class DocumentiDirettiService {
throw new Exception("Tipo documento obbligatorio");
}
if ( dtbDoct.getDtbDocCarat() != null && !dtbDoct.getDtbDocCarat().isEmpty() ) {
dtbDoct.getDtbDocCarat().stream()
.filter(dc -> dc.getOperation().equals(OperationType.UPDATE))
.forEach(dc -> {
if ( UtilityString.isNullOrEmpty( dc.getValoreCarat() ) ) {
dc.setOperation( OperationType.DELETE );
}
} );
}
if ( dtbDoct.getMtbColt() != null ) {
dtbDoct.getMtbColt().stream().forEach(ul -> {
ul.getMtbColr().stream()

View File

@@ -148,7 +148,7 @@ public class ContrattiDiAcquistoHandlerService {
.setAtbOffr(value));
});
List<EntityBase> ret = entityProcessor.processEntityList(atbOfftsToSave, mdb, false, RequestDataDTO.systemMockupData());
List<EntityBase> ret = entityProcessor.processEntityList(atbOfftsToSave, mdb, false, RequestDataDTO.systemMockupData(mdb.getPrimaryConnection().getProfileName()));
UtilityEntity.throwEntitiesException(ret);
return ret;

View File

@@ -167,7 +167,10 @@ public class ContrattiDiVenditaHandlerService {
.setVtbOffr(value));
});
List<EntityBase> ret = entityProcessor.processEntityList(vtbOfftsToSave, multiDBTransactionManager, false, RequestDataDTO.systemMockupData());
List<EntityBase> ret = entityProcessor.processEntityList(vtbOfftsToSave,
multiDBTransactionManager,
false,
RequestDataDTO.systemMockupData(multiDBTransactionManager.getPrimaryConnection().getProfileName()));
UtilityEntity.throwEntitiesException(ret);
return ret;

View File

@@ -39,7 +39,6 @@ import org.springframework.context.annotation.Scope;
import org.springframework.web.bind.annotation.RestController;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.*;
import java.util.stream.Collectors;
@@ -214,7 +213,7 @@ public class ListiniVenditaServices {
"Allineamento prezzi articoli equivalenti ",
"Sull'azienda " + multiDBTransactionManager.getPrimaryConnection().getDbName() +
" errore nella procedura di allineamento prezzi articoli equivalenti " + vtbListData.getCodVlis(),
vtbListData.getException().getMessage(), new Date());
vtbListData.getException(), new Date());
}
}
}
@@ -443,7 +442,7 @@ public class ListiniVenditaServices {
mailService.sendSystemErrorLog("Consolida listini di vendita ",
"Consolida listini di vendita ",
"Sull'azienda " + multiDBTransactionManager.getPrimaryConnection().getDbName() + " errore nella procedura di cosolidamento listini sul listino " + vtbListData.getCodVlis(),
vtbListData.getException().getMessage(), new Date());
vtbListData.getException(), new Date());
}
}

View File

@@ -235,7 +235,7 @@ public class ImportRapportiniCronotime {
anomalie.add(AnomalieDTO.warning("Dispositivo : " + disp + " non codificato"));
}
for (String badge : badgeSet) {
anomalie.add(AnomalieDTO.warning("Badge num: " + badge + " non codificato"));
anomalie.add(AnomalieDTO.error("Badge num: " + badge + " non codificato"));
}
List<EntityBase> entities = entityProcessor.processEntityList(rapportini, true);

View File

@@ -0,0 +1,34 @@
package it.integry.ems.retail.pvmRetail.controller;
import it.integry.ems.javabeans.RequestDataDTO;
import it.integry.ems.response.ServiceRestResponse;
import it.integry.ems.retail.pvmRetail.service.OrdiniAService;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems_model.entity.key.DtbOrdtKey;
import org.springframework.context.annotation.Scope;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@Scope("request")
@RequestMapping("pvm/ordini_a")
public class OrdiniAController {
private final RequestDataDTO requestDataDTO;
private final MultiDBTransactionManager multiDBTransactionManager;
private final OrdiniAService ordiniAService;
public OrdiniAController(RequestDataDTO requestDataDTO, MultiDBTransactionManager multiDBTransactionManager, OrdiniAService ordiniAService) {
this.requestDataDTO = requestDataDTO;
this.multiDBTransactionManager = multiDBTransactionManager;
this.ordiniAService = ordiniAService;
}
@PostMapping("/checkOrder")
public ServiceRestResponse checkOrder(@RequestBody DtbOrdtKey orderKey) throws Exception{
return ServiceRestResponse.createPositiveResponse(ordiniAService.checkOrder(multiDBTransactionManager.getPrimaryConnection(),orderKey));
}
}

View File

@@ -0,0 +1,110 @@
package it.integry.ems.retail.pvmRetail.dto;
import it.integry.ems_model.annotation.SqlField;
import it.integry.ems_model.entity.DtbOrdr;
import it.integry.ems_model.entity.key.DtbOrdtKey;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class CheckOrderResponseDTO {
@SqlField("gestione")
private String gestione;
@SqlField("data_ord")
private Date dataOrd;
@SqlField("num_ord")
private Integer numOrd;
@SqlField("tot_merce")
private BigDecimal totMerce;
@SqlField("valore_min_ord")
private BigDecimal valoreMinOrd;
@SqlField("valore_minimo_superato")
private boolean valoreMinimoSuperato = true;
private Integer articoliInPromo = 0;
private List<DtbOrdr> articoliFuoriGriglia = new ArrayList<>();
private List<DtbOrdr> articoliQtaInvalida = new ArrayList<>();
public BigDecimal getTotMerce() {
return totMerce;
}
public CheckOrderResponseDTO setTotMerce(BigDecimal totMerce) {
this.totMerce = totMerce;
return this;
}
public BigDecimal getValoreMinOrd() {
return valoreMinOrd;
}
public CheckOrderResponseDTO setValoreMinOrd(BigDecimal valoreMinOrd) {
this.valoreMinOrd = valoreMinOrd;
return this;
}
public boolean isValoreMinimoSuperato() {
return valoreMinimoSuperato;
}
public CheckOrderResponseDTO setValoreMinimoSuperato(boolean valoreMinimoSuperato) {
this.valoreMinimoSuperato = valoreMinimoSuperato;
return this;
}
public Integer getArticoliInPromo() {
return articoliInPromo;
}
public CheckOrderResponseDTO setArticoliInPromo(Integer articoliInPromo) {
this.articoliInPromo = articoliInPromo;
return this;
}
public List<DtbOrdr> getArticoliFuoriGriglia() {
return articoliFuoriGriglia;
}
public CheckOrderResponseDTO setArticoliFuoriGriglia(List<DtbOrdr> articoliFuoriGriglia) {
this.articoliFuoriGriglia = articoliFuoriGriglia;
return this;
}
public List<DtbOrdr> getArticoliQtaInvalida() {
return articoliQtaInvalida;
}
public CheckOrderResponseDTO setArticoliQtaInvalida(List<DtbOrdr> articoliQtaInvalida) {
this.articoliQtaInvalida = articoliQtaInvalida;
return this;
}
public String getGestione() {
return gestione;
}
public CheckOrderResponseDTO setGestione(String gestione) {
this.gestione = gestione;
return this;
}
public Date getDataOrd() {
return dataOrd;
}
public CheckOrderResponseDTO setDataOrd(Date dataOrd) {
this.dataOrd = dataOrd;
return this;
}
public Integer getNumOrd() {
return numOrd;
}
public CheckOrderResponseDTO setNumOrd(Integer numOrd) {
this.numOrd = numOrd;
return this;
}
}

View File

@@ -0,0 +1,99 @@
package it.integry.ems.retail.pvmRetail.service;
import it.integry.ems.retail.pvmRetail.dto.CheckOrderResponseDTO;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems_model.entity.DtbOrdr;
import it.integry.ems_model.entity.key.DtbOrdtKey;
import it.integry.ems_model.utility.Query;
import it.integry.ems_model.utility.UtilityDB;
import it.integry.ems_model.utility.UtilityList;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class OrdiniAService {
public CheckOrderResponseDTO checkOrder(Connection connection, DtbOrdtKey orderKey) throws Exception {
CheckOrderResponseDTO response = UtilityDB.executeSimpleQueryOnlyFirstRowDTO(connection, Query.format(
"select gestione,\n" +
"data_ord,\n" +
"num_ord,\n" +
"tot_merce,\n" +
" valore_min_ord,\n" +
" cast(case\n" +
" when valore_min_ord is not null then\n" +
" case when tot_merce > valore_min_ord then 1 else 0 end\n" +
" else 1 end as bit) as valore_minimo_superato\n" +
"from dtb_ordt\n" +
" inner join atb_list al on al.cod_alis = dtb_ordt.listino\n" +
"where dtb_ordt.gestione = {}\n" +
" and dtb_ordt.data_ord = {}\n" +
" and dtb_ordt.num_ord = {}"
, orderKey.getGestione(), orderKey.getDataOrd(), orderKey.getNumOrd()), CheckOrderResponseDTO.class);
Integer articoliInPromo = UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(connection,
Query.format("select count(*)\n" +
"from dtb_ordt\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\n" +
" inner join mtb_depo on dtb_ordt.cod_mdep = mtb_depo.cod_mdep\n" +
"where dtb_ordt.gestione = {}\n" +
" AND dtb_ordt.data_ord = {}\n" +
" AND dtb_ordt.num_ord = {}\n" +
" and dtb_ordr.cod_mart in (\n" +
" select distinct griglia.cod_mart\n" +
" from dbo.getGrigliaAcquisto({}, dtb_ordt.listino, mtb_depo.cod_mdep, null, null) griglia\n" +
" inner join\n" +
" dbo.getPromozioneVendita({}, {}, mtb_depo.cod_vlis, null, null) promo_vend\n" +
" on griglia.cod_mart = promo_vend.cod_mart\n" +
")\n", orderKey.getGestione(), orderKey.getDataOrd(), orderKey.getNumOrd(), orderKey.getDataOrd(), orderKey.getDataOrd(), orderKey.getDataOrd())
);
response.setArticoliInPromo(articoliInPromo);
List<DtbOrdr> righeFuoriGriglia = UtilityDB.executeSimpleQueryDTO(connection, Query.format(
"SELECT dtb_ordr.cod_mart, dtb_ordr.descrizione, dtb_ordr.qta_ord, dtb_ordr.unt_ord\n" +
"FROM dtb_ordt\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\n" +
"\n" +
"WHERE dtb_ordt.gestione = {}\n" +
" AND dtb_ordt.data_ord = {}\n" +
" AND dtb_ordt.num_ord = {}\n" +
" AND NOT EXISTS (SELECT *\n" +
" FROM dbo.getgrigliaacquisto({}, NULL, NULL, NULL, NULL) griglia\n" +
" WHERE tipo_variazione <> 'D'\n" +
" AND dtb_ordt.listino = griglia.cod_alis\n" +
" AND dtb_ordt.cod_mdep = griglia.cod_mdep\n" +
" AND dtb_ordr.cod_mart = griglia.cod_mart\n" +
" AND (dtb_ordr.cod_art_for IS NULL OR dtb_ordr.cod_art_for = griglia.cod_art_for))\n",
orderKey.getGestione(), orderKey.getDataOrd(), orderKey.getNumOrd(), orderKey.getDataOrd()
), DtbOrdr.class);
if (!UtilityList.isNullOrEmpty(righeFuoriGriglia)) {
response.setArticoliFuoriGriglia(righeFuoriGriglia);
}
List<DtbOrdr> articoliQtaOrdInvalida = UtilityDB.executeSimpleQueryDTO(connection, Query.format(
"select gestione,data_ord,num_ord, riga_ord, cod_mart, descrizione, unt_ord , qta_ord, qta_cnf\n" +
"from dtb_ordr\n" +
"where gestione = {}\n" +
" and data_ord = {}\n" +
" and num_ord = {}\n" +
" and unt_ord = 'pz'\n" +
"and not qta_ord %% qta_cnf = 0",
orderKey.getGestione(), orderKey.getDataOrd(), orderKey.getNumOrd()
), DtbOrdr.class);
if (!UtilityList.isNullOrEmpty(articoliQtaOrdInvalida)) {
response.setArticoliQtaInvalida(articoliQtaOrdInvalida);
}
return response;
}
}

View File

@@ -1,20 +1,16 @@
package it.integry.ems.retail.service;
import com.annimon.stream.Stream;
import com.fasterxml.jackson.databind.ObjectMapper;
import it.integry.ems.exception.PrimaryDatabaseNotPresentException;
import it.integry.ems.expansion.RunnableThrowable;
import it.integry.ems.javabeans.RequestDataDTO;
import it.integry.ems.json.ResponseJSONObjectMapper;
import it.integry.ems.retail.dto.GiacenzaDTO;
import it.integry.ems.retail.pvmRetail.service.PvmService;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.service.MailService;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.UtilityDebug;
import it.integry.ems.utility.UtilityDirs;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems.utility.UtilityFile;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.db.ResultSetMapper;
import it.integry.ems_model.entity.CarelliGiacenzaProg;
@@ -31,12 +27,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;
import java.io.File;
import java.io.IOException;
import java.io.StringWriter;
import java.math.BigDecimal;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;
@@ -209,7 +202,7 @@ public class GiacenzaService {
List<CarelliGiacenzaProg> carelliGiacenzaProgs = new ResultSetMapper().mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), sql, CarelliGiacenzaProg.class, OperationType.INSERT);
List<EntityBase> entityRet = entityProcessor.processEntityList(carelliGiacenzaProgs, null, false, true, false, multiDBTransactionManager, false, false,
RequestDataDTO.systemMockupData());
RequestDataDTO.systemMockupData(multiDBTransactionManager.getPrimaryConnection().getProfileName()));
UtilityEntity.throwEntitiesException(entityRet);
}
@@ -224,7 +217,7 @@ public class GiacenzaService {
List<CarelliGiacenzaProg> carelliGiacenzaProgs = new ResultSetMapper().mapQuerySetToList(multiDBTransactionManager.getPrimaryConnection(), sql, CarelliGiacenzaProg.class, OperationType.DELETE);
List<EntityBase> entityRet = entityProcessor.processEntityList(carelliGiacenzaProgs, null, false, true, false, multiDBTransactionManager, false, false,
RequestDataDTO.systemMockupData());
RequestDataDTO.systemMockupData(multiDBTransactionManager.getPrimaryConnection().getProfileName()));
UtilityEntity.throwEntitiesException(entityRet);
}
@@ -489,7 +482,9 @@ public class GiacenzaService {
.setDataDoc(UtilityLocalDate.localDateToDate(collo.getDataCollo()))
.setDataDistribuzione(new Date());
collo.setOperation(OperationType.UPDATE);
entityProcessor.processEntity(collo, false, false, "", multiDBTransactionManager, RequestDataDTO.systemMockupData(), false, false);
entityProcessor.processEntity(collo, false, false, "",
multiDBTransactionManager,
RequestDataDTO.systemMockupData(multiDBTransactionManager.getPrimaryConnection().getProfileName()), false, false);
UtilityEntity.throwEntityException(collo);
}
}
@@ -510,7 +505,8 @@ public class GiacenzaService {
calls.add(() -> {
try {
for (EntityBase entityBase : entityList) {
entityProcessor.processEntity(entityBase, false, true, "", multiDBTransactionManager, RequestDataDTO.systemMockupData(), false, false);
entityProcessor.processEntity(entityBase, false, true, "", multiDBTransactionManager,
RequestDataDTO.systemMockupData(multiDBTransactionManager.getPrimaryConnection().getProfileName()), false, false);
}
} catch (Exception ex) {
@@ -522,7 +518,8 @@ public class GiacenzaService {
UtilityThread.executeParallel(calls);
} else {
for (EntityBase entityBase : entityBases) {
entityProcessor.processEntity(entityBase, false, true, "", multiDBTransactionManager, RequestDataDTO.systemMockupData(), false, false);
entityProcessor.processEntity(entityBase, false, true, "", multiDBTransactionManager,
RequestDataDTO.systemMockupData(multiDBTransactionManager.getPrimaryConnection().getProfileName()), false, false);
}
}
multiDBTransactionManager.commitAll();

View File

@@ -3144,7 +3144,7 @@ public class WMSGenericService {
oldUdc.setMtbColr(WMSUtility.convertMvwItemsToMtbColrs(giacenzaItems));
WMSUtility.spostaArtsTraUL(multiDBTransactionManager.getPrimaryConnection(),
oldUdc, newUdc, false, entityProcessor, RequestDataDTO.systemMockupData());
oldUdc, newUdc, false, entityProcessor, RequestDataDTO.systemMockupData(multiDBTransactionManager.getPrimaryConnection().getProfileName()));
}

View File

@@ -12,6 +12,7 @@ import it.integry.ems.dto.ExtendedStbActivity;
import it.integry.ems.file_sharer.IFileSharerAttachment;
import it.integry.ems.file_sharer.sharers.email.EmailFileAttachment;
import it.integry.ems.javabeans.RequestDataDTO;
import it.integry.ems.jpa.repository.MtbAartRepository;
import it.integry.ems.json.ResponseJSONObjectMapper;
import it.integry.ems.license.LicenseStatusDTO;
import it.integry.ems.report.dto.JasperDTO;
@@ -25,7 +26,6 @@ import it.integry.ems.service.exception.EmptyReportException;
import it.integry.ems.settings.Model.AvailableConnectionModel;
import it.integry.ems.settings.Model.SettingsModel;
import it.integry.ems.status.ServiceChecker;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.system.dto.ChangeLogDTO;
import it.integry.ems.system.dto.GestNameDTO;
@@ -70,8 +70,6 @@ import java.lang.reflect.Method;
import java.math.BigDecimal;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
@@ -114,6 +112,8 @@ public class SystemController {
private NotificationService notificationService;
@Autowired
private CleanDirectoryComponent cleanDirectoryComponent;
@Autowired
private MtbAartRepository mtbAartRepository;
@GetMapping(value = "/system/ok")
@@ -834,6 +834,7 @@ public class SystemController {
utenti.add("F0003");
utenti.add("F0237");
utenti.add("F0060");
utenti.add("L0019");
} else {
utenti.add(stbActivity.getUserName());
}
@@ -1471,8 +1472,11 @@ public class SystemController {
public ServiceRestResponse test(HttpServletRequest request,
@RequestParam(CommonConstants.PROFILE_DB) String configuration) throws Exception {
final MtbAart byCodMart = mtbAartRepository.findWithBarcodeWithUntMisByCodMartIn(Collections.singletonList("000018"))
.stream().findFirst()
.orElse(null);
return ServiceRestResponse.createNegativeResponse("Errore super graveeeee");
return ServiceRestResponse.createPositiveResponse(byCodMart);
}
@RequestMapping(value = EmsRestConstants.PATH_STB_EMAIL_CONTENT_FATTURE_PASSIVE_DELETER, method = RequestMethod.POST)

View File

@@ -351,7 +351,7 @@ public class ExchangeOrdiniImportService {
.setDataInizProd(field.getDataInizProd())
.setCodVzon(field.getCodVzon())
.setDataOrd(field.getDataInizProd());
agribookFieldService.createField(multiDb, dto, EXCHANGE_USER, RequestDataDTO.systemMockupData());
agribookFieldService.createField(multiDb, dto, EXCHANGE_USER, RequestDataDTO.systemMockupData(multiDb.getPrimaryConnection().getProfileName()));
break;
case UPDATE: