//update SecurityUserRight object public bool Update(SecurityRoleAccess pSecurityRoleAccess) { try { if (pSecurityRoleAccess.ID > 0) { SecurityRoleAccess vSecurityRoleAccess = rep.Find(pSecurityRoleAccess.ID); if (vSecurityRoleAccess != null) { //vSecurityUserRight.ID = pSecurityUserRight.ID; vSecurityRoleAccess.RoleCode = pSecurityRoleAccess.RoleCode; vSecurityRoleAccess.ApplicationCode = pSecurityRoleAccess.ApplicationCode; vSecurityRoleAccess.FormCode = pSecurityRoleAccess.FormCode; vSecurityRoleAccess.FormActionCode = pSecurityRoleAccess.FormActionCode; vSecurityRoleAccess.ActionValue = pSecurityRoleAccess.ActionValue; rep.Edit(vSecurityRoleAccess); rep.SaveChanges(); return(true); } } return(false); } catch (Exception ex) { throw ex; } }
private async void btnFetch_Click(object sender, EventArgs e) { if (!isConnected) { MessageBox.Show("Please connect to crm oganization firts!", "Error"); return; } btnFetch.Enabled = false; Console.WriteLine("Fetching Roles!"); roles.Clear(); this.treeView1.Nodes.Clear(); await Task.Run(() => { SecurityRoleAccess roleAccess = new SecurityRoleAccess(orgService); roles = roleAccess.GetSecurityRoles().OrderBy(x => x.Name).ToList(); IAsyncResult result = this.BeginInvoke((Action)(() => { foreach (var role in roles) { TreeNode mainNode = new TreeNode(); mainNode.Name = role.Id.ToString(); mainNode.Text = role.Name; //mainNode.Checked = true; this.treeView1.Nodes.Add(mainNode); } btnFetch.Enabled = true; } )); result.AsyncWaitHandle.WaitOne(); var prevSelectedRoles = FileManager.ReadFromFile <List <string> >("PrevSelectedRoles"); if (prevSelectedRoles?.Count > 0) { foreach (TreeNode node in this.treeView1.Nodes) { if (prevSelectedRoles.Where(x => x == node.Name).Count() > 0) { this.BeginInvoke((Action)(() => { node.Checked = true; })); } else { this.BeginInvoke((Action)(() => { node.Checked = false; })); } } } }); Console.WriteLine($"{roles.Count()} Security Roles Found!"); }
//000000000 public List <SecurityRoleAccess> GetByRoleForm(SecurityRole pSecurityRole, SecurityForm pSecurityForm) { List <SecurityRoleAccess> vList = new List <SecurityRoleAccess>(); IRepository <SecurityRoleAccess> repSUA = new Repository <SecurityRoleAccess>(ctx); try { var query = from a in ctx.SecurityFormActions join b in ctx.SecurityRoleAccesses.Where(o => o.RoleCode == pSecurityRole.RoleCode) on new { a.ApplicationCode, a.FormCode, a.FormActionCode } equals new { b.ApplicationCode, b.FormCode, b.FormActionCode } into Details from ra in Details.DefaultIfEmpty() where a.ApplicationCode == pSecurityForm.ApplicationCode && a.FormCode == pSecurityForm.FormCode select new { a, ra }; //string strQuery = "exec sp_SecurityUserActionALL @UserID='" + pSecurityUser.ID + "', @UserCode='" + pSecurityUser.UserCode + "', @FormID='" + pSecurityForm.ID + "'"; foreach (var eachItem in query) { if (eachItem.ra == null) { SecurityRoleAccess oNew = new SecurityRoleAccess(); oNew.RoleCode = pSecurityRole.RoleCode; oNew.ApplicationCode = eachItem.a.ApplicationCode; oNew.FormCode = eachItem.a.FormCode; oNew.FormActionCode = eachItem.a.FormActionCode; oNew.FormActionName = eachItem.a.FormActionName; oNew.ActionValue = "N"; vList.Add(oNew); } else { eachItem.ra.FormActionName = eachItem.a.FormActionName; vList.Add(eachItem.ra); } } return(vList); } catch (Exception ex) { throw ex; } }
//insert SecurityUserRight object public bool Insert(SecurityRoleAccess pSecurityRoleAccess) { try { //pSecurityRoleAccess.ID = GetMaxID(); pSecurityRoleAccess.RoleCode = pSecurityRoleAccess.RoleCode; pSecurityRoleAccess.ApplicationCode = pSecurityRoleAccess.ApplicationCode; pSecurityRoleAccess.FormCode = pSecurityRoleAccess.FormCode; pSecurityRoleAccess.FormActionCode = pSecurityRoleAccess.FormActionCode; pSecurityRoleAccess.ActionValue = pSecurityRoleAccess.ActionValue; rep.Add(pSecurityRoleAccess); rep.SaveChanges(); return(true); } catch (Exception ex) { throw ex; } }