2.7 KiB
2.7 KiB
模型参数阈值更新接口优化设计
1. 背景
当前 ModelParamSaveDTO 存在参数冗余问题:
- 外层包含不必要的
modelName字段 - 内层
ParamItem包含 6 个字段,但 Service 层只使用paramCode和paramValue - 前端请求体包含大量无用字段,增加网络传输开销
2. 优化目标
- 简化 DTO 结构,减少冗余字段
- 减少前端请求数据量
- 提升代码可读性
3. 设计方案
3.1 后端 DTO 简化
文件: ccdi-project/src/main/java/com/ruoyi/ccdi/project/domain/dto/ModelParamSaveDTO.java
改动:
- 移除
modelName字段 - 将内部类
ParamItem重命名为ParamValueItem - 内部类只保留
paramCode和paramValue两个字段
优化后结构:
@Data
public class ModelParamSaveDTO {
private Long projectId;
@NotBlank(message = "模型编码不能为空")
private String modelCode;
@NotNull(message = "参数列表不能为空")
private List<ParamValueItem> params;
@Data
public static class ParamValueItem {
@NotBlank(message = "参数编码不能为空")
private String paramCode;
@NotBlank(message = "参数值不能为空")
private String paramValue;
}
}
3.2 Service 层微调
文件: ccdi-project/src/main/java/com/ruoyi/ccdi/project/service/impl/CcdiModelParamServiceImpl.java
改动: 更新循环中的类型引用
// 改动前
for (ModelParamSaveDTO.ParamItem item : saveDTO.getParams())
// 改动后
for (ModelParamSaveDTO.ParamValueItem item : saveDTO.getParams())
3.3 前端请求简化
文件: ruoyi-ui/src/views/ccdi/modelParam/index.vue
改动: 简化 handleSave 方法中的请求参数
优化后:
const saveDTO = {
projectId: this.queryParams.projectId,
modelCode: this.queryParams.modelCode,
params: modifiedParams.map((item) => ({
paramCode: item.paramCode,
paramValue: item.paramValue,
})),
};
4. 改动文件清单
| 文件 | 改动类型 |
|---|---|
ModelParamSaveDTO.java |
简化字段 |
CcdiModelParamServiceImpl.java |
类型引用更新 |
index.vue |
请求参数简化 |
5. 优化效果
| 指标 | 优化前 | 优化后 |
|---|---|---|
| DTO 外层字段数 | 3 | 2 |
| DTO 内层字段数 | 6 | 2 |
| 前端请求体字段数 | 8 | 4 |
6. 风险评估
- 风险等级: 低
- 向后兼容: 是(后端忽略多余字段)
- 测试要求: 验证保存功能正常
创建日期: 2026-02-26