diff --git a/src/main/java/com/seeat/server/domain/review/application/dto/response/ReviewLikeCountResponse.java b/src/main/java/com/seeat/server/domain/review/application/dto/response/ReviewLikeCountResponse.java deleted file mode 100644 index 56b5ae93..00000000 --- a/src/main/java/com/seeat/server/domain/review/application/dto/response/ReviewLikeCountResponse.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.seeat.server.domain.review.application.dto.response; - -public record ReviewLikeCountResponse( - long reviewCount, - long likeCount -) { -} diff --git a/src/main/java/com/seeat/server/domain/review/domain/repository/ReviewRepository.java b/src/main/java/com/seeat/server/domain/review/domain/repository/ReviewRepository.java index 0b15edfb..c454dc48 100644 --- a/src/main/java/com/seeat/server/domain/review/domain/repository/ReviewRepository.java +++ b/src/main/java/com/seeat/server/domain/review/domain/repository/ReviewRepository.java @@ -1,8 +1,8 @@ package com.seeat.server.domain.review.domain.repository; -import com.seeat.server.domain.review.application.dto.response.ReviewLikeCountResponse; import com.seeat.server.domain.review.domain.entity.Review; import com.seeat.server.domain.review.domain.entity.custom.ReviewRepositoryCustom; +import com.seeat.server.domain.review.domain.repository.dto.ReviewLikeCount; import com.seeat.server.domain.review.domain.repository.dto.ReviewWithLikeCount; import com.seeat.server.domain.review.domain.repository.dto.SeatReviewStats; import com.seeat.server.domain.search.application.dto.request.ReviewSearchCondition; @@ -222,13 +222,13 @@ public interface ReviewRepository extends JpaRepository, ReviewRep * @param userId 유저 Id * @return ReviewLikeCountResponse 응답 */ - @Query(" SELECT new com.seeat.server.domain.review.application.dto.response.ReviewLikeCountResponse(COUNT(DISTINCT r.id),COUNT(rl.id)) " + + @Query(" SELECT new com.seeat.server.domain.review.domain.repository.dto.ReviewLikeCount(COUNT(DISTINCT r.id),COUNT(rl.id)) " + "FROM Review r " + "LEFT JOIN ReviewLike rl " + "ON rl.review.id = r.id " + "AND rl.user.id != :userId " + "WHERE r.user.id = :userId") - ReviewLikeCountResponse findReviewCountAndLikeCountByUserId(@Param("userId") Long userId); + ReviewLikeCount findReviewCountAndLikeCountByUserId(@Param("userId") Long userId); /** * 같이 작성된 리뷰 조회 diff --git a/src/main/java/com/seeat/server/domain/review/domain/repository/dto/ReviewLikeCount.java b/src/main/java/com/seeat/server/domain/review/domain/repository/dto/ReviewLikeCount.java new file mode 100644 index 00000000..52830294 --- /dev/null +++ b/src/main/java/com/seeat/server/domain/review/domain/repository/dto/ReviewLikeCount.java @@ -0,0 +1,8 @@ +package com.seeat.server.domain.review.domain.repository.dto; + +public record ReviewLikeCount( + long reviewCount, + long likeCount +) { +} + diff --git a/src/main/java/com/seeat/server/domain/user/application/service/UserProfileService.java b/src/main/java/com/seeat/server/domain/user/application/service/UserProfileService.java index ad464c7b..bda57081 100644 --- a/src/main/java/com/seeat/server/domain/user/application/service/UserProfileService.java +++ b/src/main/java/com/seeat/server/domain/user/application/service/UserProfileService.java @@ -1,8 +1,8 @@ package com.seeat.server.domain.user.application.service; import com.seeat.server.domain.image.application.usecase.ImageUseCase; -import com.seeat.server.domain.review.application.dto.response.ReviewLikeCountResponse; import com.seeat.server.domain.review.domain.repository.ReviewRepository; +import com.seeat.server.domain.review.domain.repository.dto.ReviewLikeCount; import com.seeat.server.domain.theater.application.usecase.TheaterUseCase; import com.seeat.server.domain.theater.domain.entity.Auditorium; import com.seeat.server.domain.user.application.dto.request.UserInfoUpdateRequest; @@ -57,9 +57,9 @@ public UserInfoResponse getUserInfo(Long userId){ List auditorium = getAuditoriums(userId); // 리뷰, 좋아요 수 가져오기 - ReviewLikeCountResponse countResponse = reviewRepository.findReviewCountAndLikeCountByUserId(userId); - long reviewCount = countResponse.reviewCount(); - long likeCount = countResponse.likeCount(); + ReviewLikeCount count = reviewRepository.findReviewCountAndLikeCountByUserId(userId); + long reviewCount = count.reviewCount(); + long likeCount = count.likeCount(); // 경험치 계산 double levelExp = calculateLevelExp(user.getGrade(), reviewCount, likeCount);