1.9 KiB
1.9 KiB
【修正·管理后台】发票管理接口金额字段改 String 序列化(对齐平台金额约定)
模块:order-v3 发票(invoice)管理后台 类型:契约修正(每日审查驱动,非新增端点) 影响端点:
/v3/admin/order/invoice/**(发票申请/开票/重传/分页列表) 关联:发票补齐 PR1-4(#4171/#4172/#4173/#4174)的每日审查修正 测试服已部署验证(9443 真 token 实测 200,金额字段确认为字符串)
⚠️ 关键说明
发票管理后台部分响应 VO 的金额字段(BigDecimal)此前漏标 @JsonSerialize(ToStringSerializer),会被全局 Jackson 序列化成 JSON 数字(如 0),与平台「所有金额一律 String」约定不一致。本次修正后统一返回字符串(如 "0"、"1280.00")。
前端按平台惯例以字符串解析金额即可,无需改动;若此前已按数字解析这几个字段,请改回字符串。
1. 受影响字段
| VO | 字段 | 修正前 | 修正后 |
|---|---|---|---|
| InvoicePageStatsVO(分页统计) | requestedAmount / issuedAmount / pushedAmount / currentMonthIssuedAmount | 数字 0 |
字符串 "0" |
| InvoicePageItemRespVO(分页行) | amount | 数字 | 字符串 |
| AdminInvoiceApplyRespVO(代客申请响应) | amount | 数字 | 字符串 |
2. 实测样例
请求:GET /v3/admin/order/invoice/page?pageNo=1&pageSize=5(Bearer admin token)
响应(节选,金额均为字符串):
{
"code": 200,
"message": "成功",
"data": {
"records": [],
"total": 0,
"stats": {
"requestedCount": 0,
"requestedAmount": "0",
"issuedCount": 0,
"issuedAmount": "0",
"pushedCount": 0,
"pushedAmount": "0",
"currentMonthIssuedCount": 0,
"currentMonthIssuedAmount": "0"
}
}
}
count 类计数字段仍为数字(非金额,不受影响)。