示例#1
0
        /// <summary>
        /// 获取树状列表
        /// </summary>
        /// <returns></returns>
        public async Task <List <CategoryTreeListDto> > GetTreeListAsync()
        {
            List <CategoryTreeListDto> trees = new List <CategoryTreeListDto>();
            var dblist = await databaseFixture.Db.WorkflowCategory.FindAllAsync();

            foreach (var item in dblist.Where(m => m.ParentId == default(Guid)))
            {
                CategoryTreeListDto tree = new CategoryTreeListDto
                {
                    Id       = item.Id,
                    ParentId = item.ParentId,
                    Memo     = item.Memo,
                    Name     = item.Name
                };
                tree.Children = dblist.Where(m => m.ParentId == tree.Id).Select(m => new CategoryTreeListDto
                {
                    Id       = m.Id,
                    Name     = m.Name,
                    ParentId = m.ParentId,
                    Memo     = m.Memo
                }).ToList();
                var tempchilds = tree.Children;
                GetTreeListChildren(ref tempchilds, ref dblist);
                tree.Children = tempchilds;
                trees.Add(tree);
            }
            return(trees);
        }
示例#2
0
        /// <summary>
        /// 获取树状列表
        /// </summary>
        /// <returns></returns>
        public async Task <List <CategoryTreeListDto> > GetTreeListAsync()
        {
            List <CategoryTreeListDto> trees = new List <CategoryTreeListDto>();
            var mydblist = await databaseFixture.Db.WorkflowCategory.FindAllAsync();

            var dblist = mydblist.OrderByDescending(m => m.Status).ThenBy(m => m.CreateTime).AsEnumerable();

            foreach (var item in dblist.Where(m => m.ParentId == default(Guid)))
            {
                CategoryTreeListDto tree = new CategoryTreeListDto
                {
                    Id       = item.Id,
                    ParentId = item.ParentId,
                    Memo     = item.Memo,
                    Name     = item.Name,
                    Status   = item.Status
                };
                tree.Children = dblist.Where(m => m.ParentId == tree.Id).Select(m => new CategoryTreeListDto
                {
                    Id       = m.Id,
                    Name     = m.Name,
                    ParentId = m.ParentId,
                    Memo     = m.Memo,
                    Status   = m.Status
                }).ToList();
                var tempchilds = tree.Children;
                GetTreeListChildren(ref tempchilds, ref dblist);
                tree.Children = tempchilds;
                trees.Add(tree);
            }
            return(trees);
        }