/// <summary> /// 查看此角色是否被授予此权限 /// </summary> public bool Permit(PREPermission right) { if (_myRights == "all") { return(true); } else { if (_rights == null) { _rights = new List <PREPermission>(); if (!string.IsNullOrEmpty(_myRights)) { foreach (string str in _myRights.Split(',')) { int i; if (int.TryParse(str, out i)) { _rights.Add((PREPermission)i); } } } } return(_rights.Exists(r => r == right)); } }
/// <summary> /// 查看此操作员是否被授予此权限 /// </summary> public bool Permit(PREPermission right) { if (this.Role != null) { return(Role.Permit(right)); } else { return(false); } }
public static string GetDescription(PREPermission p) { switch (p) { case PREPermission.SystemSetting: return("系统设置"); case PREPermission.PreferentialCore: return("优惠录入"); case PREPermission.PreferentialCancel: return("优惠取消"); case PREPermission.ReadWorkstations: return("查看工作站信息"); case PREPermission.EditWorkstations: return("修改工作站信息"); case PREPermission.ReadBusiness: return("查看商家信息"); case PREPermission.EditBusiness: return("修改商家信息"); case PREPermission.OperatorManager: return("操作员管理"); case PREPermission.RoleManager: return("角色管理"); case PREPermission.PreferentialReport: return("优惠记录"); default: return(string.Empty); } }
public void Init() { this.ImageList = images; this.CheckBoxes = true; this.Nodes.Clear(); TreeNode root = new TreeNode(RootText, 0, 0); this.Nodes.Add(root); List <TreeNode> catalogs = new List <TreeNode>(); Type operatorEnum = typeof(PREPermission); FieldInfo[] fields = operatorEnum.GetFields(); foreach (FieldInfo field in fields) { if (field.FieldType.IsEnum) { object[] attrs = field.GetCustomAttributes(false); foreach (object attr in attrs) { if (attr is OperatorRightAttribute) { OperatorRightAttribute right = attr as OperatorRightAttribute; PREPermission permission = (PREPermission)field.GetValue(null); //if (GlobalVariables.IsNETParkAndOffLie) //{ // //写卡模式,不显示的权限 // if (permission == Permission.RemoteReadCard) // { // continue; // } //} //else //{ // //其他模式,不显示的权限 // if (permission == Permission.DownloadAllCards) // { // continue; // } //} string catalog = Ralid.Park.BusinessModel.Resouce.PermissionDescription.GetPREDescription(right.Catalog); TreeNode catalogNode = catalogs.Find(t => t.Text == catalog); if (catalogNode == null) { catalogNode = new TreeNode(catalog, 0, 0); root.Nodes.Add(catalogNode); catalogs.Add(catalogNode); } string temp = Ralid.Park.BusinessModel.Resouce.PermissionDescription.GetDescription(permission); TreeNode rightNode = new TreeNode(temp, 1, 1); rightNode.Tag = permission; catalogNode.Nodes.Add(rightNode); _rightNodes.Add(rightNode); } } } } root.Expand(); this.AfterCheck += Node_Checked; }