示例#1
0
        public ActionResult Edit(int adminGid = -1)
        {
            if (adminGid < 3)
            {
                return(PromptView("内置管理员组不能修改"));
            }

            AdminGroupInfo adminGroupInfo = AdminGroups.GetAdminGroupById(adminGid);

            if (adminGroupInfo == null)
            {
                return(PromptView("管理员组不存在"));
            }

            AdminGroupModel model = new AdminGroupModel();

            model.AdminGroupTitle = adminGroupInfo.Title;
            model.ActionList      = StringHelper.SplitString(adminGroupInfo.ActionList);
            Load();
            return(View(model));
        }
示例#2
0
        public ActionResult Add(AdminGroupModel model)
        {
            if (AdminGroups.GetAdminGroupIdByTitle(model.AdminGroupTitle) > 0)
            {
                ModelState.AddModelError("AdminGroupTitle", "名称已经存在");
            }

            if (ModelState.IsValid)
            {
                AdminGroupInfo adminGroupInfo = new AdminGroupInfo()
                {
                    Title      = model.AdminGroupTitle,
                    ActionList = CommonHelper.StringArrayToString(model.ActionList).ToLower()
                };

                AdminGroups.CreateAdminGroup(adminGroupInfo);
                AddAdminOperateLog("添加管理员组", "添加管理员组,管理员组为:" + model.AdminGroupTitle);
                return(PromptView("管理员组添加成功"));
            }
            Load();
            return(View(model));
        }
        public APIReturn UpdateOrCreateAdminPermission(AdminGroupModel updateadmingroup)
        {
            APIReturn result = adminPermissionService.UpdateOrCreateAdminPermission(updateadmingroup);

            return(result);
        }
示例#4
0
        /// <summary>
        /// 更新或新增權限
        /// </summary>
        /// <param name="updatepermission"></param>
        /// <returns></returns>
        public APIReturn UpdateOrCreateAdminPermission(AdminGroupModel UpdateAdminGroup)
        {
            string returnMsg = "";
            var    result    = new APIReturn(APIReturnCode.Fail, "");

            try
            {
                //檢查條件
                var isCodeNameEmpty = String.IsNullOrEmpty(UpdateAdminGroup.CodeName);

                if (isCodeNameEmpty)
                {
                    result = new APIReturn(APIReturnCode.Fail, "權限名稱必填");
                    return(result);
                }

                //找出該筆 ID
                var permission = db.TblPermission.Find(UpdateAdminGroup.Id);

                //勾選的權限
                var mapPM = UpdateAdminGroup.CheckedMenus.Select(a => new MapPermissionMenu()
                {
                    MenuId = a
                }).ToList();

                //編輯
                if (permission != null)
                {
                    //更新
                    permission.CodeName = UpdateAdminGroup.CodeName;
                    permission.IsEnable = UpdateAdminGroup.IsEnable;

                    //map表 先刪除再新增
                    var delmapPM = db.MapPermissionMenu.Where(x => x.PermissionId == permission.Id);
                    db.MapPermissionMenu.RemoveRange(delmapPM);
                    permission.MapPermissionMenu = mapPM;

                    returnMsg = "編輯成功";
                }
                else
                {
                    var _tempPermissionName = UpdateAdminGroup.CodeName.Trim().ToUpper();
                    if (db.TblPermission.Where(a => a.CodeName.ToUpper() == _tempPermissionName).FirstOrDefault() != null)
                    {
                        result = new APIReturn(APIReturnCode.Fail, "相同權限名稱已存在");
                        return(result);
                    }


                    //新增
                    db.TblPermission.Add(new TblPermission()
                    {
                        CodeName          = UpdateAdminGroup.CodeName,
                        IsEnable          = UpdateAdminGroup.IsEnable,
                        MapPermissionMenu = mapPM
                    });
                    returnMsg = "新增成功";
                }

                //寫入 DB
                db.SaveChanges();

                result = new APIReturn(APIReturnCode.Success, returnMsg);
                return(result);
            }
            catch (Exception ex)
            {
                result = new APIReturn(APIReturnCode.Exception, ex);
                return(result);
            }
        }