예제 #1
0
        /// <summary>
        /// 取得一筆角色檔
        /// </summary>
        /// <param name="roleID"></param>
        /// <returns></returns>
        public RoleSaveDataModel GetRoleByID(int roleID)
        {
            RoleSaveDataModel roleData = this.PorDB.PTRole.Where(o => o.ID == roleID)
                                         .Select(s => new RoleSaveDataModel()
            {
                ID          = s.ID,
                Name        = s.ROLE_NM,
                Code        = s.ROLE_CD,
                Description = s.ROLE_DESC,
                IsDelete    = (bool)s.DEL_FG
            })
                                         .FirstOrDefault();

            if (roleData != null)
            {
                List <string> menuIDs = this.PorDB.PTRoleMenuMap
                                        .Where(o => o.MAP_ROLEID == roleID)
                                        .OrderBy(s => s.ID)
                                        .Select(i => i.MAP_MUID)
                                        .ToList();
                MenuModule           muModule = new MenuModule();
                List <MenuDataModel> menuData = muModule.GetMenuData();
                roleData.AgreeMenuCodeList  = menuData.Where(o => menuIDs.Contains(o.MenuID)).OrderBy(e => e.MenuID).Select(s => s.MenuID).ToArray();
                roleData.RefuseMenuCodeList = menuData.Where(o => !menuIDs.Contains(o.MenuID)).OrderBy(e => e.MenuID).Select(s => s.MenuID).ToArray();
            }

            return(roleData);
        }
예제 #2
0
        public ActionResult RoleEdit(int?roleID)
        {
            if (roleID == null)
            {
                throw new Exception("無效的角色ID");
            }
            RoleSaveDataModel model = this.Repository.GetRoleByID((int)roleID);

            if (model == null)
            {
                throw new Exception("找不到ID為:" + roleID + "的角色.");
            }

            MenuModule muModule = new MenuModule();
            var        muList   = muModule.GetMenuData();

            ViewBag.MenuList = muList;

            return(View(model));
        }