HaniBlindBox/.kiro/specs/order-management-frontend/requirements.md
2026-01-17 20:21:30 +08:00

8.8 KiB
Raw Blame History

Requirements Document

Introduction

本文档定义了订单管理模块前端迁移的需求规范。该模块将从老项目PHP ThinkPHP + Layui迁移到新项目ASP.NET Core + Vue 3 + Element Plus。订单管理模块是后台管理系统的核心业务模块之一包含购买订单、发货订单、回收订单、卡单订单等多种订单类型的管理功能。

Glossary

  • Order_System: 订单管理系统,负责处理所有订单相关的业务逻辑
  • Buy_Order: 购买订单,用户购买抽奖的订单记录
  • Shipping_Order: 发货订单,用户申请发货的订单
  • Recovery_Order: 回收订单,用户回收奖品的订单
  • Stuck_Order: 卡单订单,支付成功但未发奖的异常订单
  • Order_List_Page: 订单列表页面,展示订单数据的主页面
  • Order_Detail_Dialog: 订单详情弹窗,展示订单详细信息
  • Shipping_Dialog: 发货弹窗,填写物流信息进行发货
  • Search_Form: 搜索表单组件,提供订单筛选功能
  • Order_Table: 订单表格组件,展示订单列表数据
  • API_Module: 前端API模块封装后端接口调用

Requirements

Requirement 1: 购买订单列表

User Story: As a 运营人员, I want to 查看用户购买抽奖的订单记录, so that I can 了解用户消费情况和订单状态。

Acceptance Criteria

  1. WHEN 运营人员访问购买订单页面 THEN THE Order_System SHALL 显示购买订单列表,包含用户信息、订单号、盒子信息、金额详情、时间等字段
  2. WHEN 运营人员输入搜索条件用户ID/UID、手机号、订单号、时间范围 THEN THE Order_System SHALL 根据条件筛选并返回匹配的订单列表
  3. WHEN 订单列表数据量较大 THEN THE Order_System SHALL 支持分页展示,每页显示可配置数量的记录
  4. WHEN 运营人员点击订单详情按钮 THEN THE Order_System SHALL 打开订单详情弹窗,显示订单中奖奖品明细
  5. WHEN 运营人员点击导出按钮 THEN THE Order_System SHALL 导出当前筛选条件下的订单数据为CSV文件

Requirement 2: 购买订单详情

User Story: As a 运营人员, I want to 查看订单的中奖奖品明细, so that I can 了解用户抽奖结果。

Acceptance Criteria

  1. WHEN 运营人员打开订单详情弹窗 THEN THE Order_System SHALL 显示订单基本信息(订单号、用户信息、盒子信息、支付金额)
  2. WHEN 订单包含多个奖品 THEN THE Order_System SHALL 按奖品类型分组展示,显示奖品图片、名称、价值、兑换价值、数量
  3. WHEN 奖品有不同状态(待处理/已回收/已发货) THEN THE Order_System SHALL 用不同颜色或标签区分显示

Requirement 3: 卡单订单列表

User Story: As a 运营人员, I want to 查看支付成功但未发奖的订单, so that I can 及时处理异常订单。

Acceptance Criteria

  1. WHEN 运营人员访问卡单订单页面 THEN THE Order_System SHALL 显示所有卡单订单列表
  2. WHEN 运营人员输入搜索条件 THEN THE Order_System SHALL 根据条件筛选卡单订单
  3. WHEN 卡单订单列表为空 THEN THE Order_System SHALL 显示空状态提示

Requirement 4: 发货订单列表

User Story: As a 运营人员, I want to 管理用户申请发货的订单, so that I can 处理发货流程。

Acceptance Criteria

  1. WHEN 运营人员访问发货订单页面 THEN THE Order_System SHALL 显示发货订单列表,包含用户信息、订单号、发货数量、总价格、运费、收货信息、订单状态、申请时间、备注
  2. WHEN 运营人员输入搜索条件用户ID/UID、手机号、订单号、状态、申请时间范围 THEN THE Order_System SHALL 根据条件筛选发货订单
  3. WHEN 发货订单列表加载完成 THEN THE Order_System SHALL 显示统计信息(数据条数、全部价值、本页总发货价值)
  4. WHEN 运营人员点击查看详情按钮 THEN THE Order_System SHALL 打开发货订单详情弹窗
  5. WHEN 运营人员点击取消发货按钮 THEN THE Order_System SHALL 弹出确认对话框,确认后取消发货订单
  6. WHEN 运营人员点击导出按钮 THEN THE Order_System SHALL 导出当前筛选条件下的发货订单数据

Requirement 5: 发货订单详情与发货操作

User Story: As a 运营人员, I want to 查看发货订单详情并进行发货操作, so that I can 完成发货流程。

