# 用房需求「预算/晚」改为方案当晚房费合计 + 房务列表补 houseStatusLabel + 房型摘要翻中文

> 模块：订单详情 / 房务管家列表（管理后台）
> 类型：后端口径修正 + additive 字段（已合并 dev-v3 + 部署测试服 + API 实测闭环）
> 日期：2026-06-30
> 关联：PR #4659（预算口径）、#4658（houseStatusLabel / 房型摘要）

## 1. 「预算/晚」口径修正（方案多房型行求和）
工单 #4645 候选升级为「方案」(一个方案=1酒店+多条房型行)后，段级 `budget`（预算/晚）口径修正：

- **新口径**：`segment.budget` = 该段**各候选(方案)当晚总价的最大值**，单方案当晚总价 = **Σ(行协议价 × 行间数)**。
- 例（测试服实测）：方案 = 嘉世豪[标准间 ¥380×2间 + 豪华大床房 ¥420×2间] → `budget = 380×2 + 420×2 = **1600.00**`。
- 旧口径曾误为「段内单间最高协议价」(显示 420)，现已改对。
- 仍是「后端按协议价反查覆盖、前端传值不作数」；某房型行无协议价日历则该行不计入。

**前端**：订单详情/房务详情的「预算/晚」直接渲染该值即可，注意数值口径已变为**整晚房费合计**（会比旧值大），无需改代码。

## 2. 房务列表补 `houseStatusLabel`（additive）
`GET /v3/admin/order/grab-pool/my-claims/hotel` 与 `/all-claims/hotel` 列表项**新增 `houseStatusLabel`**（中文状态 label，与订单详情/工作台字段名对齐）。

- `houseStatus` 字段**保持现状**（历史返中文 label，前端在用，未变，兼容）。
- 新增 `houseStatusLabel`（中文，单源 HouseStateEnum）——**前端建议统一改用 `houseStatusLabel`**（与详情 `progress.houseStatusLabel`、工作台同名），便于一致渲染/后续平滑迁移。
- 实测：my-claims 返回 `houseStatus=配房中` + `houseStatusLabel=配房中`。

## 3. 订单详情行程 `roomTypeSummary` 翻中文
`GET /v3/admin/order/{id}/itinerary` → `hotelGroup.requirement.roomTypeSummary` 由英文 code 改为中文 label：

- 旧：`STANDARD×6 / DELUXE×6`；新：`标间×6 / 豪华房×6`。
- 前端直接渲染该字符串即可，无需改代码。

## 1b. 【前端必改】调整订单编辑界面「预算/晚」client-side 估算要求和
「调整订单 → 酒店安排」编辑界面里，每个方案的「预算/晚」是**前端 client-side 实时算的估算值**（提交前后端还没算）。当前实测它显示的是**单房型协议价/最高价**（如 标准间¥380 + 豪华大床房¥420 → 显示 ¥420），**没有求和**，与提交后后端存储/返回的口径（Σ(行协议价×间数)=380×2+420×3=**2020**）不一致。

- 请把编辑界面「预算/晚」估算改为 **Σ(每条房型行 协议价 × 间数)**（与后端口径一致）；
- 房型行的协议价取该行所选房型的协议价（选房型弹窗 `roomTypes[].protocolPrice` 或行内已带的协议价快照）；
- 提交后仍以后端反查回填为准（前端估算仅作提交前参考）。

## 备注（无前端影响，仅知悉）
同批后端还修了：房务写口角色门前置到幂等/锁之前（非房务角色越权调写口直接 808090/808091，不再占用幂等窗口）；订单送签/打印行程的跨域调用改走中立契约（架构门禁清零）。均为内部加固，不改任何对外契约。
