private void btnOK_Click(object sender, EventArgs e) { foreach (DataGridViewRow item in this.dgvAccess.Rows) { if (item.Tag is ControlAccess) { ControlAccess access = item.Tag as ControlAccess; RoleEnums roleLevel = RoleEnums.Operator; if ((bool)item.Cells[1].Value) { roleLevel = RoleEnums.Operator; } else if ((bool)item.Cells[2].Value) { roleLevel = RoleEnums.Technician; } else if ((bool)item.Cells[3].Value) { roleLevel = RoleEnums.Supervisor; } access.RoleLevel = roleLevel; } } MsgCenter.Broadcast(MsgConstants.MODIFY_ACCESS, this, null); AccessControlMgr.Instance.Save(); }
void RefreshPermission() { lstPermissionEnum = new List <QcPermissionEnum>(); RoleEnums.ForEach(r => { r.PermissionEnums.ForEach(p => { if (lstPermissionEnum.Contains(p) == false) { lstPermissionEnum.Add(p); } } ); }); }
public ControlAccess Add(List <string> names, RoleEnums roleLevel) { if (names == null) { return(this); } foreach (var item in names) { AccessMap access = this.Controls.Find(p => p.ControlName == item); if (access == null) { this.Controls.Add(new AccessMap() { ControlName = item, RoleLevel = roleLevel }); } } return(this); }
void Messagner_DataUpdate(object sender, QcMessagerDataUpdateEventArg e) { if (e.Node.TableName == "QC_USE_ROLE") { var qup = e.Node as QcRole; if (e.Node is QcNewNode) { qup = new QcRole(e.Node.GetRow()); } var qre = QcRoleEnum.RolesEnums.FirstOrDefault( t => t.RoleCode == qup.RoleCode); if (qre != null) { qre.InitPermission(); } if (qup.UserID == User.UserID) { this.InitRoles(); } } else if (e.Node.TableName == "QC_USE_PERMISSION") { var qp = e.Node as QcPermission; if (e.Node is QcNewNode) { qp = new QcPermission(e.Node.GetRow()); } var qre = QcRoleEnum.RolesEnums.FirstOrDefault( t => t.RoleCode == qp.RoleCode); if (qre != null) { qre.InitPermission(); } var re = RoleEnums.FirstOrDefault(t => t.RoleCode == qp.RoleCode); if (re != null) { re.InitPermission(); this.RefreshPermission(); } } }
public ControlAccess(string name, string accessDescription, string controlName, RoleEnums roleLevel) : this(name, accessDescription) { this.Add(new List <string> { controlName }, roleLevel); }
public AccessMap(string controlName, RoleEnums roleLevel) { this.ControlName = controlName; this.RoleLevel = roleLevel; }