From d87b636f92269b4ec97cb5ca00680409755814a9 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 30 四月 2025 15:38:43 +0800
Subject: [PATCH] 收货优化修改

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

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java
index e34df99..0d6bed9 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/WaitPakinServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.vincent.rsf.framework.exception.CoolException;
 import com.vincent.rsf.server.manager.controller.params.PakinItem;
 import com.vincent.rsf.server.manager.controller.params.WaitPakinParam;
@@ -187,11 +188,33 @@
                 }
                 items.add(pakinItem);
             }
+
+
         }
         double sum1 = items.stream().mapToDouble(WaitPakinItem::getAnfme).sum();
+
         if (!waitPakinItemService.saveBatch(items)) {
             throw new CoolException("缁勬嫋鏄庣粏淇濆瓨澶辫触锛侊紒");
         }
+
+        for (WaitPakinItem pakinItem : items) {
+            WarehouseAreasItem one = warehouseAreasItemService.getOne(new LambdaQueryWrapper<WarehouseAreasItem>()
+                    .eq(WarehouseAreasItem::getTrackCode, pakinItem.getTrackCode())
+                    .eq(WarehouseAreasItem::getSplrBatch, pakinItem.getBatch()));
+            if (Objects.isNull(one)) {
+                throw new CoolException("鏀惰揣鍖烘暟鎹敊璇紒锛�");
+            }
+            one.setWorkQty(one.getWorkQty() + pakinItem.getAnfme() + one.getQty()) ;
+            if (one.getWorkQty() > one.getAnfme()) {
+                throw new CoolException("缁勬墭鏁伴噺涓嶈兘澶т簬鏀惰揣鏁伴噺锛侊紒");
+            }
+            if (!warehouseAreasItemService.saveOrUpdate(one)) {
+                throw new CoolException("鏀惰揣鍖烘墽琛屾暟閲忎慨鏀瑰け璐ワ紒锛�");
+            }
+        }
+
+
+
         waitPakin1.setAnfme(sum1);
         if (!this.updateById(waitPakin1)) {
             throw new CoolException("缁勬嫋鏁伴噺淇敼澶辫触锛侊紒");

--
Gitblit v1.9.1