Skip to content

Commit

Permalink
#501 [fix] best 글모임 받아올 때 임시저장 글 제외
Browse files Browse the repository at this point in the history
#501 [fix] best 글모임 받아올 때 임시저장 글 제외
  • Loading branch information
sohyundoh authored Aug 24, 2024
2 parents b3ae3d4 + fbc1402 commit 17a2969
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@
public interface MoimRepository extends JpaRepository<Moim, Long> {
Boolean existsByNormalizedName(final String normalizedName);

@Query("SELECT m FROM Post p JOIN p.topic t JOIN t.moim m WHERE m.isPublic = true AND p.createdAt BETWEEN :startOfWeek AND :endOfWeek GROUP BY m ORDER BY COUNT(p) DESC LIMIT 3")
List<Moim> findTop3PublicMoimsWithMostPostsLastWeek(Pageable pageable, @Param("startOfWeek") LocalDateTime startOfWeek, @Param("endOfWeek") LocalDateTime endOfWeek);
@Query("SELECT m FROM Post p JOIN p.topic t JOIN t.moim m WHERE m.isPublic = true AND p.isTemporary = false AND p.createdAt BETWEEN :startOfWeek AND :endOfWeek GROUP BY m ORDER BY COUNT(p)")
List<Moim> findTop3PublicMoimWithMostPostsLastWeek(final Pageable pageable, final @Param("startOfWeek") LocalDateTime startOfWeek, final @Param("endOfWeek") LocalDateTime endOfWeek);

@Query("SELECT m FROM Post p JOIN p.topic t JOIN t.moim m WHERE m.isPublic = true AND m NOT IN :excludeMoims GROUP BY m ORDER BY MAX(p.createdAt) DESC")
List<Moim> findLatestMoimsWithExclusion(Pageable pageable, @Param("excludeMoims") List<Moim> excludeMoims);
@Query("SELECT m FROM Post p JOIN p.topic t JOIN t.moim m WHERE m.isPublic = true AND p.isTemporary = false AND m NOT IN :excludeMoims GROUP BY m ORDER BY MAX(p.createdAt) DESC")
List<Moim> findLatestMoimWithExclusion(final Pageable pageable, final @Param("excludeMoims") List<Moim> excludeMoims);

@Query("SELECT m FROM Post p JOIN p.topic t JOIN t.moim m WHERE m.isPublic = true GROUP BY m ORDER BY MAX(p.createdAt) DESC")
List<Moim> findLatestMoimsWithoutExclusion(Pageable pageable);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,15 +51,15 @@ public List<Moim> findBestMoims() {
LocalDateTime endOfWeek = LocalDateTime.now();
LocalDateTime startOfWeek = endOfWeek.minusDays(7);
PageRequest pageRequest = PageRequest.of(0, 3);
return moimRepository.findTop3PublicMoimsWithMostPostsLastWeek(pageRequest, startOfWeek, endOfWeek);
return moimRepository.findTop3PublicMoimWithMostPostsLastWeek(pageRequest, startOfWeek, endOfWeek);
}

public List<Moim> getLatestMoims(int count, List<Moim> excludeMoims) {
PageRequest pageRequest = PageRequest.of(0, count);
if (excludeMoims.isEmpty()) {
return moimRepository.findLatestMoimsWithoutExclusion(pageRequest);
} else {
return moimRepository.findLatestMoimsWithExclusion(pageRequest, excludeMoims);
return moimRepository.findLatestMoimWithExclusion(pageRequest, excludeMoims);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
public interface PostRepositoryCustom {
List<Post> findTop2ByMoimOrderByCuriousCountDesc(final Moim requestMoim);

List<Post> findLatest4NonTemporaryPostsByMoim(Moim moim);
List<Post> findLatest4NonTemporaryPostsByMoim(final Moim moim);

Optional<Post> findByMoimAndWriterNameWhereIsTemporary(final Moim moim, final WriterName writerName);

Expand Down

0 comments on commit 17a2969

Please sign in to comment.