|
|
@ -1,11 +1,13 @@ |
|
|
package cc.hiver.app.util; |
|
|
package cc.hiver.app.util; |
|
|
|
|
|
|
|
|
|
|
|
import cc.hiver.core.common.utils.ResultUtil; |
|
|
import com.alipay.api.AlipayApiException; |
|
|
import com.alipay.api.AlipayApiException; |
|
|
import com.alipay.api.AlipayClient; |
|
|
import com.alipay.api.AlipayClient; |
|
|
import com.alipay.api.CertAlipayRequest; |
|
|
import com.alipay.api.CertAlipayRequest; |
|
|
import com.alipay.api.DefaultAlipayClient; |
|
|
import com.alipay.api.DefaultAlipayClient; |
|
|
import com.alipay.api.domain.AlipayFundTransUniTransferModel; |
|
|
import com.alipay.api.domain.AlipayFundTransUniTransferModel; |
|
|
import com.alipay.api.domain.Participant; |
|
|
import com.alipay.api.domain.Participant; |
|
|
|
|
|
import com.alipay.api.domain.Result; |
|
|
import com.alipay.api.request.AlipayFundTransUniTransferRequest; |
|
|
import com.alipay.api.request.AlipayFundTransUniTransferRequest; |
|
|
import com.alipay.api.response.AlipayFundTransUniTransferResponse; |
|
|
import com.alipay.api.response.AlipayFundTransUniTransferResponse; |
|
|
|
|
|
|
|
|
@ -17,19 +19,19 @@ import com.alipay.api.response.AlipayFundTransUniTransferResponse; |
|
|
|
|
|
|
|
|
public class AliPayUtil { |
|
|
public class AliPayUtil { |
|
|
|
|
|
|
|
|
public static String pay(String phoneNumber,String name,String transAmount,String orderNo) throws AlipayApiException { |
|
|
public static Result pay(String phoneNumber, String name, String transAmount, String orderNo) throws AlipayApiException { |
|
|
//应用私钥
|
|
|
//应用私钥
|
|
|
String privateKey = "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCCcuKPxgpRhBLRG4/2W2c+zqSXRRXCZPsB1FeKIUs7cC9PZy3Bmm747BJrFqrNOUSkEXKJSJoqPfvmbzOlCgYAKea5st06vv0+WOm7wffGWOMnQyqALPL1PDO2RAbMagU6PCUcr27SC88M8gEWyaOrAiogaDEL6EC8rbBBvYhHp8jWKMtNgiJYM8IxWk2pmGKT19pKp8QdnkFmN6u+JauMpXa+MKAjTtY5X7nYTB0RD+nxpnKkeIWfL0gkzwnHmRYJIVdykUuIZ9JEnjtqc3hlJK6KmnyIaEtvKEUuqtcYU2adQu2SIUhxpjnq8WXhn3lRdt37pKIpxJ4c0R5ns6KpAgMBAAECggEAA0pMhp3TIs03AEk2r1sM1pu1sQ8QBnAvmJM3hgdi82PX/aO3lruDcwnZSRQwSK7aGV1LS0Umhkw770r8vXvsPNLRu/tT8yhgENODSbYRvtH9IL9j8gmwMxlKoJ1EoqFF8nsT4I5YODoOBeCQwHdjhmuujlSyb/9yqo+i83WJW21JvmZ6d0S3/G24hev4V3plhERE7xBKAjJvSiIrHKwHAvl888u+dbbFiiNnMF+2VJpOAJce03FSp5CqFlWJbvwAYhVxNDCtog/AntYlfg4NiQk9aj14EjZ6bVd6x/7iOmhJadn8qBSOGWhTSKlM01/13pKKMQNcbnDw4T4E31RAAQKBgQC48cnOqJ/gE9D9arD+JqjxSk2Z7oHKZ2PyZUdNz9d+58e9cYmrgjj3bC0PyskWD7XxjsRcv+0pF0c1Xg4/lBku+rHf+QlnykzNEVWckg/RPQ3wK2gaOsk3njZfzoowuehjgmjSfRsV3i+Y0eJAFDJFG0lx74WilrBpa/shtb7oAQKBgQC0kSvmiXF5YMW87tnmIWhlkb4aDjbYVuoCuDvnyjL3XlKpdW4UJttx8SL4wuE77AkwdybwLBI89GvEQe7Se8GqVYw6W6i/2mMVhnwkKDe7vZK5fx4z5DmJ2t77mmkYJzRe691HhPZffn19yiPTJvl6cKemqEydujQPLxIPEhx6qQKBgQCZO9xVWel9I24ZSfjz2txHb6T0UWVAaoGpKLj3g6mtACXClPvYGsFQX1TGrOIHYWUCi6OupWa+kQby9MchbnefMR+HzzM3x6nyjtY8L9jjKI8P2ycZ9HMbnf63Ss28qYweRsLLA9UZPUp6eAvZw+IS2BT2TdqPaAMqlckxmQBgAQKBgQCxzbni+ziIAyjz0Gc023THf2ookhKjmYI5R12F82+YcoMHZyEMKu8wFfkP6CaOMPEjjlEDcwJKj4yG5z3aeg7MQg0hchyLPusOySz5Fbk734LZsjj1dCjMfH/SVcxjAkfpqGxu/pj0k8PS1/fK9rf3P3N3AobfUfntcbZgrL7qcQKBgChg4FWPyW6sxg1KxGecrozGhmF31VzOft147aifro3LQEhwr468+nDGlgQQCVDzCvAkxMFKPfRT0+n7CBScaUhfqnaJ+VsuwLkag0/D91FjBCCTeGuFy/kwdX5jIcXfzYdTrA/rIbNyt0NbGnR00q6YZsxToj4sIA5PIijIgQ6l"; |
|
|
String privateKey = "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCJ6viyMqpuBWZo0PXaf/RT+JpAbgT6vkREVrzkUBJ/XJstCaGUv/yi4y6Ndf4brms/wO2ue3x+EzMMF1LCk+E7JPU2u7Ruidj/4iMq2C2psAyQV1gmp2wrj5lQCy92oRJKhfG2CugvAUoD5CJi64nbD8eF2LMEksjMvKBUG5sQ6/utlUfTK2Sil76fbyNp7AbtiAcHI6WQ5v7HtkoF676rXvHLLA6qmUD04NeuFoBBr0Nyc42KPUNVl0JkUsDYHxzzIED34TcQ8y3Kw44s/tE+9ud5WRftV+bobf8dthHFsvGbohKbOlCDD/6sVsAaXEXJIMmu/ydi0DdxyUYLhLAfAgMBAAECggEAET3Xw2dEGScBq37cDWnLoKfGmOFoK/SXUjfJu30rItLv70xx78ekjLR8AGFM2CcQ71JuJE75vEUoL43G4d5c3Oj84s/Kebsv7qVVoiiOZNVGbNEOix6JDlUQZIpRb7IpODnQguKQLjgqCZx+lAFAJauuVNRHZP34rmeyX3FoDFBT1bWBMFcqbscFVyf83WToHFNY7KUxdK58AgJc5KSG1TADeYLk7qklP8+kX26SNJaM8qpfNFk0TupBb2/uQuCTK0JhE9VvnpLnOu8c67fs5x3RyX1bX/WGLrfwuJx2b3S9VRogJKvlCT/Keq3HOV2kahYMIUDbTAGrdZYJmaB6KQKBgQDskuy88QmRzbX7rJjdc1A1UQN/ASGQNqjCfFdybsrRFHSbXfybPDFw5cf1Bx6YQ9TAuzZ6lVvg/UOxykvjKvF4RFaR57XiklY5VhRsOA02D0WmmbNG8WwI9/wqj3AwORehCt9w29xZuuWmJVaxtd7ep74mNuNmR873bCc/JGe6IwKBgQCVPiy3kfl95/2JIzoirKf1MYw1yKMPg21tTePMN3CPTCXnRHXFr2Uo3KtUmtC8HfN1pesOj0FKGCEPYIW8H8NfokWwfmvG2vXjPoYUZrdICfSnifdXhTBiqlsJwDLZxYAjG3KiSPlcQ9fdRxf+a9Y+HNcWGh7Mm71+aaLtYph71QKBgEJB6CIG1CpM1gI11d539GfqV7NTasYMOPm3f3piQ1WJiBsXmK8VjbdT88vRgaUdolGUXW65tDDwXexGfziRh22qniBhKBTb7WBDlpa0oCaa4mQFuitNZHeilLKK1935r3+AHxJp0W4kJTuCS6ScDl6H1n63crrrs7CiTt+lX5PHAoGAOwVxrc9e+boLfHagASKC8eb8ajDEu9fgKMAK/LJYI3Ob8dATO3DX8scCQt1O+3Zk1/wb75Ab4++S83/ao8F0BJgqM1hryyLA53PMlrjgdu7pAHEBjm0v63Uvt7V45sLCoB+0wBVX+HMkJXB+PrHq8nl5XlZKI+Tblei09GhvoVkCgYBAc67rlq3yX1jGrtpNQwyu2RMUTZabqiAKO8AACPeDf9yp5KydyUyIV6g/F0DAv0d4cVrvai0eK1moG3LD5/+LARJ8QIvNLu3EJXfBRImRCT3UHd2UHIUFmqFCgZevhkt5DX2SpzXWaT0XnvbqkQ8ToP/aTjgL3xYhmMj/uGCbiQ=="; |
|
|
CertAlipayRequest alipayConfig = new CertAlipayRequest();//支付宝配置
|
|
|
CertAlipayRequest alipayConfig = new CertAlipayRequest();//支付宝配置
|
|
|
alipayConfig.setPrivateKey(privateKey); |
|
|
alipayConfig.setPrivateKey(privateKey); |
|
|
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do"); |
|
|
alipayConfig.setServerUrl("https://openapi.alipay.com/gateway.do"); |
|
|
alipayConfig.setAppId("2021003125682609");//支付宝分配给开发者的应用ID 小青科技
|
|
|
alipayConfig.setAppId("2021004109600880");//支付宝分配给开发者的应用ID 明珠快小店
|
|
|
alipayConfig.setCharset("UTF8"); |
|
|
alipayConfig.setCharset("UTF8"); |
|
|
alipayConfig.setSignType("RSA2"); |
|
|
alipayConfig.setSignType("RSA2"); |
|
|
alipayConfig.setEncryptor(""); |
|
|
alipayConfig.setEncryptor(""); |
|
|
alipayConfig.setFormat("json"); |
|
|
alipayConfig.setFormat("json"); |
|
|
alipayConfig.setCertPath("/Users/fengbin/dahongmen/appCertPublicKey.crt");//应用公钥证书文件路径,例如:/foo/appCertPublicKey_2019051064521003.crt
|
|
|
alipayConfig.setCertPath("/Users/fengbin/dahongmen/appCertPublicKey_2021004109600880.crt");//应用公钥证书文件路径,例如:/foo/appCertPublicKey_2019051064521003.crt
|
|
|
alipayConfig.setAlipayPublicCertPath("/Users/fengbin/dahongmen/alipayPublicKey_RSA2.crt");//支付宝公钥证书文件路径,例如:/foo/alipayCertPublicKey_RSA2.crt
|
|
|
alipayConfig.setAlipayPublicCertPath("/Users/fengbin/dahongmen/alipayCertPublicKey_RSA2.crt");//支付宝公钥证书文件路径,例如:/foo/alipayCertPublicKey_RSA2.crt
|
|
|
alipayConfig.setRootCertPath("/Users/fengbin/dahongmen/alipayRootCert.crt");//支付宝根证书文件路径,例如:/foo/alipayRootCert.crt
|
|
|
alipayConfig.setRootCertPath("/Users/fengbin/dahongmen/alipayRootCert.crt");//支付宝根证书文件路径,例如:/foo/alipayRootCert.crt
|
|
|
AlipayClient alipayClient = new DefaultAlipayClient(alipayConfig); |
|
|
AlipayClient alipayClient = new DefaultAlipayClient(alipayConfig); |
|
|
AlipayFundTransUniTransferRequest request = new AlipayFundTransUniTransferRequest();//转账类型请求
|
|
|
AlipayFundTransUniTransferRequest request = new AlipayFundTransUniTransferRequest();//转账类型请求
|
|
|
@ -48,16 +50,18 @@ public class AliPayUtil { |
|
|
model.setOrderTitle("软件返佣"); |
|
|
model.setOrderTitle("软件返佣"); |
|
|
request.setBizModel(model); |
|
|
request.setBizModel(model); |
|
|
AlipayFundTransUniTransferResponse response = alipayClient.certificateExecute(request); |
|
|
AlipayFundTransUniTransferResponse response = alipayClient.certificateExecute(request); |
|
|
System.out.println(response.getBody()); |
|
|
Result result = new Result(); |
|
|
if (response.isSuccess()) { |
|
|
if (response.isSuccess()) { |
|
|
return "调用成功"; |
|
|
result.setResultCode("1"); |
|
|
|
|
|
result.setResultMessage("调用成功"); |
|
|
} else { |
|
|
} else { |
|
|
return "调用失败"; |
|
|
result.setResultCode("0"); |
|
|
// sdk版本是"4.38.0.ALL"及以上,可以参考下面的示例获取诊断链接
|
|
|
result.setResultMessage(response.getSubMsg()); |
|
|
// String diagnosisUrl = DiagnosisUtils.getDiagnosisUrl(response);
|
|
|
|
|
|
// System.out.println(diagnosisUrl);
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
return result; |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|