diff --git a/framework/src/main/java/cn/lili/modules/payment/kit/core/kit/PayKit.java b/framework/src/main/java/cn/lili/modules/payment/kit/core/kit/PayKit.java index 35cb41875..3b2d9d09c 100644 --- a/framework/src/main/java/cn/lili/modules/payment/kit/core/kit/PayKit.java +++ b/framework/src/main/java/cn/lili/modules/payment/kit/core/kit/PayKit.java @@ -313,16 +313,16 @@ public class PayKit { * v3 接口创建签名 * * @param signMessage 待签名的参数 - * @param keyPath key.pem 证书路径 + * @param key key.pem 证书 * @return 生成 v3 签名 * @throws Exception 异常信息 */ - public static String createSign(String signMessage, String keyPath) throws Exception { + public static String createSign(String signMessage, String key) throws Exception { if (StrUtil.isEmpty(signMessage)) { return null; } //获取商户私钥 - PrivateKey privateKey = PayKit.getPrivateKey(keyPath); + PrivateKey privateKey = PayKit.getPrivateKey(key); //生成签名 return RsaKit.encryptByPrivateKey(signMessage, privateKey); } @@ -378,13 +378,13 @@ public class PayKit { /** * 获取商户私钥 * - * @param keyPath 商户私钥证书路径 + * @param key 商户私钥证书 * @return {@link PrivateKey} 商户私钥 * @throws Exception 异常信息 */ - public static PrivateKey getPrivateKey(String keyPath) throws Exception { - String originalKey = FileUtil.readUtf8String(keyPath); - String privateKey = originalKey + public static PrivateKey getPrivateKey(String key) throws Exception { +// String originalKey = FileUtil.readUtf8String(keyPath); + String privateKey = key .replace("-----BEGIN PRIVATE KEY-----", "") .replace("-----END PRIVATE KEY-----", "") .replaceAll("\\s+", ""); diff --git a/framework/src/main/java/cn/lili/modules/payment/kit/core/kit/WxPayKit.java b/framework/src/main/java/cn/lili/modules/payment/kit/core/kit/WxPayKit.java index 3e3f3c629..c9ec5e537 100644 --- a/framework/src/main/java/cn/lili/modules/payment/kit/core/kit/WxPayKit.java +++ b/framework/src/main/java/cn/lili/modules/payment/kit/core/kit/WxPayKit.java @@ -449,7 +449,7 @@ public class WxPayKit { * @param urlSuffix 可通过 WxApiType 来获取,URL挂载参数需要自行拼接 * @param mchId 商户Id * @param serialNo 商户 API 证书序列号 - * @param keyPath key.pem 证书路径 + * @param key key.pem 证书 * @param body 接口请求参数 * @param nonceStr 随机字符库 * @param timestamp 时间戳 @@ -458,11 +458,11 @@ public class WxPayKit { * @throws Exception 异常信息 */ public static String buildAuthorization(RequestMethodEnums method, String urlSuffix, String mchId, - String serialNo, String keyPath, String body, String nonceStr, + String serialNo, String key, String body, String nonceStr, long timestamp, String authType) throws Exception { //构建签名参数 String buildSignMessage = PayKit.buildSignMessage(method, urlSuffix, timestamp, nonceStr, body); - String signature = PayKit.createSign(buildSignMessage, keyPath); + String signature = PayKit.createSign(buildSignMessage, key); //根据平台规则生成请求头 authorization return PayKit.getAuthorization(mchId, serialNo, nonceStr, String.valueOf(timestamp), signature, authType); } diff --git a/framework/src/main/java/cn/lili/modules/payment/kit/plugin/wechat/WechatApi.java b/framework/src/main/java/cn/lili/modules/payment/kit/plugin/wechat/WechatApi.java index 7708a69a1..240a658ab 100644 --- a/framework/src/main/java/cn/lili/modules/payment/kit/plugin/wechat/WechatApi.java +++ b/framework/src/main/java/cn/lili/modules/payment/kit/plugin/wechat/WechatApi.java @@ -165,7 +165,7 @@ public class WechatApi { * @param mchId 商户Id * @param serialNo 商户 API 证书序列号 * @param platSerialNo 平台序列号,接口中包含敏感信息时必传 - * @param keyPath apiclient_key.pem 证书路径 + * @param keyPath apiclient_key.pem 证书 * @param body 接口请求参数 * @param nonceStr 随机字符库 * @param timestamp 时间戳 @@ -175,12 +175,12 @@ public class WechatApi { * @throws Exception 接口执行异常 */ public static PaymentHttpResponse v3(RequestMethodEnums method, String urlPrefix, String urlSuffix, - String mchId, String serialNo, String platSerialNo, String keyPath, + String mchId, String serialNo, String platSerialNo, String key, String body, String nonceStr, long timestamp, String authType, File file) throws Exception { //构建 Authorization String authorization = WxPayKit.buildAuthorization(method, urlSuffix, mchId, serialNo, - keyPath, body, nonceStr, timestamp, authType); + key, body, nonceStr, timestamp, authType); if (StrUtil.isEmpty(platSerialNo)) { platSerialNo = serialNo; @@ -252,17 +252,17 @@ public class WechatApi { * @param mchId 商户Id * @param serialNo 商户 API 证书序列号 * @param platSerialNo 平台序列号 - * @param keyPath apiclient_key.pem 证书路径 + * @param key apiclient_key.pem 证书 * @param body 接口请求参数 * @return {@link PaymentHttpResponse} 请求返回的结果 * @throws Exception 接口执行异常 */ public static PaymentHttpResponse v3(RequestMethodEnums method, String urlPrefix, String urlSuffix, String mchId, - String serialNo, String platSerialNo, String keyPath, String body) throws Exception { + String serialNo, String platSerialNo, String key, String body) throws Exception { long timestamp = System.currentTimeMillis() / 1000; String authType = "WECHATPAY2-SHA256-RSA2048"; String nonceStr = WxPayKit.generateStr(); - return v3(method, urlPrefix, urlSuffix, mchId, serialNo, platSerialNo, keyPath, body, nonceStr, timestamp, authType, null); + return v3(method, urlPrefix, urlSuffix, mchId, serialNo, platSerialNo, key, body, nonceStr, timestamp, authType, null); } /** diff --git a/framework/src/main/java/cn/lili/modules/system/entity/dto/payment/WechatPaymentSetting.java b/framework/src/main/java/cn/lili/modules/system/entity/dto/payment/WechatPaymentSetting.java index d435c932f..b26efad02 100644 --- a/framework/src/main/java/cn/lili/modules/system/entity/dto/payment/WechatPaymentSetting.java +++ b/framework/src/main/java/cn/lili/modules/system/entity/dto/payment/WechatPaymentSetting.java @@ -41,14 +41,14 @@ public class WechatPaymentSetting { * 私钥 */ private String apiclient_key; - /** - * pem 证书 - */ - private String apiclient_cert_pem; - /** - * p12 证书 - */ - private String apiclient_cert_p12; +// /** +// * pem 证书 +// */ +// private String apiclient_cert_pem; +// /** +// * p12 证书 +// */ +// private String apiclient_cert_p12; /** * 商户证书序列号 */