Ready for Review
As a 商品购买用户 I want 在商品详情页选择商品规格并确保系统使用正确的子商品价格和库存 so that 我可以准确购买特定规格的商品
mini/ - 小程序项目 (Taro + React)mini/src/components/goods-spec-selector/index.tsx - 规格选择器组件(故事5已实现)mini/src/pages/goods-detail/index.tsx - 商品详情页面(已集成组件)mini/src/api.ts - API客户端配置mini/tests/ - 小程序测试文件packages/goods-module-mt/ - 多租户商品管理模块GoodsSpecSelector组件状态 [Source: mini/src/components/goods-spec-selector/index.tsx]:
parentGoodsId(父商品ID)、visible、onClose、onConfirm、currentSpec、currentQuantityGET /api/v1/goods/{id}/children 获取子商品列表GoodsDetailPage集成状态 [Source: mini/src/pages/goods-detail/index.tsx]:
selectedSpec、showSpecModal)id: number - 商品IDspuId: number - 主商品ID,0表示父商品或单规格商品,>0表示子商品spuName: string | null - 主商品名称tenantId: number - 租户ID,用于多租户数据隔离state: number - 状态(1可用,2不可用)name: string - 商品名称(子商品名称作为规格名称)price: number - 商品价格stock: number - 商品库存GET /api/v1/goods/{id}/children - 已实现,返回指定父商品的子商品列表packages/goods-module-mt/src/routes/public-goods-children.mt.tspublic-goods-aggregated.mt.ts 聚合基础CRUD路由和子商品列表路由(故事5已创建)clientManager.get().api.$method调用APImini/src/pages/goods-detail/index.tsxmini/src/components/goods-spec-selector/index.tsxmini/src/api.tsmini/tests/pages/goods-detail.test.tsx(需要创建/更新)mini/tests/components/goods-spec-selector.test.tsx(已存在,故事5创建)packages/goods-module-mt/src/routes/public-goods-aggregated.mt.tstests文件夹与源码并列(例如:mini/tests/pages/)mini/tests/unit/pages/goods-detail/goods-detail.test.tsx(已创建)mini/tests/unit/components/goods-spec-selector/goods-spec-selector.test.tsx(已存在)web/tests/e2e/goods-detail.e2e.test.ts(如果适用)vi.mock() mock API客户端和依赖render函数渲染页面组件fireEvent模拟用户交互(选择规格、点击按钮等)| Date | Version | Description | Author |
|---|---|---|---|
| 2025-12-12 | 1.0 | 初始故事创建 | Bob (Scrum Master) |
| 2025-12-12 | 1.1 | 完成故事实施,集成规格选择功能 | James (Developer) |
Claude Sonnet 4.5 (claude-sonnet-4-5-20250929)
mini/src/pages/goods-detail/index.tsx - 移除过时注释,更新库存限制逻辑以支持规格库存mini/tests/unit/components/goods-spec-selector/goods-spec-selector.test.tsx - 修复测试期望和关闭按钮选择器(已移动到标准测试目录)mini/tests/unit/pages/goods-detail/goods-detail.test.tsx - 商品详情页集成测试(参照OrderButtonBar.test.tsx模式重写,已移动到标准测试目录)mini/tests/e2e/goods-detail-spec.e2e.test.ts - E2E测试占位文件mini/src/components/goods-spec-selector/index.tsx - 规格选择器组件(故事5已实现)packages/goods-module-mt/src/routes/public-goods-children.mt.ts - 多租户子商品API路由packages/goods-module-mt/src/routes/public-goods-aggregated.mt.ts - 聚合路由