Class AuthServiceImpl

java.lang.Object
inha.git.auth.api.service.AuthServiceImpl
All Implemented Interfaces:
AuthService

@Service @Transactional public class AuthServiceImpl extends Object implements AuthService
AuthServiceImpl은 인증 관련 비즈니스 로직을 처리하는 서비스 클래스.
  • Constructor Details

    • AuthServiceImpl

      public AuthServiceImpl()
  • Method Details

    • login

      public LoginResponse login(LoginRequest loginRequest)
      사용자 로그인을 처리하는 서비스입니다.
      Specified by:
      login in interface AuthService
      Parameters:
      loginRequest - 이메일과 비밀번호를 포함한 로그인 요청 정보
      Returns:
      LoginResponse JWT 토큰과 사용자 정보를 포함한 로그인 응답
      Throws:
      BaseException - 다음의 경우에 발생: - NOT_FIND_USER: 존재하지 않는 이메일이거나 비밀번호가 일치하지 않는 경우 - ACCOUNT_LOCKED: 계정이 잠금 상태이거나 로그인 실패 횟수 초과로 잠긴 경우 - BLOCKED_USER: 관리자에 의해 차단된 사용자인 경우 - NOT_APPROVED_USER: 승인되지 않은 교수/기업 회원인 경우
    • findEmail

      public FindEmailResponse findEmail(FindEmailRequest findEmailRequest)
      학번과 이름으로 사용자의 이메일을 찾는 서비스입니다.
      Specified by:
      findEmail in interface AuthService
      Parameters:
      findEmailRequest - 학번과 이름이 포함된 이메일 찾기 요청 정보
      Returns:
      FindEmailResponse 찾은 사용자의 이메일 정보
      Throws:
      BaseException - NOT_FIND_USER - 해당하는 학번과 이름을 가진 사용자가 존재하지 않는 경우
    • changePassword

      public UserResponse changePassword(ChangePasswordRequest changePasswordRequest)
      비밀번호 찾기 후 새로운 비밀번호로 변경하는 서비스입니다.
      Specified by:
      changePassword in interface AuthService
      Parameters:
      changePasswordRequest - 이메일과 새로운 비밀번호가 포함된 요청
      Returns:
      UserResponse 비밀번호가 변경된 사용자의 정보
      Throws:
      BaseException - EMAIL_AUTH_NOT_FOUND: 이메일 인증이 완료되지 않은 경우, NOT_FIND_USER: 존재하지 않는 이메일이거나 활성 상태가 아닌 경우