Skip to content
Open
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
12 changes: 9 additions & 3 deletions src/main/java/ssu/eatssu/domain/review/dto/ReviewDetailV1.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import ssu.eatssu.domain.rating.entity.Ratings;
import ssu.eatssu.domain.review.entity.Review;

@AllArgsConstructor
Expand Down Expand Up @@ -53,11 +54,16 @@ public static ReviewDetailV1 from(Review review, Long userId) {
List<String> imageUrls = new ArrayList<>();
review.getReviewImages().forEach(i -> imageUrls.add(i.getImageUrl()));

Ratings ratings = review.getRatings();
Integer mainRating = (ratings != null) ? ratings.getMainRating() : review.getRating();
Integer amountRating = (ratings != null) ? ratings.getAmountRating() : null;
Integer tasteRating = (ratings != null) ? ratings.getTasteRating() : null;
Comment on lines +57 to +60

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

[pooreumjung, 2026-07-09] ratings와 review.getRating()이 모두 null인 경우 mainRating이 null이 될 수 있으므로, Objects.requireNonNull 등을 사용하여 null 검증을 하거나 기본값을 제공하는 것이 안전합니다.

Suggested change
Ratings ratings = review.getRatings();
Integer mainRating = (ratings != null) ? ratings.getMainRating() : review.getRating();
Integer amountRating = (ratings != null) ? ratings.getAmountRating() : null;
Integer tasteRating = (ratings != null) ? ratings.getTasteRating() : null;
Ratings ratings = review.getRatings();
Integer mainRating = (ratings != null) ? ratings.getMainRating() : java.util.Objects.requireNonNull(review.getRating(), "Rating must not be null");
Integer amountRating = (ratings != null) ? ratings.getAmountRating() : null;
Integer tasteRating = (ratings != null) ? ratings.getTasteRating() : null;


ReviewDetailV1Builder builder = ReviewDetailV1.builder()
.reviewId(review.getId())
.mainRating(review.getRatings().getMainRating())
.amountRating(review.getRatings().getAmountRating())
.tasteRating(review.getRatings().getTasteRating())
.mainRating(mainRating)
.amountRating(amountRating)
.tasteRating(tasteRating)
.writedAt(review.getCreatedDate().toLocalDate())
.content(review.getContent())
.imageUrls(imageUrls)
Expand Down
Loading