Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ public ResponseEntity<BaseResponse<AdminFestivalDetailResponse>> getAdminFestiva
) {
AdminFestivalDetailInfo festivalDetail = adminFacade.getAdminFestivalDetail(festivalId);
return ApiResponseUtil.success(SuccessMessage.SUCCESS,
AdminFestivalDetailResponse.of(festivalDetail, s3FileHandler));
AdminFestivalDetailResponse.from(festivalDetail));
}

@Override
Expand All @@ -219,7 +219,7 @@ public ResponseEntity<BaseResponse<AdminFestivalListResponse>> getAdminFestivals
) {
AdminFestivalListInfo festivalListInfo = adminFacade.getAdminFestivals(search);
return ApiResponseUtil.success(SuccessMessage.SUCCESS,
AdminFestivalListResponse.of(festivalListInfo, s3FileHandler));
AdminFestivalListResponse.from(festivalListInfo));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@
import org.sopt.confeti.api.admin.facade.dto.response.AdminFestivalDetailInfo;
import org.sopt.confeti.api.admin.facade.dto.response.AdminFestivalDetailInfo.DateInfo;
import org.sopt.confeti.domain.festival.infra.TimetableSupportStatus;
import org.sopt.confeti.global.common.constant.FolderPath;
import org.sopt.confeti.global.util.S3FileHandler;

public record AdminFestivalDetailResponse(
long festivalId,
Expand Down Expand Up @@ -136,15 +134,15 @@ public static ArtistResponse from(AdminFestivalDetailInfo.ArtistInfo info) {
}
}

