From 024504a3933e8f2f86e80383e61fa574524a0d28 Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期二, 10 三月 2026 16:39:52 +0800
Subject: [PATCH]  logo修改 +入库完成校验

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java |   38 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 38 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 fc24fa7..a7197d7 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
@@ -2477,6 +2477,44 @@
             throw new CoolException("缁勬嫋鐘舵�佷慨鏀瑰け璐ワ紒锛�");
         }
 
+        // 缁勬墭鍏ュ簱瀹屾垚鍚庣疮鍔犺鍗曞強鏄庣粏鐨勫凡鏀舵暟閲忥紝鐢ㄤ簬鍚庣画鍒ゆ柇鏁村崟鏄惁鍙疆涓哄凡瀹屾垚
+        Map<Long, Double> orderIdToAdd = new HashMap<>();
+        Map<Long, Double> itemIdToAdd = new HashMap<>();
+        for (WaitPakinItem p : pakinItems) {
+            if (StringUtils.isBlank(p.getAsnCode())) {
+                continue;
+            }
+            WkOrder order = asnOrderService.getOne(new LambdaQueryWrapper<WkOrder>().eq(WkOrder::getCode, p.getAsnCode()));
+            if (order == null) {
+                continue;
+            }
+            double addQty = (p.getAnfme() != null ? p.getAnfme() : 0.0);
+            orderIdToAdd.merge(order.getId(), addQty, Double::sum);
+            if (p.getAsnItemId() != null) {
+                itemIdToAdd.merge(p.getAsnItemId(), addQty, Double::sum);
+            }
+        }
+        for (Map.Entry<Long, Double> e : orderIdToAdd.entrySet()) {
+            WkOrder o = asnOrderService.getById(e.getKey());
+            if (o != null) {
+                Double newQty = QuantityUtils.roundToScale(QuantityUtils.add(o.getQty() != null ? o.getQty() : 0.0, e.getValue()));
+                o.setQty(newQty);
+                if (!asnOrderService.updateById(o)) {
+                    throw new CoolException("鍏ュ簱鍗曞畬鎴愭暟閲忔洿鏂板け璐ワ紒锛�");
+                }
+            }
+        }
+        for (Map.Entry<Long, Double> e : itemIdToAdd.entrySet()) {
+            WkOrderItem oi = asnOrderItemService.getById(e.getKey());
+            if (oi != null) {
+                Double newQty = QuantityUtils.roundToScale(QuantityUtils.add(oi.getQty() != null ? oi.getQty() : 0.0, e.getValue()));
+                oi.setQty(newQty);
+                if (!asnOrderItemService.updateById(oi)) {
+                    throw new CoolException("鍏ュ簱鍗曟槑缁嗗畬鎴愭暟閲忔洿鏂板け璐ワ紒锛�");
+                }
+            }
+        }
+
         /**淇敼搴撲綅鐘舵�佷负F.鍦ㄥ簱*/
         if (!locService.update(new LambdaUpdateWrapper<Loc>().set(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_F.type).eq(Loc::getCode, task.getTargLoc()))) {
             throw new CoolException("搴撲綅鐘舵�佷慨鏀瑰け璐ワ紒锛�");

--
Gitblit v1.9.1