docs(house): 终止行程订单配房三按钮禁用(#6111 子项,纯前端渲染逻辑告知)
所有检测均成功
changelog-filename-gate / validate (push) Successful in 2s
所有检测均成功
changelog-filename-gate / validate (push) Successful in 2s
这个提交包含在:
父节点
71aa64896e
当前提交
0c62e86ced
@ -0,0 +1,72 @@
|
|||||||
|
---
|
||||||
|
schema: "hl-changelog/v2"
|
||||||
|
ticket: "6111"
|
||||||
|
title: "终止行程(异常)订单配房组「标记完成/最终确认/清空配房」三按钮禁用(纯前端渲染逻辑告知)"
|
||||||
|
consumer: "admin"
|
||||||
|
author: "wx"
|
||||||
|
change_type: "修改接口"
|
||||||
|
backend_status: "deployed"
|
||||||
|
gateway_status: "verified"
|
||||||
|
frontend_status: "pending"
|
||||||
|
frontend_owner: "mmg"
|
||||||
|
frontend_ref: ""
|
||||||
|
target_release: ""
|
||||||
|
verified_at: "2026-08-20"
|
||||||
|
status_note: "订单终止行程后,配房组 houseStatus 已返回 EXCEPTION(异常)。本文告知前端:此类订单不得再展示/可用「标记完成」「最终确认」「清空配房」三按钮(或展示但禁用),避免对异常单误操作。后端契约字段早已返回,本次无后端代码变更,纯前端渲染/禁用逻辑。"
|
||||||
|
updated_at: "2026-08-20"
|
||||||
|
base: "dev-v3"
|
||||||
|
generated: "2026-08-20T00:00:00+08:00"
|
||||||
|
---
|
||||||
|
|
||||||
|
# 终止行程(异常)订单配房三按钮禁用(#6111 子项)
|
||||||
|
|
||||||
|
## 背景
|
||||||
|
|
||||||
|
订单**中止行程**后,房务侧会把该订单的配房组翻为异常(`houseStatus=EXCEPTION`),并产生退订待办。此时该订单的配房已处于「异常/待处理退订」状态,**不应再走正常配房流程的操作**。
|
||||||
|
|
||||||
|
但当前订单详情页对这类异常订单,仍然展示并可点「**标记完成**」「**最终确认**」「**清空配房**」三个按钮——这些动作对异常单无业务意义,且可能引发状态错乱。
|
||||||
|
|
||||||
|
**本文告知前端:依据已有契约字段 `houseStatus` 判断,对异常订单禁用(或不展示)这三按钮。后端无新增字段。**
|
||||||
|
|
||||||
|
## 变更接口
|
||||||
|
|
||||||
|
| 接口 | 变更 |
|
||||||
|
| --- | --- |
|
||||||
|
| `GET /v3/admin/order/{orderId}/detail`(订单详情) | **无契约变更**。`itinerary[].hotelGroup.houseStatus` / `houseStatusLabel` 字段早已返回,本次仅告知前端据此做禁用渲染 |
|
||||||
|
|
||||||
|
## 一、判断依据(契约字段,已返回)
|
||||||
|
|
||||||
|
订单详情 `itinerary[].hotelGroup` 节点:
|
||||||
|
|
||||||
|
| 字段 | 类型 | 说明 |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| `houseStatus` | string | 房务状态机值。**终止行程后 = `EXCEPTION`(异常)**。其它值:`CLAIMING` 抢单中 / `PENDING_FINALIZE` 待最终确认 / `CONFIRMED` 已确认 等 |
|
||||||
|
| `houseStatusLabel` | string | 对应中文标签,`EXCEPTION` → 「异常」 |
|
||||||
|
| `finalized` | boolean | 是否已最终确认(仅 `houseStatus=CONFIRMED` 时为 true) |
|
||||||
|
|
||||||
|
## 二、前端渲染要求
|
||||||
|
|
||||||
|
当 `itinerary[].hotelGroup.houseStatus === "EXCEPTION"` 时:
|
||||||
|
|
||||||
|
| 按钮 | 处理 |
|
||||||
|
| --- | --- |
|
||||||
|
| **标记完成** | 禁用(或不展示) |
|
||||||
|
| **最终确认** | 禁用(或不展示) |
|
||||||
|
| **清空配房** | 禁用(或不展示) |
|
||||||
|
|
||||||
|
> 建议:禁用优于隐藏——保留按钮但置灰 + tooltip「订单已终止行程,配房异常待处理」,让用户知道为何不能点。
|
||||||
|
|
||||||
|
## 三、正常订单不受影响
|
||||||
|
|
||||||
|
`houseStatus` 非 `EXCEPTION` 的订单(抢单中/待最终确认/已确认等),三按钮显隐逻辑维持现状不变。
|
||||||
|
|
||||||
|
## 四、配套说明
|
||||||
|
|
||||||
|
- 「**未用房晚标记 + 行级资源释放按钮**」与「**异常原因显示(客户中止)**」是 #6111 的另外两个子项,**需后端补字段**,已在 #6111 工单跟进,不在本文范围。
|
||||||
|
- 本文只覆盖「**异常订单禁用三按钮**」这一项——纯前端逻辑,字段已具备,可直接实现。
|
||||||
|
|
||||||
|
## 验证
|
||||||
|
|
||||||
|
- [ ] 终止行程的订单(如 26-9250)详情页配房组三按钮禁用/不展示
|
||||||
|
- [ ] 正常进行中订单三按钮显隐不变
|
||||||
|
- [ ] 鼠标悬停禁用按钮有「订单已终止行程」类提示(可选)
|
||||||
正在加载...
x
在新工单中引用
屏蔽一个用户