diff --git a/main/src/main/java/org/sopt/makers/crew/main/internal/dto/InternalMeetingResponseDto.java b/main/src/main/java/org/sopt/makers/crew/main/internal/dto/InternalMeetingResponseDto.java index 9fd06ec6..479719f0 100644 --- a/main/src/main/java/org/sopt/makers/crew/main/internal/dto/InternalMeetingResponseDto.java +++ b/main/src/main/java/org/sopt/makers/crew/main/internal/dto/InternalMeetingResponseDto.java @@ -1,12 +1,16 @@ package org.sopt.makers.crew.main.internal.dto; import java.time.LocalDateTime; +import java.util.Arrays; +import java.util.List; import org.sopt.makers.crew.main.entity.meeting.Meeting; import org.sopt.makers.crew.main.entity.meeting.enums.EnMeetingStatus; +import org.sopt.makers.crew.main.entity.meeting.enums.MeetingJoinablePart; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; @Schema(name = "InternalMeetingResponseDto", description = "[Internal] 모임 조회 응답 Dto") public record InternalMeetingResponseDto( @@ -26,6 +30,13 @@ public record InternalMeetingResponseDto( @Schema(description = "모임 분류, [스터디 or 행사 or 세미나]", example = "스터디", allowableValues = {"스터디", "행사", "세미나"}) @NotNull String category, + @Schema(example = "[\n" + + " \"ANDROID\",\n" + + " \"IOS\"\n" + + " ]", description = "대상 파트 목록") + @NotNull + @Size(min = 1, max = 6) + List joinableParts, @Schema(description = "모임 차단 여부", example = "false") boolean isBlockedMeeting ) { @@ -33,6 +44,7 @@ public static InternalMeetingResponseDto of(Meeting meeting, LocalDateTime now, return new InternalMeetingResponseDto(meeting.getId(), meeting.getTitle(), meeting.getCanJoinOnlyActiveGeneration(), meeting.getMeetingStatus(now), meeting.getImageURL().get(0).getUrl(), meeting.getCategory().getValue(), + Arrays.stream(meeting.getJoinableParts()).toList(), isBlockedMeeting); } }