diff --git a/src/main/java/life/mosu/mosuserver/application/notify/NotifyVariableFactory.java b/src/main/java/life/mosu/mosuserver/application/notify/NotifyVariableFactory.java index 18ab6beb..1101ab5a 100644 --- a/src/main/java/life/mosu/mosuserver/application/notify/NotifyVariableFactory.java +++ b/src/main/java/life/mosu/mosuserver/application/notify/NotifyVariableFactory.java @@ -85,7 +85,7 @@ private LunaNotificationVariable createApplicationVariable(Long targetId) { } private LunaNotificationVariable createApplicationGuestVariable(Long targetId) { - ExamApplicationNotifyProjection projection = examApplicationRepository.findExamAndPaymentByExamApplicationId( + ExamApplicationNotifyProjection projection = examApplicationRepository.findExamAndVirtualAccountByExamApplicationId( targetId) .orElseThrow( () -> new CustomRuntimeException(ErrorCode.EXAM_APPLICATION_NOT_FOUND)); diff --git a/src/main/java/life/mosu/mosuserver/domain/examapplication/repository/ExamApplicationJpaRepository.java b/src/main/java/life/mosu/mosuserver/domain/examapplication/repository/ExamApplicationJpaRepository.java index 2c4119de..24f394f2 100644 --- a/src/main/java/life/mosu/mosuserver/domain/examapplication/repository/ExamApplicationJpaRepository.java +++ b/src/main/java/life/mosu/mosuserver/domain/examapplication/repository/ExamApplicationJpaRepository.java @@ -115,6 +115,24 @@ Optional findExamAndPaymentByExamApplicationId( @Param("targetId") Long targetId); + @Query(""" + SELECT new life.mosu.mosuserver.domain.examapplication.projection.ExamApplicationNotifyProjection( + va.orderId, + e.examDate, + e.schoolName, + ea.isLunchChecked, + e.lunchName + ) + FROM ExamApplicationJpaEntity ea + JOIN ExamJpaEntity e ON ea.examId = e.id + JOIN VirtualAccountLogJpaEntity va ON va.applicationId = ea.applicationId + WHERE ea.id = :examApplicationId + AND va.depositStatus = 'DONE' + """) + Optional findExamAndVirtualAccountByExamApplicationId( + @Param("examApplicationId") Long examApplicationId); + + @Query(""" SELECT new life.mosu.mosuserver.domain.examapplication.projection.ExamInfoProjection( e.examDate,