From 91597b90ac18feb8acc21fcadfc7ef080ac03f8d Mon Sep 17 00:00:00 2001 From: dax Date: Thu, 7 Jul 2022 18:57:43 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=9C=B0=E5=9D=80?= =?UTF-8?q?=E5=8A=A0=E5=AF=86=E7=9A=84NPE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../payment/wechat/v3/WechatPartnerSpecialMchApi.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatPartnerSpecialMchApi.java b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatPartnerSpecialMchApi.java index 01957b2..9f25bcb 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatPartnerSpecialMchApi.java +++ b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatPartnerSpecialMchApi.java @@ -23,6 +23,7 @@ import cn.felord.payment.wechat.v3.model.specmch.*; import com.fasterxml.jackson.databind.node.ObjectNode; import org.springframework.http.HttpHeaders; import org.springframework.util.CollectionUtils; +import org.springframework.util.StringUtils; import org.springframework.web.util.UriComponentsBuilder; import java.net.URI; @@ -196,13 +197,19 @@ public class WechatPartnerSpecialMchApi extends AbstractApi { if (idCardInfo != null) { idCardInfo.setIdCardName(signatureProvider.encryptRequestMessage(idCardInfo.getIdCardName(), x509Certificate)); idCardInfo.setIdCardNumber(signatureProvider.encryptRequestMessage(idCardInfo.getIdCardNumber(), x509Certificate)); - idCardInfo.setIdCardAddress(signatureProvider.encryptRequestMessage(idCardInfo.getIdCardAddress(), x509Certificate)); + String idCardAddress = idCardInfo.getIdCardAddress(); + if (StringUtils.hasText(idCardAddress)){ + idCardInfo.setIdCardAddress(signatureProvider.encryptRequestMessage(idCardAddress, x509Certificate)); + } } IdDocInfo idDocInfo = identityInfo.getIdDocInfo(); if (idDocInfo != null) { idDocInfo.setIdDocName(signatureProvider.encryptRequestMessage(idDocInfo.getIdDocName(), x509Certificate)); idDocInfo.setIdDocNumber(signatureProvider.encryptRequestMessage(idDocInfo.getIdDocNumber(), x509Certificate)); - idDocInfo.setIdDocAddress(signatureProvider.encryptRequestMessage(idDocInfo.getIdDocAddress(), x509Certificate)); + String idDocAddress = idDocInfo.getIdDocAddress(); + if (StringUtils.hasText(idDocAddress)){ + idDocInfo.setIdDocAddress(signatureProvider.encryptRequestMessage(idDocAddress, x509Certificate)); + } } List uboInfoList = subjectInfo.getUboInfoList(); if (!CollectionUtils.isEmpty(uboInfoList)) {