# 配房需求：酒店、房型、房间数均改为非必填

> 模块：管理后台 · 调整订单弹窗 · 酒店安排 / 配房需求
> 类型：前端处理说明（需求口径，需前后端校验同步放宽）
> 日期：2026-07-03

## 背景

当前调整订单弹窗的「酒店安排」里，前端会在候选酒店行校验房型必填，出现类似「第 1 晚候选 2 请选择房型」的提示。

新需求口径：配房需求只表达定制师诉求，具体酒店 / 房型 / 房间数都可以交给房控处理，因此这三项都不能作为前端提交前的必填项。

## 涉及接口

- `POST /v3/admin/order/{orderId}/adjustment/submit`，当 `updates.hotelRequirement` 有值时。
- `PUT /v3/admin/order/{orderId}/hotel-requirement`，独立提交 / 修改用房需求时。

## 前端处理口径

调整订单 → 酒店安排：

- 候选酒店可以不选；不选表示「房控按诉求找酒店」。
- 房型可以不选；即使已经选择了酒店，也不要再弹「请选择房型」。
- 房间数可以不填；不要强制默认 1 / 2，也不要把空值转成 `0`。
- 用户只填写备注 / 诉求、不填酒店 / 房型 / 房间数时，也允许保存。
- 只有用户主动删除候选行时才移除该候选；空字段本身不等于删除候选。

## Payload 建议

空值请用 `null` 或直接省略字段，不要传空字符串或 `0`：

```json
{
  "updates": {
    "hotelRequirement": {
      "days": [
        {
          "dayNumber": 1,
          "segments": [
            {
              "remark": "希望离餐厅近，房控按实际可订情况安排",
              "candidates": [
                {
                  "hotelId": null,
                  "hotelName": null,
                  "rooms": [],
                  "remark": "酒店待房控确认"
                },
                {
                  "hotelId": 2029926129876320258,
                  "hotelName": "海拉尔嘉世豪酒店",
                  "rooms": [
                    {
                      "roomTypeId": null,
                      "roomTypeName": null,
                      "roomCategory": null,
                      "roomCount": null,
                      "remark": "房型和间数待房控确认"
                    }
                  ],
                  "remark": "可优先考虑这家酒店"
                }
              ]
            }
          ]
        }
      ]
    }
  }
}
```

## 兼容提醒

历史通知里曾要求「选酒店后房型必填、房间数 > 0」。该口径已被本需求覆盖，前端不要再按旧口径做本地必填拦截。

当前后端旧校验可能仍会返回：

- `582019`：候选方案必须至少含 1 个房型行
- `582020`：房型行必须指定房型
- `582016`：roomCount 必须 > 0

如联调时仍遇到这些错误码，说明后端校验尚未同步放宽；前端不应恢复必填校验，应按本需求等待后端契约对齐。

## 验收点

- 第 1 晚候选酒店留空，可以提交。
- 选择了酒店但房型留空，不再提示「请选择房型」。
- 房间数留空，不再提示必填或自动写入 `0`。
- 只填备注 / 诉求、不填酒店 / 房型 / 房间数，前端允许保存。
