From 53562814add61acfdc02d6b25dae6324f6fd5f92 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期四, 18 五月 2023 16:38:14 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java | 72 ++++++++++++++++++++++++++++++++++++ 1 files changed, 72 insertions(+), 0 deletions(-) diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java index c393a9c..ab8458d 100644 --- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java +++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/Tingg/TinggPayUtil.java @@ -1,7 +1,79 @@ package com.stylefeng.guns.modular.system.util.Tingg; +import com.alibaba.fastjson.JSON; +import com.stylefeng.guns.modular.system.util.ResultUtil; +import com.stylefeng.guns.modular.system.util.Tingg.model.CheckoutRequest; +import io.cellulant.model.Payload; +import io.cellulant.service.CheckoutEncryption; + +import java.text.SimpleDateFormat; +import java.util.*; + /** * Tingg支付工具类 */ public class TinggPayUtil { + + private static String accessKey = "KxjPP444jEE7K88E7juej4PKqqzKq7qKjKj84q744q9zj4Ej4zK47uj4KKj4"; + + private static String ivKey = "qsffKsCOJJdhSBCQ"; + + private static String secretKey = "9jjz4Ex74P8ue4qK"; + + + /** + * 获取支付数据 + * @param checkoutRequest + * @return + */ + public static ResultUtil checkoutRequest(CheckoutRequest checkoutRequest){ + try { + CheckoutEncryption checkoutEncrption = new CheckoutEncryption(ivKey, secretKey); + Payload payload = getPayload(checkoutRequest); + String param = checkoutEncrption.encrypt(payload); + System.out.println("Encrpted payload=" + param); + String url = "https://online.uat.tingg.africa/testing/express/checkout?encrypted_payload=" + param + "&access_key=" + accessKey; + return ResultUtil.success(url); + }catch (Exception e){ + e.printStackTrace(); + return ResultUtil.runErr(); + } + } + + + + + public static Payload getPayload(CheckoutRequest checkoutRequest) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String countryCode="GHA";//收取付款的国家的3位ISO代码 + String currencyCode = "GHS";//3位ISO代码的货币,商家正在开发票。 + String serviceCode="IGOGHANA";//服务代码 + String dueDate = sdf.format(new Date(System.currentTimeMillis() + 1800000));//到期时间 + String languageCode="EN"; + String paymentOptionCode = "";//支付选项码 + + Payload payload = new Payload(checkoutRequest.getMerchantTransactionId(), checkoutRequest.getCustomerFirstName(), checkoutRequest.getCustomerLastName(), checkoutRequest.getMsisdn(), checkoutRequest.getCustomerEmail(), + checkoutRequest.getRequestAmount(), currencyCode, checkoutRequest.getAccountNumber(), serviceCode, dueDate, checkoutRequest.getRequestDescription(), + countryCode, languageCode, paymentOptionCode, checkoutRequest.getSuccessRedirectUrl(), checkoutRequest.getFailRedirectUrl(), checkoutRequest.getPendingRedirectUrl(), checkoutRequest.getCallbackUrl()); + return payload; + } + + + public static void main(String[] ages){ + CheckoutRequest checkoutRequest = new CheckoutRequest(); + checkoutRequest.setMsisdn(233240000000L); + checkoutRequest.setCustomerEmail("393733352@qq.com"); + checkoutRequest.setAccountNumber("4111111111111111"); + checkoutRequest.setCustomerFirstName("zhibing"); + checkoutRequest.setCustomerLastName("pu"); + checkoutRequest.setRequestAmount(1.00D); + checkoutRequest.setMerchantTransactionId("123456T"); + checkoutRequest.setRequestDescription("payment test"); + checkoutRequest.setCallbackUrl("https://10pz685243.zicp.fun"); + checkoutRequest.setPendingRedirectUrl("https://10pz685243.zicp.fun"); + checkoutRequest.setSuccessRedirectUrl("https://10pz685243.zicp.fun"); + checkoutRequest.setFailRedirectUrl("https://www.baidu.com"); + ResultUtil resultUtil = TinggPayUtil.checkoutRequest(checkoutRequest); + System.err.println(JSON.toJSONString(resultUtil)); + } } -- Gitblit v1.7.1