Skip to content

Commit fb22412

Browse files
authored
Merge pull request #365 from mosu-dev/feat/fix-deposit
feat: add application status update on deposit success event handling
2 parents 929e98f + 6141749 commit fb22412

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/main/java/life/mosu/mosuserver/application/virtualaccount/event/DepositSuccessEventHandler.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33

44
import life.mosu.mosuserver.application.virtualaccount.VirtualAccountLogService;
5+
import life.mosu.mosuserver.domain.application.entity.ApplicationStatus;
6+
import life.mosu.mosuserver.domain.application.repository.ApplicationJpaRepository;
57
import life.mosu.mosuserver.domain.examapplication.repository.ExamApplicationJpaRepository;
68
import life.mosu.mosuserver.domain.virtualaccount.DepositStatus;
79
import life.mosu.mosuserver.domain.virtualaccount.VirtualAccountLogJpaEntity;
@@ -25,7 +27,7 @@ public class DepositSuccessEventHandler implements DepositEventHandler<DepositSu
2527
private final MailNotifier<DepositSuccessMailRequest> mailer;
2628
private final NotifyEventPublisher notifier;
2729
private final ExamApplicationJpaRepository examApplicationJpaRepository;
28-
30+
private final ApplicationJpaRepository applicationJpaRepository;
2931
@Override
3032
@Transactional
3133
public void handle(DepositSuccessEvent event) {
@@ -38,6 +40,12 @@ public void handle(DepositSuccessEvent event) {
3840
.orElseThrow(
3941
() -> new CustomRuntimeException(ErrorCode.EXAM_APPLICATION_NOT_FOUND));
4042

43+
var application = applicationJpaRepository.findById(log.getApplicationId())
44+
.orElseThrow(
45+
() -> new CustomRuntimeException(ErrorCode.APPLICATION_LIST_NOT_FOUND));
46+
if (application.getStatus() == ApplicationStatus.PENDING) {
47+
application.changeStatus(ApplicationStatus.APPROVED);
48+
}
4149
LunaNotificationEvent lunaNotificationEvent = LunaNotificationEvent.create(
4250
LunaNotificationStatus.APPLICATION_GUEST_SUCCESS,
4351
exam.getUserId(), exam.getId());

0 commit comments

Comments
 (0)