perf(Create/UpdateUser): añadido cifrado de contraseña al crear y actualizar usuario

parent 27ed2ce2
......@@ -8,6 +8,7 @@ import com.example.apprecetas.user.infrastructure.mapper.UserMapper;
import com.example.apprecetas.user.infrastructure.repository.jpa.UserJpa;
import lombok.RequiredArgsConstructor;
import org.mapstruct.factory.Mappers;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;
@Service
......@@ -17,9 +18,12 @@ public class CreateUserUseCaseImpl implements CreateUserUseCase {
private final CreateUserRepository repository;
private final UserMapper mapper = Mappers.getMapper(UserMapper.class);
private final PasswordEncoder passwordEncoder;
@Override
public UserOutputDto create(UserInputDto userInputDto) {
UserJpa userJpa = mapper.mapJpa(mapper.map(userInputDto));
userJpa.setPassword(passwordEncoder.encode(userJpa.getPassword()));
UserJpa createdUser = repository.create(userJpa);
return mapper.map(mapper.mapJpa(createdUser));
}
......
......@@ -4,6 +4,7 @@ import com.example.apprecetas.user.domain.repository.UpdateUserRepository;
import com.example.apprecetas.user.infrastructure.repository.jpa.UserJpa;
import com.example.apprecetas.user.infrastructure.repository.jpa.UserRepositoryJpa;
import lombok.RequiredArgsConstructor;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Repository;
import java.util.Optional;
......@@ -14,6 +15,8 @@ public class UpdateUserRepositoryImpl implements UpdateUserRepository {
private final UserRepositoryJpa repositoryJpa;
private final PasswordEncoder passwordEncoder;
@Override
public Optional<UserJpa> updateById(Long id, UserJpa userJpa) {
Optional<UserJpa> userJpaOptional = repositoryJpa.findById(id);
......@@ -23,7 +26,7 @@ public class UpdateUserRepositoryImpl implements UpdateUserRepository {
jpa.setName(userJpa.getName());
jpa.setSurname(userJpa.getSurname());
jpa.setEmail(userJpa.getEmail());
jpa.setPassword(userJpa.getPassword());
jpa.setPassword(passwordEncoder.encode(userJpa.getPassword()));
});
return userJpaOptional.map(repositoryJpa::save);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment