public List <YnWebAccMenu> GetYnWebAccMenuList(YnUser ynUser) { List <YnWebAccMenu> listYnWebAccMenu = null; if (ynUser != null) { List <YnWebAccMenuTree> listYnWebAccMenuTree = GetYnWebAccMenuTreeList(ynUser); if (listYnWebAccMenuTree != null && listYnWebAccMenuTree.Count > 0) { listYnWebAccMenu = new List <YnWebAccMenu>(); IEnumerable <IGrouping <YnWebAccMenu, YnWebAccMenuTree> > result = listYnWebAccMenuTree.GroupBy(P => P.ynWebAccMenu); foreach (IGrouping <YnWebAccMenu, YnWebAccMenuTree> ig in result) { YnWebAccMenu ynWebAccMenu = ig.Key; StringBuilder sb = new StringBuilder(); int count = ig.Count(); if (count > 0) { int parentId = ig.Min(P => P.parentId); List <YnWebAccMenuTree> listAccMenuTree = ig.ToList(); sb.Append("<ul id=\"" + parentId + "\" class=\"easyui-tree\" animate=\"true\">");// dnd=\"true\" List <YnWebAccMenuTree> parentList = listAccMenuTree.Where(P => P.parentId == parentId).ToList(); foreach (YnWebAccMenuTree ynWebAccMenuTree in parentList) { string url = string.Empty; if (ynWebAccMenuTree.ynWebModule != null && ynWebAccMenuTree.ynWebModule.url != null && !string.IsNullOrEmpty(ynWebAccMenuTree.ynWebModule.url.Trim())) { url = ynWebAccMenuTree.ynWebModule.url.Trim(); url += "?mi=" + ynWebAccMenuTree.ynWebModule.id; if (!string.IsNullOrEmpty(ynWebAccMenuTree.ynWebModule.parameter)) { url += "¶meter=" + System.Web.HttpContext.Current.Server.UrlEncode(ynWebAccMenuTree.ynWebModule.parameter); } } string onclick = ""; if (!string.IsNullOrEmpty(url)) { onclick = "onclick=\"openTab('" + ynWebAccMenuTree.name + "','" + url.Trim() + "')\""; } sb.Append("<li iconCls=\"" + ynWebAccMenuTree.iconCls + "\">"); sb.Append("<span><a href=\"javascript:void(0);\" " + onclick + ">" + ynWebAccMenuTree.name + "</a></span>"); List <YnWebAccMenuTree> childList = listAccMenuTree.Where(P => P.parentId == ynWebAccMenuTree.id).ToList(); if (childList.Count > 0) { GetAccMenuTree(ynWebAccMenuTree.id, listAccMenuTree, sb); } sb.Append("</li>"); } sb.Append("</ul>"); } ynWebAccMenu.accMenuTree = sb.ToString(); listYnWebAccMenu.Add(ynWebAccMenu); } } } if (listYnWebAccMenu != null) { //排序 YnBaseClass2.YnUc.SortableBindingList <YnWebAccMenu> sortableBindingLis1 = new YnBaseClass2.YnUc.SortableBindingList <YnWebAccMenu>(listYnWebAccMenu); sortableBindingLis1.SortDirection = System.ComponentModel.ListSortDirection.Ascending; sortableBindingLis1.DefaultSortItem = "sortNo"; //return listYnWebAccMenu; return(sortableBindingLis1.ToList()); } return(null); }
public List<YnWebAccMenu> GetYnWebAccMenuList(YnUser ynUser) { List<YnWebAccMenu> listYnWebAccMenu = null; if (ynUser != null) { List<YnWebAccMenuTree> listYnWebAccMenuTree = GetYnWebAccMenuTreeList(ynUser); if (listYnWebAccMenuTree != null && listYnWebAccMenuTree.Count > 0) { listYnWebAccMenu = new List<YnWebAccMenu>(); IEnumerable<IGrouping<YnWebAccMenu, YnWebAccMenuTree>> result = listYnWebAccMenuTree.GroupBy(P => P.ynWebAccMenu); foreach (IGrouping<YnWebAccMenu, YnWebAccMenuTree> ig in result) { YnWebAccMenu ynWebAccMenu = ig.Key; StringBuilder sb = new StringBuilder(); int count = ig.Count(); if (count > 0) { int parentId = ig.Min(P => P.parentId); List<YnWebAccMenuTree> listAccMenuTree = ig.ToList(); sb.Append("<ul id=\"" + parentId + "\" class=\"easyui-tree\" animate=\"true\">");// dnd=\"true\" List<YnWebAccMenuTree> parentList = listAccMenuTree.Where(P => P.parentId == parentId).ToList(); foreach (YnWebAccMenuTree ynWebAccMenuTree in parentList) { string url = string.Empty; if (ynWebAccMenuTree.ynWebModule != null && ynWebAccMenuTree.ynWebModule.url != null && !string.IsNullOrEmpty(ynWebAccMenuTree.ynWebModule.url.Trim())) { url = ynWebAccMenuTree.ynWebModule.url.Trim(); url += "?mi=" + ynWebAccMenuTree.ynWebModule.id; if (!string.IsNullOrEmpty(ynWebAccMenuTree.ynWebModule.parameter)) { url += "¶meter=" + System.Web.HttpContext.Current.Server.UrlEncode(ynWebAccMenuTree.ynWebModule.parameter); } } string onclick = ""; if (!string.IsNullOrEmpty(url)) onclick = "onclick=\"openTab('" + ynWebAccMenuTree.name + "','" + url.Trim() + "')\""; sb.Append("<li iconCls=\"" + ynWebAccMenuTree.iconCls + "\">"); sb.Append("<span><a href=\"javascript:void(0);\" " + onclick + ">" + ynWebAccMenuTree.name + "</a></span>"); List<YnWebAccMenuTree> childList = listAccMenuTree.Where(P => P.parentId == ynWebAccMenuTree.id).ToList(); if (childList.Count > 0) { GetAccMenuTree(ynWebAccMenuTree.id, listAccMenuTree, sb); } sb.Append("</li>"); } sb.Append("</ul>"); } ynWebAccMenu.accMenuTree = sb.ToString(); listYnWebAccMenu.Add(ynWebAccMenu); } } } if (listYnWebAccMenu != null) { //排序 YnBaseClass2.YnUc.SortableBindingList<YnWebAccMenu> sortableBindingLis1 = new YnBaseClass2.YnUc.SortableBindingList<YnWebAccMenu>(listYnWebAccMenu); sortableBindingLis1.SortDirection = System.ComponentModel.ListSortDirection.Ascending; sortableBindingLis1.DefaultSortItem = "sortNo"; //return listYnWebAccMenu; return sortableBindingLis1.ToList(); } return null; }