changelog-filename-gate / validate (push) Successful in 2s
Co-Authored-By: Claude <noreply@anthropic.com>
4.6 KiB
4.6 KiB
schema, ticket, title, consumer, author, change_type, backend_status, gateway_status, frontend_status, frontend_owner, frontend_ref, target_release, verified_at, status_note, updated_at, base, generated
| schema | ticket | title | consumer | author | change_type | backend_status | gateway_status | frontend_status | frontend_owner | frontend_ref | target_release | verified_at | status_note | updated_at | base | generated |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| hl-changelog/v2 | 6111 | 配房行程标记终止未用房晚+异常原因透传 | admin | wx | 修改接口 | deployed | verified | not_required | 后端完成:PR #6116 已合并 dev-v3(squash 3dd65f62d)并部署 TEST(hl-order-service-v3 双实例 8086/8186,2026-08-20 17:49 重启)。行程接口响应 hotelGroup 新增异常原因 2 字段、配房行新增未用标记 2 字段(均可选只读,正常单为 null/不影响既有字段),前端按需取读即可。 | 2026-08-20 | dev-v3 | 2026-08-20T17:55:00+08:00 |
配房行程标记终止未用房晚+异常原因透传(#6111)
背景
订单中止行程后,房务「配房行程」详情页看不到:(1) 哪几晚被运营在终止时勾选为「未用房晚」;(2) 异常桶旁的异常原因文案。本变更为房务侧补上这两个只读字段(纯新增,不影响既有字段)。
变更接口
| 接口 | 变更 |
|---|---|
GET /v3/admin/order/{id}/itinerary(订单详情-行程安排) |
响应新增字段(均可选只读,正常单为 null/false,不影响既有任何字段):hotelGroup.exceptionReason(String,异常原因,仅 houseStatus=EXCEPTION 时有值)、hotelGroup.exceptionReasonLabel(String,同 exceptionReason 中文展示)、hotelGroup.assignments[].unusedForTerminate(Boolean,该晚是否终止勾选未用)、hotelGroup.assignments[].unusedLabel(String,未用标记文案「未用」,未标记为 null) |
响应示例
GET /v3/admin/order/{id}/itinerary 返回(仅列本次新增字段,其余字段省略):
{
"code": 200,
"data": {
"hotelGroup": {
"houseStatus": "EXCEPTION",
"exceptionReason": "客户中止",
"exceptionReasonLabel": "客户中止",
"assignments": [
{
"assignmentId": "2090093115967733761",
"dayNumber": 1,
"hotelName": "呼伦贝尔香格里拉大酒店",
"unusedForTerminate": true,
"unusedLabel": "未用"
},
{
"assignmentId": "2090093115976122369",
"dayNumber": 2,
"hotelName": "呼伦贝尔香格里拉大酒店",
"unusedForTerminate": true,
"unusedLabel": "未用"
}
]
}
}
}
说明:该单已终止且运营勾选两晚均未用,故两行 unusedForTerminate=true、unusedLabel="未用";houseStatus=EXCEPTION 故 exceptionReason 透出终止原因。正常单(非终止)exceptionReason/Label 为 null、unusedForTerminate=false、unusedLabel 为 null。
行为口径
- 4 个字段均为只读、可选:正常单(未终止)
exceptionReason/Label为 null、unusedForTerminate=false、unusedLabel为 null,接口不报错。 unusedForTerminate=true的行即终止时运营勾选的「未用房晚」,前端可渲染「未用」标记 + 行级「资源释放」按钮。- 行级资源释放复用现有
DELETE /v3/admin/order/assignments/{id}(软删+恢复库存,CONFIRMED 行自动解冻),前端按该行assignmentId调即可,无新端点。 exceptionReason来源为终止行程原因,仅异常桶(houseStatus=EXCEPTION)有值。
前端动作
无必须动作。需要展示「未用」标记时读 assignments[].unusedForTerminate/unusedLabel;需要显示异常原因时读 hotelGroup.exceptionReason(Label);需要行级释放按钮时对该行调 DELETE /v3/admin/order/assignments/{assignmentId}。
验证证据
- 单测:OrderDetailConverterTest 44 / TerminateRefundServiceTest 8 / OrderDetailServiceTest 88 全绿(新增 7 例覆盖命中/未命中/未终止/null 边界)。
- 架构门禁:*ArchTest 44 全绿(跨子聚合走 Service 契约,零违规)。
- 部署:PR #6116 squash 合并 dev-v3(merge commit
3dd65f62d);测试服 hl-order-service-v3 双实例 8086/8186 于 2026-08-20 17:49 滚动重启健康。 - 网关实测(TEST,admin token):终止单
GET /v3/admin/order/2090093100083904514/itinerary返 200,hotelGroup.exceptionReason="客户中止",两行配房unusedForTerminate=true/unusedLabel="未用";正常单(CUSTOMIZING)exceptionReason=null,符合「异常有值/正常 null」口径。
关联 / 联系人
- Issue:https://git.1814.love:8443/wx/HL/issues/6111
- PR:https://git.1814.love:8443/wx/HL/pulls/6116
- Commit(merge):https://git.1814.love:8443/wx/HL/commit/3dd65f62d
- 后端负责人:wx