From defb1b3d30a2817b3fadaa700344ed75366f7609 Mon Sep 17 00:00:00 2001 From: Mingyu Song <100754581+mikekks@users.noreply.github.com> Date: Tue, 19 Nov 2024 14:02:50 +0900 Subject: [PATCH] =?UTF-8?q?chore:=20category=20=ED=95=84=EB=93=9C=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80=20(#491)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: category 필드 추가 * chore: joinableParts 추가 --- .../dto/InternalMeetingResponseDto.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) 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 02d568e2..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,11 +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( @@ -22,13 +27,24 @@ public record InternalMeetingResponseDto( EnMeetingStatus status, @Schema(description = "모임 이미지", example = "[url 형식]") String imageUrl, + @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 ) { public static InternalMeetingResponseDto of(Meeting meeting, LocalDateTime now, boolean isBlockedMeeting) { return new InternalMeetingResponseDto(meeting.getId(), meeting.getTitle(), meeting.getCanJoinOnlyActiveGeneration(), meeting.getMeetingStatus(now), - meeting.getImageURL().get(0).getUrl(), + meeting.getImageURL().get(0).getUrl(), meeting.getCategory().getValue(), + Arrays.stream(meeting.getJoinableParts()).toList(), isBlockedMeeting); } }