/// <summary> /// 请求角色树形 /// </summary> /// <param name="request"></param> /// <returns></returns> public IEnumerable <EasyUITree> GetRoleTree(EasyUITreeRequest request) { ////wher语句查询条件 //string commandText = ""; //if (!request.Where.IsNullOrEmpty()) //{ // //做Where的翻译处理工作 // FilterTranslator whereTranslator = new FilterTranslator(); // //反序列化Filter Group JSON // whereTranslator.Group = JsonHelper.FromJson<FilterGroup>(request.Where); // //开始翻译sql语句 // whereTranslator.Translate(); // commandText = FilterParam.AddParameters(whereTranslator.CommandText, whereTranslator.Parms); //} //返回ui层的菜单 IEnumerable <EasyUITree> rootRole = new List <EasyUITree>() { new EasyUITree() { icon = request.RootIcon, id = 0, desc = "角色组", text = "角色组", children = (List <EasyUITree>)EasyUITree.ToListViewModel(base.GetListBy(r => true)), } }; return(rootRole); }
/// <summary> /// 获取树形的Select的json数据 /// </summary> /// <param name="selectData"></param> /// <returns></returns> public string GetAllDepartmentSelectToViewModel(EasyUISelectRequest selectData) { int total = 0; var departAllList = base.GetListBy(d => true).ToList(); departAllList.Add(new Sample_Department() { depId = 0, depName = "顶级分类", depPid = -1 }); List <EasyUITree> listDepart = new List <EasyUITree>(); //查找所有的一级部门 var ParentDepart = departAllList.Where(con => con.depPid == -1); foreach (var parent in ParentDepart) { //实体转化 EasyUITree parentItem = EasyUITree.ToEntity(parent); //获取子级 GetDepartmentChildren(ref parentItem, (List <Sample_Department>)departAllList); listDepart.Add(parentItem); } return(JsonHelper.ToJson(listDepart, true)); }
public ActionResult JsonTreeTest() { EasyUIBLL bll = new EasyUIBLL(); EasyUITree EUItree = new EasyUITree(); DataTable dt = bll.GetTable(); //int c = dt.Rows.Count; List <JsonTree> list = EUItree.initTree(dt); var json = JsonConvert.SerializeObject(list); //把对象集合转换成Json return(Content(json)); }
private List <EasyUITree> GetTreeJson(List <Category> query) { List <EasyUITree> list = new List <EasyUITree>(); foreach (Category item in query) { EasyUITree obj = new EasyUITree(); obj.id = item.Id; obj.text = item.Name; if (TableCache.Any(o => o.ParentId == item.Id)) { obj.children = GetTreeJson(TableCache.Where(o => o.ParentId == item.Id).ToList()); } list.Add(obj); } return(list); }
/// <summary> /// 获取部门的Tree格式 /// </summary> /// <param name="treeData">获得树级请求数据</param> /// <returns></returns> public IEnumerable <EasyUITree> GetDepartmentTree(EasyUITreeRequest treeData) { StringBuilder sbJson = new StringBuilder(); IEnumerable <Sample_Department> departAllList = base.GetListBy(d => true).ToList(); List <EasyUITree> listDepart = new List <EasyUITree>(); //查找所有的一级部门 var ParentDepart = departAllList.Where(con => con.depPid == 0); foreach (var parent in ParentDepart) { //实体转化 EasyUITree parentItem = EasyUITree.ToEntity(parent); //获取子级 GetDepartmentChildren(ref parentItem, (List <Sample_Department>)departAllList); listDepart.Add(parentItem); } return(listDepart); }
/// <summary> /// 获取父级部门下的子部门列表信息 /// </summary> /// <param name="parent"></param> /// <param name="allList"></param> /// <returns></returns> private void GetDepartmentChildren(ref EasyUITree parent, List <Sample_Department> allList) { foreach (Sample_Department depart in allList) { if (depart.depPid == parent.id) { //实体转化 EasyUITree child = EasyUITree.ToEntity(depart); if (parent.children == null) { parent.children = new List <EasyUITree>(); } //添加到父级的Children中 parent.children.Add(child); GetDepartmentChildren(ref child, allList);//递归添加子树 } } }