Files
loan-pricing/doc/implementation-report-2026-04-03-retail-display-fields.md
2026-04-03 10:47:16 +08:00

73 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 个人模型详情缺失展示字段补齐实施记录
## 实施时间
- 2026-04-03
## 修改内容
- 补齐个人详情页“业务信息”中的 `借款期限`
- 补齐个人模型输出“测算结果”中的 5 个字段:
- `历史利率`
- `产品最低利率下限`
- `平滑幅度`
- `最终测算利率`
- `参考利率`
- 在后端 `ModelRetailOutputFields` 中新增对应 5 个字段定义
- 在零售模型 mock 数据中补齐对应 5 个字段样例值
- 新增零售模型输出表结构迁移脚本,并同步更新建表基线 SQL
- 新增后端字段断言测试与前端源码断言脚本
## 修改文件
- `ruoyi-loan-pricing/src/main/java/com/ruoyi/loanpricing/domain/entity/ModelRetailOutputFields.java`
- `ruoyi-loan-pricing/src/main/resources/data/retail_output.json`
- `ruoyi-loan-pricing/src/test/java/com/ruoyi/loanpricing/domain/entity/ModelRetailOutputFieldsTest.java`
- `ruoyi-ui/src/views/loanPricing/workflow/components/PersonalWorkflowDetail.vue`
- `ruoyi-ui/src/views/loanPricing/workflow/components/ModelOutputDisplay.vue`
- `ruoyi-ui/tests/retail-display-fields.test.js`
- `ruoyi-ui/package.json`
- `sql/add_model_retail_output_rate_fields_20260403.sql`
- `sql/model_retail.sql`
- `sql/loan_pricing_schema_20260328.sql`
- `sql/loan_pricing_prod_init_20260331.sql`
- `doc/2026-04-03-retail-display-fields-design.md`
- `doc/2026-04-03-retail-display-fields-backend-plan.md`
- `doc/2026-04-03-retail-display-fields-frontend-plan.md`
- `doc/implementation-report-2026-04-03-retail-display-fields.md`
## 验证方式
1. 新增后端测试,断言 `ModelRetailOutputFields` 包含 5 个新增字段,先失败后通过
2. 新增前端源码断言脚本,断言个人详情页与模型输出页已补齐字段,先失败后通过
3. 执行前端生产构建,确认页面代码可正常打包
4. 检查开发库 `model_retail_output_fields` 表结构,确认最初缺少 5 个新列
5. 执行 `sql/add_model_retail_output_rate_fields_20260403.sql` 到开发库,并再次确认 5 个新列存在
6. 重新编译并重启后端,确保新的实体字段已进入运行中的 SQL 映射
7. 创建新的个人流程 `20260403100514909`,调用详情接口确认返回以下真实值:
- `loanRateHistory = 6.40`
- `minRateProduct = 5.50`
- `smoothRange = -0.10`
- `finalCalculateRate = 6.05`
- `referenceRate = 5.95`
8. 启动前端开发服务并使用浏览器自动化打开详情页,确认:
- 页面出现 `借款期限`
- 切换到“测算结果”页签后5 个新增字段及对应值均可见
9. 验证结束后,停止本次启动的前后端进程
## 验证结果
- `mvn -pl ruoyi-loan-pricing -Dtest=ModelRetailOutputFieldsTest test` 首次失败,补齐后通过
- `npm --prefix ruoyi-ui run test:retail-display-fields` 首次失败,补齐后通过
- `npm --prefix ruoyi-ui run build:prod` 成功,输出包含 `Build complete.`
- 已确认开发库 `model_retail_output_fields` 初始缺少:
- `loan_rate_history`
- `min_rate_product`
- `smooth_range`
- `final_calculate_rate`
- `reference_rate`
- 已执行迁移脚本并确认以上 5 列存在
- 已确认旧后端进程因未加载最新依赖导致 SQL 仍缺新列,重编译并重启后问题消失
- 已创建个人流程 `20260403100514909` 并通过详情接口拿到 5 个新增字段的真实值
- 已通过浏览器自动化确认个人详情页展示位与“测算结果”页签展示均正确
- 本次验证期间启动的前后端进程均已停止
## 说明
- `loanTerm` 本次仅补齐详情页展示位;个人创建表单当前无该字段录入入口,不属于本次“模型返回字段更新”范围
- 为保证新字段在新环境中也可正常落库,本次同步更新了零售模型输出表的建表基线 SQL