/// <summary> /// 加载分类 /// </summary> /// <param name="parentCladd"></param> /// <param name="type">1为绑定分类 </param> /// <returns></returns> private List<BstrapTreeView> BingNode(string parentCladd,int type) { var parList = _list.Where(p => p.ParentClass == parentCladd); List<BstrapTreeView> tree = new List<BstrapTreeView>(); foreach (var item in parList) { List<string> tag = new List<string>(); if (type == 1 && !item.IsBind) tag.Add(string.Format(TagFormatBind, item.Id,item.ClassName)); else { if(item.IsBind) { string text = ""; if (string.IsNullOrEmpty(item.ClassName)) text = item.ClassId; else text = item.BindClassName; tag.Add(string.Format("{0} <a style='color:#fff' href='javascript:UnbindCat({1})'>取消绑定</a>",text,item.Id)); } } tag.Add(string.Format(TagFormat, item.Id)); tag.Add("<span class=\"badge\">" + item.TotalProduct + "</span>"); BstrapTreeView temp = new BstrapTreeView { href = item.Urlinfo, text = item.ClassName, tags = tag, Extendible = item.ClassId }; if (item.ClassId != "") { if (item.HasChild) { temp.nodes = BingNode(item.ClassId, type); } else if (_list.Exists(p => p.ParentClass == item.ClassId)) { temp.nodes = BingNode(item.ClassId, type); } else if (item.ParentClass == "" && _list.Exists(p => p.ParentName == item.ClassName)) { temp.nodes = BingNodeByName(item.ClassId, type); } } else { if (item.ParentClass == "" && _list.Exists(p => p.ParentName == item.ClassName)) { temp.nodes = BingNodeByName(item.ClassId, type); } } var tempcat = _lessSiteClass.FirstOrDefault(p => p.Id == item.Id); _lessSiteClass.Remove(tempcat); tree.Add(temp); } return tree; }
private List<BstrapTreeView> BingNodeByName(string parentCladd,int type) { var parList = _list.Where(p => p.ParentName == parentCladd); List<BstrapTreeView> tree = new List<BstrapTreeView>(); foreach (var item in parList) { List<string> tag = new List<string>(); if (type == 1 && !item.IsBind) tag.Add(string.Format(TagFormatBind, item.Id,item.ClassName)); tag.Add(string.Format(TagFormat, item.Id)); tag.Add("<span class=\"badge\">" + item.TotalProduct + "</span>"); BstrapTreeView temp = new BstrapTreeView { text = item.ClassName, href = item.Urlinfo, Extendible = item.ClassId, tags = tag }; if (item.ClassId == "" && item.ClassName != "") { if (item.HasChild) { temp.nodes = BingNodeByName(item.ClassName, type); } else if (_list.Exists(p => p.ParentName == item.ClassName)) { temp.nodes = BingNodeByName(item.ClassName, type); } } else { if (item.HasChild) { temp.nodes = BingNode(item.ClassId, type); } else if (_list.Exists(p => p.ParentClass == item.ClassId)) { temp.nodes = BingNode(item.ClassId, type); } else if (_list.Exists(p => p.ParentName == item.ClassName)) { temp.nodes = BingNodeByName(item.ClassName, type); } } var tempcat = _lessSiteClass.FirstOrDefault(p => p.Id == item.Id); _lessSiteClass.Remove(tempcat); tree.Add(temp); } return tree; }
public string GetSiteCatJson(int siteId, int type = 0) { List<BstrapTreeView> node = new List<BstrapTreeView>(); _list = new SiteClassBll().GetClassInfo(siteId); _lessSiteClass = new SiteClassBll().GetClassInfo(siteId); if (siteId == 11) node = BingNodeByName("", type); else node = BingNode("", type); if (_lessSiteClass.Count > 0) { List<BstrapTreeView> tempnode = new List<BstrapTreeView>(); foreach (SiteClassInfo item in _lessSiteClass) { BstrapTreeView tempview = new BstrapTreeView{ text=item.ClassName,href=item.Urlinfo}; tempview.tags = new List<string>(); tempview.tags.Add("<span class=\"badge\">" + item.TotalProduct + "</span>"); tempnode.Add(tempview); } node.Add(new BstrapTreeView { text = "未绑定的分类", href = "#", nodes = tempnode }); } return ServiceStack.Text.JsonSerializer.SerializeToString(node); }