diff --git a/backend/src/main/java/moadong/club/entity/ClubQuestion.java b/backend/src/main/java/moadong/club/entity/ClubQuestion.java index 92fc16afe..8005c71d2 100644 --- a/backend/src/main/java/moadong/club/entity/ClubQuestion.java +++ b/backend/src/main/java/moadong/club/entity/ClubQuestion.java @@ -2,6 +2,7 @@ import jakarta.persistence.Id; import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Getter; @@ -24,10 +25,14 @@ public class ClubQuestion { private String clubId; - @NotBlank + @NotNull @Builder.Default private String title = ""; + @NotNull + @Builder.Default + private String description = ""; + @Builder.Default private List questions = new ArrayList<>(); @@ -41,6 +46,10 @@ public void updateFormTitle(String title) { this.title = title; } + public void updateFormDescription(String description) { + this.description = description; + } + public void updateQuestions(List newQuestions) { this.questions.clear(); this.questions.addAll(newQuestions); diff --git a/backend/src/main/java/moadong/club/payload/request/ClubApplicationCreateRequest.java b/backend/src/main/java/moadong/club/payload/request/ClubApplicationCreateRequest.java index 9148cf0ba..bc15eab37 100644 --- a/backend/src/main/java/moadong/club/payload/request/ClubApplicationCreateRequest.java +++ b/backend/src/main/java/moadong/club/payload/request/ClubApplicationCreateRequest.java @@ -9,9 +9,13 @@ public record ClubApplicationCreateRequest( @NotBlank - @Size(max = 20) + @Size(max = 50) String title, + @NotBlank + @Size(max = 500) + String description, + @NotNull @Valid List questions diff --git a/backend/src/main/java/moadong/club/payload/request/ClubApplicationEditRequest.java b/backend/src/main/java/moadong/club/payload/request/ClubApplicationEditRequest.java index a9167e037..a7658329e 100644 --- a/backend/src/main/java/moadong/club/payload/request/ClubApplicationEditRequest.java +++ b/backend/src/main/java/moadong/club/payload/request/ClubApplicationEditRequest.java @@ -9,9 +9,13 @@ public record ClubApplicationEditRequest( @NotBlank - @Size(max = 20) + @Size(max = 50) String title, + @NotBlank + @Size(max = 500) + String description, + @NotNull @Valid List questions diff --git a/backend/src/main/java/moadong/club/payload/request/ClubApplyQuestion.java b/backend/src/main/java/moadong/club/payload/request/ClubApplyQuestion.java index c74c8d3b2..e54162123 100644 --- a/backend/src/main/java/moadong/club/payload/request/ClubApplyQuestion.java +++ b/backend/src/main/java/moadong/club/payload/request/ClubApplyQuestion.java @@ -13,7 +13,7 @@ public record ClubApplyQuestion( @NotNull Long id, @NotBlank - @Size(max = 20) + @Size(max = 200) String title, @NotNull //빈칸 허용 String description, @@ -32,7 +32,7 @@ public record Options( public record QuestionItem( @NotNull - @Size(max = 20) + @Size(max = 200) String value ) {} } \ No newline at end of file diff --git a/backend/src/main/java/moadong/club/payload/response/ClubApplicationResponse.java b/backend/src/main/java/moadong/club/payload/response/ClubApplicationResponse.java index e22415897..bd9f0d6a7 100644 --- a/backend/src/main/java/moadong/club/payload/response/ClubApplicationResponse.java +++ b/backend/src/main/java/moadong/club/payload/response/ClubApplicationResponse.java @@ -8,6 +8,7 @@ @Builder public record ClubApplicationResponse( String title, + String description, List questions ) { -} +} \ No newline at end of file diff --git a/backend/src/main/java/moadong/club/service/ClubApplyService.java b/backend/src/main/java/moadong/club/service/ClubApplyService.java index 39077d1f3..080623464 100644 --- a/backend/src/main/java/moadong/club/service/ClubApplyService.java +++ b/backend/src/main/java/moadong/club/service/ClubApplyService.java @@ -20,10 +20,7 @@ import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; @@ -54,6 +51,7 @@ public ResponseEntity getClubApplication(String clubId) { ClubApplicationResponse clubApplicationResponse = ClubApplicationResponse.builder() .title(clubQuestion.getTitle()) + .description(Optional.ofNullable(clubQuestion.getDescription()).orElse("")) .questions(clubQuestion.getQuestions()) .build(); @@ -190,10 +188,14 @@ private ClubQuestion createQuestions(ClubQuestion clubQuestion, ClubApplicationC clubQuestion.updateQuestions(newQuestions); clubQuestion.updateFormTitle(request.title()); + clubQuestion.updateFormDescription(request.description()); return clubQuestion; } + /** + * update와 create 메서드는 추후 변경예정 + */ private ClubQuestion updateQuestions(ClubQuestion clubQuestion, ClubApplicationEditRequest request) { List newQuestions = new ArrayList<>(); @@ -224,6 +226,7 @@ private ClubQuestion updateQuestions(ClubQuestion clubQuestion, ClubApplicationE clubQuestion.updateQuestions(newQuestions); clubQuestion.updateFormTitle(request.title()); + clubQuestion.updateFormDescription(request.description()); return clubQuestion; }