Compare commits

...

2 Commits

Author SHA1 Message Date
8df579448c Merge remote-tracking branch 'origin/feature/RefactoringGestioneColli' into feature/RefactoringGestioneColli
All checks were successful
IntegryManagementSystem_Multi/pipeline/head This commit looks good
2025-12-11 17:10:04 +01:00
0b502f86cf Create nuove utilities 2025-12-11 17:09:53 +01:00
15 changed files with 197 additions and 116 deletions

View File

@ -0,0 +1,30 @@
package it.integry.ems.utility.entity;
import it.integry.ems._context.ApplicationContextProvider;
import it.integry.ems.dynamic_cache.EntityCacheComponent;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems_model.entity.MtbAartBarCode;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class MtbAartBarcodeUtils {
public static final List<MtbAartBarCode> getAlternativeMtbAartBarCodes(List<String> codMarts, Connection conn) {
codMarts = codMarts.stream()
.distinct().collect(Collectors.toList());
final EntityCacheComponent entityCacheComponent = ApplicationContextProvider.getApplicationContext().getBean(EntityCacheComponent.class);
List<String> finalCodMarts = codMarts;
List<MtbAartBarCode> barCodeList = entityCacheComponent.getCachedEntitiesList(
conn.getIntegryCustomerDB(),
MtbAartBarCode.ENTITY,
x -> finalCodMarts.stream().anyMatch(y -> y.equalsIgnoreCase(x.getCodMart())));
return barCodeList != null ? barCodeList : new ArrayList<>();
}
}

View File

@ -0,0 +1,82 @@
package it.integry.ems.utility.entity;
import com.annimon.stream.Optional;
import com.annimon.stream.Stream;
import it.integry.ems._context.ApplicationContextProvider;
import it.integry.ems.dynamic_cache.EntityCacheComponent;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems_model.entity.MtbAart;
import it.integry.ems_model.entity.MtbAartBarCode;
import it.integry.ems_model.entity.MtbUntMis;
import it.integry.ems_model.utility.UtilityString;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
public class MtbAartUtils {
public static MtbAart getArticoloByCodMart(String codMart, Connection connection) throws Exception {
if (UtilityString.isNullOrEmpty(codMart))
return null;
List<MtbAart> mtbAarts = getArticoliByCodMarts(new ArrayList<>(Collections.singleton(codMart)), connection);
if (mtbAarts == null || mtbAarts.isEmpty())
return null;
return mtbAarts.get(0);
}
public static List<MtbAart> getArticoliByCodMarts(List<String> codMarts, Connection connection) throws Exception {
if (codMarts == null || codMarts.isEmpty()) return null;
codMarts.replaceAll(String::toUpperCase);
final EntityCacheComponent entityCacheComponent = ApplicationContextProvider.getApplicationContext().getBean(EntityCacheComponent.class);
List<MtbAart> listMtbAart = entityCacheComponent.getCachedEntitiesList(
connection.getIntegryCustomerDB(), MtbAart.ENTITY, x -> codMarts.contains(x.getCodMart().toUpperCase()));
List<MtbAartBarCode> barCodeFromCod = MtbAartBarcodeUtils.getAlternativeMtbAartBarCodes(codMarts, connection);
if (listMtbAart != null && !listMtbAart.isEmpty()) {
List<String> untMisStrings = listMtbAart.stream()
.map(MtbAart::getUntMis)
.collect(Collectors.toList());
List<MtbUntMis> listUntMis = MtbUntMisUtils.getFromCods(untMisStrings, connection);
for (final MtbAart mtbAart : listMtbAart) {
Optional<MtbUntMis> mtbUntMis = Stream.of(listUntMis)
.filter(mtbUntMis1 -> mtbUntMis1.getUntMis().equalsIgnoreCase(mtbAart.getUntMis()))
.findFirst();
List<MtbAartBarCode> barcodeList = Stream.of(barCodeFromCod)
.filter(x -> x.getCodMart().equalsIgnoreCase(mtbAart.getCodMart()))
.toList();
if (!barcodeList.isEmpty()) {
mtbAart.getMtbAartBarCode().addAll(barcodeList);
}
if (mtbUntMis.isPresent()) {
mtbAart.setMtbUntMis(new ArrayList<>());
mtbAart.getMtbUntMis().add(mtbUntMis.get());
}
}
}
return listMtbAart;
}
public static final HashMap<String, MtbAart> getArticoliByCodMartsAsMap(List<String> codMarts, Connection connection) throws Exception {
List<MtbAart> mtbAarts = getArticoliByCodMarts(codMarts, connection);
if (mtbAarts == null || mtbAarts.isEmpty()) return new HashMap<>();
return mtbAarts.stream()
.collect(Collectors.toMap(MtbAart::getCodMart, a -> a, (a, b) -> a, HashMap::new));
}
}

