From 02befba1c4ec92a59f4bfb92b6a1b3d96849c8d7 Mon Sep 17 00:00:00 2001 From: devxb Date: Fri, 16 Feb 2024 11:57:51 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EB=AA=A8=EC=9E=84=20=EC=8B=9C=EC=9E=91,?= =?UTF-8?q?=20=EC=A2=85=EB=A3=8C=20=EC=95=8C=EB=A6=BC=EC=9D=B4=20=EB=AA=A8?= =?UTF-8?q?=EC=9E=84=20=EC=B0=B8=EC=97=AC=EC=9E=90=EA=B0=80=203=EB=AA=85?= =?UTF-8?q?=20=EC=9D=B4=EC=83=81=EC=9D=B4=20=EC=95=84=EB=8B=88=EB=9D=BC?= =?UTF-8?q?=EB=A9=B4,=20=EB=B0=9C=ED=96=89=EB=90=98=EC=A7=80=EC=95=8A?= =?UTF-8?q?=EB=8F=84=EB=A1=9D=20=EC=88=98=EC=A0=95=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/MeetingAlertPublisher.java | 33 +++++++++++-------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/src/main/java/net/teumteum/meeting/service/MeetingAlertPublisher.java b/src/main/java/net/teumteum/meeting/service/MeetingAlertPublisher.java index 858650e..bcc2bd8 100644 --- a/src/main/java/net/teumteum/meeting/service/MeetingAlertPublisher.java +++ b/src/main/java/net/teumteum/meeting/service/MeetingAlertPublisher.java @@ -16,6 +16,7 @@ @Transactional(readOnly = true) public class MeetingAlertPublisher { + private static final String KR_TIME_ZONE = "Asia/Seoul"; private static final String EVERY_ONE_MINUTES = "0 * * * * *"; private static final String EVERY_12PM = "0 0 12 * * *"; @@ -24,18 +25,20 @@ public class MeetingAlertPublisher { @Scheduled(cron = EVERY_ONE_MINUTES) public void alertBeforeMeeting() { - var alertStart = LocalDateTime.now(ZoneId.of("Asia/Seoul")).plusMinutes(5).withNano(0).withSecond(0); + var alertStart = LocalDateTime.now(ZoneId.of(KR_TIME_ZONE)).plusMinutes(5).withNano(0).withSecond(0); var alertEnd = alertStart.plusMinutes(1).withNano(0).withSecond(0); var alertTargets = meetingRepository.findAlertMeetings(alertStart, alertEnd); - alertTargets.forEach(meeting -> eventPublisher.publishEvent( - new BeforeMeetingAlerted(meeting.getParticipantUserIds()) - ) - ); + alertTargets.stream() + .filter(alertTarget -> alertTarget.getParticipantUserIds().size() > 2) + .forEach(meeting -> eventPublisher.publishEvent( + new BeforeMeetingAlerted(meeting.getParticipantUserIds()) + ) + ); } @Scheduled(cron = EVERY_12PM) public void alertEndMeeting() { - var today = LocalDateTime.now(ZoneId.of("Asia/Seoul")) + var today = LocalDateTime.now(ZoneId.of(KR_TIME_ZONE)) .withNano(0) .withSecond(0) .withMinute(0) @@ -44,14 +47,16 @@ public void alertEndMeeting() { var yesterday = today.minusDays(1); var alertTargets = meetingRepository.findAlertMeetings(yesterday, today); - alertTargets.forEach(meeting -> eventPublisher.publishEvent( - new EndMeetingAlerted(meeting.getId(), meeting.getTitle(), meeting.getParticipantUserIds()) - )); + alertTargets.stream() + .filter(alertTarget -> alertTarget.getParticipantUserIds().size() > 2) + .forEach(meeting -> eventPublisher.publishEvent( + new EndMeetingAlerted(meeting.getId(), meeting.getTitle(), meeting.getParticipantUserIds()) + )); } @Scheduled(cron = EVERY_ONE_MINUTES) public void alertEndMeetingForQa() { - var today = LocalDateTime.now(ZoneId.of("Asia/Seoul")) + var today = LocalDateTime.now(ZoneId.of(KR_TIME_ZONE)) .withNano(0) .withSecond(0) .withMinute(0) @@ -61,8 +66,10 @@ public void alertEndMeetingForQa() { var yesterday = today.minusDays(365); var alertTargets = meetingRepository.findAlertMeetings(yesterday, future); - alertTargets.forEach(meeting -> eventPublisher.publishEvent( - new EndMeetingAlerted(meeting.getId(), meeting.getTitle(), meeting.getParticipantUserIds()) - )); + alertTargets.stream() + .filter(alertTarget -> alertTarget.getParticipantUserIds().size() > 2) + .forEach(meeting -> eventPublisher.publishEvent( + new EndMeetingAlerted(meeting.getId(), meeting.getTitle(), meeting.getParticipantUserIds()) + )); } }