diff --git a/aspnet-core/modules/feature-management/LINGYUN.Abp.FeatureManagement.Application/LINGYUN/Abp/FeatureManagement/Definitions/FeatureDefinitionAppService.cs b/aspnet-core/modules/feature-management/LINGYUN.Abp.FeatureManagement.Application/LINGYUN/Abp/FeatureManagement/Definitions/FeatureDefinitionAppService.cs index fa07c7ad2..3fa0cdaa9 100644 --- a/aspnet-core/modules/feature-management/LINGYUN.Abp.FeatureManagement.Application/LINGYUN/Abp/FeatureManagement/Definitions/FeatureDefinitionAppService.cs +++ b/aspnet-core/modules/feature-management/LINGYUN.Abp.FeatureManagement.Application/LINGYUN/Abp/FeatureManagement/Definitions/FeatureDefinitionAppService.cs @@ -11,6 +11,7 @@ using Volo.Abp; using Volo.Abp.Application.Dtos; using Volo.Abp.Data; using Volo.Abp.Domain.Repositories; +using Volo.Abp.EventBus.Local; using Volo.Abp.FeatureManagement; using Volo.Abp.Features; using Volo.Abp.Validation; @@ -20,6 +21,7 @@ namespace LINGYUN.Abp.FeatureManagement.Definitions; [Authorize(FeatureManagementPermissionNames.Definition.Default)] public class FeatureDefinitionAppService : FeatureManagementAppServiceBase, IFeatureDefinitionAppService { + private readonly ILocalEventBus _eventBus; private readonly StringValueTypeSerializer _stringValueTypeSerializer; private readonly IFeatureValueProviderManager _featureValueProviderManager; private readonly IFeatureDefinitionRecordRepository _definitionRepository; @@ -27,12 +29,14 @@ public class FeatureDefinitionAppService : FeatureManagementAppServiceBase, IFea private readonly IRepository _groupDefinitionBasicRepository; public FeatureDefinitionAppService( + ILocalEventBus eventBus, StringValueTypeSerializer stringValueTypeSerializer, IFeatureValueProviderManager featureValueProviderManager, IFeatureDefinitionRecordRepository definitionRepository, IRepository definitionBasicRepository, IRepository groupDefinitionBasicRepository) { + _eventBus = eventBus; _stringValueTypeSerializer = stringValueTypeSerializer; _featureValueProviderManager = featureValueProviderManager; _definitionRepository = definitionRepository; @@ -89,6 +93,8 @@ public class FeatureDefinitionAppService : FeatureManagementAppServiceBase, IFea await CurrentUnitOfWork!.SaveChangesAsync(); + await _eventBus.PublishAsync(new StaticFeatureDefinitionChangedEvent()); + return DefinitionRecordToDto(definitionRecord); } @@ -104,6 +110,8 @@ public class FeatureDefinitionAppService : FeatureManagementAppServiceBase, IFea await _definitionRepository.DeleteAsync(definitionRecord); await CurrentUnitOfWork!.SaveChangesAsync(); + + await _eventBus.PublishAsync(new StaticFeatureDefinitionChangedEvent()); } public async virtual Task GetAsync(string name) @@ -142,6 +150,8 @@ public class FeatureDefinitionAppService : FeatureManagementAppServiceBase, IFea await CurrentUnitOfWork!.SaveChangesAsync(); + await _eventBus.PublishAsync(new StaticFeatureDefinitionChangedEvent()); + return DefinitionRecordToDto(definitionRecord); } diff --git a/aspnet-core/modules/feature-management/LINGYUN.Abp.FeatureManagement.Application/LINGYUN/Abp/FeatureManagement/Definitions/FeatureGroupDefinitionAppService.cs b/aspnet-core/modules/feature-management/LINGYUN.Abp.FeatureManagement.Application/LINGYUN/Abp/FeatureManagement/Definitions/FeatureGroupDefinitionAppService.cs index d5cb16b55..88787d877 100644 --- a/aspnet-core/modules/feature-management/LINGYUN.Abp.FeatureManagement.Application/LINGYUN/Abp/FeatureManagement/Definitions/FeatureGroupDefinitionAppService.cs +++ b/aspnet-core/modules/feature-management/LINGYUN.Abp.FeatureManagement.Application/LINGYUN/Abp/FeatureManagement/Definitions/FeatureGroupDefinitionAppService.cs @@ -10,20 +10,25 @@ using Volo.Abp; using Volo.Abp.Application.Dtos; using Volo.Abp.Data; using Volo.Abp.Domain.Repositories; +using Volo.Abp.EventBus.Local; using Volo.Abp.FeatureManagement; +using Volo.Abp.Features; namespace LINGYUN.Abp.FeatureManagement.Definitions; [Authorize(FeatureManagementPermissionNames.GroupDefinition.Default)] public class FeatureGroupDefinitionAppService : FeatureManagementAppServiceBase, IFeatureGroupDefinitionAppService { + private readonly ILocalEventBus _eventBus; private readonly IFeatureGroupDefinitionRecordRepository _groupDefinitionRepository; private readonly IRepository _groupDefinitionBasicRepository; public FeatureGroupDefinitionAppService( + ILocalEventBus eventBus, IFeatureGroupDefinitionRecordRepository groupDefinitionRepository, IRepository groupDefinitionBasicRepository) { + _eventBus = eventBus; _groupDefinitionRepository = groupDefinitionRepository; _groupDefinitionBasicRepository = groupDefinitionBasicRepository; } @@ -51,6 +56,8 @@ public class FeatureGroupDefinitionAppService : FeatureManagementAppServiceBase, await CurrentUnitOfWork!.SaveChangesAsync(); + await _eventBus.PublishAsync(new StaticFeatureDefinitionChangedEvent()); + return GroupDefinitionRecordToDto(groupDefinitionRecord); } @@ -66,6 +73,8 @@ public class FeatureGroupDefinitionAppService : FeatureManagementAppServiceBase, await _groupDefinitionRepository.DeleteAsync(groupDefinitionRecord); await CurrentUnitOfWork!.SaveChangesAsync(); + + await _eventBus.PublishAsync(new StaticFeatureDefinitionChangedEvent()); } public async virtual Task GetAsync(string name) @@ -106,6 +115,8 @@ public class FeatureGroupDefinitionAppService : FeatureManagementAppServiceBase, await CurrentUnitOfWork!.SaveChangesAsync(); + await _eventBus.PublishAsync(new StaticFeatureDefinitionChangedEvent()); + return GroupDefinitionRecordToDto(groupDefinitionRecord); }