Files
loan-pricing/openspec/changes/add-execute-rate-ui/tasks.md
2026-01-22 16:01:12 +08:00

3.2 KiB
Raw Blame History

实施任务

任务清单

  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
    • 操作: 添加 executeRateserialNum 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 在所有代码任务完成后执行

验收标准

  • API 方法 setExecuteRate 添加成功
  • 议价池组件添加 executeRateserialNum props
  • 议价池组件显示执行利率行
  • 未设定时显示"-"
  • 已设定时显示当前值
  • 编辑按钮切换到编辑模式
  • 输入框显示当前值
  • 提交按钮调用 API 成功
  • 提交成功后更新显示并显示成功提示
  • 取消按钮恢复显示模式
  • 输入验证正确工作
  • 详情页面正确传递 props