hl-api-changelog/changelogs-v2/2026-06/20_4118_早鸟管理优惠金额补String序列化-修复-管理后台.md

1.9 KiB

早鸟优惠管理「优惠金额」序列化修复(泄成数字 → 字符串)— 修复 — 管理后台

变更类型:🐛 Bug 修复(金额字段序列化,数字 → 字符串) 端类型:管理后台(营销 · 早鸟优惠管理) 日期2026-06-20 服务hl-order-service-v3 PRwx/HL#4118


⚠️ 关键说明(给前端)

早鸟优惠管理 GET /v3/admin/order/early-bird/list(列表)与 GET /v3/admin/order/early-bird/{planId}(详情)返回的 EarlyBirdPlanVO.discountAmount(优惠金额),此前漏成 JSON 数字,现修为字符串(与平台「金额=字符串」契约一致):

字段 修复前 修复后
discountAmount 200.00(数字) "200.00"(字符串)
  • discountPercent(折扣率 0~100,如 90.0仍为数字——它是比例不是金额,前端按数字用(90 → 9 折)。
  • planId 等雪花 ID 仍为字符串。

根因

平台全局 Jackson 只把超 JS 范围的 Long 雪花转字符串、不转 BigDecimal,故金额 BigDecimal 漏标 @JsonSerialize(ToStringSerializer) 就泄成数字。AdminEarlyBirdController(前端管理页)直接返回 EarlyBirdPlanVO,其 discountAmount 漏标。

测试(测试服 9443 实测)

早鸟列表/详情实测:discountAmount 返字符串("200.00"/"80.00"/"150.00"),discountPercent 仍数字、planId 字符串。编译 BUILD SUCCESS、部署 order-v3 双实例 success。

备注

  • 列表端点是 /v3/admin/order/early-bird/list(不是裸 /v3/admin/order/early-bird,后者会被 /{id} 路由捕获)。
  • 全 order-v3 金额序列化已横扫收口:除本次与房务详情 3 feign VO#4117外,其余漏标的金额都在请求 VO / /internal/ 响应 / feign 入站 DTOJava 消费方无损),非前端可达、不受影响。
  • 网关无需改。