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/controller/OutStockController.java |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java
index aa78e0c..3baa8f2 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/OutStockController.java
@@ -22,6 +22,7 @@
 import com.vincent.rsf.server.common.domain.KeyValVo;
 import com.vincent.rsf.server.common.domain.PageParam;
 import com.vincent.rsf.server.common.utils.ExcelUtil;
+import com.vincent.rsf.server.common.utils.OptimisticLockUtils;
 import com.vincent.rsf.server.manager.controller.params.AsnOrderAndItemsParams;
 import com.vincent.rsf.server.manager.entity.excel.AsnOrderTemplate;
 import com.vincent.rsf.server.manager.enums.AsnExceStatus;
@@ -39,7 +40,7 @@
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
 import java.util.*;
 
 @RestController
@@ -119,6 +120,7 @@
     @PostMapping("/outStock/update")
     @ApiOperation("鏇存柊")
     public R update(@RequestBody WkOrder wkOrder) {
+        OptimisticLockUtils.requireVersion("鍑哄簱鍗�", wkOrder.getVersion());
         wkOrder.setType(OrderType.ORDER_OUT.type)
                 .setUpdateBy(getLoginUserId())
                 .setUpdateTime(new Date());
@@ -256,6 +258,17 @@
         return outStockService.saveOutStock(params, getLoginUserId());
     }
 
+    @GetMapping("/outStock/complete/{id}")
+    @ApiOperation("瀹屾垚鍑哄簱鍗�")
+    @PreAuthorize("hasAuthority('manager:outStock:update')")
+    public R complete(@PathVariable Long id) {
+        if (Objects.isNull(id)) {
+            return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+        }
+        return outStockService.completeOutOrderById(id);
+    }
+
+
     @ApiOperation("鍗曟嵁淇℃伅淇敼")
     @PostMapping("/outStock/items/update")
     @PreAuthorize("hasAuthority('manager:outStock:update')")

--
Gitblit v1.9.1