Draft
As a 小程序开发者, I want 将订单管理模块从 packages/server/src 拆分到主项目的 packages 目录下作为独立 package, so that 项目可以按需引入订单、订单商品和退款管理功能,保持模块独立性和向后兼容性
@d8d/orders-module package,包含完整的订单、订单商品和退款管理功能[ ] Task 1: 创建 orders-module package 基础结构 (AC: 1)
[ ] Task 2: 迁移订单实体和类型定义 (AC: 2, 4)
[ ] Task 3: 迁移订单服务 (AC: 2, 3)
[ ] Task 4: 创建订单路由 (AC: 3, 4)
[ ] Task 5: 创建当前用户权限API路由文件 (AC: 3, 4, 6)
[ ] Task 6: 创建测试套件 (AC: 7)
[ ] Task 7: 集成到现有系统 (AC: 5, 6, 8)
[ ] Task 8: 验证和文档 (AC: 4, 6)
packages/orders-module/ [Source: architecture/source-tree.md#实际项目结构]Order 实体关键字段:
orderNo: 订单号 (varchar(50), unique)userId: 用户ID (int, unsigned)amount: 订单金额 (decimal(10,2), default: 0.00)costAmount: 成本金额 (decimal(10,2), default: 0.00)payAmount: 实际支付金额 (decimal(10,2), default: 0.00)orderType: 订单类型 (int, default: 1, 1实物订单 2虚拟订单)payType: 支付类型 (int, default: 0, 1积分2礼券)payState: 支付状态 (int, default: 0, 0未支付1支付中2支付成功3已退款4支付失败5订单关闭)state: 订单状态 (int, default: 0, 0未发货1已发货2收货成功3已退货)createdBy: 创建用户ID (int, nullable)updatedBy: 更新用户ID (int, nullable)OrderGoods 实体关键字段:
orderId: 订单ID (int, unsigned)goodsId: 商品ID (int, unsigned)goodsName: 商品名称 (varchar(255), nullable)price: 售价 (decimal(10,2), default: 0.00)num: 数量 (int, default: 0)state: 状态 (int, default: 0, 0未发货1已发货)OrderRefund 实体关键字段:
orderNo: 订单号 (varchar(32), nullable)refundOrderNo: 退款订单号 (varchar(32), nullable)refundAmount: 退款金额 (decimal(10,2), nullable)state: 状态 (int, default: 0, 0未退款1退款中2退款成功3退款失败)@d8d/shared-types - 基础类型定义 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L269-L276]@d8d/shared-utils - 工具函数 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L280-L291]@d8d/shared-crud - CRUD基础设施 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L266-L278]@d8d/user-module - 用户管理 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L321-L334]@d8d/auth-module - 认证管理 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L337-L350]@d8d/goods-module - 商品管理 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L211-L214]@d8d/delivery-address-module - 配送地址管理 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L207-L210]@d8d/merchant-module - 商户管理 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L208-L211]@d8d/supplier-module - 供应商管理 [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L231-L234]@d8d/shared-test-util [Source: docs/prd/epic-005-mini-auth-modules-integration.md#L294-L306]packages/orders-module/src/routes/user-routes.ts - 仅限当前用户使用 [Source: docs/stories/006.001.shared-crud-data-permission.story.md#L21-L50]packages/orders-module/src/routes/admin-routes.ts - 管理员使用的完整权限路由 [Source: docs/stories/006.001.shared-crud-data-permission.story.md#L21-L50]packages/orders-module/src/schemas/user-order.schema.ts - 移除请求schema中的用户权限相关字段,自动使用当前登录用户权限(响应schema保持完整字段)packages/orders-module/src/schemas/admin-order.schema.ts - 保留完整权限字段,允许管理员指定权限dataPermission 配置 [Source: docs/stories/006.001.shared-crud-data-permission.story.md#L22-L25]packages/orders-module/tests/ [Source: architecture/testing-strategy.md#L39-L42]tests/unit/**/*.test.ts [Source: architecture/testing-strategy.md#L39-L42]tests/integration/**/*.test.ts [Source: architecture/testing-strategy.md#L47-L56]| Date | Version | Description | Author |
|---|---|---|---|
| 2025-11-12 | 1.0 | 初始故事创建 | Bob (Scrum Master) |
此部分由开发代理在实现过程中填写
此部分由QA代理在质量审查后填写