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; } }
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); }
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; }
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; }
public HttpResponseMessage GetAllClassify() { CategorySearchCondition csc = new CategorySearchCondition() { OrderBy = EnumCategorySearchOrderBy.OrderById }; return PageHelper.toJson(GetAllTree().ToList()); }
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; } }
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; } }