From d8ec62c293d0dac505e5a0210b6a8ff50bf1dce5 Mon Sep 17 00:00:00 2001 From: Fang Date: Mon, 27 Jun 2022 23:34:32 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=89=B9=E9=87=8F=E8=BD=AC=E8=B4=A6?= =?UTF-8?q?=E5=88=B0=E9=9B=B6=E9=92=B1=E6=9F=A5=E8=AF=A2BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes #I5E2X7 --- .../cn/felord/payment/wechat/v3/SignatureProvider.java | 10 ++++------ .../payment/wechat/v3/WechatBatchTransferApi.java | 4 ++-- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/SignatureProvider.java b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/SignatureProvider.java index 268c832..f4f84a1 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/SignatureProvider.java +++ b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/SignatureProvider.java @@ -171,7 +171,7 @@ public class SignatureProvider { public String doRequestSign(PrivateKey privateKey, String... orderedComponents) { Signature signer = Signature.getInstance("SHA256withRSA", BC_PROVIDER); signer.initSign(privateKey); - final String signatureStr = createSign(true, orderedComponents); + final String signatureStr = createSign(orderedComponents); signer.update(signatureStr.getBytes(StandardCharsets.UTF_8)); return Base64Utils.encodeToString(signer.sign()); } @@ -191,7 +191,7 @@ public class SignatureProvider { } Certificate certificate = CERTIFICATE_MAP.get(wechatpaySerial).getX509Certificate(); - final String signatureStr = createSign(true, params.getWechatpayTimestamp(), params.getWechatpayNonce(), params.getBody()); + final String signatureStr = createSign(params.getWechatpayTimestamp(), params.getWechatpayNonce(), params.getBody()); Signature signer = Signature.getInstance("SHA256withRSA", BC_PROVIDER); signer.initVerify(certificate); signer.update(signatureStr.getBytes(StandardCharsets.UTF_8)); @@ -397,11 +397,9 @@ public class SignatureProvider { * @param components the components * @return string string */ - private static String createSign(boolean newLine, String... components) { - - String suffix = newLine ? "\n" : ""; + private static String createSign(String... components) { return Arrays.stream(components) - .collect(Collectors.joining("\n", "", suffix)); + .collect(Collectors.joining("\n", "", "\n")); } } diff --git a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatBatchTransferApi.java b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatBatchTransferApi.java index 18db0aa..886c165 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatBatchTransferApi.java +++ b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatBatchTransferApi.java @@ -196,8 +196,8 @@ public class WechatBatchTransferApi extends AbstractApi { this.client().withType(WechatPayV3Type.BATCH_TRANSFER_DETAIL_MCH, queryBatchTransferDetailParams) .function((type, params) -> { Map pathParams = new HashMap<>(2); - pathParams.put("batch_id", params.getBatchIdOrOutBatchNo()); - pathParams.put("detail_id", params.getDetailIdOrOutDetailNo()); + pathParams.put("out_batch_no", params.getBatchIdOrOutBatchNo()); + pathParams.put("out_detail_no", params.getDetailIdOrOutDetailNo()); URI uri = UriComponentsBuilder.fromHttpUrl(type.uri(WeChatServer.CHINA)) .build()