待办排序倒置修正/stats枚举常量key+随筛选/urgency三层/UNDELIVERED下线;日历每晚落点+下钻stayDate/询房中桶/异常桶;不限库存unlimited字段。测试服实测通过。
这个提交包含在:
父节点
69070e1d39
当前提交
8819ddbf24
@ -0,0 +1,67 @@
|
||||
# 房务「待办 + 日历」模块逻辑修复 + 不限库存读路径修复 — 前端需重新对接
|
||||
|
||||
> 变更类型:🐛 逻辑修复(后端,**房务管家前端需对照重新对接待办/日历/库存展示**)
|
||||
> 端类型:管理后台(房务管家·待办看板 / 日历视图 / 配房候选)
|
||||
> 日期: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 由 camelCase(`swapHotel`)改为**枚举常量**(`SWAP_HOTEL`/`REFUND`/`INQUIRY_TIMEOUT`/`INQUIRY_ESCALATED`/`INVENTORY_CHECK_OVERDUE`),与 list 行的 `todoType`、筛选入参口径统一。前端读 stats 的 key 要改。
|
||||
|
||||
### 3. stats 随筛选收窄(行为变)
|
||||
- stats 现**跟随 scope(mine/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-candidates` 的 `roomTypes[]` 与库存日历,该房型现返回 **`unlimited=true`(此时 `available=null`、`inventoryStatus=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。
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户