|
@@ -1,6 +1,7 @@
|
|
|
using BizService;
|
|
|
using BlankApp1.Models;
|
|
|
using Model.Entities;
|
|
|
+using PLCTool.Common;
|
|
|
using Prism.Regions;
|
|
|
using SqlSugar;
|
|
|
using System;
|
|
@@ -19,18 +20,29 @@ namespace BlankApp1.ViewModels
|
|
|
public List<MenuItemModel> Menus { get; set; } = new List<MenuItemModel>();
|
|
|
|
|
|
// 列表,没有树型结构
|
|
|
- private List<Model.Entities.Menu> origMenus = null;
|
|
|
+ private List<Model.Entities.Menu> origMenus = new List<Model.Entities.Menu>();
|
|
|
private string basePath = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Images");
|
|
|
|
|
|
IRegionManager _regionManager;
|
|
|
- public TreeMenuViewModel(IRegionManager regionManager, IMenuService menuService)
|
|
|
+ public TreeMenuViewModel(IRegionManager regionManager, IMenuService menuService,IRoleMenuService iRoleMenuService)
|
|
|
{
|
|
|
_regionManager = regionManager;
|
|
|
// 需要获取菜单数据
|
|
|
try
|
|
|
{
|
|
|
- origMenus = menuService.QueryList();
|
|
|
+ //查找这个角色的菜单
|
|
|
+ var allMenus = menuService.QueryList();
|
|
|
|
|
|
+ var roleMenus= iRoleMenuService.FindAllByRoleId(Appsession.RoleId);
|
|
|
+ foreach(var menu in roleMenus)
|
|
|
+ {
|
|
|
+ var findMenu= allMenus.FirstOrDefault(x=>x.MenuId== menu.MenuId);
|
|
|
+ if(findMenu != null)
|
|
|
+ {
|
|
|
+ origMenus.Add(findMenu);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
this.FillMenus(Menus, 0);
|
|
|
}
|
|
|
catch(Exception ex)
|
|
@@ -68,6 +80,7 @@ namespace BlankApp1.ViewModels
|
|
|
private void FillMenus(List<MenuItemModel> menus, int parentId)
|
|
|
{
|
|
|
var sub = origMenus.Where(m => m.ParentId == parentId).OrderBy(o => o.Index);
|
|
|
+ //查找roleID对应的菜单
|
|
|
|
|
|
if (sub.Count() > 0)
|
|
|
{
|