From 91000f5f272c8edbb6ecf826209ee1285c8b7e2a Mon Sep 17 00:00:00 2001 From: jianweie code Date: Wed, 13 Mar 2024 16:55:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=94=AF=E4=BB=98=E5=AE=9D?= =?UTF-8?q?=E6=94=AF=E4=BB=98JSAPI=E5=AE=9E=E7=8E=B0=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CoreCms.Net.Services/Pay/AliPayServices.cs | 28 +++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/CoreCms.Net.Services/Pay/AliPayServices.cs b/CoreCms.Net.Services/Pay/AliPayServices.cs index a7225be4..a1543595 100644 --- a/CoreCms.Net.Services/Pay/AliPayServices.cs +++ b/CoreCms.Net.Services/Pay/AliPayServices.cs @@ -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;