From e7e5cf1d971f4aba04261063174e272ed63734c9 Mon Sep 17 00:00:00 2001
From: tongzhonghao <12345678>
Date: Thu, 31 Aug 2023 17:12:12 +0800
Subject: [PATCH] fix(修复出库生成任务报警): shipmentContainerHeaderId 入参去重

---
 src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java | 2 +-
 src/main/java/com/huaheng/pc/shipment/shippingCombination/controller/ShippingCombinationController.java       | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java b/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java
index 8de70c8..218409c 100644
--- a/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java
+++ b/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java
@@ -633,7 +633,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl<ShipmentCont
 
     /* 生成任务 */
     @Override
-    @Transactional
+    @Transactional(rollbackFor = Exception.class)
     public AjaxResult createTask(List<Integer> idList) {
         ShipmentTaskCreateModel shipmentTask = new ShipmentTaskCreateModel();
         for (Integer id : idList)   {
diff --git a/src/main/java/com/huaheng/pc/shipment/shippingCombination/controller/ShippingCombinationController.java b/src/main/java/com/huaheng/pc/shipment/shippingCombination/controller/ShippingCombinationController.java
index d0a8978..717161f 100644
--- a/src/main/java/com/huaheng/pc/shipment/shippingCombination/controller/ShippingCombinationController.java
+++ b/src/main/java/com/huaheng/pc/shipment/shippingCombination/controller/ShippingCombinationController.java
@@ -293,7 +293,8 @@ public class ShippingCombinationController extends BaseController {
             return AjaxResult.error("id不能为空");
         }
         List<Integer> idList = Arrays.asList(Convert.toIntArray(ids));
-        for (Integer id : idList) {
+        List<Integer> idsList = idList.stream().distinct().collect(Collectors.toList());
+        for (Integer id : idsList) {
             //获取表头
             ShipmentContainerHeader shipmentContainerHeader = shipmentContainerHeaderService.getById(id);
             if(shipmentContainerHeader == null) {
@@ -303,7 +304,7 @@ public class ShippingCombinationController extends BaseController {
                 return AjaxResult.error("出库货箱编码(" + shipmentContainerHeader.getContainerCode() + ")已经生成任务,请不要重复生成,操作中止");
             }
         }
-        ajaxResult = shipmentContainerHeaderService.createTask(idList);
+        ajaxResult = shipmentContainerHeaderService.createTask(idsList);
         return ajaxResult;
     }
 }
--
libgit2 0.22.2