Acceptance Criteria

  1. WHEN 运营人员打开发货订单详情弹窗 THEN THE Order_System SHALL 显示订单信息(订单号、收件人、收货手机号、收货地址、订单状态、下单时间)
  2. WHEN 发货订单包含多个奖品 THEN THE Order_System SHALL 显示奖品列表,包含奖品图片、名称、价值、兑换价值、数量、发货备注、发货状态
  3. WHEN 运营人员点击发货按钮 THEN THE Order_System SHALL 打开发货弹窗,要求填写物流公司和快递单号
  4. WHEN 运营人员提交发货信息 THEN THE Order_System SHALL 验证物流公司和快递单号不为空,验证通过后更新发货状态
  5. WHEN 发货成功 THEN THE Order_System SHALL 刷新订单详情,显示物流信息(快递名称、快递单号、发货时间)
  6. IF 发货信息验证失败 THEN THE Order_System SHALL 显示错误提示,不关闭弹窗

Requirement 6: 回收订单列表

User Story: As a 运营人员, I want to 查看用户回收奖品的订单, so that I can 了解回收情况。

Acceptance Criteria

  1. WHEN 运营人员访问回收订单页面 THEN THE Order_System SHALL 显示回收订单列表,包含用户信息、兑换金额、兑换数量、兑换时间
  2. WHEN 运营人员输入搜索条件用户ID/UID、手机号、时间范围 THEN THE Order_System SHALL 根据条件筛选回收订单
  3. WHEN 运营人员点击详情按钮 THEN THE Order_System SHALL 打开回收订单详情弹窗,显示回收的奖品明细
  4. WHEN 运营人员点击导出按钮 THEN THE Order_System SHALL 导出当前筛选条件下的回收订单数据

Requirement 7: 综合订单列表

User Story: As a 运营人员, I want to 使用更多筛选条件查询订单, so that I can 进行更精细的订单分析。

Acceptance Criteria

  1. WHEN 运营人员访问综合订单页面 THEN THE Order_System SHALL 显示综合订单列表,包含订单号、用户信息、盒子详情、金额详情、抽奖情况、支付信息
  2. WHEN 运营人员输入搜索条件用户ID、手机号、订单号、支付状态、账号类型、账号状态、时间范围 THEN THE Order_System SHALL 根据条件筛选订单
  3. WHEN 运营人员点击详情按钮 THEN THE Order_System SHALL 打开订单详情弹窗
  4. WHEN 运营人员点击导出按钮 THEN THE Order_System SHALL 导出当前筛选条件下的订单数据

Requirement 8: 前端API模块

User Story: As a 开发人员, I want to 有统一的API调用模块, so that I can 方便地与后端接口交互。

Acceptance Criteria

  1. THE API_Module SHALL 定义所有订单相关的TypeScript接口类型
  2. THE API_Module SHALL 实现购买订单列表查询、详情查询、导出功能的API调用
  3. THE API_Module SHALL 实现发货订单列表查询、详情查询、发货操作、取消发货的API调用
  4. THE API_Module SHALL 实现回收订单列表查询、详情查询的API调用
  5. THE API_Module SHALL 实现卡单订单列表查询的API调用
  6. THE API_Module SHALL 实现综合订单列表查询的API调用
  7. WHEN API调用失败 THEN THE API_Module SHALL 返回统一格式的错误信息

Requirement 9: 路由和权限配置

User Story: As a 开发人员, I want to 配置订单管理模块的路由和权限, so that I can 控制页面访问。

Acceptance Criteria

  1. THE Order_System SHALL 配置购买订单页面路由 /business/order/buy
  2. THE Order_System SHALL 配置发货订单页面路由 /business/order/shipping
  3. THE Order_System SHALL 配置回收订单页面路由 /business/order/recovery
  4. THE Order_System SHALL 配置卡单订单页面路由 /business/order/stuck
  5. THE Order_System SHALL 配置综合订单页面路由 /business/order/list
  6. THE Order_System SHALL 为每个页面配置对应的权限标识order:list, order:ship, order:export

Requirement 10: 后端API补充如需要

User Story: As a 开发人员, I want to 确保后端API完整, so that I can 支持前端所有功能。

Acceptance Criteria

  1. WHEN 前端需要按手机号搜索订单 THEN THE Order_System SHALL 支持手机号筛选参数
  2. WHEN 前端需要发货订单统计信息 THEN THE Order_System SHALL 返回统计数据(总条数、总价值)
  3. WHEN 前端需要导出发货订单 THEN THE Order_System SHALL 提供发货订单导出API
  4. WHEN 前端需要导出回收订单 THEN THE Order_System SHALL 提供回收订单导出API