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; ...@@ -8,6 +8,7 @@ import com.example.apprecetas.user.infrastructure.mapper.UserMapper;
import com.example.apprecetas.user.infrastructure.repository.jpa.UserJpa; import com.example.apprecetas.user.infrastructure.repository.jpa.UserJpa;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.mapstruct.factory.Mappers; import org.mapstruct.factory.Mappers;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@Service @Service
...@@ -17,9 +18,12 @@ public class CreateUserUseCaseImpl implements CreateUserUseCase { ...@@ -17,9 +18,12 @@ public class CreateUserUseCaseImpl implements CreateUserUseCase {
private final CreateUserRepository repository; private final CreateUserRepository repository;
private final UserMapper mapper = Mappers.getMapper(UserMapper.class); private final UserMapper mapper = Mappers.getMapper(UserMapper.class);
private final PasswordEncoder passwordEncoder;
@Override @Override
public UserOutputDto create(UserInputDto userInputDto) { public UserOutputDto create(UserInputDto userInputDto) {
UserJpa userJpa = mapper.mapJpa(mapper.map(userInputDto)); UserJpa userJpa = mapper.mapJpa(mapper.map(userInputDto));
userJpa.setPassword(passwordEncoder.encode(userJpa.getPassword()));
UserJpa createdUser = repository.create(userJpa); UserJpa createdUser = repository.create(userJpa);
return mapper.map(mapper.mapJpa(createdUser)); return mapper.map(mapper.mapJpa(createdUser));
} }
......
...@@ -4,6 +4,7 @@ import com.example.apprecetas.user.domain.repository.UpdateUserRepository; ...@@ -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.UserJpa;
import com.example.apprecetas.user.infrastructure.repository.jpa.UserRepositoryJpa; import com.example.apprecetas.user.infrastructure.repository.jpa.UserRepositoryJpa;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.Optional; import java.util.Optional;
...@@ -14,6 +15,8 @@ public class UpdateUserRepositoryImpl implements UpdateUserRepository { ...@@ -14,6 +15,8 @@ public class UpdateUserRepositoryImpl implements UpdateUserRepository {
private final UserRepositoryJpa repositoryJpa; private final UserRepositoryJpa repositoryJpa;
private final PasswordEncoder passwordEncoder;
@Override @Override
public Optional<UserJpa> updateById(Long id, UserJpa userJpa) { public Optional<UserJpa> updateById(Long id, UserJpa userJpa) {
Optional<UserJpa> userJpaOptional = repositoryJpa.findById(id); Optional<UserJpa> userJpaOptional = repositoryJpa.findById(id);
...@@ -23,7 +26,7 @@ public class UpdateUserRepositoryImpl implements UpdateUserRepository { ...@@ -23,7 +26,7 @@ public class UpdateUserRepositoryImpl implements UpdateUserRepository {
jpa.setName(userJpa.getName()); jpa.setName(userJpa.getName());
jpa.setSurname(userJpa.getSurname()); jpa.setSurname(userJpa.getSurname());
jpa.setEmail(userJpa.getEmail()); jpa.setEmail(userJpa.getEmail());
jpa.setPassword(userJpa.getPassword()); jpa.setPassword(passwordEncoder.encode(userJpa.getPassword()));
}); });
return userJpaOptional.map(repositoryJpa::save); 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