Files
Neo-ZQYY/docs/specs/p13-miniapp-fe-polish/requirements.md
Neo 70324d8542 chore: 文档与 IDE 配置整理
- .kiro/specs/ → docs/specs/(41 个历史需求 spec 迁移,移除 .config.kiro)
- CLAUDE.md 三层拆分:根文件精简 + apps/backend/CLAUDE.md + .claude/commands/
- 新增 /spec-close、/pre-change 两个工作流命令
- DDL 基线刷新(从测试库重新导出 11 个文件,dws 35→38 表,biz 18→21 表)
- BD_Manual → BD_manual 命名统一(48 个文件)
- 修复 3 处文档与数据库不一致(auth.users.status 默认值、scheduled_tasks 字段、RLS 视图数)
- 新增 BD_manual_public_rbac_tables.md(public schema 8 张 RBAC/工作流表)
- 合并 biz.trigger_jobs 文档(10→12 字段,归档独立文档)
- docs/database/README.md 索引更新

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-06 00:02:37 +08:00

3.9 KiB
Raw Blame History

需求文档P13 小程序前端联调补齐与格式统一

概述

小程序前端页面已完成 H5 原型还原P6~P9但在 MOCK 数据排查中发现多处功能点未对接真实数据或逻辑缺失。本 SPEC 统一收敛这些遗漏项,确保每个页面在联调后数据展示完整、格式统一。

需求来源

  • PRDdocs/prd/specs/P13-miniapp-fe-polish.md
  • 依赖P6~P9 前端页面 + P3 认证 + P4 核心业务 + 后端接口

需求列表

通用规则(跨页面)

  • REQ-G1微信头像与用户信息 — 登录成功后从后端获取用户信息avatarUrl、nickName、role、storeName三个 banner 页面task-list、performance、performance-records统一从全局用户信息读取 avatarUrl无头像时显示默认占位图
  • REQ-G2当月预估判断 — 当查看月份 = 当前自然月时显示"预估"标签历史月份不显示。影响页面performance、performance-records、board-finance
  • REQ-G3绩效折算折前/折后)— 后端返回 hours折后和 hoursRaw折前两者不同时展示"折前 Xh"灰色小字
  • REQ-G4储值等级显示规则 — 根据 balance 计算等级文案(无/少/一般/多/非常多),工具函数放 utils/storage-level.ts

各页面功能点

  • REQ-T1.2task-list 比同期数据 — 后端返回与上月同期差值(数值),前端展示 +¥X / -¥X + ↑/↓ 箭头
  • REQ-T1.3task-list 放弃原因 — 从后端 task 对象的 abandonReason 字段获取展示
  • REQ-T1.4task-list 盖戳动画 — 改为页面加载后始终播放,不依赖 tierCompleted
  • REQ-T3.3performance-records 总笔数 — 使用后端返回的 totalCount 字段,不再前端 records.length 计算
  • REQ-T4.1task-detail 手机号码 — 从 detail 获取 customerPhone不再硬编码空字符串
  • REQ-T4.3task-detail 行动建议 — 后端返回 actionSuggestions: string[],前端在维客线索下方展示为卡片列表
  • REQ-T5.2customer-service-records 本月服务次数 — 前端类型定义补齐 totalServiceCount
  • REQ-T5.3customer-service-records 课程标签 — 后端返回 courseType 枚举,前端直接映射,不再 includes 猜测
  • REQ-T6.1board-finance AI 智能洞察 — 后端返回 aiInsights 数组,前端动态渲染
  • REQ-T10.1coach-detail 任务执行统计 — 后端返回 taskStats前端从 API 获取,不再硬编码

数据格式统一

  • REQ-FMT-1补充格式化工具函数 — formatDateShort、formatDateFull、formatDays、formatStorageLevel、formatTrendValue
  • REQ-FMT-2全页面格式化调用审查 — 确保所有金额/计数/百分比/课时/时间/空值均通过已有格式化函数处理
  • REQ-FMT-3接口端格式对齐 — 后端返回原始数值,前端负责格式化;所有 null/undefined/0 统一展示为 --

验收标准

  • AC-G1.1:三个 banner 页面展示微信头像,无头像时显示默认占位图
  • AC-G1.2:用户昵称、角色、门店名称正确展示
  • AC-G2.1:本月数据显示"预估"标签,历史月份不显示
  • AC-G2.2board-finance 本月时间筛选时,经营一览标题含"预估"字样
  • AC-G3.1:存在折算差异时,课时旁显示"折前 Xh"灰色小字
  • AC-G3.2:无折算差异时不显示"折前"
  • AC-G4.1task-detail 储值区域根据 balance 正确显示等级文案
  • AC-G4.2balance 为 0 时显示"无"
  • AC-T1.2:比同期显示为数值差(如 +¥1,200非百分比
  • AC-T1.3:已放弃任务卡片展示放弃备注
  • AC-T1.4:页面加载后盖戳动画始终播放
  • AC-T3.3:总笔数使用后端 totalCount
  • AC-T4.1:手机号码从 detail 获取
  • AC-T4.3:行动建议卡片列表正确渲染
  • AC-T5.2totalServiceCount 类型定义完整
  • AC-T5.3:课程标签基于枚举映射
  • AC-T6.1AI 智能洞察动态渲染
  • AC-T10.1:任务执行统计从 API 获取
  • AC-FMT所有页面数据格式统一空值显示 --