Commit 2de14c2392127f4ef979917317e4b51e9b0ae7cd

Authored by 颜惠青
1 parent 68c7f886

AI工单 或签时,多人系统会自动取消其他为参与的节点,导致查询展示问题修复

urbanops-module-bpm/src/main/java/com/zteits/urbanops/module/bpm/api/task/BpmTaskApiImpl.java
@@ -15,6 +15,7 @@ import org.springframework.util.StringUtils; @@ -15,6 +15,7 @@ import org.springframework.util.StringUtils;
15 import org.springframework.validation.annotation.Validated; 15 import org.springframework.validation.annotation.Validated;
16 16
17 import java.util.*; 17 import java.util.*;
  18 +import java.util.stream.Collectors;
18 import java.util.stream.Stream; 19 import java.util.stream.Stream;
19 20
20 import static com.zteits.urbanops.framework.common.util.collection.CollectionUtils.convertSetByFlatMap; 21 import static com.zteits.urbanops.framework.common.util.collection.CollectionUtils.convertSetByFlatMap;
@@ -69,8 +70,13 @@ public class BpmTaskApiImpl implements BpmTaskApi{ @@ -69,8 +70,13 @@ public class BpmTaskApiImpl implements BpmTaskApi{
69 Set<Long> userIds = convertSetByFlatMap(taskList, task -> 70 Set<Long> userIds = convertSetByFlatMap(taskList, task ->
70 Stream.of(NumberUtils.parseLong(task.getAssignee()), NumberUtils.parseLong(task.getOwner()))); 71 Stream.of(NumberUtils.parseLong(task.getAssignee()), NumberUtils.parseLong(task.getOwner())));
71 Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(userIds); 72 Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(userIds);
  73 +
  74 + // 过滤掉所有deleteReason = MI_END的任务,再进行遍历
  75 + List<HistoricTaskInstance> nonMIEndTaskList = taskList.stream()
  76 + .filter(task -> !"MI_END".equals(task.getDeleteReason()))
  77 + .collect(Collectors.toList());
72 // 5. 按任务结束时间倒序→创建时间倒序排序,确保取到最新任务 78 // 5. 按任务结束时间倒序→创建时间倒序排序,确保取到最新任务
73 - HistoricTaskInstance lastTask = taskList.stream() 79 + HistoricTaskInstance lastTask = nonMIEndTaskList.stream()
74 .reduce((first, last) -> last) // 遍历到最后一个元素 80 .reduce((first, last) -> last) // 遍历到最后一个元素
75 .orElse(null); // 空列表返回null 81 .orElse(null); // 空列表返回null
76 // 存储最后一个任务,后续封装VO 82 // 存储最后一个任务,后续封装VO