Ejemplo n.º 1
0
        public List <TreeJsonModel> GetJsonFromTreeModel(int nodeId, int ifid = 0)
        {
            CategorySearchCondition csc = new CategorySearchCondition()
            {
                OrderBy = EnumCategorySearchOrderBy.OrderById
            };
            List <TreeJsonModel>  datalist = new List <TreeJsonModel>();
            List <CategoryEntity> ceList   = _categoryService.GetCategorysBySuperFather(nodeId).ToList();//找出该级的子集;
            int i = 0;

            foreach (var ce in ceList)
            {
                TreeJsonModel TJM = new TreeJsonModel()
                {
                    label = ce.Name,
                    Id    = ce.Id,
                    // Father  =ce.Father
                };
                datalist.Add(TJM);
                if (ifid == 0)
                {
                    TJM.children = GetJsonFromTreeModel(TJM.Id);//自迭代;
                }
            }
            if (ceList.Count == 0)//若遍历到末端,则:
            {
                return(null);
            }
            else
            {
                return(datalist);
            }
        }
Ejemplo n.º 2
0
        public HttpResponseMessage Get(CategorySearchCondition condition)
        {
            //验证是否有非法字符
            Regex reg = new Regex(@"^[^ %@#!*~&',;=?$\x22]+$");

            if (!string.IsNullOrEmpty(condition.Name))
            {
                var m = reg.IsMatch(condition.Name);
                if (!m)
                {
                    return(PageHelper.toJson(PageHelper.ReturnValue(false, "搜索输入存在非法字符!")));
                }
            }
            var model = _categoryService.GetCategorysByCondition(condition).Select(c => new CategoryModel
            {
                Id = c.Id,
                //	Father = c.Father,
                Name    = c.Name,
                Sort    = c.Sort,
                AddUser = c.AddUser,
                AddTime = c.AddTime,
                UpdUser = c.UpdUser,
                UpdTime = c.UpdTime,
            }).ToList();

            return(PageHelper.toJson(model));
        }
Ejemplo n.º 3
0
        public HttpResponseMessage GetAllClassify()
        {
            CategorySearchCondition csc = new CategorySearchCondition()
            {
                OrderBy = EnumCategorySearchOrderBy.OrderById
            };

            return(PageHelper.toJson(GetAllTree().ToList()));
        }
Ejemplo n.º 4
0
        public int GetCategoryCount(CategorySearchCondition condition)
        {
            var query = _categoryRepository.Table;

            try
            {
                if (condition.AddTimeBegin.HasValue)
                {
                    query = query.Where(q => q.AddTime >= condition.AddTimeBegin.Value);
                }
                if (condition.AddTimeEnd.HasValue)
                {
                    query = query.Where(q => q.AddTime < condition.AddTimeEnd.Value);
                }
                if (condition.UpdTimeBegin.HasValue)
                {
                    query = query.Where(q => q.UpdTime >= condition.UpdTimeBegin.Value);
                }
                if (condition.UpdTimeEnd.HasValue)
                {
                    query = query.Where(q => q.UpdTime < condition.UpdTimeEnd.Value);
                }
                if (!string.IsNullOrEmpty(condition.Name))
                {
                    query = query.Where(q => q.Name.Contains(condition.Name));
                }
                if (!string.IsNullOrEmpty(condition.AddUser))
                {
                    query = query.Where(q => q.AddUser == int.Parse(condition.AddUser));
                }
                if (!string.IsNullOrEmpty(condition.UpdUser))
                {
                    query = query.Where(q => q.UpdUser == int.Parse(condition.UpdUser));
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.Sorts != null && condition.Sorts.Any())
                {
                    query = query.Where(q => condition.Sorts.Contains(q.Sort));
                }
                return(query.Count());
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return(-1);
            }
        }
Ejemplo n.º 5
0
        public IQueryable <CategoryEntity> GetCategorysByCondition(CategorySearchCondition condition)
        {
            var query = _categoryRepository.Table;

            try
            {
                if (condition.Father != null)
                {
                    query = query.Where(q => q.Father == condition.Father);
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.OrderBy.HasValue)
                {
                    switch (condition.OrderBy.Value)
                    {
                    case EnumCategorySearchOrderBy.OrderById:
                        query = condition.IsDescending?query.OrderByDescending(q => q.Id):query.OrderBy(q => q.Id);
                        break;
                    }
                }
                else
                {
                    query = query.OrderBy(q => q.Id);
                }

                if (condition.Page.HasValue && condition.PageCount.HasValue)
                {
                    query = query.Skip((condition.Page.Value - 1) * condition.PageCount.Value).Take(condition.PageCount.Value);
                }
                return(query);
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return(null);
            }
        }
