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

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=5Bearer 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 类计数字段仍为数字(非金额,不受影响)。