# 开发任务列表: 002 - 数据与分析 基于实施计划,为“数据与分析”功能分解出以下开发任务。 ## 后端 (Backend) ### 数据层 (Data Layer) - [x] **BE-DB-05**: 创建 `daily_activity_stats` 表的数据库迁移脚本。 - [x] **BE-CRON-01**: 实现一个每日运行的定时任务,用于聚合原始数据并填充 `daily_activity_stats` 表。 - [x] **BE-CACHE-01**: 为排行榜查询配置并实现Redis缓存逻辑。 ### API & 业务逻辑 - [ ] **BE-API-07**: 实现获取仪表盘数据 (`GET /api/v1/activities/{id}/stats`) 的业务逻辑。 - [ ] **BE-API-08**: 实现获取裂变网络图 (`GET /api/v1/activities/{id}/graph`) 的业务逻辑,包含递归查询。 - [ ] **BE-API-09**: 实现获取排行榜 (`GET /api/v1/activities/{id}/leaderboard`) 的业务逻辑,包含缓存处理。 - [ ] **BE-API-10**: 实现导出排行榜CSV文件 (`GET /api/v1/activities/{id}/leaderboard/export`) 的逻辑。 - [ ] **BE-TEST-02**: 为所有数据分析相关的API Endpoints 编写单元测试和集成测试。 ## 前端 (Frontend) ### UI 组件 - [ ] **FE-UI-07**: 开发 `AnalyticsDashboard` 页面主容器组件。 - [ ] **FE-UI-08**: 开发可复用的 `DateRangePicker` 组件。 - [ ] **FE-UI-09**: 开发 `StatsChart` 组件,集成 `Recharts` 等图表库,并实现数据可视化。 - [ ] **FE-UI-10**: 开发 `NetworkGraphViewer` 组件,集成 `react-flow` 等网络图库,并实现懒加载和交互功能。 - [ ] **FE-UI-11**: 开发 `LeaderboardTable` 组件,实现前端排序切换和导出CSV的触发功能。 ### 状态管理与集成 - [ ] **FE-API-02**: 在API客户端中新增所有数据分析相关的请求函数。 - [ ] **FE-INT-02**: 在 `AnalyticsDashboard` 容器组件中集成API调用,管理整个页面的数据流、加载和错误状态。