public ActionResult RolePermission(int id) { var subject = RBACService.GetSubject(id, true, false, true); ViewBag.Subject = subject; var roles = RBACService.GetRoles(); var treeRole = TreeService.GetTree(Constants.ROLE_TREE_ID); var jsTreeRole = new JsTreeBuilder <Role>(x => x.Name, x => x.RoleId) .Build(treeRole, roles); jsTreeRole.Each(x => { if (x == jsTreeRole) { return; } if (subject.HaveRole(x.data.content)) { x.state.selected = true; } }); ViewBag.RoleTree = jsTreeRole.children; var permissions = RBACService.GetPermissions(); var treePermission = TreeService.GetTree(Constants.PERMISSION_TREE_ID); var jsTreePermission = new JsTreeBuilder <Permission>(x => x.Name, x => x.PermissionId) .Build(treePermission, permissions); jsTreePermission.Each(x => { if (x == jsTreePermission) { return; } if (subject.HaveDirectPermission(x.data.content)) { x.state.selected = true; } }); ViewBag.PermissionTree = jsTreePermission.children; return(View()); }
public ActionResult Index() { var permissions = RBACService.GetPermissions(); var root = TreeService.GetTree(Constants.PERMISSION_TREE_ID); var jsTree = new JsTreeBuilder <Permission>(x => x.Name, x => x.PermissionId) .Build(root, permissions); jsTree.Each(x => { if (x == jsTree) { return; } x.state.disabled = true; }); ViewBag.Tree = jsTree.children; return(View()); }
public ActionResult Permission(int id) { var role = RBACService.GetRole(id, true); var permissions = RBACService.GetPermissions(); var root = TreeService.GetTree(Constants.PERMISSION_TREE_ID); var jsTree = new JsTreeBuilder <Permission>(x => x.Name, x => x.PermissionId) .Build(root, permissions); jsTree.Each(x => { if (x == jsTree) { return; } x.state.disabled = true; if (role.HavePermission(x.data.content)) { x.state.selected = true; } }); return(new JsonNetResult(jsTree.children)); }
public ActionResult DirectPermission(int id) { var subject = RBACService.GetSubject(id, true, true, true); var permissions = RBACService.GetPermissions(); var treePermission = TreeService.GetTree(Constants.PERMISSION_TREE_ID); var jsTreePermission = new JsTreeBuilder <Permission>(x => x.Name, x => x.PermissionId) .Build(treePermission, permissions); jsTreePermission.Each(x => { if (x == jsTreePermission) { return; } x.state.disabled = true; if (subject.HaveDirectPermission(x.data.content)) { x.state.selected = true; } }); return(new JsonNetResult(jsTreePermission.children)); }
public ActionResult Role(int id) { var subject = RBACService.GetSubject(id, true, false, false); var roles = RBACService.GetRoles(); var treeRole = TreeService.GetTree(Constants.ROLE_TREE_ID); var jsTreeRole = new JsTreeBuilder <Role>(x => x.Name, x => x.RoleId) .Build(treeRole, roles); jsTreeRole.Each(x => { if (x == jsTreeRole) { return; } x.state.disabled = true; if (subject.HaveRole(x.data.content)) { x.state.selected = true; } }); return(new JsonNetResult(jsTreeRole.children)); }