# 对公余值覆盖字段实施记录

## 背景

对公新增流程需要在“贷款信息”分组补充“余值覆盖”开关，字段名为 `resCover`，提交到后端和模型调用时使用 `0/1` 值。

## 修改内容

1. 前端企业新增弹窗 `CorporateCreateDialog.vue`
   - 在“贷款信息”分组新增“余值覆盖”开关。
   - 表单默认值为 `false`。
   - 提交时转换为 `resCover: '1'` 或 `resCover: '0'`。

2. 后端字段链路
   - `CorporateLoanPricingCreateDTO` 增加 `resCover`。
   - `LoanPricingWorkflow` 增加 `resCover`，对应数据库字段 `res_cover`。
   - `LoanPricingConverter` 将 DTO 字段写入流程实体。
   - `ModelInvokeDTO` 增加 `resCover`。
   - `LoanPricingModelService` 在企业模型调用前将 `resCover` 归一化为 `0/1`。

3. 页面展示
   - 企业流程详情页展示“余值覆盖”。

4. SQL
   - 新增 `sql/add_res_cover_20260522.sql`。
   - 同步更新 `sql/loan_pricing_workflow.sql`、`sql/loan_pricing_schema_20260328.sql`、`sql/loan_pricing_prod_init_20260331.sql`。

## 验证结果

- 已执行前端字段静态断言：`npm run test:corporate-create-input-params`，通过。
- 已执行前端详情字段静态断言：`npm run test:corporate-display-fields`，通过。
- 已执行后端单测：`mvn -pl ruoyi-loan-pricing -am -Dtest=LoanPricingModelServiceTest,LoanPricingWorkflowServiceImplTest -Dsurefire.failIfNoSpecifiedTests=false test`，通过。
- 已执行后端打包：`mvn -pl ruoyi-admin -am -DskipTests package`，通过。
- 已执行开发库 SQL：`sql/add_res_cover_20260522.sql`，回查 `loan_pricing_workflow.res_cover` 为 `varchar(10)`。
- 已启动真实前端页面，通过浏览器打开企业新增弹窗，确认“贷款信息”分组中展示“余值覆盖”开关，且位置在“企业标识”分组之前。
- 已用临时后端端口发起企业创建接口，响应中 `resCover` 为 `1`，后端外部模型调用日志确认请求参数包含 `"resCover":"1"`。
- 接口验证产生的测试流程数据已清理，回查 `cust_isn = 'RES_COVER_TEST_20260522'` 的流程记录数为 `0`。
- 测试时启动的前端和临时后端进程已关闭。
