From 2f8e173048d22c5b40612c3538b9c1aa5a5397f6 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期五, 27 三月 2026 13:38:05 +0800
Subject: [PATCH] #乐观锁

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java |   28 ++++++++++++----------------
 1 files changed, 12 insertions(+), 16 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
index 85fdb25..e4bc088 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
@@ -67,8 +67,6 @@
     @Autowired
     private OutStockItemService outStockItemService;
     @Autowired
-    private OutStockService outStockService;
-    @Autowired
     private WaveRuleService waveRuleService;
     @Autowired
     private LocItemService locItemService;
@@ -358,11 +356,10 @@
         }
         for (WkOrder order : orders) {
             Double wkQty = Math.round((order.getWorkQty() + order.getAnfme()) * 10000) / 10000.0;
-            if (!this.update(new LambdaUpdateWrapper<WkOrder>()
-                    .set(WkOrder::getWaveId, wave.getId())
-                    .set(WkOrder::getWorkQty, wkQty)
-                    .set(WkOrder::getExceStatus, AsnExceStatus.OUT_STOCK_STATUS_TASK_WAVE.val)
-                    .eq(WkOrder::getId, order.getId()))) {
+            order.setWaveId(wave.getId())
+                    .setWorkQty(wkQty)
+                    .setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_WAVE.val);
+            if (!this.updateById(order)) {
                 throw new CoolException("鎵ц鐘舵�佷慨鏀逛慨鏀瑰け璐ワ紒锛�");
             }
         }
@@ -457,11 +454,10 @@
         }
         for (WkOrder order : orders) {
             Double wkQty = Math.round((order.getWorkQty() + order.getAnfme()) * 10000) / 10000.0;
-            if (!this.update(new LambdaUpdateWrapper<WkOrder>()
-                    .set(WkOrder::getWaveId, wave.getId())
-                    .set(WkOrder::getWorkQty, wkQty)
-                    .set(WkOrder::getExceStatus, AsnExceStatus.OUT_STOCK_STATUS_TASK_WAVE.val)
-                    .eq(WkOrder::getId, order.getId()))) {
+            order.setWaveId(wave.getId())
+                    .setWorkQty(wkQty)
+                    .setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_WAVE.val);
+            if (!this.updateById(order)) {
                 throw new CoolException("鎵ц鐘舵�佷慨鏀逛慨鏀瑰け璐ワ紒锛�");
             }
         }
@@ -633,7 +629,7 @@
             return LocUtils.isShallowLoc(item.getLocCode()) ? 1 : 0;
         }).reversed()).collect(Collectors.toList());
 
-        WkOrder wkOrder = outStockService.getById(outId);
+        WkOrder wkOrder = this.getById(outId);
         if (Cools.isEmpty(wkOrder)) {
             throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
         }
@@ -729,7 +725,7 @@
 
         Double sum = itemList.stream().mapToDouble(OutStockToTaskParams::getOutQty).sum();
         //鏇存柊鍑哄簱鍗曟槑缁嗗強涓诲崟
-        WkOrder outOrder = outStockService.getById(outId);
+        WkOrder outOrder = this.getById(outId);
         if (Objects.isNull(outOrder)) {
             throw new CoolException("鍑哄簱鍗曟嵁涓嶅瓨鍦紒锛�");
         }
@@ -737,7 +733,7 @@
 
         outOrder.setWorkQty(workQty).setExceStatus(AsnExceStatus.OUT_STOCK_STATUS_TASK_CREATE.val);
 
-        if (!outStockService.updateById(outOrder)) {
+        if (!this.updateById(outOrder)) {
             throw new CoolException("鍑哄簱鍗曠姸鎬佷慨鏀瑰け璐ワ紒锛�");
         }
 
@@ -910,7 +906,7 @@
             }
             for (LocItem locItem : locItems) {
                 if (sign){
-                    if (locItem.getType().equals(OrderWorkType.ORDER_WORK_TYPE_FEED_IN_MATERIAL_PREPARATION.type) || locItem.getType().equals(OrderWorkType.ORDER_WORK_TYPE_NORMAL_MATERIAL_PREPARATION.type) ) {
+                    if (locItem.getType().equals(OrderType.ORDER_PRE.type) || locItem.getType().equals(OrderType.ORDER_PRE_NOT_OUT.type)) {
                         continue;
                     }
                 }

--
Gitblit v1.9.1