【修复】修复安卓App、苹果App拉起微信支付报错的异常。

This commit is contained in:
JianWeie
2022-04-11 13:34:12 +08:00
parent 2885b6987d
commit 43f1f4d811

View File

@@ -130,9 +130,14 @@ namespace CoreCms.Net.Services
SpBillCreateIp = entity.ip, SpBillCreateIp = entity.ip,
NotifyUrl = weChatPayUrl, NotifyUrl = weChatPayUrl,
TradeType = tradeType, TradeType = tradeType,
OpenId = openId //OpenId = openId
}; };
if (tradeType == GlobalEnumVars.WeiChatPayTradeType.JSAPI.ToString())
{
orderRequest.OpenId = openId;
}
var response = await _client.ExecuteAsync(orderRequest, _optionsAccessor.Value); var response = await _client.ExecuteAsync(orderRequest, _optionsAccessor.Value);
if (response.ReturnCode == WeChatPayCode.Success && response.ResultCode == WeChatPayCode.Success) if (response.ReturnCode == WeChatPayCode.Success && response.ResultCode == WeChatPayCode.Success)
{ {
@@ -140,8 +145,19 @@ namespace CoreCms.Net.Services
{ {
Package = "prepay_id=" + response.PrepayId Package = "prepay_id=" + response.PrepayId
}; };
WeChatPayDictionary parameter;
var parameter = await _client.ExecuteAsync(req, _optionsAccessor.Value); if (tradeType == GlobalEnumVars.WeiChatPayTradeType.APP.ToString())
{
var reqApp = new WeChatPayAppSdkRequest()
{
PrepayId = response.PrepayId
};
parameter = await _client.ExecuteAsync(reqApp, _optionsAccessor.Value);
}
else
{
parameter = await _client.ExecuteAsync(req, _optionsAccessor.Value);
}
// 将参数(parameter)给 公众号前端 让他在微信内H5调起支付(https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6) // 将参数(parameter)给 公众号前端 让他在微信内H5调起支付(https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_7&index=6)
parameter.Add("paymentId", entity.paymentId); parameter.Add("paymentId", entity.paymentId);