# 配房可选酒店接口增加 dayIndex 参数

**日期**: 2026-03-20
**类型**: 接口变更（不兼容）
**影响模块**: 订单管理 → 配房

---

## 变更说明

`GET /admin/order/{orderId}/available-hotels` 接口新增**必填参数** `dayIndex`，因为每天行程的酒店可能不同，配房需要按天查询可选酒店。

### 变更前

```
GET /admin/order/{orderId}/available-hotels
```
返回所有天的快照酒店，不区分行程天。

### 变更后

```
GET /admin/order/{orderId}/available-hotels?dayIndex=2
```
只返回指定行程天的快照酒店标注。

---

## 接口定义

### `GET /admin/order/{orderId}/available-hotels`

#### 请求参数

| 参数 | 类型 | 必填 | 说明 |
|------|------|------|------|
| orderId | Long | 是 | 订单ID（路径参数） |
| dayIndex | Integer | **是** | 行程第几天（从1开始，Query参数） |

#### 响应格式

```json
{
  "code": 200,
  "data": [
    {
      "hotelId": "2033911514863382529",
      "hotelName": "恩和瓦西里民宿",
      "inSnapshot": true
    },
    {
      "hotelId": "2033911514863382530",
      "hotelName": "额尔古纳大酒店",
      "inSnapshot": false
    }
  ]
}
```

#### 响应字段说明

| 字段 | 类型 | 说明 |
|------|------|------|
| hotelId | String | 酒店ID |
| hotelName | String | 酒店名称 |
| inSnapshot | Boolean | 是否在该天产品快照中（true=该天行程已安排的酒店，应优先选择） |

- `inSnapshot=true` 的酒店排在前面
- 同时返回所有启用酒店供选择

---

## 前端改动要点

配房弹窗中选择酒店时，调用此接口需传当前正在配的那一天的 `dayIndex`：

```js
// 示例：配第2天的房间
const res = await request.get(`/admin/order/${orderId}/available-hotels`, {
  params: { dayIndex: 2 }
})
```

**注意**：`dayIndex` 从 **1** 开始，对应行程的第1天、第2天...

---

## 同步修复：产品保存报错

`refundPolicyIds` 字段兼容前端传空数组 `[]` 的情况（之前只接受对象 `{}`，传 `[]` 会返回400）。现在传 `[]` 等价于 `null`，不影响保存。
