Esempio n. 1
0
        public void Handle(UserLostRole evt)
        {
            _unitOfWork.WithAuthUserTransaction(tran => {
                var authUser = _authUserRepository.FindById(evt.RemovedBy);
                var adminLog = AdminLog.RoleLostLog(_idGenerator.ReservePool(), _clock, authUser,
                                                    evt.RoleId, evt.Rolename, evt.UserId, evt.Username);
                _adminLogRepository.Save(adminLog);

                tran.Commit();
            });
        }
Esempio n. 2
0
        public void RemoveRole(UserId responsibleUserId, RoleId roleId, UserId userId)
        {
            _unitOfWork.WithAuthUserTransaction(tran => {
                var role     = FindRole(roleId);
                var authUser = _authUserRepository.FindByIdOrNull(userId);
                if (authUser is null)
                {
                    throw new ManualValidationException("User not found");
                }

                _userRoleDomainService.RemoveRole(authUser, role);
                _authUserRepository.Save(authUser);

                _unitOfWork.Raise(UserLostRole.Factory(role, authUser, responsibleUserId));

                tran.Commit();
            });
        }