diff --git a/project/src/main/java/com/sdm/project/service/impl/ProjectServiceImpl.java b/project/src/main/java/com/sdm/project/service/impl/ProjectServiceImpl.java index 0d8fd39c..7c7c80c3 100644 --- a/project/src/main/java/com/sdm/project/service/impl/ProjectServiceImpl.java +++ b/project/src/main/java/com/sdm/project/service/impl/ProjectServiceImpl.java @@ -615,6 +615,9 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { } List workspaceNodeList = children.stream().filter(node -> NodeTypeEnum.WORKSPACE.getValue().equals(node.getNodeType())).collect(Collectors.toList()); if (CollectionUtils.isEmpty(workspaceNodeList)) { + for (NodeAllBase child : children) { + sortWorkspaceNode((ProjectNodePo) child); + } return; } // 对工位进行排序,-M工位顺序排第一个 diff --git a/project/src/main/java/com/sdm/project/service/impl/SimulationRunServiceImpl.java b/project/src/main/java/com/sdm/project/service/impl/SimulationRunServiceImpl.java index b5dde673..200f115b 100644 --- a/project/src/main/java/com/sdm/project/service/impl/SimulationRunServiceImpl.java +++ b/project/src/main/java/com/sdm/project/service/impl/SimulationRunServiceImpl.java @@ -615,8 +615,24 @@ public class SimulationRunServiceImpl extends ServiceImpl workspaceNodeList = children.stream().filter(node -> NodeTypeEnum.WORKSPACE.getValue().equals(node.getNodeType())).collect(Collectors.toList()); if (CollectionUtils.isEmpty(workspaceNodeList)) { + for (NodeAllBase child : children) { + sortWorkspaceNode((ProjectNodePo) child); + } return; } + // 只显示有任务的工位 + Iterator workspaceNodeListIterator = workspaceNodeList.iterator(); + while (workspaceNodeListIterator.hasNext()) { + List childrenNodeList = workspaceNodeListIterator.next().getChildren(); + if (CollectionUtils.isEmpty(childrenNodeList)) { + workspaceNodeListIterator.remove(); + continue; + } + List taskNodeList = childrenNodeList.stream().filter(node -> NodeTypeEnum.TASK.getValue().equals(node.getNodeType())).toList(); + if (CollectionUtils.isEmpty(taskNodeList)) { + workspaceNodeListIterator.remove(); + } + } // 对工位进行排序,-M工位顺序排第一个 workspaceNodeList = workspaceNodeList.stream().sorted(Comparator.comparing(NodeAllBase::getNodeCode)).collect(Collectors.toList()); NodeAllBase specialWorkspaceNode = workspaceNodeList.stream().filter(workspaceNode -> workspaceNode.getNodeCode().contains("-M")).findFirst().orElse(null);