예제 #1
0
        public async Task <DisableUserResponse> DisableUser(DisableUserRequest request)
        {
            var session = await _sessionService.GetAuthenticatedSession();

            var response = new DisableUserResponse();

            UserEntity user;

            using (var uow = _uowFactory.GetUnitOfWork())
            {
                user = await uow.UserRepo.GetUserById(new Infrastructure.Repositories.UserRepo.Models.GetUserByIdRequest()
                {
                    Id = request.Id
                });

                await uow.UserRepo.DisableUser(new Infrastructure.Repositories.UserRepo.Models.DisableUserRequest()
                {
                    Id         = request.Id,
                    Updated_By = session.User.Entity.Id
                });

                uow.Commit();

                await _sessionService.WriteSessionLogEvent(new Models.ServiceModels.Session.CreateSessionLogEventRequest()
                {
                    EventKey = SessionEventKeys.UserDisabled
                });
            }

            response.Notifications.Add($"User '{user.Username}' has been disabled", NotificationTypeEnum.Success);
            return(response);
        }
예제 #2
0
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            DisableUserResponse response = new DisableUserResponse();


            return(response);
        }
예제 #3
0
        public static DisableUserResponse Unmarshall(UnmarshallerContext context)
        {
            DisableUserResponse disableUserResponse = new DisableUserResponse();

            disableUserResponse.HttpResponse = context.HttpResponse;
            disableUserResponse.RequestId    = context.StringValue("DisableUser.RequestId");
            disableUserResponse.Success      = context.BooleanValue("DisableUser.Success");
            disableUserResponse.ErrorMessage = context.StringValue("DisableUser.ErrorMessage");
            disableUserResponse.ErrorCode    = context.StringValue("DisableUser.ErrorCode");

            return(disableUserResponse);
        }
예제 #4
0
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            DisableUserResponse response = new DisableUserResponse();

            context.Read();
            int targetDepth = context.CurrentDepth;

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("userId", targetDepth))
                {
                    var unmarshaller = StringUnmarshaller.Instance;
                    response.UserId = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }
예제 #5
0
        public async Task <DisableUserResponse> DisableUser(DisableUserRequest request)
        {
            var sessionUser = await _sessionManager.GetUser();

            var response = new DisableUserResponse();

            UserEntity user;

            using (var uow = _uowFactory.GetUnitOfWork())
            {
                user = await uow.UserRepo.GetUserById(new Repositories.DatabaseRepos.UserRepo.Models.GetUserByIdRequest()
                {
                    Id = request.Id
                });

                await uow.UserRepo.DisableUser(new Repositories.DatabaseRepos.UserRepo.Models.DisableUserRequest()
                {
                    Id         = request.Id,
                    Updated_By = sessionUser.Id
                });

                uow.Commit();

                await _sessionManager.WriteSessionLogEvent(new Models.ManagerModels.Session.CreateSessionLogEventRequest()
                {
                    EventKey = SessionEventKeys.UserDisabled,
                    Info     = new Dictionary <string, string>()
                    {
                        { "User_Id", request.Id.ToString() }
                    }
                });
            }

            response.Notifications.Add($"User '{user.Username}' has been disabled", NotificationTypeEnum.Success);
            return(response);
        }