/// <summary> /// 判断这个用户是否有某个权限 /// </summary> /// <param name="permission"></param> /// <returns></returns> public bool?HasPermission(string[] permission) { bool?ret = null; var permissions = this.UserToPermission; if (permissions != null) { var hold = permissions.Select(s => s.Permission).ToList(); ret = PermissionUtil.HasPermissionIn(hold, permission); } if (ret != null) { return(ret); } var groupToUser = this.GroupToUser; foreach (var group in groupToUser) { var result = group.Group.HasPermission(permission); if (result == false) { return(false); } if (result == true) { ret = true; } } return(ret); }
/// <summary> /// 判断这个用户组是否有某个权限 /// </summary> /// <param name="permission"></param> /// <returns></returns> public bool?HasPermission(string[] permission) { // 获取本用户组拥有的权限 var permissions = this.GroupToPermission; if (permissions == null) { return(null); } List <string> hold = permissions.Select(groupToPermission => groupToPermission.Permission).ToList(); hold.Sort(); return(PermissionUtil.HasPermissionIn(hold, permission)); }