# 页面名:customer-detail(客户详情) > PRD 参考:P9 `docs/prd/specs/P9-miniapp-fe-details.md` > 已实现:否 ## 页面说明 展示客户全信息、消费记录(三种样式)、指数总览、备注、AI 维客线索、AI 客户分析。纯静态展示页(原型中无复杂交互函数)。 ## 状态变量 | 变量名 | 类型 | 初始值 | 说明 | |--------|------|--------|------| | customerInfo | object | null | 客户信息(昵称、手机、会员卡等级、余额、注册日期) | | indexes | object | null | 指数总览(WBI/NCI/SPI + 爱心 icon) | | consumptionRecords | array | [] | 消费记录列表 | | consumptionPage | number | 1 | 消费记录当前页 | | hasMoreRecords | boolean | true | 是否还有更多消费记录 | | retentionClues | array | [] | AI 维客线索(应用 8) | | customerAnalysis | object | null | AI 客户分析(应用 7) | | notes | array | [] | 备注列表 | | loading | boolean | true | 数据加载中 | | error | boolean | false | 加载失败 | | loadingMore | boolean | false | 加载更多消费记录中 | ## 用户操作 → 响应(忠于原型 HTML) | 操作 | 触发条件 | 响应行为 | 目标状态 | |------|----------|----------|----------| | 页面加载 | 进入页面 | 请求客户详情+指数+消费记录+AI 数据 | loading→false | | 滚动到底部 | hasMoreRecords=true | GET 消费记录下一页(每次 10 条) | loadingMore=true→false | | 点击"问问助手" | 底部按钮 | navigateTo chat(`window.location.href='chat.html'`) | — | | 点击返回 | 顶部导航栏 | navigateBack(`history.back()`) | — | > 原型 HTML 中仅有两个内联事件:顶部返回 `history.back()` 和底部"问问助手" `window.location.href='chat.html'`,无其他动态交互函数。 ## 消费记录三种样式 1. 台桌结账:下沉到 `dwd_table_fee_log`,每条台费详情,关联总金额汇总 2. 商城订单:助教列表(花名+级别+课程类型+服务时长+定档绩效)、支付金额、食品酒水总金额 3. 充值:充值金额、支付方式 ## 消费记录展示规则 - 默认 10 条,拉到底懒加载(每次 10 条) - 金额为 0 的项不展示 - 有团购/折扣时展示正价+实付 - 总金额仅在消费条目 >1 时出现 ## AI 区域展示 - 维客线索(应用 8):Emoji 二级标签,提供者逗号分隔(By:系统/By:备注) - 客户分析(应用 7,`cache_type=app7_customer_analysis`):运营策略数组 + 总结 - 触发时机(PRD 补充):客户结账单出现后自动生成 - 应用 3 与应用 7 共用同一 cache_type,应用 3 为简版摘要,应用 7 为完整分析 ## 页面状态枚举 | 状态名 | 视觉表现 | 触发条件 | |--------|----------|----------| | 加载中 | 区域文案"加载中..." | loading=true | | 正常态 | 完整客户详情 | 有数据 | | 错误态 | "加载失败,请点击重试" + 重试按钮 | error=true | ## 后端 API 依赖 | API | 方法 | 说明 | |-----|------|------| | `GET /api/customers/:id` | GET | 客户详情 | | `GET /api/customers/:id/consumption-records` | GET | 消费记录(分页,懒加载) | | `GET /api/customers/:id/indexes` | GET | 客户指数总览 | ## 页面导航 - 来源:board-customer(点击客户卡片)/ task-detail / performance - 去向:chat(问问助手) ## 全局组件 - 自定义顶部导航栏(返回按钮 + "客户详情") - AI 悬浮按钮