public async Task <IActionResult> GetOrganizeTreeJson(string keyword) { var organizedata = await _organizeService.GetAlls(); var departmentdata = await _departmentService.GetAlls(); var treeList = new List <TreeEntity>(); foreach (OrganizeEntity item in organizedata) { #region 机构 TreeEntity tree = new TreeEntity(); bool hasChildren = organizedata.Count(t => t.ParentId == item.Id) == 0 ? false : true; if (hasChildren == false) { hasChildren = departmentdata.Count(t => t.OrganizeId == item.Id) == 0 ? false : true; } tree.id = "O_" + item.Id.ToString(); tree.text = item.FullName; tree.value = item.Id.ToString(); tree.parentId = "O_" + (item.ParentId ?? 0).ToString(); tree.isexpand = true; tree.complete = true; tree.hasChildren = hasChildren; tree.Attribute = "Sort"; tree.AttributeValue = "Organize"; treeList.Add(tree); #endregion } foreach (DepartmentEntity item in departmentdata) { #region 部门 TreeEntity tree = new TreeEntity(); bool hasChildren = departmentdata.Count(t => t.ParentId == item.Id) == 0 ? false : true; tree.id = item.Id.ToString(); tree.text = item.FullName; tree.value = item.Id.ToString(); var parentId = (item.ParentId ?? 0).ToString(); if (parentId == "0") { tree.parentId = "O_" + (item.OrganizeId ?? 0).ToString(); } else { tree.parentId = parentId; } tree.isexpand = true; tree.complete = true; tree.hasChildren = hasChildren; tree.Attribute = "Sort"; tree.AttributeValue = "Department"; treeList.Add(tree); #endregion } if (!string.IsNullOrEmpty(keyword)) { treeList = treeList.TreeWhere(t => t.text.Contains(keyword), "id", "parentId"); } return(Content(treeList.TreeToJson("O_0"))); }
public async Task <IActionResult> GetTreeJson(string keyword) { var data = await _organizeService.GetAlls(); if (!string.IsNullOrEmpty(keyword)) { data = data.TreeWhere(t => t.FullName.Contains(keyword), ""); } var treeList = new List <TreeEntity>(); foreach (OrganizeEntity item in data) { TreeEntity tree = new TreeEntity(); bool hasChildren = data.Count(t => t.ParentId == item.Id) == 0 ? false : true; tree.id = item.Id.ToString(); tree.text = item.FullName; tree.value = item.Id.ToString(); tree.isexpand = true; tree.complete = true; tree.hasChildren = hasChildren; tree.parentId = (item.ParentId ?? 0).ToString(); treeList.Add(tree); } return(Content(treeList.TreeToJson())); }