From 35c5ac5155b0ee36bbacb4b1064fe20b0455e10e Mon Sep 17 00:00:00 2001 From: luoyang Date: Fri, 7 Sep 2018 10:00:00 +0800 Subject: [PATCH 01/10] fix clearing --- src/main/ui/static/analysis/clearing-log.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/ui/static/analysis/clearing-log.js b/src/main/ui/static/analysis/clearing-log.js index 4ee3f2e49..cb1429ab3 100644 --- a/src/main/ui/static/analysis/clearing-log.js +++ b/src/main/ui/static/analysis/clearing-log.js @@ -283,7 +283,7 @@ define(['angular', 'decimal', 'uiBootstrap', 'uiRouter', 'angularEcharts'], func $scope.packup = function(key) { $scope.endIndexMap[key] = $scope.initEndIndex; - var length = $scope.clientsMap[key]; + var length = $scope.clientsMap[key].clients; if (length <= $scope.initEndIndex) $scope.endIndexMap[key] = length; }; From d680b16875c400ad2ec4e61d8c01e425c5926c81 Mon Sep 17 00:00:00 2001 From: "taylor.dang" Date: Fri, 7 Sep 2018 10:36:14 +0800 Subject: [PATCH 02/10] log --- .../analysis/core/impls/EstimateAnalysisServiceImpl.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/EstimateAnalysisServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/EstimateAnalysisServiceImpl.java index 1fedfab93..2dc8f4195 100644 --- a/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/EstimateAnalysisServiceImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/analysis/core/impls/EstimateAnalysisServiceImpl.java @@ -154,6 +154,7 @@ public class EstimateAnalysisServiceImpl implements EstimateAnalysisService { DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); //T1 ok JSONObject dayInfo = new JSONObject(); + dayInfo.put("platformGetSettleFee", BigDecimal.ZERO); String endStr = DateFormatUtils.format(date, "yyyy/MM/dd"); JSONObject maxDays = estimateAnalysisMapper.findMaxCleanDays(endStr); String end_date = maxDays.getString("date_str"); @@ -172,9 +173,10 @@ public class EstimateAnalysisServiceImpl implements EstimateAnalysisService { } List alipayOnlineSettleLogs = platformSettlementMapper.findBySettleDate(new Date(estimateAnalysisMapper.findLastCleanDays(end_date, 1).getDate("date_str").getTime()), "AlipayOnline"); + logger.info(" Estimate alipayOnlineSettleLogs is :{}", alipayOnlineSettleLogs.toString()); for (JSONObject logs : alipayOnlineSettleLogs) { dayInfo.put("aliOnlineSettleFee_" + logs.getString("merchants"), logs.getBigDecimal("settlement_fee")); - dayInfo.put("platformGetSettleFee",dayInfo.getBigDecimal("platformGetSettleFee").add(dayInfo.getBigDecimal("aliOnlineSettleFee_" + logs.getString("merchants")))); + dayInfo.put("platformGetSettleFee", dayInfo.getBigDecimal("platformGetSettleFee").add(dayInfo.getBigDecimal("aliOnlineSettleFee_" + logs.getString("merchants")))); } cleanDays.clear(); From 233aeca919802ede5b5d082637d39c2bb7ced02f Mon Sep 17 00:00:00 2001 From: luoyang Date: Fri, 7 Sep 2018 14:33:47 +0800 Subject: [PATCH 03/10] fix partnerInfo - copy icon --- .../static/payment/partner/templates/client_payment_info.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/ui/static/payment/partner/templates/client_payment_info.html b/src/main/ui/static/payment/partner/templates/client_payment_info.html index 98b914b06..b1c2ad043 100644 --- a/src/main/ui/static/payment/partner/templates/client_payment_info.html +++ b/src/main/ui/static/payment/partner/templates/client_payment_info.html @@ -130,7 +130,7 @@
- 仅支持微信客户端扫描 + 仅支持微信客户端扫描
From fffec0aabd6523b074e0d12a41d737c6267ad58d Mon Sep 17 00:00:00 2001 From: "taylor.dang" Date: Fri, 7 Sep 2018 17:44:54 +0800 Subject: [PATCH 04/10] =?UTF-8?q?[y]=E4=BF=AE=E5=A4=8D=E7=A6=81=E7=94=A8?= =?UTF-8?q?=E5=95=86=E6=88=B7=E6=8F=90=E9=86=92=20&=20=E9=BB=91=E5=90=8D?= =?UTF-8?q?=E5=8D=95=E5=95=86=E6=88=B7=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/mappers/risk/RiskAttentionMerchantsMapper.java | 2 +- .../manage/merchants/core/impls/ClientManagerImpl.java | 6 ------ 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/src/main/java/au/com/royalpay/payment/manage/mappers/risk/RiskAttentionMerchantsMapper.java b/src/main/java/au/com/royalpay/payment/manage/mappers/risk/RiskAttentionMerchantsMapper.java index c3a578914..3cd1d943f 100644 --- a/src/main/java/au/com/royalpay/payment/manage/mappers/risk/RiskAttentionMerchantsMapper.java +++ b/src/main/java/au/com/royalpay/payment/manage/mappers/risk/RiskAttentionMerchantsMapper.java @@ -38,7 +38,7 @@ public interface RiskAttentionMerchantsMapper { " OR (contact_phone LIKE CONCAT('%',#{contact_phone},'%') ) " + " OR (contact_person LIKE CONCAT('%',#{contact_person},'%') ) " + " OR (client_moniker LIKE CONCAT('%',#{client_moniker},'%') ) " + - " OR (bank_account_no LIKE CONCAT('%',#{bank_account_no},'%') ) ") + " OR (bank_account_no LIKE CONCAT('%',#{bank_account_no},'%') ) AND is_valid=1") List listRiskySimilarMerchants(JSONObject params); } diff --git a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java index 9556183e0..96e4b9fac 100644 --- a/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java +++ b/src/main/java/au/com/royalpay/payment/manage/merchants/core/impls/ClientManagerImpl.java @@ -2621,12 +2621,6 @@ public class ClientManagerImpl implements ClientManager, ManagerTodoNoticeProvid JSONObject client = clientDetail(manager, clientMoniker); Assert.notEmpty(client); clientModifySupport.processClientModify(new DisableModify(manager, clientMoniker, false)); - List exceptClientIds = new ArrayList<>(); - exceptClientIds.add(client.getString("client_id")); - JSONObject sameMailClients = getByEmail(client.getString("contact_email"), 1, 1, exceptClientIds); - if (sameMailClients.getJSONArray("data").size() < 1) { - mailGunService.removeMailList(client); - } } @Override From f86436dc74942d5207c7d9ec2f893735a42fec5b Mon Sep 17 00:00:00 2001 From: "taylor.dang" Date: Fri, 7 Sep 2018 17:47:42 +0800 Subject: [PATCH 05/10] pom --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index fcc8224a2..351b5ceee 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ au.com.royalpay.payment payment-parent - 0.2.0-dev + 0.2.0 4.0.0 From cc126c938f54120113d58f6f74e3b78153febaae Mon Sep 17 00:00:00 2001 From: "taylor.dang" Date: Wed, 12 Sep 2018 15:32:19 +0800 Subject: [PATCH 06/10] =?UTF-8?q?[Y]=20=E5=8D=8A=E8=BE=B9=E5=A4=A9?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E6=88=AA=E6=AD=A2=E6=97=B6=E9=97=B4=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E4=B8=BA20181031?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../payment/manage/mappers/act/ActChairtyMapper.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/resources/au/com/royalpay/payment/manage/mappers/act/ActChairtyMapper.xml b/src/main/resources/au/com/royalpay/payment/manage/mappers/act/ActChairtyMapper.xml index addc41843..26ec3bbbf 100644 --- a/src/main/resources/au/com/royalpay/payment/manage/mappers/act/ActChairtyMapper.xml +++ b/src/main/resources/au/com/royalpay/payment/manage/mappers/act/ActChairtyMapper.xml @@ -6,7 +6,7 @@ from act_charity left JOIN pmt_transactions on act_charity.client_id = pmt_transactions.client_id and pmt_transactions.transaction_type='Credit' and pmt_transactions.transaction_time>=act_charity.active_time - and pmt_transactions.transaction_time<'2018-09-01' and pmt_transactions.transaction_time>='2018-07-09' + and pmt_transactions.transaction_time<'2018-10-31' and pmt_transactions.transaction_time>='2018-07-09' and pmt_transactions.channel != 'Settlement' GROUP BY act_charity.client_id order by count_ordernum desc @@ -14,7 +14,7 @@ select count(DISTINCT order_id) as count_ordernum,date_format(pmt_transactions.transaction_time,'%Y-%m-%d') as orderdate,client_moniker,ifnull(sum(pmt_transactions.clearing_amount),0) as sum_ordernum from act_charity inner JOIN pmt_transactions ON act_charity.client_id = pmt_transactions.client_id and pmt_transactions.transaction_type='Credit' and pmt_transactions.transaction_time>=#{begin} and pmt_transactions.transaction_time<=#{end} and pmt_transactions.transaction_time>=act_charity.active_time and pmt_transactions.channel != 'Settlement' - and pmt_transactions.transaction_time<'2018-09-01' and pmt_transactions.transaction_time>='2018-07-09' + and pmt_transactions.transaction_time<'2018-10-31' and pmt_transactions.transaction_time>='2018-07-09' group by date_format(pmt_transactions.transaction_time,'%Y-%m-%d') @@ -22,7 +22,7 @@ \ No newline at end of file From c0db0cb297f71eadc45c5051d8e8b5f86b508f63 Mon Sep 17 00:00:00 2001 From: "taylor.dang" Date: Wed, 12 Sep 2018 17:51:58 +0800 Subject: [PATCH 07/10] =?UTF-8?q?[Y]=20=E6=94=AF=E4=BB=98=E5=AE=8C?= =?UTF-8?q?=E6=88=90+=E6=8A=BD=E5=A5=96=E6=AC=A1=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CustomerLotteryCountServiceImpl.java | 90 +++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 src/main/java/au/com/royalpay/payment/manage/customers/core/impls/CustomerLotteryCountServiceImpl.java diff --git a/src/main/java/au/com/royalpay/payment/manage/customers/core/impls/CustomerLotteryCountServiceImpl.java b/src/main/java/au/com/royalpay/payment/manage/customers/core/impls/CustomerLotteryCountServiceImpl.java new file mode 100644 index 000000000..4a20c7247 --- /dev/null +++ b/src/main/java/au/com/royalpay/payment/manage/customers/core/impls/CustomerLotteryCountServiceImpl.java @@ -0,0 +1,90 @@ +package au.com.royalpay.payment.manage.customers.core.impls; + +import au.com.royalpay.payment.core.events.AfterPaymentFinishEvent; +import au.com.royalpay.payment.manage.mappers.system.CustomerMapper; +import au.com.royalpay.payment.tools.threadpool.RoyalThreadPoolExecutor; +import cn.yixblog.platform.http.HttpRequestGenerator; +import cn.yixblog.platform.http.HttpRequestResult; +import com.alibaba.fastjson.JSONObject; +import org.apache.commons.codec.digest.DigestUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.ApplicationListener; +import org.springframework.stereotype.Service; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.util.UriComponentsBuilder; + +import javax.annotation.Resource; +import java.math.BigDecimal; + +@Service +public class CustomerLotteryCountServiceImpl implements ApplicationListener { + private Logger logger = LoggerFactory.getLogger(getClass()); + + @Value("${app.customer.host}") + private String CUSTOMER_HOST; + + @Value("${customer.app.appid}") + private String CUSTOMER_APP_ID; + + @Value("${customer.app.auth-code}") + private String CUSTOMER_AUTH_CODE; + + @Resource + private RoyalThreadPoolExecutor royalThreadPoolExecutor; + @Resource + private CustomerMapper customerMapper; + + @Override + public void onApplicationEvent(AfterPaymentFinishEvent event) { + final JSONObject order = event.getFinishedEvent().getOrder(); + //只允许pine商户参与该活动 + if (order.getIntValue("client_id") != 9) { + return; + } + BigDecimal clearAmount = event.getFinishedEvent().getAudFee(); + String channel = order.getString("channel"); + if ("Wechat".equals(channel)) { + JSONObject customerRelation = customerMapper.findCustomerByOpenId(order.getString("customer_id")); + if (customerRelation == null) { + customerRelation = customerMapper.findCustomerGlobalpayByOpenId(order.getString("customer_id")); + } + if (customerRelation.getString("kanga_openid") == null) { + return; + } + afterPaymentAddLotteryCount(customerRelation.getString("kanga_openid"), order.getString("order_id"), channel, clearAmount); + } + if ("Alipay".equals(channel)) { + afterPaymentAddLotteryCount(order.getString("customer_id"), order.getString("order_id"), channel, clearAmount); + } + } + + private void afterPaymentAddLotteryCount(String id, String orderId, String channel, BigDecimal clearAmount) { + String timestamp = System.currentTimeMillis() + ""; + String base = CUSTOMER_APP_ID + timestamp + CUSTOMER_AUTH_CODE; + String sign = DigestUtils.sha256Hex(base).toLowerCase(); + String uri = UriComponentsBuilder.fromHttpUrl(CUSTOMER_HOST + "activity/luck_draw/payment/lottery/count") + .queryParam("appid", CUSTOMER_APP_ID) + .queryParam("timestamp", timestamp) + .queryParam("sign", sign) + .queryParam("id", id) + .queryParam("orderId", orderId) + .queryParam("channel", channel) + .queryParam("amount", clearAmount) + .toUriString(); + HttpRequestGenerator gen = new HttpRequestGenerator(uri, RequestMethod.POST); + try { + HttpRequestResult result = gen.execute(); + if (result.isSuccess()) { + int statusCode = result.getStatusCode(); + if (statusCode == 200) { + logger.info("抽奖次数添加成功"); + } + } + + } catch (Exception ignored) { + ignored.printStackTrace(); + } + } +} From 3e4085bbf4b5eeaae7cbfbe343ae701155b73c81 Mon Sep 17 00:00:00 2001 From: "taylor.dang" Date: Fri, 14 Sep 2018 13:59:23 +0800 Subject: [PATCH 08/10] =?UTF-8?q?mybatis=20=E5=BB=B6=E8=BF=9F=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD=E5=90=AF=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mybatis-config.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/resources/mybatis-config.xml b/src/main/resources/mybatis-config.xml index 5849c55f3..e662da9d5 100644 --- a/src/main/resources/mybatis-config.xml +++ b/src/main/resources/mybatis-config.xml @@ -3,6 +3,7 @@ + From d23de1a8853626522c40dda03aee5eacbc206b93 Mon Sep 17 00:00:00 2001 From: "taylor.dang" Date: Fri, 14 Sep 2018 14:20:43 +0800 Subject: [PATCH 09/10] fix --- src/main/resources/mybatis-config.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/resources/mybatis-config.xml b/src/main/resources/mybatis-config.xml index e662da9d5..5849c55f3 100644 --- a/src/main/resources/mybatis-config.xml +++ b/src/main/resources/mybatis-config.xml @@ -3,7 +3,6 @@ - From 61dc277d62f2eeb7156906c43b59fe3ee2443855 Mon Sep 17 00:00:00 2001 From: yixian Date: Mon, 17 Sep 2018 13:07:48 +0800 Subject: [PATCH 10/10] settlement mail password source --- .../notice/core/impls/MailServiceImp.java | 48 ++++++++++++------- src/main/resources/application.properties | 2 +- .../payment/manage/process/aes/AESTest.java | 29 +++++++++++ 3 files changed, 60 insertions(+), 19 deletions(-) create mode 100644 src/test/java/au/com/royalpay/payment/manage/process/aes/AESTest.java diff --git a/src/main/java/au/com/royalpay/payment/manage/notice/core/impls/MailServiceImp.java b/src/main/java/au/com/royalpay/payment/manage/notice/core/impls/MailServiceImp.java index 6e9e7e7d9..63a1ed1db 100644 --- a/src/main/java/au/com/royalpay/payment/manage/notice/core/impls/MailServiceImp.java +++ b/src/main/java/au/com/royalpay/payment/manage/notice/core/impls/MailServiceImp.java @@ -4,6 +4,8 @@ import au.com.royalpay.payment.manage.mappers.system.MailUnsubMapper; import au.com.royalpay.payment.manage.merchants.core.ClientManager; import au.com.royalpay.payment.manage.notice.beans.NoticeBean; import au.com.royalpay.payment.manage.notice.core.MailService; +import au.com.royalpay.payment.tools.codec.AESCrypt; +import au.com.royalpay.payment.tools.env.SysConfigManager; import au.com.royalpay.payment.tools.exceptions.BadRequestException; import au.com.royalpay.payment.tools.exceptions.NotFoundException; import au.com.royalpay.payment.tools.exceptions.ServerErrorException; @@ -18,6 +20,8 @@ import com.github.miemiedev.mybatis.paginator.domain.PageBounds; import org.apache.commons.codec.digest.DigestUtils; import org.apache.commons.lang3.RandomStringUtils; +import org.apache.commons.lang3.StringUtils; +import org.apache.commons.net.util.Base64; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; @@ -26,10 +30,13 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.util.Assert; import org.springframework.web.bind.annotation.RequestMethod; import java.io.IOException; import java.net.URISyntaxException; +import java.nio.charset.StandardCharsets; +import java.security.Key; import java.util.ArrayList; import java.util.List; @@ -53,7 +60,11 @@ public class MailServiceImp implements MailService { @Resource private MailUnsubMapper mailUnsubMapper; @Resource + private SysConfigManager sysConfigManager; + @Resource private ClientManager clientManager; + @Value("${app.settle.aes-key}") + private String settleAESKey; /* @Override public void sendEmail(NoticeBean noticeBean) { @@ -79,8 +90,8 @@ public class MailServiceImp implements MailService { public String sendEmailNotice(String notice_id, String title, List mailTo, String content) throws URISyntaxException, IOException { List unsubAddress = mailUnsubMapper.getAllAddress(); List mailToWithoutUnsub = new ArrayList<>(); - mailTo.parallelStream().forEach(p->{ - if(!unsubAddress.contains(p.getString("mailto"))){ + mailTo.parallelStream().forEach(p -> { + if (!unsubAddress.contains(p.getString("mailto"))) { mailToWithoutUnsub.add(p); } }); @@ -91,7 +102,7 @@ public class MailServiceImp implements MailService { String linkHref = link.attr("href"); String linkText = link.text(); Element e = link.previousElementSibling(); - if (e!=null && "img".equalsIgnoreCase(e.tagName())) { + if (e != null && "img".equalsIgnoreCase(e.tagName())) { e.remove(); } @@ -120,17 +131,13 @@ public class MailServiceImp implements MailService { String postUrl = mailHost + "/mail?" + generateMailSignParam(); - - - - HttpRequestResult result = new HttpRequestGenerator(postUrl, RequestMethod.POST).setJSONEntity(noticeBean).execute(); if (result.isSuccess()) { String mail_id = result.getResponseContentJSONObj().getString("mail_id"); return mail_id; //System.out.println("send Mail=============="+mail_id); } else { - throw new ServerErrorException("Error Connection "+result.getStatusCode()); + throw new ServerErrorException("Error Connection " + result.getStatusCode()); } } @@ -201,25 +208,25 @@ public class MailServiceImp implements MailService { @Override public JSONObject queryUnsubPageable(JSONObject params, int limit, int page) { - return PageListUtils.buildPageListResult(mailUnsubMapper.queryPageable(params,new PageBounds(page, limit, Order.formString("create_time.desc")))); + return PageListUtils.buildPageListResult(mailUnsubMapper.queryPageable(params, new PageBounds(page, limit, Order.formString("create_time.desc")))); } @Override public void addUnsub(String ClientMoniker) { JSONObject client = clientManager.getClientInfoByMoniker(ClientMoniker); - if(client==null){ + if (client == null) { throw new NotFoundException("Merchant not Found"); } - JSONObject existRecord = mailUnsubMapper.getOne(null,client.getString("contact_email")); - if(existRecord!=null){ + JSONObject existRecord = mailUnsubMapper.getOne(null, client.getString("contact_email")); + if (existRecord != null) { throw new BadRequestException("Client has already existed"); } - JSONObject record= new JSONObject(); + JSONObject record = new JSONObject(); record.put("id", IdUtil.getId()); - record.put("address",client.getString("contact_email")); - record.put("client_id",client.getIntValue("client_id")); - record.put("client_moniker",client.getString("client_moniker")); + record.put("address", client.getString("contact_email")); + record.put("client_id", client.getIntValue("client_id")); + record.put("client_moniker", client.getString("client_moniker")); mailUnsubMapper.save(record); } @@ -234,8 +241,13 @@ public class MailServiceImp implements MailService { mailClients.add(mailClient); noticeBean.setMailClients(mailClients); noticeBean.setContent(content); - noticeBean.setSenderAddress("settlement@royalpay.com.au"); - noticeBean.setPassword("MMKdMn7dJj49jp"); + JSONObject sysConfig = sysConfigManager.getSysConfig(); + noticeBean.setSenderAddress(sysConfig.getString("settle.email.address")); + String mailPwdEncrypted = sysConfig.getString("settle.email.password"); + Assert.isTrue(StringUtils.isNotEmpty(mailPwdEncrypted), "Settlement mail pwd not configured"); + Key aesKey = AESCrypt.fromKeyString(Base64.decodeBase64(settleAESKey)); + String mailPwd = new String(AESCrypt.decrypt(Base64.decodeBase64(mailPwdEncrypted), aesKey), StandardCharsets.UTF_8); + noticeBean.setPassword(mailPwd); noticeBean.setAttachFiles(attachFiles); String postUrl = mailHost + "/mail/single?" + generateMailSignParam(); HttpRequestResult result = null; diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 4ad7dabda..4b9da4527 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -115,7 +115,7 @@ royalpay.sms.appkey=43390d81e20c5191c278fbf4cd275be2 im.openim.appkey=24986533 im.openim.secret=96e28e7be21a874177211c31834b5174 - +app.settle.aes-key=EPrfsM2JE69ZPR7BhXn34g== #清算银行配置 settle.abafile.default-bank=CBA settle.abafile.remains-to=ANZ diff --git a/src/test/java/au/com/royalpay/payment/manage/process/aes/AESTest.java b/src/test/java/au/com/royalpay/payment/manage/process/aes/AESTest.java new file mode 100644 index 000000000..d82620417 --- /dev/null +++ b/src/test/java/au/com/royalpay/payment/manage/process/aes/AESTest.java @@ -0,0 +1,29 @@ +package au.com.royalpay.payment.manage.process.aes; + +import au.com.royalpay.payment.tools.codec.AESCrypt; +import org.apache.commons.net.util.Base64; +import org.junit.Test; + +import java.nio.charset.StandardCharsets; +import java.security.Key; + +/** + * Create by yixian at 2018-09-17 12:55 + */ +public class AESTest { + @Test + public void initAESKey() { + System.out.println(Base64.encodeBase64String(AESCrypt.randomKey().getEncoded())); + } + + @Test + public void testEncrypt() { + String keyStr = "EPrfsM2JE69ZPR7BhXn34g=="; + String source = "123456"; + Key key = AESCrypt.fromKeyString(Base64.decodeBase64(keyStr)); + byte[] encrypted = AESCrypt.encrypt(source.getBytes(StandardCharsets.UTF_8), key); + System.out.println("encrypted: " + Base64.encodeBase64String(encrypted)); + System.out.println("validate: " + new String(AESCrypt.decrypt(encrypted, key), StandardCharsets.UTF_8)); + } + +}