From 5b73c9977992c51eec4de7acbd420e2061670578 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Wed, 3 Jun 2026 11:27:20 +0800 Subject: [PATCH] =?UTF-8?q?docs(v2):=20=E4=BA=A7=E5=93=81=20Step5=20?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E6=A0=87=E5=87=86=20tab=20=E5=8F=AA=E8=AF=BB?= =?UTF-8?q?=E9=A2=84=E8=A7=88=E6=8E=A5=E5=8F=A3(PR=20#3377)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...品Step5服务标准tab-只读预览接口-管理后台.md | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 changelogs-v2/2026-06/03_产品Step5服务标准tab-只读预览接口-管理后台.md diff --git a/changelogs-v2/2026-06/03_产品Step5服务标准tab-只读预览接口-管理后台.md b/changelogs-v2/2026-06/03_产品Step5服务标准tab-只读预览接口-管理后台.md new file mode 100644 index 0000000..6c6de33 --- /dev/null +++ b/changelogs-v2/2026-06/03_产品Step5服务标准tab-只读预览接口-管理后台.md @@ -0,0 +1,69 @@ +# 产品编辑 Step5「服务标准」tab —— 只读预览接口(一个接口返三块) + +- **端类型**:管理后台 +- **变更类型**:新增接口 +- **日期**:2026-06-03 +- **PR**:[#3377](https://git.1814.love:8443/wx/HL/pulls/3377) +- **后端负责人**:wx + +--- + +## ① 背景 + +产品编辑 Step5「补充信息」新增「服务标准」tab,一屏内同时给运营看三块(均**只读、实时**,不冻快照): +1. 当前绑定的服务标准模板内容 +2. 各行程节点的服务标准(来自资源 service_standard) +3. 各行程节点的退费说明(来自资源退费说明) + +模板的**绑定(写)**走既有 Step5 保存(`serviceStandardTemplateId`,见 6-03 另一篇《服务标准模板与产品关联说明》)。本接口只负责 tab 内的**只读预览展示**。 + +--- + +## ② 新增接口 + +| 接口 | 方法 | 路径 | 鉴权 | +|------|------|------|------| +| 服务标准预览 | GET | `/admin/product/item/{id}/service-standard-preview` | admin token;产品数据权限(与产品详情同口径) | + +响应 `data` 结构: + +``` +{ + "templateId": 2061281473171775490, // 当前绑定模板ID,未绑定为 null + "template": { // 绑定模板完整内容,未绑定为 null + "id", "name", "intro", "applicableScope", + "sections": [ { "title", "items": [ { "title","content","remark","color","contactName","phone" } ] } ] + }, + "nodes": [ // 行程节点的服务标准+退费说明(仅含有内容的节点;皆空的节点不返回) + { + "dayNumber": 2, + "nodeName": "呼和诺尔草原旅游区", + "nodeType": "SCENIC", // SCENIC/ACTIVITY/HOTEL/RESTAURANT... + "serviceStandard": "……", // 资源节点服务标准,无则 null + "refundNote": { // 退费说明,无则 null + "intro": "……", + "items": [ + { "title","amount","unitLabel","settleScope","settleScopeLabel","remark","effectiveFrom","effectiveTo" } + ] + } + } + ] +} +``` + +--- + +## ③ 测试服实测(已部署 dev-v3) + +- 12 个产品调用全 `code=200`。 +- **模板块**:产品 2056938821550747650 → `templateId=2061281473171775490`、`template` 含完整 sections,正确返回。 +- **退费说明块**:产品 2056944461216100353 → 节点「呼和诺尔草原旅游区(SCENIC)」`refundNote.items` 2 条(成人未参加/整团未到),正确返回。 +- **节点服务标准块**:当前测试库 66 个景区**均未配置 `service_standard`**,故 `serviceStandard` 现返回 null。字段链路已端到端打通(资源端已填充、本接口已映射),**运营在资源上配置 service_standard 后即自动展示**,前端无需改动。 + +--- + +## ④ 前端动作 + +- 在 Step5「服务标准」tab 调本接口渲染三块(模板内容 + 节点服务标准 + 节点退费说明),均为**只读展示**。 +- 节点列表已按天/节点顺序、过滤掉无服务标准且无退费说明的节点;`serviceStandard`/`refundNote` 可能为 null,按需隐藏。 +- 与模板**绑定**(写)配合使用:绑定走 `PUT /admin/product/item/{id}/supplement` 的 `serviceStandardTemplateId`,预览走本接口。