fix(流程): 会签节点 问题修复
This commit is contained in:
+14
-7
@@ -44,6 +44,7 @@ import org.activiti.engine.ManagementService;
|
|||||||
import org.activiti.engine.RuntimeService;
|
import org.activiti.engine.RuntimeService;
|
||||||
import org.activiti.engine.TaskService;
|
import org.activiti.engine.TaskService;
|
||||||
import org.activiti.engine.task.Task;
|
import org.activiti.engine.task.Task;
|
||||||
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@@ -103,13 +104,19 @@ public class ProcessAllService extends ServiceImpl<ProcessAllMapper, ProcessAll>
|
|||||||
String order = req.getParameter("order");
|
String order = req.getParameter("order");
|
||||||
IPage<ProcessAll> todoList = processAllMapper.getTodoList(page, queryWrapper, column, order);
|
IPage<ProcessAll> todoList = processAllMapper.getTodoList(page, queryWrapper, column, order);
|
||||||
Set<String> nodeIdSet = todoList.getRecords().stream().map(ProcessAll::getNodeId).collect(Collectors.toSet());
|
Set<String> nodeIdSet = todoList.getRecords().stream().map(ProcessAll::getNodeId).collect(Collectors.toSet());
|
||||||
List<ProcessNode> processNodeList = processNodeService.list(new LambdaQueryWrapper<ProcessNode>().in(ProcessNode::getId, nodeIdSet));
|
Set<String> processDefinitionIdSet = todoList.getRecords().stream().map(ProcessAll::getProcessDefinitionId).collect(Collectors.toSet());
|
||||||
todoList.getRecords().forEach(processAll -> {
|
if (CollectionUtils.isNotEmpty(nodeIdSet) && CollectionUtils.isNotEmpty(processDefinitionIdSet)){
|
||||||
processNodeList.stream()
|
List<ProcessNode> processNodeList = processNodeService.list(new LambdaQueryWrapper<ProcessNode>()
|
||||||
.filter(processNode -> processNode.getId().equals(processAll.getNodeId()))
|
.in(ProcessNode::getXmlNodeId, nodeIdSet)
|
||||||
.findFirst()
|
.in(ProcessNode::getProcessDefinitionId, processDefinitionIdSet));
|
||||||
.ifPresent(processNode -> processAll.setCountersignFlag(processNode.getCountersignFlag()));
|
todoList.getRecords().forEach(processAll -> {
|
||||||
});
|
processNodeList.stream().peek(v -> {
|
||||||
|
if (v.getXmlNodeId().equals(processAll.getNodeId())){
|
||||||
|
processAll.setCountersignFlag(v.getCountersignFlag());
|
||||||
|
}
|
||||||
|
}).collect(Collectors.toList());
|
||||||
|
});
|
||||||
|
}
|
||||||
return todoList;
|
return todoList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user