Browse Source

Merge pull request #7906 from abpframework/liangshiwei/Apply-RequiredPermissionName

Use RequiredPermissionName for all ApplicationMenuItem of Blazor
pull/7907/head
maliming 6 years ago
committed by GitHub
parent
commit
d5beb3ddd3
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  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 virtual async Task ConfigureMenuAsync(MenuConfigurationContext context)
public virtual Task ConfigureMenuAsync(MenuConfigurationContext context)
{
if (context.Menu.Name != StandardMenus.Main)
{
return;
return Task.CompletedTask;
}
var hasRolePermission = await context.IsGrantedAsync(IdentityPermissions.Roles.Default);
var hasUserPermission = await context.IsGrantedAsync(IdentityPermissions.Users.Default);
var administrationMenu = context.Menu.GetAdministration();
if (hasRolePermission || hasUserPermission)
{
var administrationMenu = context.Menu.GetAdministration();
var l = context.GetLocalizer<IdentityResource>();
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");
administrationMenu.AddItem(identityMenuItem);
identityMenuItem.AddItem(new ApplicationMenuItem(
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, l["Users"], url: "identity/users"));
}
}
identityMenuItem.AddItem(new ApplicationMenuItem(
IdentityMenuNames.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 virtual async Task ConfigureMenuAsync(MenuConfigurationContext context)
public virtual Task ConfigureMenuAsync(MenuConfigurationContext context)
{
if (context.Menu.Name != StandardMenus.Main)
{
return;
return Task.CompletedTask;
}
var administrationMenu = context.Menu.GetAdministration();
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);
if (await context.IsGrantedAsync(TenantManagementPermissions.Tenants.Default))
{
tenantManagementMenuItem.AddItem(new ApplicationMenuItem(TenantManagementMenuNames.Tenants, l["Tenants"], url: "tenant-management/tenants"));
}
tenantManagementMenuItem.AddItem(new ApplicationMenuItem(
TenantManagementMenuNames.Tenants,
l["Tenants"],
url: "tenant-management/tenants",
requiredPermissionName: TenantManagementPermissions.Tenants.Default));
return Task.CompletedTask;
}
}
}

Loading…
Cancel
Save