Skip to content
Merged
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
@@ -0,0 +1,33 @@
package org.sopt.solply_server.domain.place.dto;

import java.time.LocalDate;
import java.util.List;
import org.sopt.solply_server.domain.review.entity.PlaceReview;
import org.sopt.solply_server.domain.review.entity.VisitTime;
import org.sopt.solply_server.global.util.s3.ImageUrlProvider;

public record PlaceLatestReviewDto(
Long reviewId,
Long userId,
String nickname,
String profileImageUrl,
String content,
LocalDate visitedAt,
VisitTime visitTimeSlot,
List<String> imageUrls
) {
public static PlaceLatestReviewDto from(PlaceReview placeReview, ImageUrlProvider imageUrlProvider) {
return new PlaceLatestReviewDto(
placeReview.getId(),
placeReview.getUser().getId(),
placeReview.getUser().getNickname(),
imageUrlProvider.getImageUrl(placeReview.getUser().getProfileImageFileKey()),
placeReview.getContent(),
placeReview.getVisitedAt(),
placeReview.getVisitTimeSlot(),
placeReview.getPlaceReviewImages().stream()
.map(image -> imageUrlProvider.getImageUrl(image.getImageUrl()))
.toList()
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,49 +3,53 @@
import java.util.List;
import lombok.Builder;
import org.sopt.solply_server.domain.place.dto.PlaceImageInfoDto;
import org.sopt.solply_server.domain.place.dto.PlaceLatestReviewDto;
import org.sopt.solply_server.domain.place.dto.SnsLinkDto;
import org.sopt.solply_server.domain.place.entity.Place;
import org.sopt.solply_server.domain.town.entity.Town;

@Builder
public record PlaceDetailsGetResponse(
long placeId,
String placeName,
String mainTag,
List<String> optionTags,
String introduction,
List<PlaceImageInfoDto> imageInfos,
String address,
String latitude,
String longitude,
String contactNumber,
String openingHours,
List<SnsLinkDto> snsLinks,
List<String> placeCheckpoints,
boolean isBookmarked,
long townId,
String townName
long placeId,
String placeName,
String mainTag,
List<String> optionTags,
String introduction,
List<PlaceImageInfoDto> imageInfos,
String address,
String latitude,
String longitude,
String contactNumber,
String openingHours,
List<SnsLinkDto> snsLinks,
List<String> placeCheckpoints,
boolean isBookmarked,
long townId,
String townName,
List<PlaceLatestReviewDto> latestReviews
) {

public static PlaceDetailsGetResponse of(Place place, String mainTag, List<String> optionTags,
List<PlaceImageInfoDto> placeImageInfos, boolean isBookmarked, Town town) {
return PlaceDetailsGetResponse.builder()
.placeId(place.getId())
.placeName(place.getName())
.mainTag(mainTag)
.optionTags(optionTags)
.introduction(place.getIntroduction())
.imageInfos(placeImageInfos)
.address(place.getAddress())
.latitude(String.valueOf(place.getLatitude()))
.longitude(String.valueOf(place.getLongitude()))
.contactNumber(place.getContactNumber())
.openingHours(place.getOpeningHours())
.snsLinks(SnsLinkDto.toList(place.getSnsLinks()))
.placeCheckpoints(place.getCheckpoints())
.isBookmarked(isBookmarked)
.townId(town.getId())
.townName(town.getName())
.build();
}
public static PlaceDetailsGetResponse of(Place place, String mainTag, List<String> optionTags,
List<PlaceImageInfoDto> placeImageInfos, boolean isBookmarked, Town town,
List<PlaceLatestReviewDto> latestReviews) {
return PlaceDetailsGetResponse.builder()
.placeId(place.getId())
.placeName(place.getName())
.mainTag(mainTag)
.optionTags(optionTags)
.introduction(place.getIntroduction())
.imageInfos(placeImageInfos)
.address(place.getAddress())
.latitude(String.valueOf(place.getLatitude()))
.longitude(String.valueOf(place.getLongitude()))
.contactNumber(place.getContactNumber())
.openingHours(place.getOpeningHours())
.snsLinks(SnsLinkDto.toList(place.getSnsLinks()))
.placeCheckpoints(place.getCheckpoints())
.isBookmarked(isBookmarked)
.townId(town.getId())
.townName(town.getName())
.latestReviews(latestReviews)
.build();
}
}
Loading
Loading