changelog-filename-gate / validate (push) Failing after 2s
处置明细(mmg 2026-09-18): - 68 条机械核验通过批量翻 verified:frontend_ref 均可达且为 v2.1 祖先、 交付文件 HEAD 均在、关联 spec 批量 58 文件 891 例全绿。 - 11 条带演进史的例外逐条核后翻 verified:3 条交付自删文件(06_5610/ 07_5655/11_5810,删除即交付内容且终态保持);8 条被后续 changelog 预期 演进(10_5784→#5810、07_5664/08_5592→#5827、07_5665→去槽位化 U1、 01_5380/05_5356/06_5567/06_5581→settlement 族A扁平化与 mock 清理), status_note 均如实记录演进链。 - 05_5552 改判 not_required:frontend_ref 自述前端无需改动,grep 实证 vehicleFeeAmount.js 直接读后端 calendarPrice/calendarPriceMissing。 - 11_5827 frontend_ref 原空,经核交付即 753503c8(向导 4 步改 3 步提交 即派定),补登全哈希 753503c87cc635e5646b4368a8ed506746c79cf1。 另:保险域 2 条相邻条目(05_5530/06_5593)同标准复核翻 verified。 2026-07 历史月 45 条按规则不回扫,保持原状。
5.6 KiB
5.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 | 5665 | 改派时支持增加/删除槽位(调整车辆数量) | admin | wx(GIT) | 新增接口 | deployed | verified | verified | mmg | f1c00ba8 | 2026-09-18 | 后端完成:PR #5669 已合并 dev-v3 并部署 TEST(hl-fleet-service 双实例)。新增 POST /admin/fleet/assignments/slots 增槽位;删除槽位复用既有 DELETE /slots/{slotId}。前端需在改派页加【增加槽位】【删除槽位】操作并编排现有接口(见前端交接)。[mmg 2026-09-18 复核翻 verified] ref f1c00ba8 可达且为 v2.1 祖先;AssignmentSlotAddModal 后随派单去槽位化 U1(1343b86f)重构移除,增删槽位能力并入新范式;关联 spec 批量 891 例全绿。 | 2026-09-18 | dev-v3 | 2026-08-07T20:26:00+08:00 |
改派时支持增加/删除槽位(调整车辆数量)
后端完成:PR #5669 已合并 dev-v3 并部署 TEST,网关验证通过。前端需在改派页增加【增加槽位】【删除槽位】操作。
关联 / 联系人
链接
联系人
- 后端负责人: @wx
背景
改派(change)原本只能换车/换司机(同槽位内换),不能增加/删除槽位(调整车辆数量)。wx 要改派时可增删槽位。对齐 #5562 槽位模型(派车时可增删)。按协调台口径走 A 方案:复用 expand/slots 机制,只增删差异、保留已派,不新建独立重派流程、不侵入 change 主流程。
变更接口
新增:POST /admin/fleet/assignments/slots(增加槽位)
在 active 用车需求上新增 1 个全程槽位(unassigned 全程占位行覆盖整个服务期),新槽位待确认按初次派车。保留已有槽位(含已派)完全不动。
请求(SlotAddReqVO):
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
| requirementId | Long | 是 | 归属需求 ID(active 用车需求) |
| vehicleType | String | 是 | 新槽位车型(如 suv/mpv) |
| seats | Integer | 是 | 新槽位座位需求(1-60) |
| reason | String | 否 | 新增原因(≤200 字,操作日志留痕) |
响应(SlotAddRespVO):
错误码:400 参数校验失败(需求 ID/车型/座位数缺失)/ 605012 需求无派单行 / 605007 需求不可派(非 active/已取消/不可派)/ 605008 抢锁超时 / 401 未登录 / 403 非车务角色。
行为:
- 新槽位生成 1 条 unassigned 全程占位行(
service_date/assignment_group_id为 NULL,start_date~end_date覆盖整个服务期),车务在该槽派 1 辆管全程的车(候选/价格日历/校验同初次派车 create) - 保留已有槽位(含 holding/assigned 已派)完全不动——只增差异槽位,不重置/重派
- 确认状态:清最终确认标记(改派需重新冻结方案);保留槽位确认状态不变
- Step2 快照 retained 追加 + 版本递增 + digest 重算;FleetBoardChangedEvent + 操作日志 SLOT_ADDED
复用:DELETE /admin/fleet/assignments/slots/{slotId}(删除槽位,零改动)
既有端点(#5550/#5572),删除已派(holding/assigned)槽位时联动取消派单(释放占用+退保意图+取消事件),行程已出发拒绝(605027)。
前端交接(改派页)
在改派页增加两个操作,编排现有接口(后端已就绪):
- 【增加槽位】(多派一辆):
- 调
POST /admin/fleet/assignments/slots(传 requirementId + vehicleType + seats + reason) - 成功后新槽位出现在看板/改派页,车务对新槽位按初次派车(候选/价格/校验)派 1 辆车
- 调
- 【删除槽位】(少派一辆):
- 调既有
DELETE /admin/fleet/assignments/slots/{slotId}(有派单时后端联动取消) - 行程已出发的槽位不可删(605027);已完成的槽位不可删(605007)
- 调既有
- 换车/换司机:仍调既有
POST /{assignmentId}/change(不变)
展示/交互提示:增删槽位后改派方案需重新冻结(后端已清最终确认标记);保留槽位的确认状态/车辆/司机不变。座位数校验在派车 create 时进行(座位不足进 warnings)。
验证证据
- 新增 3 用例:增槽位成功生成全程行+保留已派+Step2 追加 / 需求无派单行 605012 / 需求不可派抛错
- AssignmentServiceTest 394/394 全绿;fleet spotless:check 通过
- fleet verify(mvn-throttle 错峰):3251 测试仅
ReleaseEOccupancyMysql8033RecoveryTest(需 MySQL 8.0.33 环境)基线失败,与本案无关 - 部署:hl-fleet-service 双实例 UP(20:24)
- 网关验证:VEHICLE_MANAGER 调
POST /admin/fleet/assignments/slots:缺 requirementId → 400(参数校验生效);不存在需求 → 605012(业务校验生效);端点部署成功