From a6475f4efa67d32762014478f13bcb9ff5656448 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Fri, 7 Aug 2026 19:07:46 +0800 Subject: [PATCH] =?UTF-8?q?docs(changelog):=20=E5=89=8D=E7=AB=AF=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E2=80=94=E2=80=94=E6=94=B9=E6=B4=BE=E9=A1=B5=E5=8A=A0?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E5=8F=B8=E6=9C=BA=E6=8C=89=E9=92=AE=EF=BC=88?= =?UTF-8?q?=E5=90=8E=E7=AB=AF=20change=20=E5=B7=B2=E6=94=AF=E6=8C=81=20new?= =?UTF-8?q?DriverId=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...rs补nativePlace跨服务透传-修改接口-管理后台.md | 66 +++++++++++++++++++ ...派页面缺选择司机按钮-前端修复-管理后台.md | 44 +++++++++++++ 2 files changed, 110 insertions(+) create mode 100644 changelogs-v2/2026-08/07_5656_派单详情travelers补nativePlace跨服务透传-修改接口-管理后台.md create mode 100644 changelogs-v2/2026-08/07_frontend_改派页面缺选择司机按钮-前端修复-管理后台.md diff --git a/changelogs-v2/2026-08/07_5656_派单详情travelers补nativePlace跨服务透传-修改接口-管理后台.md b/changelogs-v2/2026-08/07_5656_派单详情travelers补nativePlace跨服务透传-修改接口-管理后台.md new file mode 100644 index 0000000..56c0b6a --- /dev/null +++ b/changelogs-v2/2026-08/07_5656_派单详情travelers补nativePlace跨服务透传-修改接口-管理后台.md @@ -0,0 +1,66 @@ +--- +schema: "hl-changelog/v2" +ticket: "5656" +title: "派单详情 travelers 补 nativePlace 跨服务透传(#5642 链路补全)" +consumer: "admin" +author: "wx" +change_type: "修改接口" +backend_status: "deployed" +gateway_status: "verified" +frontend_status: "pending" +frontend_owner: "" +frontend_ref: "" +target_release: "" +verified_at: "" +status_note: "后端完成:PR #5661 合并 dev-v3(3ee5770af)并部署 TEST(order-v3+fleet 双服务);网关实测派单详情与 travelers 端点 nativePlace 解析正确(150784→内蒙古呼伦贝尔市等 5 场景)。" +updated_at: "2026-08-07" +base: "dev-v3" +generated: "2026-08-07T18:40:00+08:00" +--- + +# 派单详情 travelers 补 nativePlace 跨服务透传(#5656) + +## 背景 + +#5642 仅为 order 管理端 `TravelerVO`(traveler/list 等)加了 `nativePlace`;派单详情走跨服务链路(order `GET /v3/internal/order/orders/{orderId}/fleet-detail-context` → fleet `BoardOrderDetailVO.travelers`),该链路 traveler DTO 未带 `nativePlace`,派单页/看板详情展示出行人时缺所属地。本单补全该链路。 + +## 变更内容 + +| 层 | 变更 | +|---|---| +| hl-common | `OrderTravelerForFleetDTO` 新增可空 `nativePlace`(身份证所属地,省+地级行政区名;非身份证/未命中为 null) | +| order 生产者 | `OrderFleetProviderService#toMaskedTraveler` 填充(复用 #5642 `IdCardParser` 解析结果,同源 `idProvinceName`) | +| fleet 消费者 | `BoardOrderDetailVO.travelers` / `GET /admin/fleet/board/orders/{id}/travelers` / `FleetTravelerAccessService#listMasked` 均直接复用共享 DTO,无逐字段映射,自动获得字段 | + +受影响接口(均为新增只读字段,无破坏性): + +- `GET /admin/fleet/board/orders/{orderId}`(派单详情聚合)→ `data.travelers[].nativePlace` +- `GET /admin/fleet/board/orders/{orderId}/travelers` → `data[].nativePlace` +- internal:`GET /v3/internal/order/orders/{orderId}/fleet-detail-context`、`GET /v3/internal/order/orders/{orderId}/fleet-travelers` 的 traveler 投影同步带 `nativePlace` + +取值口径与 #5642 一致:大陆身份证命中地级码→省短名+地市名(如 `150784…`→内蒙古呼伦贝尔市);直辖市→市名;省直辖县级(4190/4290/4690/6590)→6 位精确映射;非身份证或未命中(含已撤销历史码)→`null` 不报错。 + +## 关联 / 联系人 + +- 工单:https://git.1814.love:8443/wx/HL/issues/5656 +- PR:https://git.1814.love:8443/wx/HL/pulls/5661 +- 后端:wx + +## 变更接口或验证证据 + +### 接口契约 + +- 接口路径/方法/请求体:不变。 +- 响应 travelers 项新增 `nativePlace`(string | null)。 + +### 验证证据 + +- 定向测试:order `OrderFleetProviderServiceTest` 53 全过(含 fleet-detail-context nativePlace 断言);fleet `BoardOrderServiceTest` 87 + `BoardControllerTest` 11 全过(含派单详情 travelers.nativePlace 透传断言)。 +- 全量:fleet `mvn -pl hl-fleet-service -am verify` 3256 测试,失败仅 ReleaseEMixedBinaryHarnessTest(1F)+ReleaseEOccupancyMysql8033RecoveryTest(10E) 两个 harness 类,git stash 基线复跑同类同败;order `-pl hl-order-service-v3 -am verify` 7610 测试 7F/95E 失败类集与 #5642 基线逐一相同;fleet spotless:check 通过。 +- 部署 TEST 成功(hl-order-service-v3 + hl-fleet-service)。 +- 网关验证(自建 HLTEST 订单 2085637067265449985,复用 #5642 五场景出行人):派单详情与 travelers 端点均断言 150784→内蒙古呼伦贝尔市、469001→海南五指山市、110101→北京市、PASSPORT→null、371201(已撤销码)→null;脱敏与省级字段回归通过。 + +## 前端/调用方动作 + +- 派单页/看板详情展示出行人所属地时直接使用 `travelers[].nativePlace`;`null` 展示空(如 "-")。 +- 与 #5642 traveler/list 口径一致,前端两处共用同一展示逻辑即可。 diff --git a/changelogs-v2/2026-08/07_frontend_改派页面缺选择司机按钮-前端修复-管理后台.md b/changelogs-v2/2026-08/07_frontend_改派页面缺选择司机按钮-前端修复-管理后台.md new file mode 100644 index 0000000..294e2a1 --- /dev/null +++ b/changelogs-v2/2026-08/07_frontend_改派页面缺选择司机按钮-前端修复-管理后台.md @@ -0,0 +1,44 @@ +--- +schema: "hl-changelog/v2" +ticket: "" +title: "改派页面缺「选择司机」按钮(无法改派司机)" +consumer: "admin" +author: "wx" +change_type: "前端修复" +backend_status: "deployed" +gateway_status: "verified" +frontend_status: "pending" +frontend_owner: "" +frontend_ref: "" +target_release: "" +verified_at: "" +status_note: "" +updated_at: "2026-08-07" +base: "origin/dev-v3" +generated: "2026-08-07" +--- + +# 改派页面缺「选择司机」按钮(前端修复) + +## 问题(wx 实测) +派单【改派】页面:显示"当前司机 xxx / 当前车辆 xxx"+"车辆和司机可任选一侧先选",但**只有选车入口,没有「选择司机」按钮**——无法改派司机。 + +## 后端已就绪(前端直接用) +改派接口 `POST /admin/fleet/assignments/{assignmentId}/change` 的 ReqVO **已支持 `newDriverId`**(改司机)——后端能力在,前端缺入口。 + +## 前端要做 +改派弹窗/页面**加「选择司机」按钮**(与选车并列): +- 点【选择司机】→ 打开司机候选(可用现有候选组件,按当前派单日期/需求过滤空闲司机) +- 选定司机 → 调 change 接口传 `newDriverId` 完成改派司机 +- 改派司机的校验(档期冲突/黑名单/跨常驻确认/保险)与改派车一致(后端 change 已处理) + +## 验收 +- [ ] 改派页有【选择司机】按钮,可选新司机 +- [ ] 选定后调 change 传 newDriverId,改派司机生效 +- [ ] 改派司机校验(冲突/跨常驻/保险)正常提示 + +## 关联 +- 后端 change 接口:`POST /admin/fleet/assignments/{assignmentId}/change`(ReqVO 含 newDriverId/newVehicleId) + +## 联系人 +- 后端/协调台:wx