309598bfa6
- 在ApiClient中新增submitFeedback、myFeedback、helpArticles、helpArticleDetail、 siteArticles、promotions、vipPackages、createVipOrder、vipOrders等方法 - 添加帮助文章和站点资讯的参数验证逻辑 - 更新测试文件添加新的API方法测试用例 - 在HTML页面中添加反馈、帮助和VIP服务相关页面的脚本引用 - 更新加入家谱页面为完整的申请流程界面 - 修改资讯详情页面为站点资讯展示页面 - 更新AxiosRequestUtil中认证处理逻辑 - 添加世系树渲染的HTML生成函数用于页面复用 - 更新文档中的API契约说明和页面规划
40 lines
1.8 KiB
Markdown
40 lines
1.8 KiB
Markdown
# 帮助中心 PC 接口对接计划
|
|
|
|
目标:把现有 `help.html` 的示例问答替换为后端正式 PC 帮助文章列表和详情,不混入官网文章、推广或家谱业务。
|
|
|
|
## 全局约束
|
|
|
|
- 只调用 `GET /genealogy/pc/help-articles` 和 `GET /genealogy/pc/help-articles/{helpId}`。
|
|
- 后端控制器未标记匿名访问,部署环境要求登录;两个接口发送当前 PC token。
|
|
- `helpCategory` 是唯一 Query 字段;`helpId` 只能来自列表响应。
|
|
- 展示字段仅为 `helpCategory`、`helpTitle`、`helpContent`、`viewCount`。
|
|
- `coverOssId`、`sortOrder`、`status`、`remark` 不展示,不允许用户输入 ID。
|
|
- 正文转义后展示,不执行响应中的 HTML。
|
|
- 后端项目只读。
|
|
|
|
## 任务 1:冻结客户端契约
|
|
|
|
- 在 `tests/api-client-contract.test.js` 先增加失败测试。
|
|
- 在 `utils/ApiClient.js` 增加 `helpArticles(query)` 与 `helpArticleDetail(helpId)`。
|
|
- 验证 method、path、Query 白名单、登录鉴权和长 ID 字符串。
|
|
|
|
## 任务 2:实现帮助文章边界
|
|
|
|
- 新增 `tests/help-pages.test.js` 并先观察失败。
|
|
- 新增 `public/js/help-pages.js`。
|
|
- 校验完整 `HelpArticleVo` 输入,只向页面返回安全展示字段。
|
|
- 列表任一元素非法时整批失败;详情必须与请求 ID 一致。
|
|
- 转义标题、分类和正文。
|
|
|
|
## 任务 3:开放帮助中心
|
|
|
|
- 先用页面契约测试证明现有示例内容不符合真实接口状态。
|
|
- 修改 `help.html`,提供加载、空、成功和失败状态。
|
|
- 展开文章时调用详情接口,不制造编辑、邀请或后台操作。
|
|
|
|
## 任务 4:规划与验证
|
|
|
|
- 更新 `docs/PC接口对接规划.md` 的字段来源、页面时机与阶段 7 进度。
|
|
- 运行帮助中心专项测试、全量测试、语法检查和 `diff --check`。
|
|
- 浏览器验证真实列表/空状态和控制台。
|