99 lines
4.5 KiB
Markdown
99 lines
4.5 KiB
Markdown
# reviewing 页面数据来源排查
|
||
|
||
> 排查日期:2026-03-18
|
||
> 页面路径:pages/reviewing/reviewing
|
||
|
||
## 概览
|
||
|
||
| 分类 | 数量 | 说明 |
|
||
|------|------|------|
|
||
| Mock 数据 | 0 | 无 mock 引用 |
|
||
| 硬编码数据 | 5 | 状态跳转路径、Storage key、Toast 文案等 |
|
||
| 已对接 API | 1 | `GET /api/xcx/me` |
|
||
| 前端计算/派生 | 3 | 状态栏高度、状态条件分支、application 提取 |
|
||
| 路由参数 | 0 | 无 |
|
||
| WXML 硬编码文案 | 12 | 标题、提示语、标签等 |
|
||
|
||
## 一、Mock 数据
|
||
|
||
无。本页面未引用 `mock-data.ts`,所有数据均来自 API。
|
||
|
||
## 二、硬编码数据
|
||
|
||
| # | 文件 | 行号 | 内容 | 风险等级 | 说明 |
|
||
|---|------|------|------|----------|------|
|
||
| 1 | `.ts` | L39 | `url: "/api/xcx/me"` | 🟢 低 | API 端点路径,通常不变 |
|
||
| 2 | `.ts` | L55 | `url: "/pages/mvp/mvp"` | 🟢 低 | approved 状态跳转路径 |
|
||
| 3 | `.ts` | L61 | `url: "/pages/no-permission/no-permission"` | 🟢 低 | disabled 状态跳转路径 |
|
||
| 4 | `.ts` | L67 | `url: "/pages/no-permission/no-permission"` | 🟢 低 | rejected 状态跳转路径 |
|
||
| 5 | `.ts` | L73 | `url: "/pages/apply/apply"` | 🟢 低 | new 状态跳转路径 |
|
||
| 6 | `.ts` | L82 | `title: "获取状态失败"` | 🟡 中 | Toast 错误提示文案,建议抽取为常量 |
|
||
| 7 | `.ts` | L86–93 | Storage key: `"token"`, `"refreshToken"`, `"userId"`, `"userStatus"` | 🟡 中 | 多处重复使用,建议抽取为常量统一管理 |
|
||
| 8 | `.ts` | L94 | `url: "/pages/login/login"` | 🟢 低 | 切换账号跳转路径 |
|
||
|
||
## 三、已对接 API
|
||
|
||
### 3.1 `GET /api/xcx/me`
|
||
|
||
| 属性 | 值 |
|
||
|------|-----|
|
||
| 调用位置 | `fetchStatus()` — L37-81 |
|
||
| 触发时机 | `onLoad()`、`onShow()`、`onPullDownRefresh()` |
|
||
| 请求方式 | `GET` |
|
||
| 需要鉴权 | ✅ `needAuth: true` |
|
||
| 请求参数 | 无 |
|
||
| 响应字段(使用中) | `user_id`, `status`, `nickname`, `latest_application` |
|
||
| 响应字段(application 子对象) | `id`, `site_code`, `role_type`, `phone`, `status`, `reject_reason`, `created_at` |
|
||
|
||
**状态流转逻辑:**
|
||
|
||
| `data.status` 值 | 行为 |
|
||
|-------------------|------|
|
||
| `"approved"` | `wx.reLaunch` → `/pages/mvp/mvp` |
|
||
| `"disabled"` | `wx.reLaunch` → `/pages/no-permission/no-permission` |
|
||
| `"rejected"` | `wx.reLaunch` → `/pages/no-permission/no-permission` |
|
||
| `"new"` | `wx.reLaunch` → `/pages/apply/apply` |
|
||
| `"pending"` | 留在当前页,展示审核中 UI |
|
||
|
||
**副作用:**
|
||
- 同步 `globalData.authUser`(`userId`, `status`, `nickname`)
|
||
- 写入 Storage:`userId`, `userStatus`
|
||
|
||
## 四、前端计算/派生数据
|
||
|
||
| # | 数据 | 来源 | 说明 |
|
||
|---|------|------|------|
|
||
| 1 | `statusBarHeight` | `wx.getWindowInfo().statusBarHeight` | 系统 API,用于自定义导航栏顶部偏移 |
|
||
| 2 | `status` | 从 API 响应 `data.status` 赋值 | 控制 pending/rejected 两种 UI 状态 |
|
||
| 3 | `application` | 从 API 响应 `data.latest_application` 提取 | 展示申请信息摘要(球房ID、身份、手机号) |
|
||
|
||
## 五、路由参数
|
||
|
||
无。本页面不接收任何路由参数。
|
||
|
||
## 六、WXML 硬编码文案
|
||
|
||
| # | 内容 | 位置 | 建议 |
|
||
|---|------|------|------|
|
||
| 1 | `"加载中..."` | loading 区域 | 可保留 |
|
||
| 2 | `"申请审核中"` | main-title(pending) | 可保留 |
|
||
| 3 | `"申请未通过"` | main-title(rejected) | 可保留 |
|
||
| 4 | `"您的访问申请已提交成功,正在等待管理员审核,请耐心等待"` | sub-title(pending) | 可保留 |
|
||
| 5 | `"很抱歉,您的申请未通过审核"` | sub-title(rejected) | 可保留 |
|
||
| 6 | `"审核进度"` | progress-title | 可保留 |
|
||
| 7 | `"通常需要 1-3 个工作日"` | progress-desc | 🟡 如审核时效变化需同步修改 |
|
||
| 8 | `"已提交"` / `"审核中"` / `"通过"` | 进度步骤标签 | 可保留 |
|
||
| 9 | `"拒绝原因"` | reject-title | 可保留 |
|
||
| 10 | `"申请信息"` | info-card-title | 可保留 |
|
||
| 11 | `"球房ID"` / `"申请身份"` / `"手机号"` | info-label | 可保留 |
|
||
| 12 | `"如有疑问,请联系管理员"` | contact-text | 可保留 |
|
||
| 13 | `"更换登录账号"` | switch-btn-text | 可保留 |
|
||
|
||
## 七、联调 TODO
|
||
|
||
| # | 优先级 | 事项 | 当前状态 | 说明 |
|
||
|---|--------|------|----------|------|
|
||
| 1 | — | — | — | 本页面已完成 API 对接,无待联调项 |
|
||
|
||
**结论:** reviewing 页面已完全对接 `GET /api/xcx/me`,无 mock 数据残留,联调状态良好。唯一建议是将 Storage key 和 Toast 文案抽取为常量统一管理。
|