From f21530d33ca23aeeba2ef073ac6b64422e4e26ca Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期四, 30 四月 2026 12:17:55 +0800
Subject: [PATCH] 库位编号规则和和CTU保持一致

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
index 473ba2e..8b6c53f 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -213,6 +213,7 @@
                     throw new CoolException("缁勬墭鏄庣粏淇墽琛屾暟閲忎慨鏀瑰け璐ワ紒锛�");
                 }
             });
+            syncAsnOrderItemBarcodeByPakin(waitPakinItems, pakin.getBarcode(), loginUserId);
         });
 
         if (!waitPakinService.update(new LambdaUpdateWrapper<WaitPakin>()
@@ -303,6 +304,7 @@
                     throw new CoolException("缁勬墭鏄庣粏淇墽琛屾暟閲忎慨鏀瑰け璐ワ紒锛�");
                 }
             });
+            syncAsnOrderItemBarcodeByPakin(waitPakinItems, pakin.getBarcode(), loginUserId);
         });
 
         if (!waitPakinService.update(new LambdaUpdateWrapper<WaitPakin>()
@@ -455,6 +457,7 @@
                     throw new CoolException("缁勬墭鏄庣粏淇墽琛屾暟閲忎慨鏀瑰け璐ワ紒锛�");
                 }
             });
+            syncAsnOrderItemBarcodeByPakin(waitPakinItems, pakin.getBarcode(), loginUserId);
         });
 
         if (!waitPakinService.update(new LambdaUpdateWrapper<WaitPakin>()
@@ -467,6 +470,27 @@
         return R.ok("浠诲姟鐢熸垚瀹屾瘯锛�");
     }
 
+    /** 缁勬墭鍚庡皢閫氱煡鍗曟槑缁嗘潯鐮佸洖鍐欎负鏂欑鐮� */
+    private void syncAsnOrderItemBarcodeByPakin(List<WaitPakinItem> waitPakinItems, String pakinBarcode, Long loginUserId) {
+        if (waitPakinItems == null || waitPakinItems.isEmpty() || StringUtils.isBlank(pakinBarcode)) {
+            return;
+        }
+        Set<Long> asnItemIds = waitPakinItems.stream()
+                .map(WaitPakinItem::getAsnItemId)
+                .filter(Objects::nonNull)
+                .collect(Collectors.toSet());
+        if (asnItemIds.isEmpty()) {
+            return;
+        }
+        if (!asnOrderItemService.update(new LambdaUpdateWrapper<WkOrderItem>()
+                .in(WkOrderItem::getId, asnItemIds)
+                .set(WkOrderItem::getBarcode, pakinBarcode)
+                .set(WkOrderItem::getUpdateBy, loginUserId)
+                .set(WkOrderItem::getUpdateTime, new Date()))) {
+            throw new CoolException("閫氱煡鍗曟槑缁嗘潯鐮佸洖鍐欏け璐ワ紒锛�");
+        }
+    }
+
     /**
      * 鍏ュ簱浠诲姟
      *

--
Gitblit v1.9.1