From 729c1358d241aa73092a0621863c40aeab94c572 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Fri, 17 Apr 2026 19:21:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=89=8D=E7=AB=AF=E6=8F=90=E7=A4=BA=EF=BC=9A?= =?UTF-8?q?=E4=BA=A7=E5=93=81=E7=BC=96=E8=BE=91=E6=B7=BB=E5=8A=A0=E8=BD=A6?= =?UTF-8?q?=E5=9E=8B=E5=BC=B9=E7=AA=97=E4=B8=8D=E8=A6=81=E5=B1=95=E7=A4=BA?= =?UTF-8?q?=20basePrice=20(=E5=85=83/=E5=A4=A9)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...end-hint_vehicle-select-hide-base-price.md | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 changelogs/2026-04/2026-04-17_frontend-hint_vehicle-select-hide-base-price.md diff --git a/changelogs/2026-04/2026-04-17_frontend-hint_vehicle-select-hide-base-price.md b/changelogs/2026-04/2026-04-17_frontend-hint_vehicle-select-hide-base-price.md new file mode 100644 index 0000000..cdef658 --- /dev/null +++ b/changelogs/2026-04/2026-04-17_frontend-hint_vehicle-select-hide-base-price.md @@ -0,0 +1,54 @@ +# 前端提示:产品编辑「添加车型」弹窗不要展示 basePrice(元/天) + +> **服务**: 无后端改动 +> **日期**: 2026-04-17 +> **类型**: 前端展示建议(非接口变更) +> **涉及页面**: 管理端产品编辑 → 补充信息 → 车辆配置 → 点击「添加车型」后的搜索弹窗 + +--- + +## 现象 + +当前弹窗里,每个候选车型项右侧显示 `5座 · 元/天 · 已添加`,但"元/天"前的价格数字经常是空白(因为 `basePrice` 字段为 null 或 0),页面只剩孤零零的"元/天"后缀,对用户毫无信息量。 + +## 原因 + +弹窗数据源是 `GET /admin/vehicle/models/all?status=1`(`VehicleModelListVO`),该 VO 里包含 `basePrice`(基础日租价)字段,前端当前把它拼成 `xxx 元/天` 渲染。 + +但在**产品编辑→车辆配置**这个场景里: + +- 产品保存时只传 `vehicleModelIds`(车型 ID 列表),**完全不涉及价格**(参考 `ProductSupplementSaveReqVO#vehicleModelIds`) +- 产品报价/订单结算时的车辆成本,走的是**车型自己的价格日历**(`vehicle_price_calendar`)按出发日期查,和列表 VO 里的 `basePrice` 无关 +- `basePrice` 只是车型管理页维护的"参考日租价",很多车型根本没填 + +换句话说:这个场景**既不需要 basePrice,也不应该让用户误以为产品定价会用这个数**。 + +## 建议前端修改 + +### 方案 A(推荐,改动最小) + +在「添加车型」弹窗的候选项渲染里,**整体移除价格列(含"元/天"后缀)**,只保留: + +``` +[封面图] 车型名称 5座 [已添加/添加] +``` + +### 方案 B(更稳妥) + +价格列只在 `basePrice != null && basePrice > 0` 时才展示,为空/为 0 时隐藏整个价格片段(含"元/天"后缀)。 + +--- + +## 后端不变 + +- `VehicleModelListVO` 保持现状,`basePrice` 字段仍返回(车型管理列表页、下拉参考展示等其他场景可能在用) +- 接口签名/响应结构/字典全部不变 +- 无需重启任何服务 + +## 其他用到 basePrice 的地方(前端需自行排查) + +如果前端还有其他地方从这个接口读 `basePrice` 来展示,请一并按"是否与产品定价相关"判断: + +- **车型管理列表页** — 展示 `basePrice` 合理,保留 +- **车型下拉选择(如路线配置选车辆)** — 与定价无关,建议同样隐藏 +- **产品详情里展示已配置车型** — 与定价无关,建议隐藏