Пример #1
0
        public ActionResult EditUserPermission(Guid userId, List <string> permissions)
        {
            return(HttpHandleExtensions.AjaxCallGetResult(() =>
            {
                var pList = new List <Guid>();

                foreach (var s in permissions.OpSafe())
                {
                    Guid id;
                    if (Guid.TryParse(s, out id))
                    {
                        pList.Add(id);
                    }
                }

                _userService.UpdateUserPermission(userId, pList);
                AuthorizeManager.ClearUserCache(userId);

                this.JsMessage = MessagesResources.Update_Success;
                return Json(new AjaxResponse
                {
                    Succeeded = true,
                    RedirectUrl = Url.Action("EditUserPermission", new
                    {
                        userId
                    })
                });
            }));
        }
Пример #2
0
        public ActionResult EditUser(UserDTO user)
        {
            return(HttpHandleExtensions.AjaxCallGetResult(() =>
            {
                if (user.LastLogin == DateTime.MinValue) //最后登录时间字段为空时,数据为datetime默认的{0001/1/1 0:00:00},新增或修改用户时报错
                {
                    user.LastLogin = Convert.ToDateTime("1900-01-01T00:00:00.000");
                }

                if (user.Id == Guid.Empty)
                {
                    _userService.Add(user);
                    this.JsMessage = MessagesResources.Add_Success;
                }
                else
                {
                    _userService.Update(user);
                    this.JsMessage = MessagesResources.Update_Success;
                }
                AuthorizeManager.ClearUserCache(user.Id);

                return Json(new AjaxResponse
                {
                    Succeeded = true,
                    RedirectUrl = Url.Action("Index")
                });
            }));
        }
Пример #3
0
        public ActionResult RemoveUser(Guid id)
        {
            return(HttpHandleExtensions.AjaxCallGetResult(() =>
            {
                _userService.Remove(id);
                AuthorizeManager.ClearUserCache(id);

                this.JsMessage = MessagesResources.Remove_Success;
                return Json(new AjaxResponse
                {
                    Succeeded = true,
                    RedirectUrl = Url.Action("Index")
                }, JsonRequestBehavior.AllowGet);
            }));
        }
        public ActionResult EditUserList(Guid groupId, List <string> users)
        {
            return(HttpHandleExtensions.AjaxCallGetResult(() =>
            {
                var pList = new List <Guid>();

                foreach (var s in users.OpSafe())
                {
                    Guid id;
                    if (Guid.TryParse(s, out id))
                    {
                        pList.Add(id);
                    }
                }

                // 清除用户缓存
                var oldUsers = _roleGroupService.GetUsersIdName(groupId);

                _roleGroupService.UpdateGroupUsers(groupId, pList);

                // 清除用户缓存
                foreach (var u in oldUsers)
                {
                    AuthorizeManager.ClearUserCache(u.Id);
                }
                foreach (var id in pList)
                {
                    AuthorizeManager.ClearUserCache(id);
                }

                this.JsMessage = MessagesResources.Update_Success;
                return Json(new AjaxResponse
                {
                    Succeeded = true,
                    RedirectUrl = Url.Action("EditUserList", new
                    {
                        groupId
                    })
                });
            }));
        }
        public ActionResult EditRolePermission(Guid roleId, List <string> permissions)
        {
            return(HttpHandleExtensions.AjaxCallGetResult(() =>
            {
                var pList = new List <Guid>();

                foreach (var s in permissions)
                {
                    Guid id;
                    if (Guid.TryParse(s, out id))
                    {
                        pList.Add(id);
                    }
                }

                _roleService.UpdateRolePermission(roleId, pList);

                // 清除用户缓存
                var role = _roleService.FindBy(roleId);
                if (role != null)
                {
                    var users = _roleGroupService.GetUsersIdName(role.RoleGroupId);
                    foreach (var user in users)
                    {
                        AuthorizeManager.ClearUserCache(user.Id);
                    }
                }

                this.JsMessage = MessagesResources.Update_Success;
                return Json(new AjaxResponse
                {
                    Succeeded = true,
                    RedirectUrl = Url.Action("EditRolePermission", new
                    {
                        roleId
                    })
                });
            }));
        }