From bb4f5dc6bbf43616ca3482257b576c9c66c49ff5 Mon Sep 17 00:00:00 2001
From: chen.lin <1442464845@qq.com>
Date: 星期六, 07 二月 2026 11:20:07 +0800
Subject: [PATCH] 全版出库增加完结按钮

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java |    6 +++---
 rsf-admin/src/page/task/TaskList.jsx                                                      |   37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 40 insertions(+), 3 deletions(-)

diff --git a/rsf-admin/src/page/task/TaskList.jsx b/rsf-admin/src/page/task/TaskList.jsx
index 70f5161..85ec42e 100644
--- a/rsf-admin/src/page/task/TaskList.jsx
+++ b/rsf-admin/src/page/task/TaskList.jsx
@@ -182,6 +182,7 @@
                     <WrapperField cellClassName="opt" label="common.field.opt" onClick={(e) => e.stopPropagation()} >
                         <EditButton label="toolbar.detail" />
                         <DoneButton sx={{ padding: '1px', fontSize: '.75rem' }} ></DoneButton>
+                        <FullOutStockCompleteButton />
                         <CancelButton sx={{ padding: '1px', fontSize: '.75rem' }} mutationMode={OPERATE_MODE} />
                         <CheckButton />
                         <PickButton />
@@ -336,6 +337,42 @@
 }
 
 /**
+ * 鍏ㄧ増鍑哄簱瀹岀粨鎸夐挳锛�199鐘舵�侊級
+ * @returns 
+ */
+const FullOutStockCompleteButton = () => {
+    const record = useRecordContext();
+    const notify = useNotify();
+    const refresh = useRefresh();
+    
+    const clickComplete = () => {
+        completeFullOutStock(record)
+    };
+    
+    //鍏ㄧ増鍑哄簱瀹岀粨
+    const completeFullOutStock = async (row) => {
+        const { data: { code, data, msg } } = await request.post(`/task/complete/fullOutStock/` + row.id);
+        if (code === 200) {
+            notify(msg);
+            refresh();
+        } else {
+            notify(msg);
+        }
+    }
+    
+    return (
+        record?.taskStatus == 199 && record?.taskType == 101 ? 
+            <ConfirmButton 
+                label={"toolbar.complete"} 
+                color="primary" 
+                startIcon={<TaskAltIcon />} 
+                onConfirm={clickComplete} 
+            /> 
+            : <></>
+    )
+}
+
+/**
  * 鍙栨秷鎸夐挳
  * @returns 
  */
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 60155ef..71ead6c 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
@@ -605,9 +605,9 @@
             throw new CoolException("褰撳墠浠诲姟涓嶆槸鍏ㄧ増鍑哄簱浠诲姟锛屾棤娉曟墽琛屾鎿嶄綔锛侊紒");
         }
 
-        // 妫�鏌ヤ换鍔$姸鎬�
-        if (task.getTaskStatus().equals(TaskStsType.COMPLETE_OUT.id)) {
-            throw new CoolException("浠诲姟宸插畬鎴愶紝鏃犻渶閲嶅瀹岀粨锛侊紒");
+        // 妫�鏌ヤ换鍔$姸鎬侊細蹇呴』鏄�199锛圵AVE_SEED锛夌姸鎬佹墠鑳芥墜鍔ㄥ畬缁�
+        if (!task.getTaskStatus().equals(TaskStsType.WAVE_SEED.id)) {
+            throw new CoolException("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁ょ姸鎬侊紙199锛夛紝鏃犳硶鎵ц姝ゆ搷浣滐紒锛佸綋鍓嶇姸鎬侊細" + task.getTaskStatus());
         }
 
         // 鏌ヨ搴撲綅

--
Gitblit v1.9.1