[R9] Add user method in service class

This commit is contained in:
Mirna Gama 2024-01-12 12:38:05 -03:00 committed by Mirna Gama
parent c318e58c3b
commit 3adadc7489
2 changed files with 32 additions and 0 deletions

View File

@ -5,6 +5,9 @@ import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.mirna.hospitalmanagementapi.application.usecase.user.FindUserByLoginUseCase; 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; import com.mirna.hospitalmanagementapi.domain.services.UserService;
/** /**
@ -19,6 +22,9 @@ import com.mirna.hospitalmanagementapi.domain.services.UserService;
@Service @Service
public class UserServiceImpl implements UserService { public class UserServiceImpl implements UserService {
@Autowired
private SaveUserUseCase saveUser;
@Autowired @Autowired
private FindUserByLoginUseCase findUserByLogin; private FindUserByLoginUseCase findUserByLogin;
@ -33,4 +39,18 @@ public class UserServiceImpl implements UserService {
return findUserByLogin.execute(login); 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);
}
} }

View File

@ -2,6 +2,9 @@ package com.mirna.hospitalmanagementapi.domain.services;
import org.springframework.security.core.userdetails.UserDetails; 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. * User service interface for managing user information.
* *
@ -11,6 +14,15 @@ import org.springframework.security.core.userdetails.UserDetails;
*/ */
public interface UserService { 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. * Finds a stored user information by login.
* *