diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskServiceImpl.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskServiceImpl.java index e1820945..310b8262 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskServiceImpl.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskServiceImpl.java @@ -303,26 +303,16 @@ public class BpmTaskServiceImpl implements BpmTaskService { // 获得 TaskExtDO Map List bpmTaskExtDOs = taskExtMapper.selectListByTaskIds(convertSet(tasks, HistoricTaskInstance::getId)); -// List bpmTaskExtDOsTemp = taskExtMapper.selectListByTaskIds(convertSet(tasks, HistoricTaskInstance::getId)); - /** 剔除自动审批的Task记录 add by yj at 2024.1.23 Begin*/ -// List bpmTaskExtDOs = new ArrayList<>() ; -// List tasksAfter = new ArrayList<>() ; -// for (BpmTaskExtDO bpmTaskExtDO : bpmTaskExtDOsTemp) { -// String reason = bpmTaskExtDO.getReason() ; -// if(!BpmConstants.AUTO_APPRAVAL.equals(reason)) { -// bpmTaskExtDOs.add(bpmTaskExtDO) ; -// String taskId = bpmTaskExtDO.getTaskId() ; -// for (HistoricTaskInstance historicTaskInstance : tasks) { -// String id= historicTaskInstance.getId() ; -// if(taskId.equals( id )) { -// tasksAfter.add(historicTaskInstance) ; -// break ; -// } -// } -// } -// } -// tasks = tasksAfter ; - /** 剔除自动审批的Task记录 add by yj at 2024.1.23 End*/ + + /* 剔除自动审批的Task记录 Begin */ + bpmTaskExtDOs = bpmTaskExtDOs.stream() + .filter(bpmTaskExtDO -> !BpmConstants.AUTO_APPRAVAL.equals(bpmTaskExtDO.getReason()) || BpmConstants.SELF_TASK_NAME.equals(bpmTaskExtDO.getName())) + .collect(Collectors.toList()); + + List taskIds = convertList(bpmTaskExtDOs, BpmTaskExtDO::getTaskId); + tasks = tasks.stream().filter(task -> taskIds.contains(task.getId())).collect(Collectors.toList()); + /* 剔除自动审批的Task记录 End */ + Map bpmTaskExtDOMap = convertMap(bpmTaskExtDOs, BpmTaskExtDO::getTaskId); // 获得 ProcessInstance Map HistoricProcessInstance processInstance = processInstanceService.getHistoricProcessInstance(processInstanceId);