package com.supersavedriving.driver.modular.system.util.separateAccounts;
|
|
import cn.hutool.crypto.digest.MD5;
|
import cn.hutool.http.HttpUtil;
|
import com.alibaba.fastjson.JSONObject;
|
|
import java.math.BigDecimal;
|
import java.util.Map;
|
import java.util.TreeMap;
|
|
/**
|
* TODO
|
*
|
* @Description 转账测试
|
* @Author liaojj
|
* @Date 2024/4/30 10:35
|
**/
|
public class TransferUtil
|
{
|
public static final String MD5_KEY = "9YRHD68clzTAfaNtKmMGIQgwOBBz3DlxVAK8AtGAq7hJxL36lMX5hqQkYsB6kyJFwiUtXuV8tkF5s005WScGHHQulRdmCrHzjwEv4aSjIfL8DKdOosk5yDxXDpZkovtF";
|
public static final String MCH_NO = "M1718787621";
|
public static final String APP_ID = "668209c2e4b02aee68f61735";
|
public static final String NOTIFY_URL = "http://121.31.232.206:3002/driver-server/base/notify";
|
|
public static void main(String[] args) {
|
// transfer(CodeGenerateUtils.generateVolumeSn(),new BigDecimal(0.01),"6230520460318842477","陈昆","中国农业银行","测试");
|
query("24071503445239718");
|
}
|
|
public static JSONObject transfer(String mchOrderNo,
|
BigDecimal amount,
|
String accountNo,
|
String accountName,
|
String bankName,
|
String transferDesc){
|
// 24071503445239718
|
System.err.println(mchOrderNo);
|
Map signMap = new TreeMap<>();
|
signMap.put("mchNo", MCH_NO);
|
signMap.put("appId", APP_ID);
|
signMap.put("mchOrderNo", mchOrderNo);
|
signMap.put("ifCode", "alipay");
|
signMap.put("entryType", "BANK_CARD");// 入账方式 对私银行卡
|
String amountStr = String.valueOf(amount.multiply(new BigDecimal(100)).setScale(0, BigDecimal.ROUND_HALF_UP));
|
signMap.put("amount", amountStr);
|
signMap.put("currency", "cny");
|
signMap.put("accountNo", accountNo);// 收款账号
|
signMap.put("accountName", accountName);
|
signMap.put("bankName", bankName);
|
signMap.put("transferDesc", transferDesc);
|
signMap.put("notifyUrl", NOTIFY_URL);
|
signMap.put("extParam", "");// 扩展参数
|
signMap.put("reqTime", System.currentTimeMillis());
|
signMap.put("version", "1.0");
|
signMap.put("signType", "MD5");
|
String signStr = StrUtil.getSignStr(signMap);
|
signStr = signStr + "&key=" + MD5_KEY;
|
String sign = MD5.create().digestHex(signStr);
|
signMap.put("sign", sign);
|
System.err.println(JSONObject.toJSONString(signMap));
|
String post = HttpUtil.post("https://pay.bozepay.com/api/transferOrder", JSONObject.toJSONString(signMap));
|
System.err.println(post);
|
return JSONObject.parseObject(post);
|
}
|
|
public static void query(String mchOrderNo){
|
Map signMap = new TreeMap<>();
|
signMap.put("mchNo", MCH_NO);
|
signMap.put("appId", APP_ID);
|
signMap.put("mchOrderNo", mchOrderNo);
|
signMap.put("reqTime", System.currentTimeMillis());
|
signMap.put("version", "1.0");
|
signMap.put("signType", "MD5");
|
String signStr = StrUtil.getSignStr(signMap);
|
signStr = signStr + "&key=" + MD5_KEY;
|
String sign = MD5.create().digestHex(signStr);
|
signMap.put("sign", sign);
|
String post = HttpUtil.post("https://pay.bozepay.com/api/transfer/query", JSONObject.toJSONString(signMap));
|
System.out.println(post);
|
}
|
|
}
|