Ready for Review
As a 后台管理员, I want 有一个直观的数据概览面板, so that 快速了解业务状况
[x] 创建多租户数据概览UI模块包结构 (AC: 1, 2, 3, 4, 5, 6)
packages/data-overview-ui-mt/packages/user-management-ui-mt/package.json)packages/user-management-ui-mt/tsconfig.json)packages/user-management-ui-mt/vitest.config.ts)packages/user-management-ui-mt/eslint.config.js)[x] 创建API客户端 (AC: 1, 2, 3, 4)
src/api/dataOverviewClient.ts(参考:packages/user-management-ui-mt/src/api/userClient.ts)[x] 创建类型定义 (AC: 1, 2, 3, 4)
src/types/dataOverview.ts(参考:packages/user-management-ui-mt/src/types/index.ts)[x] 在组件中实现API调用逻辑 (AC: 1, 2, 3, 4)
[x] 创建数据概览面板主组件 (AC: 1, 2, 3, 4, 5, 6)
src/components/DataOverviewPanel.tsx(参考:packages/user-management-ui-mt/src/components/UserManagement.tsx)[x] 创建时间筛选组件 (AC: 2)
src/components/TimeFilter.tsx[x] 创建数据卡片组件 (AC: 3)
src/components/StatCard.tsx[x] 实现权限控制 (AC: 1, 6)
packages/user-management-ui-mt/src/components/UserManagement.tsx中的权限控制)[x] 编写集成测试 (AC: 7)
packages/user-management-ui-mt/tests/integration/userManagement.integration.test.tsx)[x] 配置包导出和集成 (AC: 1, 6)
src/index.ts 导出所有模块接口(参考:packages/user-management-ui-mt/src/index.ts)@d8d/shared-ui-components 提供46+基础UI组件实际项目组件组织:
src/client/
├── admin/ # 管理后台应用
│ ├── components/ # 管理后台专用组件
│ ├── hooks/ # 管理后台Hooks
│ ├── layouts/ # 布局组件
│ ├── pages/ # 页面组件
│ ├── routes.tsx # 路由配置
│ └── index.tsx # 管理后台入口
├── home/ # 用户前台应用
├── components/ # 共享UI组件
│ └── ui/ # shadcn/ui组件库(50+组件)
├── hooks/ # 共享Hooks
├── lib/ # 工具库
├── utils/ # 工具函数
└── api.ts # API客户端配置
__tests__ 文件夹与源码并列(但实际使用tests/目录)clientManager.get().api.$method而非直接使用导出的客户端实例对外API(供UI调用):
GET /api/data-overview/summary - 获取数据概览统计
startDate, endDate (ISO格式日期字符串)返回数据:
{
totalSales: number, // 总销售额
totalOrders: number, // 总订单数
wechatSales: number, // 微信支付总金额
wechatOrders: number, // 微信支付订单数
creditSales: number, // 额度支付总金额
creditOrders: number, // 额度支付订单数
todaySales: number, // 今日销售额
todayOrders: number, // 今日订单数
}
GET /api/data-overview/today - 获取今日实时数据(快速查询)
时间筛选支持:
今日:当天00:00:00到23:59:59昨日:前一天00:00:00到23:59:59最近7天:当前时间往前推7天最近30天:当前时间往前推30天自定义时间范围:用户选择的任意时间范围packages/data-overview-ui-mt/packages/data-overview-ui-mt/src/api/dataOverviewClient.tspackages/data-overview-ui-mt/src/types/dataOverview.tspackages/data-overview-ui-mt/src/components/DataOverviewPanel.tsxpackages/data-overview-ui-mt/src/components/TimeFilter.tsxpackages/data-overview-ui-mt/src/components/StatCard.tsxpackages/data-overview-ui-mt/tests/ 目录下packages/data-overview-ui-mt/src/index.ts (导出主组件)用户管理UI模块: packages/user-management-ui-mt/ - 主要参考
src/components/UserManagement.tsx - 主组件实现(直接在组件中使用useQuery)src/api/userClient.ts - API客户端实现src/types/index.ts - 类型定义tests/integration/userManagement.integration.test.tsx - 集成测试信用额度管理UI模块: packages/credit-balance-management-ui-mt/ - 对话框组件参考
src/components/CreditBalanceDialog.tsx - 对话框组件实现src/api/creditBalanceClient.ts - RPC客户端实现@d8d/data-overview-module-mt的API接口@d8d/shared-ui-components共享UI组件packages/data-overview-ui-mt/tests/ 目录下tests/unit/**/*.test.tsxtests/integration/**/*.test.tsx| Date | Version | Description | Author |
|---|---|---|---|
| 2025-12-29 | 1.0 | 初始故事创建 | Bob (Scrum Master) |
| 2025-12-29 | 1.1 | 完成故事实现,创建data-overview-ui-mt包 | Claude Sonnet 4.5 |
此部分由开发代理在实现过程中填写
Claude Sonnet 4.5 (claude-sonnet-4-5-20250929)
无
@d8d/data-overview-ui-mt新建文件:
packages/data-overview-ui-mt/ (包根目录)packages/data-overview-ui-mt/package.json (包配置)packages/data-overview-ui-mt/tsconfig.json (TypeScript配置)packages/data-overview-ui-mt/vitest.config.ts (测试配置)packages/data-overview-ui-mt/.eslintrc.js (ESLint配置)packages/data-overview-ui-mt/build.config.ts (构建配置)packages/data-overview-ui-mt/tests/setup.ts (测试设置)源代码文件:
packages/data-overview-ui-mt/src/index.ts (主入口)packages/data-overview-ui-mt/src/api/dataOverviewClient.ts (API客户端)packages/data-overview-ui-mt/src/api/index.ts (API导出)packages/data-overview-ui-mt/src/types/dataOverview.ts (类型定义)packages/data-overview-ui-mt/src/types/index.ts (类型导出)packages/data-overview-ui-mt/src/components/DataOverviewPanel.tsx (主组件)packages/data-overview-ui-mt/src/components/TimeFilter.tsx (时间筛选组件)packages/data-overview-ui-mt/src/components/StatCard.tsx (数据卡片组件)packages/data-overview-ui-mt/src/components/index.ts (组件导出)packages/data-overview-ui-mt/src/hooks/index.ts (hooks导出)测试文件:
packages/data-overview-ui-mt/tests/integration/dataOverview.integration.test.tsx (集成测试)修改文件:
docs/stories/009.002.data-overview-ui-mt.story.md (更新任务状态和开发记录)此部分由QA代理在审查完成后填写