docs(changelogs-v2): 两条前端缺陷已修复交付
所有检测均成功
changelog-filename-gate / validate (push) Successful in 2s

①确认执行页逐日车费多车折叠:frontend_ref=0538f4b4。
②调整订单脱敏值误回传:frontend_ref=d4d25a1c。
均翻 implemented + 补前端修复说明。hl-admin v2.1 已 push。
这个提交包含在:
Mimingguang 2026-08-12 16:16:50 +08:00
父节点 5c285a39c0
当前提交 0329ca28ac
共有 2 个文件被更改,包括 8 次插入8 次删除

查看文件

@ -7,12 +7,12 @@ change_type: "前端缺陷"
author: "wx(GIT)"
backend_status: "not_required"
gateway_status: "not_required"
frontend_status: "pending"
frontend_status: "implemented"
frontend_owner: "mmg"
frontend_ref: ""
frontend_ref: "0538f4b4"
target_release: ""
verified_at: ""
status_note: "后端零改动。已用测试服真实 API 核实(订单 26-0821,看板 GET /admin/fleet/board/orders/2086270141158346754activeAssignments 返回 4 段完整执行段蒙A-K1999 考斯特 08-18~08-20 三天+08-21 一天 ×¥1500,蒙A-T1557 普拉多 08-18~08-20 三天+08-21 一天 ×¥1000,每段 dailyVehicleFees 逐日价齐全,根级 vehicleFeeTotal=\"10000.00\"、vehicleFeeSummaries=[考斯特¥6000, 普拉多¥4000]。根因在前端AssignModal.vue step4 逐日车费走 mergeContinuityDailyVehicleFeesvehicleFeeAmount.js,该函数按 serviceDate 去重、同日多台车只保留第一台的价——它本是为「同一台车跨段接续」设计的合并,被错用到「多台车并行」场景,把「逐日×逐车」折叠成「逐日单行」,总价也错。修法:确认页逐日车费按「车+服务日」逐行铺开(读 activeAssignments[].dailyVehicleFees,同日多车保留多行并带车牌/车型区分),总价直接用根级 vehicleFeeTotal,不要用按日期去重的聚合。"
verified_at: "2026-08-12"
status_note: "后端零改动。已用测试服真实 API 核实(订单 26-0821,看板 GET /admin/fleet/board/orders/2086270141158346754activeAssignments 返回 4 段完整执行段蒙A-K1999 考斯特 08-18~08-20 三天+08-21 一天 ×¥1500,蒙A-T1557 普拉多 08-18~08-20 三天+08-21 一天 ×¥1000,每段 dailyVehicleFees 逐日价齐全,根级 vehicleFeeTotal=\"10000.00\"、vehicleFeeSummaries=[考斯特¥6000, 普拉多¥4000]。根因在前端AssignModal.vue step4 逐日车费走 mergeContinuityDailyVehicleFeesvehicleFeeAmount.js,该函数按 serviceDate 去重、同日多台车只保留第一台的价——它本是为「同一台车跨段接续」设计的合并,被错用到「多台车并行」场景,把「逐日×逐车」折叠成「逐日单行」,总价也错。修法:确认页逐日车费按「车+服务日」逐行铺开(读 activeAssignments[].dailyVehicleFees,同日多车保留多行并带车牌/车型区分),总价直接用根级 vehicleFeeTotal,不要用按日期去重的聚合。前端 2026-08-12 已修复并交付vehicleFeeAmount 新增 groupDailyVehicleFeesByVehicle 以车辆身份分组vehicleId 优先/车牌兜底/皆无入匿名组保持旧语义,同车跨段仍按日合并、多车同日保留多行带车牌·车型小标题Step4Confirm 多组渲染独立 DailyVehicleFeeList;sumContinuityVehicleFeeTotal 逐日回退改按车分组防同日多车漏算;confirmationVehicleFeeTotal 多段优先 resolveBoardOrderVehicleFeeTotal(props.order) 取根级 vehicleFeeTotal特意用 props.order 非 assignmentOrder——confirmHold 下后者已被代表段单段总价覆盖。fleet/board 35 文件 430 用例全绿,checkpoint 全过。"
updated_at: "2026-08-12"
base: "dev-v3"
---

查看文件

@ -7,12 +7,12 @@ change_type: "前端缺陷"
author: "wx(GIT)"
backend_status: "not_required"
gateway_status: "not_required"
frontend_status: "pending"
frontend_status: "implemented"
frontend_owner: "mmg"
frontend_ref: ""
frontend_ref: "d4d25a1c"
target_release: ""
verified_at: ""
status_note: "后端零改动,契约已支持『不改不传』。调整订单弹窗里手机号/证件号是脱敏回显(如 185****2756、110101****1234。若用户没改这两列,前端不应把脱敏值回传后端——后端按『值变化』判改动,脱敏串 ≠ 明文会被误判为『改了』,再走格式校验报『手机号格式非法(应为 11 位数字)/证件号格式非法』。契约AdjustmentSubmitReqVO.updates.people.travelers.update[].phone/idNo 传 null或整个字段省略= 保留原值不动;只有用户输入了新的完整明文值才提交。快照 GET /v3/admin/order/{id}/adjustment/snapshot?scope=PEOPLE 与订单详情 customerInfo.travelers 均返回明文admin 端专用),可编辑初始值应取明文,不要取脱敏串。"
verified_at: "2026-08-12"
status_note: "后端零改动,契约已支持『不改不传』。调整订单弹窗里手机号/证件号是脱敏回显(如 185****2756、110101****1234。若用户没改这两列,前端不应把脱敏值回传后端——后端按『值变化』判改动,脱敏串 ≠ 明文会被误判为『改了』,再走格式校验报『手机号格式非法(应为 11 位数字)/证件号格式非法』。契约AdjustmentSubmitReqVO.updates.people.travelers.update[].phone/idNo 传 null或整个字段省略= 保留原值不动;只有用户输入了新的完整明文值才提交。快照 GET /v3/admin/order/{id}/adjustment/snapshot?scope=PEOPLE 与订单详情 customerInfo.travelers 均返回明文admin 端专用),可编辑初始值应取明文,不要取脱敏串。前端 2026-08-12 已修复并交付真根因比本条所述更准——①buildTravelerPayload 未填敏感字段回传 ''''≠null 后端误判改动对空串跑格式校验);②订单级紧急电话 buildEmergencyPhonePayload 原回传 originalEmergencyPhone 明文/脱敏串,用户只改姓名也泄漏脱敏串。修复TravelerInfoEditor 捕获提交形态基线 baselineTravelerPayload脱敏字段已省略+紧急电话「脱敏或与基线一致→null不改不传」,buildAdjustmentPeopleUpdate 加 baselineTravelers 对 update 项逐字段 diff「改才传、不改省略」、只剩 id 未改项剔除,toAdjustmentTraveler 防御剔除含「*」的 idCardNo/phone/emergencyPhone;不传基线保持原全量行为向后兼容。order-v2 29 文件 231 用例全绿,checkpoint 全过。"
updated_at: "2026-08-12"
base: "dev-v3"
---