|
|
|
@ -45,7 +45,6 @@ public class WxPayUtils { |
|
|
|
|
|
|
|
|
|
|
|
// JSApi下单url地址
|
|
|
|
// JSApi下单url地址
|
|
|
|
public static String JSApiPayUrl = "https://api.mch.weixin.qq.com/v3/pay/transactions/jsapi"; |
|
|
|
public static String JSApiPayUrl = "https://api.mch.weixin.qq.com/v3/pay/transactions/jsapi"; |
|
|
|
public static String ClocePayUrl = "https://api.mch.weixin.qq.com/v3/pay/transactions/out-trade-no/{out_trade_no}/close"; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 商户私钥 获取对应的签名需要 在微信支付商户平台-账户中心-API安全里设置 养宠物那边复制的
|
|
|
|
// 商户私钥 获取对应的签名需要 在微信支付商户平台-账户中心-API安全里设置 养宠物那边复制的
|
|
|
|
// 对应文档 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/open/pay/chapter2_1.shtml
|
|
|
|
// 对应文档 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/open/pay/chapter2_1.shtml
|
|
|
|
@ -244,7 +243,6 @@ public class WxPayUtils { |
|
|
|
return ""; |
|
|
|
return ""; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* 第四步:生成支付参数 |
|
|
|
* 第四步:生成支付参数 |
|
|
|
* 生成支付所需的参数 |
|
|
|
* 生成支付所需的参数 |
|
|
|
@ -274,7 +272,6 @@ public class WxPayUtils { |
|
|
|
return json; |
|
|
|
return json; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* 先调用下单,然后调用生成支付参数 |
|
|
|
* 先调用下单,然后调用生成支付参数 |
|
|
|
* |
|
|
|
* |
|
|
|
@ -284,7 +281,6 @@ public class WxPayUtils { |
|
|
|
public static Object getPayParam(String openId, String outTradeNo,int total) { |
|
|
|
public static Object getPayParam(String openId, String outTradeNo,int total) { |
|
|
|
JSONObject jsonObject = JSON.parseObject(createOrderJSApiV3(openId, outTradeNo,total)); |
|
|
|
JSONObject jsonObject = JSON.parseObject(createOrderJSApiV3(openId, outTradeNo,total)); |
|
|
|
return getTokenWeiXin(jsonObject.getString("prepay_id")); |
|
|
|
return getTokenWeiXin(jsonObject.getString("prepay_id")); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
@ -313,7 +309,7 @@ public class WxPayUtils { |
|
|
|
json.put("mchid", mchId); |
|
|
|
json.put("mchid", mchId); |
|
|
|
json.put("description", description); |
|
|
|
json.put("description", description); |
|
|
|
// 商户订单号 自己生成
|
|
|
|
// 商户订单号 自己生成
|
|
|
|
// json.put("out_trade_no", generateNonceStr());
|
|
|
|
|
|
|
|
json.put("out_trade_no", outTradeNo); |
|
|
|
json.put("out_trade_no", outTradeNo); |
|
|
|
json.put("notify_url", callbackUri); |
|
|
|
json.put("notify_url", callbackUri); |
|
|
|
json.put("amount", amountJson); |
|
|
|
json.put("amount", amountJson); |
|
|
|
|