You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
71 lines
2.3 KiB
71 lines
2.3 KiB
using System.Threading.Tasks;
|
|
using Faster.Zheng.Winin.Permissions;
|
|
using Faster.Zheng.Winin.Localization;
|
|
using Faster.Zheng.Winin.MultiTenancy;
|
|
using Volo.Abp.Identity.Web.Navigation;
|
|
using Volo.Abp.SettingManagement.Web.Navigation;
|
|
using Volo.Abp.TenantManagement.Web.Navigation;
|
|
using Volo.Abp.UI.Navigation;
|
|
|
|
namespace Faster.Zheng.Winin.Web.Menus;
|
|
|
|
public class WininMenuContributor : IMenuContributor
|
|
{
|
|
public async Task ConfigureMenuAsync(MenuConfigurationContext context)
|
|
{
|
|
if (context.Menu.Name == StandardMenus.Main)
|
|
{
|
|
await ConfigureMainMenuAsync(context);
|
|
}
|
|
}
|
|
|
|
private async Task ConfigureMainMenuAsync(MenuConfigurationContext context)
|
|
{
|
|
var administration = context.Menu.GetAdministration();
|
|
var l = context.GetLocalizer<WininResource>();
|
|
|
|
context.Menu.Items.Insert(
|
|
0,
|
|
new ApplicationMenuItem(
|
|
WininMenus.Home,
|
|
l["Menu:Home"],
|
|
"~/",
|
|
icon: "fas fa-home",
|
|
order: 0
|
|
)
|
|
);
|
|
|
|
if (MultiTenancyConsts.IsEnabled)
|
|
{
|
|
administration.SetSubItemOrder(TenantManagementMenuNames.GroupName, 1);
|
|
}
|
|
else
|
|
{
|
|
administration.TryRemoveMenuItem(TenantManagementMenuNames.GroupName);
|
|
}
|
|
|
|
administration.SetSubItemOrder(IdentityMenuNames.GroupName, 2);
|
|
administration.SetSubItemOrder(SettingManagementMenuNames.GroupName, 3);
|
|
|
|
if (await context.IsGrantedAsync(WininPermissions.TestSchool.Default))
|
|
{
|
|
context.Menu.AddItem(
|
|
new ApplicationMenuItem(WininMenus.TestSchool, l["Menu:TestSchool"], "/AppBusiness/TestSchool/TestSchool")
|
|
);
|
|
}
|
|
if (await context.IsGrantedAsync(WininPermissions.TestStudentDetail.Default))
|
|
{
|
|
context.Menu.AddItem(
|
|
new ApplicationMenuItem(WininMenus.TestStudentDetail, l["Menu:TestStudentDetail"], "/AppBusiness/TestSchool/TestStudentDetail")
|
|
);
|
|
}
|
|
|
|
//return Task.CompletedTask;
|
|
if (await context.IsGrantedAsync(WininPermissions.DemoCar.Default))
|
|
{
|
|
context.Menu.AddItem(
|
|
new ApplicationMenuItem(WininMenus.DemoCar, l["Menu:DemoCar"], "/AppBusiness/DemoCar/DemoCar")
|
|
);
|
|
}
|
|
}
|
|
}
|
|
|