2.8 KiB
个人模型详情缺失展示字段补齐后端实施计划
For agentic workers: REQUIRED: Use superpowers:executing-plans to implement this plan in this repository. Do not use subagents. Steps use checkbox (
- [ ]) syntax for tracking.
Goal: 补齐个人模型输出对象与零售模型输出表结构的新增字段,确保个人详情接口可承载并持久化最新展示字段。
Architecture: 后端补齐 ModelRetailOutputFields 实体字段,并为 model_retail_output_fields 表增加 5 个对应列。保持现有控制器、服务与 Mapper 链路不变,让模型返回字段按既有流程直接反序列化、入库并回查。
Tech Stack: Java 17、Spring Boot、MyBatis Plus、Maven、JUnit 5
Task 1: 通过测试锁定缺失字段
Files:
-
Create:
ruoyi-loan-pricing/src/test/java/com/ruoyi/loanpricing/domain/entity/ModelRetailOutputFieldsTest.java -
Step 1: 编写实体字段断言测试
新增测试,断言 ModelRetailOutputFields 包含以下字段:
"loanRateHistory",
"minRateProduct",
"smoothRange",
"finalCalculateRate",
"referenceRate"
- Step 2: 运行测试并确认先失败
Run: mvn -pl ruoyi-loan-pricing -Dtest=ModelRetailOutputFieldsTest test
Expected: FAIL,提示缺少新增字段。
Task 2: 补齐个人模型输出实体字段
Files:
-
Modify:
ruoyi-loan-pricing/src/main/java/com/ruoyi/loanpricing/domain/entity/ModelRetailOutputFields.java -
Step 1: 在实体中新增 5 个字段
新增以下字段:
-
loanRateHistory -
minRateProduct -
smoothRange -
finalCalculateRate -
referenceRate -
Step 2: 保持现有命名与注释风格一致
新增字段使用与现有实体一致的 private String 定义和中文注释,不引入额外注解。
- Step 3: 重新运行测试确认通过
Run: mvn -pl ruoyi-loan-pricing -Dtest=ModelRetailOutputFieldsTest test
Expected: PASS
Task 3: 补齐零售模型输出表结构
Files:
-
Create:
sql/add_model_retail_output_rate_fields_20260403.sql -
Modify:
sql/model_retail.sql -
Modify:
sql/loan_pricing_schema_20260328.sql -
Modify:
sql/loan_pricing_prod_init_20260331.sql -
Step 1: 新增数据库迁移脚本
在迁移脚本中为 model_retail_output_fields 增加以下列:
-
loan_rate_history -
min_rate_product -
smooth_range -
final_calculate_rate -
reference_rate -
Step 2: 同步更新建表基线 SQL
将相同列同步到仓库中的零售模型输出表建表脚本,避免新环境继续缺列。
- Step 3: 对开发库执行迁移并验证列存在
Run: mysql ... < sql/add_model_retail_output_rate_fields_20260403.sql
Expected: 迁移执行成功,SHOW COLUMNS FROM model_retail_output_fields 可看到新增 5 列