3.8 KiB
二期 v3 服务标准重构:模板条目改表结构补 6 字段 + 行程点位服务标准实时取资源
服务: hl-product-service-v2 / hl-resource-service / hl-order-service-v3 PR: #3254(模板改表结构)、#3255(点位取资源)、#3256(迁移 hotfix) Issue: #3253、#3250 日期: 2026-05-29 影响: 🟡 服务标准这一页分两块都有字段变化,前端需按 6 字段渲染模板条目 + 在行程点位渲染新的
serviceStandard
总览(前端 mmg 必读)
服务标准(出团服务说明书)这页分两块,本次都动了字段:
- 模板块(模板标题/提示语/分组[出团注意事项·退费说明·温馨提示]+条目)——条目字段补全为 6 字段。
- 行程点位块(每个酒店/景点/活动/服务点位下那段服务标准)——改为实时从资源取。
两块正交:模板块=出团总则类,点位块=资源自带。已测试服部署 + 验证。
1. 服务标准模板条目:3 字段 → 6 字段(#3254)
接口路径不变:/admin/product/service-standard-template(create/update/detail/page),响应形状仍是 sections[].items[]。仅条目字段变化:
| 字段 | 说明 | 备注 |
|---|---|---|
title |
主文案 | 必填 |
content |
正文 | 可空 |
remark |
备注/灰色二级说明 | 新增 |
color |
文案颜色 #RRGGBB |
新增 |
contactName |
联系人(如「房务·舒馨」) | 新增 |
phone |
手机号(如 15391131404) | 新增 |
- 旧
contact字段移除(拆成contactName+phone)。 color校验:必须#RRGGBB格式;无值传null或空串""均可(PR #3257 起空串也放行,仍拒red等非法值)。- 后端存储由 JSON 列改为关系表(对前端无感,API 形状不变)。
- ✅ 模板详情/列表 RespVO 已返
statusLabel(ENABLED→启用/DISABLED→停用,PR #3257 起),前端可直接渲染中文,无需自行映射(与装备建议对齐)。
补充更新(PR #3257):上面两条「⚠️ 无 statusLabel」「空串会 400」的遗留已修复——
statusLabel现已返回;color空串现已放行。
2. 订单详情「服务标准」Tab 同步 6 字段(#3254)
GET /v3/admin/order/{orderId}/detail/service-standard 的 serviceStandard.sections[].items[] 同步上述 6 字段(快照仍冻结,只是字段变多)。
3. 行程点位服务标准:实时从资源取(#3255)
GET /v3/admin/order/{orderId}/itinerary/full → days[].nodes[] 新增 serviceStandard 字段:
- 值实时按
resourceId从资源(酒店/景点/活动/服务)拉取,不冻快照——运营改了资源的服务标准,老订单详情同步更新。 - 资源查不到 / 调用降级时该字段
null,不报错。 - 前端在每个点位下渲染这段
serviceStandard(区别于点位的电话/联系人)。
4. 资源新增「服务标准」字段(#3255)
酒店/景点/活动/服务 4 类资源新增 serviceStandard 字段(admin 编辑表单需加该输入框,最长 10000):
- 酒店:
GET/PUT /admin/hotel/item/{id}已含serviceStandard - 景点/活动/服务 admin create/update/detail 同步含该字段
验证(测试服 dev-v3 已部署 + 实测)
- 模板 6 字段 admin E2E:创建(含 color/remark/contactName/phone)→ 详情回显,6 字段逐项 round-trip 通过;非法 color「red」被 400 拦截;多分组(2 组)正确。
- 资源
serviceStandard:hotel 详情接口已含该字段(DB 列 + 内部批量详情已接通)。 - 点位
NodeVO.serviceStandard:字段已上线,实时拉取 + 资源缺失降级 null 逻辑已单测覆盖。 - 三服务(resource/product-v2/order-v3)测试服双实例已部署。
如需任一接口完整响应样例,回我即可。