From 52edfb512f40f1e648131e17c019435abe9986df Mon Sep 17 00:00:00 2001 From: lidongyang <506508008@qq.com> Date: Tue, 31 Mar 2026 13:07:14 +0800 Subject: [PATCH] =?UTF-8?q?fix[project]:=20=E6=B1=87=E6=80=BB=E6=9C=BA?= =?UTF-8?q?=E5=8F=B0=E7=9A=84=E5=AE=8C=E6=88=90=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/sdm/project/model/po/NodeAllBase.java | 6 +- .../service/impl/ProjectServiceImpl.java | 68 +++++++++---------- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/project/src/main/java/com/sdm/project/model/po/NodeAllBase.java b/project/src/main/java/com/sdm/project/model/po/NodeAllBase.java index d86161b9..371d5310 100644 --- a/project/src/main/java/com/sdm/project/model/po/NodeAllBase.java +++ b/project/src/main/java/com/sdm/project/model/po/NodeAllBase.java @@ -252,8 +252,8 @@ public class NodeAllBase extends BaseEntity { */ private String reportTemplateNames; -// private long finishTaskNum = 0; -// -// private long totalTaskNum = 0; + private long finishTaskNum = 0; + + private long totalTaskNum = 0; } 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 7a907b53..195f5cc6 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 @@ -680,7 +680,7 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { // 汇总任务进度、仿真负责人、执行人 for (ProjectNodePo projectNodePo : realTopProjectNodeList) { summaryWorkspaceNode(projectNodePo,projectNodePo.getChildren()); -// summaryMachineNode(projectNodePo,projectNodePo.getChildren()); + summaryMachineNode(projectNodePo,projectNodePo.getChildren()); } // 对工位进行排序,-M工位顺序排第一个 if (lyricFlag == 1) { @@ -769,39 +769,39 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { } } -// private void summaryMachineNode(ProjectNodePo projectNodePo,List children) { -// if (!NodeTypeEnum.MACHINE.getValue().equals(projectNodePo.getNodeType())) { -// List fChildren = projectNodePo.getChildren(); -// if (CollectionUtils.isEmpty(fChildren)) { -// return; -// } -// for (NodeAllBase fChild : fChildren) { -// if (!NodeTypeEnum.WORKSPACE.getValue().equals(fChild.getNodeType())) { -// summaryMachineNode((ProjectNodePo) fChild,fChild.getChildren()); -// } -// } -// } -// if (CollectionUtils.isEmpty(children)) { -// return; -// } -// List workspaceChildren = children.stream().filter(node -> NodeTypeEnum.WORKSPACE.getValue().equals(node.getNodeType())).toList(); -// if (CollectionUtils.isEmpty(workspaceChildren)) { -// return; -// } -// projectNodePo.setFinishTaskNum(projectNodePo.getFinishTaskNum() + workspaceChildren.stream().filter(node -> ObjectUtils.isNotEmpty(node.getFinishTaskNum())).mapToLong(NodeAllBase::getFinishTaskNum).sum()); -// projectNodePo.setTotalTaskNum(projectNodePo.getTotalTaskNum() + workspaceChildren.stream().filter(node -> ObjectUtils.isNotEmpty(node.getTotalTaskNum())).mapToLong(NodeAllBase::getTotalTaskNum).sum()); -// for (NodeAllBase child : children) { -// List eachChildren = child.getChildren(); -// if (CollectionUtils.isEmpty(eachChildren)) { -// continue; -// } -// List eachWorkspaceChildren = eachChildren.stream().filter(node -> NodeTypeEnum.WORKSPACE.getValue().equals(node.getNodeType())).toList(); -// if (CollectionUtils.isEmpty(eachWorkspaceChildren)) { -// continue; -// } -// summaryMachineNode(projectNodePo,eachWorkspaceChildren); -// } -// } + private void summaryMachineNode(ProjectNodePo projectNodePo,List children) { + if (!NodeTypeEnum.MACHINE.getValue().equals(projectNodePo.getNodeType())) { + List fChildren = projectNodePo.getChildren(); + if (CollectionUtils.isEmpty(fChildren)) { + return; + } + for (NodeAllBase fChild : fChildren) { + if (!NodeTypeEnum.WORKSPACE.getValue().equals(fChild.getNodeType()) && !NodeTypeEnum.TASK.getValue().equals(fChild.getNodeType()) && !NodeTypeEnum.PERFORMANCE.getValue().equals(fChild.getNodeType())) { + summaryMachineNode((ProjectNodePo) fChild,fChild.getChildren()); + } + } + } + if (CollectionUtils.isEmpty(children)) { + return; + } + List workspaceChildren = children.stream().filter(node -> NodeTypeEnum.WORKSPACE.getValue().equals(node.getNodeType())).toList(); + if (CollectionUtils.isEmpty(workspaceChildren)) { + return; + } + projectNodePo.setFinishTaskNum(projectNodePo.getFinishTaskNum() + workspaceChildren.stream().filter(node -> ObjectUtils.isNotEmpty(node.getFinishTaskNum())).mapToLong(NodeAllBase::getFinishTaskNum).sum()); + projectNodePo.setTotalTaskNum(projectNodePo.getTotalTaskNum() + workspaceChildren.stream().filter(node -> ObjectUtils.isNotEmpty(node.getTotalTaskNum())).mapToLong(NodeAllBase::getTotalTaskNum).sum()); + for (NodeAllBase child : children) { + List eachChildren = child.getChildren(); + if (CollectionUtils.isEmpty(eachChildren)) { + continue; + } + List eachWorkspaceChildren = eachChildren.stream().filter(node -> NodeTypeEnum.WORKSPACE.getValue().equals(node.getNodeType())).toList(); + if (CollectionUtils.isEmpty(eachWorkspaceChildren)) { + continue; + } + summaryMachineNode(projectNodePo,eachWorkspaceChildren); + } + } private void summaryWorkspaceNode(ProjectNodePo projectNodePo,List children) { if (!NodeTypeEnum.WORKSPACE.getValue().equals(projectNodePo.getNodeType())) {