From cf3b3fe3f9d46e28ac84f1aa61a3d9754aabf421 Mon Sep 17 00:00:00 2001
From: jiazx0107 <jiazx0107@163.com>
Date: 星期六, 17 一月 2026 00:05:13 +0800
Subject: [PATCH] 调整工单审批2

---
 fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java |   19 ++++++++++++++++---
 1 files changed, 16 insertions(+), 3 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..1cedead 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;
@@ -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());
@@ -202,8 +211,12 @@
             process.setNode(node.getCode());
 
             //缁撴潫鍒ゆ柇锛屽鏋滄槸缁撴潫鑺傜偣锛屽垯缁撴潫宸ュ崟
-            if(WorkNode.NODE_END.getCode().equals(process.getNode())){
+            if (WorkNode.NODE_END.getCode().equals(process.getNode())) {
                 work.setStatus(WorkStatus.STATUS_50.getCode());
+
+                work.setAssigneeName(process.getAssigneeName());
+                work.setAssigneeId(process.getAssigneeId());
+
                 orderService.complete(work);
             }
         }

--
Gitblit v1.9.3