hl-api-changelog/changelogs-v2/2026-06/03_产品Step5服务标准tab-只读预览接口-管理后台.md

3.2 KiB

产品编辑 Step5「服务标准」tab —— 只读预览接口(一个接口返三块)

  • 端类型:管理后台
  • 变更类型:新增接口
  • 日期2026-06-03
  • PR#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=2061281473171775490template 含完整 sections,正确返回。
  • 退费说明块:产品 2056944461216100353 → 节点「呼和诺尔草原旅游区(SCENIC)」refundNote.items 2 条(成人未参加/整团未到),正确返回。
  • 节点服务标准块:当前测试库 66 个景区均未配置 service_standard,故 serviceStandard 现返回 null。字段链路已端到端打通资源端已填充、本接口已映射运营在资源上配置 service_standard 后即自动展示,前端无需改动。

④ 前端动作

  • 在 Step5「服务标准」tab 调本接口渲染三块(模板内容 + 节点服务标准 + 节点退费说明),均为只读展示
  • 节点列表已按天/节点顺序、过滤掉无服务标准且无退费说明的节点;serviceStandard/refundNote 可能为 null,按需隐藏。
  • 与模板绑定(写)配合使用:绑定走 PUT /admin/product/item/{id}/supplementserviceStandardTemplateId,预览走本接口。