Browse Source

Use RequiredPermissionName for all ApplicationMenuItem of Blazor

pull/7906/head
liangshiwei 6 years ago
parent
commit
1ac196427c
  1. 38
      modules/identity/src/Volo.Abp.Identity.Blazor/AbpIdentityWebMainMenuContributor.cs
  2. 18
      modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Navigation/TenantManagementBlazorMenuContributor.cs

38
modules/identity/src/Volo.Abp.Identity.Blazor/AbpIdentityWebMainMenuContributor.cs

@ -6,35 +6,35 @@ namespace Volo.Abp.Identity.Blazor
{ {
public class AbpIdentityWebMainMenuContributor : IMenuContributor public class AbpIdentityWebMainMenuContributor : IMenuContributor
{ {
public virtual async Task ConfigureMenuAsync(MenuConfigurationContext context) public virtual Task ConfigureMenuAsync(MenuConfigurationContext context)
{ {
if (context.Menu.Name != StandardMenus.Main) if (context.Menu.Name != StandardMenus.Main)
{ {
return; return Task.CompletedTask;
} }
var hasRolePermission = await context.IsGrantedAsync(IdentityPermissions.Roles.Default); var administrationMenu = context.Menu.GetAdministration();
var hasUserPermission = await context.IsGrantedAsync(IdentityPermissions.Users.Default);
if (hasRolePermission || hasUserPermission) var l = context.GetLocalizer<IdentityResource>();
{
var administrationMenu = context.Menu.GetAdministration();
var l = context.GetLocalizer<IdentityResource>(); var identityMenuItem = new ApplicationMenuItem(IdentityMenuNames.GroupName, l["Menu:IdentityManagement"],
icon: "far fa-id-card");
administrationMenu.AddItem(identityMenuItem);
var identityMenuItem = new ApplicationMenuItem(IdentityMenuNames.GroupName, l["Menu:IdentityManagement"], icon: "far fa-id-card"); identityMenuItem.AddItem(new ApplicationMenuItem(
administrationMenu.AddItem(identityMenuItem); IdentityMenuNames.Roles,
l["Roles"],
url: "identity/roles",
requiredPermissionName: IdentityPermissions.Roles.Default));
if (hasRolePermission)
{
identityMenuItem.AddItem(new ApplicationMenuItem(IdentityMenuNames.Roles, l["Roles"], url: "identity/roles"));
}
if (hasUserPermission) identityMenuItem.AddItem(new ApplicationMenuItem(
{ IdentityMenuNames.Users,
identityMenuItem.AddItem(new ApplicationMenuItem(IdentityMenuNames.Users, l["Users"], url: "identity/users")); l["Users"],
} url: "identity/users",
} requiredPermissionName: IdentityPermissions.Users.Default));
return Task.CompletedTask;
} }
} }
} }

18
modules/tenant-management/src/Volo.Abp.TenantManagement.Blazor/Navigation/TenantManagementBlazorMenuContributor.cs

@ -6,24 +6,28 @@ namespace Volo.Abp.TenantManagement.Blazor.Navigation
{ {
public class TenantManagementBlazorMenuContributor : IMenuContributor public class TenantManagementBlazorMenuContributor : IMenuContributor
{ {
public virtual async Task ConfigureMenuAsync(MenuConfigurationContext context) public virtual Task ConfigureMenuAsync(MenuConfigurationContext context)
{ {
if (context.Menu.Name != StandardMenus.Main) if (context.Menu.Name != StandardMenus.Main)
{ {
return; return Task.CompletedTask;
} }
var administrationMenu = context.Menu.GetAdministration(); var administrationMenu = context.Menu.GetAdministration();
var l = context.GetLocalizer<AbpTenantManagementResource>(); var l = context.GetLocalizer<AbpTenantManagementResource>();
var tenantManagementMenuItem = new ApplicationMenuItem(TenantManagementMenuNames.GroupName, l["Menu:TenantManagement"], icon: "fa fa-users"); var tenantManagementMenuItem = new ApplicationMenuItem(TenantManagementMenuNames.GroupName,
l["Menu:TenantManagement"], icon: "fa fa-users");
administrationMenu.AddItem(tenantManagementMenuItem); administrationMenu.AddItem(tenantManagementMenuItem);
if (await context.IsGrantedAsync(TenantManagementPermissions.Tenants.Default)) tenantManagementMenuItem.AddItem(new ApplicationMenuItem(
{ TenantManagementMenuNames.Tenants,
tenantManagementMenuItem.AddItem(new ApplicationMenuItem(TenantManagementMenuNames.Tenants, l["Tenants"], url: "tenant-management/tenants")); l["Tenants"],
} url: "tenant-management/tenants",
requiredPermissionName: TenantManagementPermissions.Tenants.Default));
return Task.CompletedTask;
} }
} }
} }

Loading…
Cancel
Save