Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
Jeepay
Commits
af27afab
Commit
af27afab
authored
Jun 28, 2021
by
zhuxiao
Browse files
完善微信支付APIV3接口
parent
81c94049
Changes
2
Hide whitespace changes
Inline
Side-by-side
jeepay-payment/src/main/java/com/jeequan/jeepay/pay/channel/wxpay/WxpayPayOrderQueryService.java
View file @
af27afab
...
...
@@ -22,6 +22,7 @@ import com.github.binarywang.wxpay.exception.WxPayException;
import
com.github.binarywang.wxpay.service.WxPayService
;
import
com.jeequan.jeepay.core.constants.CS
;
import
com.jeequan.jeepay.core.entity.PayOrder
;
import
com.jeequan.jeepay.core.model.params.wxpay.WxpayIsvsubMchParams
;
import
com.jeequan.jeepay.pay.channel.IPayOrderQueryService
;
import
com.jeequan.jeepay.pay.channel.wxpay.kits.WxpayKit
;
import
com.jeequan.jeepay.pay.channel.wxpay.kits.WxpayV3Util
;
...
...
@@ -76,7 +77,17 @@ public class WxpayPayOrderQueryService implements IPayOrderQueryService {
}
else
if
(
CS
.
PAY_IF_VERSION
.
WX_V3
.
equals
(
mchAppConfigContext
.
getWxServiceWrapper
().
getApiVersion
()))
{
//V3
JSONObject
resultJSON
=
WxpayV3Util
.
queryOrderV3
(
payOrder
.
getPayOrderId
(),
mchAppConfigContext
.
getWxServiceWrapper
().
getWxPayService
().
getConfig
());
String
reqUrl
;
String
query
;
if
(
mchAppConfigContext
.
isIsvsubMch
()){
// 特约商户
WxpayIsvsubMchParams
isvsubMchParams
=
mchAppConfigContext
.
getIsvsubMchParamsByIfCode
(
CS
.
IF_CODE
.
WXPAY
,
WxpayIsvsubMchParams
.
class
);
reqUrl
=
String
.
format
(
"/v3/pay/partner/transactions/out-trade-no/%s"
,
payOrder
.
getPayOrderId
());
query
=
String
.
format
(
"?sp_mchid=%s&sub_mchid=%s"
,
mchAppConfigContext
.
getWxServiceWrapper
().
getWxPayService
().
getConfig
().
getMchId
(),
isvsubMchParams
.
getSubMchId
());
}
else
{
reqUrl
=
String
.
format
(
"/v3/pay/transactions/out-trade-no/%s"
,
payOrder
.
getPayOrderId
());
query
=
String
.
format
(
"?mchid=%s"
,
mchAppConfigContext
.
getWxServiceWrapper
().
getWxPayService
().
getConfig
().
getMchId
());
}
JSONObject
resultJSON
=
WxpayV3Util
.
queryOrderV3
(
reqUrl
+
query
,
mchAppConfigContext
.
getWxServiceWrapper
().
getWxPayService
().
getConfig
());
String
channelState
=
resultJSON
.
getString
(
"trade_state"
);
if
(
"SUCCESS"
.
equals
(
channelState
))
{
...
...
jeepay-payment/src/main/java/com/jeequan/jeepay/pay/channel/wxpay/kits/WxpayV3Util.java
View file @
af27afab
...
...
@@ -76,8 +76,7 @@ public class WxpayV3Util {
return
JSON
.
parseObject
(
response
);
}
public
static
JSONObject
queryOrderV3
(
String
payOrderId
,
WxPayConfig
wxPayConfig
)
throws
WxPayException
{
String
url
=
String
.
format
(
"%s/v3/pay/transactions/out-trade-no/%s"
,
PAY_BASE_URL
,
payOrderId
);
public
static
JSONObject
queryOrderV3
(
String
url
,
WxPayConfig
wxPayConfig
)
throws
WxPayException
{
String
response
=
getV3
(
url
,
wxPayConfig
);
return
JSON
.
parseObject
(
response
);
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment