refactor(utils): 修复密码哈希比较逻辑错误 feat(user): 新增按状态筛选优惠券接口 docs: 添加虚拟发货与任务中心相关文档 fix(wechat): 修正Code2Session上下文传递问题 test: 补充订单折扣与积分转换测试用例 build: 更新配置文件与构建脚本 style: 清理多余的空行与注释
46 lines
2.1 KiB
Markdown
46 lines
2.1 KiB
Markdown
# 渠道数据分析功能开发计划
|
|
|
|
本计划旨在为渠道管理增加数据分析功能,包括用户增长和付费数据的可视化展示。
|
|
|
|
## 1. 需求分析与对齐 (Align)
|
|
* **目标**: 在渠道列表页增加“分析”入口,点击后展示该渠道的运营数据。
|
|
* **核心指标**:
|
|
* **用户增长**: 累计注册用户数、每日新增用户趋势。
|
|
* **付费数据**: 累计订单数、累计 GMV (销售额)、每日订单/GMV 趋势。
|
|
* **交互**: 列表页操作栏新增“分析”按钮 -> 弹出模态框/抽屉展示仪表盘。
|
|
|
|
## 2. 架构设计 (Architect)
|
|
|
|
### 2.1 后端设计
|
|
* **API 接口**: 新增 `GET /admin/v1/channels/{id}/stats`
|
|
* **数据源**:
|
|
* 用户数据: `users` 表 (字段: `created_at`, `channel_id`)
|
|
* 订单数据: `orders` 表 (需关联 `users` 表,通过 `user_id` 关联,筛选 `channel_id`)
|
|
* **Service 层**:
|
|
* 扩展 `ChannelService`,增加 `GetStats(ctx, channelID, timeRange)` 方法。
|
|
* 使用 GORM 进行聚合查询 (Group by date)。
|
|
|
|
### 2.2 前端设计
|
|
* **组件复用**: 使用现有的 `ArtStatsCard` (指标卡片) 和 `ArtLineChart` (折线图)。
|
|
* **页面改造**: `web/admin/src/views/operations/channels/index.vue`
|
|
* 新增“分析”按钮。
|
|
* 新增弹窗组件,包含数据加载逻辑。
|
|
|
|
## 3. 任务拆解 (Atomize)
|
|
|
|
### 3.1 后端开发
|
|
1. **Service 实现**: 在 `internal/service/channel/channel.go` 中实现数据统计逻辑 (用户数、订单数、GMV)。
|
|
2. **Controller 实现**: 在 `internal/api/admin/channels.go` 中添加处理函数。
|
|
3. **路由注册**: 注册新的 API 路由。
|
|
|
|
### 3.2 前端开发
|
|
1. **API 定义**: 在 `web/admin/src/api/channels.ts` 中添加 `getChannelStats` 方法。
|
|
2. **UI 实现**: 在 `channels/index.vue` 中集成分析弹窗,展示指标卡片和趋势图表。
|
|
|
|
## 4. 执行步骤 (Automate)
|
|
|
|
1. **Step 1**: 实现后端统计接口 (Service + API)。
|
|
2. **Step 2**: 定义前端 API 接口。
|
|
3. **Step 3**: 实现前端分析弹窗 UI 并对接数据。
|
|
4. **Step 4**: 验证数据准确性和图表展示效果。
|