Ejemplo n.º 6
0
        public int GetCategoryCount(CategorySearchCondition condition)
        {
            var query = _categoryRepository.Table;

            try
            {
                if (condition.Father != null)
                {
                    query = query.Where(q => q.Father == condition.Father);
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                return(query.Count());
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return(-1);
            }
        }
Ejemplo n.º 7
0
        public List <TreeJsonModel> GetCateANDPro()
        {
            CategorySearchCondition csc = new CategorySearchCondition()
            {
                OrderBy = EnumCategorySearchOrderBy.OrderById,
                father  = "NULL"
            };
            List <CategoryEntity> ceListBuffer        = new List <CategoryEntity>();
            List <TreeJsonModel>  treeJsonModelBuffer = new List <TreeJsonModel>();
            List <CategoryEntity> ceList = _categoryService.GetCategorysByCondition(csc).ToList();

            foreach (var ce in ceList)
            {
                if (ce.Father == null)
                {
                    ceListBuffer.Add(ce);//查找第一级;
                }
            }
            foreach (var ce in ceListBuffer)
            {
                List <CategoryEntity> ceList1 = _categoryService.GetCategorysBySuperFather(ce.Id).ToList();//找出该级的子集;
                TreeJsonModel         TJM1    = null;
                foreach (var ce1 in ceList1)
                {
                    TJM1 = new TreeJsonModel()
                    {
                        label = ce1.Name,
                        Id    = ce1.Id,
                        //Father = ce1.Father
                    };
                    TJM1.children = GetJsonModel(ce1.Id); //获取第三级分类跟分类下的前6个商品
                    treeJsonModelBuffer.Add(TJM1);
                }
            }
            return(treeJsonModelBuffer);
        }
Ejemplo n.º 8
0
        public List <TreeJsonModel> GetAllTree(int ifid = 0)
        {
            CategorySearchCondition csc = new CategorySearchCondition()
            {
                OrderBy = EnumCategorySearchOrderBy.OrderById
            };
            List <CategoryEntity> ceListBuffer        = new List <CategoryEntity>();
            List <TreeJsonModel>  treeJsonModelBuffer = new List <TreeJsonModel>();
            List <CategoryEntity> ceList = _categoryService.GetCategorysByCondition(csc).ToList();

            foreach (var ce in ceList)
            {
                if (ce.Father == null)
                {
                    ceListBuffer.Add(ce);//查找第一级;
                }
            }
            foreach (var ce in ceListBuffer)
            {
                TreeJsonModel TJM = new TreeJsonModel()
                {
                    label = ce.Name,
                    Id    = ce.Id
                };
                treeJsonModelBuffer.Add(TJM);
                if (ifid == 0)//如果ifid为0,那么直到查找到最后一级子类,否则只查到下一级
                {
                    TJM.children = GetJsonFromTreeModel(TJM.Id);
                }
                else
                {
                    TJM.children = GetJsonFromTreeModel(TJM.Id, 1);
                }
            }
            return(treeJsonModelBuffer);
        }
Ejemplo n.º 9
0
        public IQueryable <CategoryEntity> GetCategorysByCondition(CategorySearchCondition condition)
        {
            var query = _categoryRepository.Table;

            try
            {
                if (condition.father == "NULL")
                {
                    query = query.Where(q => q.Father == null && q.Name != "服务");
                }
                if (condition.AddTimeBegin.HasValue)
                {
                    query = query.Where(q => q.AddTime >= condition.AddTimeBegin.Value);
                }
                if (condition.AddTimeEnd.HasValue)
                {
                    query = query.Where(q => q.AddTime < condition.AddTimeEnd.Value);
                }
                if (condition.UpdTimeBegin.HasValue)
                {
                    query = query.Where(q => q.UpdTime >= condition.UpdTimeBegin.Value);
                }
                if (condition.UpdTimeEnd.HasValue)
                {
                    query = query.Where(q => q.UpdTime < condition.UpdTimeEnd.Value);
                }
                if (!string.IsNullOrEmpty(condition.Name))
                {
                    query = query.Where(q => q.Name.Contains(condition.Name));
                }
                if (!string.IsNullOrEmpty(condition.AddUser))
                {
                    query = query.Where(q => q.AddUser == int.Parse(condition.AddUser));
                }
                if (!string.IsNullOrEmpty(condition.UpdUser))
                {
                    query = query.Where(q => q.UpdUser == int.Parse(condition.UpdUser));
                }
                if (condition.Ids != null && condition.Ids.Any())
                {
                    query = query.Where(q => condition.Ids.Contains(q.Id));
                }
                if (condition.Sorts != null && condition.Sorts.Any())
                {
                    query = query.Where(q => condition.Sorts.Contains(q.Sort));
                }

                if (condition.OrderBy.HasValue)
                {
                    switch (condition.OrderBy.Value)
                    {
                    case EnumCategorySearchOrderBy.OrderById:
                        query = condition.IsDescending?query.OrderByDescending(q => q.Id):query.OrderBy(q => q.Id);
                        break;

                    case EnumCategorySearchOrderBy.OrderByAddTime:
                        query = condition.IsDescending?query.OrderByDescending(q => q.AddTime):query.OrderBy(q => q.AddTime);
                        break;
                    }
                }
                else
                {
                    query = query.OrderBy(q => q.Id);
                }

                if (condition.Page.HasValue && condition.PageCount.HasValue)
                {
                    query = query.Skip((condition.Page.Value - 1) * condition.PageCount.Value).Take(condition.PageCount.Value);
                }
                return(query);
            }
            catch (Exception e)
            {
                _log.Error(e, "数据库操作出错");
                return(null);
            }
        }