拆分think模块包
This commit is contained in:
@@ -0,0 +1,110 @@
|
||||
package com.gxwebsoft.common.core.utils;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alipay.api.AlipayApiException;
|
||||
import com.alipay.api.AlipayConstants;
|
||||
import com.alipay.api.CertAlipayRequest;
|
||||
import com.alipay.api.DefaultAlipayClient;
|
||||
import com.gxwebsoft.common.core.config.ConfigProperties;
|
||||
import com.gxwebsoft.common.core.exception.BusinessException;
|
||||
import org.springframework.data.redis.core.StringRedisTemplate;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 支付宝工具类
|
||||
* @author leng
|
||||
*
|
||||
*/
|
||||
@Component
|
||||
public class AlipayConfigUtil {
|
||||
private final StringRedisTemplate stringRedisTemplate;
|
||||
public Integer tenantId;
|
||||
public String gateway;
|
||||
public JSONObject config;
|
||||
public String appId;
|
||||
public String privateKey;
|
||||
public String appCertPublicKey;
|
||||
public String alipayCertPublicKey;
|
||||
public String alipayRootCert;
|
||||
|
||||
@Resource
|
||||
private ConfigProperties pathConfig;
|
||||
|
||||
public AlipayConfigUtil(StringRedisTemplate stringRedisTemplate){
|
||||
this.stringRedisTemplate = stringRedisTemplate;
|
||||
}
|
||||
|
||||
// 实例化客户端
|
||||
public DefaultAlipayClient alipayClient(Integer tenantId) throws AlipayApiException {
|
||||
this.gateway = "https://openapi.alipay.com/gateway.do";
|
||||
this.tenantId = tenantId;
|
||||
this.payment(tenantId);
|
||||
CertAlipayRequest certAlipayRequest = new CertAlipayRequest();
|
||||
certAlipayRequest.setServerUrl(this.gateway);
|
||||
certAlipayRequest.setAppId(this.appId);
|
||||
certAlipayRequest.setPrivateKey(this.privateKey);
|
||||
certAlipayRequest.setFormat(AlipayConstants.FORMAT_JSON);
|
||||
certAlipayRequest.setCharset(AlipayConstants.CHARSET_UTF8);
|
||||
certAlipayRequest.setSignType(AlipayConstants.SIGN_TYPE_RSA2);
|
||||
certAlipayRequest.setCertPath(this.appCertPublicKey);
|
||||
certAlipayRequest.setAlipayPublicCertPath(this.alipayCertPublicKey);
|
||||
certAlipayRequest.setRootCertPath(this.alipayRootCert);
|
||||
// System.out.println("this.appId = " + this.appId);
|
||||
// System.out.println("this.appId = " + this.gateway);
|
||||
// System.out.println("this.appId = " + this.privateKey);
|
||||
// System.out.println("this.appId = " + this.appCertPublicKey);
|
||||
// System.out.println("this.appId = " + this.alipayCertPublicKey);
|
||||
// System.out.println("this.appId = " + this.alipayRootCert);
|
||||
// System.out.println("this.config = " + this.config);
|
||||
return new DefaultAlipayClient(certAlipayRequest);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取支付宝秘钥
|
||||
*/
|
||||
public JSONObject payment(Integer tenantId) {
|
||||
System.out.println("tenantId = " + tenantId);
|
||||
String key = "cache".concat(tenantId.toString()).concat(":setting:payment");
|
||||
System.out.println("key = " + key);
|
||||
String cache = stringRedisTemplate.opsForValue().get(key);
|
||||
if (cache == null) {
|
||||
throw new BusinessException("支付方式未配置");
|
||||
}
|
||||
// 解析json数据
|
||||
JSONObject payment = JSON.parseObject(cache.getBytes());
|
||||
this.config = payment;
|
||||
this.appId = payment.getString("alipayAppId");
|
||||
this.privateKey = payment.getString("privateKey");
|
||||
this.appCertPublicKey = pathConfig.getUploadPath() + "file" + payment.getString("appCertPublicKey");
|
||||
this.alipayCertPublicKey = pathConfig.getUploadPath() + "file" + payment.getString("alipayCertPublicKey");
|
||||
this.alipayRootCert = pathConfig.getUploadPath() + "file" + payment.getString("alipayRootCert");
|
||||
return payment;
|
||||
}
|
||||
|
||||
public String appId(){
|
||||
return this.appId;
|
||||
}
|
||||
|
||||
public String privateKey(){
|
||||
return this.privateKey;
|
||||
}
|
||||
|
||||
public String appCertPublicKey(){
|
||||
return this.appCertPublicKey;
|
||||
}
|
||||
|
||||
public String alipayCertPublicKey(){
|
||||
return this.alipayCertPublicKey;
|
||||
}
|
||||
|
||||
public String alipayRootCert(){
|
||||
return this.alipayRootCert;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user