/// <summary> /// 根据类型获得权限信息 /// </summary> /// <param name="type">权限类型</param> /// <returns></returns> public List <PermissionsModel> GetPermissionsInfoByType(PermissionsTypesEnum type) { List <T_Permissions> perInfos = _dal.GetPermissionsInfoByTypeAndEnable(type, null); List <PermissionsModel> listM = PermissionsModel.GetList(perInfos, null); return(listM); }
/// <summary> /// 根据类型和启用标识获得顶层权限信息 /// </summary> /// <param name="type">权限类型</param> /// <param name="ifEnable">启用标识</param> /// <returns>所有权限信息</returns> public List <T_Permissions> GetPermissionsInfoByTypeAndEnable(PermissionsTypesEnum type, bool?ifEnable) { Expression <Func <T_Permissions, bool> > expression = m => m.Type == (byte)type && !m.IfDelete && m.FK_ParentID == null; if (ifEnable != null) { expression = LinqManager.And(expression, m => m.IfEnable == ifEnable.Value); } List <T_Permissions> listM = _DB.T_Permissions.Where(expression.Compile()).OrderByDescending(m => m.Ranks).ToList(); return(listM); }
public MResultModel GetPermissionsInfoByType(PermissionsTypesEnum Type) { List <PermissionsModel> listM = _bll.GetPermissionsInfoByType(Type); return(MResultModel <List <PermissionsModel> > .GetSuccessResultM(listM, "查询成功")); }
/// <summary> /// 根据类型和拥有权限获得权限组信息 /// </summary> /// <param name="type">权限类型</param> /// <param name="hasIDs">拥有权限</param> /// <returns>权限信息</returns> private PermissionsGroupModel GetEnablePermissionsInfoByUserGroupIDAndTypeAndHsID(PermissionsTypesEnum type, Guid[] hasIDs, PermissionsModelModeEnum mode) { List <T_Permissions> perInfos = _dal.GetPermissionsInfoByTypeAndEnable(type, true); PermissionsGroupModel tempM = new PermissionsGroupModel { Type = type, Items = PermissionsModel.GetList(perInfos, true, hasIDs, mode) }; return(tempM); }
/// <summary> /// 根据用户组ID和类型获得所拥有启用的权限信息 /// </summary> /// <param name="userGroupID">用户组ID</param> /// <param name="type">权限类型</param> /// <returns>权限信息</returns> /// <exception cref="ArgumentException"></exception> public PermissionsGroupModel GetHasEnablePermissionsInfoByUserGroupID(Guid[] userGroupIDs, PermissionsTypesEnum type) { List <Guid> ids = new List <Guid>(); foreach (Guid item in userGroupIDs) { ids.AddRange(GetHasPermissionsIDsByUserGroupID(item)); } return(GetEnablePermissionsInfoByUserGroupIDAndTypeAndHsID(type, ids.Distinct().ToArray(), PermissionsModelModeEnum.Has)); }