From e1e155577ea96a2afcf9e87f35f77dbc9a5c935d Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Wed, 12 Aug 2026 18:57:46 +0800 Subject: [PATCH] =?UTF-8?q?docs(changelog):=20=E7=A1=AE=E8=AE=A4=E6=89=A7?= =?UTF-8?q?=E8=A1=8C=E9=A1=B5=E9=80=90=E6=97=A5=E8=BD=A6=E8=B4=B9=E4=BB=8D?= =?UTF-8?q?=E5=8F=AA=E6=98=BE=E7=A4=BA1=E5=A4=A9=E2=80=94=E2=80=940538f4b4?= =?UTF-8?q?=E6=9C=AA=E5=90=88=E5=85=A5=E4=B8=BB=E5=88=86=E6=94=AF/?= =?UTF-8?q?=E6=9C=AA=E5=8F=91=E5=B8=83(=E5=89=8D=E7=AB=AF=E7=BC=BA?= =?UTF-8?q?=E9=99=B7,=E5=90=8E=E7=AB=AF=E5=B7=B2=E5=A4=8D=E6=A0=B8?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=AE=8C=E6=95=B4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...日车费修复未发布仍只显示1天-前端缺陷-管理后台.md | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 changelogs-v2/2026-08/12_frontend_确认执行页逐日车费修复未发布仍只显示1天-前端缺陷-管理后台.md diff --git a/changelogs-v2/2026-08/12_frontend_确认执行页逐日车费修复未发布仍只显示1天-前端缺陷-管理后台.md b/changelogs-v2/2026-08/12_frontend_确认执行页逐日车费修复未发布仍只显示1天-前端缺陷-管理后台.md new file mode 100644 index 0000000..d7f21aa --- /dev/null +++ b/changelogs-v2/2026-08/12_frontend_确认执行页逐日车费修复未发布仍只显示1天-前端缺陷-管理后台.md @@ -0,0 +1,66 @@ +--- +schema: "hl-changelog/v2" +ticket: "frontend" +title: "确认执行页「逐日车费」仍只显示 1 天:修复 0538f4b4 未合入主分支/未发布,线上跑的仍是按 serviceDate 去重的旧逻辑" +consumer: "admin" +change_type: "前端缺陷" +author: "wx(GIT)" +backend_status: "not_required" +gateway_status: "not_required" +frontend_status: "implemented" +frontend_owner: "mmg" +frontend_ref: "0538f4b4" +target_release: "" +verified_at: "2026-08-12" +status_note: "后端零改动,已复核后端逻辑确认数据完整: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 合入当前发布分支并发布后再验。" +updated_at: "2026-08-12" +base: "dev-v3" +--- + +# 确认执行页「逐日车费」仍只显示 1 天(前端·修复未发布) + +> **页面**:车务管理 → 派单看板 → 订单派车弹窗 → Step4「确认执行」→「逐日车费」卡片 +「最终总车费(只读合计)」 +> **后端**:本条**零改动**。下面后端结论来自当前源码复核(`BoardOrderService`)。 +> **诉求**:把修复 commit `0538f4b4` 合入发布分支并发布。 + +--- + +## 一、现象(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`): + +1. **全程行按服务期逐日展开**:`expandFullTripDailyRows`(3120-3145)对 `service_date` 为 NULL 的全程行,从 `startDate` 到 `endDate` 逐日 `BeanUtil.copyProperties` 复制成切片——`vehicleId`/`driverId`/`dispatchPlanFinalized`/价格全部逐日带齐。 +2. **已派行不额外过滤**: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 天。 + +## 四、要做的(前端) + +1. 把修复 commit `0538f4b4` 合入当前对外发布的分支并发布; +2. 发布后用**单车多天**订单(如本例 08/23–08/25)回归确认执行页: + - 「逐日车费」显示 **3 行**(每天一行,带日期+价); + - 「最终总车费」= 3 天合计(直接取根级 `vehicleFeeTotal`,不要前端再按日期去重聚合)。 + +## 五、验收 + +- [ ] `0538f4b4` 已合入发布分支并上线 +- [ ] 单车多天订单确认执行页逐日车费显示「服务日数」行(本例 3 行) +- [ ] 「最终总车费」= 后端 `vehicleFeeTotal`(本例 3 天合计) +- [ ] 多车并行订单仍按车铺开多行(08-12 changelog 场景回归) +- [ ] 同车跨段接续(同日不重叠)场景仍正确合并