PR #4389 工单 #4380。进度条 6→4 步, Progress 加 exception/exceptionLabel 红标字段, 我的接单去询房中 tab + 异常筛选改 todo 驱动并集, houseStatus 不再返 IN_INQUIRY。 已部署测试服双实例 health UP + API 实测通过。
64 行
4.5 KiB
Markdown
64 行
4.5 KiB
Markdown
# 房务去「询房中」顶层态 — 进度条 6→4 步 + 异常红标 + 我的接单去询房中
|
||
|
||
> 变更类型:♻️ 重构(后端,**房务管家前端需配合渲染**)
|
||
> 端类型:管理后台(房务管家·订单详情进度条 / 我的接单 / 日历)
|
||
> 日期:2026-06-25 | 工单:#4380 | PR:#4389 | 服务:hl-order-service-v3(双实例已部署 health UP,**测试服 API 实测全通过**)
|
||
|
||
---
|
||
|
||
## 背景
|
||
房务管家进度条原 6 步(待配房 / 配房中 / **询房中** / 待最终确认 / 已完成 / **异常**)两处口径不对:
|
||
1. 配房和询房本就**一间间一起干**,把「询房中」单拎成流程节点(还排在配房中之后)不合理。
|
||
2. 异常是**任意时刻可发生的旁支**,不是「已完成」的下一站,放线性流程条里语义就错。
|
||
|
||
本单把房务内部模型拉回与**对外 4 态一致**:询房降级为房间级动作(只在待办露出,订单维持配房中),异常移出线性流程条、改为当前步红标 + 待办/我的接单处置。**修订** #4255/#4257/#4261/#4239「4 步改 6 步拆询房中」口径。
|
||
|
||
---
|
||
|
||
## 接口 / 响应结构变化(前端需改)
|
||
|
||
### 1. 订单详情进度条 `GET /admin/house/orders/{orderId}` → `data.progress`
|
||
- `currentStep` 取值 **1-6 → 1-4**(待配房→配房中→待最终确认→已完成)。
|
||
- `steps` 数组 **6 节点 → 4 节点**(去掉「询房中」「异常」两节点)。
|
||
- `houseStatus` **不再返 `IN_INQUIRY`**(存量数据已迁移成 `CLAIMING`)。剩 5 态:`PENDING_CLAIM`/`CLAIMING`/`PENDING_FINALIZE`/`CONFIRMED`/`EXCEPTION`。
|
||
- **新增 2 字段**:
|
||
- `progress.exception`(Boolean):是否处异常态。
|
||
- `progress.exceptionLabel`(String):异常态返「异常」,否则 null。
|
||
- 异常**不占线性节点**,前端在当前步(异常态时 currentStep=2 配房中)叠加红色「异常」标。
|
||
|
||
### 2. 我的接单 `GET /v3/admin/order/grab-pool/my-claims/hotel`(+ stats)
|
||
- `stats.inInquiry` **废弃,恒返 0**(向后兼容,前端去掉「询房中」tab)。
|
||
- `stats.inProgress` 口径 `CLAIMING+IN_INQUIRY` → **= CLAIMING**。
|
||
- `status` 入参去掉 `inInquiry`(仍传 `inInquiry` 会兼容映射到 `claiming`,不报错)。
|
||
- **异常筛选 `status=exception` + `stats.exception` 改为「待办驱动并集」口径**:
|
||
- = `house_status=EXCEPTION`(客户退改/取消转异常)**∪** 有 OPEN 异常类待办(询价超时 / 酒店拒单 / 换酒店 / 退款)的订单。
|
||
- 即**拒单/超时的订单现在也会进异常筛选**(它们 house_status 维持 CLAIMING、但挂着异常类待办)。与日历异常桶、列表行内 `exceptionCount` 角标**三处同源**。
|
||
|
||
### 3. 询房降级为房间级
|
||
- 详情/日历**不再有「询房中」整团态**。那一天「待回询价」靠该天的 inquiry(PENDING) 记录派生展示。
|
||
- 日历「询房中」桶语义改房间级(读 PENDING 询房记录,不读 house_status)。
|
||
|
||
### 4. 日历「异常」桶 = 待办驱动
|
||
- 日历异常点**不再等价于 `house_status=EXCEPTION`**,而是「有 OPEN 异常类待办」(含超时/拒单)。这是「异常处置=待办露出」的预期行为。
|
||
|
||
### 5. `houseStatus` 全链路不再返 `IN_INQUIRY`
|
||
- 前端若有硬编码判断 `houseStatus === 'IN_INQUIRY'` 的分支,请清理。
|
||
|
||
---
|
||
|
||
## 后端行为变化(前端无需改,知悉即可)
|
||
- 房务发询价 / 酒店回复:**不再改订单态**(维持配房中),询价记录照常落库。
|
||
- 询价超时(4h) / 酒店拒单:**不再把整单翻异常**,改生成待办(询价超时待办 / 换酒店待办)在待办列表处置,订单维持配房中。顺带治掉「一间房酒店慢回复/拒单连累整单异常」。
|
||
- 仍会让订单进「异常」的只剩真·整单级:客户退改 / 订单取消 / 超占。
|
||
- 换酒店不再改 house_status(本就发生在配房中),换完自动 RESOLVE 换酒店待办。
|
||
|
||
---
|
||
|
||
## 前端待办(房务管家,mmg)
|
||
1. 订单详情进度条按 **4 步**渲染;异常态在当前步叠**红色异常标**(用新 `progress.exception` / `exceptionLabel`)。
|
||
2. 我的接单**去掉「询房中」tab**;异常 tab 保留(现含拒单/超时单)。
|
||
3. 日历 / 详情的「询房中」改**房间级**显示(那天待回询价),不再当整团态。
|
||
4. 清理硬编码 `IN_INQUIRY` 判断。
|
||
|
||
> 注:DB 列 `order_hotel_requirement.house_status` 的 COMMENT 仍写 6 态(Flyway 已冻结不改原文件,仅文字陈旧,不影响逻辑)。
|