Skip to content

Commit 5071029

Browse files
committed
Refactor(#23): memberId, scheduleId -> member, schedule 로 파라미터 변경
1 parent 41fe063 commit 5071029

File tree

3 files changed

+33
-20
lines changed

3 files changed

+33
-20
lines changed

application/wypl-core/src/main/java/com/wypl/wyplcore/review/service/ReviewServiceImpl.java

+13-6
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,9 @@ public ReviewIdResponse createReview(long memberId, ReviewCreateRequest reviewCr
6666
public ReviewIdResponse updateReview(long memberId, long reviewId, ReviewUpdateRequest reviewUpdateRequest) {
6767
validateReviewContents(reviewUpdateRequest.contents(), reviewUpdateRequest.title());
6868

69-
Review review = ReviewUtils.findReviewByReviewIdAndMemberId(reviewRepository, reviewId, memberId);
69+
Member member = null; // Todo : 조회
70+
71+
Review review = ReviewUtils.findByReviewIdAndMember(reviewRepository, reviewId, member);
7072
review.updateTitle(reviewUpdateRequest.title());
7173

7274
ReviewContents reviewContents = reviewContentsRepository.findByReviewIdAndDeletedAtNull(review.getReviewId());
@@ -80,7 +82,8 @@ public ReviewIdResponse updateReview(long memberId, long reviewId, ReviewUpdateR
8082
@Override
8183
@Transactional
8284
public ReviewIdResponse deleteReview(long memberId, long reviewId) {
83-
Review review = ReviewUtils.findReviewByReviewIdAndMemberId(reviewRepository, reviewId, memberId);
85+
Member member = null; // Todo : 조회
86+
Review review = ReviewUtils.findByReviewIdAndMember(reviewRepository, reviewId, member);
8487

8588
ReviewContents reviewContents = reviewContentsRepository.findByReviewIdAndDeletedAtNull(review.getReviewId());
8689
reviewContents.delete();
@@ -94,7 +97,8 @@ public ReviewIdResponse deleteReview(long memberId, long reviewId) {
9497

9598
@Override
9699
public ReviewDetailResponse getDetailReview(long memberId, long reviewId) {
97-
Review review = ReviewUtils.findReviewByReviewIdAndMemberId(reviewRepository, reviewId, memberId);
100+
Member member = null; // Todo : 조회
101+
Review review = ReviewUtils.findByReviewIdAndMember(reviewRepository, reviewId, member);
98102
Schedule schedule = review.getSchedule();
99103

100104
// Todo : 저장할 때 null 검사 하는데, 가져올 때도 검사해야 할까???
@@ -161,12 +165,15 @@ public ReviewListResponse getReviewsByScheduleId(long memberId, long scheduleId,
161165
// MemberSchedule memberSchedule = memberScheduleService.getMemberScheduleByMemberAndSchedule(memberId,
162166
// ScheduleServiceUtils.findById(scheduleRepository, scheduleId));
163167

168+
Member member = null; // Todo : 조회
169+
Schedule schedule = null; // Todo : 조회
170+
164171
List<Review> reviews = switch (reviewType) {
165172
case NEWEST -> {
166-
yield reviewRepository.getReviewsByMemberIdAndScheduleIdOrderByCreatedAtDesc(memberId, scheduleId);
173+
yield reviewRepository.getReviewByMemberAndScheduleOrderByCreatedAtDesc(member, schedule);
167174
}
168175
case OLDEST -> {
169-
yield reviewRepository.getReviewsByMemberIdAndScheduleIdOrderByCreatedAt(memberId,scheduleId);
176+
yield reviewRepository.getReviewsByMemberAndScheduleOrderByCreatedAt(member, schedule);
170177
}
171178
};
172179

@@ -204,7 +211,7 @@ private void validateReviewContents(List<Map<String, ReviewContent>> contents, S
204211
throw new ReviewException(ReviewErrorCode.EMPTY_CONTENTS);
205212
}
206213

207-
if(title == null || title.length() > 50 || title.length() == 0) {
214+
if (title == null || title.length() > 50 || title.length() == 0) {
208215
throw new ReviewException(ReviewErrorCode.INVALID_TITLE);
209216
}
210217
}
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.wypl.wyplcore.review.utils;
22

33
import com.wypl.common.exception.CallConstructorException;
4+
import com.wypl.jpamemberdomain.member.Member;
45
import com.wypl.jpamongoreviewdomain.review.domain.Review;
56
import com.wypl.jpamongoreviewdomain.review.repository.ReviewRepository;
67
import com.wypl.wyplcore.review.exception.ReviewErrorCode;
@@ -11,11 +12,16 @@
1112
public class ReviewUtils {
1213

1314
@Generated
14-
private ReviewUtils() {throw new CallConstructorException();
15+
private ReviewUtils() {
16+
throw new CallConstructorException();
1517
}
1618

17-
public static Review findReviewByReviewIdAndMemberId(ReviewRepository reviewRepository, long reviewId, long memberId) {
18-
return reviewRepository.findByReviewIdAndMemberId(reviewId, memberId)
19+
public static Review findByReviewIdAndMember(
20+
final ReviewRepository reviewRepository,
21+
final long reviewId,
22+
final Member member
23+
) {
24+
return reviewRepository.findByReviewIdAndMember(reviewId, member)
1925
.orElseThrow(() -> new ReviewException(ReviewErrorCode.NO_SUCH_REVIEW));
2026
}
2127
}

domain/jpamongo-review-domain/src/main/java/com/wypl/jpamongoreviewdomain/review/repository/ReviewRepository.java

+11-11
Original file line numberDiff line numberDiff line change
@@ -7,26 +7,26 @@
77
import org.springframework.data.jpa.repository.JpaRepository;
88
import org.springframework.data.jpa.repository.Query;
99
import org.springframework.data.repository.query.Param;
10-
import org.springframework.stereotype.Repository;
1110

11+
import com.wypl.jpacalendardomain.schedule.domain.Schedule;
12+
import com.wypl.jpamemberdomain.member.Member;
1213
import com.wypl.jpamongoreviewdomain.review.domain.Review;
1314

14-
@Repository
1515
public interface ReviewRepository extends JpaRepository<Review, Long> {
16-
Optional<Review> findByReviewIdAndMemberId(long reviewId, long memberId);
16+
Optional<Review> findByReviewIdAndMember(long reviewId, Member member);
1717

1818
//일정 별 조회
1919
//오래된순
20-
List<Review> getReviewsByMemberIdAndScheduleIdOrderByCreatedAt(long memberId, long scheduleId);
20+
List<Review> getReviewsByMemberAndScheduleOrderByCreatedAt(Member member, Schedule schedule);
2121

2222
//최신순
23-
List<Review> getReviewsByMemberIdAndScheduleIdOrderByCreatedAtDesc(long memberId, long scheduleId);
23+
List<Review> getReviewByMemberAndScheduleOrderByCreatedAtDesc(Member member, Schedule schedule);
2424

2525
//리뷰 조회
2626
//1. 날짜 설정 안한 경우(오래된 순, 모든 리뷰, 무한 스크롤)
2727
@Query("select r "
2828
+ "from Review r join fetch r.member m "
29-
+ "where m.id = :member_id and r.reviewId > :last_review_id "
29+
+ "where m.memberId = :member_id and r.reviewId > :last_review_id "
3030
+ "order by r.reviewId asc "
3131
+ "limit 24")
3232
List<Review> getReviewsOldestAll(
@@ -37,7 +37,7 @@ List<Review> getReviewsOldestAll(
3737
//2-1. 날짜 설정 안한 경우(최신순, 모든 리뷰, 무한스크롤, 첫번째)
3838
@Query("select r "
3939
+ "from Review r join fetch r.member m "
40-
+ "where m.id = :member_id "
40+
+ "where m.memberId = :member_id "
4141
+ "order by r.reviewId desc "
4242
+ "limit 24")
4343
List<Review> getReviewsNewestAll(
@@ -47,7 +47,7 @@ List<Review> getReviewsNewestAll(
4747
//2-2. 날짜 설정 안한 경우(최신순, 모든 리뷰, 무한스크롤, 첫번째 이후)
4848
@Query("select r "
4949
+ "from Review r join fetch r.member m "
50-
+ "where m.id = :member_id and r.reviewId < :last_review_id "
50+
+ "where m.memberId = :member_id and r.reviewId < :last_review_id "
5151
+ "order by r.reviewId desc "
5252
+ "limit 24")
5353
List<Review> getReviewsNewestAllAfter(
@@ -58,7 +58,7 @@ List<Review> getReviewsNewestAllAfter(
5858
//3. 날짜 설정한 경우(오래된 순, 무한 스크롤)
5959
@Query("select r "
6060
+ "from Review r join fetch r.member m "
61-
+ "where m.id = :member_id and r.reviewId > :last_review_id and r.createdAt between :start_date and :end_date "
61+
+ "where m.memberId = :member_id and r.reviewId > :last_review_id and r.createdAt between :start_date and :end_date "
6262
+ "order by r.reviewId asc "
6363
+ "limit 24")
6464
List<Review> getReviewsOldest(
@@ -71,7 +71,7 @@ List<Review> getReviewsOldest(
7171
//4-1. 날짜 설정한 경우(최신순 순, 무한 스크롤, 처음 이후)
7272
@Query("select r "
7373
+ "from Review r join fetch r.member m "
74-
+ "where m.id = :member_id and r.reviewId < :last_review_id and r.createdAt between :start_date and :end_date "
74+
+ "where m.memberId = :member_id and r.reviewId < :last_review_id and r.createdAt between :start_date and :end_date "
7575
+ "order by r.reviewId desc "
7676
+ "limit 24")
7777
List<Review> getReviewsNewestAfter(
@@ -84,7 +84,7 @@ List<Review> getReviewsNewestAfter(
8484
//4-2. 날짜 설정한 경우(최신순 순, 무한 스크롤, 처음)
8585
@Query("select r "
8686
+ "from Review r join fetch r.member m "
87-
+ "where m.id = :member_id and r.createdAt between :start_date and :end_date "
87+
+ "where m.memberId = :member_id and r.createdAt between :start_date and :end_date "
8888
+ "order by r.reviewId desc "
8989
+ "limit 24")
9090
List<Review> getReviewsNewest(

0 commit comments

Comments
 (0)