From f9f9f64dafeb5d70507975a043f221a59d82d6ce Mon Sep 17 00:00:00 2001 From: DaxPay Dev Date: Mon, 6 Jul 2026 12:58:16 +0800 Subject: [PATCH] =?UTF-8?q?fix(lakala):=20=E4=BF=AE=E5=A4=8D=E5=9B=9E?= =?UTF-8?q?=E8=B0=83=E6=97=B6=E9=97=B4=E8=A7=A3=E6=9E=90=E5=A4=B1=E8=B4=A5?= =?UTF-8?q?(trade=5Ftime=E6=B0=B8=E8=BF=9C=E4=B8=A2=E5=A4=B1)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lakala/service/callback/LakalaPayCallbackService.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/daxpay-channel/daxpay-channel-lakala/src/main/java/cn/daxpay/open/channel/lakala/service/callback/LakalaPayCallbackService.java b/daxpay-channel/daxpay-channel-lakala/src/main/java/cn/daxpay/open/channel/lakala/service/callback/LakalaPayCallbackService.java index d5f9d81a5..2a45f155f 100644 --- a/daxpay-channel/daxpay-channel-lakala/src/main/java/cn/daxpay/open/channel/lakala/service/callback/LakalaPayCallbackService.java +++ b/daxpay-channel/daxpay-channel-lakala/src/main/java/cn/daxpay/open/channel/lakala/service/callback/LakalaPayCallbackService.java @@ -18,6 +18,7 @@ import java.security.Signature; import java.security.cert.CertificateFactory; import java.security.cert.X509Certificate; import java.time.OffsetDateTime; +import java.time.ZoneOffset; import java.time.format.DateTimeFormatter; import java.util.Base64; import java.util.Map; @@ -41,7 +42,10 @@ public class LakalaPayCallbackService { private static final String NOTIFY_SUCCESS = "success"; private static final String NOTIFY_FAIL = "fail"; - private static final DateTimeFormatter LKL_TIME_FORMATTER = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); + /// 拉卡拉属国内通道, 回调时间字段(trade_time)为东八区本地时间字面量(yyyyMMddHHmmss), + /// 显式钉死 +08:00 偏移, 避免 OffsetDateTime.parse 因缺 OFFSET_SECONDS 解析失败 + private static final DateTimeFormatter LKL_TIME_FORMATTER = + DateTimeFormatter.ofPattern("yyyyMMddHHmmss").withZone(ZoneOffset.ofHours(8)); private final LakalaIsvKeyConfigManager lakalaIsvKeyConfigManager; private final PayCallbackService payCallbackService;