5.5 KiB
5.5 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
| 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| hl-changelog/v2 | frontend | 确认执行页「逐日车费」仍只显示 1 天:修复 0538f4b4 未合入主分支/未发布,线上跑的仍是按 serviceDate 去重的旧逻辑 | admin | 前端缺陷 | wx(GIT) | not_required | not_required | implemented | mmg | 0538f4b4 | 2026-08-12 | 后端零改动,已复核后端逻辑确认数据完整:BoardOrderService#expandFullTripDailyRows 把全程行按服务期逐日展开(3133-3141 行 BeanUtil 逐日复制 vehicleId/driverId/价格到每个切片),且 2218+2225-2228 行对「已派(车+司机非空)或 finalized==1」的逐日切片全部纳入——单车 3 天订单会返回全 3 天 dailyVehicleFees,非只回 1 天。症状与 08-12 那条 changelog(frontend_ref=0538f4b4,确认执行页逐日车费按 serviceDate 去重折叠)同型。但关键发现:0538f4b4 这个修复 commit 不在 hl-ui 的 origin/dev / origin/master / origin/main 任何主分支祖先里,线上构建跑的仍是旧的 mergeContinuityDailyVehicleFees(按 serviceDate 全局去重)——它本为「同车跨段同日不重叠」设计,会把『逐日 × 逐车』折叠成『逐日单行』,单车 3 天被去重塌成 1 天、最终总车费也只算 1 天(截图:3 天订单 08/23-08/25 只显示 8月23日 ¥800,总车费 ¥800)。0538f4b4 新增的 groupDailyVehicleFeesByVehicle(vehicleFeeAmount.js:135-160 按车分组、组内按日去重)对单车多天也正确(同组保留全部不同 serviceDate),即修复内容本身覆盖单车场景,问题只是『没合并没发布』。请 mmg 把 0538f4b4 合入当前发布分支并发布后再验。 | 2026-08-12 | dev-v3 |
确认执行页「逐日车费」仍只显示 1 天(前端·修复未发布)
页面:车务管理 → 派单看板 → 订单派车弹窗 → Step4「确认执行」→「逐日车费」卡片 +「最终总车费(只读合计)」 后端:本条零改动。下面后端结论来自当前源码复核(
BoardOrderService)。 诉求:把修复 commit0538f4b4合入发布分支并发布。
一、现象(2026-08-12 复现)
单车 3 天订单(客户周明月,1 成人,日期 08/23–08/25 共 3 天,车辆蒙A-H7777 丰田汉兰达 7 座,师傅阿拉坦)走到确认执行页:
- 「逐日车费」只显示 1 行:
8月23日 收费 日历价 ¥800; - 「最终总车费(只读合计)」也只有 ¥800(应为 3 天合计)。
二、后端已排除(数据完整)
确认执行页数据源 GET /admin/fleet/board/orders/{orderId} 的组装逻辑(BoardOrderService):
- 全程行按服务期逐日展开:
expandFullTripDailyRows(3120-3145)对service_date为 NULL 的全程行,从startDate到endDate逐日BeanUtil.copyProperties复制成切片——vehicleId/driverId/dispatchPlanFinalized/价格全部逐日带齐。 - 已派行不额外过滤:2218 行展开后,2225-2228 行只要求「
dispatch_plan_finalized==1或(vehicleId与driverId均非空)」即纳入服务日——单车已派全程行展开成的 3 个切片每天都满足,会进currentServiceDatesByGroup与activeAssignments。
即:后端对该单车 3 天订单会返回全部 3 天的 dailyVehicleFees 与逐日价,不是只回 1 天。与 08-12 那条 changelog 测试服实测结论(activeAssignments[].dailyVehicleFees 逐日齐全 + 根级 vehicleFeeTotal)一致。
三、根因(前端):修复存在但未发布
症状与 08-12 changelog(frontend_ref=0538f4b4)描述的「确认执行页逐日车费按 serviceDate 去重折叠」完全同型:
- 旧逻辑
mergeContinuityDailyVehicleFees(vehicleFeeAmount.js:106)按serviceDate全局去重——它本为「同车跨段接续、同日不重叠」设计,被错用到「逐日 × 逐车」,把多行折叠成单行,总价也只算去重后的一行。 - mmg 的修复
0538f4b4已新增groupDailyVehicleFeesByVehicle(vehicleFeeAmount.js:135-160):按车分组(vehicleId 优先/车牌兜底)、组内按日去重——单车 3 天进同一组、保留全部 3 个不同 serviceDate,修复后单车场景应显示全 3 天。即修复内容本身覆盖单车场景。
但 0538f4b4 不在 hl-ui 的 origin/dev / origin/master / origin/main 任何主分支祖先里,本地工作树也未合入。 也就是说该修复没有合并、没有发布,当前线上构建跑的仍是旧的 mergeContinuityDailyVehicleFees,所以 3 天被去重塌成 1 天。
四、要做的(前端)
- 把修复 commit
0538f4b4合入当前对外发布的分支并发布; - 发布后用单车多天订单(如本例 08/23–08/25)回归确认执行页:
- 「逐日车费」显示 3 行(每天一行,带日期+价);
- 「最终总车费」= 3 天合计(直接取根级
vehicleFeeTotal,不要前端再按日期去重聚合)。
五、验收
0538f4b4已合入发布分支并上线- 单车多天订单确认执行页逐日车费显示「服务日数」行(本例 3 行)
- 「最终总车费」= 后端
vehicleFeeTotal(本例 3 天合计) - 多车并行订单仍按车铺开多行(08-12 changelog 场景回归)
- 同车跨段接续(同日不重叠)场景仍正确合并