fix(shop): 修复支付回调状态判断逻辑,确保订单状态更新

- 将支付成功状态判断由字符串比较改为枚举值比较
- 使用 Transaction.TradeStateEnum.SUCCESS 替代 "支付成功" 字符串判断
- 避免因状态描述字符串不一致导致支付回调处理失败
- 保证支付成功后订单状态能够正确更新
This commit is contained in:
2026-04-13 02:14:34 +08:00
parent 701a135edd
commit 9297d13045
3 changed files with 18 additions and 2 deletions

View File

@@ -888,7 +888,8 @@ public class ShopOrderController extends BaseController {
logger.info("✅ 异步通知解析成功 - 交易状态: {}, 商户订单号: {}",
transaction.getTradeStateDesc(), transaction.getOutTradeNo());
if (StrUtil.equals("支付成功", transaction.getTradeStateDesc())) {
// 使用枚举值判断支付状态,避免依赖状态描述字符串
if (Transaction.TradeStateEnum.SUCCESS.equals(transaction.getTradeState())) {
final String outTradeNo = transaction.getOutTradeNo();
final String transactionId = transaction.getTransactionId();
final Integer total = transaction.getAmount().getTotal();