36 lines
1010 B
Markdown
36 lines
1010 B
Markdown
# Design: Add Channel Badge to Player List
|
|
|
|
## Technical Approach
|
|
|
|
### 1. 数据层
|
|
- 确认 `channels` 表结构和数据
|
|
- 确认 `users.channel_id` 关联正确
|
|
- 如需新增渠道,通过管理端添加
|
|
|
|
### 2. 后端 (已实现)
|
|
- `users_admin.go` 已通过 LEFT JOIN 获取 `channel_name`, `channel_code`
|
|
- 无需修改后端代码
|
|
|
|
### 3. 前端优化
|
|
**文件:** `web/admin/src/views/player-manage/index.vue`
|
|
|
|
**修改点:**
|
|
1. 优化"渠道来源"列显示:
|
|
- 添加 Badge 标签样式
|
|
- 不同渠道使用不同颜色
|
|
- 无渠道时显示灰色"未知"
|
|
|
|
2. 添加渠道筛选功能:
|
|
- 在 `PlayerSearch` 组件添加渠道选择器
|
|
- 调用 `GET /api/admin/channels` 获取渠道列表
|
|
- 添加 `channel_id` 参数到搜索请求
|
|
|
|
### 4. 新增 API 需求
|
|
- 需要确认是否存在 `GET /api/admin/channels` 接口
|
|
- 如不存在,需添加渠道列表 API
|
|
|
|
## Dependencies
|
|
- 无外部依赖
|
|
|
|
## Risks
|
|
- 如果 channels 表为空,所有用户都会显示"未知渠道" |