From f4f96f0247bf662eb92f99b9399c570300a7ab94 Mon Sep 17 00:00:00 2001 From: colin Date: Thu, 10 Oct 2024 16:28:43 +0800 Subject: [PATCH] =?UTF-8?q?feat(notifications):=20=E9=80=9A=E7=9F=A5?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=94=E4=BA=A4=E7=94=B1=E5=85=B7=E4=BD=93?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E8=80=85=E6=9D=A5=E5=A4=84=E7=90=86=E6=95=B0?= =?UTF-8?q?=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FodyWeavers.xsd | 30 ++++++++++ .../AbpNotificationsEmailingModule.cs | 2 - .../SignalR/AbpNotificationsSignalRModule.cs | 3 - .../Sms/AbpNotificationsSmsModule.cs | 7 --- .../LINGYUN.Abp.Notifications.Sms/README.md | 4 -- ...AbpNotificationsWeChatMiniProgramModule.cs | 5 -- ...bpNotificationsWeChatMiniProgramOptions.cs | 4 -- .../README.md | 3 - .../AbpNotificationsPublishOptions.cs | 5 -- .../BackgroundJobs/NotificationPublishJob.cs | 6 -- .../Distributed/NotificationEventHandler.cs | 15 +++-- .../Properties/launchSettings.json | 2 +- .../appsettings.Development.json | 8 +++ .../BackgroundJobs/NotificationPublishJob.cs | 28 ++++----- .../Distributed/NotificationEventHandler.cs | 10 ---- .../Sms/AbpNotificationsSmsTestsModule.cs | 17 +----- .../Sms/SmsNotificationDataMapping_Tests.cs | 58 +++++++++---------- ...tificationsWeChatMiniProgramTestsModule.cs | 15 +---- ...iniProgramNotificationDataMapping_Tests.cs | 50 ++++++++-------- 19 files changed, 116 insertions(+), 156 deletions(-) create mode 100644 aspnet-core/framework/exporter/LINGYUN.Abp.Exporter.MagicodesIE.Excel/FodyWeavers.xsd diff --git a/aspnet-core/framework/exporter/LINGYUN.Abp.Exporter.MagicodesIE.Excel/FodyWeavers.xsd b/aspnet-core/framework/exporter/LINGYUN.Abp.Exporter.MagicodesIE.Excel/FodyWeavers.xsd new file mode 100644 index 000000000..3f3946e28 --- /dev/null +++ b/aspnet-core/framework/exporter/LINGYUN.Abp.Exporter.MagicodesIE.Excel/FodyWeavers.xsd @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + 'true' to run assembly verification (PEVerify) on the target assembly after all weavers have been executed. + + + + + A comma-separated list of error codes that can be safely ignored in assembly verification. + + + + + 'false' to turn off automatic generation of the XML Schema file. + + + + + \ No newline at end of file diff --git a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Emailing/LINGYUN/Abp/Notifications/Emailing/AbpNotificationsEmailingModule.cs b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Emailing/LINGYUN/Abp/Notifications/Emailing/AbpNotificationsEmailingModule.cs index e6b0d0855..15ebb0c16 100644 --- a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Emailing/LINGYUN/Abp/Notifications/Emailing/AbpNotificationsEmailingModule.cs +++ b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Emailing/LINGYUN/Abp/Notifications/Emailing/AbpNotificationsEmailingModule.cs @@ -15,8 +15,6 @@ public override void ConfigureServices(ServiceConfigurationContext context) Configure(options => { options.PublishProviders.Add(); - options.NotificationDataMappings - .MappingDefault(EmailingNotificationPublishProvider.ProviderName, data => data); }); } } diff --git a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.SignalR/LINGYUN/Abp/Notifications/SignalR/AbpNotificationsSignalRModule.cs b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.SignalR/LINGYUN/Abp/Notifications/SignalR/AbpNotificationsSignalRModule.cs index e69768a1f..604999e5d 100644 --- a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.SignalR/LINGYUN/Abp/Notifications/SignalR/AbpNotificationsSignalRModule.cs +++ b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.SignalR/LINGYUN/Abp/Notifications/SignalR/AbpNotificationsSignalRModule.cs @@ -13,9 +13,6 @@ public override void ConfigureServices(ServiceConfigurationContext context) Configure(options => { options.PublishProviders.Add(); - options.NotificationDataMappings - .MappingDefault(SignalRNotificationPublishProvider.ProviderName, - data => data.ToSignalRData()); }); } } diff --git a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Sms/LINGYUN/Abp/Notifications/Sms/AbpNotificationsSmsModule.cs b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Sms/LINGYUN/Abp/Notifications/Sms/AbpNotificationsSmsModule.cs index 525e1b486..d4f306186 100644 --- a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Sms/LINGYUN/Abp/Notifications/Sms/AbpNotificationsSmsModule.cs +++ b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Sms/LINGYUN/Abp/Notifications/Sms/AbpNotificationsSmsModule.cs @@ -20,13 +20,6 @@ public override void ConfigureServices(ServiceConfigurationContext context) Configure(options => { options.PublishProviders.Add(); - - var smsOptions = preSmsActions.Configure(); - - options.NotificationDataMappings - .MappingDefault( - SmsNotificationPublishProvider.ProviderName, - data => NotificationData.ToStandardData(smsOptions.TemplateParamsPrefix, data)); }); } } diff --git a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Sms/README.md b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Sms/README.md index 94b79c56a..eef114e53 100644 --- a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Sms/README.md +++ b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.Sms/README.md @@ -9,10 +9,6 @@ 自定义的发送方法可以通过实现 ##ISmsNotificationSender## 接口或重写 ##SmsNotificationSender## 即可 -内置了通知数据 NotificationDataMappings 方法 -可通过 NotificationDataMappings.MappingAll(SmsNotificationPublishProvider.ProviderName, Func func) 来自定义规则 - - ## 配置使用 * 此配置项将在下一个短信相关大版本移除 diff --git a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramModule.cs b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramModule.cs index 1e016f9ba..bf6da3bde 100644 --- a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramModule.cs +++ b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramModule.cs @@ -21,11 +21,6 @@ public override void ConfigureServices(ServiceConfigurationContext context) Configure(options => { options.PublishProviders.Add(); - - var wechatOptions = preActions.Configure(); - options.NotificationDataMappings - .MappingDefault(WeChatMiniProgramNotificationPublishProvider.ProviderName, - data => NotificationData.ToStandardData(wechatOptions.DefaultMsgPrefix, data)); }); } } diff --git a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramOptions.cs b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramOptions.cs index 4653717ba..e663f1e91 100644 --- a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramOptions.cs +++ b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramOptions.cs @@ -5,10 +5,6 @@ /// public class AbpNotificationsWeChatMiniProgramOptions { - /// - /// 默认消息头部标记 - /// - public string DefaultMsgPrefix { get; set; } = "[wmp]"; /// /// 默认小程序模板 /// diff --git a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/README.md b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/README.md index 4bb7ac6ed..4a484e36a 100644 --- a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/README.md +++ b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications.WeChat.MiniProgram/README.md @@ -7,9 +7,6 @@ #### 注意 -内置了通知数据 NotificationDataMappings 方法 -可通过 NotificationDataMappings.MappingAll(WeChatMiniProgramNotificationPublishProvider.ProviderName, Func func) 来自定义规则 - ## 配置使用 * 此配置项将在下一个微信相关大版本移除,合并到 LINGYUN.Abp.WeChat.MiniProgram.AbpWeChatMiniProgramOptions diff --git a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications/LINGYUN/Abp/Notifications/AbpNotificationsPublishOptions.cs b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications/LINGYUN/Abp/Notifications/AbpNotificationsPublishOptions.cs index 49e3df2bd..5fd31dd18 100644 --- a/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications/LINGYUN/Abp/Notifications/AbpNotificationsPublishOptions.cs +++ b/aspnet-core/modules/realtime-notifications/LINGYUN.Abp.Notifications/LINGYUN/Abp/Notifications/AbpNotificationsPublishOptions.cs @@ -11,10 +11,6 @@ public class AbpNotificationsPublishOptions /// public ITypeList PublishProviders { get; } /// - /// 可以自定义某个通知的格式 - /// - public NotificationDataMappingDictionary NotificationDataMappings { get; } - /// /// 过期时间 /// 默认60天 /// @@ -29,7 +25,6 @@ public class AbpNotificationsPublishOptions public AbpNotificationsPublishOptions() { PublishProviders = new TypeList(); - NotificationDataMappings = new NotificationDataMappingDictionary(); ExpirationTime = TimeSpan.FromDays(60); DateTimeFormat = DefaultDateTimeFormat; diff --git a/aspnet-core/services/LY.MicroService.Applications.Single/BackgroundJobs/NotificationPublishJob.cs b/aspnet-core/services/LY.MicroService.Applications.Single/BackgroundJobs/NotificationPublishJob.cs index 8a6baf7fe..8e96f80d2 100644 --- a/aspnet-core/services/LY.MicroService.Applications.Single/BackgroundJobs/NotificationPublishJob.cs +++ b/aspnet-core/services/LY.MicroService.Applications.Single/BackgroundJobs/NotificationPublishJob.cs @@ -31,12 +31,6 @@ public override async Task ExecuteAsync(NotificationPublishJobArgs args) var notification = await store.GetNotificationOrNullAsync(args.TenantId, args.NotificationId); notification.Data = NotificationDataSerializer.Serialize(notification.Data); - var notifacationDataMapping = Options.NotificationDataMappings - .GetMapItemOrDefault(notification.Name, publishProvider.Name); - if (notifacationDataMapping != null) - { - notification.Data = notifacationDataMapping.MappingFunc(notification.Data); - } await publishProvider.PublishAsync(notification, args.UserIdentifiers); } } diff --git a/aspnet-core/services/LY.MicroService.Applications.Single/EventBus/Distributed/NotificationEventHandler.cs b/aspnet-core/services/LY.MicroService.Applications.Single/EventBus/Distributed/NotificationEventHandler.cs index 1cd7ba923..8f9ee9a3e 100644 --- a/aspnet-core/services/LY.MicroService.Applications.Single/EventBus/Distributed/NotificationEventHandler.cs +++ b/aspnet-core/services/LY.MicroService.Applications.Single/EventBus/Distributed/NotificationEventHandler.cs @@ -413,12 +413,15 @@ protected async Task PublishToSubscriberAsync( try { Logger.LogDebug($"Sending notification with provider {provider.Name}"); - var notifacationDataMapping = Options.NotificationDataMappings - .GetMapItemOrDefault(provider.Name, notificationInfo.Name); - if (notifacationDataMapping != null) - { - notificationInfo.Data = notifacationDataMapping.MappingFunc(notificationInfo.Data); - } + + // 2024-10-10: 框架层面应该取消通知数据转换,而是交给提供商来实现 + //var notifacationDataMapping = Options.NotificationDataMappings + // .GetMapItemOrDefault(provider.Name, notificationInfo.Name); + //if (notifacationDataMapping != null) + //{ + // notificationInfo.Data = notifacationDataMapping.MappingFunc(notificationInfo.Data); + //} + // 发布 await provider.PublishAsync(notificationInfo, subscriptionUsers); diff --git a/aspnet-core/services/LY.MicroService.Applications.Single/Properties/launchSettings.json b/aspnet-core/services/LY.MicroService.Applications.Single/Properties/launchSettings.json index 2831e6761..b9fee327d 100644 --- a/aspnet-core/services/LY.MicroService.Applications.Single/Properties/launchSettings.json +++ b/aspnet-core/services/LY.MicroService.Applications.Single/Properties/launchSettings.json @@ -14,7 +14,7 @@ "launchBrowser": false, "applicationUrl": "http://0.0.0.0:30001", "environmentVariables": { - "ASPNETCORE_ENVIRONMENT": "Development" + "ASPNETCORE_ENVIRONMENT": "Production" } } } diff --git a/aspnet-core/services/LY.MicroService.Applications.Single/appsettings.Development.json b/aspnet-core/services/LY.MicroService.Applications.Single/appsettings.Development.json index c2e64f239..8b8cd288b 100644 --- a/aspnet-core/services/LY.MicroService.Applications.Single/appsettings.Development.json +++ b/aspnet-core/services/LY.MicroService.Applications.Single/appsettings.Development.json @@ -127,6 +127,14 @@ "Configuration": "127.0.0.1,defaultDatabase=15", "InstanceName": "LINGYUN.Abp.Application" }, + "Features": { + "Validation": { + "Redis": { + "Configuration": "127.0.0.1,defaultDatabase=13", + "InstanceName": "LINGYUN.Abp.Application" + } + } + }, "AuthServer": { "UseOpenIddict": true, "Authority": "http://127.0.0.1:30001/", diff --git a/aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/BackgroundJobs/NotificationPublishJob.cs b/aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/BackgroundJobs/NotificationPublishJob.cs index 8ea47d66d..3682b05f6 100644 --- a/aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/BackgroundJobs/NotificationPublishJob.cs +++ b/aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/BackgroundJobs/NotificationPublishJob.cs @@ -1,13 +1,13 @@ using LINGYUN.Abp.Notifications; -using Microsoft.Extensions.DependencyInjection; -using Microsoft.Extensions.Options; -using System; -using System.Threading.Tasks; -using Volo.Abp.BackgroundJobs; -using Volo.Abp.DependencyInjection; - -namespace LY.MicroService.RealtimeMessage.BackgroundJobs; - +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Options; +using System; +using System.Threading.Tasks; +using Volo.Abp.BackgroundJobs; +using Volo.Abp.DependencyInjection; + +namespace LY.MicroService.RealtimeMessage.BackgroundJobs; + public class NotificationPublishJob : AsyncBackgroundJob, ITransientDependency { protected AbpNotificationsPublishOptions Options { get; } @@ -33,15 +33,9 @@ public override async Task ExecuteAsync(NotificationPublishJobArgs args) var store = scope.ServiceProvider.GetRequiredService(); var notification = await store.GetNotificationOrNullAsync(args.TenantId, args.NotificationId); notification.Data = NotificationDataSerializer.Serialize(notification.Data); - - var notifacationDataMapping = Options.NotificationDataMappings - .GetMapItemOrDefault(notification.Name, publishProvider.Name); - if (notifacationDataMapping != null) - { - notification.Data = notifacationDataMapping.MappingFunc(notification.Data); - } + await publishProvider.PublishAsync(notification, args.UserIdentifiers); } } } -} +} diff --git a/aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/EventBus/Distributed/NotificationEventHandler.cs b/aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/EventBus/Distributed/NotificationEventHandler.cs index 048e1eb78..96c338307 100644 --- a/aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/EventBus/Distributed/NotificationEventHandler.cs +++ b/aspnet-core/services/LY.MicroService.RealtimeMessage.HttpApi.Host/EventBus/Distributed/NotificationEventHandler.cs @@ -418,16 +418,6 @@ protected async Task PublishToSubscriberAsync( try { Logger.LogDebug($"Sending notification with provider {provider.Name}"); - - if (notificationInfo.Type != NotificationType.ServiceCallback) - { - var notifacationDataMapping = Options.NotificationDataMappings - .GetMapItemOrDefault(provider.Name, notificationInfo.Name); - if (notifacationDataMapping != null) - { - notificationInfo.Data = notifacationDataMapping.MappingFunc(notificationInfo.Data); - } - } // 发布 await provider.PublishAsync(notificationInfo, subscriptionUsers); diff --git a/aspnet-core/tests/LINGYUN.Abp.Notifications.Sms.Tests/LINGYUN/Abp/Notifications/Sms/AbpNotificationsSmsTestsModule.cs b/aspnet-core/tests/LINGYUN.Abp.Notifications.Sms.Tests/LINGYUN/Abp/Notifications/Sms/AbpNotificationsSmsTestsModule.cs index 09e45f183..b5fcd0b24 100644 --- a/aspnet-core/tests/LINGYUN.Abp.Notifications.Sms.Tests/LINGYUN/Abp/Notifications/Sms/AbpNotificationsSmsTestsModule.cs +++ b/aspnet-core/tests/LINGYUN.Abp.Notifications.Sms.Tests/LINGYUN/Abp/Notifications/Sms/AbpNotificationsSmsTestsModule.cs @@ -11,7 +11,7 @@ public class AbpNotificationsSmsTestsModule : AbpModule { public override void PreConfigureServices(ServiceConfigurationContext context) { - // ıĬǰ׺ + // �ı�Ĭ������ǰ׺���� PreConfigure(options => { options.TemplateParamsPrefix = "[sms-override]"; @@ -20,22 +20,9 @@ public override void PreConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context) { - // Զݴ + // �Զ������ݴ������� Configure(options => { - // ֪ͨر׼֪ͨ - options.NotificationDataMappings - .Mapping( - SmsNotificationPublishProvider.ProviderName, - NotificationsTestsNames.Test2, - data => NotificationData.ToStandardData(data)); - - // ֪ͨκδ - options.NotificationDataMappings - .Mapping( - SmsNotificationPublishProvider.ProviderName, - NotificationsTestsNames.Test3, - data => data); }); } } diff --git a/aspnet-core/tests/LINGYUN.Abp.Notifications.Sms.Tests/LINGYUN/Abp/Notifications/Sms/SmsNotificationDataMapping_Tests.cs b/aspnet-core/tests/LINGYUN.Abp.Notifications.Sms.Tests/LINGYUN/Abp/Notifications/Sms/SmsNotificationDataMapping_Tests.cs index 316f1721d..1e091c6ee 100644 --- a/aspnet-core/tests/LINGYUN.Abp.Notifications.Sms.Tests/LINGYUN/Abp/Notifications/Sms/SmsNotificationDataMapping_Tests.cs +++ b/aspnet-core/tests/LINGYUN.Abp.Notifications.Sms.Tests/LINGYUN/Abp/Notifications/Sms/SmsNotificationDataMapping_Tests.cs @@ -30,53 +30,53 @@ private void InitNotificationData(NotificationData data) [Fact] public void Mapping_Sms_Notification_Data_Test() { - var mappingSmsItem = NotificationOptions - .NotificationDataMappings - .GetMapItemOrDefault(SmsNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test1); + // var mappingSmsItem = NotificationOptions + // .NotificationDataMappings + // .GetMapItemOrDefault(SmsNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test1); - mappingSmsItem.ShouldNotBeNull(); + // mappingSmsItem.ShouldNotBeNull(); - var mappingSmsData = mappingSmsItem.MappingFunc(_notificationData); - mappingSmsData.TryGetData("phoneNumber").ShouldNotBeNull(); - mappingSmsData.TryGetData("phoneNumber").ToString().ShouldBe("13800138000"); + // var mappingSmsData = mappingSmsItem.MappingFunc(_notificationData); + // mappingSmsData.TryGetData("phoneNumber").ShouldNotBeNull(); + // mappingSmsData.TryGetData("phoneNumber").ToString().ShouldBe("13800138000"); - mappingSmsData.TryGetData("template").ShouldNotBeNull(); - mappingSmsData.TryGetData("template").ToString().ShouldBe("SM_202011250901"); + // mappingSmsData.TryGetData("template").ShouldNotBeNull(); + // mappingSmsData.TryGetData("template").ToString().ShouldBe("SM_202011250901"); - // 按照预定义规则,这条数据被丢弃 - mappingSmsData.TryGetData("otherDataKey").ShouldBeNull(); + // // 按照预定义规则,这条数据被丢弃 + // mappingSmsData.TryGetData("otherDataKey").ShouldBeNull(); } [Fact] public void Mapping_Standard_Notification_Data_Test() { - var mappingStandardItem = NotificationOptions - .NotificationDataMappings - .GetMapItemOrDefault(SmsNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test2); + // var mappingStandardItem = NotificationOptions + // .NotificationDataMappings + // .GetMapItemOrDefault(SmsNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test2); - var mappingStandardData = mappingStandardItem.MappingFunc(_notificationData); + // var mappingStandardData = mappingStandardItem.MappingFunc(_notificationData); - // 按照自定义规则,其他数据被丢弃 - mappingStandardData.TryGetData("phoneNumber").ShouldBeNull(); - mappingStandardData.TryGetData("template").ShouldBeNull(); - mappingStandardData.TryGetData("otherDataKey").ShouldBeNull(); - mappingStandardData.ExtraProperties.Count.ShouldBe(6); + // // 按照自定义规则,其他数据被丢弃 + // mappingStandardData.TryGetData("phoneNumber").ShouldBeNull(); + // mappingStandardData.TryGetData("template").ShouldBeNull(); + // mappingStandardData.TryGetData("otherDataKey").ShouldBeNull(); + // mappingStandardData.ExtraProperties.Count.ShouldBe(6); } [Fact] public void Mapping_Origin_Notification_Data_Test() { - var mappingOriginItem = NotificationOptions - .NotificationDataMappings - .GetMapItemOrDefault(SmsNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test3); + // var mappingOriginItem = NotificationOptions + // .NotificationDataMappings + // .GetMapItemOrDefault(SmsNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test3); - var mappingOriginData = mappingOriginItem.MappingFunc(_notificationData); + // var mappingOriginData = mappingOriginItem.MappingFunc(_notificationData); - // 按照自定义规则,所有数据被保留 - mappingOriginData.TryGetData(NotificationSmsOptions.TemplateParamsPrefix + "phoneNumber").ShouldNotBeNull(); - mappingOriginData.TryGetData(NotificationSmsOptions.TemplateParamsPrefix + "template").ShouldNotBeNull(); - mappingOriginData.TryGetData("otherDataKey").ShouldNotBeNull(); - mappingOriginData.ExtraProperties.Count.ShouldBe(9); + // // 按照自定义规则,所有数据被保留 + // mappingOriginData.TryGetData(NotificationSmsOptions.TemplateParamsPrefix + "phoneNumber").ShouldNotBeNull(); + // mappingOriginData.TryGetData(NotificationSmsOptions.TemplateParamsPrefix + "template").ShouldNotBeNull(); + // mappingOriginData.TryGetData("otherDataKey").ShouldNotBeNull(); + // mappingOriginData.ExtraProperties.Count.ShouldBe(9); } } } diff --git a/aspnet-core/tests/LINGYUN.Abp.Notifications.WeChat.MiniProgram.Tests/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramTestsModule.cs b/aspnet-core/tests/LINGYUN.Abp.Notifications.WeChat.MiniProgram.Tests/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramTestsModule.cs index ecdf9aa37..2ab637ec4 100644 --- a/aspnet-core/tests/LINGYUN.Abp.Notifications.WeChat.MiniProgram.Tests/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramTestsModule.cs +++ b/aspnet-core/tests/LINGYUN.Abp.Notifications.WeChat.MiniProgram.Tests/LINGYUN/Abp/Notifications/WeChat/MiniProgram/AbpNotificationsWeChatMiniProgramTestsModule.cs @@ -19,22 +19,9 @@ public override void PreConfigureServices(ServiceConfigurationContext context) public override void ConfigureServices(ServiceConfigurationContext context) { - // Զݴ + // �Զ������ݴ������� Configure(options => { - // ֪ͨر׼֪ͨ - options.NotificationDataMappings - .Mapping( - WeChatMiniProgramNotificationPublishProvider.ProviderName, - NotificationsTestsNames.Test2, - data => NotificationData.ToStandardData(data)); - - // ֪ͨκδ - options.NotificationDataMappings - .Mapping( - WeChatMiniProgramNotificationPublishProvider.ProviderName, - NotificationsTestsNames.Test3, - data => data); }); } } diff --git a/aspnet-core/tests/LINGYUN.Abp.Notifications.WeChat.MiniProgram.Tests/LINGYUN/Abp/Notifications/WeChat/WeChatMiniProgramNotificationDataMapping_Tests.cs b/aspnet-core/tests/LINGYUN.Abp.Notifications.WeChat.MiniProgram.Tests/LINGYUN/Abp/Notifications/WeChat/WeChatMiniProgramNotificationDataMapping_Tests.cs index cfc7f8658..d34ab28c9 100644 --- a/aspnet-core/tests/LINGYUN.Abp.Notifications.WeChat.MiniProgram.Tests/LINGYUN/Abp/Notifications/WeChat/WeChatMiniProgramNotificationDataMapping_Tests.cs +++ b/aspnet-core/tests/LINGYUN.Abp.Notifications.WeChat.MiniProgram.Tests/LINGYUN/Abp/Notifications/WeChat/WeChatMiniProgramNotificationDataMapping_Tests.cs @@ -30,48 +30,48 @@ private void InitNotificationData(NotificationData data) [Fact] public void Mapping_WeChatMiniProgram_Notification_Data_Test() { - var mappingOpenIdItem = NotificationsPublishOptions - .NotificationDataMappings - .GetMapItemOrDefault(WeChatMiniProgramNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test1); + // var mappingOpenIdItem = NotificationsPublishOptions + // .NotificationDataMappings + // .GetMapItemOrDefault(WeChatMiniProgramNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test1); - mappingOpenIdItem.ShouldNotBeNull(); + // mappingOpenIdItem.ShouldNotBeNull(); - var mappingOpenIdData = mappingOpenIdItem.MappingFunc(_notificationData); - mappingOpenIdData.TryGetData("openid").ShouldNotBeNull(); - mappingOpenIdData.TryGetData("openid").ToString().ShouldBe("TEST"); + // var mappingOpenIdData = mappingOpenIdItem.MappingFunc(_notificationData); + // mappingOpenIdData.TryGetData("openid").ShouldNotBeNull(); + // mappingOpenIdData.TryGetData("openid").ToString().ShouldBe("TEST"); - // 按照预定义规则,这条数据被丢弃 - mappingOpenIdData.TryGetData("otherDataKey").ShouldBeNull(); + // // 按照预定义规则,这条数据被丢弃 + // mappingOpenIdData.TryGetData("otherDataKey").ShouldBeNull(); } [Fact] public void Mapping_Standard_Notification_Data_Test() { - var mappingStandardItem = NotificationsPublishOptions - .NotificationDataMappings - .GetMapItemOrDefault(WeChatMiniProgramNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test2); + // var mappingStandardItem = NotificationsPublishOptions + // .NotificationDataMappings + // .GetMapItemOrDefault(WeChatMiniProgramNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test2); - var mappingStandardData = mappingStandardItem.MappingFunc(_notificationData); + // var mappingStandardData = mappingStandardItem.MappingFunc(_notificationData); - // 按照自定义规则,其他数据被丢弃 - mappingStandardData.TryGetData("openid").ShouldBeNull(); - mappingStandardData.TryGetData("otherDataKey").ShouldBeNull(); - mappingStandardData.ExtraProperties.Count.ShouldBe(6); + // // 按照自定义规则,其他数据被丢弃 + // mappingStandardData.TryGetData("openid").ShouldBeNull(); + // mappingStandardData.TryGetData("otherDataKey").ShouldBeNull(); + // mappingStandardData.ExtraProperties.Count.ShouldBe(6); } [Fact] public void Mapping_Origin_Notification_Data_Test() { - var mappingOriginItem = NotificationsPublishOptions - .NotificationDataMappings - .GetMapItemOrDefault(WeChatMiniProgramNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test3); + // var mappingOriginItem = NotificationsPublishOptions + // .NotificationDataMappings + // .GetMapItemOrDefault(WeChatMiniProgramNotificationPublishProvider.ProviderName, NotificationsTestsNames.Test3); - var mappingOriginData = mappingOriginItem.MappingFunc(_notificationData); + // var mappingOriginData = mappingOriginItem.MappingFunc(_notificationData); - // 按照自定义规则,所有数据被保留 - mappingOriginData.TryGetData(NotificationWeChatMiniProgramOptions.DefaultMsgPrefix + "openid").ShouldNotBeNull(); - mappingOriginData.TryGetData("otherDataKey").ShouldNotBeNull(); - mappingOriginData.ExtraProperties.Count.ShouldBe(8); + // // 按照自定义规则,所有数据被保留 + // mappingOriginData.TryGetData(NotificationWeChatMiniProgramOptions.DefaultMsgPrefix + "openid").ShouldNotBeNull(); + // mappingOriginData.TryGetData("otherDataKey").ShouldNotBeNull(); + // mappingOriginData.ExtraProperties.Count.ShouldBe(8); } } }