diff --git a/Samples/Shared/Senparc.Weixin.Sample.Shared/Views/Shared/_AboutPartial.cshtml b/Samples/Shared/Senparc.Weixin.Sample.Shared/Views/Shared/_AboutPartial.cshtml
index 541af8fb2c..3eee235c85 100644
--- a/Samples/Shared/Senparc.Weixin.Sample.Shared/Views/Shared/_AboutPartial.cshtml
+++ b/Samples/Shared/Senparc.Weixin.Sample.Shared/Views/Shared/_AboutPartial.cshtml
@@ -3,10 +3,10 @@
使用 Senparc.Weixin,您可以方便快速地开发微信全平台的应用(包括微信公众号、小程序、小游戏、企业号、开放平台、微信支付、JS-SDK、微信硬件/蓝牙,等等)。本项目的 Demo 同样适合初学者进行 .NET 编程学习。
目前 Senparc.Weixin 已经支持几乎所有微信平台模块和接口,并同时支持
- .NET 3.5 / 4.0 / 4.5 / .NET Standard 2.x / .NET Core 2.x / .NET Core 3.x / .NET 6.0 多种框架。
+ .NET 3.5 / 4.0 / 4.5 / .NET Standard 2.x / .NET Core 2.x / .NET Core 3.x / .NET 6.0 / .NET 8.0 多种框架。
Senparc.Weixin SDK 是目前使用率最高的微信 .NET SDK,也是国内最受欢迎的 .NET 开源项目之一,是唯一入选 2021“科创中国”开源创新榜[1] [2] 的 .NET 项目。
-项目自 2012 年开源,2013 年 1 月起正式发布到 GitHub。10 年来,我们一直保持着项目的持续更新,并将完整的源代码以及设计思想毫无保留地分享给大家,希望有更多的人可以从中受益,理解并传播开源的精神,一同助力中国开源事业!感恩一路上给我们提供帮助的朋友们!
+项目自 2012 年开源,2013 年 1 月起正式发布到 GitHub。10 余年来,我们一直保持着项目的持续更新,并将完整的源代码以及设计思想毫无保留地分享给大家,希望有更多的人可以从中受益,理解并传播开源的精神,一同助力中国开源事业!感恩一路上给我们提供帮助的朋友们!
团队
Senparc.Weixin 由盛派网络及盛派开发者社区核心团队负责维护,同时正在得到大量来自社区成员和社会各界的支持,欢迎加入我们!
diff --git a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Entities/Request/RequestMessage3rdWxaWxVerify.cs b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Entities/Request/RequestMessage3rdWxaWxVerify.cs
new file mode 100644
index 0000000000..9dea7ba752
--- /dev/null
+++ b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Entities/Request/RequestMessage3rdWxaWxVerify.cs
@@ -0,0 +1,35 @@
+/*----------------------------------------------------------------
+ Copyright (C) 2023 Senparc
+
+ 文件名:RequestMessage3rdWxaAuth.cs
+ 文件功能描述:小程序认证年审和过期能力限制提醒(过期当天&过期30天&过期60天)
+
+
+ 创建标识:Senparc - 20231211
+----------------------------------------------------------------*/
+
+namespace Senparc.Weixin.Open
+{
+ public class RequestMessage3rdWxaWxVerify : RequestMessageBase
+ {
+ public override RequestInfoType InfoType
+ {
+ get { return RequestInfoType.notify_3rd_wxa_wxverify; }
+ }
+ ///
+ /// 小程序appid
+ ///
+ public string appid { get; set; }
+
+ ///
+ /// 认证过期时间戳(秒)
+ ///
+ public long expired { get; set; }
+
+ ///
+ /// 提醒消息内容
+ ///
+ public string message { get; set; }
+
+ }
+}
diff --git a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Entities/Request/RequestMessageNicknameAudit.cs b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Entities/Request/RequestMessageNicknameAudit.cs
index a1153b96ed..1bbc0950e1 100644
--- a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Entities/Request/RequestMessageNicknameAudit.cs
+++ b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Entities/Request/RequestMessageNicknameAudit.cs
@@ -2,15 +2,22 @@
Copyright (C) 2024 Senparc
文件名:RequestMessageNicknameAudit.cs
- 文件功能描述:推送取消授权通知
+ 文件功能描述:小程序昵称审核事件
创建标识:mc7246 - 20190603
----------------------------------------------------------------*/
+using System;
+
namespace Senparc.Weixin.Open
{
+ ///
+ /// 小程序昵称审核事件
+ /// 该事件已移入小程序SDK,请在小程序SDK内处理
+ ///
+ [Obsolete("此事件请在小程序SDK处理")]
public class RequestMessageNicknameAudit : RequestMessageBase
{
public override RequestInfoType InfoType
diff --git a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Enums.cs b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Enums.cs
index 999a8369ee..e7048fc0a8 100644
--- a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Enums.cs
+++ b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Enums.cs
@@ -133,7 +133,11 @@ public enum RequestInfoType
///
/// 微信认证推送事件
///
- notify_3rd_wxa_auth
+ notify_3rd_wxa_auth,
+ ///
+ /// 小程序认证年审和过期能力限制提醒推送事件
+ ///
+ notify_3rd_wxa_wxverify
}
diff --git a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/MessageHandlers/ThirdPartyMessageHandler.cs b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/MessageHandlers/ThirdPartyMessageHandler.cs
index 6323500290..9b4e0243b4 100644
--- a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/MessageHandlers/ThirdPartyMessageHandler.cs
+++ b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/MessageHandlers/ThirdPartyMessageHandler.cs
@@ -183,6 +183,12 @@ public void Execute()
ResponseMessageText = On3rdWxaAuthRequest(requestMessage);
}
break;
+ case RequestInfoType.notify_3rd_wxa_wxverify:
+ {
+ var requestMessage = RequestMessage as RequestMessage3rdWxaWxVerify;
+ ResponseMessageText = On3rdWxaWxVerifyRequest(requestMessage);
+ }
+ break;
default:
throw new UnknownRequestMsgTypeException("未知的InfoType请求类型", null);
}
@@ -206,6 +212,11 @@ public virtual void OnExecuted()
{
}
+ public virtual string On3rdWxaWxVerifyRequest(RequestMessage3rdWxaWxVerify requestMessage)
+ {
+ return "success";
+ }
+
public virtual string On3rdWxaAuthRequest(RequestMessage3rdWxaAuth requestMessage)
{
@@ -270,6 +281,8 @@ public virtual string OnThirdFasteRegisterRequest(RequestMessageThirdFasteRegist
return "success";
}
+
+ [Obsolete("此事件请在小程序SDK处理")]
public virtual string OnNicknameAuditRequest(RequestMessageNicknameAudit requestMessage)
{
return "success";
diff --git a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/RequestMessageFactory.cs b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/RequestMessageFactory.cs
index 29ba646ff7..fb7a17e316 100644
--- a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/RequestMessageFactory.cs
+++ b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/RequestMessageFactory.cs
@@ -92,12 +92,24 @@ public static IRequestMessageBase GetRequestEntity(XDocument doc, PostModel post
case RequestInfoType.notify_third_fasteregister:
requestMessage = new RequestMessageThirdFasteRegister();
break;
+ case RequestInfoType.notify_third_fastverifybetaapp:
+ requestMessage = new RequestMessageFastVerifyBetaApp();
+ break;
+ case RequestInfoType.notify_third_fastregisterbetaapp:
+ requestMessage = new RequestMessageFastRegisterBetaAppApp();
+ break;
case RequestInfoType.notify_icpfiling_verify_result:
requestMessage = new RequestMessageIcpFilingVerify();
break;
case RequestInfoType.notify_apply_icpfiling_result:
requestMessage = new RequestMessageIcpFilingApply();
break;
+ case RequestInfoType.notify_3rd_wxa_auth:
+ requestMessage = new RequestMessage3rdWxaAuth();
+ break;
+ case RequestInfoType.notify_3rd_wxa_wxverify:
+ requestMessage = new RequestMessage3rdWxaWxVerify();
+ break;
default:
throw new UnknownRequestMsgTypeException(string.Format("InfoType:{0} 在RequestMessageFactory中没有对应的处理程序!", infoType), new ArgumentOutOfRangeException());//为了能够对类型变动最大程度容错(如微信目前还可以对公众账号suscribe等未知类型,但API没有开放),建议在使用的时候catch这个异常
}
diff --git a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Senparc.Weixin.Open.net8.csproj b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Senparc.Weixin.Open.net8.csproj
index 2bbd3f2448..c92fbfd50d 100644
--- a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Senparc.Weixin.Open.net8.csproj
+++ b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/Senparc.Weixin.Open.net8.csproj
@@ -1,7 +1,7 @@
net462;netstandard2.0;netstandard2.1
- 4.17.4
+ 4.17.5
Senparc.Weixin.Open
Senparc.Weixin.Open
true
@@ -222,6 +222,7 @@
v4.17.1 新增“小程序微信认证”功能
v4.17.2 添加小程序微信认证事件第三方通知推送 / PR #2969
v4.17.4 修复获取小程序申诉记录返回结果 / PR #2974
+ v4.17.5 修复微信认证事件通知 PR / #2979
https://github.com/JeffreySu/WeiXinMPSDK
diff --git a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/WxaAPIs/Sec/SecJson/QueryAuthJsonResult.cs b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/WxaAPIs/Sec/SecJson/QueryAuthJsonResult.cs
index d3e637c767..512ae0dcec 100644
--- a/src/Senparc.Weixin.Open/Senparc.Weixin.Open/WxaAPIs/Sec/SecJson/QueryAuthJsonResult.cs
+++ b/src/Senparc.Weixin.Open/Senparc.Weixin.Open/WxaAPIs/Sec/SecJson/QueryAuthJsonResult.cs
@@ -40,8 +40,66 @@ public class QueryAuthJsonResult : WxJsonResult
{
///
/// 当前任务流程的状态码:
- /// 0: 初始状态 1: 任务超时, 24小时内有效 2: 用户授权拒绝 3: 用户授权同意 4: 发起人脸流程 5: 人脸认证失败 6: 人脸认证ok 7: 人脸认证后,已经提交手机号码下发验证码 8: 手机验证失败 9: 手机验证成功 11: 创建认证审核单失败 12: 创建认证审核审核单成功 14: 验证失败 15: 等待支付 | | auth_url | string | 小程序管理员授权链接 | | apply_status | number | 审核单状态,创建认证审核审核单成功后该值有效。 0:审核单不存在 1:待支付 2:审核中 3:打回重填 4:认证通过 5:认证最终失败(不能再修改) | | orderid | number | 小程序后台展示的认证订单号 | | appid | string | 小程序appid | | refill_reason | string | 当审核单被打回重填(apply_status=3)时有效 | | fail_reason | string | 审核最终失败的原因(apply_status=5)时有效 |
///
- public int task_status { get; set; }
+ public TaskStatus task_status { get; set; }
+
+ ///
+ /// 小程序管理员授权链接
+ ///
+
+ public string auth_url { get; set; }
+
+ ///
+ /// 审核单状态,创建认证审核审核单成功后该值有效
+ ///
+ public ApplyStatus apply_status { get; set; }
+
+ ///
+ /// 小程序后台展示的认证订单号
+ ///
+ public string orderid { get; set; }
+
+ ///
+ /// 小程序appid
+ ///
+ public string appid { get; set; }
+
+ ///
+ /// 当审核单被打回重填(apply_status=3)时有效
+ ///
+ public string refill_reason { get; set; }
+
+ ///
+ /// 审核最终失败的原因(apply_status=5)时有效
+ ///
+ public string fail_reason { get; set; }
+
+ public enum TaskStatus
+ {
+ 初始状态 =0,
+ 任务超时_24小时内有效=1,
+ 用户授权拒绝 = 2,
+ 用户授权同意=3,
+ 发起人脸流程=4,
+ 人脸认证失败=5,
+ 人脸认证ok = 6,
+ 人脸认证后_已经提交手机号码下发验证码= 7,
+ 手机验证失败=8,
+ 手机验证成功 =9,
+ 创建认证审核单失败=11,
+ 创建认证审核审核单成功 =12,
+ 验证失败 =14,
+ 等待支付=15
+ }
+
+ public enum ApplyStatus
+ {
+ 审核单不存在 = 0,
+ 待支付 = 1,
+ 审核中 = 2,
+ 打回重填 = 3,
+ 认证通过 = 4,
+ 认证最终失败_不能再修改 = 5
+ }
}
}
\ No newline at end of file
diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxVerifyDispatch.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxVerifyDispatch.cs
new file mode 100644
index 0000000000..f7e2d46312
--- /dev/null
+++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxVerifyDispatch.cs
@@ -0,0 +1,63 @@
+#region Apache License Version 2.0
+/*----------------------------------------------------------------
+
+Copyright 2023 Jeffrey Su & Suzhou Senparc Network Technology Co.,Ltd.
+
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+except in compliance with the License. You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software distributed under the
+License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+either express or implied. See the License for the specific language governing permissions
+and limitations under the License.
+
+Detail: https://github.com/JeffreySu/WeiXinMPSDK/blob/master/license.md
+
+----------------------------------------------------------------*/
+#endregion Apache License Version 2.0
+
+/*----------------------------------------------------------------
+ Copyright (C) 2023 Senparc
+
+ 文件名:RequestMessageEvent_AddExpressPath.cs
+ 文件功能描述:运单轨迹更新事件
+
+
+ 创建标识:chinanhb - 20230529
+
+----------------------------------------------------------------*/
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Senparc.Weixin.WxOpen.Entities
+{
+ public class RequestMessageEvent_WxVerifyDispatch : RequestMessageEventBase,IRequestMessageEventBase
+ {
+ ///
+ /// 事件类型
+ ///
+ public override Event Event
+ {
+ get { return Event.wx_verify_dispatch; }
+ }
+ ///
+ /// 微信认证审核机构
+ ///
+ public string Provider { get; set; }
+
+ ///
+ /// 微信认证审核机构联系方式
+ ///
+ public string Contact { get; set; }
+
+ ///
+ /// 微信认证派单时间
+ ///
+ public long DispatchTime { get; set; }
+ }
+}
diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxVerifyPaySucc.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxVerifyPaySucc.cs
new file mode 100644
index 0000000000..ae50795eca
--- /dev/null
+++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxVerifyPaySucc.cs
@@ -0,0 +1,53 @@
+#region Apache License Version 2.0
+/*----------------------------------------------------------------
+
+Copyright 2023 Jeffrey Su & Suzhou Senparc Network Technology Co.,Ltd.
+
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+except in compliance with the License. You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software distributed under the
+License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+either express or implied. See the License for the specific language governing permissions
+and limitations under the License.
+
+Detail: https://github.com/JeffreySu/WeiXinMPSDK/blob/master/license.md
+
+----------------------------------------------------------------*/
+#endregion Apache License Version 2.0
+
+/*----------------------------------------------------------------
+ Copyright (C) 2023 Senparc
+
+ 文件名:RequestMessageEvent_AddExpressPath.cs
+ 文件功能描述:运单轨迹更新事件
+
+
+ 创建标识:chinanhb - 20230529
+
+----------------------------------------------------------------*/
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Senparc.Weixin.WxOpen.Entities
+{
+ public class RequestMessageEvent_WxVerifyPaySucc : RequestMessageEventBase,IRequestMessageEventBase
+ {
+ ///
+ /// 事件类型
+ ///
+ public override Event Event
+ {
+ get { return Event.wx_verify_pay_succ; }
+ }
+ ///
+ /// 微信认证订单ID
+ ///
+ public string OrderId { get; set; }
+ }
+}
diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxaCategoryAudit.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxaCategoryAudit.cs
index 26aab1146a..91a105a245 100644
--- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxaCategoryAudit.cs
+++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Entities/Request/Event/RequestMessageEvent_WxaCategoryAudit.cs
@@ -32,7 +32,7 @@ and limitations under the License.
namespace Senparc.Weixin.WxOpen.Entities
{
///
- /// 事件之小程序审核成功
+ /// 事件之小程序类目审核成功
///
public class RequestMessageEvent_WxaCategoryAudit : RequestMessageEventBase, IRequestMessageEventBase
{
diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Enums.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Enums.cs
index 7e4d5504b7..79cd7a3141 100644
--- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Enums.cs
+++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Enums.cs
@@ -98,7 +98,14 @@ public enum Event
/// 订单将要结算或已经结算事件
///
trade_manage_order_settlement,
-
+ ///
+ /// 小程序微信认证支付成功事件
+ ///
+ wx_verify_pay_succ,
+ ///
+ /// 小程序微信认证派单事件
+ ///
+ wx_verify_dispatch,
#region 小程序虚拟支付
///
diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/MessageContexts/DefaultWxOpenMessageContext.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/MessageContexts/DefaultWxOpenMessageContext.cs
index 3d9e445e68..a0e8c5655f 100644
--- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/MessageContexts/DefaultWxOpenMessageContext.cs
+++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/MessageContexts/DefaultWxOpenMessageContext.cs
@@ -81,6 +81,12 @@ public override IRequestMessageBase GetRequestEntityMappingResult(RequestMsgType
case "WXA_MEDIA_CHECK"://内容安全回调:wxa_media_check 推送结果
requestMessage = new RequestMessageEvent_MediaCheck();
break;
+ case "WXA_CATEGORY_AUDIT": //小程序类目审核事件
+ requestMessage = new RequestMessageEvent_WxaCategoryAudit();
+ break;
+ case "ADD_EXPRESS_PATH": //运单轨迹推送事件
+ requestMessage = new RequestMessageEvent_AddExpressPath();
+ break;
case "TRADE_MANAGE_ORDER_SETTLEMENT"://订单将要结算或已经结算
requestMessage = new RequestMessageEvent_TradeManageOrderSettlement();
break;
@@ -90,6 +96,12 @@ public override IRequestMessageBase GetRequestEntityMappingResult(RequestMsgType
case "TRADE_MANAGE_REMIND_SHIPPING"://提醒需要上传发货信息
requestMessage = new RequestMessageEvent_TradeManageRemindShipping();
break;
+ case "WX_VERIFY_PAY_SUCC": //微信认证支付成功通知
+ requestMessage = new RequestMessageEvent_WxVerifyPaySucc();
+ break;
+ case "WX_VERIFY_DISPATCH": //微信认证派单事件
+ requestMessage = new RequestMessageEvent_WxVerifyDispatch();
+ break;
default://其他意外类型(也可以选择抛出异常)
requestMessage = new RequestMessageEventBase();
break;
diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/MessageHandlers/WxOpenMessageHandler.Event.cs b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/MessageHandlers/WxOpenMessageHandler.Event.cs
index 7be374441a..fa31d11fdc 100644
--- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/MessageHandlers/WxOpenMessageHandler.Event.cs
+++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/MessageHandlers/WxOpenMessageHandler.Event.cs
@@ -130,6 +130,12 @@ public virtual IResponseMessageBase OnEventRequest(IRequestMessageEventBase requ
case Event.trade_manage_remind_shipping:
responseMessage = OnEvent_TradeManageRemindShipping(RequestMessage as RequestMessageEvent_TradeManageRemindShipping);
break;
+ case Event.wx_verify_pay_succ:
+ responseMessage = OnEvent_WxVerifyPaySuccRequest(RequestMessage as RequestMessageEvent_WxVerifyPaySucc);
+ break;
+ case Event.wx_verify_dispatch:
+ responseMessage = OnEvent_WxVerifyDispatchRequest(RequestMessage as RequestMessageEvent_WxVerifyDispatch);
+ break;
#region 小程序虚拟支付
case Event.xpay_goods_deliver_notify:
@@ -150,6 +156,25 @@ public virtual IResponseMessageBase OnEventRequest(IRequestMessageEventBase requ
}
#region Event 下属分类
+
+ ///
+ /// 微信认证支付成功事件
+ ///
+ ///
+ ///
+ public virtual IResponseMessageBase OnEvent_WxVerifyPaySuccRequest(RequestMessageEvent_WxVerifyPaySucc requestMessage)
+ {
+ return DefaultResponseMessage(requestMessage);
+ }
+ ///
+ /// 微信认证派单事件
+ ///
+ ///
+ ///
+ public virtual IResponseMessageBase OnEvent_WxVerifyDispatchRequest(RequestMessageEvent_WxVerifyDispatch requestMessage)
+ {
+ return DefaultResponseMessage(requestMessage);
+ }
///
/// 订单将要结算或已经结算事件推送
///
@@ -395,6 +420,12 @@ public virtual async Task OnEventRequestAsync(IRequestMess
case Event.trade_manage_remind_shipping:
responseMessage = await OnEvent_TradeManageRemindShippingAsync(RequestMessage as RequestMessageEvent_TradeManageRemindShipping);
break;
+ case Event.wx_verify_pay_succ:
+ responseMessage = await OnEvent_WxVerifyPaySuccRequestAsync(RequestMessage as RequestMessageEvent_WxVerifyPaySucc);
+ break;
+ case Event.wx_verify_dispatch:
+ responseMessage = await OnEvent_WxVerifyDispatchRequestAsync(RequestMessage as RequestMessageEvent_WxVerifyDispatch);
+ break;
#region 小程序虚拟支付
case Event.xpay_goods_deliver_notify:
@@ -415,6 +446,25 @@ public virtual async Task OnEventRequestAsync(IRequestMess
}
#region Event 下属分类
+ ///
+ /// 【异步方法】微信认证支付成功事件
+ ///
+ ///
+ ///
+ public virtual async Task OnEvent_WxVerifyPaySuccRequestAsync(RequestMessageEvent_WxVerifyPaySucc requestMessage)
+ {
+ return await DefaultAsyncMethod(requestMessage, () => OnEvent_WxVerifyPaySuccRequest(requestMessage)).ConfigureAwait(false);
+ }
+ ///
+ /// 【异步方法】微信认证派单事件
+ ///
+ ///
+ ///
+ public virtual async Task OnEvent_WxVerifyDispatchRequestAsync(RequestMessageEvent_WxVerifyDispatch requestMessage)
+ {
+ return await DefaultAsyncMethod(requestMessage, () => OnEvent_WxVerifyDispatchRequest(requestMessage)).ConfigureAwait(false);
+ }
+
///
/// 【异步方法】订单将要结算或已经结算事件推送
///
diff --git a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen.net8.csproj b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen.net8.csproj
index 5bab0509cb..d7d9cb1784 100644
--- a/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen.net8.csproj
+++ b/src/Senparc.Weixin.WxOpen/src/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen/Senparc.Weixin.WxOpen.net8.csproj
@@ -1,7 +1,7 @@
net462;netstandard2.0;netstandard2.1
- 3.17.4
+ 3.17.5
9.0
Senparc.Weixin.WxOpen
Senparc.Weixin.WxOpen
@@ -178,7 +178,8 @@
v3.17.1 添加 CodeApi.RevertCodeRelease() 方法的 appVersion 参数
v3.17.2 添加“小程序虚拟支付”功能 PR #2961 / Issue #2951
v3.17.3 添加小程序分类审核异步通知事件 / PR #2969
-
+ v3.17.5 新增小程序认证年审事件接口 / PR #2979
+
https://github.com/JeffreySu/WeiXinMPSDK