From 7411561962ca6e45e32844d7a626a6e89b8292e5 Mon Sep 17 00:00:00 2001
From: jiazx0107 <jiazx0107@163.com>
Date: 星期六, 17 一月 2026 16:59:56 +0800
Subject: [PATCH] 调整出入库通知单功能

---
 fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java |   30 +++++++++++++++++++++---------
 1 files changed, 21 insertions(+), 9 deletions(-)

diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java
index 1261414..9623e67 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java
@@ -12,6 +12,7 @@
 import com.fzzy.work.domain.WorkOrderConf;
 import com.fzzy.work.domain.WorkOrderProcess;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -84,7 +85,7 @@
         process.setAssigneeName(work.getCreateBy());
         process.setAssigneeId(work.getCreateById());
         process.setNode(WorkNode.NODE_START.getCode());
-        orderProcessService.addData(process);
+        orderProcessService.addData(process,false);
 
         return BaseResp.success();
     }
@@ -129,7 +130,7 @@
         process.setAssigneeName(work.getCreateBy());
         process.setAssigneeId(work.getCreateById());
         process.setNode(WorkNode.NODE_START.getCode());
-        orderProcessService.addData(process);
+        orderProcessService.addData(process,false);
 
         return BaseResp.success();
     }
@@ -168,10 +169,20 @@
      */
     public BaseResp todoByProcess(WorkOrderProcess process) {
 
+        String action = process.getAction();
+        if (StringUtils.isEmpty(action)) {
+            return BaseResp.error("娌℃湁璇嗗埆鍒板鐞嗗姩浣滐紝璇烽噸鏂板皾璇�");
+        }
+
         log.info("-----宸ュ崟澶勭悊-----{}", process);
         //鑾峰彇宸ュ崟
         WorkOrder work = orderService.selectById(process.getOrderId());
         if (null == work) return BaseResp.error("褰撳墠宸ュ崟宸蹭笉瀛樺湪");
+
+        if (work.getStatus().equals(WorkStatus.STATUS_50.getCode())
+                || work.getStatus().equals(WorkStatus.STATUS_60.getCode())) {
+            return BaseResp.error("褰撳墠宸ュ崟宸插鐞嗭紝璇峰埛鏂伴〉闈㈤噸璇曪紒锛�");
+        }
 
         String curNode = process.getNode();
         //鑾峰彇澶勭悊浜�
@@ -183,8 +194,6 @@
         WorkOrderConf conf = confService.selectById(work.getConfId());
         if (null == conf) return BaseResp.error("褰撳墠宸ュ崟鏈厤缃祦绋�");
 
-
-        String action = process.getAction();
         //娣诲姞璁板綍
         process.setId(ContextUtil.UUID());
         process.setCreateTime(new Date());
@@ -192,18 +201,21 @@
         process.setAssigneeName(ContextUtil.getLoginUserName());
         process.setAssigneeId(ContextUtil.getLoginName());
 
-        WorkNode node = this.getNextNode(work.getNode(), conf);
+        WorkNode nextNode = this.getNextNode(work.getNode(), conf);
 
-        log.info("宸ュ崟瀹℃壒锛歿}锛屽綋鍓嶈妭鐐癸細{}锛屼笅涓�鑺傜偣锛歿}", work.getTitle(), work.getNode(), node);
+        log.info("宸ュ崟瀹℃壒锛歿}锛屽綋鍓嶈妭鐐癸細{}锛屼笅涓�鑺傜偣锛歿}", work.getTitle(), work.getNode(), nextNode);
 
         //閫氳繃鎿嶄綔
         if ("pass".equals(action)) {
             process.setAction("閫氳繃");
-            process.setNode(node.getCode());
+            process.setNode(work.getNode());
 
             //缁撴潫鍒ゆ柇锛屽鏋滄槸缁撴潫鑺傜偣锛屽垯缁撴潫宸ュ崟
-            if(WorkNode.NODE_END.getCode().equals(process.getNode())){
+            if (WorkNode.NODE_END.getCode().equals(nextNode.getCode())) {
                 work.setStatus(WorkStatus.STATUS_50.getCode());
+                work.setAssigneeName(process.getAssigneeName());
+                work.setAssigneeId(process.getAssigneeId());
+                work.setNode(nextNode.getCode());
                 orderService.complete(work);
             }
         }
@@ -218,7 +230,7 @@
         }
 
         //澧炲姞瀹℃壒璁板綍
-        orderProcessService.addData(process);
+        orderProcessService.addData(process,nextNode.equals(WorkNode.NODE_END));
 
         return BaseResp.success();
     }

--
Gitblit v1.9.3