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

85 lines
2.8 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.
# 个人模型详情缺失展示字段补齐后端实施计划
> **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` 包含以下字段:
```java
"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 列