예제 #1
0
        public List <TreeViewModel> GetTreebyRole(string roleId)
        {
            var items = new List <TreeViewModel>();

            var roleMenus = db.GetMenusByRoleId(0, roleId);//GET Root Nodes

            //var rootMenus = from m in db.Menus
            //                join a in db.MenuAccesses on m.Id equals a.Id where a.RoleId == roleId && a.HasAccess_YN == true && m.Parent_Menu_Id == null
            //                 select m;

            foreach (var m in roleMenus)
            {
                TreeViewModel rootNode = new TreeViewModel()
                {
                    text  = m.name,
                    icon  = m.DisplayName,
                    id    = m.id.ToString(),
                    state = new TreeAttribute {
                        id = m.id.ToString(), selected = m.selected == 1 ? true : false
                    }

                    //parent = "#"
                };
                BuildChildNodeByRoleId(rootNode, roleId);
                items.Add(rootNode);
            }
            return(items);
        }