View File

@ -0,0 +1,56 @@
package it.integry.ems.utility.entity;
import it.integry.ems._context.ApplicationContextProvider;
import it.integry.ems.dynamic_cache.EntityCacheComponent;
import it.integry.ems.migration._base.IntegryCustomerDB;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems_model.entity.MtbAart;
import it.integry.ems_model.entity.MtbUntMis;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
public class MtbUntMisUtils {
public static final MtbUntMis getMtbUntMisFromCodMart(IntegryCustomerDB customerDB, String codMart) throws SQLException {
final EntityCacheComponent entityCacheComponent = ApplicationContextProvider.getApplicationContext().getBean(EntityCacheComponent.class);
MtbAart mtbAart = entityCacheComponent.<MtbAart>getCachedEntitiesStream(customerDB, MtbAart.ENTITY,
x -> x.getCodMart().equalsIgnoreCase(codMart))
.findFirst()
.orElse(null);
if (mtbAart != null) {
return null;
}
final MtbUntMis mtbUntMis = entityCacheComponent.<MtbUntMis>getCachedEntitiesStream(customerDB, MtbUntMis.ENTITY,
x -> x.getUntMis().equalsIgnoreCase(mtbAart.getUntMis()))
.findFirst()
.orElse(null);
return mtbUntMis;
}
public static List<MtbUntMis> getFromCods(List<String> untMisCods, Connection connection) {
List<String> untMisStrings = untMisCods.stream()
.filter(Objects::nonNull)
.distinct()
.collect(Collectors.toList());
final EntityCacheComponent entityCacheComponent = ApplicationContextProvider.getApplicationContext().getBean(EntityCacheComponent.class);
List<MtbUntMis> mtbUntMis = entityCacheComponent.getCachedEntitiesList(
connection.getIntegryCustomerDB(),
MtbUntMis.ENTITY,
x -> untMisCods.contains(x.getUntMis()));
return mtbUntMis != null ? mtbUntMis : new ArrayList<>();
}
}

View File

