From c5dafd7dba14635643b4340597fb14c563c8dc7e Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 14 二月 2025 15:59:17 +0800
Subject: [PATCH] 挂起任务接口

---
 business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java |   32 ++++++++++++++++++++++++--------
 1 files changed, 24 insertions(+), 8 deletions(-)

diff --git a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
index 6f84aa6..c82b1a8 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
@@ -20,10 +20,9 @@
 import com.ycl.common.utils.SecurityUtils;
 import com.ycl.constant.TaskTypeConstant;
 import com.ycl.domain.entity.*;
-import com.ycl.domain.form.TaskDelegationForm;
-import com.ycl.domain.form.TaskJumpForm;
-import com.ycl.domain.form.TaskSuperviseForm;
+import com.ycl.domain.form.*;
 import com.ycl.domain.json.DelegateData;
+import com.ycl.domain.json.HangupData;
 import com.ycl.domain.json.JumpData;
 import com.ycl.domain.json.SuperviseData;
 import com.ycl.domain.vo.CustomerTaskVO;
@@ -35,7 +34,6 @@
 import com.ycl.service.*;
 import com.ycl.common.base.Result;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ycl.domain.form.ProjectProcessForm;
 import com.ycl.domain.vo.ProjectProcessVO;
 import com.ycl.domain.query.ProjectProcessQuery;
 import com.ycl.service.common.TaskCommonService;
@@ -342,7 +340,7 @@
                     .processDefinitionId(task.getProcessDefinitionId())
                     .singleResult();
             taskVO.setDeployId(pd.getDeploymentId());
-            taskVO.setProcessName(pd.getName());
+            taskVO.setProcessName(pd.getName() + "(v" + pd.getVersion() + ")");
             taskVO.setProcessInsId(task.getProcessInstanceId());
             taskVO.setTaskDefinitionKey(task.getTaskDefinitionKey());
 
@@ -611,7 +609,7 @@
         jsonData.setAfterHandlerIds(afterHandlerIds);
         jsonData.setAfterHandlerType(form.getPeopleType());
         // 鍙戝竷杞姙浜嬩欢
-        publisher.publishEvent(new TaskLogEvent(this, null,SecurityUtils.getUserId(), form.getProjectId(), form.getProcessInsId(), task.getId(), ProcessLogEventTypeEnum.DELEGATE, jsonData));
+        publisher.publishEvent(new TaskLogEvent(this, null,SecurityUtils.getUserId(), form.getProjectId(), form.getProcessInsId(), task.getId(), task.getName(),ProcessLogEventTypeEnum.DELEGATE, jsonData));
 
         return Result.ok("杞姙鎴愬姛");
     }
@@ -622,7 +620,7 @@
         Task task = taskService.createTaskQuery().taskId(form.getTaskId()).processInstanceId(form.getProcessInsId()).singleResult();
         if (Objects.nonNull(task)) {
             // 娣诲姞璺宠繃鏃ュ織
-            publisher.publishEvent(new TaskLogEvent(this, null,SecurityUtils.getUserId(), form.getProjectId(), form.getProcessInsId(), form.getTaskId(), ProcessLogEventTypeEnum.JUMP, new JumpData(form.getDesc())));
+            publisher.publishEvent(new TaskLogEvent(this, null,SecurityUtils.getUserId(), form.getProjectId(), form.getProcessInsId(), form.getTaskId(), task.getName(),ProcessLogEventTypeEnum.JUMP, new JumpData(form.getDesc())));
             // 鏌ュ嚭璇ヤ换鍔$粦瀹氱殑琛ㄥ崟
 
             Map<String, Object> data = new HashMap<>(1);
@@ -640,6 +638,7 @@
 
     @Override
     public Result taskSupervise(TaskSuperviseForm form) {
+        Task task = taskService.createTaskQuery().taskId(form.getTaskId()).singleResult();
         SuperviseData jsonData = new SuperviseData();
         jsonData.setCreateTime(new Date());
         jsonData.setContent(form.getContent());
@@ -665,7 +664,24 @@
         }
         dataList.add(jsonData);
         //娣诲姞鐫e姙鏃ュ織
-        publisher.publishEvent(new TaskLogEvent(this, processLog.getId(), processLog.getUserId(), form.getProjectId(), form.getProcessInsId(), form.getTaskId(), ProcessLogEventTypeEnum.SUPERVISE, dataList));
+        publisher.publishEvent(new TaskLogEvent(this, processLog.getId(), processLog.getUserId(), form.getProjectId(), form.getProcessInsId(), form.getTaskId(), task.getName(),ProcessLogEventTypeEnum.SUPERVISE, dataList));
+        return Result.ok("鎿嶄綔鎴愬姛");
+    }
+
+    @Override
+    public Result taskHangup(TaskHangupForm form) {
+        Task task = taskService.createTaskQuery().taskId(form.getTaskId()).singleResult();
+        // 浠诲姟鎸傝捣鍙渶瑕佸瓨鏃ュ織锛屾煡璇㈠緟鍔炴椂濡傛灉鏈夎繖涓棩蹇楄褰曪紝鍒欑鐢ㄦ彁浜ゆ寜閽紝浠ユ瀹炵幇浠诲姟鎸傝捣
+        publisher.publishEvent(new TaskLogEvent(this,
+                null,
+                SecurityUtils.getUserId(),
+                form.getProjectId(),
+                form.getProcessInsId(),
+                form.getTaskId(),
+                task.getName(),
+                ProcessLogEventTypeEnum.HANGUP,
+                new HangupData(form.getReason())
+                ));
         return Result.ok("鎿嶄綔鎴愬姛");
     }
 

--
Gitblit v1.8.0