From 3adadc7489933d661e8beaf222a52780450c59f3 Mon Sep 17 00:00:00 2001 From: Mirna Gama Date: Fri, 12 Jan 2024 12:38:05 -0300 Subject: [PATCH] [R9] Add user method in service class --- .../application/services/UserServiceImpl.java | 20 +++++++++++++++++++ .../domain/services/UserService.java | 12 +++++++++++ 2 files changed, 32 insertions(+) diff --git a/src/main/java/com/mirna/hospitalmanagementapi/application/services/UserServiceImpl.java b/src/main/java/com/mirna/hospitalmanagementapi/application/services/UserServiceImpl.java index 3b3a507..11f4495 100644 --- a/src/main/java/com/mirna/hospitalmanagementapi/application/services/UserServiceImpl.java +++ b/src/main/java/com/mirna/hospitalmanagementapi/application/services/UserServiceImpl.java @@ -5,6 +5,9 @@ import org.springframework.security.core.userdetails.UserDetails; import org.springframework.stereotype.Service; import com.mirna.hospitalmanagementapi.application.usecase.user.FindUserByLoginUseCase; +import com.mirna.hospitalmanagementapi.application.usecase.user.SaveUserUseCase; +import com.mirna.hospitalmanagementapi.domain.dtos.auth.UserDTO; +import com.mirna.hospitalmanagementapi.domain.entities.auth.User; import com.mirna.hospitalmanagementapi.domain.services.UserService; /** @@ -19,6 +22,9 @@ import com.mirna.hospitalmanagementapi.domain.services.UserService; @Service public class UserServiceImpl implements UserService { + @Autowired + private SaveUserUseCase saveUser; + @Autowired private FindUserByLoginUseCase findUserByLogin; @@ -33,4 +39,18 @@ public class UserServiceImpl implements UserService { return findUserByLogin.execute(login); } + /** + * Adds a new user to the repository. + * + * @param userDTO A data transfer object representing a user to add. + * @return The saved user if successful, or null if there is an error. + */ + @Override + public User addUser(UserDTO userDTO) { + + User user = new User(userDTO); + + return saveUser.execute(user); + } + } diff --git a/src/main/java/com/mirna/hospitalmanagementapi/domain/services/UserService.java b/src/main/java/com/mirna/hospitalmanagementapi/domain/services/UserService.java index 28f90e3..b69f526 100644 --- a/src/main/java/com/mirna/hospitalmanagementapi/domain/services/UserService.java +++ b/src/main/java/com/mirna/hospitalmanagementapi/domain/services/UserService.java @@ -2,6 +2,9 @@ package com.mirna.hospitalmanagementapi.domain.services; import org.springframework.security.core.userdetails.UserDetails; +import com.mirna.hospitalmanagementapi.domain.dtos.auth.UserDTO; +import com.mirna.hospitalmanagementapi.domain.entities.auth.User; + /** * User service interface for managing user information. * @@ -11,6 +14,15 @@ import org.springframework.security.core.userdetails.UserDetails; */ public interface UserService { + /** + * Adds a new user to the repository. + * + * @param userDTO A data transfer object representing a user to add. + * @return The saved user if successful, or null if there is an error. + */ + public User addUser(UserDTO userDTO); + + /** * Finds a stored user information by login. *