diff --git a/src/main/java/org/websoso/WSSServer/dto/feed/InterestFeedsGetResponse.java b/src/main/java/org/websoso/WSSServer/dto/feed/InterestFeedsGetResponse.java index f85fedb2..d1c85d7b 100644 --- a/src/main/java/org/websoso/WSSServer/dto/feed/InterestFeedsGetResponse.java +++ b/src/main/java/org/websoso/WSSServer/dto/feed/InterestFeedsGetResponse.java @@ -3,10 +3,12 @@ import java.util.List; public record InterestFeedsGetResponse( - List recommendFeeds + List recommendFeeds, + + String message ) { - public static InterestFeedsGetResponse of(List interestFeedGetResponses) { - return new InterestFeedsGetResponse(interestFeedGetResponses); + public static InterestFeedsGetResponse of(List interestFeedGetResponses, String message) { + return new InterestFeedsGetResponse(interestFeedGetResponses, message); } } diff --git a/src/main/java/org/websoso/WSSServer/service/FeedService.java b/src/main/java/org/websoso/WSSServer/service/FeedService.java index 896f4ea9..b5329739 100644 --- a/src/main/java/org/websoso/WSSServer/service/FeedService.java +++ b/src/main/java/org/websoso/WSSServer/service/FeedService.java @@ -9,6 +9,7 @@ import static org.websoso.WSSServer.exception.error.CustomUserError.PRIVATE_PROFILE_STATUS; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Map; import java.util.Set; @@ -269,12 +270,21 @@ public InterestFeedsGetResponse getInterestFeeds(User user) { .map(UserNovel::getNovel) .toList(); + if (interestNovels.isEmpty()) { + return InterestFeedsGetResponse.of(Collections.emptyList(), "NO_INTEREST_NOVELS"); + } + Map novelMap = interestNovels .stream() .collect(Collectors.toMap(Novel::getNovelId, novel -> novel)); List interestNovelIds = new ArrayList<>(novelMap.keySet()); List interestFeeds = feedRepository.findTop10ByNovelIdInOrderByFeedIdDesc(interestNovelIds); + + if (interestFeeds.isEmpty()) { + return InterestFeedsGetResponse.of(Collections.emptyList(), "NO_ASSOCIATED_FEEDS"); + } + Set avatarIds = interestFeeds.stream() .map(feed -> feed.getUser().getAvatarId()) .collect(Collectors.toSet()); @@ -289,7 +299,7 @@ public InterestFeedsGetResponse getInterestFeeds(User user) { return InterestFeedGetResponse.of(novel, feed.getUser(), feed, avatar); }) .toList(); - return InterestFeedsGetResponse.of(interestFeedGetResponses); + return InterestFeedsGetResponse.of(interestFeedGetResponses, ""); } public NovelGetResponseFeedTab getFeedsByNovel(User user, Long novelId, Long lastFeedId, int size) {