From c125061483f991691d10e3a7f8e70cac3ddf87eb Mon Sep 17 00:00:00 2001 From: zhuxinru Date: Mon, 9 Mar 2026 16:40:36 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BB=BF=E7=9C=9F=E7=AD=96=E5=88=92?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ProjectServiceImpl.java | 114 +++++++----------- 1 file changed, 42 insertions(+), 72 deletions(-) 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 d9d05866..2c177450 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 @@ -2730,86 +2730,56 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { return SdmResponse.failed("发起评审失败"); } } - // 不需要评审 直接升版 or 不升 - if (req.isBNewVersion()) { - // 构造查询任务树的入参 - ProjectTreeTagReq getTaskTreeReq = req.getTaskTreeReq; - SdmResponse beforeTreeResp = getTaskTree(getTaskTreeReq); - // 获取修改前的任务树 - String beforeContents = null; - if (beforeTreeResp.getData() != null) { - beforeContents = JSONObject.toJSONString(beforeTreeResp.getData()); - } - // 修改当前策划版本 - SdmResponse response = modify(req); - if (!response.isSuccess()) { - return response; - } else { - // 获取修改过后的任务树 - SdmResponse treeRespond = getTaskTree(getTaskTreeReq); - if (treeRespond.getData() != null) { - String viewContents = JSONObject.toJSONString(treeRespond.getData()); - List designVersions = simulationDesignVersionsService.lambdaQuery() - .eq(SimulationDesignVersions::getProjectId, req.getProjectNodeId()) - .eq(SimulationDesignVersions::getPhaseId, req.getPhaseNodeId()) - .list(); - if (CollectionUtils.isNotEmpty(designVersions)) { - // 根据最新版本升版 - SimulationDesignVersions latestVersion = designVersions.stream().sorted(Comparator.comparing(SimulationDesignVersions::getCreateTime).reversed()).collect(Collectors.toList()).get(0); - String newVersion = generateVersion(latestVersion.getCurrentVersion(), req.versionType); - SimulationDesignVersions newDesignVersion = new SimulationDesignVersions(); - newDesignVersion.setProjectId(req.getProjectNodeId()); - newDesignVersion.setPhaseId(req.getPhaseNodeId()); + // 不需要评审 直接升版 or 不升 + // 构造查询任务树的入参 + ProjectTreeTagReq getTaskTreeReq = req.getTaskTreeReq; + SdmResponse beforeTreeResp = getTaskTree(getTaskTreeReq); + // 获取修改前的任务树 + String beforeContents = null; + if (beforeTreeResp.getData() != null) { + beforeContents = JSONObject.toJSONString(beforeTreeResp.getData()); + } + + // 修改当前策划版本 + SdmResponse response = modify(req); + if (!response.isSuccess()) { + return response; + } else { + // 获取修改过后的任务树 + SdmResponse treeRespond = getTaskTree(getTaskTreeReq); + if (treeRespond.getData() != null) { + String viewContents = JSONObject.toJSONString(treeRespond.getData()); + List designVersions = simulationDesignVersionsService.lambdaQuery() + .eq(SimulationDesignVersions::getProjectId, req.getProjectNodeId()) + .eq(SimulationDesignVersions::getPhaseId, req.getPhaseNodeId()) + .list(); + if (CollectionUtils.isNotEmpty(designVersions)) { + // 根据最新版本升版 + SimulationDesignVersions latestVersion = designVersions.stream().sorted(Comparator.comparing(SimulationDesignVersions::getCreateTime).reversed()).collect(Collectors.toList()).get(0); + String newVersion = generateVersion(latestVersion.getCurrentVersion(), req.versionType); + + SimulationDesignVersions newDesignVersion = new SimulationDesignVersions(); + newDesignVersion.setProjectId(req.getProjectNodeId()); + newDesignVersion.setPhaseId(req.getPhaseNodeId()); + // 是否升版 + if (req.isBNewVersion()) { newDesignVersion.setCurrentVersion(newVersion); newDesignVersion.setParentVersion(latestVersion.getCurrentVersion()); - newDesignVersion.setCreator(userId); - newDesignVersion.setVersionContents(viewContents); - newDesignVersion.setBeforeContents(beforeContents); - newDesignVersion.setCidFlowId(req.getCidFlowId()); - simulationDesignVersionsService.save(newDesignVersion); } else { - addNewVersion(req.getProjectNodeId(), req.getPhaseNodeId(), "V1.0", viewContents, userId, req.getCidFlowId()); + newDesignVersion.setCurrentVersion(latestVersion.getCurrentVersion()); + newDesignVersion.setParentVersion(latestVersion.getParentVersion()); } + newDesignVersion.setCreator(userId); + newDesignVersion.setVersionContents(viewContents); + newDesignVersion.setBeforeContents(beforeContents); + newDesignVersion.setCidFlowId(req.getCidFlowId()); + simulationDesignVersionsService.save(newDesignVersion); } else { - return SdmResponse.failed("获取不到任务树"); + addNewVersion(req.getProjectNodeId(), req.getPhaseNodeId(), "V1.0", viewContents, userId, req.getCidFlowId()); } - } - } else { - // 构造查询任务树的入参 - ProjectTreeTagReq getTaskTreeReq = req.getTaskTreeReq; - SdmResponse beforeTreeResp = getTaskTree(getTaskTreeReq); - // 获取修改前的任务树 - String beforeContents = null; - if (beforeTreeResp.getData() != null) { - beforeContents = JSONObject.toJSONString(beforeTreeResp.getData()); - } - // 直接修改当前策划版本 - SdmResponse response = modify(req); - if (!response.isSuccess()) { - return response; } else { - // 获取修改过后的任务树 - SdmResponse treeRespond = getTaskTree(getTaskTreeReq); - if (treeRespond.getData() != null) { - String viewContents = JSONObject.toJSONString(treeRespond.getData()); - List designVersions = simulationDesignVersionsService.lambdaQuery() - .eq(SimulationDesignVersions::getProjectId, req.getProjectNodeId()) - .eq(SimulationDesignVersions::getPhaseId, req.getPhaseNodeId()) - .list(); - if (CollectionUtils.isNotEmpty(designVersions)) { - // 根据最新版本升版 - SimulationDesignVersions latestVersion = designVersions.stream().sorted(Comparator.comparing(SimulationDesignVersions::getCreateTime).reversed()).collect(Collectors.toList()).get(0); - SimulationDesignVersions newVersion = new SimulationDesignVersions(); - BeanUtils.copyProperties(latestVersion, newVersion); - newVersion.setVersionContents(viewContents); - newVersion.setBeforeContents(beforeContents); - newVersion.setCidFlowId(ObjectUtils.isNotEmpty(req.getCidFlowId()) ? req.getCidFlowId() : latestVersion.getCidFlowId()); - simulationDesignVersionsService.updateById(newVersion); - } else { - addNewVersion(req.getProjectNodeId(), req.getPhaseNodeId(),"V1.0", viewContents, userId, req.getCidFlowId()); - } - } + return SdmResponse.failed("获取不到任务树"); } } return SdmResponse.success();