3.4 KiB
3.4 KiB
P8:小程序前端 — 看板模块 — miniapp-fe-boards
优先级:P8(依赖 P2 + P3 + P5) 预估工作量:大
需求(Requirements)
用户故事
- 作为管理者,我在财务看板能看到多维度交叉筛选的财务数据、环比、AI 洞察。
- 作为管理者,我在客户看板能按 8 个维度排序查看前 100 名客户。
- 作为管理者,我在助教看板能按业绩/工资/客源储值/任务完成等维度排序查看助教。
- 作为系统,看板数据需要缓存层以提升查询性能。
验收标准
- AC1:财务看板支持 2 组筛选交叉(区域 × 时间),选择非"全部区域"时预收资产板块消失
- AC2:财务看板环比数据正确计算
- AC3:财务看板 AI 洞察从缓存读取(应用 2 每日更新)
- AC4:客户看板 8 个维度筛选正确(最应召回/最大消费潜力/最高余额/最近充值/最高消费60天/最频繁60天/最近到店/最专一)
- AC5:客户看板"最专一"维度下类型筛选锁定为"不限"
- AC6:助教看板维度×项目×日期三重筛选交叉正确
- AC7:看板数据有缓存层,非每次实时查询 FDW
页面清单
board-finance(财务看板)
- 筛选器:区域筛选 + 时间筛选(本月/上月/本周/上周/前3月/本季/上季/近6月)
- 数据板块:收入结构、预收资产(条件隐藏)、支出汇总、平台结算
- 环比展示
- AI 智能洞察(应用 2 缓存结果)
- "问问助手"入口 → chat.html
board-customer(客户看板)
- 维度筛选(8 个维度,默认"最应召回")
- 类型筛选(全部/台球/斯诺克/麻将/团建 + 台费包厢流水过滤)
- 筛选互斥规则:"最专一"锁定类型为"不限"
- 客户列表(前 100 名)
- 每个客户卡片:昵称、爱心 icon、喜好标签、关键指标值
- 右下角 AI 按钮 → chat.html
board-coach(助教看板)
- 维度筛选:定档业绩最高/最低、工资最高/最低、高客源储值额最高、任务完成最多
- 项目筛选:全部/中🎱/斯诺克/麻将/团建
- 日期维度筛选:本月/上月/本周/上周/前3月/本季/上季/近6月
- 助教列表
- 右下角 AI 按钮 → chat.html
后端 API 需求
| API | 说明 | 缓存 |
|---|---|---|
GET /api/board/finance |
财务看板数据(交叉筛选) | 是 |
GET /api/board/finance/ai-insight |
财务 AI 洞察 | 是(应用2缓存) |
GET /api/board/customers |
客户看板(维度+类型筛选) | 是 |
GET /api/board/coaches |
助教看板(维度×项目×日期) | 是 |
缓存策略
- 看板数据缓存层:Redis 或内存缓存
- 缓存粒度:
site_id+ 筛选条件组合 - 缓存过期:ETL 数据更新后失效(约 1 小时)
- AI 洞察缓存:从
biz.ai_cache读取(应用 2 每日更新)
任务清单
- T1:实现看板缓存层(Redis/内存,按 site_id + 筛选条件)
- T2:实现财务看板 API(交叉筛选 + 环比 + 预收资产条件隐藏)
- T3:实现客户看板 API(8 维度排序 + 类型筛选 + 互斥规则)
- T4:实现助教看板 API(维度×项目×日期三重筛选)
- T5:实现 board-finance 小程序页面
- T6:实现 board-customer 小程序页面
- T7:实现 board-coach 小程序页面
- T8:实现通用筛选器组件(时间/维度/项目)