diff --git a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionContext.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionContext.cs index 94353f520f..11888b47c6 100644 --- a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionContext.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionContext.cs @@ -1,4 +1,5 @@ using JetBrains.Annotations; +using Volo.Abp.Localization; namespace Volo.Abp.Authorization.Permissions { @@ -6,6 +7,6 @@ namespace Volo.Abp.Authorization.Permissions { //TODO: Add Get methods to find and modify a permission or group. - PermissionGroupDefinition AddGroup([NotNull] string name); + PermissionGroupDefinition AddGroup([NotNull] string name, ILocalizableString displayName = null); } } \ No newline at end of file diff --git a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinition.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinition.cs index 082cfd5622..5b48e6101b 100644 --- a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinition.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinition.cs @@ -18,7 +18,12 @@ namespace Volo.Abp.Authorization.Permissions /// public PermissionDefinition Parent { get; private set; } - public ILocalizableString DisplayName { get; set; } + public ILocalizableString DisplayName + { + get => _displayName; + set => _displayName = Check.NotNull(value, nameof(value)); + } + private ILocalizableString _displayName; public IReadOnlyList Children => _children.ToImmutableList(); private readonly List _children; diff --git a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionContext.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionContext.cs index caf00580ae..68ce925c0d 100644 --- a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionContext.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionContext.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using Volo.Abp.Localization; namespace Volo.Abp.Authorization.Permissions { @@ -11,7 +12,7 @@ namespace Volo.Abp.Authorization.Permissions Groups = new Dictionary(); } - public virtual PermissionGroupDefinition AddGroup(string name) + public virtual PermissionGroupDefinition AddGroup(string name, ILocalizableString displayName = null) { Check.NotNull(name, nameof(name)); @@ -20,7 +21,7 @@ namespace Volo.Abp.Authorization.Permissions throw new AbpException($"There is already an existing permission group with name: {name}"); } - return Groups[name] = new PermissionGroupDefinition(name); + return Groups[name] = new PermissionGroupDefinition(name, displayName); } } } \ No newline at end of file diff --git a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGroupDefinition.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGroupDefinition.cs index ca8a61899c..a52bd4f601 100644 --- a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGroupDefinition.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGroupDefinition.cs @@ -13,6 +13,13 @@ namespace Volo.Abp.Authorization.Permissions public Dictionary Properties { get; } + public ILocalizableString DisplayName + { + get => _displayName; + set => _displayName = Check.NotNull(value, nameof(value)); + } + private ILocalizableString _displayName; + public IReadOnlyList Permissions => _permissions.ToImmutableList(); private readonly List _permissions; @@ -30,9 +37,10 @@ namespace Volo.Abp.Authorization.Permissions set => Properties[name] = value; } - protected internal PermissionGroupDefinition(string name) + protected internal PermissionGroupDefinition(string name, ILocalizableString displayName = null) { Name = name; + DisplayName = displayName ?? new FixedLocalizableString(Name); Properties = new Dictionary(); _permissions = new List();