diff --git a/src/main/java/com/kusitms/website/domain/review/ReviewController.java b/src/main/java/com/kusitms/website/domain/review/ReviewController.java index d93b865..78efb7c 100644 --- a/src/main/java/com/kusitms/website/domain/review/ReviewController.java +++ b/src/main/java/com/kusitms/website/domain/review/ReviewController.java @@ -32,13 +32,22 @@ public class ReviewController { @ApiResponse(responseCode = "200", description = "조회 성공", content = @Content(schema = @Schema(implementation = ReviewDetailResponse.class))), }) - public ResponseEntity getReviews(@RequestParam(required = false) Team team) { + public ResponseEntity getReviews(@RequestParam(required = false) Team team, + @RequestParam(required = false) Integer cardinal) { ReviewResponse reviewResponse; - if (team == null) { + if (team == null && cardinal == null) { reviewResponse = reviewService.getAllReviews(); - } else { + } + else if (team != null && cardinal == null) { reviewResponse = reviewService.getReviewsByTeam(team); } + else if (team == null && cardinal != null) { + reviewResponse = reviewService.getReviewsByCardinal(cardinal); + } + else { + reviewResponse = reviewService.getReviewsByTeamAndCardinal(team, cardinal); + } + return ResponseEntity.ok(new BaseResponse(reviewResponse)); } } diff --git a/src/main/java/com/kusitms/website/domain/review/ReviewRepository.java b/src/main/java/com/kusitms/website/domain/review/ReviewRepository.java index 4eb631d..a55d237 100644 --- a/src/main/java/com/kusitms/website/domain/review/ReviewRepository.java +++ b/src/main/java/com/kusitms/website/domain/review/ReviewRepository.java @@ -9,4 +9,8 @@ public interface ReviewRepository extends JpaRepository { List findAllByOrderByReviewIdDesc(); List findByTeamOrderByReviewIdDesc(Team team); + + List findByCardinalOrderByReviewIdDesc(Integer cardinal); + + List findByTeamAndCardinalOrderByReviewIdDesc(Team team, Integer cardinal); } diff --git a/src/main/java/com/kusitms/website/domain/review/ReviewService.java b/src/main/java/com/kusitms/website/domain/review/ReviewService.java index 1992e46..0af0ea5 100644 --- a/src/main/java/com/kusitms/website/domain/review/ReviewService.java +++ b/src/main/java/com/kusitms/website/domain/review/ReviewService.java @@ -39,4 +39,15 @@ private ReviewResponse buildReviewResponse(List findReviews) { .reviewList(reviewDetailResponses) .build(); } + + public ReviewResponse getReviewsByCardinal(Integer cardinal) { + List findReviews = reviewRepository.findByCardinalOrderByReviewIdDesc(cardinal); + return buildReviewResponse(findReviews); + } + + public ReviewResponse getReviewsByTeamAndCardinal(Team team, Integer cardinal) { + List findReviews = + reviewRepository.findByTeamAndCardinalOrderByReviewIdDesc(team, cardinal); + return buildReviewResponse(findReviews); + } } \ No newline at end of file