hl-api-changelog/changelogs-v2/2026-07/68_房务选择酒店误传preferredHotelId导致只显示1家-前端待处理.md
2026-07-20 09:33:16 +08:00

2.2 KiB

房务选择酒店误传 preferredHotelId 导致只显示 1 家(前端待处理)

现象

订单 2078739922130243586 第 1 晚打开“选择酒店”弹窗,只显示定制师指定的“呼伦贝尔香格里拉大酒店”,分页显示“共 1 条”,页面提示“已限定定制师指定酒店”。

已确认原因

192.168.100.160:9527 当前 Vite 服务实际返回的 PickHotelModal.vue 仍在候选请求中传递:

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。
  • 不传 preferredHotelIdkeyword=满洲里:返回 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