docs: 配房酒店列表接口 + 订单绑定优化 + 订单过期修复

这个提交包含在:
API Changelog Bot 2026-03-19 12:16:53 +08:00
父节点 f9eca14528
当前提交 b7d5f9afbe

查看文件

@ -0,0 +1,110 @@
# 配房酒店列表 + 订单绑定优化 - 前端对接指南
> **日期**: 2026-03-19
> **后端状态**: ✅ 已完成,测试环境已部署
> **涉及模块**: 订单服务hl-order-service、资源服务hl-resource-service
---
## 一、新增接口:配房可选酒店列表
### 功能说明
管理员在配房页面选择酒店时,调用此接口获取所有启用酒店列表。**该订单产品快照中包含的酒店会标记 `inSnapshot=true` 并排在最前面**,方便管理员优先选择行程已安排的酒店。
---
### 接口定义
```
GET /admin/order/{orderId}/available-hotels
```
### 请求参数
| 参数 | 位置 | 类型 | 必填 | 说明 |
|------|------|------|------|------|
| orderId | path | Long | 是 | 订单ID |
### 响应示例
```json
{
"code": 200,
"message": "成功",
"data": [
{
"hotelId": "2029926129876320258",
"hotelName": "海拉尔嘉世豪酒店",
"inSnapshot": true
},
{
"hotelId": "2029926131830865921",
"hotelName": "阿尔善国际维景度假温泉酒店",
"inSnapshot": true
},
{
"hotelId": "2029926133256929282",
"hotelName": "阿尔山成悦大酒店",
"inSnapshot": true
},
{
"hotelId": "2023714929877450753",
"hotelName": "呼伦贝尔香格里拉大酒店",
"inSnapshot": false
}
]
}
```
### 响应字段说明
| 字段 | 类型 | 说明 |
|------|------|------|
| hotelId | String | 酒店ID |
| hotelName | String | 酒店名称 |
| inSnapshot | Boolean | 是否在产品快照中true=行程已安排的酒店,应优先选择) |
### 排序规则
1. `inSnapshot=true` 的酒店排在最前面
2. 同组内保持原始排序(按酒店名称)
### 使用场景
配房页面(订单详情 → 分配酒店):
1. 调用此接口获取酒店列表
2. 展示为下拉选择或列表,`inSnapshot=true` 的酒店**特殊标注**(如加标签"行程推荐"、置顶分组等)
3. 用户选择酒店后,再调用 `GET /internal/resource/prices/room-types-by-hotel/{hotelId}` 获取该酒店的房型列表
4. 最终调用 `PUT /admin/order/{orderId}/hotel-assignment` 提交分配
---
## 二、行为变更:小程序订单列表查询优化
### 变更说明
**之前**:小程序用户只能看到 `contactPhone + contactName` 双匹配的未绑定订单(管理员创建的订单联系人姓名必须和用户 realName 完全一致才能显示)。
**现在**:改为仅 `contactPhone` 匹配。只要订单联系人手机号和用户登录手机号一致,即可在小程序看到该订单。
### 影响范围
- `GET /mp/order/list`C端订单列表
- 订单自动绑定逻辑(用户完善资料后自动绑定未归属订单)
### 前端无需改动
此变更为后端查询逻辑调整,前端接口调用方式不变。
---
## 三、BUG修复订单过期任务
### 变更说明
未支付订单不再受出发日期保护,超时未支付一律自动取消。之前出发日期已过的待支付订单会被跳过,导致永远停留在"待支付"状态。
### 前端无需改动
后端定时任务逻辑调整,前端无需任何改动。