From 58a8acceb63d52377da4b837e859f2e03d2bce1b Mon Sep 17 00:00:00 2001 From: gongzuming <gongzuming> Date: 星期一, 14 十月 2024 08:44:40 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master-v3' into master-v2 --- src/main/java/com/mzl/flower/pay/SybPayService.java | 175 ++++++++++++++++++++++++++++++++-------------------------- 1 files changed, 97 insertions(+), 78 deletions(-) diff --git a/src/main/java/com/mzl/flower/pay/SybPayService.java b/src/main/java/com/mzl/flower/pay/SybPayService.java index 8dc5e9e..0de4250 100644 --- a/src/main/java/com/mzl/flower/pay/SybPayService.java +++ b/src/main/java/com/mzl/flower/pay/SybPayService.java @@ -1,9 +1,14 @@ package com.mzl.flower.pay; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + import java.net.URLEncoder; import java.util.Map; import java.util.TreeMap; +@Slf4j public class SybPayService { @@ -27,27 +32,27 @@ TreeMap<String,String> params = new TreeMap<String,String>(); if(!SybUtil.isEmpty(SybConstants.SYB_ORGID)) params.put("orgid", SybConstants.SYB_ORGID); - params.put("cusid", SybConstants.SYB_CUSID); - params.put("appid", SybConstants.SYB_APPID); - params.put("version", "12"); - params.put("trxamt", String.valueOf(trxamt)); - params.put("reqsn", reqsn); - params.put("unireqsn", unireqsn); - params.put("notify_url", notifyUrl); - params.put("body", body); - params.put("remark", remark); - params.put("paytype", "W06"); - params.put("randomstr", SybUtil.getValidatecode(8)); - params.put("signtype", SybConstants.SIGN_TYPE); - String appkey = ""; - if(SybConstants.SIGN_TYPE.equals("RSA")) - appkey = SybConstants.SYB_RSACUSPRIKEY; - else if(SybConstants.SIGN_TYPE.equals("SM2")) - appkey = SybConstants.SYB_SM2PPRIVATEKEY; - else - appkey = SybConstants.SYB_MD5_APPKEY; - params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE)); - return params; + params.put("cusid", SybConstants.SYB_CUSID); + params.put("appid", SybConstants.SYB_APPID); + params.put("version", "12"); + params.put("trxamt", String.valueOf(trxamt)); + params.put("reqsn", reqsn); + params.put("unireqsn", unireqsn); + params.put("notify_url", notifyUrl); + params.put("body", body); + params.put("remark", remark); + params.put("paytype", "W06"); + params.put("randomstr", SybUtil.getValidatecode(8)); + params.put("signtype", SybConstants.SIGN_TYPE); + String appkey = ""; + if(SybConstants.SIGN_TYPE.equals("RSA")) + appkey = SybConstants.SYB_RSACUSPRIKEY; + else if(SybConstants.SIGN_TYPE.equals("SM2")) + appkey = SybConstants.SYB_SM2PPRIVATEKEY; + else + appkey = SybConstants.SYB_MD5_APPKEY; + params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE)); + return params; } @@ -66,27 +71,31 @@ TreeMap<String,String> params = new TreeMap<String,String>(); if(!SybUtil.isEmpty(SybConstants.SYB_ORGID)) params.put("orgid", SybConstants.SYB_ORGID); - params.put("cusid", SybConstants.SYB_CUSID); - params.put("appid", SybConstants.SYB_APPID); - params.put("version", "11"); - params.put("trxamt", String.valueOf(trxamt)); - params.put("reqsn", reqsn); + params.put("cusid", SybConstants.SYB_CUSID); + params.put("appid", SybConstants.SYB_APPID); + params.put("version", "11"); + params.put("trxamt", String.valueOf(trxamt)); + params.put("reqsn", reqsn); + if (StringUtils.isNotBlank(oldtrxid)) { params.put("oldtrxid", oldtrxid); + } + if(StringUtils.isNotBlank(oldreqsn)){ params.put("oldreqsn", oldreqsn); - params.put("randomstr", SybUtil.getValidatecode(8)); - params.put("signtype", SybConstants.SIGN_TYPE); - String appkey = ""; - if(SybConstants.SIGN_TYPE.equals("RSA")) - appkey = SybConstants.SYB_RSACUSPRIKEY; - else if(SybConstants.SIGN_TYPE.equals("SM2")) - appkey = SybConstants.SYB_SM2PPRIVATEKEY; - else - appkey = SybConstants.SYB_MD5_APPKEY; - params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE)); - byte[] bys = http.postParams(params, true); - String result = new String(bys,"UTF-8"); - Map<String,String> map = handleResult(result); - return map; + } + params.put("randomstr", SybUtil.getValidatecode(8)); + params.put("signtype", SybConstants.SIGN_TYPE); + String appkey = ""; + if(SybConstants.SIGN_TYPE.equals("RSA")) + appkey = SybConstants.SYB_RSACUSPRIKEY; + else if(SybConstants.SIGN_TYPE.equals("SM2")) + appkey = SybConstants.SYB_SM2PPRIVATEKEY; + else + appkey = SybConstants.SYB_MD5_APPKEY; + params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE)); + byte[] bys = http.postParams(params, true); + String result = new String(bys,"UTF-8"); + Map<String,String> map = handleResult(result); + return map; } /** @@ -104,27 +113,31 @@ TreeMap<String,String> params = new TreeMap<String,String>(); if(!SybUtil.isEmpty(SybConstants.SYB_ORGID)) params.put("orgid", SybConstants.SYB_ORGID); - params.put("cusid", SybConstants.SYB_CUSID); - params.put("appid", SybConstants.SYB_APPID); - params.put("version", "11"); - params.put("trxamt", String.valueOf(trxamt)); - params.put("reqsn", reqsn); + params.put("cusid", SybConstants.SYB_CUSID); + params.put("appid", SybConstants.SYB_APPID); + params.put("version", "11"); + params.put("trxamt", String.valueOf(trxamt)); + params.put("reqsn", reqsn); + if(StringUtils.isNotBlank(oldreqsn)){ params.put("oldreqsn", oldreqsn); + } + if (StringUtils.isNotBlank(oldtrxid)) { params.put("oldtrxid", oldtrxid); - params.put("randomstr", SybUtil.getValidatecode(8)); - params.put("signtype", SybConstants.SIGN_TYPE); - String appkey = ""; - if(SybConstants.SIGN_TYPE.equals("RSA")) - appkey = SybConstants.SYB_RSACUSPRIKEY; - else if(SybConstants.SIGN_TYPE.equals("SM2")) - appkey = SybConstants.SYB_SM2PPRIVATEKEY; - else - appkey = SybConstants.SYB_MD5_APPKEY; - params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE)); - byte[] bys = http.postParams(params, true); - String result = new String(bys,"UTF-8"); - Map<String,String> map = handleResult(result); - return map; + } + params.put("randomstr", SybUtil.getValidatecode(8)); + params.put("signtype", SybConstants.SIGN_TYPE); + String appkey = ""; + if(SybConstants.SIGN_TYPE.equals("RSA")) + appkey = SybConstants.SYB_RSACUSPRIKEY; + else if(SybConstants.SIGN_TYPE.equals("SM2")) + appkey = SybConstants.SYB_SM2PPRIVATEKEY; + else + appkey = SybConstants.SYB_MD5_APPKEY; + params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE)); + byte[] bys = http.postParams(params, true); + String result = new String(bys,"UTF-8"); + Map<String,String> map = handleResult(result); + return map; } /** @@ -140,25 +153,29 @@ TreeMap<String,String> params = new TreeMap<String,String>(); if(!SybUtil.isEmpty(SybConstants.SYB_ORGID)) params.put("orgid", SybConstants.SYB_ORGID); - params.put("cusid", SybConstants.SYB_CUSID); - params.put("appid", SybConstants.SYB_APPID); - params.put("version", "12"); + params.put("cusid", SybConstants.SYB_CUSID); + params.put("appid", SybConstants.SYB_APPID); + params.put("version", "12"); + if(StringUtils.isNotBlank(oldreqsn)){ params.put("oldreqsn", oldreqsn); + } + if (StringUtils.isNotBlank(oldtrxid)) { params.put("oldtrxid", oldtrxid); - params.put("randomstr", SybUtil.getValidatecode(8)); - params.put("signtype", SybConstants.SIGN_TYPE); - String appkey = ""; - if(SybConstants.SIGN_TYPE.equals("RSA")) - appkey = SybConstants.SYB_RSACUSPRIKEY; - else if(SybConstants.SIGN_TYPE.equals("SM2")) - appkey = SybConstants.SYB_SM2PPRIVATEKEY; - else - appkey = SybConstants.SYB_MD5_APPKEY; - params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE)); - byte[] bys = http.postParams(params, true); - String result = new String(bys,"UTF-8"); - Map<String,String> map = handleResult(result); - return map; + } + params.put("randomstr", SybUtil.getValidatecode(8)); + params.put("signtype", SybConstants.SIGN_TYPE); + String appkey = ""; + if(SybConstants.SIGN_TYPE.equals("RSA")) + appkey = SybConstants.SYB_RSACUSPRIKEY; + else if(SybConstants.SIGN_TYPE.equals("SM2")) + appkey = SybConstants.SYB_SM2PPRIVATEKEY; + else + appkey = SybConstants.SYB_MD5_APPKEY; + params.put("sign", SybUtil.unionSign(params,appkey,SybConstants.SIGN_TYPE)); + byte[] bys = http.postParams(params, true); + String result = new String(bys,"UTF-8"); + Map<String,String> map = handleResult(result); + return map; } public Map<String,String> query(String reqsn,String trxid) throws Exception{ @@ -171,7 +188,9 @@ params.put("appid", SybConstants.SYB_APPID); params.put("version", "11"); params.put("reqsn", reqsn); - params.put("trxid", trxid); + if(StringUtils.isNotBlank(trxid)){ + params.put("trxid", trxid); + } params.put("randomstr", SybUtil.getValidatecode(8)); params.put("signtype", SybConstants.SIGN_TYPE); String appkey = ""; @@ -190,7 +209,7 @@ public static Map<String,String> handleResult(String result) throws Exception{ - System.out.println("ret:"+result); + log.info("通联支付返回结果:"+result); Map map = SybUtil.json2Obj(result, Map.class); if(map == null){ throw new Exception("返回数据错误"); -- Gitblit v1.9.3