文件
hl-api-changelog/changelogs-v2/2026-06/22_发票金额String序列化修正_管理后台.md
T

1.9 KiB
原始文件 Blame 文件历史

【修正·管理后台】发票管理接口金额字段改 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 类计数字段仍为数字(非金额,不受影响)。