Files
Neo-ZQYY/docs/h5_ui/interactions/board-coach.md

105 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 页面名board-coach助教看板
> PRD 参考P8 `docs/prd/specs/P8-miniapp-fe-boards.md``apps/miniprogram/doc/prd.md` 第九节 9.3
> 已实现:否
## 页面说明
按排序×技能×时间三重筛选查看助教排名列表。不同排序维度下卡片结构和突出数据不同。
## 状态变量
| 变量名 | 类型 | 初始值 | 说明 |
|--------|------|--------|------|
| selectedSort | string | "定档业绩最高" | 排序筛选 |
| selectedSkill | string | "不限" | 技能筛选 |
| selectedTime | string | "本月" | 时间筛选 |
| sortDropdownVisible | boolean | false | 排序筛选下拉展开 |
| skillDropdownVisible | boolean | false | 技能筛选下拉展开 |
| timeDropdownVisible | boolean | false | 时间筛选下拉展开 |
| coaches | array | [] | 助教列表 |
| loading | boolean | true | 数据加载中 |
| error | boolean | false | 加载失败 |
## 用户操作 → 响应
| 操作 | 触发条件 | 响应行为 | 目标状态 |
|------|----------|----------|----------|
| 页面加载 | 进入页面 | GET /api/board/coaches | loading→false |
| 点击排序筛选 | 无 | 展开排序下拉,关闭其他 | sortDropdownVisible=true |
| 选择排序 | 下拉展开 | 切换对应 dim-container 显隐,重新请求数据 | selectedSort 更新 |
| 点击技能筛选 | 无 | 展开技能下拉,关闭其他 | skillDropdownVisible=true |
| 选择技能 | 下拉展开 | 重新请求数据 | selectedSkill 更新 |
| 点击时间筛选 | 无 | 展开时间下拉,关闭其他 | timeDropdownVisible=true |
| 选择时间 | 下拉展开 | 重新请求数据 | selectedTime 更新 |
| 点击助教卡片 | 无 | navigateTo coach-detail | — |
| 切换看板 Tab | 顶部 Tab 栏 | navigateTo board-finance / board-customer | — |
| 滚动页面 | 持续 | 下滑隐藏筛选栏,上滑显示 | — |
| 点击"重试" | error=true | 重新请求数据 | loading=true |
## 筛选器选项(忠于原型 HTML
### 排序筛选6 个)
1. 定档业绩最高
2. 定档业绩最低
3. 工资最高
4. 工资最低
5. 客源储值最高
6. 任务完成最多
### 技能筛选
不限 / 🎱 / 斯 / 🀄 / 🎤
### 时间筛选
本月 / 本季度 / 上月 / 前3个月不含本月/ 上季度 / 最近6个月不含本月不支持客源储值最高
## 排序切换 → 卡片结构映射(忠于原型 HTML
切换排序时,通过 `selectSort(value)` 函数切换对应的 `dim-container` 显隐。每种排序的卡片右侧突出数据不同:
| 排序 | container id | 卡片右侧突出数据 |
|------|-------------|-----------------|
| 定档业绩最高/最低 | `dim-perf` | 定档 Xh + 折前 Xh + 距升档 Xh或 ✅ 已达标) |
| 工资最高/最低 | `dim-salary` | 预估标签 + ¥金额(大字)+ 定档/折前 |
| 客源储值最高 | `dim-sv` | 储值 ¥金额(大字)+ 客户 X人 + 消耗 ¥X |
> 高客源储值定义PRD 补充RS > 2 的客户的会员卡储值合计RS = 关系强度指数,> 2 表示有一定服务关系的客户)
| 任务完成最多 | `dim-task` | 召回 X蓝色大字+ 回访 X |
### 所有卡片共有元素
- 助教头像圆形 + 姓名
- 等级标签(星级/高级/中级/初级)— 不同等级不同颜色
- 技能标签(🎱/斯/🀄/🎤)
- 底部 TOP3 客户 emoji 列表
## 等级标签颜色
| 等级 | 颜色 |
|------|------|
| 星级 | 金色/amber |
| 高级 | 蓝色/primary |
| 中级 | 绿色/success |
| 初级 | 灰色/gray |
## 筛选栏滚动行为
- 下滑时筛选栏隐藏,上滑时重新显示
-`initFilterBarScrollBehavior()` 实现
## 页面状态枚举
| 状态名 | 视觉表现 | 触发条件 |
|--------|----------|----------|
| 加载中 | 区域文案"加载中..." | loading=true |
| 正常态 | 助教列表 | 有数据 |
| 空数据态 | "暂无数据" | coaches 为空 |
| 错误态 | "加载失败,请点击重试" + 重试按钮 | error=true |
## 后端 API 依赖
| API | 方法 | 说明 |
|-----|------|------|
| `GET /api/board/coaches` | GET | 助教看板(排序×技能×时间三重筛选) |
## 页面导航
- 来源board-finance / board-customer看板 Tab 切换)
- 去向coach-detail / chat
## 全局组件
- 底部 TabBar看板 active
- AI 悬浮按钮(右下角)
- 看板顶部 Tab 栏(财务 / 客户 / 助教 active