File tree Expand file tree Collapse file tree
timetablelecturereminder/service Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ import com.wafflestudio.snutt.common.util.SemesterUtils
77import com.wafflestudio.snutt.timetablelecturereminder.data.TimetableLectureReminder
88import com.wafflestudio.snutt.timetablelecturereminder.repository.TimetableLectureReminderRepository
99import com.wafflestudio.snutt.timetables.data.Timetable
10+ import com.wafflestudio.snutt.timetables.event.data.TimetableLectureDeletedEvent
1011import com.wafflestudio.snutt.timetables.event.data.TimetableLectureModifiedEvent
1112import com.wafflestudio.snutt.timetables.repository.TimetableRepository
1213import org.springframework.context.event.EventListener
@@ -113,4 +114,9 @@ class TimetableLectureReminderServiceImpl(
113114 }
114115 timetableLectureReminderRepository.save(reminder.copy(schedules = newSchedules))
115116 }
117+
118+ @EventListener
119+ suspend fun handleTimetableLectureDeletedEvent (event : TimetableLectureDeletedEvent ) {
120+ deleteReminder(event.timetableLectureId)
121+ }
116122}
Original file line number Diff line number Diff line change 1+ package com.wafflestudio.snutt.timetables.event.data
2+
3+ data class TimetableLectureDeletedEvent (
4+ val timetableLectureId : String ,
5+ )
Original file line number Diff line number Diff line change @@ -14,6 +14,7 @@ import com.wafflestudio.snutt.timetables.data.Timetable
1414import com.wafflestudio.snutt.timetables.data.TimetableLecture
1515import com.wafflestudio.snutt.timetables.dto.request.CustomTimetableLectureAddLegacyRequestDto
1616import com.wafflestudio.snutt.timetables.dto.request.TimetableLectureModifyLegacyRequestDto
17+ import com.wafflestudio.snutt.timetables.event.data.TimetableLectureDeletedEvent
1718import com.wafflestudio.snutt.timetables.event.data.TimetableLectureModifiedEvent
1819import com.wafflestudio.snutt.timetables.repository.TimetableRepository
1920import org.springframework.context.ApplicationEventPublisher
@@ -160,7 +161,9 @@ class TimetableLectureServiceImpl(
160161 timetableLectureId : String ,
161162 ): Timetable {
162163 timetableRepository.findByUserIdAndId(userId, timetableId) ? : throw TimetableNotFoundException
163- return timetableRepository.pullTimetableLecture(timetableId, timetableLectureId)
164+ val updatedTimetable = timetableRepository.pullTimetableLecture(timetableId, timetableLectureId)
165+ eventPublisher.publishEvent(TimetableLectureDeletedEvent (timetableLectureId))
166+ return updatedTimetable
164167 }
165168
166169 private suspend fun resolveTimeConflict (
You can’t perform that action at this time.
0 commit comments