fanli/libs/alipay-sdk-java20170324180803.jarBinary files differ
fanli/pom.xml
@@ -41,14 +41,6 @@ <systemPath>${basedir}/libs/taobao-sdk-java-auto_1533536267316-20180829.jar</systemPath> </dependency> <dependency> <groupId>alipay</groupId> <artifactId>alipay</artifactId> <version>1.0.0</version> <scope>system</scope> <systemPath>${basedir}/libs/alipay-sdk-java20170324180803.jar</systemPath> </dependency> <dependency> <groupId>javapns-jdk16</groupId> fanli/src/main/java/com/yeshi/fanli/controller/CallBackController.java
@@ -268,6 +268,9 @@ JSONObject data = JSONObject.fromObject(contentDecode).optJSONObject("data"); JSONArray array = data.optJSONObject("recommend").optJSONArray("resultList"); long startTime=System.currentTimeMillis(); for (int i = array.size() - 1; i >= 0; i--) { JSONObject item = array.optJSONObject(i); String title = item.optString("itemName"); @@ -334,7 +337,7 @@ ActivityUser user = ruleList.get((int) (ruleList.size() * Math.random())).getActivityUser(); try { goodsEvaluateService.addGoodsEvaluate(itemId + "", imageList, user, doc, null, null); goodsEvaluateService.addGoodsEvaluate(itemId + "", imageList, user, doc, null, new Date(startTime-1000*60*20L*i)); } catch (GoodsEvaluateException e) { e.printStackTrace(); } fanli/src/main/java/com/yeshi/fanli/entity/bus/user/AlipayTransferResultInfo.java
@@ -1,6 +1,7 @@ package com.yeshi.fanli.entity.bus.user; import com.alipay.api.response.AlipayFundTransToaccountTransferResponse; import com.alipay.api.response.AlipayFundTransUniTransferResponse; import com.yeshi.fanli.entity.common.AdminUser; /** @@ -11,7 +12,17 @@ */ public class AlipayTransferResultInfo { private Extract extract; private AlipayFundTransToaccountTransferResponse alipayFundTransToaccountTransferResponse; private AlipayFundTransUniTransferResponse alipayFundTransUniTransferResponse; public AlipayFundTransUniTransferResponse getAlipayFundTransUniTransferResponse() { return alipayFundTransUniTransferResponse; } public void setAlipayFundTransUniTransferResponse( AlipayFundTransUniTransferResponse alipayFundTransUniTransferResponse) { this.alipayFundTransUniTransferResponse = alipayFundTransUniTransferResponse; } private AdminUser adminUser; public AlipayTransferResultInfo() { @@ -19,9 +30,9 @@ } public AlipayTransferResultInfo(Extract extract, AlipayFundTransToaccountTransferResponse alipayFundTransToaccountTransferResponse, AdminUser adminUser) { AlipayFundTransUniTransferResponse alipayFundTransUniTransferResponse, AdminUser adminUser) { this.extract = extract; this.alipayFundTransToaccountTransferResponse = alipayFundTransToaccountTransferResponse; this.alipayFundTransUniTransferResponse = alipayFundTransUniTransferResponse; this.adminUser = adminUser; } @@ -40,14 +51,4 @@ public void setExtract(Extract extract) { this.extract = extract; } public AlipayFundTransToaccountTransferResponse getAlipayFundTransToaccountTransferResponse() { return alipayFundTransToaccountTransferResponse; } public void setAlipayFundTransToaccountTransferResponse( AlipayFundTransToaccountTransferResponse alipayFundTransToaccountTransferResponse) { this.alipayFundTransToaccountTransferResponse = alipayFundTransToaccountTransferResponse; } } fanli/src/main/java/com/yeshi/fanli/entity/config/AlipayConfig.java
@@ -7,9 +7,42 @@ private String appId; @Map("private_key") private String privateKey; @Map("public_key") private String publicKey; @Map("account_name") private String accountName; @Map("app_cert_path") private String appCertPath; @Map("alipay_root_cert_path") private String alipayRootCertPath ; @Map("alipay_cert_path") private String alipayCertPath ; public String getAppCertPath() { return appCertPath; } public void setAppCertPath(String appCertPath) { this.appCertPath = appCertPath; } public String getAlipayRootCertPath() { return alipayRootCertPath; } public void setAlipayRootCertPath(String alipayRootCertPath) { this.alipayRootCertPath = alipayRootCertPath; } public String getAlipayCertPath() { return alipayCertPath; } public void setAlipayCertPath(String alipayCertPath) { this.alipayCertPath = alipayCertPath; } public String getAppId() { return appId; @@ -35,5 +68,13 @@ this.accountName = accountName; } public String getPublicKey() { return publicKey; } public void setPublicKey(String publicKey) { this.publicKey = publicKey; } } fanli/src/main/java/com/yeshi/fanli/service/impl/money/extract/BindingAccountServiceImpl.java
@@ -4,7 +4,6 @@ import java.util.Calendar; import java.util.Date; import java.util.List; import java.util.UUID; import javax.annotation.Resource; @@ -14,8 +13,9 @@ import com.alipay.api.AlipayApiException; import com.alipay.api.AlipayClient; import com.alipay.api.DefaultAlipayClient; import com.alipay.api.request.AlipayFundTransToaccountTransferRequest; import com.alipay.api.request.AlipayFundTransUniTransferRequest; import com.alipay.api.response.AlipayFundTransToaccountTransferResponse; import com.alipay.api.response.AlipayFundTransUniTransferResponse; import com.yeshi.fanli.dao.mybatis.AlipayAccountValidNormalHistoryMapper; import com.yeshi.fanli.dao.mybatis.BindingAccountMapper; import com.yeshi.fanli.dao.mybatis.UserInfoMapper; @@ -38,6 +38,7 @@ import com.yeshi.fanli.service.inter.money.extract.BindingAccountService; import com.yeshi.fanli.service.inter.money.msg.UserMoneyMsgNotificationService; import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService; import com.yeshi.fanli.util.AlipayUtil; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TimeUtil; @@ -197,31 +198,9 @@ private void transferAlipayWithVerify(String account, String name) throws AlipayTransferException, AlipayApiException { String privateKey = Constant.alipayConfig.getPrivateKey(); AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do", Constant.alipayConfig.getAppId(), privateKey, "json", "gbk", null, "RSA2"); AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest(); String uuid = UUID.randomUUID().toString().replace("-", ""); String outBizNo=StringUtil.Md5(account)+TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyyMMdd"); String appName = Constant.systemCommonConfig.getProjectChineseName(); JSONObject json = new JSONObject(); json.put("out_biz_no", uuid); json.put("payee_type", "ALIPAY_LOGONID"); json.put("payee_account", account); json.put("amount", "0.1"); json.put("payer_show_name", appName + "支付宝验证"); json.put("payee_real_name", name); json.put("remark", "来自" + appName + "的支付宝验证打款"); request.setBizContent(json.toString()); AlipayFundTransToaccountTransferResponse response = null; response = alipayClient.execute(request); // 成功转账 if (response != null && response.isSuccess() && "10000".equals(response.getCode())) { return; } else// 转账失败 { throw new AlipayTransferException(Integer.parseInt(response.getCode()), response.getSubCode(), response.getSubMsg()); } AlipayUtil.transfer(outBizNo, account, name, new BigDecimal("0.1"), appName + "支付宝验证", "来自" + appName + "的支付宝验证打款"); } @Transactional(rollbackFor=Exception.class) fanli/src/main/java/com/yeshi/fanli/service/impl/money/extract/ExtractServiceImpl.java
@@ -25,10 +25,8 @@ import org.yeshi.utils.wx.WXPayUtil; import com.alipay.api.AlipayApiException; import com.alipay.api.AlipayClient; import com.alipay.api.DefaultAlipayClient; import com.alipay.api.request.AlipayFundTransToaccountTransferRequest; import com.alipay.api.response.AlipayFundTransToaccountTransferResponse; import com.alipay.api.response.AlipayFundTransUniTransferResponse; import com.google.gson.Gson; import com.yeshi.fanli.dao.mybatis.AccountMessageMapper; import com.yeshi.fanli.dao.mybatis.AlipayAccountValidNormalHistoryMapper; @@ -58,6 +56,7 @@ import com.yeshi.fanli.exception.NotExistObjectException; import com.yeshi.fanli.exception.ObjectStateException; import com.yeshi.fanli.exception.money.UserMoneyDetailException; import com.yeshi.fanli.exception.user.AlipayTransferException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.config.ConfigService; import com.yeshi.fanli.service.inter.config.SystemConfigService; @@ -74,6 +73,7 @@ import com.yeshi.fanli.service.inter.push.PushService; import com.yeshi.fanli.service.inter.user.UserAccountBindingHistoryService; import com.yeshi.fanli.service.inter.user.UserInfoService; import com.yeshi.fanli.util.AlipayUtil; import com.yeshi.fanli.util.CMQManager; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.GsonUtil; @@ -82,8 +82,6 @@ import com.yeshi.fanli.util.ThreadUtil; import com.yeshi.fanli.util.TimeUtil; import com.yeshi.fanli.util.factory.UserMoneyDetailFactory; import net.sf.json.JSONObject; @Service public class ExtractServiceImpl implements ExtractService { @@ -424,25 +422,14 @@ @Transactional private void extractByZhiFuBao(Extract extract, AdminUser adminUser) { LogHelper.userErrorInfo("提现:开始通过提现-" + extract.getId()); String privateKey = Constant.alipayConfig.getPrivateKey(); AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do", Constant.alipayConfig.getAppId(), privateKey, "json", "gbk", null, "RSA2"); AlipayFundTransToaccountTransferRequest request = new AlipayFundTransToaccountTransferRequest(); String appName = Constant.systemCommonConfig.getProjectChineseName(); JSONObject json = new JSONObject(); json.put("out_biz_no", "widthdraw_" + extract.getId());// 最长长度64位,支持英文,下划线,数字 json.put("payee_type", "ALIPAY_LOGONID"); json.put("payee_account", extract.getAccount()); json.put("amount", extract.getMoney()); json.put("payer_show_name", appName); json.put("payee_real_name", extract.getName()); json.put("remark", "来自重庆快省科技有限公司"); request.setBizContent(json.toString()); AlipayFundTransToaccountTransferResponse response = null; AlipayFundTransUniTransferResponse response = null; try { response = alipayClient.execute(request); response = AlipayUtil.transfer("widthdraw_" + extract.getId(), extract.getAccount(), extract.getName(), extract.getMoney(), "板栗快省提现到账", "来自板栗快省的提现"); LogHelper.userErrorInfo("提现:支付宝通过提现成功-" + extract.getId()); } catch (AlipayApiException e) { LogHelper.errorDetailInfo(e, "支付宝转账异常:" + extract.getId(), ""); LogHelper.userErrorInfo("提现:支付宝提现异常:" + response + ",提现信息" + GsonUtil.toJson(extract)); }catch(AlipayTransferException e){ LogHelper.errorDetailInfo(e, "支付宝转账异常:" + extract.getId(), ""); LogHelper.userErrorInfo("提现:支付宝提现异常:" + response + ",提现信息" + GsonUtil.toJson(extract)); } @@ -656,7 +643,7 @@ public void processExtractResult(AlipayTransferResultInfo info) { if (info == null) return; AlipayFundTransToaccountTransferResponse response = info.getAlipayFundTransToaccountTransferResponse(); AlipayFundTransUniTransferResponse response = info.getAlipayFundTransUniTransferResponse(); Extract extract = info.getExtract(); AdminUser admin = info.getAdminUser(); if (response == null) @@ -688,7 +675,7 @@ payInfo.setState(2); } payInfo.setOrderId(response.getOrderId()); payInfo.setOrdertime(response.getPayDate()); payInfo.setOrdertime(response.getTransDate()); payInfo.setInfo(response.getSubMsg()); payInfoMapper.insertSelective(payInfo); fanli/src/main/java/com/yeshi/fanli/util/AlipayUtil.java
New file @@ -0,0 +1,71 @@ package com.yeshi.fanli.util; import java.math.BigDecimal; import com.alipay.api.AlipayApiException; import com.alipay.api.CertAlipayRequest; import com.alipay.api.DefaultAlipayClient; import com.alipay.api.request.AlipayFundTransUniTransferRequest; import com.alipay.api.response.AlipayFundTransUniTransferResponse; import com.yeshi.fanli.exception.user.AlipayTransferException; import net.sf.json.JSONObject; public class AlipayUtil { private static DefaultAlipayClient alipayClient = null; static { String privateKey = Constant.alipayConfig.getPrivateKey(); CertAlipayRequest certAlipayRequest = new CertAlipayRequest(); certAlipayRequest.setServerUrl("https://openapi.alipay.com/gateway.do"); certAlipayRequest.setAppId(Constant.alipayConfig.getAppId()); certAlipayRequest.setPrivateKey(privateKey); certAlipayRequest.setFormat("json"); certAlipayRequest.setCharset("GBK"); certAlipayRequest.setSignType("RSA2"); certAlipayRequest.setCertPath( AlipayUtil.class.getClassLoader().getResource(Constant.alipayConfig.getAppCertPath()).getPath()); certAlipayRequest.setAlipayPublicCertPath( AlipayUtil.class.getClassLoader().getResource(Constant.alipayConfig.getAlipayCertPath()).getPath()); certAlipayRequest.setRootCertPath( AlipayUtil.class.getClassLoader().getResource(Constant.alipayConfig.getAlipayRootCertPath()).getPath()); try { alipayClient = new DefaultAlipayClient(certAlipayRequest); } catch (AlipayApiException e) { e.printStackTrace(); } } public static AlipayFundTransUniTransferResponse transfer(String outBizNo, String account, String name, BigDecimal money, String orderTitle, String mark) throws AlipayApiException, NumberFormatException, AlipayTransferException { AlipayFundTransUniTransferRequest request = new AlipayFundTransUniTransferRequest(); JSONObject json = new JSONObject(); json.put("out_biz_no", outBizNo); json.put("trans_amount", money.toString()); json.put("product_code", "TRANS_ACCOUNT_NO_PWD"); json.put("order_title", orderTitle); JSONObject payee_info = new JSONObject(); payee_info.put("identity", account); payee_info.put("identity_type", "ALIPAY_LOGON_ID"); payee_info.put("name", name); json.put("payee_info", payee_info); json.put("remark", mark); json.put("biz_scene", "DIRECT_TRANSFER"); request.setBizContent(json.toString()); AlipayFundTransUniTransferResponse response = null; response = alipayClient.certificateExecute(request); // 成功转账 if (response != null && response.isSuccess() && "10000".equals(response.getCode())) { return response; } else// 转账失败 { throw new AlipayTransferException(Integer.parseInt(response.getCode()), response.getSubCode(), response.getSubMsg()); } } } fanli/src/main/java/com/yeshi/fanli/util/CMQManager.java
@@ -8,6 +8,7 @@ import org.yeshi.utils.CMQUtil; import com.alipay.api.response.AlipayFundTransToaccountTransferResponse; import com.alipay.api.response.AlipayFundTransUniTransferResponse; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.qcloud.cmq.Message; @@ -185,7 +186,7 @@ * @param extract * @param response */ public void addExtractResultMsg(Extract extract, AlipayFundTransToaccountTransferResponse response, public void addExtractResultMsg(Extract extract, AlipayFundTransUniTransferResponse response, AdminUser adminUser) { String content = new Gson().toJson(new AlipayTransferResultInfo(extract, response, adminUser)); cmqUtil.sendMsg(EXTRACT_RESULT, content); fanli/src/main/resource/alipay.properties
@@ -1,3 +1,7 @@ appId=2018120462438303 private_key=MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCr3zyepJWxJxRFfzJ3LX0Sb/HLiLndOmdcufUzcHuQ2qR0vSFbQ8GUe9IMkSsjWCVFtOGO1rc8BRuZoxapP6g8TrhPpMjqkxGJ0kiRIJ5OM76Czqcd8xy4gtqHPXHybr76wlOTeHmfQkABTPsO8H/IgLkafa7Gs2fdDMswn+2zlkk6ghyU8HptyDnnjhW2CXBGZnqUHDv894eO6q8F7abaabEjzssQykC6y8IoYngziy0zYk89wr+ZfDH7j9zKNOLXWfiN1xz8+Bjdu8gybAqKZjsujP9pzUuUTgU+zuvBi/wL12HQVqQHq/7wrXNUBJt3fcwquL4JokaKD6jy2O5dAgMBAAECggEAVxP/bpEMlniqOJu9Qcx2NcUpyGk5YfCZNc2xgaJXuIhOEidQoyCtD0G8pklWhc2+9JY0QV5f77TWyvxqGs35urRXhWKDuPVSSXWU9pKEIjLtLvDskqv9vS3u8d4bwSyC7iFOnsTHOf0i2IXcHTGUTE2LevR6fImg8cntmHEuyXFh4CmhoK1j0eBL5oXyQJJ+IXjp6ihwHbhX9h5IKXct5esmcL5hC77x3nyhIEA7sT/UfQH6vMsOHj0Ie8oju56ePQi7fQfGkOVdXQWCmusrPoqinmsgRPBB6N0uvGy33nscPjc00T0wNDiTOuRR5vS0H8N5WNorUzeMH1hsyE52sQKBgQDjf30UspjBO66vmJM7mjBl+5IAJcXXQotJGbOX1yr0YsUo4QbR+2QG8xJDtR0XnXgbhHZ97sPGcDKc7Wb8hI6hkl5fjQVQ3SKcyOIYSkFUcLPNlK8KjWvCgbGesfWAWopzkpEmvy+BtCOG+iQXtzKAOa9YCPn3uvzanBtgdKKhewKBgQDBZ6nyjl+1AdW1zTE/Rjc8CXUQqHuhV6PN1+KCuPVHcf2v3BwPFjODSncpK/11q0u9LRkXmgPatmqPSC3/xtGSAqeWHxwX3ILwur7cCP9VhzmW4yDrZIDQ0/OmKPa+7B4pghlGIo/S13WJi7YhhCjldBZc9/32tvxFa1gUToJMBwKBgQCYwRDWpfklvpJT+6nY2nZm892b1cEbAeaOhgBuEx8Xi36BLV+r/RW0COCZr/HB2o08RNxfQMQZ6VpCvrFpGwS+fo55sDICkwlbpxMRZkKplSdWAeDqv/y8VONUAIAs2B6g7agjETqv56n3RtyXQ/5X1OPkw9o8OkTv8OP9BzPwIwKBgHkoFoeTdxMuPhGwpDwuIWXjyskPsrsE6uGFbylS8py6JSDos08kKksB+Bn7q8Dt+Pleagyl9+ooQiLWJbLIevqL3S4m+PNduU1Sv0OaA1Ix7vq9+B5eDHBFhqm9ma1Kvy5jiK+t8Qk03jW3JvZiEziCe4vr8tV+FhTqxPebovY7AoGBAMD2Q5nxLO1ai68zdL0iWdtT8W7ETQm8jd5RsB+fulMMulQOiowIe7L100XT/Ni+z4XFhQrhr9JHkTLu6+pMdwJtJKZENWz0nec7QhhplcxL332XtA78ZzIjaikMn/WggDeCSLJL/qQEQL5YBdDpQg1wWyW3j3hPAjx7ebhb374A private_key=MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC+x9VLP7eZ0sHVjkgNYMnqEP2CrDI+BdW7Il2o1e5Wp0o3GoJBkJH29SpUPQoWUDM3JoILzXPnlS6QeCzfPG3ROJyXlWjp7vNzGs7oWGCbsYac/bweV9DsxnEO5xqYRKUInLL+SoqepxUPYTFxroh5E4ZVWLWBHC0bFCZxiwy9jZhpbNcTAAp/WRJoCpbV0YAw+4pZQmV99HvzwfNKZtUWQWnyKglI3RogYJphFhB91e0X+phZzuE5WzgT2mGOGqw2w3DVK7YDgIX5nAI73Z8zlkDfSys3tB3KibuVMuR6/3yt+G867vhjfebonTHyqKpCJSuyFRfR/WR4lMx4+3aZAgMBAAECggEBAIudAeJHhrzzFxaJQQFJS3oXZO4zxbDN5FNGGvRrWjffxNf+dkQ04Byx3YA4CyG5H0HE1HZ+q8tVyPXAfFYBivwJSc9Eb7qCO3aIr9IomspVaAWLSheKfEJKFoKpbTTxRzS+N98P/dGMxES1A9IFv6mbODtM58bML9YZMOj2sSQlK+g0TKW5SipjWwnmSlEXDDYLMKWRR3zec1FBOB2DR+6Ajkz0+ml4gmlbQe6WNRGPZ7mhW+VLjIbZNd8UYwnRttCJ8G/vWP0xdsyB0wZ5jFhVQsZuqlxCL+LJjsB7o16MsH6r9L8QkGADeo0aICFhsFYmujX4pTBQB6oOQoj07YECgYEA//fOPwTN1hsvUHblXWChn0p5e7Z3S2hxhpnbL0og4Mx+TTQMQ5XgzUCwwFacV5Ctk/lxOepgu8+X928+IeJjPAFZzxLLb4iMpfwzxYhbRli32blNQEH2aXPwnGreXJPAjRAjDx5WbdYOcVyWQRk2MpWSI3eFzxSXS/uaSf6P9LUCgYEAvs3w0Ab9jal7awPMmEKT2+CIbUKTLXsRikxXMX8UsIKYo/5zeqMKwXDjE63agkTNLAUqaYuIA5SFDYbgpXuF5nta2gflgFw8k1mkBdPEhUFYeNmh7tSJgAtObWKOaiDO4/DdmUYd50GIbSGsbUPZ9/PZcju9eJqcf5peaI/m7NUCgYEAgQhdet0kGjN4BXr6IrlMoCz90oRn3KaY2/6BRHR84HWVkbuUFxndyfo7X6oJhAbVyYtsLYLeIq8Cb2QvkQs7dQtFR6K01NOj+ySIwKH9SRf+Dg5gR+04l24vs9oXn9mHrlSdJ8jmTtYiT7kZsVVRQeyuT5y34m0B2/bIj1Z5ISUCgYBXmSTd3Ne7mfvXfb8IiEhpwgPgZZg8YSwEWlgNmVJeVxbM850AyKm/dZxLBJ41AHFRrG10V2LygdU0CKBKWRN4ZVmoj8eFztLgs17ibf7jTsTXdtMpWtpltssi3QSVJMrXS1XxcId6DFQeBj+rSmNfuswx7ctm+1SuIKkHSEm0oQKBgCPwgwsEw4J5yN5J0UEcXbZt9eCNfG43e3NcvsUITxueH05IiHACMw4e6STdgqPMSaiDWb7/d6OTG0Ps1JjuWE4/2i1OeVA/ytznskDw/Y7AH+6Z12x1NPeDYJHOH04K9cV1JQvQoCoQ03ffhHsIU7c7K3pLmLwlHc9IU6tkkcU1 public_key=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvsfVSz+3mdLB1Y5IDWDJ6hD9gqwyPgXVuyJdqNXuVqdKNxqCQZCR9vUqVD0KFlAzNyaCC81z55UukHgs3zxt0Ticl5Vo6e7zcxrO6Fhgm7GGnP28HlfQ7MZxDucamESlCJyy/kqKnqcVD2Exca6IeROGVVi1gRwtGxQmcYsMvY2YaWzXEwAKf1kSaAqW1dGAMPuKWUJlffR788HzSmbVFkFp8ioJSN0aIGCaYRYQfdXtF/qYWc7hOVs4E9phjhqsNsNw1Su2A4CF+ZwCO92fM5ZA30srN7Qdyom7lTLkev98rfhvOu74Y33m6J0x8qiqQiUrshUX0f1keJTMePt2mQIDAQAB account_name=重庆快省科技有限公司 app_cert_path=alipay/appCertPublicKey_2018120462438303.crt alipay_root_cert_path=alipay/alipayRootCert.crt alipay_cert_path=alipay/alipayCertPublicKey_RSA2.crt fanli/src/main/resource/alipay/alipayCertPublicKey_RSA2.crt
New file @@ -0,0 +1,19 @@ -----BEGIN CERTIFICATE----- MIIDrDCCApSgAwIBAgIQICAGCcf9EalgJMEEuqGAWDANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs YXNzIDIgUjEwHhcNMjAwNjA5MDMwMDU0WhcNMjIwNjA5MDMwMDU0WjCBjDELMAkGA1UEBhMCQ04x JzAlBgNVBAoMHumHjeW6huW/q+ecgeenkeaKgOaciemZkOWFrOWPuDEPMA0GA1UECwwGQWxpcGF5 MUMwQQYDVQQDDDrmlK/ku5jlrp0o5Lit5Zu9Kee9kee7nOaKgOacr+aciemZkOWFrOWPuC0yMDg4 MjMxMzUzNjU2NzQxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvHWEgMOlGb/VbN5p cSXv+DLX2EJ43p93zP9eyao8ghj1LcBSf5Sx4gYpuySKZ0oimILb+ErOAlDzcXwvMxcVTK0W2M6U aUW0Vh71vOorqggOGqMJsSDpV1hvYrUSCYu1Qe5KtV85w+Kw4dImC3fayIaxUMhwySuniQ/uQtez RHn/vwXrGigu3Y2tRgPMUptqA14EYEfhpm3KjLXsqWdJBO6ziiqILHJtow65QzkeoLM2ZHpYH6oY y2rIj/iSIpos18MKWvr4XrqSptJYIQp+G3dwqjlt2kk4bpgAXQSR6wKAtGTkAYvlOSpkQXVqI3tI GZO3ZM9bFQurMBoJFX790wIDAQABoxIwEDAOBgNVHQ8BAf8EBAMCA/gwDQYJKoZIhvcNAQELBQAD ggEBAEo++sORTzbqKf7CyLEcmg+RnX0Ez2aUOftQPkr2XGnDwNon4Air1c+j3snsRhWyTC2TMt18 qCPotlr63Zk67agPaGfrKGk7bDxc9QA/kRrctl4+0h4Jh28jgMLQ4ibNgjkGWmMMwSK4D+19k/vt hjlGk9LtTc5lsqgm2GTvifC9C4E0ZDiK+rGz/Mo048TiKNhywO8EKWXvbT9n359rbgKoXMJmKWZQ bWdMg8NsP/X+p6mgRAtIJNSLyl/ZzzD2J/NpnHlQxq8/OFnS2EFcs0gN71xDtX+KWp+BJHBMwPM4 asjhldpscYgoyx2c/D5CinNgMj7qfmORBQ37shpcKDw= -----END CERTIFICATE----- fanli/src/main/resource/alipay/alipayRootCert.crt
New file @@ -0,0 +1,88 @@ -----BEGIN CERTIFICATE----- MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b 53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI pDoiVhsLwg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0 MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2 xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6 vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1 Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98 SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe 9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90 tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3 IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW 05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41 T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N 1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02 77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi kT9qhqn+lw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0 WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ 4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2 zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5 4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3 U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU 1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX Yf4Zr0fJsGuv -----END CERTIFICATE----- fanli/src/main/resource/alipay/appCertPublicKey_2018120462438303.crt
New file @@ -0,0 +1,24 @@ -----BEGIN CERTIFICATE----- MIIEqzCCA5OgAwIBAgIQICAGCQ97tY3/xzVrWsTnITANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs YXNzIDEgUjEwHhcNMjAwNjA5MDMwMDU0WhcNMjIwNjA5MDMwMDU0WjBzMQswCQYDVQQGEwJDTjEn MCUGA1UECgwe6YeN5bqG5b+r55yB56eR5oqA5pyJ6ZmQ5YWs5Y+4MQ8wDQYDVQQLDAZBbGlwYXkx KjAoBgNVBAMMITIwODgyMzEzNTM2NTY3NDEtMjAxODEyMDQ2MjQzODMwMzCCASIwDQYJKoZIhvcN AQEBBQADggEPADCCAQoCggEBAL7H1Us/t5nSwdWOSA1gyeoQ/YKsMj4F1bsiXajV7lanSjcagkGQ kfb1KlQ9ChZQMzcmggvNc+eVLpB4LN88bdE4nJeVaOnu83MazuhYYJuxhpz9vB5X0OzGcQ7nGphE pQicsv5Kip6nFQ9hMXGuiHkThlVYtYEcLRsUJnGLDL2NmGls1xMACn9ZEmgKltXRgDD7illCZX30 e/PB80pm1RZBafIqCUjdGiBgmmEWEH3V7Rf6mFnO4TlbOBPaYY4arDbDcNUrtgOAhfmcAjvdnzOW QN9LKze0HcqJu5Uy5Hr/fK34bzru+GN95uidMfKoqkIlK7IVF9H9ZHiUzHj7dpkCAwEAAaOCASkw ggElMB8GA1UdIwQYMBaAFHEH4gRhFuTl8mXrMQ/J4PQ8mtWRMB0GA1UdDgQWBBQhB0deYlZ4jgMS BvhRouHKxOXxbjBABgNVHSAEOTA3MDUGB2CBHAFuAQEwKjAoBggrBgEFBQcCARYcaHR0cDovL2Nh LmFsaXBheS5jb20vY3BzLnBkZjAOBgNVHQ8BAf8EBAMCBsAwLwYDVR0fBCgwJjAkoCKgIIYeaHR0 cDovL2NhLmFsaXBheS5jb20vY3JsNDIuY3JsMGAGCCsGAQUFBwEBBFQwUjAoBggrBgEFBQcwAoYc aHR0cDovL2NhLmFsaXBheS5jb20vY2E2LmNlcjAmBggrBgEFBQcwAYYaaHR0cDovL2NhLmFsaXBh eS5jb206ODM0MC8wDQYJKoZIhvcNAQELBQADggEBAAIuuwxjgMUmDfOH0D0QHAE6J06pt1nhFcb/ SMGsWVZgI71vV+v/kKywpczpcOyBMCN05WphITqX1RMJTB2CPIbYWRcf8Q3aoKZ7nkd8YCGar8Nz BtsPDloyE5NprOfFB63stg46KWYDull/62qwfpiyXgvi4H86ODs+icvk1yLq7jxvPyhhSIZbaLdM esquQLKZK08jmD28ASLYirI4uhwLYcjdwrWzIZx2mXdE7d505R36poShSSaGPS9nWgLnJTq5at7N 6vCC44rVoe6fxcMbfEfvEJd/jkA7O5VuELm0VeDEmFWEZLlCT4sO+/Xqqh9K4HJekLxzNG9xMDDX 4yM= -----END CERTIFICATE----- pom.xml
@@ -566,24 +566,32 @@ <version>2.11.2</version> </dependency> <!-- <dependency> <dependency> <groupId>org.bouncycastle</groupId> <artifactId>bcprov-jdk16</artifactId> <version>1.46</version> </dependency> --> </dependency> <!-- 支付宝相关 --> <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</artifactId> <version>4.9.71.ALL</version> </dependency> <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-easysdk</artifactId> <version>1.2.1</version> </dependency> <!--StringUtils--> <!-- <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.8.1</version> </dependency> --> <!-- <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.8.1</version> </dependency> --> </dependencies>