@ -7,9 +7,9 @@ import it.integry.common.var.CommonConstants;
import it.integry.ems._context.ApplicationContextProvider;
import it.integry.ems.logistic.dto.sm2.FiltroDistribuzioneColloDTO;
import it.integry.ems.product.importaz.service.ProductServices;
import it.integry.ems.retail.wms.Utility.WMSUtility;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.base.EntityNotFound;
import it.integry.ems_model.entity.*;
@ -117,7 +117,7 @@ public class DistribuzioneColliService {
.distinct()
.collect(Collectors.toList());
List<MtbAart> mtbAarts = WMSUtility.getArticoliByCodMarts(codMarts, multiDBTransactionManager.getPrimaryConnection());
List<MtbAart> mtbAarts = MtbAartUtils.getArticoliByCodMarts(codMarts, multiDBTransactionManager.getPrimaryConnection());
//Lettura del filtro ordini

View File

@ -3,11 +3,11 @@ package it.integry.ems.order.Import.service;
import it.integry.common.var.CommonConstants;
import it.integry.ems._context.ApplicationContextProvider;
import it.integry.ems.exception.PrimaryDatabaseNotPresentException;
import it.integry.ems.retail.wms.Utility.WMSUtility;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.config.EmsRestConstants;
import it.integry.ems_model.entity.*;
@ -131,7 +131,7 @@ public class OrdiniMaxiDataImportService {
if (schedeProduzione == null || schedeProduzione.isEmpty())
return new ArrayList<>();
List<MtbAart> anafraficheArticoli = WMSUtility.getArticoliByCodMarts(
List<MtbAart> anafraficheArticoli = MtbAartUtils.getArticoliByCodMarts(
schedeProduzione.stream()
.map(MaxidataUveBII40V2BLLUVE2kSchedeProd::getIdProdotto)
.distinct()

View File

@ -11,12 +11,12 @@ import it.integry.ems.product.importaz.dto.ArticoliMorganteDTO;
import it.integry.ems.product.importaz.dto.ContrattiVenditaDTO;
import it.integry.ems.product.importaz.dto.StatoArticoloDTO;
import it.integry.ems.properties.EmsProperties;
import it.integry.ems.retail.wms.Utility.WMSUtility;
import it.integry.ems.rules.completing.QueryRules;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.db.ResultSetMapper;
import it.integry.ems_model.entity.*;
@ -235,7 +235,7 @@ public class ProductServices {
}
public List<MtbAart> getArticoliByCodMarts(List<String> codMarts) throws Exception {
return WMSUtility.getArticoliByCodMarts(codMarts, multiDBTransactionManager.getPrimaryConnection());
return MtbAartUtils.getArticoliByCodMarts(codMarts, multiDBTransactionManager.getPrimaryConnection());
}
public List<EntityBase> importArticoliBiolevante() throws Exception {

View File

@ -24,7 +24,6 @@ import it.integry.ems.production.utility.ProductionContabilityUtility;
import it.integry.ems.report.dto.JasperDTO;
import it.integry.ems.report.dto.PairsDTO;
import it.integry.ems.retail.pvmRetail.service.PvmService;
import it.integry.ems.retail.wms.Utility.WMSUtility;
import it.integry.ems.retail.wms.accettazione.dto.GetColloInGiacResponseDTO;
import it.integry.ems.retail.wms.accettazione.service.WMSAccettazioneService;
import it.integry.ems.retail.wms.dto.*;
@ -47,6 +46,7 @@ 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;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.business_logic.dto.DatiMaterialiDTO;
import it.integry.ems_model.config.EmsRestConstants;
@ -1041,7 +1041,7 @@ public class MesProductionServiceV2 {
entityProcessor.processEntity(ordineLav, true, multiDBTransactionManager);
MtbAart mtbAart =
WMSUtility.getArticoloByCodMart(ordineLav.getCodProd(), multiDBTransactionManager.getPrimaryConnection());
MtbAartUtils.getArticoloByCodMart(ordineLav.getCodProd(), multiDBTransactionManager.getPrimaryConnection());
if (UtilityBigDecimal.isNullOrZero(dto.getQtaCollo())) {
if (UtilityBigDecimal.isNullOrZero(dto.getColliPedana())) {
@ -1485,7 +1485,7 @@ public class MesProductionServiceV2 {
if (codMarts.size() > 1)
throw new Exception("Impossibile versare a produzione una pedana mista!");
MtbAart rowArt = WMSUtility.getArticoloByCodMart(codMarts.get(0), multiDBTransactionManager.getPrimaryConnection());
MtbAart rowArt = MtbAartUtils.getArticoloByCodMart(codMarts.get(0), multiDBTransactionManager.getPrimaryConnection());
GiacenzaArtInBarcodeDTO invDto = new GiacenzaArtInBarcodeDTO();
MtbGrup mtbGrup = new MtbGrup();

View File

@ -1,10 +1,8 @@
package it.integry.ems.retail.wms.Utility;
import com.annimon.stream.Optional;
import com.annimon.stream.Stream;
import groovy.lang.Tuple2;
import it.integry.ems._context.ApplicationContextProvider;
import it.integry.ems.dynamic_cache.EntityCacheComponent;
import it.integry.ems.exception.MissingDataException;
import it.integry.ems.javabeans.RequestDataDTO;
import it.integry.ems.retail.wms.accettazione.dto.AnomaliaUlDTO;
@ -24,6 +22,7 @@ import it.integry.ems.service.production.ProductionOrderDataHandlerService;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.entity.*;
import it.integry.ems_model.entity._enum.GestioneEnum;
import it.integry.ems_model.exception.ConverterNotConfiguredException;
@ -289,7 +288,7 @@ public class WMSUtility {
if (targetMtbColt == null)
throw new Exception("Nessun collo di destinazione specificato durante l'inserimento di una riga in una UDS (targetMtbColt null)");
MtbAart mtbAart = WMSUtility.getArticoloByCodMart(insertUDSRowRequestDTO.getCodMart(), connection);
MtbAart mtbAart = MtbAartUtils.getArticoloByCodMart(insertUDSRowRequestDTO.getCodMart(), connection);
if (mtbAart == null)
throw new InvalidArticoloException(insertUDSRowRequestDTO.getCodMart());
@ -688,7 +687,7 @@ public class WMSUtility {
if (insertUDCRowRequestDTO.getCodMart() != null) {
MtbAart mtbAart = getArticoloByCodMart(insertUDCRowRequestDTO.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
MtbAart mtbAart = MtbAartUtils.getArticoloByCodMart(insertUDCRowRequestDTO.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
if (mtbAart == null)
throw new InvalidArticoloException(insertUDCRowRequestDTO.getCodMart());
@ -726,82 +725,7 @@ public class WMSUtility {
.setSavedMtbColr(targetMtbColr);
}
public static MtbAart getArticoloByCodMart(String codMart, Connection connection) throws Exception {
if (UtilityString.isNullOrEmpty(codMart))
return null;
List<MtbAart> mtbAarts = getArticoliByCodMarts(new ArrayList<>(Collections.singleton(codMart)), connection);
if (mtbAarts == null || mtbAarts.isEmpty())
return null;
return mtbAarts.get(0);
}
public static List<MtbAart> getArticoliByCodMarts(List<String> codMarts, Connection connection) throws Exception {
if (codMarts == null || codMarts.isEmpty()) return null;
codMarts.replaceAll(String::toUpperCase);
final EntityCacheComponent entityCacheComponent = ApplicationContextProvider.getApplicationContext().getBean(EntityCacheComponent.class);
List<MtbAart> listMtbAart = entityCacheComponent.getCachedEntitiesList(
connection.getIntegryCustomerDB(), MtbAart.ENTITY, x -> codMarts.contains(x.getCodMart().toUpperCase()));
List<MtbAartBarCode> barCodeFromCod = getAlternativeMtbAartBarCodes(codMarts, connection);
if (listMtbAart != null && !listMtbAart.isEmpty()) {
List<String> untMisStrings = listMtbAart.stream()
.map(MtbAart::getUntMis)
.collect(Collectors.toList());
List<MtbUntMis> listUntMis = getUntMisFromCod(untMisStrings, connection);
for (final MtbAart mtbAart : listMtbAart) {
Optional<MtbUntMis> mtbUntMis = Stream.of(listUntMis)
.filter(mtbUntMis1 -> mtbUntMis1.getUntMis().equalsIgnoreCase(mtbAart.getUntMis()))
.findFirst();
List<MtbAartBarCode> barcodeList = Stream.of(barCodeFromCod)
.filter(x -> x.getCodMart().equalsIgnoreCase(mtbAart.getCodMart()))
.toList();
if (!barcodeList.isEmpty()) {
mtbAart.getMtbAartBarCode().addAll(barcodeList);
}
if (mtbUntMis.isPresent()) {
mtbAart.setMtbUntMis(new ArrayList<>());
mtbAart.getMtbUntMis().add(mtbUntMis.get());
}
}
}
return listMtbAart;
}
public static HashMap<String, MtbAart> getArticoliByCodMartsAsMap(List<String> codMarts, Connection connection) throws Exception {
List<MtbAart> mtbAarts = getArticoliByCodMarts(codMarts, connection);
if (mtbAarts == null || mtbAarts.isEmpty()) return new HashMap<>();
return mtbAarts.stream()
.collect(Collectors.toMap(MtbAart::getCodMart, a -> a, (a, b) -> a, HashMap::new));
}
public static List<MtbUntMis> getUntMisFromCod(List<String> untMisCods, Connection connection) {
List<String> untMisStrings = untMisCods.stream()
.filter(Objects::nonNull)
.distinct()
.collect(Collectors.toList());
final EntityCacheComponent entityCacheComponent = ApplicationContextProvider.getApplicationContext().getBean(EntityCacheComponent.class);
List<MtbUntMis> mtbUntMis = entityCacheComponent.getCachedEntitiesList(
connection.getIntegryCustomerDB(),
MtbUntMis.ENTITY,
x -> untMisCods.contains(x.getUntMis()));
return mtbUntMis != null ? mtbUntMis : new ArrayList<>();
}
public static boolean checkIfBarcodeUlIsAlreadyDeclared(Connection connection, String barcodeUl) throws SQLException {
return UtilityDB.executeSimpleQueryOnlyFirstRowFirstColumn(connection,
@ -809,21 +733,6 @@ public class WMSUtility {
" FROM mtb_colt WHERE barcode_ul = " + UtilityDB.valueToString(barcodeUl));
}
public static List<MtbAartBarCode> getAlternativeMtbAartBarCodes(List<String> codMarts, Connection conn) {
codMarts = codMarts.stream()
.distinct().collect(Collectors.toList());
final EntityCacheComponent entityCacheComponent = ApplicationContextProvider.getApplicationContext().getBean(EntityCacheComponent.class);
List<String> finalCodMarts = codMarts;
List<MtbAartBarCode> barCodeList = entityCacheComponent.getCachedEntitiesList(
conn.getIntegryCustomerDB(),
MtbAartBarCode.ENTITY,
x -> finalCodMarts.stream().anyMatch(y -> y.equalsIgnoreCase(x.getCodMart())));
return barCodeList != null ? barCodeList : new ArrayList<>();
}
public static DtbDoct createTransferDocumentAndAttachToMovement(MultiDBTransactionManager multiDBTransactionManager, SetupGest setupGest, MtbColt movementToAttach,
LocalDate dataTrasf, Integer numTrasf, String codVvet, String codMdepArrivo,

View File

@ -2,13 +2,13 @@ package it.integry.ems.retail.wms.accettazione.service;
import it.integry.ems.javabeans.RequestDataDTO;
import it.integry.ems.product.importaz.service.ProductServices;
import it.integry.ems.retail.wms.Utility.WMSUtility;
import it.integry.ems.retail.wms.accettazione.dto.AlreadyRegisteredUlDTO;
import it.integry.ems.retail.wms.accettazione.dto.BollaAccettazioneDTO;
import it.integry.ems.retail.wms.accettazione.dto.SitBollaAccettazioneDTO;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.user.UserSession;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.entity.MtbAart;
import it.integry.ems_model.entity.WdtbDoct;
import it.integry.ems_model.types.OperationType;
@ -166,7 +166,7 @@ public class WMSAccettazioneBollaService {
if (sitBollaAccettazioneDTOS == null || sitBollaAccettazioneDTOS.isEmpty()) return null;
final List<MtbAart> articoliByCodMarts = WMSUtility.getArticoliByCodMarts(sitBollaAccettazioneDTOS.stream()
final List<MtbAart> articoliByCodMarts = MtbAartUtils.getArticoliByCodMarts(sitBollaAccettazioneDTOS.stream()
.map(SitBollaAccettazioneDTO::getCodMart)
.filter(Objects::nonNull)
.distinct()

View File

@ -4,11 +4,11 @@ import it.integry.ems.product.importaz.service.ProductServices;
import it.integry.ems.retail.pvmRetail.dto.PvmArticoliChildDTO;
import it.integry.ems.retail.pvmRetail.dto.PvmArticoliDTO;
import it.integry.ems.retail.pvmRetail.service.PvmService;
import it.integry.ems.retail.wms.Utility.WMSUtility;
import it.integry.ems.retail.wms.documenti.dto.DocumentArtDTO;
import it.integry.ems.retail.wms.documenti.dto.RetrieveLottiDTO;
import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.entity.MtbUntMisUtils;
import it.integry.ems_model.entity.MtbUntMis;
import it.integry.ems_model.entity._enum.GestioneEnum;
import it.integry.ems_model.service.SetupGest;
@ -114,7 +114,7 @@ public class WMSDocumentService {
.distinct()
.collect(Collectors.toList());
final List<MtbUntMis> untMisFromCod = WMSUtility.getUntMisFromCod(untMiss, multiDBTransactionManager.getPrimaryConnection());
final List<MtbUntMis> untMisFromCod = MtbUntMisUtils.getFromCods(untMiss, multiDBTransactionManager.getPrimaryConnection());
for (DocumentArtDTO art : arts) {
final MtbUntMis mtbUntMis = untMisFromCod.stream().filter(x -> x.getUntMis().equalsIgnoreCase(art.getUntMis()))

View File

@ -41,6 +41,7 @@ import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.user.UserSession;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.db.ResultSetMapper;
import it.integry.ems_model.entity.*;
@ -795,7 +796,7 @@ public class WMSGenericService {
.distinct()
.toList();
final List<MtbAart> mtbAarts = WMSUtility.getArticoliByCodMarts(codMarts, multiDBTransactionManager.getPrimaryConnection());
final List<MtbAart> mtbAarts = MtbAartUtils.getArticoliByCodMarts(codMarts, multiDBTransactionManager.getPrimaryConnection());
String sqlGiacArts = "SELECT col.qta_col,\n" +
" col.num_cnf,\n" +
@ -2527,7 +2528,7 @@ public class WMSGenericService {
.distinct()
.collect(Collectors.toList());
List<MtbAart> mtbAarts = WMSUtility.getArticoliByCodMarts(codMarts, multiDBTransactionManager.getPrimaryConnection());
List<MtbAart> mtbAarts = MtbAartUtils.getArticoliByCodMarts(codMarts, multiDBTransactionManager.getPrimaryConnection());
List<MtbColr> successMtbColr = new ArrayList<>();
List<MtbColr> failedMtbColr = new ArrayList<>();

View File

@ -6,12 +6,12 @@ import it.integry.ems.product.importaz.service.ProductServices;
import it.integry.ems.retail.pvmRetail.dto.PvmArticoliChildDTO;
import it.integry.ems.retail.pvmRetail.dto.PvmArticoliDTO;
import it.integry.ems.retail.pvmRetail.service.PvmService;
import it.integry.ems.retail.wms.Utility.WMSUtility;
import it.integry.ems.retail.wms.inventario.dto.InventarioArtDTO;
import it.integry.ems.service.EntityProcessor;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.utility.UtilityDirs;
import it.integry.ems.utility.UtilityFile;
import it.integry.ems.utility.entity.MtbUntMisUtils;
import it.integry.ems_model.entity.MtbInvenr;
import it.integry.ems_model.entity.MtbInvent;
import it.integry.ems_model.entity.MtbUntMis;
@ -136,7 +136,7 @@ public class WMSInventarioService {
.distinct()
.collect(Collectors.toList());
final List<MtbUntMis> untMisFromCod = WMSUtility.getUntMisFromCod(untMiss, multiDBTransactionManager.getPrimaryConnection());
final List<MtbUntMis> untMisFromCod = MtbUntMisUtils.getFromCods(untMiss, multiDBTransactionManager.getPrimaryConnection());
for (InventarioArtDTO art : arts) {
final MtbUntMis mtbUntMis = untMisFromCod.stream().filter(x -> x.getUntMis().equalsIgnoreCase(art.getUntMis()))

View File

@ -23,6 +23,7 @@ import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.user.UserSession;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.entity.*;
import it.integry.ems_model.entity._enum.GestioneEnum;
import it.integry.ems_model.entity.key.DtbOrdtKey;
@ -765,7 +766,7 @@ public class WMSLavorazioneService {
.map(MtbColr::getCodMart)
.distinct().collect(Collectors.toList());
final HashMap<String, MtbAart> mtbAarts = WMSUtility.getArticoliByCodMartsAsMap(codMarts, multiDBTransactionManager.getPrimaryConnection());
final HashMap<String, MtbAart> mtbAarts = MtbAartUtils.getArticoliByCodMartsAsMap(codMarts, multiDBTransactionManager.getPrimaryConnection());
UtilityTiming.intervalTiming(timingId, "Caricamento articoli");
final Map<String, BigDecimal> totalQtaScaricataByCodMart = udsMateriaPrimaRows.stream()

View File

@ -12,6 +12,7 @@ import it.integry.ems.service.EntityProcessor;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.user.UserSession;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.entity.*;
import it.integry.ems_model.service.SetupGest;
@ -97,7 +98,7 @@ public class WMSMaterialiService {
if (!versamentoDirettoEnabled) {
MvwSitArtUdcDetInventarioDTO itemDaVersare = artsInGiacenza.get(0);
MtbAart mtbAart = WMSUtility.getArticoloByCodMart(itemDaVersare.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
MtbAart mtbAart = MtbAartUtils.getArticoloByCodMart(itemDaVersare.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
if (mtbAart == null)
throw new InvalidArticoloException(request.getCodMart());
@ -138,7 +139,7 @@ public class WMSMaterialiService {
// throw new Exception("Impossibile recuperare le informazioni della posizione (" + request.getPosizioneVersamento() + ")");
//
// for(MvwSitArtUdcDetInventarioDTO artInGiacenza : artsInGiacenza) {
// final MtbAart currentArtAnag = WMSUtility.getArticoloByCodMart(artInGiacenza.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
// final MtbAart currentArtAnag = MtbAartUtils.getArticoloByCodMart(artInGiacenza.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
//
// if(currentArtAnag == null)
// continue;
@ -278,7 +279,7 @@ public class WMSMaterialiService {
final boolean versamentoDirettoEnabled = setupGest.getSetupBoolean(multiDBTransactionManager.getPrimaryConnection(), "PICKING", "PRODUZIONE", "FLAG_VERSAMENTO_DIRETTO");
final boolean forceAllToColli = setupGest.getSetupBoolean(multiDBTransactionManager.getPrimaryConnection(), "PICKING", "SETUP", "FLAG_FORCE_ALL_TO_COLLI");
MtbAart mtbAart = WMSUtility.getArticoloByCodMart(request.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
MtbAart mtbAart = MtbAartUtils.getArticoloByCodMart(request.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
if (mtbAart == null)
throw new InvalidArticoloException(request.getCodMart());

View File

@ -21,6 +21,7 @@ import it.integry.ems.sync.MultiDBTransaction.Connection;
import it.integry.ems.sync.MultiDBTransaction.MultiDBTransactionManager;
import it.integry.ems.user.UserSession;
import it.integry.ems.utility.UtilityEntity;
import it.integry.ems.utility.entity.MtbAartUtils;
import it.integry.ems_model.base.EntityBase;
import it.integry.ems_model.entity.DtbOrdt;
import it.integry.ems_model.entity.MtbAart;
@ -275,7 +276,7 @@ public class WMSSpedizioneService {
MtbColt targetMtbColt = insertUDSRowRequestDTO.getTargetMtbColt();
MtbAart mtbAart = WMSUtility.getArticoloByCodMart(insertUDSRowRequestDTO.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
MtbAart mtbAart = MtbAartUtils.getArticoloByCodMart(insertUDSRowRequestDTO.getCodMart(), multiDBTransactionManager.getPrimaryConnection());
if (mtbAart == null)
throw new InvalidArticoloException(insertUDSRowRequestDTO.getCodMart());