diff --git a/1-sql/2026-02-26/simulation_design_versions.sql b/1-sql/2026-02-26/simulation_design_versions.sql new file mode 100644 index 00000000..63ae7546 --- /dev/null +++ b/1-sql/2026-02-26/simulation_design_versions.sql @@ -0,0 +1 @@ +ALTER TABLE spdm_baseline.simulation_design_versions ADD beforeContents longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '上个版本内容(JSON字符串)'; diff --git a/capability/src/main/java/com/sdm/capability/controller/ReportTemplateController.java b/capability/src/main/java/com/sdm/capability/controller/ReportTemplateController.java index 56301abb..5e2013d8 100644 --- a/capability/src/main/java/com/sdm/capability/controller/ReportTemplateController.java +++ b/capability/src/main/java/com/sdm/capability/controller/ReportTemplateController.java @@ -80,7 +80,7 @@ public class ReportTemplateController implements ISimulationReportFeignClient { } /** - * 设置流程模版启用状态 + * 设置报告模版启用状态 * @param uuid * @param status * @return @@ -91,7 +91,7 @@ public class ReportTemplateController implements ISimulationReportFeignClient { } /** - * 通过UUID获取流程模版详情 + * 通过UUID获取报告模版详情 * @param uuid * @return */ diff --git a/project/src/main/java/com/sdm/project/model/entity/SimulationDesignVersions.java b/project/src/main/java/com/sdm/project/model/entity/SimulationDesignVersions.java index ee2dc445..f7fd5f29 100644 --- a/project/src/main/java/com/sdm/project/model/entity/SimulationDesignVersions.java +++ b/project/src/main/java/com/sdm/project/model/entity/SimulationDesignVersions.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; @@ -48,10 +49,18 @@ public class SimulationDesignVersions implements Serializable { @TableField("versionContents") private String versionContents; + @ApiModelProperty(value = "上个版本内容(JSON字符串)") + @TableField("beforeContents") + private String beforeContents; + @ApiModelProperty(value = "创建者") @TableField("creator") private Long creator; + @Schema(description= "创建者名称,列表展示使用") + @TableField(value = "creatorName", insertStrategy = FieldStrategy.NEVER,select = false,updateStrategy = FieldStrategy.NEVER) + private String creatorName; + @ApiModelProperty(value = "创建时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @TableField(value = "createTime", insertStrategy = FieldStrategy.NEVER, updateStrategy = FieldStrategy.NEVER) 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 9991152c..3c8d1312 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 @@ -2567,12 +2567,21 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { } // 不需要评审 直接升版 or 不升 if (req.isBNewVersion()) { + // 构造查询任务树的入参 + ProjectTreeTagReq getTaskTreeReq = ProjectTreeTagReq.buildForProjectAndPhase(req.getProjectNodeId(), req.getPhaseNodeId()); + setTagMap(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 { - ProjectTreeTagReq getTaskTreeReq = ProjectTreeTagReq.buildForProjectAndPhase(req.getProjectNodeId(), req.getPhaseNodeId()); - setTagMap(getTaskTreeReq); + // 获取修改过后的任务树 SdmResponse treeRespond = getTaskTree(getTaskTreeReq); if (treeRespond.getData() != null) { String viewContents = JSONObject.toJSONString(treeRespond.getData()); @@ -2589,6 +2598,7 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { newDesignVersion.setParentVersion(latestVersion.getCurrentVersion()); newDesignVersion.setCreator(userId); newDesignVersion.setVersionContents(viewContents); + newDesignVersion.setBeforeContents(beforeContents); simulationDesignVersionsService.save(newDesignVersion); } else { addNewVersion(req.getProjectNodeId(), req.getPhaseNodeId(), "V1.0", viewContents, userId); @@ -2598,13 +2608,21 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { } } } else { + // 构造查询任务树的入参 + ProjectTreeTagReq getTaskTreeReq = ProjectTreeTagReq.buildForProjectAndPhase(req.getProjectNodeId(), req.getPhaseNodeId()); + setTagMap(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 { - ProjectTreeTagReq getTaskTreeReq = ProjectTreeTagReq.buildForProjectAndPhase(req.getProjectNodeId(), req.getPhaseNodeId()); - setTagMap(getTaskTreeReq); + // 获取修改过后的任务树 SdmResponse treeRespond = getTaskTree(getTaskTreeReq); if (treeRespond.getData() != null) { String viewContents = JSONObject.toJSONString(treeRespond.getData()); @@ -2614,6 +2632,7 @@ public class ProjectServiceImpl extends BaseService implements IProjectService { .eq(SimulationDesignVersions::getPhaseId, req.getPhaseNodeId()) .eq(SimulationDesignVersions::getCurrentVersion, req.getCurrentVersion()) .set(SimulationDesignVersions::getVersionContents, viewContents) + .set(SimulationDesignVersions::getBeforeContents, beforeContents) .update(); } else { addNewVersion(req.getProjectNodeId(), req.getPhaseNodeId(),"V1.0", viewContents, userId); 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 357f9183..053899fb 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 @@ -927,6 +927,7 @@ public class SimulationRunServiceImpl extends ServiceImpl>> sdmResponse = queryRunDir(queryDirReq); if (sdmResponse.getData() != null) { List fileMetadataInfoRespList = sdmResponse.getData().getData();