hl-api-changelog/changelogs-v2/2026-06/25_4412-4414_房务待办+日历+不限库存_前端重新对接_管理后台.md
API Changelog Bot 8819ddbf24 docs(changelog-v2): 房务待办+日历+不限库存前端重新对接(#4411 #4413)
待办排序倒置修正/stats枚举常量key+随筛选/urgency三层/UNDELIVERED下线;日历每晚落点+下钻stayDate/询房中桶/异常桶;不限库存unlimited字段。测试服实测通过。
2026-06-25 23:43:41 +08:00

4.5 KiB

房务「待办 + 日历」模块逻辑修复 + 不限库存读路径修复 — 前端需重新对接

变更类型:🐛 逻辑修复(后端,房务管家前端需对照重新对接待办/日历/库存展示 端类型:管理后台(房务管家·待办看板 / 日历视图 / 配房候选) 日期2026-06-25 工单:#4411 + #4413 PR#4412 + #4414 服务hl-order-service-v3 + hl-resource-service双实例已部署 health UP,测试服 API+DB 实测通过


背景

34-agent 深度逻辑审计 + 17-agent 跨 PR 集成检验,确认并修复房务待办、日历、库存读路径一批逻辑 bug。前端需对照以下变更重新对接。


一、待办看板GET /v3/admin/order/todos

1. 排序已修正(后端自动,前端无需改但行为变)

  • 修复前:列表按 urgency 字符串降序,导致 danger最紧急换酒店/退订/加急)排在最底、warn 反而置顶(字典序 bug
  • 修复后:后端按权重 danger > warn > normal(同级按创建时间倒序)排序,最紧急的恒置顶。前端直接按返回顺序渲染即可。

2. stats 分类计数 key 改为枚举常量(前端必改

  • stats 各类计数的 JSON key 由 camelCaseswapHotel)改为枚举常量SWAP_HOTEL/REFUND/INQUIRY_TIMEOUT/INQUIRY_ESCALATED/INVENTORY_CHECK_OVERDUE),与 list 行的 todoType、筛选入参口径统一。前端读 stats 的 key 要改。

3. stats 随筛选收窄(行为变)

  • stats 现跟随 scopemine/others与结构性筛选收窄:切「我的」只数你负责的、切「同事」数同事的。(不随 Tab 选择/urgency/keyword 收窄,避免切 Tab 把其余红点打 0。

4. urgency 三层智能升级(后端推导,前端展示颜色)

  • urgency 现由后端三层推导:基线 + 待办挂久自动升级(挂满 2h→warn、4h→danger+ 临近出行升红(距出行 ≤24h→danger、≤7天→warn。前端按返回的 urgency 渲染红/黄/灰即可。

5. UNDELIVERED「未送达」类型下线

  • 该类型无生产者、恒 0,已从 stats/异常集合移除。前端别再展示「未送达」分类

二、日历视图GET /admin/house/calendar?month=yyyy-MM

6. 已配房按「每个入住晚」落点 + 下钻传 stayDate前端必改

  • 多晚订单现在月历上每个入住晚都有一个点(住 3 晚 → 3 天各一点)。
  • 点某天下钻列表时,请带上该天的 stayDate 参数(下钻接口 GET /v3/admin/order/grab-pool/my-claims/hotel 已支持 stayDate 可选过滤)——否则多晚订单点中间晚会跳转出空列表(这是本次修的 bug

7. 「询房中」桶补显示已抢未配的订单

  • 已抢单、还没配房、但已发了询房PENDING的订单,现在也会出现在日历「询房中」桶之前完全不显示

8. 异常桶口径对齐

  • 日历异常桶现并入 house_status=EXCEPTION,与「我的接单」异常计数口径一致。

三、不限库存展示(配房候选 / 库存日历,前端必改

9. 不限库存房型新增 unlimited 字段

  • 房务把某房型某日设为「不限库存」stock=NULL后,配房候选 GET /v3/admin/hotel-candidatesroomTypes[] 与库存日历,该房型现返回 unlimited=true(此时 available=nullinventoryStatus=AVAILABLE
  • 修复前:不限库存被错当成 available=0/FULL,房务在候选弹窗看到「满房/不可选」——明明永远可订却选不出来。现已修正。
  • 前端识别 unlimited=true 时展示「不限」(而非数字 0 或 null
  • 酒店卡级 matchedRoomTypeAvailable 在 matched 房型不限时为占位值 99(仅排序用),前端展示以 room 项的 unlimited 为准

四、后端行为(前端知悉即可,无需对接)

  • 待办 RESOLVE 闭环补全(退订/换酒店/异常处置完成/重发询房自动解,列表不再积压幽灵待办);转单/释放后待办归属自动迁移给新房务。
  • 配房「同步协议价」开关新增 roomTypeId 归属校验防越权改别家酒店协议价;CONFIRMED/EXCEPTION 需求不再被 submit 误改/误翻态。

测试服实测(已通过)

  • 不限库存:嘉世豪豪华大床房 stock=NULL → unlimited=true/available=null/AVAILABLE,对照 stock=20 房型正常。
  • 越权:配房同步协议价传别家酒店房型 → 808112 拒。
  • 待办/日历接口 200 渲染正常;Flyway 迁移 success=1。