From 16105c2ef9661bcdc1088ed900f412a32d32d92e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9A=B0=EB=94=94?= <38103085+EunjiShin@users.noreply.github.com> Date: Fri, 2 Aug 2024 02:29:44 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EB=A6=AC=EB=B7=B0=20=EC=83=9D=EC=84=B1?= =?UTF-8?q?=20=ED=9B=84=20=EB=A9=A4=EB=B2=84=20=EC=A0=95=EB=B3=B4=20?= =?UTF-8?q?=EB=A6=AC=ED=84=B4=20=EB=A1=9C=EC=A7=81=20=EB=B3=80=EA=B2=BD=20?= =?UTF-8?q?(#97)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../review/CreateReviewController.java | 2 +- .../dto/response/BaseReviewResponse.java | 29 +++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/application/src/main/java/org/depromeet/spot/application/review/CreateReviewController.java b/application/src/main/java/org/depromeet/spot/application/review/CreateReviewController.java index fd437ae9..6bbe6f5b 100644 --- a/application/src/main/java/org/depromeet/spot/application/review/CreateReviewController.java +++ b/application/src/main/java/org/depromeet/spot/application/review/CreateReviewController.java @@ -40,6 +40,6 @@ public BaseReviewResponse create( @RequestBody @Valid CreateReviewRequest request) { CreateReviewUsecase.CreateReviewResult result = createReviewUsecase.create(blockId, seatNumber, memberId, request.toCommand()); - return BaseReviewResponse.from(result.review()); + return BaseReviewResponse.from(result); } } diff --git a/application/src/main/java/org/depromeet/spot/application/review/dto/response/BaseReviewResponse.java b/application/src/main/java/org/depromeet/spot/application/review/dto/response/BaseReviewResponse.java index 43c54803..d7d9ebd1 100644 --- a/application/src/main/java/org/depromeet/spot/application/review/dto/response/BaseReviewResponse.java +++ b/application/src/main/java/org/depromeet/spot/application/review/dto/response/BaseReviewResponse.java @@ -12,6 +12,7 @@ import org.depromeet.spot.domain.seat.Seat; import org.depromeet.spot.domain.section.Section; import org.depromeet.spot.domain.stadium.Stadium; +import org.depromeet.spot.usecase.port.in.review.CreateReviewUsecase.CreateReviewResult; public record BaseReviewResponse( Long id, @@ -26,6 +27,34 @@ public record BaseReviewResponse( List images, List keywords) { + public static BaseReviewResponse from(CreateReviewResult result) { + Review review = result.review(); + Member member = result.member(); + Seat seat = result.seat(); + return new BaseReviewResponse( + review.getId(), + MemberInfo.from(member), + StadiumResponse.from(review.getStadium()), + SectionResponse.from(review.getSection()), + BlockResponse.from(review.getBlock()), + RowResponse.from(review.getRow()), + SeatResponse.from(seat), + review.getDateTime(), + review.getContent(), + review.getImages().stream().map(ReviewImageResponse::from).toList(), + review.getKeywords().stream() + .map( + reviewKeyword -> { + Keyword keyword = + review.getKeywordById(reviewKeyword.getKeywordId()); + return new KeywordResponse( + reviewKeyword.getId(), + keyword.getContent(), + keyword.getIsPositive()); + }) + .toList()); + } + public static BaseReviewResponse from(Review review) { return new BaseReviewResponse( review.getId(),