public ActionResult menucategory() { var svCate = new CategoryService(); var cate = new List <CateModel>(); if (MemoryCache.Default["menucategory"] != null) { cate = (List <CateModel>)MemoryCache.Default["menucategory"]; } else { var sqlWhere = " AND categorylevel = 1 and categoryid in (1189, 3252, 5635,4179,1,1925,1083,2598,156 ,4370," + "2064,3068,3156,7102,6336,747 ,3864,2180,4421,1795,6566,1416,3957,552 ,7248,3494,1615,4030,3689) "; var cate1 = svCate.SelectData <b2bCategory>("CategoryID,CategoryName,CategoryLevel,ParentCategoryID ", " IsDelete = 0 " + sqlWhere); sqlWhere = "AND categorylevel = 2 and parentcategoryid in (1189, 3252, 5635,4179,1,1925,1083,2598,156 ,4370," + "2064,3068,3156,7102,6336,747 ,3864,2180,4421,1795,6566,1416,3957,552 ,7248,3494,1615,4030,3689) "; var cate2 = svCate.SelectData <b2bCategory>("CategoryID,CategoryName,CategoryLevel,ParentCategoryID ", " IsDelete = 0 " + sqlWhere); #region set foreach (var item in cate1) { #region set level1 var cc1 = new CateModel(); cc1.id = item.CategoryID; cc1.name = item.CategoryName; cc1.level = (int)item.CategoryLevel; cc1.parentid = (int)item.ParentCategoryID; // cc1.parentpath = item.ParentCategoryPath; cc1.subcategory = new List <CateModel>(); var subcate = new CateModel(); foreach (var item2 in cate2.Where(m => m.ParentCategoryID == item.CategoryID)) { #region set level2 var cc2 = new CateModel(); cc2.id = item2.CategoryID; cc2.name = item2.CategoryName; cc2.level = (int)item2.CategoryLevel; cc2.parentid = (int)item2.ParentCategoryID; // cc2.parentpath = item2.ParentCategoryPath; cc2.subcategory = new List <CateModel>(); #endregion cc1.subcategory.Add(cc2); } cate.Add(cc1); #endregion #endregion } MemoryCache.Default.Add("menucategory", cate, DateTime.Now.AddDays(1)); } return(Json(new { category = cate }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// get category by id /// </summary> public ActionResult Edit(int?id) { var cid = id ?? 0; var model = new CateModel(); if (cid > 0) { model.Category = _categoryService.GetCategory(cid); } var catelist = _categoryService.GetCategoryTreeList(); model.CateList = catelist; catelist.Add(new CategoryInfo() { CateName = "作为一级分类", CategoryId = 0 }); model.CateType.Clear(); model.CateType.Add(new SelectListItem { Text = "产品列表页", Value = "1", Selected = model.Category.Type == (int)Jqpress.Core.Domain.Enum.CateType.ProList }); model.CateType.Add(new SelectListItem { Text = "信息列表页", Value = "2", Selected = model.Category.Type == (int)Jqpress.Core.Domain.Enum.CateType.ItemList }); model.CateType.Add(new SelectListItem { Text = "单页面", Value = "3", Selected = model.Category.Type == (int)Jqpress.Core.Domain.Enum.CateType.Page }); model.CateSelectItem.Clear(); model.CateSelectItem = catelist.ConvertAll(c => new SelectListItem { Text = c.TreeChar + c.CateName, Value = c.CategoryId.ToString(), Selected = c.CategoryId == model.Category.ParentId }); return(View(model)); }
public ActionResult LoadCateLV2(List <int> cateid) { var svCategory = new CategoryService(); var cates = new List <b2bCategory>(); if (MemoryCache.Default["whereInCateLV2"] != null) { var sqlWhere = CreateWhereIN(cateid, "ParentCategoryID"); var where = (string)MemoryCache.Default["whereInCateLV2"]; if (sqlWhere == where) { cates = (List <b2bCategory>)MemoryCache.Default["CateLV2"]; } else { cates = svCategory.SelectData <b2bCategory>("CategoryID,CategoryName,CategoryLevel,ParentCategoryID", " IsDelete = 0 AND " + sqlWhere); if (cates != null && svCategory.TotalRow > 0) { #region Set Model var model = new List <CateModel>(); foreach (var item in cateid) { foreach (var sub in cates.Where(m => m.ParentCategoryID == item).OrderBy(m => m.CategoryName).Take(15)) { var m = new CateModel(); m.id = sub.CategoryID; m.level = (int)sub.CategoryLevel; m.name = sub.CategoryName; m.parentid = (int)sub.ParentCategoryID; m.subcategory = new List <CateModel>(); model.Add(m); } } #endregion MemoryCache.Default.Add("CateLV2", model, DateTime.Now.AddHours(4)); MemoryCache.Default.Add("whereInCateLV2", where, DateTime.Now.AddHours(4)); } } } else { var sqlWhere = CreateWhereIN(cateid, "ParentCategoryID"); cates = svCategory.SelectData <b2bCategory>("CategoryID,CategoryName,CategoryLevel,ParentCategoryID", " IsDelete = 0 AND " + sqlWhere); if (cates != null && svCategory.TotalRow > 0) { #region Set Model var model = new List <CateModel>(); foreach (var item in cateid) { foreach (var sub in cates.Where(m => m.ParentCategoryID == item).OrderBy(m => m.CategoryName).Take(15)) { var m = new CateModel(); m.id = sub.CategoryID; m.level = (int)sub.CategoryLevel; m.name = sub.CategoryName; m.parentid = (int)sub.ParentCategoryID; m.subcategory = new List <CateModel>(); model.Add(m); } } #endregion MemoryCache.Default.Add("CateLV2", model, DateTime.Now.AddHours(4)); MemoryCache.Default.Add("whereInCateLV2", sqlWhere, DateTime.Now.AddHours(4)); } } return(Json(new { CateLV = cates })); }
public ActionResult category(int type = 0) { var svCate = new CategoryService(); var cate = new List <CateModel>(); if (MemoryCache.Default["categoryapp-" + type] != null) { cate = (List <CateModel>)MemoryCache.Default["categoryapp-" + type]; } else { var sqlwhere = " AND CategoryType IN (2,3)"; if (type > 0) { sqlwhere = "AND CategoryType = " + type; } var cate1 = svCate.SelectData <b2bCategory>(" * ", " IsDelete = 0 AND CategoryLevel = 1 " + sqlwhere); var cate2 = svCate.SelectData <b2bCategory>(" * ", " IsDelete = 0 AND CategoryLevel = 2 " + sqlwhere); var cate3 = svCate.SelectData <b2bCategory>(" * ", " IsDelete = 0 AND CategoryLevel = 3 " + sqlwhere); foreach (var item in cate1) { #region set level1 var cc1 = new CateModel(); cc1.id = item.CategoryID; cc1.name = item.CategoryName; cc1.level = (int)item.CategoryLevel; cc1.parentid = (int)item.ParentCategoryID; cc1.parentpath = item.ParentCategoryPath; cc1.subcategory = new List <CateModel>(); var subcate = new CateModel(); foreach (var item2 in cate2.Where(m => m.ParentCategoryID == item.CategoryID)) { #region set level2 var cc2 = new CateModel(); cc2.id = item2.CategoryID; cc2.name = item2.CategoryName; cc2.level = (int)item2.CategoryLevel; cc2.parentid = (int)item2.ParentCategoryID; cc2.parentpath = item2.ParentCategoryPath; cc2.subcategory = new List <CateModel>(); foreach (var item3 in cate3.Where(m => m.ParentCategoryID == item2.CategoryID)) { #region set level3 var cc3 = new CateModel(); cc3.id = item3.CategoryID; cc3.name = item3.CategoryName; cc3.level = (int)item3.CategoryLevel; cc3.parentid = (int)item3.ParentCategoryID; cc3.parentpath = item3.ParentCategoryPath; cc3.subcategory = new List <CateModel>(); cc2.subcategory.Add(cc3); #endregion } #endregion cc1.subcategory.Add(cc2); } cate.Add(cc1); #endregion } MemoryCache.Default.Add("categoryapp-" + type, cate, DateTime.Now.AddDays(1)); } return(Json(new { category = cate }, JsonRequestBehavior.AllowGet)); }