chore(changelog): 回填 #5599/#5567/#5633 部署实测状态(未部署即推送整改)+5 条枚举/结构合规
- #5599/#5567/#5633(yst 8-06~8-07 推送时未部署测试服): 2026-08-10 复核确认代码已随 order-v3 8-10 部署上测试服,补验证证据章节(部署点位+DB 列+网关实测),backend_status 回填 deployed/gateway verified - #5444、#5730-5732: backend_status released→deployed(枚举合法化,状态语义不变) - #5784 补验证证据章节、#5788 章节结构规范化、#5797 清理 not_required 残留前端字段 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
这个提交包含在:
父节点
65ddaae00f
当前提交
0e911a98f3
@ -5,7 +5,7 @@ title: "Step2 canonical full snapshot 与稳定槽位"
|
|||||||
consumer: "admin"
|
consumer: "admin"
|
||||||
author: "wx(GIT)"
|
author: "wx(GIT)"
|
||||||
change_type: "修改接口"
|
change_type: "修改接口"
|
||||||
backend_status: "released"
|
backend_status: "deployed"
|
||||||
gateway_status: "verified"
|
gateway_status: "verified"
|
||||||
frontend_status: "verified"
|
frontend_status: "verified"
|
||||||
frontend_owner: "Pi"
|
frontend_owner: "Pi"
|
||||||
|
|||||||
@ -5,15 +5,15 @@ title: "历史终止订单车辆核单空态"
|
|||||||
consumer: "admin"
|
consumer: "admin"
|
||||||
change_type: "修改接口"
|
change_type: "修改接口"
|
||||||
author: "yst(GIT)"
|
author: "yst(GIT)"
|
||||||
backend_status: "pending"
|
backend_status: "deployed"
|
||||||
gateway_status: "pending"
|
gateway_status: "verified"
|
||||||
frontend_status: "implemented"
|
frontend_status: "implemented"
|
||||||
frontend_owner: "pi-main-session"
|
frontend_owner: "pi-main-session"
|
||||||
frontend_ref: "hl-admin@4a2dcc8e20fe23ffc2b3d35ae8f02e62661b642d"
|
frontend_ref: "hl-admin@4a2dcc8e20fe23ffc2b3d35ae8f02e62661b642d"
|
||||||
target_release: "v2.1"
|
target_release: "v2.1"
|
||||||
verified_at: "2026-08-06"
|
verified_at: "2026-08-06"
|
||||||
status_note: "PR #5570 已合并 dev-v3;运行时行为尚未验证,管理后台待适配新增阻断枚举。"
|
status_note: "PR #5570 已合并 dev-v3;2026-08-10 复核确认测试服已部署、网关链路实测连通(见文末验证证据章节)。管理后台待适配新增阻断枚举。"
|
||||||
updated_at: "2026-08-06"
|
updated_at: "2026-08-10"
|
||||||
base: "dev-v3"
|
base: "dev-v3"
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -295,3 +295,11 @@ Authorization: Bearer <管理后台访问令牌>
|
|||||||
|
|
||||||
- **后端负责人**:@yst / yaosutu
|
- **后端负责人**:@yst / yaosutu
|
||||||
- **前端消费方**:管理后台车辆核单 Tab
|
- **前端消费方**:管理后台车辆核单 Tab
|
||||||
|
|
||||||
|
## 验证证据(2026-08-10 复核回填,wx)
|
||||||
|
|
||||||
|
> 本条 changelog 2026-08-06 推送时 backend_status=pending(未部署),违反「测试服部署+实测后才通知前端」流程。2026-08-10 复核补齐部署与验证证据如下:
|
||||||
|
|
||||||
|
- 测试服 hl-order-service-v3 运行版本为 2026-08-10 15:10 构建(dev-v3),晚于 PR #5570 合并点(2026-08-06 08:17),本变更代码已在运行实例中。
|
||||||
|
- `GET /v3/admin/order/{orderId}/settlement/step3/vehicles` 经网关 9443 + 真 admin token 实测链路连通(普通订单返回既有业务码,行为正常)。
|
||||||
|
- 测试库当前无 `flow_status=TERMINATED` 的历史终止订单,`LEGACY_VEHICLE_FEE_SOURCE_MISSING` 安全空态场景暂无法端到端复现,该场景行为以合并代码 + 部署点位确认;如前端联调需要真实数据请联系后端造数。
|
||||||
|
|||||||
@ -5,16 +5,16 @@ title: "核单餐食餐厅下拉值独立存储"
|
|||||||
consumer: "admin"
|
consumer: "admin"
|
||||||
author: "yst"
|
author: "yst"
|
||||||
change_type: "修改接口"
|
change_type: "修改接口"
|
||||||
backend_status: "merged"
|
backend_status: "deployed"
|
||||||
gateway_status: "pending"
|
gateway_status: "verified"
|
||||||
frontend_status: "implemented"
|
frontend_status: "implemented"
|
||||||
frontend_owner: "mmg"
|
frontend_owner: "mmg"
|
||||||
frontend_ref: "hl-admin@01bd3875046cd32e9497e2f00a9eb0f782a197dd"
|
frontend_ref: "hl-admin@01bd3875046cd32e9497e2f00a9eb0f782a197dd"
|
||||||
verified_at: ""
|
verified_at: ""
|
||||||
target_release: ""
|
target_release: ""
|
||||||
updated_at: "2026-08-07"
|
updated_at: "2026-08-10"
|
||||||
base: "dev-v3"
|
base: "dev-v3"
|
||||||
status_note: "PR #5600 已合并 dev-v3,尚未部署测试服;restaurantId 关联资源服务餐厅下拉接口 PR #5583"
|
status_note: "PR #5600 已合并 dev-v3;2026-08-10 复核确认测试服已部署并验证(见文末验证证据章节)。restaurantId 关联资源服务餐厅下拉接口 PR #5583"
|
||||||
---
|
---
|
||||||
|
|
||||||
# 核单餐食餐厅下拉值独立存储(不覆盖餐食名称)
|
# 核单餐食餐厅下拉值独立存储(不覆盖餐食名称)
|
||||||
@ -298,7 +298,7 @@ Content-Type: application/json
|
|||||||
|
|
||||||
- **破坏性兼容**:无。两个字段均为可选新增;存量请求不传两字段时行为完全不变;存量数据两列为 NULL
|
- **破坏性兼容**:无。两个字段均为可选新增;存量请求不传两字段时行为完全不变;存量数据两列为 NULL
|
||||||
- **前端同步上线**:不强制同步。前端未接新字段前,保存 / 回显行为与之前一致(回显多两个 null 字段,不读即可);前端接新字段需等后端部署后联调
|
- **前端同步上线**:不强制同步。前端未接新字段前,保存 / 回显行为与之前一致(回显多两个 null 字段,不读即可);前端接新字段需等后端部署后联调
|
||||||
- **后端部署状态**:PR #5600 已合并 dev-v3,**尚未部署测试服**(见 Front Matter backend_status / status_note)
|
- **后端部署状态**:PR #5600 已合并 dev-v3,**测试服已部署**(2026-08-10 复核确认,见文末验证证据章节)
|
||||||
- **回滚方案**:后端回滚 = 下线两字段即可。回滚时前端需同步停止传这两字段;存量数据两列本就为 NULL 或历史快照值,无数据迁移、无回滚 SQL
|
- **回滚方案**:后端回滚 = 下线两字段即可。回滚时前端需同步停止传这两字段;存量数据两列本就为 NULL 或历史快照值,无数据迁移、无回滚 SQL
|
||||||
|
|
||||||
## 12. 注意事项
|
## 12. 注意事项
|
||||||
@ -317,3 +317,12 @@ Content-Type: application/json
|
|||||||
- Commit:https://git.1814.love:8443/wx/HL/commit/9884585a292924c1a0a7a5fec6b7dc8ab87aa59d
|
- Commit:https://git.1814.love:8443/wx/HL/commit/9884585a292924c1a0a7a5fec6b7dc8ab87aa59d
|
||||||
- 关联依赖:餐厅资源下拉接口 PR #5583(资源服务,已上线)
|
- 关联依赖:餐厅资源下拉接口 PR #5583(资源服务,已上线)
|
||||||
- 后端负责人:yst(腰苏图)
|
- 后端负责人:yst(腰苏图)
|
||||||
|
|
||||||
|
## 验证证据(2026-08-10 复核回填,wx)
|
||||||
|
|
||||||
|
> 本条 changelog 2026-08-06 推送时后端尚未部署测试服(原 status_note 自述),违反「测试服部署+实测后才通知前端」流程。2026-08-10 复核补齐部署与验证证据如下:
|
||||||
|
|
||||||
|
- 测试服 hl-order-service-v3 运行版本为 2026-08-10 15:10 构建(dev-v3),晚于 PR #5600 合并点(2026-08-06 14:56),本变更代码已在运行实例中。
|
||||||
|
- 测试服 DB `hl_order_service_v3.order_settlement_meal` 已存在 `restaurant_id` / `restaurant_name` 两列(Flyway 已执行)。
|
||||||
|
- `SettlementMealRespVO` 含 `restaurantId` / `restaurantName` 字段(dev-v3 源码核对)。
|
||||||
|
- `GET /v3/admin/order/{orderId}/settlement/meals` 经网关 9443 + 真 admin token 实测返回 `code=200`(空列表订单);测试库现有餐食记录的订单因核单数据权限(581008 无权查看此订单)未能以 SUPER_ADMIN 直接观测到带值行,字段存在性以 DB 列 + VO 源码 + 部署点位三重证据确认。
|
||||||
|
|||||||
@ -5,15 +5,15 @@ title: "订单详情补核单状态字段"
|
|||||||
consumer: "admin"
|
consumer: "admin"
|
||||||
change_type: "修改接口"
|
change_type: "修改接口"
|
||||||
author: "yst(GIT)"
|
author: "yst(GIT)"
|
||||||
backend_status: "implemented"
|
backend_status: "deployed"
|
||||||
gateway_status: "pending"
|
gateway_status: "verified"
|
||||||
frontend_status: "implemented"
|
frontend_status: "implemented"
|
||||||
frontend_owner: "mmg"
|
frontend_owner: "mmg"
|
||||||
frontend_ref: "hl-admin@18f8e23b9b2c77a81fed3de87fe9a7b94ff3b201"
|
frontend_ref: "hl-admin@18f8e23b9b2c77a81fed3de87fe9a7b94ff3b201"
|
||||||
target_release: "v2.1"
|
target_release: "v2.1"
|
||||||
verified_at: ""
|
verified_at: ""
|
||||||
status_note: "PR #5635 已合并 dev-v3(merge commit c378061b08);管理后台待接入 reviewStatus/reviewStatusName。"
|
status_note: "PR #5635 已合并 dev-v3;2026-08-10 复核确认测试服已部署、reviewStatus/reviewStatusName 经网关实测在出参中(见文末验证证据章节)。管理后台待接入。"
|
||||||
updated_at: "2026-08-07"
|
updated_at: "2026-08-10"
|
||||||
base: "dev-v3"
|
base: "dev-v3"
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -275,3 +275,10 @@ Authorization: Bearer <管理后台访问令牌>
|
|||||||
- **PR**:[#5635](https://git.1814.love:8443/wx/HL/pulls/5635)
|
- **PR**:[#5635](https://git.1814.love:8443/wx/HL/pulls/5635)
|
||||||
- **Commit**:[c378061b08](https://git.1814.love:8443/wx/HL/commit/c378061b08e85cc7794b23c2a49691ad4f8eb01e)
|
- **Commit**:[c378061b08](https://git.1814.love:8443/wx/HL/commit/c378061b08e85cc7794b23c2a49691ad4f8eb01e)
|
||||||
- **后端负责人**:腰苏图
|
- **后端负责人**:腰苏图
|
||||||
|
|
||||||
|
## 验证证据(2026-08-10 复核回填,wx)
|
||||||
|
|
||||||
|
> 本条 changelog 2026-08-07 推送时 backend_status=implemented(非法枚举且未部署),违反「测试服部署+实测后才通知前端」流程。2026-08-10 复核补齐部署与验证证据如下:
|
||||||
|
|
||||||
|
- 测试服 hl-order-service-v3 运行版本为 2026-08-10 15:10 构建(dev-v3),晚于 PR #5635 合并点(2026-08-07 14:25),本变更代码已在运行实例中。
|
||||||
|
- `GET /v3/admin/order/{orderId}` 经网关 9443 + 真 admin token 实测:`data.main` 已包含 `reviewStatus` / `reviewStatusName` 两个键(未进入核单流程的订单两键返回 JSON null,符合本文 8.2 边界示例)。
|
||||||
|
|||||||
@ -5,7 +5,7 @@ title: "后端已修复:房型 BIG_BED 全链路中文(#5730)+ 派车通
|
|||||||
consumer: "admin"
|
consumer: "admin"
|
||||||
author: "wx(GIT)"
|
author: "wx(GIT)"
|
||||||
change_type: "修改接口"
|
change_type: "修改接口"
|
||||||
backend_status: "released"
|
backend_status: "deployed"
|
||||||
gateway_status: "not_required"
|
gateway_status: "not_required"
|
||||||
frontend_status: "not_required"
|
frontend_status: "not_required"
|
||||||
frontend_owner: ""
|
frontend_owner: ""
|
||||||
@ -22,13 +22,15 @@ generated: "2026-08-09T11:40:00+08:00"
|
|||||||
|
|
||||||
> 两个后端修复已合并 dev-v3、部署 TEST 并验证通过。告知前端知晓/验证/配合接入。
|
> 两个后端修复已合并 dev-v3、部署 TEST 并验证通过。告知前端知晓/验证/配合接入。
|
||||||
|
|
||||||
## ① #5730 房型 BIG_BED 全链路中文展示
|
## 变更内容
|
||||||
|
|
||||||
|
### ① #5730 房型 BIG_BED 全链路中文展示
|
||||||
|
|
||||||
**修复**:`room_category` 字典补充 BIG_BED→「大床房」中文 label,行程/住宿安排/配房等展示处 `roomCategoryLabel` 现在映射到中文,不再显示英文 BIG_BED。
|
**修复**:`room_category` 字典补充 BIG_BED→「大床房」中文 label,行程/住宿安排/配房等展示处 `roomCategoryLabel` 现在映射到中文,不再显示英文 BIG_BED。
|
||||||
|
|
||||||
**前端影响**:**无需改代码**。原先住宿安排/行程里房型显示「BIG BED1」的位置,现在应显示「大床房」。请前端**验证**房型中文展示是否已正常(如订单 26-8083 娜仁托娅的住宿安排)。
|
**前端影响**:**无需改代码**。原先住宿安排/行程里房型显示「BIG BED1」的位置,现在应显示「大床房」。请前端**验证**房型中文展示是否已正常(如订单 26-8083 娜仁托娅的住宿安排)。
|
||||||
|
|
||||||
## ② #5732 派车通知预览(render-batch)日期按接续段分段
|
### ② #5732 派车通知预览(render-batch)日期按接续段分段
|
||||||
|
|
||||||
**修复**:`render`/`render-batch` 渲染的「日期」(order.startDate/endDate/days 占位符)在传入 `serviceDates` 非空时按 **min~max 分段**,未传时回退订单全程;与实际 HOLD 通知快照口径一致。
|
**修复**:`render`/`render-batch` 渲染的「日期」(order.startDate/endDate/days 占位符)在传入 `serviceDates` 非空时按 **min~max 分段**,未传时回退订单全程;与实际 HOLD 通知快照口径一致。
|
||||||
|
|
||||||
|
|||||||
@ -57,6 +57,11 @@ base: "dev-v3"
|
|||||||
- 保留行继续占用车辆/司机(同日期同资源不可重复派),人工取消后释放;改期后新日期不受旧占用影响。
|
- 保留行继续占用车辆/司机(同日期同资源不可重复派),人工取消后释放;改期后新日期不受旧占用影响。
|
||||||
- 换版自动化只作用于 unassigned:减槽取消未派占位、增槽补新 unassigned。
|
- 换版自动化只作用于 unassigned:减槽取消未派占位、增槽补新 unassigned。
|
||||||
|
|
||||||
|
## 验证证据
|
||||||
|
|
||||||
|
- 后端 PR #5785(主)+ #5787/#5789(连带)已合并 dev-v3 并部署测试服(backend_status=deployed 于 2026-08-10 回填,测试服 hl-order-service-v3 运行 2026-08-10 构建版本)。
|
||||||
|
- 详情接口新增 2 字段随该版本在测试服生效;前端实现自测 util 5/5、组件 4/4、看板关联 287/287、checkpoint 全过(见 status_note)。
|
||||||
|
|
||||||
## 关联 / 联系人
|
## 关联 / 联系人
|
||||||
|
|
||||||
### 链接
|
### 链接
|
||||||
|
|||||||
@ -28,7 +28,9 @@ base: "dev-v3"
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 1. 详情接口 vehicleSlots 新增 3 字段
|
## 变更接口
|
||||||
|
|
||||||
|
### 1. 详情接口 vehicleSlots 新增 3 字段
|
||||||
|
|
||||||
`GET /admin/fleet/board/orders/{orderId}` 的 `vehicleSlots[]` 每行新增:
|
`GET /admin/fleet/board/orders/{orderId}` 的 `vehicleSlots[]` 每行新增:
|
||||||
|
|
||||||
@ -42,7 +44,7 @@ base: "dev-v3"
|
|||||||
|
|
||||||
**前端要做**: 保留行渲染「旧数据/需求已改版」标识(区别于当前槽位),操作只留「改派 / 取消」;顶部黄条(supersededAssignments)保持现状作提醒入口。注意保留行的 `fleetItemIndex` 是旧版展开序,可能与当前需求槽位撞号,**渲染分组请以 superseded 标志区分,勿再单靠 fleetItemIndex**。
|
**前端要做**: 保留行渲染「旧数据/需求已改版」标识(区别于当前槽位),操作只留「改派 / 取消」;顶部黄条(supersededAssignments)保持现状作提醒入口。注意保留行的 `fleetItemIndex` 是旧版展开序,可能与当前需求槽位撞号,**渲染分组请以 superseded 标志区分,勿再单靠 fleetItemIndex**。
|
||||||
|
|
||||||
## 2. 候选查询排除校验放宽(保留行改派入口打通)
|
### 2. 候选查询排除校验放宽(保留行改派入口打通)
|
||||||
|
|
||||||
`POST /admin/fleet/assignments/candidates`:
|
`POST /admin/fleet/assignments/candidates`:
|
||||||
|
|
||||||
@ -51,11 +53,11 @@ base: "dev-v3"
|
|||||||
- 保留行自身占用会被正确排除:实测 exclude 后原车 available=true、conflicts=[](可改回原车或换车)。
|
- 保留行自身占用会被正确排除:实测 exclude 后原车 available=true、conflicts=[](可改回原车或换车)。
|
||||||
- 防护不回归:非本订单/不存在的 assignmentId、普通行 fleetItemIndex 不匹配 → 仍报「参数非法」。
|
- 防护不回归:非本订单/不存在的 assignmentId、普通行 fleetItemIndex 不匹配 → 仍报「参数非法」。
|
||||||
|
|
||||||
## 2.5 跟进(PR #5798,2026-08-10):排除未派车占位行也不校验序号
|
### 2.5 跟进(PR #5798,2026-08-10):排除未派车占位行也不校验序号
|
||||||
|
|
||||||
现版前端槽位上下文缺 `fleetItemIndex` 时回退 0(`useAssignFlow.js:294`),排除 SUV 占位行(实际序号 1)时被后端精确匹配拒绝(26-9313 复现)。后端已放宽:**排除当前需求的 unassigned 占位行时不校验 fleetItemIndex**(需求归属仍校验),座位按占位行自身 requiredSeats 快照。现版前端不改也能选车,但仍建议槽位上下文与 `vehicleSlots[].fleetItemIndex`/`assignmentId` 同源取值,消除序号错位。
|
现版前端槽位上下文缺 `fleetItemIndex` 时回退 0(`useAssignFlow.js:294`),排除 SUV 占位行(实际序号 1)时被后端精确匹配拒绝(26-9313 复现)。后端已放宽:**排除当前需求的 unassigned 占位行时不校验 fleetItemIndex**(需求归属仍校验),座位按占位行自身 requiredSeats 快照。现版前端不改也能选车,但仍建议槽位上下文与 `vehicleSlots[].fleetItemIndex`/`assignmentId` 同源取值,消除序号错位。
|
||||||
|
|
||||||
## 2.6 展示布局建议(wx 2026-08-10 口径)
|
### 2.6 展示布局建议(wx 2026-08-10 口径)
|
||||||
|
|
||||||
场景:原需求商务车×2(两辆均已派),改为商务×1+SUV×1。期望车务再派车时看到:
|
场景:原需求商务车×2(两辆均已派),改为商务×1+SUV×1。期望车务再派车时看到:
|
||||||
|
|
||||||
@ -65,7 +67,7 @@ base: "dev-v3"
|
|||||||
|
|
||||||
即"原来的两辆商务车都可见(一辆沿用在新槽、一辆标旧),新需求两个槽位齐全"。
|
即"原来的两辆商务车都可见(一辆沿用在新槽、一辆标旧),新需求两个槽位齐全"。
|
||||||
|
|
||||||
## 3. 实测数据样例(测试服 26-9313)
|
## 验证证据:实测数据样例(测试服 26-9313)
|
||||||
|
|
||||||
```json
|
```json
|
||||||
// vehicleSlots 尾部保留行
|
// vehicleSlots 尾部保留行
|
||||||
|
|||||||
@ -8,10 +8,10 @@ change_type: "修复"
|
|||||||
backend_status: "deployed"
|
backend_status: "deployed"
|
||||||
gateway_status: "not_required"
|
gateway_status: "not_required"
|
||||||
frontend_status: "not_required"
|
frontend_status: "not_required"
|
||||||
frontend_owner: "mmg"
|
frontend_owner: ""
|
||||||
frontend_ref: ""
|
frontend_ref: ""
|
||||||
target_release: ""
|
target_release: ""
|
||||||
verified_at: "2026-08-10"
|
verified_at: ""
|
||||||
status_note: "接口契约零变化,前端无需改动即生效(readByPeer 字段在车务会话首次真正有值)。附带新增:车务团队读后向定制师推点对点 im-chat-read 信令,SSE 角标实时化接线时可顺带消费实现气泡实时翻「已读」。测试服 16:00 后已用真实 API + Redis 信令抓包验证通过。"
|
status_note: "接口契约零变化,前端无需改动即生效(readByPeer 字段在车务会话首次真正有值)。附带新增:车务团队读后向定制师推点对点 im-chat-read 信令,SSE 角标实时化接线时可顺带消费实现气泡实时翻「已读」。测试服 16:00 后已用真实 API + Redis 信令抓包验证通过。"
|
||||||
updated_at: "2026-08-10"
|
updated_at: "2026-08-10"
|
||||||
base: "dev-v3"
|
base: "dev-v3"
|
||||||
|
|||||||
正在加载...
x
在新工单中引用
屏蔽一个用户