# Personal Pricing Collateral Optional Frontend Implementation Plan > **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:** 维持现有个人新增弹窗的数据结构、字段名称和提交报文不变,只移除前端表单对 `collType` 的必填限制。通过前端源码断言测试和页面联调共同验证“字段可空提交”的行为,避免扩大到企业流程或后端接口。 **Tech Stack:** Vue 2、Element UI、npm、Node.js 断言脚本 --- ### Task 1: 固化个人新增流程“抵质押类型非必填”的前端测试 **Files:** - Modify: `ruoyi-ui/tests/personal-create-input-params.test.js` - Inspect: `ruoyi-ui/src/views/loanPricing/workflow/components/PersonalCreateDialog.vue` - [ ] **Step 1: 核对当前个人新增弹窗中的 `collType` 规则** Run: `sed -n '150,220p' ruoyi-ui/src/views/loanPricing/workflow/components/PersonalCreateDialog.vue` Expected: 能看到 `rules.collType` 里仍有 `required: true`。 - [ ] **Step 2: 先写失败断言** 在 `ruoyi-ui/tests/personal-create-input-params.test.js` 中增加断言,明确个人新增弹窗不应再包含: ```js required: true, message: "请选择抵质押类型" ``` - [ ] **Step 3: 运行测试确认红灯** Run: `npm --prefix ruoyi-ui run test:personal-create-input-params` Expected: FAIL,提示个人新增弹窗仍将抵质押类型设为必填。 ### Task 2: 移除个人新增弹窗中 `collType` 的必填限制 **Files:** - Modify: `ruoyi-ui/src/views/loanPricing/workflow/components/PersonalCreateDialog.vue` - [ ] **Step 1: 删除 `collType` 的必填校验** 把: ```js collType: [ {required: true, message: "请选择抵质押类型", trigger: "change"} ] ``` 移除,使个人表单规则中不再声明 `collType` 为必填。 - [ ] **Step 2: 保持其它字段与提交逻辑不变** 确认以下内容不改动: ```js collType: undefined, collThirdParty: false ``` 以及提交时的: ```js collThirdParty: this.form.collThirdParty ? '1' : '0' ``` - [ ] **Step 3: 重新运行测试确认转绿** Run: `npm --prefix ruoyi-ui run test:personal-create-input-params` Expected: PASS,输出包含 `personal create input params assertions passed`。 ### Task 3: 页面联调并补实施记录 **Files:** - Create: `docs/implementation-reports/2026-04-10-personal-pricing-collateral-optional-frontend.md` - [ ] **Step 1: 启动前端页面** Run: `npm --prefix ruoyi-ui run dev` Expected: 前端本地开发服务启动成功,可访问新增个人利率定价流程页面。 - [ ] **Step 2: 浏览器确认页面行为** 联调确认: - 个人新增弹窗“抵质押类型”字段可为空 - 不选择“抵质押类型”时其余必填项填完整仍可点击提交 - 企业新增弹窗规则不受影响 - [ ] **Step 3: 停止本次测试启动的前端进程** Run: `ps -ef | rg 'vue-cli-service serve|npm --prefix ruoyi-ui run dev'` Expected: 仅停止本次联调启动的前端进程。 - [ ] **Step 4: 编写实施记录** 实施记录至少包含: ```markdown - 本次仅调整个人利率定价新增流程 - 个人新增弹窗已移除抵质押类型必填校验 - 企业新增流程未改动 - 已执行前端断言测试与页面联调验证 ``` - [ ] **Step 5: 核对实施记录保存路径** Run: `ls docs/implementation-reports/2026-04-10-personal-pricing-collateral-optional-frontend.md` Expected: 文件位于仓库 `docs/implementation-reports` 目录。