# 房务选择酒店误传 preferredHotelId 导致只显示 1 家(前端待处理) ## 现象 订单 `2078739922130243586` 第 1 晚打开“选择酒店”弹窗,只显示定制师指定的“呼伦贝尔香格里拉大酒店”,分页显示“共 1 条”,页面提示“已限定定制师指定酒店”。 ## 已确认原因 `192.168.100.160:9527` 当前 Vite 服务实际返回的 `PickHotelModal.vue` 仍在候选请求中传递: ```js preferredHotelId: on.specifiedHotelIds?.length === 1 ? String(on.specifiedHotelIds[0]) : undefined ``` 该参数会要求后端按指定酒店过滤,因此响应只剩 1 家。这与当前产品意图“定制师指定酒店置顶并标记,房务仍可选择其他酒店”冲突。 当前 `D:/work2/hl-ui` 源码已经不再传该参数,说明 `192.168.100.160:9527` 运行的是未同步的工作树或旧代码。 ## 接口证据 接口:`GET /v3/admin/hotel-candidates` 公共参数: - `orderId=2078739922130243586` - `dayNumber=1` - `stayDate=2026-07-22` - `roomCount=2` - `limit=50` 结果: - 不传 `preferredHotelId`、无关键词:返回 21 家;香格里拉为 `isConsultantRecommended=true` 且排第 1。 - 不传 `preferredHotelId`、`keyword=满洲里`:返回 3 家,包括香格里拉、满洲里凯旋大酒店、满洲里饭店(百年俄式)。 - 当前截图环境传入唯一 `preferredHotelId`:只返回指定酒店 1 家。 ## 前端处理要求 1. 房务候选请求不得传 `preferredHotelId`,无论 `specifiedHotelIds` 是 1 个还是多个。 2. `specifiedHotelIds` 仅用于页面提示;推荐标记以接口 `isConsultantRecommended` 为准。 3. 不输入关键词时展示后端返回的全部候选;跨城搜索继续使用 `keyword`。 4. 确认 `192.168.100.160:9527` 的 Vite 进程工作目录与 `D:/work2/hl-ui` 当前目标分支一致,重启 Vite 后清除模块缓存并复测。 ## 验收 - 打开本订单第 1 晚选择酒店,不输入关键词时不再显示“共 1 条”,可看到其他酒店。 - 搜索“满洲里”返回 3 家。 - 香格里拉仍显示“定制师推荐”,但不会阻止选择其他酒店。 - Network 中 `/v3/admin/hotel-candidates` 请求不含 `preferredHotelId`。