fix(流程): 会签节点 问题修复

This commit is contained in:
yjz
2024-07-31 15:56:33 +08:00
parent 2f6422771e
commit 8c2ace0e4d
@@ -44,6 +44,7 @@ import org.activiti.engine.ManagementService;
import org.activiti.engine.RuntimeService;
import org.activiti.engine.TaskService;
import org.activiti.engine.task.Task;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.stereotype.Service;
@@ -103,13 +104,19 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
String order = req.getParameter("order");
IPage<ProcessAll> todoList = processAllMapper.getTodoList(page, queryWrapper, column, order);
Set<String> nodeIdSet = todoList.getRecords().stream().map(ProcessAll::getNodeId).collect(Collectors.toSet());
List<ProcessNode> processNodeList = processNodeService.list(new LambdaQueryWrapper<ProcessNode>().in(ProcessNode::getId, nodeIdSet));
todoList.getRecords().forEach(processAll -> {
processNodeList.stream()
.filter(processNode -> processNode.getId().equals(processAll.getNodeId()))
.findFirst()
.ifPresent(processNode -> processAll.setCountersignFlag(processNode.getCountersignFlag()));
});
Set<String> processDefinitionIdSet = todoList.getRecords().stream().map(ProcessAll::getProcessDefinitionId).collect(Collectors.toSet());
if (CollectionUtils.isNotEmpty(nodeIdSet) && CollectionUtils.isNotEmpty(processDefinitionIdSet)){
List<ProcessNode> processNodeList = processNodeService.list(new LambdaQueryWrapper<ProcessNode>()
.in(ProcessNode::getXmlNodeId, nodeIdSet)
.in(ProcessNode::getProcessDefinitionId, processDefinitionIdSet));
todoList.getRecords().forEach(processAll -> {
processNodeList.stream().peek(v -> {
if (v.getXmlNodeId().equals(processAll.getNodeId())){
processAll.setCountersignFlag(v.getCountersignFlag());
}
}).collect(Collectors.toList());
});
}
return todoList;
}