3.1 KiB
3.1 KiB
schema, ticket, title, consumer, change_type, author, backend_status, gateway_status, frontend_status, frontend_owner, frontend_ref, target_release, verified_at, status_note, updated_at, base, generated
| schema | ticket | title | consumer | change_type | author | backend_status | gateway_status | frontend_status | frontend_owner | frontend_ref | target_release | verified_at | status_note | updated_at | base | generated |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| hl-changelog/v2 | 5657 | 确认执行不强制派满建议车辆数(按实际槽位校验,建议数仅参考) | admin | 修改接口 | wx(GIT) | deployed | verified | not_required | 后端完成:PR #5660 已合并 dev-v3 并部署 TEST(18:27 滚动 DONE)。网关验证真实复现工单场景 6 项全 PASS:订单 26-4949(7人/建议2辆)只派 1 辆 7 座 GL8,确认执行 200 confirmed=true(修复前 605041「缺少第2个车辆槽位」×4)。前端无需配合。 | 2026-08-07 | dev-v3 | 2026-08-07T18:45:00+08:00 |
确认执行不强制派满建议车辆数(按实际槽位校验,建议数仅参考)
服务: hl-fleet-service PR: #5660 Issue: #5657 日期: 2026-08-07 影响: 🟢 缺陷修复,无契约结构变更(
POST /admin/fleet/assignments/:assignmentId/confirm行为修复)。前端无需改代码。
背景
#5657(P1)wx 实测:订单 26-4949(7 人),系统建议 2 辆车(suggestedVehicleCount=2),车务只派 1 辆(7 座商务车够坐)。确认执行被拦:「该服务日缺少第 2 个车辆槽位派单」(8/13-8/16 四天都报)+「订单与派单基线已变化,请按逐日差异处理后重试」(605041)。
口径(wx):车务说的算——车务想派几辆就派几辆,建议车辆数仅作参考,不强制派满。
根因:最终确认基线校验(assertFinalConfirmationBaseline)按需求展开的期望槽位数逐槽逐日要求派单覆盖,未派定的槽位也强制要求补齐。
修复内容(内部,无接口/字段结构变化)
- 确认执行基线校验改为按实际槽位校验:未派定的槽位跳过「缺少第 N 个槽位」强制拦截(建议车辆数仅参考);
- 已派定槽位的服务日完整性校验保留(防止半派状态确认);
- 座位/车型相关提示与校验逻辑不变(座位数校验保留)。
变更接口
| 方法 | 路径 | 来源 |
|---|---|---|
| POST | /admin/fleet/assignments/:assignmentId/confirm | 确认执行:未派满建议数不再 605041,已派槽位缺服务日仍拦截 |
验证证据
- 全量
mvn -pl hl-fleet-service -am verify:3258 Tests,Failures=0,Errors=0;新增 2 例回归(建议两辆仅派一辆全程行可确认——已回退验证修复前确实被拦;已派槽位缺服务日仍拦截);spotless 通过。 - 部署 TEST:18:27 滚动 DONE。
- 网关真实复现(订单 26-4949,蒙A-G8888 GL8 7 座对 7 人,8/13-8/16)6 项全 PASS:删除多余槽位恢复只派 1 辆现场 → 登记司机确认 → 确认执行 200 confirmed=true → DB 终态 4 行 assigned + confirmed_at 非空、无其他活跃槽位。
前端配合
无需配合。确认执行按车务实际派车数通过,建议车辆数仍作为参考展示。