diff --git a/ems-core/src/main/java/it/integry/FoodProcess/service/FoodProcessRestService.java b/ems-core/src/main/java/it/integry/FoodProcess/service/FoodProcessRestService.java index 641171b74a..ed24622f8d 100644 --- a/ems-core/src/main/java/it/integry/FoodProcess/service/FoodProcessRestService.java +++ b/ems-core/src/main/java/it/integry/FoodProcess/service/FoodProcessRestService.java @@ -68,7 +68,7 @@ public class FoodProcessRestService { return target.proxy(FoodProcessClient.class); } - public Object importArticles(ImportArticlesRequest importArticlesRequest) throws Exception { + public ImportArticlesResponse importArticles(ImportArticlesRequest importArticlesRequest) throws Exception { if (UtilityList.isNullOrEmpty(importArticlesRequest.getArticles())) { return null; } diff --git a/ems-engine/src/main/java/it/integry/ems/production/Import/service/ProductionPlanService.java b/ems-engine/src/main/java/it/integry/ems/production/Import/service/ProductionPlanService.java index 86ec018649..805f182fd7 100644 --- a/ems-engine/src/main/java/it/integry/ems/production/Import/service/ProductionPlanService.java +++ b/ems-engine/src/main/java/it/integry/ems/production/Import/service/ProductionPlanService.java @@ -1195,7 +1195,10 @@ public class ProductionPlanService { businessPartners.forEach(businessPartner -> businessPartner.setIsCustomer(true)); ImportBusinessPartnersRequest importBusinessPartnersRequest = new ImportBusinessPartnersRequest() - .setBusinessPartners(businessPartners.stream().map(BusinessPartnerData::toBusinessPartner).collect(Collectors.toList())); + .setBusinessPartners(Stream.of(businessPartners) + .distinctBy(BusinessPartnerData::getId) + .map(BusinessPartnerData::toBusinessPartner) + .toList()); returnData.add(foodProcessClient.importBusinessPartners(importBusinessPartnersRequest)); } @@ -1256,7 +1259,10 @@ public class ProductionPlanService { if (!UtilityList.isNullOrEmpty(packagingMaterials)) { importPackagingMaterialsRequest.getPackagingMaterials() - .addAll(packagingMaterials.stream().map(PackagingMaterialData::toPackagingMaterial).collect(Collectors.toList())); + .addAll(Stream.of(packagingMaterials) + .distinctBy(PackagingMaterialData::getId) + .map(PackagingMaterialData::toPackagingMaterial) + .toList()); } // Import secondary packaging @@ -1284,7 +1290,10 @@ public class ProductionPlanService { if (!UtilityList.isNullOrEmpty(secondaryPackagingMaterials)) { importPackagingMaterialsRequest.getPackagingMaterials() - .addAll(secondaryPackagingMaterials.stream().map(PackagingMaterialData::toPackagingMaterial).collect(Collectors.toList())); + .addAll(Stream.of(secondaryPackagingMaterials) + .distinctBy(PackagingMaterialData::getId) + .map(PackagingMaterialData::toPackagingMaterial) + .toList()); } // Import tertiary packaging @@ -1308,7 +1317,10 @@ public class ProductionPlanService { if (!UtilityList.isNullOrEmpty(tertiaryPackagingMaterials)) { importPackagingMaterialsRequest.getPackagingMaterials() - .addAll(tertiaryPackagingMaterials.stream().map(PackagingMaterialData::toPackagingMaterial).collect(Collectors.toList())); + .addAll(Stream.of(tertiaryPackagingMaterials) + .distinctBy(PackagingMaterialData::getId) + .map(PackagingMaterialData::toPackagingMaterial) + .toList()); } if (!importPackagingMaterialsRequest.getPackagingMaterials().isEmpty()) {