fix: 订单号回退20位,修复微信支付out_trade_no超长
这个提交包含在:
父节点
319bb981f1
当前提交
d66d16405c
@ -0,0 +1,24 @@
|
|||||||
|
# 订单号格式回退20位
|
||||||
|
|
||||||
|
**日期**: 2026-03-21
|
||||||
|
**服务**: hl-order-service
|
||||||
|
**类型**: Bug修复
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 问题
|
||||||
|
|
||||||
|
订单号之前从20位改为25位(毫秒精度),导致微信支付接口报错"商户订单号错误"。原因是微信支付 `out_trade_no` 限制最长32位,订单号25位加上支付类型后缀 `-DEPOSIT-V99` 最长达37位,超限。
|
||||||
|
|
||||||
|
## 修复
|
||||||
|
|
||||||
|
订单号回退为20位:`HL` + 秒级时间戳(14位) + 4位随机数。
|
||||||
|
|
||||||
|
| | 修复前 | 修复后 |
|
||||||
|
|---|--------|--------|
|
||||||
|
| 示例 | HL2026032114580490720445 (25位) | HL202603211458041234 (20位) |
|
||||||
|
| out_trade_no 最长 | 25+12=37位 (超限) | 20+12=32位 (刚好) |
|
||||||
|
|
||||||
|
## 前端影响
|
||||||
|
|
||||||
|
订单号展示区域确保支持20位即可(与之前一致)。
|
||||||
正在加载...
x
在新工单中引用
屏蔽一个用户