diff --git a/changelogs-v2/2026-06/18_3978_订单与资源v3金额字段补全String序列化-修改接口-管理后台.md b/changelogs-v2/2026-06/18_3978_订单与资源v3金额字段补全String序列化-修改接口-管理后台.md index d9355e8..925ae76 100644 --- a/changelogs-v2/2026-06/18_3978_订单与资源v3金额字段补全String序列化-修改接口-管理后台.md +++ b/changelogs-v2/2026-06/18_3978_订单与资源v3金额字段补全String序列化-修改接口-管理后台.md @@ -12,7 +12,9 @@ 平台铁律「JSON 金额必为 String」此前在 order-v3 / resource 多处 RespVO 漏标 `@JsonSerialize(ToStringSerializer)`,金额被序列化成 JSON number。W1(#3965)已修订单钱 / 状态热区一批,**本批(#3978 共 39 个 VO + #3979 resource RoomTypeVO)经审查全量补齐剩余漏标的金额字段**。 -**这些字段从「数字」变为「带引号字符串」,前端解析金额必须按字符串处理(`new Decimal(str)` / `parseFloat(str)`),勿假设为 number。** 已合并 dev-v3、部署测试服双实例 health UP、9443 + 真 admin token 实测订单详情金额返回字符串通过。 +**字段类型在 Java 内仍是 `BigDecimal`(未改类型),只是 JSON 输出从裸数字变带引号字符串,对齐平台「金额=String」约定。前端无需改动** —— 金额本就按字符串口径处理(W1 #3965 及其它金额接口已是 String),本批把漏标的几个补回一致即可;JS 对金额做 `>` `<` `-` `*` `/` 会自动转数字、照常工作,仅 `a + b` 直接相加(会变字符串拼接)/ 对原始字段 `.toFixed()` / `=== 0`·`!== 0` 严格比较 这三类才需留意,而金额本就不应这样用 → 常规渲染 / 比较 / 运算无需任何改动。 + +已合并 dev-v3、部署测试服双实例 health UP、9443 + 真 admin token 实测订单详情金额返回字符串通过。 注:仅金额字段(金额 / 价 / 费 / 差价 / 成本 / 预算 / 应收实付 / 退款额);比率字段(profitRate / ratingAvg 等)不受影响。