Skip to content

Commit 6a11042

Browse files
authored
feat: 마이페이지 내가 작성한 카드 조회 (#194)
## #️⃣연관된 이슈 > ex) #이슈번호, #이슈번호 ## 📝작업 내용 > 이번 PR에서 작업한 내용을 간략히 설명해주세요(이미지 첨부 가능) ### 스크린샷 (선택) ## 💬리뷰 요구사항(선택) > 리뷰어가 특별히 봐주었으면 하는 부분이 있다면 작성해주세요 > > ex) 메서드 XXX의 이름을 더 잘 짓고 싶은데 혹시 좋은 명칭이 있을까요?
2 parents 05b3b99 + 89f20b8 commit 6a11042

4 files changed

Lines changed: 30 additions & 0 deletions

File tree

src/main/java/EatPic/spring/domain/card/controller/CardController.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,5 +151,13 @@ public ApiResponse<CardResponse.ProfileCardListDTO> getProfileCardsList(@PathVar
151151
return ApiResponse.onSuccess(cardService.getProfileCardList(userId, size, cursor));
152152
}
153153

154+
@GetMapping("/mypage/feeds")
155+
@Operation(summary = "내가 작성한 피드 보기", description = "내가 작성한 피드 전체 조회(미리보기)")
156+
public ApiResponse<CardResponse.ProfileCardListDTO> getMyCardsList(HttpServletRequest request,
157+
@RequestParam(required = false) Long cursor,
158+
@RequestParam(defaultValue = "15") int size) {
159+
return ApiResponse.onSuccess(cardService.getMyProfileCardList(request, size, cursor));
160+
}
161+
154162

155163
}

src/main/java/EatPic/spring/domain/card/repository/CardRepository.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,10 @@ SELECT ch.hashtag.id, COUNT(ch.card.id)
115115
Slice<Card> findByUserIdAndIsSharedTrueAndIsDeletedFalseOrderByIdDesc(Long userId, Pageable pageable);
116116
Slice<Card> findByUserIdAndIsSharedTrueAndIsDeletedFalseAndIdLessThanOrderByIdDesc(Long userId, Long cursor, Pageable pageable);
117117

118+
Slice<Card> findByUserIdAndIsDeletedFalseOrderByIdDesc(Long userId, Pageable pageable);
119+
Slice<Card> findByUserIdAndIsDeletedFalseAndIdLessThanOrderByIdDesc(Long userId, Long cursor, Pageable pageable);
120+
121+
118122
@Query("""
119123
select count(c)
120124
from Card c

src/main/java/EatPic/spring/domain/card/service/CardService.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,5 @@ public interface CardService {
2626
CardResponse.PagedCardFeedResponseDto getCardFeedByCursor(HttpServletRequest request, Long userId, int size, Long cursor);
2727
List<RecommendCardResponse> getRecommendedCardPreviews(Long userId);
2828
CardResponse.ProfileCardListDTO getProfileCardList(Long userId, int size, Long cursor);
29+
CardResponse.ProfileCardListDTO getMyProfileCardList(HttpServletRequest request,int size, Long cursor);
2930
}

src/main/java/EatPic/spring/domain/card/service/CardServiceImpl.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -264,6 +264,23 @@ public CardResponse.ProfileCardListDTO getProfileCardList(Long userId, int size,
264264
return CardConverter.toProfileCardList(userId, cardSlice);
265265
}
266266

267+
@Override
268+
public CardResponse.ProfileCardListDTO getMyProfileCardList(HttpServletRequest request,int size, Long cursor) {
269+
User me = userService.getLoginUser(request);
270+
271+
Slice<Card> cardSlice;
272+
Pageable pageable = PageRequest.of(0, size);
273+
274+
if (cursor == null) {
275+
cardSlice = cardRepository.findByUserIdAndIsDeletedFalseOrderByIdDesc(me.getId(), pageable);
276+
} else {
277+
cardSlice = cardRepository.findByUserIdAndIsDeletedFalseAndIdLessThanOrderByIdDesc(me.getId(), cursor, pageable);
278+
}
279+
return CardConverter.toProfileCardList(me.getId(), cardSlice);
280+
}
281+
282+
283+
267284
@Override
268285
@Transactional
269286
public CardDeleteResponse deleteCard(Long cardId, Long userId) {

0 commit comments

Comments
 (0)