public List<Right> PermissionList(int userId, int loanId) { var access = new UserRightsAccess(); //retrive all rights List<Right> rights = access.getRights(); int userRole = (new UserManageAccess()).getUserRole(userId); if (userRole == 3) { //get permission string for the relevent user List<Right> permissionString = access.getRightsString(userId, loanId); if (permissionString.Count >= 1) { string permission = permissionString[0].rightsPermissionString; if (permission != "") { string[] charactors = permission.Split(','); List<Right> temprights = new List<Right>(); foreach (var charactor in charactors) { foreach (var obj in rights) { if (String.CompareOrdinal(obj.rightId, charactor) == 0) { temprights.Add(obj); break; } } } rights = temprights; } else { rights = new List<Right>(); } } else if (permissionString.Count == 0) { rights = new List<Right>(); } } return rights; }
public ActionResult DashBoard() { int userId = userData.UserId; var access = new UserRightsAccess(); ///retrive all rights List<Right> rights = access.getRights(); int userRole = userData.RoleId; if (userRole == 3) { ///get permission string for the relevent user List<Right> permissionString = access.getRightsString(userId, 0); if (permissionString.Count == 1) { string permission = permissionString[0].rightsPermissionString; if (permission != "") { string[] charactors = permission.Split(','); List<Right> temprights = new List<Right>(); foreach (var charactor in charactors) { foreach (var obj in rights) { if (string.Compare(obj.rightId, charactor) == 0) { temprights.Add(obj); break; } } } rights = temprights; } else { rights = new List<Right>(); } } else if (permissionString.Count == 0) { rights = new List<Right>(); } } return PartialView(rights); }
/// <summary> /// CreatedBy : Kasun Samarawickrama /// CreatedDate: 2016/01/16 /// Updated by : kasun Samarawickrama /// Updated Date : 2016/01/18 /// /// Edit User Rights /// </summary> /// <param name="userId">login user </param> /// <param name="editorId">edit field user</param> /// <returns></returns> public ActionResult EditRights(string lbl1, string lbl2) { ViewBag.login = false; if (lbl1 != null) { ViewBag.SuccessMsg = lbl1; } else if (lbl2 != null) { ViewBag.ErrorMsg = lbl2; } else { ViewBag.SuccessMsg = ""; ViewBag.ErrorMsg = ""; } if (Session["userId"] == null) { return RedirectToAction("UserLogin", "Login"); } if (Session["editUserIds"] == null) { return RedirectToAction("editUser", "UserManagement"); } int userId = (int)Session["userId"]; int ownerId = (int)Session["editUserIds"]; if (userId > 0) { var access = new UserRightsAccess(); ///retrive all rights List<Right> rights = access.getRights(); ///get permission string for the relevent user List<Right> permissionString = access.getRightsString(ownerId,0); if (permissionString.Count == 1) { string permission = permissionString[0].rightsPermissionString; if (permission != "") { string[] charactors = permission.Split(','); List<string> intArray = new List<string>(); foreach (var charactor in charactors) { intArray.Add(charactor); } foreach (var obj in rights) { obj.active = true; } foreach (var chr in intArray) { foreach (var obj in rights) { if (string.Compare(obj.rightId, chr) == 0) { obj.active = false; } obj.editorId = userId; obj.userId = ownerId; } } } else { foreach (var obj in rights) { obj.editorId = userId; obj.userId = ownerId; } } } else if (permissionString.Count == 0) { foreach (var obj in rights) { obj.editorId = userId; obj.userId = ownerId; } } else { return RedirectToAction("editUser", "UserManagement"); } ViewBag.userId = userId; ViewBag.ownerId = ownerId; return PartialView(rights); } else { return RedirectToAction("editUser", "UserManagement"); } }