# P9:小程序前端 — 详情与对话模块 — miniapp-fe-details > 优先级:P9(依赖 P3 + P4 + P5) > 预估工作量:大 --- ## 需求(Requirements) ### 用户故事 1. 作为助教,我在客户详情页能看到客户全信息、消费记录(三种样式)、指数总览、备注、AI 分析。 2. 作为助教,我在助教详情页能看到助教信息、客户数、工龄、备注。 3. 作为助教,我在 AI 对话页能与 AI 流式对话,看到来源页面信息。 4. 作为助教,我能查看历史 AI 对话记录。 ### 验收标准 - AC1:消费记录区分三种样式(台桌结账→下沉台费明细、商城订单、充值) - AC2:消费记录默认 10 条,拉到底懒加载(每次 10 条) - AC3:金额为 0 的项不展示;有团购/折扣时展示正价+实付 - AC4:总金额仅在消费条目 >1 时出现 - AC5:AI 对话支持流式展示(逐字输出) - AC6:从其他页面进入 chat.html 时新开对话,第一条消息为页面上下文 - AC7:对话历史列表可查看、可继续对话 --- ## 页面清单 ### customer-detail(客户详情) - 客户信息卡片(昵称、手机、会员卡等级、余额、注册日期) - 指数总览(WBI/NCI/SPI 展示分 + 爱心 icon) - 消费记录列表(三种样式,懒加载) - 台桌结账:下沉到 `dwd_table_fee_log`,每条台费详情,关联总金额汇总 - 商城订单:助教列表(花名+级别+课程类型+服务时长+定档绩效)、支付金额、食品酒水总金额 - 充值:充值金额、支付方式 - 备注列表 - AI 消费习惯分析(应用 3 缓存) - "问问助手"入口 → chat.html ### coach-detail(助教详情) - 助教信息卡片(花名、级别、工龄) - 客户数(RS > 2 的客户数量) - 备注按钮(查看此助教为该客户做的备注) ### customer-service-records(客户服务记录) - 服务记录列表(时间 + 持续时长) ### chat(AI 对话) - 来源展示(来源页面 title + 基本信息) - 对话界面(IM 风格) - AI 回复流式展示(SSE) - 消息输入 + 发送 ### chat-history(对话历史) - 历史对话列表(按时间倒序) - 点击进入继续对话 --- ## 后端 API 需求 | API | 说明 | |-----|------| | `GET /api/customers/:id` | 客户详情 | | `GET /api/customers/:id/consumption-records` | 消费记录(分页,懒加载) | | `GET /api/customers/:id/indexes` | 客户指数总览 | | `GET /api/coaches/:id` | 助教详情 | | `GET /api/coaches/:id/customer-count` | 助教客户数(RS>2) | | `GET /api/customers/:id/service-records` | 客户服务记录 | | `POST /api/chat/conversations` | 创建对话 | | `POST /api/chat/conversations/:id/messages` | 发送消息(SSE 流式返回) | | `GET /api/chat/conversations` | 对话历史列表 | | `GET /api/chat/conversations/:id/messages` | 对话消息列表 | ### 消费记录 settle_type 区分 需要查库确认的字段(待 P1 完成后验证): - 台桌结账:`settle_type` 对应值(需查 `dwd_settlement_head`) - 商城订单:`settle_type` 对应值 - 充值:从 `dwd_recharge_order` 单独查询 ### 正价金额字段(待用户复核) 需要在 `dwd_settlement_head` 或相关 DWS 表中确认: - `original_amount` vs `total_amount` vs 其他字段 - 此项标记为"需用户复核" --- ## 任务清单 - [ ] T1:实现客户详情 API - [ ] T2:实现消费记录分页 API(三种样式区分 + 懒加载) - [ ] T3:实现客户指数总览 API - [ ] T4:实现助教详情 API - [ ] T5:实现对话 API(创建/发送/历史/消息列表,SSE 流式) - [ ] T6:实现 customer-detail 小程序页面 - [ ] T7:实现 coach-detail 小程序页面 - [ ] T8:实现 customer-service-records 小程序页面 - [ ] T9:实现 chat 小程序页面(流式展示 + 来源信息) - [ ] T10:实现 chat-history 小程序页面