## 어떤 기능인가요? > 선행: #115 (즉시 알림) 정해진 시각에 가는 예약 알림 6종을 붙인다. 모든 시각은 KST. | 알림 | 발송 | 수신자 | | --- | --- | --- | | 신청한 행사 임박 | 행사 전날 10:00 | 신청자 | | 행사 모집 마감 임박 | 모집 마감 전날 10:00 (모집 중인 행사만) | 활성 회원 − 신청자 | | 사물함 모집 마감 임박 | 모집 마감 전날 10:00 | 활성 회원 − 그 회차 신청자 | | 사물함 이용 기간 만료 임박 | 이용 종료 3일 전 10:00 | 그 회차 신청자 | | 반납 기한 임박 | 반납 기한 1시간 전 (10분 간격으로 확인) | 대여 중인 신청자 | | 반납 연체 | 반납할 때까지 매일 10:00 | 대여 중인 신청자 | ## 📝 작업 상세 내용 - [ ] `common.event`에 이벤트 record 6종, 리스너 메서드 - [ ] `EventNotificationScheduler` + 내일 시작·마감 행사, 신청자 ID 조회 - [ ] `LockerNotificationScheduler` + 마감·만료 대상 회차, 회차별 신청자 ID 조회 - [ ] `RentalNotificationScheduler` + 대여 중 이력 조회 (`RentalRecord.dueAt()`으로 기한 계산) - [ ] `architecture.md`에 예약 알림 스케줄러 위치(도메인 `service.impl`) 반영 ## 📁 참고 자료 (선택) - 스케줄러는 각 도메인 `service.impl`에 두고 아웃박스에 기록만 한다 - 서버가 그 시각에 내려가 있어 놓친 알림은 다시 보내지 않는다 - 반납 연체는 문구표의 "1시간 경과 시 1회씩" 대신 하루 한 번 10시로 바꿨다 - 반납 정책이 비어 있는 물품은 기한을 계산할 수 없어 건너뛴다
Activity
Merge pull request #121 from billilge/feat/#116-scheduled-notifications