Ejemplo n.º 1
0
        protected override async Task <UpdateUserResponse> AssertForUpdateAction(UpdateUserRequest request)
        {
            if (request.UserName != null)
            {
                var userWithDuplicatedUserName = await _userRepository.Get(new Name(request.UserName));

                if (userWithDuplicatedUserName != null && userWithDuplicatedUserName.Id != request.Id)
                {
                    return(UpdateUserResponse.DuplicatedUserName(new[] { "The specified user name is already in use." }));
                }
            }

            return(null);
        }
Ejemplo n.º 2
0
        protected override async Task <UpdateUserResponse> AssertForUpdateAction(UpdateUserRequest request)
        {
            var userToUpdate = await _userRepository.Get(request.Id);

            if (request.UserName != null)
            {
                userToUpdate.SetName(new Name(request.UserName));
            }
            if (request.Password != null)
            {
                userToUpdate.SetPassword(new Password(request.Password));
            }
            if (request.Roles != null)
            {
                userToUpdate.SetRoles(request.Roles.Select(role => new Role(new Name(role))));
            }

            await _userRepository.Update(userToUpdate);

            return(UpdateUserResponse.Success(userToUpdate, "User successfully updated."));
        }
Ejemplo n.º 3
0
        protected override async Task <UpdateUserResponse> AssertForUpdateAction(UpdateUserRequest request)
        {
            var userToUpdate = await _userRepository.Get(request.Id);

            return(userToUpdate == null?UpdateUserResponse.UserNotFound(new[] { "User does not exist." }) : null);
        }