gongzuming
2024-10-08 4e7335b58224ce65445ec6c89304546d538a790e
支付优化
已修改1个文件
171 ■■■■ 文件已修改
src/main/java/com/mzl/flower/pay/SybPayService.java 171 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/mzl/flower/pay/SybPayService.java
@@ -1,9 +1,13 @@
package com.mzl.flower.pay;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.net.URLEncoder;
import java.util.Map;
import java.util.TreeMap;
@Slf4j
public class SybPayService {
@@ -27,27 +31,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 +70,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", "11");
            params.put("trxamt", String.valueOf(trxamt));
            params.put("reqsn", reqsn);
            params.put("oldtrxid", oldtrxid);
            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("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("oldtrxid", oldtrxid);
        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;
    }
    /**
@@ -104,27 +108,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", "11");
            params.put("trxamt", String.valueOf(trxamt));
            params.put("reqsn", reqsn);
            params.put("oldreqsn", oldreqsn);
            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("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("oldreqsn", oldreqsn);
        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;
    }
    /**
@@ -140,25 +144,25 @@
        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("oldreqsn", oldreqsn);
            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("cusid", SybConstants.SYB_CUSID);
        params.put("appid", SybConstants.SYB_APPID);
        params.put("version", "12");
        params.put("oldreqsn", oldreqsn);
        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;
    }
    
    public Map<String,String> query(String reqsn,String trxid) throws Exception{
@@ -190,7 +194,8 @@
    
    
    public static Map<String,String> handleResult(String result) throws Exception{
        System.out.println("ret:"+result);
        System.out.println("通联支付返回结果:"+result);
        log.info("ret:"+result);
        Map map = SybUtil.json2Obj(result, Map.class);
        if(map == null){
            throw new Exception("返回数据错误");