From 80662b34fe93b4ede00c7fc03fbd9f01355c94e2 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 07 四月 2025 13:52:17 +0800
Subject: [PATCH] 修改任务接口

---
 business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java |   39 ++++++++++++++++++++++++++++++++++-----
 1 files changed, 34 insertions(+), 5 deletions(-)

diff --git a/business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java
index f67a65e..5b075c8 100644
--- a/business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProcessLogServiceImpl.java
@@ -145,6 +145,26 @@
     }
 
     @Override
+    public Boolean taskIsWait(String taskId, String processInsId) {
+        List<ProcessLog> list = new LambdaQueryChainWrapper<>(baseMapper)
+                .eq(ProcessLog::getProcessInsId, processInsId)
+                .eq(ProcessLog::getTaskId, taskId)
+                .list();
+        return list.stream().anyMatch(log -> ProcessLogEventTypeEnum.WAIT.equals(log.getEventType()))
+                && list.stream().filter(log -> ProcessLogEventTypeEnum.FINISHED.equals(log.getEventType())).count() < 1;
+    }
+
+    @Override
+    public Boolean taskIsJump(String taskId, String processInsId) {
+        List<ProcessLog> list = new LambdaQueryChainWrapper<>(baseMapper)
+                .eq(ProcessLog::getProcessInsId, processInsId)
+                .eq(ProcessLog::getTaskId, taskId)
+                .eq(ProcessLog::getEventType, ProcessLogEventTypeEnum.JUMP)
+                .list();
+        return list.size() > 0;
+    }
+
+    @Override
     public Boolean taskIsTeamwork(String taskId, String processInsId) {
         ProcessLog log = new LambdaQueryChainWrapper<>(baseMapper)
                 .eq(ProcessLog::getProcessInsId, processInsId)
@@ -160,8 +180,8 @@
     }
 
     @Override
-    public Result projectProcessLogPage(ProcessLogQuery query) {
-        List<ProcessLogVO> list = baseMapper.projectProcessLogPage(query);
+    public Result projectProcessLogList(ProcessLogQuery query) {
+        List<ProcessLogVO> list = baseMapper.projectProcessLogList(query);
         // json鍙嶅簭鍒楀寲
         list.stream().forEach(log -> {
             if (StringUtils.isNotBlank(log.getEventDataJson())) {
@@ -175,6 +195,8 @@
                     log.setEventDataObj(delegateData);
                 } else if (ProcessLogEventTypeEnum.JUMP.equals(log.getEventType())) {
                     log.setEventDataObj(JSON.parseObject(log.getEventDataJson(), JumpData.class));
+                } else if (ProcessLogEventTypeEnum.WAIT.equals(log.getEventType())) {
+                    log.setEventDataObj(JSON.parseObject(log.getEventDataJson(), WaitData.class));
                 } else if (ProcessLogEventTypeEnum.REJECT.equals(log.getEventType())) {
                     log.setEventDataObj(JSON.parseObject(log.getEventDataJson(), RejectData.class));
                 } else if (ProcessLogEventTypeEnum.SUPERVISE.equals(log.getEventType())) {
@@ -195,6 +217,13 @@
         return Result.ok().data(list);
     }
 
+    @Override
+    public Result projectProcessLogPage(ProcessLogQuery query) {
+        IPage<ProcessLogVO> page = PageUtil.getPage(query, ProcessLogVO.class);
+        baseMapper.projectProcessLogPage(page, query);
+        return Result.ok().data(page.getRecords()).total(page.getTotal());
+    }
+
     /**
      * 瑙f瀽娴佺▼鏃ュ織涓殑鏁版嵁-鍚嶇О
      *
@@ -210,13 +239,13 @@
             }
         } else if (HandlerTypeEnum.USER.equals(handlerType)) {
             List<SysUser> users = userService.selectUserByIds(ids);
-            names = users.stream().map(user -> user.getNickName() + "(" + (Objects.nonNull(user.getDept()) ? user.getDept().getDeptName() : "鏃犻儴闂�") + ")").collect(Collectors.toList());
+            names.addAll(users.stream().map(user -> user.getNickName() + "(" + (Objects.nonNull(user.getDept()) ? user.getDept().getDeptName() : "鏃犻儴闂�") + ")").collect(Collectors.toList()));
         } else if (HandlerTypeEnum.DEPT.equals(handlerType)) {
             List<SysDept> depts = deptService.selectDeptByIds(ids);
-            names = depts.stream().map(SysDept::getDeptName).collect(Collectors.toList());
+            names.addAll(depts.stream().map(SysDept::getDeptName).collect(Collectors.toList()));
         } else if (HandlerTypeEnum.ROLE.equals(handlerType)) {
             List<SysRole> roles = roleService.selectRoleByIds(ids);
-            names = roles.stream().map(SysRole::getRoleName).collect(Collectors.toList());
+            names.addAll(roles.stream().map(SysRole::getRoleName).collect(Collectors.toList()));
         }
     }
 }

--
Gitblit v1.8.0