Skip to content

Commit 3aac43c

Browse files
committed
fix: coderabbit issues#2
1 parent 8dd8811 commit 3aac43c

1 file changed

Lines changed: 11 additions & 7 deletions

File tree

src/main/java/com/itasocialacademy/oitassist/participation/service/InvitationServiceImpl.java

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import com.itasocialacademy.oitassist.competition.exceptions.StageNotFoundException;
1010
import com.itasocialacademy.oitassist.core.enums.ErrorCode;
1111
import com.itasocialacademy.oitassist.core.exceptions.AuthorizationException;
12+
import com.itasocialacademy.oitassist.participation.dao.dto.event.CompetitionValidatedDataEvent;
1213
import com.itasocialacademy.oitassist.participation.dao.dto.event.InvitationRequestEvent;
1314
import com.itasocialacademy.oitassist.participation.dao.dto.response.FailedInvitationResponse;
1415
import com.itasocialacademy.oitassist.participation.dao.dto.response.SucceededInvitationResponse;
@@ -61,7 +62,7 @@ public class InvitationServiceImpl implements InvitationService {
6162
public CreateInvitationResponse sendEnrollmentRequest(CreateInvitationRequest request) {
6263
Long competitionId = request.getCompetitionId();
6364
Long stageId = request.getStageId();
64-
validateCompetitionAndStageInfo(competitionId, stageId);
65+
CompetitionValidatedDataEvent competitionData = validateCompetitionAndStageInfo(competitionId, stageId);
6566
List<Long> studentIds = validateNoDuplicatesOrThrow(request.getStudentIds());
6667

6768
List<UserAuthDetails> foundUsers = userFacade.findByIds(studentIds);
@@ -105,7 +106,7 @@ public CreateInvitationResponse sendEnrollmentRequest(CreateInvitationRequest re
105106
.build();
106107

107108
if (!succeeded.isEmpty()) {
108-
scheduleInvitationEmail(competitionId, stageId, succeeded);
109+
scheduleInvitationEmail(competitionData, succeeded);
109110
}
110111

111112
return response;
@@ -174,7 +175,7 @@ private List<Long> validateNoDuplicatesOrThrow(List<Long> rawIds) {
174175
return rawIds;
175176
}
176177

177-
private void validateCompetitionAndStageInfo(Long competitionId, Long stageId) {
178+
private CompetitionValidatedDataEvent validateCompetitionAndStageInfo(Long competitionId, Long stageId) {
178179
CompetitionDetail competitionDetail = getCompetitionInfoOrThrow(competitionId);
179180
StageDetail stageDetail = getStageInfoOrThrow(stageId);
180181
if (competitionDetail.competitionStatus() != CompetitionStatus.ENROLLMENT) {
@@ -183,6 +184,10 @@ private void validateCompetitionAndStageInfo(Long competitionId, Long stageId) {
183184
if (!stageDetail.competitionId().equals(competitionId)) {
184185
throw new CompetitionHierarchyValidationException("Specified stage does not belong to this competition");
185186
}
187+
return CompetitionValidatedDataEvent.builder()
188+
.competitionTitle(competitionDetail.title())
189+
.stageTitle(stageDetail.title())
190+
.build();
186191
}
187192

188193
private Invitation getPendingInvitationOrThrow(Long applicationId) {
@@ -237,12 +242,11 @@ private boolean isPendingInvitationConstraintViolation(DataIntegrityViolationExc
237242
}
238243

239244
private void scheduleInvitationEmail(
240-
Long competitionId, Long stageId, List<SucceededInvitationResponse> succeeded) {
241-
String competitionTitle = getCompetitionInfoOrThrow(competitionId).title();
242-
String stageTitle = getStageInfoOrThrow(stageId).title();
245+
CompetitionValidatedDataEvent competitionData,
246+
List<SucceededInvitationResponse> succeeded) {
243247
List<UserProfileDetails> users = getUserProfiles(succeeded);
244248
InvitationRequestEvent event = new InvitationRequestEvent(
245-
competitionTitle, stageTitle, users);
249+
competitionData.competitionTitle(), competitionData.stageTitle(), users);
246250
sender.sendInvitationEmail(event);
247251
}
248252

0 commit comments

Comments
 (0)