diff --git a/src/main/java/io/wisoft/prepair/prepair_api/global/exception/ErrorCode.java b/src/main/java/io/wisoft/prepair/prepair_api/global/exception/ErrorCode.java index 6baff07..acfc775 100644 --- a/src/main/java/io/wisoft/prepair/prepair_api/global/exception/ErrorCode.java +++ b/src/main/java/io/wisoft/prepair/prepair_api/global/exception/ErrorCode.java @@ -23,6 +23,9 @@ public enum ErrorCode { RESOURCE_NOT_FOUND(HttpStatus.NOT_FOUND, "리소스를 찾을 수 없습니다."), DUPLICATE_RESOURCE(HttpStatus.CONFLICT, "이미 존재하는 리소스입니다."), + // Session + SESSION_NOT_FOUND(HttpStatus.NOT_FOUND, "세션을 찾을 수 없습니다."), + // Question QUESTION_NOT_FOUND(HttpStatus.NOT_FOUND, "질문을 찾을 수 없습니다."), diff --git a/src/main/java/io/wisoft/prepair/prepair_api/repository/SessionRepository.java b/src/main/java/io/wisoft/prepair/prepair_api/repository/SessionRepository.java index e3b4d37..c33a5d6 100644 --- a/src/main/java/io/wisoft/prepair/prepair_api/repository/SessionRepository.java +++ b/src/main/java/io/wisoft/prepair/prepair_api/repository/SessionRepository.java @@ -5,5 +5,4 @@ import org.springframework.data.jpa.repository.JpaRepository; public interface SessionRepository extends JpaRepository { - boolean existsByIdAndMemberId(UUID id, UUID memberId); } \ No newline at end of file diff --git a/src/main/java/io/wisoft/prepair/prepair_api/service/question/QuestionService.java b/src/main/java/io/wisoft/prepair/prepair_api/service/question/QuestionService.java index d5fb26d..a459d8a 100644 --- a/src/main/java/io/wisoft/prepair/prepair_api/service/question/QuestionService.java +++ b/src/main/java/io/wisoft/prepair/prepair_api/service/question/QuestionService.java @@ -80,7 +80,9 @@ public List generateVideoQuestions(UUID memberId, VideoInterv } public void validateSessionOwner(UUID sessionId, UUID memberId) { - if(!sessionRepository.existsByIdAndMemberId(sessionId, memberId)) { + InterviewSession session = sessionRepository.findById(sessionId) + .orElseThrow(() -> new BusinessException(ErrorCode.SESSION_NOT_FOUND)); + if (!session.getMemberId().equals(memberId)) { throw new BusinessException(ErrorCode.FORBIDDEN); } }