Beispiel #1
0
        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 += "&parameter=" + 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);
        }
Beispiel #2
0
        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 += "&parameter=" + 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;
        }