diff --git a/backend/src/main/java/com/festago/admin/repository/AdminFestivalDetailV1QueryDslRepository.java b/backend/src/main/java/com/festago/admin/repository/AdminFestivalDetailV1QueryDslRepository.java index 1e982dc9f..2f722d763 100644 --- a/backend/src/main/java/com/festago/admin/repository/AdminFestivalDetailV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/admin/repository/AdminFestivalDetailV1QueryDslRepository.java @@ -25,7 +25,7 @@ public Optional findDetail(Long festivalId) { school.name, festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, festival.createdAt, festival.updatedAt ) diff --git a/backend/src/main/java/com/festago/artist/repository/ArtistDetailV1QueryDslRepository.java b/backend/src/main/java/com/festago/artist/repository/ArtistDetailV1QueryDslRepository.java index 0dd738280..859bc8996 100644 --- a/backend/src/main/java/com/festago/artist/repository/ArtistDetailV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/artist/repository/ArtistDetailV1QueryDslRepository.java @@ -98,7 +98,7 @@ private JPAQuery selectArtistDetailResponse(Long festival.name, festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, festivalQueryInfo.artistInfo)) .from(stageArtist) .innerJoin(stage).on(stageArtist.artistId.eq(artistId).and(stage.id.eq(stageArtist.stageId))) diff --git a/backend/src/main/java/com/festago/bookmark/repository/v1/FestivalBookmarkV1QueryDslRepository.java b/backend/src/main/java/com/festago/bookmark/repository/v1/FestivalBookmarkV1QueryDslRepository.java index d96634e8b..d4a8d2f0d 100644 --- a/backend/src/main/java/com/festago/bookmark/repository/v1/FestivalBookmarkV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/bookmark/repository/v1/FestivalBookmarkV1QueryDslRepository.java @@ -43,7 +43,7 @@ public List findBookmarkedFestivals( festival.name, festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, new QSchoolV1Response( school.id, school.name diff --git a/backend/src/main/java/com/festago/festival/application/command/FestivalUpdateService.java b/backend/src/main/java/com/festago/festival/application/command/FestivalUpdateService.java index 3ebeb1437..5172236a7 100644 --- a/backend/src/main/java/com/festago/festival/application/command/FestivalUpdateService.java +++ b/backend/src/main/java/com/festago/festival/application/command/FestivalUpdateService.java @@ -24,7 +24,7 @@ public class FestivalUpdateService { public void updateFestival(Long festivalId, FestivalUpdateCommand command) { Festival festival = festivalRepository.getOrThrow(festivalId); festival.changeName(command.name()); - festival.changeThumbnail(command.posterImageUrl()); + festival.changePosterImageUrl(command.posterImageUrl()); festival.changeFestivalDuration(new FestivalDuration(command.startDate(), command.endDate())); validators.forEach(validator -> validator.validate(festival)); } diff --git a/backend/src/main/java/com/festago/festival/domain/Festival.java b/backend/src/main/java/com/festago/festival/domain/Festival.java index fe89beddc..a40ebd075 100644 --- a/backend/src/main/java/com/festago/festival/domain/Festival.java +++ b/backend/src/main/java/com/festago/festival/domain/Festival.java @@ -3,7 +3,6 @@ import com.festago.common.domain.BaseTimeEntity; import com.festago.common.util.Validator; import com.festago.school.domain.School; -import jakarta.persistence.Column; import jakarta.persistence.Embedded; import jakarta.persistence.Entity; import jakarta.persistence.FetchType; @@ -22,9 +21,9 @@ @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Festival extends BaseTimeEntity { - private static final String DEFAULT_THUMBNAIL = "https://picsum.photos/536/354"; + private static final String DEFAULT_POSTER_IMAGE_URL = "https://picsum.photos/536/354"; private static final int MAX_NAME_LENGTH = 50; - private static final int MAX_THUMBNAIL_LENGTH = 255; + private static final int MAX_POSTER_IMAGE_URL_LENGTH = 255; @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @@ -38,31 +37,30 @@ public class Festival extends BaseTimeEntity { private FestivalDuration festivalDuration; @NotNull - @Size(max = MAX_THUMBNAIL_LENGTH) - @Column(name = "poster_image_url") - private String thumbnail; + @Size(max = MAX_POSTER_IMAGE_URL_LENGTH) + private String posterImageUrl; @NotNull @ManyToOne(fetch = FetchType.LAZY) private School school; public Festival(String name, FestivalDuration festivalDuration, School school) { - this(null, name, festivalDuration, DEFAULT_THUMBNAIL, school); + this(null, name, festivalDuration, DEFAULT_POSTER_IMAGE_URL, school); } - public Festival(String name, FestivalDuration festivalDuration, String thumbnail, School school) { - this(null, name, festivalDuration, thumbnail, school); + public Festival(String name, FestivalDuration festivalDuration, String posterImageUrl, School school) { + this(null, name, festivalDuration, posterImageUrl, school); } - public Festival(Long id, String name, FestivalDuration festivalDuration, String thumbnail, School school) { + public Festival(Long id, String name, FestivalDuration festivalDuration, String posterImageUrl, School school) { validateName(name); validateFestivalDuration(festivalDuration); - validateThumbnail(thumbnail); + validatePosterImageUrl(posterImageUrl); validateSchool(school); this.id = id; this.name = name; this.festivalDuration = festivalDuration; - this.thumbnail = thumbnail; + this.posterImageUrl = posterImageUrl; this.school = school; } @@ -72,10 +70,10 @@ private void validateName(String name) { Validator.maxLength(name, MAX_NAME_LENGTH, fieldName); } - private void validateThumbnail(String thumbnail) { - String fieldName = "thumbnail"; - Validator.notBlank(thumbnail, fieldName); - Validator.maxLength(thumbnail, MAX_THUMBNAIL_LENGTH, fieldName); + private void validatePosterImageUrl(String posterImageUrl) { + String fieldName = "posterImageUrl"; + Validator.notBlank(posterImageUrl, fieldName); + Validator.maxLength(posterImageUrl, MAX_POSTER_IMAGE_URL_LENGTH, fieldName); } private void validateFestivalDuration(FestivalDuration festivalDuration) { @@ -99,14 +97,9 @@ public void changeName(String name) { this.name = name; } - public void changeThumbnail(String thumbnail) { - validateThumbnail(thumbnail); - this.thumbnail = thumbnail; - } - - @Deprecated(forRemoval = true) - public void changeDate(LocalDate startDate, LocalDate endDate) { - this.festivalDuration = new FestivalDuration(startDate, endDate); + public void changePosterImageUrl(String posterImageUrl) { + validatePosterImageUrl(posterImageUrl); + this.posterImageUrl = posterImageUrl; } public void changeFestivalDuration(FestivalDuration festivalDuration) { @@ -130,8 +123,8 @@ public LocalDate getEndDate() { return festivalDuration.getEndDate(); } - public String getThumbnail() { - return thumbnail; + public String getPosterImageUrl() { + return posterImageUrl; } public School getSchool() { diff --git a/backend/src/main/java/com/festago/festival/repository/ArtistFestivalSearchV1QueryDslRepository.java b/backend/src/main/java/com/festago/festival/repository/ArtistFestivalSearchV1QueryDslRepository.java index 1a8a17661..da4f277f6 100644 --- a/backend/src/main/java/com/festago/festival/repository/ArtistFestivalSearchV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/festival/repository/ArtistFestivalSearchV1QueryDslRepository.java @@ -45,7 +45,7 @@ private List searchByExpression(BooleanExpression expr festival.name, festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, festivalQueryInfo.artistInfo)) .from(artist) .innerJoin(stageArtist).on(expression.and(stageArtist.artistId.eq(artist.id))) diff --git a/backend/src/main/java/com/festago/festival/repository/FestivalDetailV1QueryDslRepository.java b/backend/src/main/java/com/festago/festival/repository/FestivalDetailV1QueryDslRepository.java index 2dea61e4b..ddb1eb2ae 100644 --- a/backend/src/main/java/com/festago/festival/repository/FestivalDetailV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/festival/repository/FestivalDetailV1QueryDslRepository.java @@ -53,7 +53,7 @@ public Optional findFestivalDetail(Long festivalId) { ), festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, sortedSet(new QSocialMediaV1Response( socialMedia.mediaType, socialMedia.name, diff --git a/backend/src/main/java/com/festago/festival/repository/FestivalV1QueryDslRepository.java b/backend/src/main/java/com/festago/festival/repository/FestivalV1QueryDslRepository.java index 0914cc011..05e5d8dae 100644 --- a/backend/src/main/java/com/festago/festival/repository/FestivalV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/festival/repository/FestivalV1QueryDslRepository.java @@ -47,7 +47,7 @@ private JPAQuery getSelectQuery() { festival.name, festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, new QSchoolV1Response( school.id, school.name diff --git a/backend/src/main/java/com/festago/festival/repository/PopularFestivalV1QueryDslRepository.java b/backend/src/main/java/com/festago/festival/repository/PopularFestivalV1QueryDslRepository.java index 4e0d223cb..7470d13c4 100644 --- a/backend/src/main/java/com/festago/festival/repository/PopularFestivalV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/festival/repository/PopularFestivalV1QueryDslRepository.java @@ -30,7 +30,7 @@ public List findPopularFestivals() { festival.name, festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, new QSchoolV1Response( school.id, school.name diff --git a/backend/src/main/java/com/festago/festival/repository/SchoolFestivalSearchV1QueryDslRepository.java b/backend/src/main/java/com/festago/festival/repository/SchoolFestivalSearchV1QueryDslRepository.java index 9fd2489da..342474ef5 100644 --- a/backend/src/main/java/com/festago/festival/repository/SchoolFestivalSearchV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/festival/repository/SchoolFestivalSearchV1QueryDslRepository.java @@ -31,7 +31,7 @@ public List executeSearch(String keyword) { festival.name, festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, festivalQueryInfo.artistInfo)) .from(festival) .innerJoin(festivalQueryInfo).on(festival.id.eq(festivalQueryInfo.festivalId)) diff --git a/backend/src/main/java/com/festago/school/repository/v1/SchoolV1QueryDslRepository.java b/backend/src/main/java/com/festago/school/repository/v1/SchoolV1QueryDslRepository.java index 9c82b93fc..f13b0e6ef 100644 --- a/backend/src/main/java/com/festago/school/repository/v1/SchoolV1QueryDslRepository.java +++ b/backend/src/main/java/com/festago/school/repository/v1/SchoolV1QueryDslRepository.java @@ -68,7 +68,7 @@ public Slice findFestivalsBySchoolId(Long schoolId, Lo festival.name, festival.festivalDuration.startDate, festival.festivalDuration.endDate, - festival.thumbnail, + festival.posterImageUrl, festivalQueryInfo.artistInfo ) ) diff --git a/backend/src/main/java/com/festago/ticketing/dto/MemberTicketFestivalResponse.java b/backend/src/main/java/com/festago/ticketing/dto/MemberTicketFestivalResponse.java index 0b3779cf0..3d44b6796 100644 --- a/backend/src/main/java/com/festago/ticketing/dto/MemberTicketFestivalResponse.java +++ b/backend/src/main/java/com/festago/ticketing/dto/MemberTicketFestivalResponse.java @@ -11,6 +11,6 @@ public static MemberTicketFestivalResponse from(Festival festival) { return new MemberTicketFestivalResponse( festival.getId(), festival.getName(), - festival.getThumbnail()); + festival.getPosterImageUrl()); } } diff --git a/backend/src/test/java/com/festago/admin/presentation/v1/AdminFestivalV1ControllerTest.java b/backend/src/test/java/com/festago/admin/presentation/v1/AdminFestivalV1ControllerTest.java index 728ae7b24..f5bb98c64 100644 --- a/backend/src/test/java/com/festago/admin/presentation/v1/AdminFestivalV1ControllerTest.java +++ b/backend/src/test/java/com/festago/admin/presentation/v1/AdminFestivalV1ControllerTest.java @@ -77,8 +77,8 @@ class 올바른_주소로 { String name = "테코대학교 축제"; LocalDate startDate = LocalDate.parse("2024-01-31"); LocalDate endDate = LocalDate.parse("2024-02-01"); - String thumbnail = "https://image.com/image.png"; - FestivalV1CreateRequest request = new FestivalV1CreateRequest(name, startDate, endDate, thumbnail, 1L); + String posterImageUrl = "https://image.com/image.png"; + FestivalV1CreateRequest request = new FestivalV1CreateRequest(name, startDate, endDate, posterImageUrl, 1L); @Test @WithMockAuth(role = Role.ADMIN) @@ -126,8 +126,8 @@ class 올바른_주소로 { String name = "테코대학교 축제"; LocalDate startDate = LocalDate.parse("2024-01-31"); LocalDate endDate = LocalDate.parse("2024-02-01"); - String thumbnail = "https://image.com/image.png"; - FestivalV1UpdateRequest request = new FestivalV1UpdateRequest(name, startDate, endDate, thumbnail); + String posterImageUrl = "https://image.com/image.png"; + FestivalV1UpdateRequest request = new FestivalV1UpdateRequest(name, startDate, endDate, posterImageUrl); @Test @WithMockAuth(role = Role.ADMIN) diff --git a/backend/src/test/java/com/festago/festival/application/integration/command/FestivalCreateServiceTest.java b/backend/src/test/java/com/festago/festival/application/integration/command/FestivalCreateServiceTest.java index 1373fd990..3074c91ba 100644 --- a/backend/src/test/java/com/festago/festival/application/integration/command/FestivalCreateServiceTest.java +++ b/backend/src/test/java/com/festago/festival/application/integration/command/FestivalCreateServiceTest.java @@ -63,12 +63,12 @@ void setUp() { String festivalName = "테코대학교 축제"; LocalDate startDate = now.minusDays(1); LocalDate endDate = now.plusDays(3); - String thumbnail = "https://image.com/image.png"; + String posterImageUrl = "https://image.com/image.png"; var command = new FestivalCreateCommand( festivalName, startDate, endDate, - thumbnail, + posterImageUrl, schoolId ); @@ -84,12 +84,12 @@ void setUp() { String festivalName = "테코대학교 축제"; LocalDate startDate = now.plusDays(1); LocalDate endDate = now.plusDays(3); - String thumbnail = "https://image.com/image.png"; + String posterImageUrl = "https://image.com/image.png"; var command = new FestivalCreateCommand( festivalName, startDate, endDate, - thumbnail, + posterImageUrl, schoolId ); diff --git a/backend/src/test/java/com/festago/festival/application/integration/command/FestivalUpdateServiceTest.java b/backend/src/test/java/com/festago/festival/application/integration/command/FestivalUpdateServiceTest.java index 497c4d86a..5ad33ee4f 100644 --- a/backend/src/test/java/com/festago/festival/application/integration/command/FestivalUpdateServiceTest.java +++ b/backend/src/test/java/com/festago/festival/application/integration/command/FestivalUpdateServiceTest.java @@ -59,12 +59,12 @@ void setUp() { String newFestivalName = "변경된 축제"; LocalDate newStartDate = now.minusDays(1); LocalDate newEndDate = now.plusDays(1); - String newThumbnail = "https://image.com/new-image.png"; + String newPosterImageUrl = "https://image.com/new-image.png"; var command = new FestivalUpdateCommand( newFestivalName, newStartDate, newEndDate, - newThumbnail + newPosterImageUrl ); // when @@ -76,7 +76,7 @@ void setUp() { softly.assertThat(updatedFestival.getName()).isEqualTo(newFestivalName); softly.assertThat(updatedFestival.getStartDate()).isEqualTo(newStartDate); softly.assertThat(updatedFestival.getEndDate()).isEqualTo(newEndDate); - softly.assertThat(updatedFestival.getThumbnail()).isEqualTo(newThumbnail); + softly.assertThat(updatedFestival.getPosterImageUrl()).isEqualTo(newPosterImageUrl); }); } @@ -86,12 +86,12 @@ void setUp() { String newFestivalName = "변경된 축제"; LocalDate newStartDate = now.plusDays(1); LocalDate newEndDate = now.plusDays(1); - String newThumbnail = "https://image.com/new-image.png"; + String newPosterImageUrl = "https://image.com/new-image.png"; var command = new FestivalUpdateCommand( newFestivalName, newStartDate, newEndDate, - newThumbnail + newPosterImageUrl ); // when @@ -103,7 +103,7 @@ void setUp() { softly.assertThat(updatedFestival.getName()).isEqualTo(newFestivalName); softly.assertThat(updatedFestival.getStartDate()).isEqualTo(newStartDate); softly.assertThat(updatedFestival.getEndDate()).isEqualTo(newEndDate); - softly.assertThat(updatedFestival.getThumbnail()).isEqualTo(newThumbnail); + softly.assertThat(updatedFestival.getPosterImageUrl()).isEqualTo(newPosterImageUrl); }); } } diff --git a/backend/src/test/java/com/festago/stage/domain/validator/festival/OutOfDateStageFestivalUpdateValidatorTest.java b/backend/src/test/java/com/festago/stage/domain/validator/festival/OutOfDateStageFestivalUpdateValidatorTest.java index c6090a958..043a39730 100644 --- a/backend/src/test/java/com/festago/stage/domain/validator/festival/OutOfDateStageFestivalUpdateValidatorTest.java +++ b/backend/src/test/java/com/festago/stage/domain/validator/festival/OutOfDateStageFestivalUpdateValidatorTest.java @@ -6,6 +6,7 @@ import com.festago.common.exception.BadRequestException; import com.festago.common.exception.ErrorCode; import com.festago.festival.domain.Festival; +import com.festago.festival.domain.FestivalDuration; import com.festago.stage.repository.MemoryStageRepository; import com.festago.stage.repository.StageRepository; import com.festago.support.fixture.FestivalFixture; @@ -62,7 +63,8 @@ void setUp() { // given LocalDate startDate = festivalStartDate.minusDays(1); LocalDate endDate = festivalEndDate.plusDays(1); - 축제.changeDate(startDate, endDate); + + 축제.changeFestivalDuration(new FestivalDuration(startDate, endDate)); // when & then assertDoesNotThrow(() -> validator.validate(축제)); @@ -73,7 +75,7 @@ void setUp() { // given LocalDate startDate = festivalStartDate.plusDays(1); LocalDate endDate = festivalEndDate; - 축제.changeDate(startDate, endDate); + 축제.changeFestivalDuration(new FestivalDuration(startDate, endDate)); // when & then assertThatThrownBy(() -> validator.validate(축제)) @@ -86,7 +88,7 @@ void setUp() { // given LocalDate startDate = festivalStartDate; LocalDate endDate = festivalEndDate.minusDays(1); - 축제.changeDate(startDate, endDate); + 축제.changeFestivalDuration(new FestivalDuration(startDate, endDate)); // when & then assertThatThrownBy(() -> validator.validate(축제)) @@ -103,7 +105,7 @@ class 축제에_등록된_공연이_없을때 { // given LocalDate startDate = festivalStartDate.minusDays(1); LocalDate endDate = festivalEndDate.plusDays(1); - 축제.changeDate(startDate, endDate); + 축제.changeFestivalDuration(new FestivalDuration(startDate, endDate)); // when & then assertDoesNotThrow(() -> validator.validate(축제)); @@ -114,7 +116,7 @@ class 축제에_등록된_공연이_없을때 { // given LocalDate startDate = festivalStartDate.plusDays(1); LocalDate endDate = festivalEndDate; - 축제.changeDate(startDate, endDate); + 축제.changeFestivalDuration(new FestivalDuration(startDate, endDate)); // when & then assertDoesNotThrow(() -> validator.validate(축제)); @@ -125,7 +127,7 @@ class 축제에_등록된_공연이_없을때 { // given LocalDate startDate = festivalStartDate; LocalDate endDate = festivalEndDate.minusDays(1); - 축제.changeDate(startDate, endDate); + 축제.changeFestivalDuration(new FestivalDuration(startDate, endDate)); // when & then assertDoesNotThrow(() -> validator.validate(축제));