Example #1
0
        public List <Model.ModelViews.MainPage_View> AddPageLayer(int roleid)
        {
            var res  = dal.QueryWhere(d => d.SysRoleID == roleid).ToList();
            var page = pagedal.QueryWhere(p => p.ParentID >= 0);

            foreach (var item in res)
            {
                page = page.Where(p => p.ID != item.PageID);
            }
            //查出所有没在表中的pageid
            var result = page.OrderBy(o => o.SortN).ToList();

            var pageres = pagedal.QueryWhere(p => p.ParentID == 0);
            List <Model.ModelViews.MainPage_View> model = new List <Model.ModelViews.MainPage_View>();

            foreach (var item in result)
            {
                //如果父类id为0
                if (item.ParentID == 0)
                {
                    var child = result.Where(r => r.ParentID == item.ID).ToList();
                    Model.ModelViews.MainPage_View view = new Model.ModelViews.MainPage_View()
                    {
                        Page      = item,
                        childPage = child,
                        mark      = 1
                    };
                    model.Add(view);
                }
                else
                {                         //判断查其父类有没有
                    var test = result.Where(r => r.ID == item.ParentID);
                    if (test.Count() > 0) //说明有父类存在
                    {
                    }
                    else//无父类存在
                    {
                        //找它的父类
                        var findparent = pagedal.QueryWhere(p => p.ID == item.ParentID).FirstOrDefault();
                        var child      = result.Where(r => r.ParentID == findparent.ID).ToList();
                        Model.ModelViews.MainPage_View view = new Model.ModelViews.MainPage_View()
                        {
                            Page      = findparent,
                            childPage = child,
                            mark      = 0
                        };
                        model.Add(view);
                    }
                }
            }
            var zz = model.GroupBy(m => m.Page).ToList();
            var bb = model.GroupBy(m => m.Page).Select(m => m.First()).ToList();

            model.Clear();
            foreach (var item in bb)
            {
                model.Add(item);
            }
            return(model);
        }
Example #2
0
        /// <summary>
        /// 权限界面显示
        /// </summary>
        /// <returns></returns>
        public ActionResult ConfigPre()
        {
            List <Model.ModelViews.MainPage_View> pageList = new List <Model.ModelViews.MainPage_View>();
            var queryparentList = pageSer.QueryWhere(p => p.ParentID == 0);

            foreach (var item in queryparentList)
            {
                var res = pageSer.QueryWhere(p => p.ParentID == item.ID);
                Model.ModelViews.MainPage_View view = new Model.ModelViews.MainPage_View()
                {
                    childPage = res,
                    Page      = item
                };
                pageList.Add(view);
            }
            Model.VO.AuthorityPage_VO authorityPage = new Model.VO.AuthorityPage_VO();
            authorityPage.SysRole  = sysroleSer.QueryWhere();
            authorityPage.viewList = pageList;
            return(View(authorityPage));
        }