From e75abff0e743fe1c83abeb64f2fe562bbf9ba07c Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 03 三月 2025 11:32:01 +0800
Subject: [PATCH] bug

---
 business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java |   24 +++++++++++++++---------
 1 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
index 1ad1628..4b71e9a 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
@@ -19,9 +19,7 @@
 import com.ycl.domain.entity.*;
 import com.ycl.domain.form.*;
 import com.ycl.domain.json.*;
-import com.ycl.domain.vo.CustomerTaskVO;
-import com.ycl.domain.vo.IndexCustomerTaskVO;
-import com.ycl.domain.vo.ProjectProcessDetailVO;
+import com.ycl.domain.vo.*;
 import com.ycl.event.event.TaskLogEvent;
 import com.ycl.mapper.ProjectEngineeringMapper;
 import com.ycl.mapper.ProjectInfoMapper;
@@ -29,13 +27,13 @@
 import com.ycl.service.*;
 import com.ycl.common.base.Result;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ycl.domain.vo.ProjectProcessVO;
 import com.ycl.domain.query.ProjectProcessQuery;
 import com.ycl.service.common.TaskCommonService;
 import com.ycl.system.service.ISysDeptService;
 import com.ycl.system.service.ISysDictTypeService;
 import com.ycl.system.service.ISysRoleService;
 import com.ycl.system.service.ISysUserService;
+import com.ycl.utils.TreeUtil;
 import lombok.Synchronized;
 import org.apache.commons.lang3.StringUtils;
 import org.flowable.bpmn.model.*;
@@ -104,8 +102,20 @@
         IPage<ProjectProcessVO> page = PageUtil.getPage(query, ProjectProcessVO.class);
         baseMapper.getPage(query, page);
         for (ProjectProcessVO vo : page.getRecords()) {
+            List<ProjectEngineeringVO> childList = baseMapper.getEngineeringList(vo.getId());
+            childList.stream().forEach(child -> {
+                if (StringUtils.isNotBlank(child.getProcessDefId())) {
+                    ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(child.getProcessDefId()).singleResult();
+                    if (Objects.nonNull(processDefinition)) {
+                        child.setSuspended(processDefinition.isSuspended());
+                        child.setFlowableProcessName(processDefinition.getName() + "(v" + processDefinition.getVersion() + ")");
+                        child.setDeployId(processDefinition.getDeploymentId());
+                    }
+                }
+            });
+            vo.setChildren(TreeUtil.treeForProjectEng(childList));
             vo.setStatus(vo.getProjectStatus());
-            if (Objects.nonNull(vo.getProcessDefId())) {
+            if (StringUtils.isNotBlank(vo.getProcessDefId())) {
                 ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(vo.getProcessDefId()).singleResult();
                 if (Objects.nonNull(processDefinition)) {
                     vo.setSuspended(processDefinition.isSuspended());
@@ -146,7 +156,6 @@
         Long unitId = null;
         if (ProjectProcessTypeEnum.PROJECT.equals(form.getProjectType())) {
             ProjectInfo project = new LambdaQueryChainWrapper<>(projectInfoMapper)
-                    .select(ProjectInfo::getProjectOwnerUnit)
                     .eq(ProjectInfo::getId, form.getProjectId())
                     .one();
             if (Objects.isNull(project)) {
@@ -155,7 +164,6 @@
             unitId = project.getProjectOwnerUnit();
         } else if (ProjectProcessTypeEnum.ENGINEERING.equals(form.getProjectType())) {
             ProjectEngineering projectEngineering = new LambdaQueryChainWrapper<>(projectEngineeringMapper)
-                    .select(ProjectEngineering::getDepartment)
                     .eq(ProjectEngineering::getId, form.getProjectId())
                     .one();
             if (Objects.isNull(projectEngineering)) {
@@ -186,7 +194,6 @@
         Long unitId = null;
         if (ProjectProcessTypeEnum.PROJECT.equals(form.getProjectType())) {
             ProjectInfo project = new LambdaQueryChainWrapper<>(projectInfoMapper)
-                    .select(ProjectInfo::getProjectOwnerUnit)
                     .eq(ProjectInfo::getId, form.getProjectId())
                     .one();
             if (Objects.isNull(project)) {
@@ -195,7 +202,6 @@
             unitId = project.getProjectOwnerUnit();
         } else if (ProjectProcessTypeEnum.ENGINEERING.equals(form.getProjectType())) {
             ProjectEngineering projectEngineering = new LambdaQueryChainWrapper<>(projectEngineeringMapper)
-                    .select(ProjectEngineering::getDepartment)
                     .eq(ProjectEngineering::getId, form.getProjectId())
                     .one();
             if (Objects.isNull(projectEngineering)) {

--
Gitblit v1.8.0