예제 #1
0
        public string GetRoleMenuJsonString(long id)
        {
            var allMenus = (IEnumerable <CheckedMenu>)ApplicationConfigHelper.GetRoleMenus(0);

            IList <CheckedMenu> returnMenus = new List <CheckedMenu>();

            allMenus.Each((i, menu) =>
            {
                var innerMenu = new CheckedMenu(menu);
                returnMenus.Add(innerMenu);
            });

            if (id != 0)
            {
                var roleMens = ApplicationConfigHelper.GetRoleMenus(id);
                if (roleMens != null && roleMens.Any())
                {
                    returnMenus.Each((i, menu) =>
                    {
                        if (roleMens.Any(m => m.ID == menu.ID))
                        {
                            menu.IsChecked = true;
                        }
                    });
                }
            }

            return(returnMenus.Select(cm => { var treeItem = new TreeItem(cm); treeItem.open = true; return treeItem; }).ToJsonString());
        }
예제 #2
0
파일: TreeItem.cs 프로젝트: ChainSong/WMS
 public TreeItem(CheckedMenu menu)
 {
     this.id        = menu.ID;
     this.pId       = menu.SuperID;
     this.name      = menu.Name;
     this.open      = menu.IsOpen;
     this.isChecked = menu.IsChecked;
 }
예제 #3
0
        public ActionResult RoleMenuMapping(long?id)
        {
            RoleMenuMappingViewModel vm = new RoleMenuMappingViewModel();

            vm.RoleID = id.GetValueOrDefault(0);

            vm.Roles = ApplicationConfigHelper.GetApplicationRoles().Where(r => r.State.Value).Select(r => new SelectListItem()
            {
                Text = r.Name, Value = r.ID.ToString(), Selected = r.ID == vm.RoleID
            });

            var allMenus = (IEnumerable <CheckedMenu>)ApplicationConfigHelper.GetRoleMenus(0);

            IList <CheckedMenu> returnMenus = new List <CheckedMenu>();

            allMenus.Each((i, menu) => {
                var innerMenu = new CheckedMenu(menu);
                returnMenus.Add(innerMenu);
            });

            if (vm.RoleID != 0)
            {
                var roleMens = ApplicationConfigHelper.GetRoleMenus(vm.RoleID);
                if (roleMens != null && roleMens.Any())
                {
                    returnMenus.Each((i, menu) =>
                    {
                        if (roleMens.Any(m => m.ID == menu.ID))
                        {
                            menu.IsChecked = true;
                        }
                    });
                }
            }

            vm.MenusForJsonString = returnMenus.Select(cm => { var treeItem = new TreeItem(cm); treeItem.open = true; return(treeItem); }).ToJsonString();

            return(View(vm));
        }