hl-api-changelog/changelogs-v2/2026-06/20_4116_提房需求每家酒店备注+分住明细转发房务详情-修改接口-管理后台.md

81 行
3.7 KiB
Markdown

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

# 提房需求「每家酒店备注 + 每晚备注 + 分住明细」完整转发房务详情 — 修改接口 — 管理后台
> 变更类型:✨ 请求字段新增(每家酒店备注)+ 响应字段新增(房务详情转发结构化数据)
> 端类型:管理后台(定制师 · 调整订单/提房需求 → 房务 · 订单详情)
> 日期2026-06-20
> 服务hl-order-service-v3
> PRhttps://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/0VO 加字段无序列化回归)。
- 已部署测试服 order-v3 双实例 success;9443 实测:房务详情端点无回归、提房 VO 接受新 `days[].hotels[].remark`/`days[].remark` 字段。
- 注:测试环境当前无可抢房务单,未在真实订单上观测到转发取值;映射逻辑由单测覆盖。
## 备注
- 网关无需改。
- 定制师端「自定义备注输入框」「每家酒店备注输入框」UI 由前端实现,后端字段已就位。