/// <summary> /// /// </summary> /// <param name="function"></param> /// <param name="roleRights"></param> /// <param name="selectRights">需要选中的</param> /// <param name="showCheckBox">是否选中 1:选;0:不选</param> /// <returns></returns> private EasyuiTreeNode GetChildRights(vTenantFunction function, IEnumerable <vTenantFunction> roleRights, IEnumerable <vTenantFunction> selectRights, int showCheckBox = 1) { var childrens = roleRights.Where(p => p.ParentId == function.PermissionId); var node = new EasyuiTreeNode { id = function.PermissionId.ToString(), text = function.MenuLanguageName }; if (showCheckBox == 1 && !childrens.Any() && selectRights.Any(p => p.PermissionId == function.PermissionId)) { node.@checked = true; } foreach (var f in childrens) { node.children.Add(GetChildRights(f, roleRights, selectRights, showCheckBox)); } return(node); }
private List <vTenantFunction> GetFathers(int funcId) { var allfuncs = _permissionManager.GetPermissionsByTenantId(CurrentTenant.TenantId); vTenantFunction fun = allfuncs.FirstOrDefault(p => p.PermissionId == funcId); if (fun == null) { return(new List <vTenantFunction>()); } vTenantFunction father = allfuncs.FirstOrDefault(p => p.PermissionId == fun.ParentId); var list = new List <vTenantFunction> { fun }; while (father != null) { list.Add(father); father = allfuncs.FirstOrDefault(p => p.PermissionId == father.ParentId); } return(list); }