anxin-ruoyi/.kiro/specs/bank-selection-logic-fix/tasks.md

4.4 KiB
Raw Permalink Blame History

实施计划: 银行选择逻辑优化

概述

通过重构前端组件和后端数据模型,实现银行选择逻辑的优化,消除用户在申请和提交阶段的重复操作,提升用户体验。

任务

  • 1. 数据库结构优化

    • 修改 service_period_loan 表结构,增加银行选择相关字段
    • 创建数据库迁移脚本
    • 需求: 1.2, 5.1, 5.2, 5.3
  • 2. 后端数据模型和服务层修改

    • 2.1 更新 ServicePeriodLoan 实体类

      • 增加 submitComments、bankSelectedTime、bankSelectionHistory 等字段
      • 更新字段映射和验证注解
      • 需求: 1.2, 5.1
    • * 2.2 编写 ServicePeriodLoan 实体类属性测试

      • 属性 5: 修改操作幂等性
      • 验证: 需求 2.4, 2.5
    • 2.3 修改 ServicePeriodLoanService 接口和实现

      • 增加 createLoanWithBankSelection 方法
      • 增加 quickSubmitToBank 方法
      • 修改现有的更新方法以支持银行选择历史
      • 需求: 1.1, 1.2, 4.2, 4.3
    • * 2.4 编写服务层单元测试

      • 测试银行选择保存逻辑
      • 测试一键提交功能
      • 测试变更历史记录
      • 需求: 1.2, 4.2, 5.3
  • 3. 后端控制器层修改

    • 3.1 修改 ServicePeriodLoanController

      • 修改贷款申请接口以支持银行选择
      • 新增一键提交接口
      • 修改查询接口以返回银行选择状态
      • 需求: 1.1, 1.5, 4.1, 4.2
    • * 3.2 编写控制器集成测试

      • 测试完整的申请流程
      • 测试一键提交流程
      • 测试错误处理机制
      • 需求: 1.5, 4.2, 4.5
  • 4. 检查点 - 确保后端功能正常

    • 确保所有测试通过,如有问题请询问用户
  • 5. 前端数据模型和状态管理优化

    • 5.1 修改 LoanManagement.vue 数据模型

      • 扩展 loanApplicationForm 以包含银行选择和提交说明
      • 简化 detailSubmitForm 数据结构
      • 增加银行选择状态计算函数
      • 需求: 1.1, 1.2, 3.1, 3.2, 3.3
    • * 5.2 编写前端状态管理属性测试

      • 属性 3: 状态显示准确性
      • 验证: 需求 3.1, 3.2, 3.3, 3.4, 3.5
  • 6. 前端界面和交互优化

    • 6.1 重构贷款申请对话框

      • 在银行选择表格后增加提交说明输入框
      • 调整表单验证规则
      • 优化银行选择确认流程
      • 需求: 1.1, 1.3
    • 6.2 优化贷款详情页面

      • 显示已选择的银行信息和提交说明
      • 简化提交操作为一键提交
      • 增加银行选择修改功能
      • 需求: 1.3, 1.4, 2.1, 2.2, 4.1
    • 6.3 增强贷款列表显示

      • 显示银行选择状态
      • 优化操作按钮逻辑
      • 增加一键提交按钮
      • 需求: 3.1, 3.4, 3.5, 4.1
  • * 6.4 编写前端交互属性测试

    • 属性 1: 银行选择一致性
    • 属性 2: 提交说明保持性
    • 验证: 需求 1.2, 1.5, 2.4
  • 7. 业务逻辑集成和优化

    • 7.1 实现一键提交功能

      • 集成前后端一键提交逻辑
      • 实现提交前的数据验证
      • 处理提交成功和失败的状态更新
      • 需求: 4.1, 4.2, 4.3, 4.4, 4.5
    • 7.2 实现银行选择修改功能

      • 允许用户在待提交状态下修改银行选择
      • 重新计算相关的利率和还款信息
      • 记录银行选择变更历史
      • 需求: 2.1, 2.2, 2.3, 2.4, 5.1, 5.2
    • * 7.3 编写业务逻辑属性测试

      • 属性 4: 一键提交条件
      • 属性 6: 变更历史完整性
      • 验证: 需求 4.1, 4.2, 5.1, 5.2, 5.3
  • 8. 错误处理和用户体验优化

    • 8.1 实现错误处理机制

      • 银行信息缺失的友好提示
      • 网络错误的重试机制
      • 数据不一致的自动修复
      • 需求: 设计文档错误处理部分
    • 8.2 优化用户提示和反馈

      • 改进成功和错误消息的显示
      • 增加操作确认对话框
      • 优化加载状态显示
      • 需求: 用户体验相关
  • * 8.3 编写错误处理单元测试

    • 测试各种错误场景的处理
    • 测试用户提示的准确性
    • 测试数据恢复机制
    • 需求: 错误处理相关
  • 9. 最终检查点 - 确保所有功能正常

    • 确保所有测试通过,验证用户体验改进效果

注意事项

  • 标记为 * 的任务为可选任务可以跳过以加快MVP开发
  • 每个任务都引用了具体的需求条目以确保可追溯性
  • 检查点任务确保增量验证和及时发现问题
  • 属性测试验证系统的正确性保证