4.4 KiB
4.4 KiB
P7:小程序前端 — 绩效模块 — miniapp-fe-performance
优先级:P7(依赖 P2 + P3) 预估工作量:中等
需求(Requirements)
用户故事
- 作为助教,我在绩效页面能看到当月收入、业绩档位、工资预估。
- 作为助教,我能看到本月/上月的服务记录明细,按天归总。(营业日以 08:00 为分割点,如"本月"= 当月1日 08:00 ~ 次月1日 08:00)
- 作为助教,我能看到"我的新客"(首次服务且 2 月内服务 ≤2 次的客户)和"我的常客"(2 月内服务次数最多的客户)。
- 作为助教,我在业绩明细页能看到每条服务的详情,包括定档折算惩罚展示。
验收标准
- AC1:收入与业绩档位数据从
dws_assistant_salary_calc正确读取 - AC2:服务记录按天归总展示,支持本月/上月切换(营业日以 08:00 为分割点)
- AC3:"我的新客"筛选逻辑正确(该助教首次服务 + 2 月内 + 服务次数 ≤2)
- AC4:"我的常客"按服务次数降序,展示次数、小时数、工资合计
- AC5:业绩明细每条展示:结账时间、课程类型、台桌/房间、会员昵称、开始/结束时间、业绩分钟
- AC6:有定档折算惩罚时展示"120分钟(定档折算30分钟)"格式
- AC7:当月数据显示"预估"标记
页面清单
performance(我的绩效)
- 收入与业绩档位卡片
- 服务记录明细(按天归总,本月/上月切换;营业日以 08:00 为分割点)
- 我的新客列表(按最后服务时间排列)
- 我的常客列表(按服务次数降序)
- 服务明细:按天/月归总整合数据
performance-records(业绩明细)
- 口径选择(本月/上月/本周/上周等;营业日以 08:00 为分割点,如"本月"= 当月1日 08:00 ~ 次月1日 08:00)
- 业绩列表(每条含:结账时间、课程类型、台桌/房间、会员昵称、开始/结束时间、业绩分钟+折算展示)
- 按天/月归总整合
后端 API 需求
| API | 说明 | 数据源 |
|---|---|---|
GET /api/performance/summary |
当月绩效汇总 | fdw_etl.dws_assistant_salary_calc |
GET /api/performance/service-records |
服务记录明细(分页) | fdw_etl.dwd_assistant_service_log |
GET /api/performance/my-new-customers |
我的新客列表 | fdw_etl.dws_assistant_customer_stats |
GET /api/performance/my-regulars |
我的常客列表 | fdw_etl.dws_assistant_customer_stats |
GET /api/performance/records |
业绩明细(按口径) | fdw_etl.dwd_assistant_service_log + fdw_etl.dws_assistant_daily_detail |
小程序前端开发强制规范
以下规范适用于本 SPEC 中所有小程序页面实现,具有强制约束力。
- 原型图是唯一视觉真相:
docs/h5_ui/pages/*.html中的结构、层次、元素、配色、间距、交互行为是小程序页面实现的唯一参考标准。任何偏离原型图的实现都需要明确的产品确认。 - WXML ≠ HTML:严禁在小程序中使用 HTML 标签(div/span/p/a/img 等),必须使用小程序原生标签(view/text/image/navigator 等)。
- WXSS ≠ CSS:使用 rpx 单位、仅支持有限选择器、无 DOM/BOM API、样式隔离机制不同。Tailwind CSS 类名必须手动转换为 WXSS。
- TDesign 优先:凡 TDesign 组件库能覆盖的 UI 元素,必须使用 TDesign 组件;自定义实现仅限 TDesign 无法覆盖的场景。
- Power 文档优先:实现前必须加载
wechat-miniprogramPower 的相关 steering 文件(view-layer.md、tdesign.md、builtin-components.md),确保语法和组件用法正确。 - 项目踩坑指南必读:实现前必须阅读
docs/prd/MIGRATION-PLAYBOOK.md第六章,该文档是基于本项目实际转换经验的避坑手册,涵盖 WXML/WXSS 差异、事件系统、TDesign 用法、rpx 换算规则及新页面开发 Checklist。
任务清单
- T1:实现绩效汇总 API(含定档、工资、档位)
- T2:实现服务记录明细 API(按天归总 + 分页)
- T3:实现我的新客/常客 API
- T4:实现业绩明细 API(含定档折算惩罚字段)
- T5:实现 performance 小程序页面
- T6:实现 performance-records 小程序页面
- T7:实现"预估"标记组件(当月/本周数据自动标记;营业日以 08:00 为分割点)