fix:仿真策划版本记录

This commit is contained in:
2026-02-27 17:37:29 +08:00
parent 28194b816c
commit 97b37473d8
5 changed files with 37 additions and 7 deletions

View File

@@ -0,0 +1 @@
ALTER TABLE spdm_baseline.simulation_design_versions ADD beforeContents longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '上个版本内容JSON字符串';

View File

@@ -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
*/

View File

@@ -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)

View File

@@ -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);

View File

@@ -927,6 +927,7 @@ public class SimulationRunServiceImpl extends ServiceImpl<SimulationRunMapper, S
// 外围调用不关心dirId只传keyResultType-关键结果类型所以需要根据算例id和keyResultType获取到上传到哪个结果目录下
if (req.getDirId() == null) {
setDirId(req);
log.info("[addSimulationKeyResult] keyResultType:{},dirId:{}", req.getKeyResultType(), req.getDirId());
}
// 上传文件
if (req.getFile() != null) {
@@ -1314,7 +1315,7 @@ public class SimulationRunServiceImpl extends ServiceImpl<SimulationRunMapper, S
QueryDirReq queryDirReq = new QueryDirReq();
queryDirReq.setUuid(req.getRunId());
queryDirReq.setCurrent(1);
queryDirReq.setSize(10);
queryDirReq.setSize(100);
SdmResponse<PageDataResp<List<FileMetadataInfoResp>>> sdmResponse = queryRunDir(queryDirReq);
if (sdmResponse.getData() != null) {
List<FileMetadataInfoResp> fileMetadataInfoRespList = sdmResponse.getData().getData();