# 实施任务 ## 任务清单 1. **添加 API 方法** - 文件: `ruoyi-ui/src/api/loanPricing/workflow.js` - 操作: 添加 `setExecuteRate(serialNum, executeRate)` 方法 - 请求: `PUT /loanPricing/workflow/{serialNum}/executeRate` - 验证: 方法添加成功 2. **更新议价池组件 - Props** - 文件: `ruoyi-ui/src/views/loanPricing/workflow/components/BargainingPoolDisplay.vue` - 操作: 添加 `executeRate` 和 `serialNum` props - 验证: props 定义成功 3. **更新议价池组件 - UI** - 文件: `ruoyi-ui/src/views/loanPricing/workflow/components/BargainingPoolDisplay.vue` - 操作: 在 el-descriptions 中添加"执行利率"行,包含: - 显示模式: 显示当前执行利率值(若无则显示"-") - 编辑模式: 输入框 + 提交按钮 + 取消按钮 - 编辑按钮: 在显示模式下点击进入编辑模式 - 验证: UI 更新成功 4. **更新议价池组件 - 数据和逻辑** - 文件: `ruoyi-ui/src/views/loanPricing/workflow/components/BargainingPoolDisplay.vue` - 操作: - 添加 `isEditing` 状态变量 - 添加 `tempExecuteRate` 临时输入值 - 添加 `handleEdit` 方法进入编辑模式 - 添加 `handleSubmit` 方法调用 API 并处理响应 - 添加 `handleCancel` 方法取消编辑 - 添加输入验证(数字格式、范围检查) - 验证: 逻辑实现完整 5. **更新议价池组件 - API 调用** - 文件: `ruoyi-ui/src/views/loanPricing/workflow/components/BargainingPoolDisplay.vue` - 操作: 引入 `setExecuteRate` API 方法 - 验证: 引入成功 6. **更新详情页面 - 传递 Props** - 文件: `ruoyi-ui/src/views/loanPricing/workflow/detail.vue` - 操作: 在 BargainingPoolDisplay 组件上传递: - `:execute-rate="workflowDetail.executeRate"` - `:serial-num="workflowDetail.serialNum"` - `@execute-rate-updated="handleExecuteRateUpdated"` - 验证: props 传递正确 7. **前端功能验证** - 操作: - 启动前端服务 - 打开流程详情页面 - 测试首次设定执行利率 - 测试更新已设定的执行利率 - 测试输入验证 - 测试取消编辑 - 验证: - 未设定时显示"-" - 已设定时显示当前值 - 点击编辑按钮进入编辑模式 - 输入框显示当前值 - 提交成功后显示新值并显示成功提示 - 取消编辑恢复显示模式 - 输入非法值时显示错误提示 ## 依赖关系 - 任务 1 必须首先执行(API 方法) - 任务 2-5 依次执行(Props -> UI -> 数据逻辑 -> API 调用) - 任务 6 依赖任务 2 - 任务 7 在所有代码任务完成后执行 ## 验收标准 - [x] API 方法 `setExecuteRate` 添加成功 - [x] 议价池组件添加 `executeRate` 和 `serialNum` props - [x] 议价池组件显示执行利率行 - [x] 未设定时显示"-" - [x] 已设定时显示当前值 - [x] 编辑按钮切换到编辑模式 - [x] 输入框显示当前值 - [x] 提交按钮调用 API 成功 - [x] 提交成功后更新显示并显示成功提示 - [x] 取消按钮恢复显示模式 - [x] 输入验证正确工作 - [x] 详情页面正确传递 props