docs(v2): 提房需求每家酒店备注+分住明细转发房务详情 changelog (PR#4116)
这个提交包含在:
父节点
40c4c956cb
当前提交
28deca3a56
@ -0,0 +1,80 @@
|
||||
# 提房需求「每家酒店备注 + 每晚备注 + 分住明细」完整转发房务详情 — 修改接口 — 管理后台
|
||||
|
||||
> 变更类型:✨ 请求字段新增(每家酒店备注)+ 响应字段新增(房务详情转发结构化数据)
|
||||
> 端类型:管理后台(定制师 · 调整订单/提房需求 → 房务 · 订单详情)
|
||||
> 日期:2026-06-20
|
||||
> 服务:hl-order-service-v3
|
||||
> PR:https://git.1814.love:8443/wx/HL/pulls/4116
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ 关键说明(给前端)
|
||||
|
||||
定制师「调整订单 / 提房需求」填的结构化数据,要在房务抢单后的订单详情里**完整看到**。本次补齐:每家选的酒店可写备注、每晚可写备注,连同同晚分住的多家酒店全部透传房务。
|
||||
|
||||
### 1. 提房需求表单(定制师端,写入)
|
||||
|
||||
`PUT /v3/admin/order/{id}/hotel-requirement`,body 里:
|
||||
|
||||
| 备注类型 | 字段 | 状态 |
|
||||
|---|---|---|
|
||||
| **整单自定义备注** | 顶层 `remark`(≤500) | **早已存在**,前端把那个自定义备注输入框接到它即可(后端无改动) |
|
||||
| **每晚备注** | `days[].remark`(≤200) | 早已存在 |
|
||||
| **每家酒店备注** | `days[].hotels[].remark`(≤200) | **本次新增**,每家选的酒店可单独写备注(如「靠湖一侧/含双早/可加床」) |
|
||||
|
||||
请求示例:
|
||||
|
||||
```json
|
||||
PUT /v3/admin/order/60001/hotel-requirement
|
||||
{
|
||||
"days": [
|
||||
{
|
||||
"dayNumber": 1,
|
||||
"remark": "当晚整体安排说明",
|
||||
"hotels": [
|
||||
{"hotelId": 80001, "hotelName": "湖景酒店", "roomCategory": "KING", "roomCount": 2, "budget": 900.00, "remark": "靠湖一侧"},
|
||||
{"hotelId": 80002, "hotelName": "山景酒店", "roomCategory": "TWIN", "roomCount": 1, "remark": "含双早(同一晚分住)"}
|
||||
]
|
||||
}
|
||||
],
|
||||
"specialTags": ["高楼层", "景观房"],
|
||||
"remark": "整单自定义备注:客人怕吵"
|
||||
}
|
||||
```
|
||||
|
||||
### 2. 房务订单详情(房务端,读取 → 抢单后能看到全部)
|
||||
|
||||
`GET /admin/house/orders/{orderId}` 的 `requirement.current`(即 `RequirementSnapshot`):
|
||||
|
||||
| 字段 | 说明 | 状态 |
|
||||
|---|---|---|
|
||||
| `consultantRemark` | **整单自定义备注**(= 提房的顶层 `remark`) | 早已转发 |
|
||||
| `specialTags` / `specialTagLabels` | 特殊诉求标签 | 早已转发 |
|
||||
| `days[].remark` | **当晚备注** | **本次新增转发** |
|
||||
| `days[].hotels[]` | **当晚定制师选的全部酒店明细**(含同晚分住多家,不再只给 1 家) | **本次新增** |
|
||||
|
||||
`days[].hotels[]` 每项(`HotelChoice`):
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|---|---|---|
|
||||
| hotelId | String(雪花) | 定制师指定酒店 ID |
|
||||
| hotelName | String | 酒店名快照 |
|
||||
| roomCategory | String | 房型字典 code |
|
||||
| roomCount | Integer | 房间数 |
|
||||
| budget | String/null | 预算/晚 |
|
||||
| remark | String | **每家酒店备注** |
|
||||
|
||||
> 兼容:`days[]` 原有的扁平字段(`roomCategory/roomCount/budget/preferredHotelId`,取自当晚第 1 家)**保持不变**,老前端不受影响;本次只是**新增** `days[].remark` 与 `days[].hotels[]` 两项,房务详情其余结构零变化。
|
||||
|
||||
---
|
||||
|
||||
## 测试
|
||||
|
||||
- `HouseDetailAggregatorTest` 21/21 绿(新增 1 例:同晚分住 2 家 + 每家 hotelName/remark + 当晚 remark 完整转发,含既有扁平字段防回归断言);`RequirementServiceTest` 99/0(VO 加字段无序列化回归)。
|
||||
- 已部署测试服 order-v3 双实例 success;9443 实测:房务详情端点无回归、提房 VO 接受新 `days[].hotels[].remark`/`days[].remark` 字段。
|
||||
- 注:测试环境当前无可抢房务单,未在真实订单上观测到转发取值;映射逻辑由单测覆盖。
|
||||
|
||||
## 备注
|
||||
|
||||
- 网关无需改。
|
||||
- 定制师端「自定义备注输入框」「每家酒店备注输入框」UI 由前端实现,后端字段已就位。
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户