예제 #1
0
        public async Task <UnlockUserResponse> UnlockUser(UnlockUserRequest request)
        {
            var session = await _sessionService.GetAuthenticatedSession();

            var response = new UnlockUserResponse();

            UserEntity user;

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

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

                uow.Commit();

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

            response.Notifications.Add($"User '{user.Username}' has been unlocked", NotificationTypeEnum.Success);
            return(response);
        }
예제 #2
0
        public async Task <UnlockUserResponse> UnlockUser(UnlockUserRequest request)
        {
            var sessionUser = await _sessionManager.GetUser();

            var response = new UnlockUserResponse();

            UserEntity user;

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

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

                uow.Commit();

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

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