/// <summary> /// 根据状态为True的菜单信息 /// </summary> /// <returns></returns> public async Task <IEnumerable <TreeEntity> > GetAllMenu() { var MenuAllList = await _systemMenuRepository.GetAllMenu(); MenuAllList = MenuAllList.Select(m => { m.url = ""; m.pId = (Guid.Parse(m.pId.ToString()).IsEmptyGuid()) ? null : m.pId; m.isParent = MenuAllList.Select(m1 => m1.pId).Contains(m.id); return(m); }).ToList(); return(MenuAllList); }
/// <summary> /// 根据用户id获取具有权限的菜单 /// </summary> /// <param name="userId"></param> /// <returns></returns> public async Task <IEnumerable <TreeEntity> > GetSystemPermissionMenuByUserId(Guid userId) { string cacheKey = USER_MENU_CACHE_KEY + userId; IList <TreeEntity> treeEntities = this._cache.Get <List <TreeEntity> >(cacheKey); if (treeEntities == null) { var userInfo = await _userRepository.GetAsync(userId, false); //判断当前用户是否是超级管理员:若是超级管理员则显示所有菜单 if (userInfo != null) { //如果是超级管理员 if (userInfo.IsAdmin) { treeEntities = (await _menuRepository.GetAllMenu(true, true)).ToList(); return(treeEntities); } treeEntities = (await _systemPermissionDapperRepository.GetSystemPermissionMenuByUserId(userInfo.Id.ToString())).ToList(); } this._cache.Set(cacheKey, treeEntities); } return(treeEntities); }
/// <summary> /// 根据用户Id获取用户具有的菜单权限 /// </summary> /// <param name="userId"></param> /// <returns></returns> public async Task <IEnumerable <TreeEntity> > GetSystemPermissionMenuByUserId(Guid userId) { IList <TreeEntity> treeEntities = new List <TreeEntity>(); //判断该用户是否为超级管理员:若是超级管理员则显示所有菜单 var userInfo = await _userInfoRepository.GetByIdAsync(userId); if (userInfo != null) { //如果是超级管理员 if (userInfo.IsAdmin) { treeEntities = (await _menuRepository.GetAllMenu(true, true)).ToList(); return(treeEntities); } treeEntities = (await _permissionRepository.GetSystemPermissionMenuByUserId(userId)).ToList(); } return(treeEntities); }
/// <summary> /// 根据状态为True的菜单信息 /// </summary> /// <returns></returns> public async Task <IEnumerable <TreeEntity> > GetAllMenu() { return(await _menuRepository.GetAllMenu()); }