ETest-Vue-FastAPI/.kiro/specs/workorder-to-order-refactor/tasks.md

3.3 KiB
Raw Blame History

实施计划

  • 1. 数据库迁移

    • 在 test_order 表添加 work_order_ids 字段TEXT类型存储JSON数组
    • 在 work_order 表添加 order_id 字段INTEGER类型
    • 创建数据库迁移脚本
    • 需求: 3.5, 4.1
  • 2. 订单页面改为只读模式

    • 隐藏订单列表页面的"新增"按钮
    • 隐藏订单列表页面的"修改"按钮
    • 隐藏订单列表页面的"删除"按钮
    • 隐藏订单列表页面的"生成工单"按钮
    • 保留"查看"、"导出"、"打印"功能
    • 需求: 1.1, 1.2, 1.3, 1.4
  • 3. 订单页面添加关联工单显示

    • 在订单列表添加"工单数量"列
    • 在订单详情页添加"关联工单"区域
    • 显示关联工单列表(工单号、样品、状态)
    • 添加工单链接,点击跳转到工单详情
    • 需求: 4.2, 4.3, 4.4
  • 4. 后端:添加订单查询关联工单接口

    • 创建 GET /test_order/{order_id}/work_orders 接口
    • 根据订单ID查询关联的工单列表
    • 返回工单详细信息
    • 需求: 4.2
  • 5. 工单页面添加多选功能

    • 在工单列表添加复选框列
    • 实现全选/取消全选功能
    • 记录选中的工单ID列表
    • 根据选中状态启用/禁用"生成订单"按钮
    • 需求: 2.3, 2.4
  • 6. 工单页面添加"生成订单"按钮

    • 在工单列表操作栏添加"生成订单"按钮
    • 未选中工单时禁用按钮
    • 选中工单后启用按钮
    • 点击按钮显示订单生成对话框
    • 需求: 2.3, 3.1
  • 7. 实现订单生成对话框

    • 创建订单生成对话框组件
    • 显示选中的工单列表
    • 验证工单是否属于同一客户
    • 检查工单是否已关联订单
    • 显示警告信息(如有)
    • 提供确认和取消按钮
    • 需求: 2.5, 3.1
  • 8. 后端:实现从工单生成订单接口

    • 创建 POST /work_order/generate_order 接口
    • 接收工单ID列表
    • 验证工单有效性(存在、同一客户、未关联订单)
    • 创建新订单记录
    • 在订单中记录work_order_ids
    • 更新工单的order_id字段
    • 返回新订单ID
    • 需求: 3.2, 3.3, 3.5
  • 9. 前端:处理订单生成响应

    • 接收后端返回的订单ID
    • 显示成功提示
    • 跳转到订单详情页
    • 刷新工单列表
    • 处理错误情况并显示错误信息
    • 需求: 3.3, 3.4
  • 10. 调整样品生成工单功能

    • 移除样品生成工单后自动生成订单的代码
    • 修改成功提示文案(仅提示工单创建成功)
    • 移除订单相关的返回数据
    • 需求: 5.4, 5.5
  • 11. 后端:移除样品生成工单中的订单创建逻辑

    • 找到样品生成工单的service方法
    • 移除创建订单的代码
    • 仅保留创建工单的逻辑
    • 更新返回数据结构
    • 需求: 5.4
  • 12. 更新订单导出功能

    • 在导出数据中包含关联工单信息
    • 添加工单数量列
    • 添加工单号列表列
    • 需求: 4.5
  • 13. 测试和验证

    • 测试订单页面只读模式
    • 测试工单批量选择功能
    • 测试从工单生成订单流程
    • 测试样品生成工单不再生成订单
    • 测试订单显示关联工单
    • 测试边界情况(重复生成、不同客户)
    • 需求: 所有需求
  • 14. 检查点 - 确保所有功能正常

    • 确保所有功能正常,如有问题请询问用户