增加支付宝支付JSAPI实现代码。

This commit is contained in:
jianweie code
2024-03-13 16:55:35 +08:00
parent 8fb41990ab
commit 91000f5f27

View File

@@ -30,6 +30,7 @@ using Newtonsoft.Json.Linq;
using static Aliyun.OSS.Model.LiveChannelStat;
using Essensoft.Paylink.WeChatPay.V2.Request;
using Essensoft.Paylink.WeChatPay.V2;
using static SKIT.FlurlHttpClient.Wechat.Api.Models.ShopCouponGetResponse.Types.Result.Types.Coupon.Types.CouponDetail.Types.Discount.Types.DiscountCondidtion.Types;
namespace CoreCms.Net.Services
{
@@ -131,6 +132,31 @@ namespace CoreCms.Net.Services
jm.status = !response.IsError;
}
else if (tradeType == GlobalEnumVars.AliPayPayTradeType.JSAPI.ToString())
{
var model = new AlipayTradePagePayModel
{
OutTradeNo = entity.paymentId,
Subject = entity.payTitle.Length > 40 ? entity.payTitle[..40] : entity.payTitle,
ProductCode = "JSAPI_PAY",
TotalAmount = entity.money.ToString(CultureInfo.InvariantCulture),
Body = entity.payTitle.Length > 40 ? entity.payTitle[..40] : entity.payTitle
};
var req = new AlipayTradePagePayRequest();
req.SetBizModel(model);
req.SetNotifyUrl(notifyUrl);
//req.SetReturnUrl(config.jumpUrl);
Loging.NLogUtil.WriteAll(NLog.LogLevel.Trace, Loging.LogType.Order, "支付宝JSAPI支付拼接支付宝小程序入参", JsonConvert.SerializeObject(model));
var response = await _client.PageExecuteAsync(req, payOptions);
Loging.NLogUtil.WriteAll(NLog.LogLevel.Trace, Loging.LogType.Order, "支付宝JSAPI支付返回数据", JsonConvert.SerializeObject(response));
jm.data = response.Body;
//response.TradeNo = entity.paymentId;
jm.otherData = response;
jm.status = !response.IsError;
}
//PC网站支付
else if (tradeType == GlobalEnumVars.AliPayPayTradeType.JSAPI_PC.ToString())
{
@@ -153,7 +179,7 @@ namespace CoreCms.Net.Services
jm.data = response.Body;
response.TradeNo = entity.paymentId;
//response.TradeNo = entity.paymentId;
jm.otherData = response;
jm.status = !response.IsError;