public static AdminFestivalDetailResponse of(AdminFestivalDetailInfo info, S3FileHandler s3FileHandler) {
public static AdminFestivalDetailResponse from(AdminFestivalDetailInfo info) {
return new AdminFestivalDetailResponse(
info.festivalId(),
info.title(),
info.startAt(),
info.endAt(),
info.area(),
s3FileHandler.getFileUrl(FolderPath.combine(FolderPath.FESTIVAL, FolderPath.POSTER), info.posterPath()).toString(),
s3FileHandler.getFileUrl(FolderPath.combine(FolderPath.FESTIVAL, FolderPath.LOGO), info.logoPath()).toString(),
info.posterUrl(),
info.logoUrl(),
info.ageRating(),
info.time(),
info.price(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
import java.util.List;
import org.sopt.confeti.api.admin.facade.dto.response.AdminFestivalPreviewInfo;
import org.sopt.confeti.api.admin.facade.dto.response.AdminFestivalListInfo;
import org.sopt.confeti.global.common.constant.FolderPath;
import org.sopt.confeti.global.util.S3FileHandler;

public record AdminFestivalListResponse(
FestivalGroupResponse upcomingFestivals,
Expand All @@ -17,12 +15,9 @@ public record FestivalGroupResponse(
int count
) {

public static FestivalGroupResponse of(
List<AdminFestivalPreviewInfo> festivals,
S3FileHandler s3FileHandler
) {
public static FestivalGroupResponse from(List<AdminFestivalPreviewInfo> festivals) {
List<FestivalResponse> responses = festivals.stream()
.map(f -> FestivalResponse.of(f, s3FileHandler))
.map(FestivalResponse::from)
.toList();
return new FestivalGroupResponse(responses, responses.size());
}
Expand All @@ -37,16 +32,10 @@ public record FestivalResponse(
String area
) {

public static FestivalResponse of(
AdminFestivalPreviewInfo info,
S3FileHandler s3FileHandler
) {
public static FestivalResponse from(AdminFestivalPreviewInfo info) {
return new FestivalResponse(
info.festivalId(),
s3FileHandler.getFileUrl(
FolderPath.combine(FolderPath.FESTIVAL, FolderPath.POSTER),
info.posterPath()
).toString(),
info.posterUrl(),
info.title(),
info.startAt(),
info.endAt(),
Expand All @@ -55,13 +44,10 @@ public static FestivalResponse of(
}
}

public static AdminFestivalListResponse of(
AdminFestivalListInfo info,
S3FileHandler s3FileHandler
) {
public static AdminFestivalListResponse from(AdminFestivalListInfo info) {
return new AdminFestivalListResponse(
FestivalGroupResponse.of(info.upcomingFestivals(), s3FileHandler),
FestivalGroupResponse.of(info.finishedFestivals(), s3FileHandler)
FestivalGroupResponse.from(info.upcomingFestivals()),
FestivalGroupResponse.from(info.finishedFestivals())
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.util.List;
import lombok.Builder;
import org.sopt.confeti.domain.festival.Festival;
import org.sopt.confeti.domain.festival.FestivalFileInfo;
import org.sopt.confeti.domain.festival.infra.TimetableSupportStatus;
import org.sopt.confeti.domain.festival_artist.FestivalArtist;
import org.sopt.confeti.domain.festival_reservation_schedule.FestivalReservationScheduleInfo;
Expand All @@ -13,14 +15,17 @@
import org.sopt.confeti.domain.festival_stage.FestivalStage;
import org.sopt.confeti.domain.festival_time.FestivalTime;

@Builder(toBuilder = true)
public record AdminFestivalDetailInfo(
long festivalId,
String title,
LocalDate startAt,
LocalDate endAt,
String area,
String posterPath,
String posterUrl,
String logoPath,
String logoUrl,
String ageRating,
String time,
String price,
Expand Down Expand Up @@ -140,30 +145,37 @@ public static ArtistInfo from(FestivalArtist festivalArtist) {
}

public static AdminFestivalDetailInfo from(Festival festival) {
return new AdminFestivalDetailInfo(
festival.getId(),
festival.getTitle(),
festival.getStartAt(),
festival.getEndAt(),
festival.getArea(),
festival.getPosterPath(),
festival.getLogoPath(),
festival.getAgeRating(),
festival.getTime(),
festival.getPrice(),
festival.getAddress(),
festival.getTimetableSupportStatus(),
festival.getCreatedAt(),
festival.getUpdatedAt(),
festival.getDates().stream()
return AdminFestivalDetailInfo.builder()
.festivalId(festival.getId())
.title(festival.getTitle())
.startAt(festival.getStartAt())
.endAt(festival.getEndAt())
.area(festival.getArea())
.posterPath(festival.getPosterPath())
.logoPath(festival.getLogoPath())
.ageRating(festival.getAgeRating())
.time(festival.getTime())
.price(festival.getPrice())
.address(festival.getAddress())
.timetableSupportStatus(festival.getTimetableSupportStatus())
.createdAt(festival.getCreatedAt())
.updatedAt(festival.getUpdatedAt())
.dates(festival.getDates().stream()
.map(DateInfo::from)
.toList(),
festival.getReservationUrls().stream()
.toList())
.reservationUrls(festival.getReservationUrls().stream()
.map(ReservationUrlInfo::from)
.toList(),
festival.getReservationSchedules().stream()
.toList())
.reservationSchedules(festival.getReservationSchedules().stream()
.map(schedule -> ReservationScheduleInfo.from(schedule.toDomain()))
.toList()
);
.toList())
.build();
}

public AdminFestivalDetailInfo withFileUrls(FestivalFileInfo festivalFileInfo) {
return this.toBuilder()
.posterUrl(festivalFileInfo.posterUrl())
.logoUrl(festivalFileInfo.logoUrl())
.build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,22 @@

import java.time.LocalDate;
import java.time.LocalDateTime;
import lombok.Builder;
import org.sopt.confeti.domain.festival.Festival;
import org.sopt.confeti.domain.festival.FestivalFileInfo;
import org.sopt.confeti.domain.festival.infra.TimetableSupportStatus;

@Builder(toBuilder = true)
public record AdminFestivalPreviewInfo(
long festivalId,
String title,
LocalDate startAt,
LocalDate endAt,
String area,
String posterPath,
String posterUrl,
String logoPath,
String logoUrl,
String ageRating,
String time,
String price,
Expand All @@ -23,21 +28,28 @@ public record AdminFestivalPreviewInfo(
) {

public static AdminFestivalPreviewInfo from(Festival festival) {
return new AdminFestivalPreviewInfo(
festival.getId(),
festival.getTitle(),
festival.getStartAt(),
festival.getEndAt(),
festival.getArea(),
festival.getPosterPath(),
festival.getLogoPath(),
festival.getAgeRating(),
festival.getTime(),
festival.getPrice(),
festival.getAddress(),
festival.getTimetableSupportStatus(),
festival.getCreatedAt(),
festival.getUpdatedAt()
);
return AdminFestivalPreviewInfo.builder()
.festivalId(festival.getId())
.title(festival.getTitle())
.startAt(festival.getStartAt())
.endAt(festival.getEndAt())
.area(festival.getArea())
.posterPath(festival.getPosterPath())
.logoPath(festival.getLogoPath())
.ageRating(festival.getAgeRating())
.time(festival.getTime())
.price(festival.getPrice())
.address(festival.getAddress())
.timetableSupportStatus(festival.getTimetableSupportStatus())
.createdAt(festival.getCreatedAt())
.updatedAt(festival.getUpdatedAt())
.build();
}

public AdminFestivalPreviewInfo withFileUrls(FestivalFileInfo festivalFileInfo) {
return this.toBuilder()
.posterUrl(festivalFileInfo.posterUrl())
.logoUrl(festivalFileInfo.logoUrl())
.build();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ public ResponseEntity<BaseResponse<FestivalDetailResponse>> getFestivalInfo(
FestivalDetailWithFavoriteDTO festivalDetail = performanceFacade.getUpcomingFestivalDetail(
festivalId);
return ApiResponseUtil.success(SuccessMessage.SUCCESS,
FestivalDetailResponse.of(festivalDetail, s3FileHandler));
FestivalDetailResponse.from(festivalDetail));
}

@GetMapping("/reservation")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,7 @@
import java.util.List;
import org.sopt.confeti.api.performance.facade.dto.response.FestivalDetailDTO;
import org.sopt.confeti.domain.festival.infra.TimetableSupportStatus;
import org.sopt.confeti.global.common.constant.FolderPath;
import org.sopt.confeti.global.util.DateConvertor;
import org.sopt.confeti.global.util.S3FileHandler;

public record FestivalDetailInfoResponse(
long festivalId,
Expand All @@ -24,27 +22,10 @@ public record FestivalDetailInfoResponse(
TimetableSupportStatus timetableSupportStatus
) {

public record ReservationScheduleResponse(
long reservationScheduleId,
String roundName,
String reserveAt
) {

public static ReservationScheduleResponse from(FestivalDetailDTO.ReservationScheduleDTO dto) {
return new ReservationScheduleResponse(
dto.reservationScheduleId(),
dto.roundName(),
DateConvertor.convertToDefaultFormat(dto.reserveAt())
);
}
}

public static FestivalDetailInfoResponse of(FestivalDetailDTO festival, boolean isFavorite,
S3FileHandler s3FileHandler) {
public static FestivalDetailInfoResponse of(FestivalDetailDTO festival, boolean isFavorite) {
return new FestivalDetailInfoResponse(
festival.festivalId(),
s3FileHandler.getFileUrl(FolderPath.combine(FolderPath.FESTIVAL, FolderPath.POSTER),
festival.posterPath()).toString(),
festival.posterUrl(),
festival.title(),
DateConvertor.convertToDefaultFormat(festival.startAt()),
DateConvertor.convertToDefaultFormat(festival.endAt()),
Expand All @@ -55,12 +36,28 @@ public static FestivalDetailInfoResponse of(FestivalDetailDTO festival, boolean
isFavorite,
festival.address(),
festival.reservations().stream()
.map(reservation -> FestivalReservationResponse.of(reservation, s3FileHandler))
.map(FestivalReservationResponse::from)
.toList(),
festival.reservationSchedules().stream()
.map(ReservationScheduleResponse::from)
.toList(),
festival.timetableSupportStatus()
);
}

public record ReservationScheduleResponse(
long reservationScheduleId,
String roundName,
String reserveAt
) {

public static ReservationScheduleResponse from(
FestivalDetailDTO.ReservationScheduleDTO dto) {
return new ReservationScheduleResponse(
dto.reservationScheduleId(),
dto.roundName(),
DateConvertor.convertToDefaultFormat(dto.reserveAt())
);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
import java.util.List;
import java.util.stream.IntStream;
import org.sopt.confeti.api.performance.facade.dto.response.FestivalDetailWithFavoriteDTO;
import org.sopt.confeti.global.util.S3FileHandler;

public record FestivalDetailResponse(
FestivalDetailInfoResponse festival,
Expand All @@ -12,12 +11,10 @@ public record FestivalDetailResponse(

private static final int SPACE_BETWEEN_DATE_AND_IDX = 1;

public static FestivalDetailResponse of(FestivalDetailWithFavoriteDTO festivalDetail,
S3FileHandler s3FileHandler) {
public static FestivalDetailResponse from(FestivalDetailWithFavoriteDTO festivalDetail) {
return new FestivalDetailResponse(
FestivalDetailInfoResponse.of(festivalDetail.festivalDetail(),
festivalDetail.isFavorite(),
s3FileHandler),
festivalDetail.isFavorite()),
IntStream.range(0, festivalDetail.festivalDetail().dates().size())
.mapToObj(idx ->
FestivalDetailDateResponse.of(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,18 @@
package org.sopt.confeti.api.performance.dto.response;

import org.sopt.confeti.api.performance.facade.dto.response.FestivalReservationDTO;
import org.sopt.confeti.global.common.constant.FolderPath;
import org.sopt.confeti.global.util.S3FileHandler;

public record FestivalReservationResponse(
long reservationId,
String url,
String name,
String logoUrl
TicketVendorResponse ticketVendorResponse
) {

public static FestivalReservationResponse of(FestivalReservationDTO reservationDTO,
S3FileHandler s3FileHandler) {
public static FestivalReservationResponse from(FestivalReservationDTO reservationDTO) {
return new FestivalReservationResponse(
reservationDTO.reservationId(),
reservationDTO.url(),
reservationDTO.name(),
s3FileHandler.getFileUrl(
FolderPath.combine(FolderPath.TICKET_VENDOR, FolderPath.LOGO),
reservationDTO.logoPath()).toString()
TicketVendorResponse.from(reservationDTO.ticketVendor())
);
}
}
Loading
Loading