From d972711affefd2748da8a74b03861bdeba95c21b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E1=84=8B=E1=85=B5=E1=84=92=E1=85=A1=E1=84=8C=E1=85=B5?= =?UTF-8?q?=E1=86=AB?= Date: Mon, 25 Aug 2025 22:44:15 +0900 Subject: [PATCH] fix: Update MyBookRepository query to filter by active status --- .../mybook/repository/MyBookRepository.java | 47 ++++++++++--------- 1 file changed, 25 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/ikdaman/domain/mybook/repository/MyBookRepository.java b/src/main/java/com/ikdaman/domain/mybook/repository/MyBookRepository.java index 0779343..0bd40af 100644 --- a/src/main/java/com/ikdaman/domain/mybook/repository/MyBookRepository.java +++ b/src/main/java/com/ikdaman/domain/mybook/repository/MyBookRepository.java @@ -18,17 +18,19 @@ public interface MyBookRepository extends JpaRepository { LEFT JOIN m.book b LEFT JOIN b.author a LEFT JOIN a.writer w - WHERE m.memberId = :memberId AND - ( - :status IS NULL OR - (:status = 'completed' AND b.page = m.nowPage) OR - (:status = 'in-progress' AND b.page != m.nowPage) - ) - AND ( - :keyword is null OR - b.title LIKE %:keyword% OR - w.writerName LIKE %:keyword% - ) + WHERE + m.memberId = :memberId AND + m.status = 'ACTIVE' AND + ( + :status IS NULL OR + (:status = 'completed' AND b.page = m.nowPage) OR + (:status = 'in-progress' AND b.page != m.nowPage) + ) + AND ( + :keyword is null OR + b.title LIKE %:keyword% OR + w.writerName LIKE %:keyword% + ) ORDER BY m.createdAt DESC """, countQuery = """ @@ -37,17 +39,18 @@ SELECT COUNT(m) FROM MyBook m LEFT JOIN b.author a LEFT JOIN a.writer w WHERE - m.memberId = :memberId AND - ( - :status IS NULL OR - (:status = 'completed' AND b.page = m.nowPage) OR - (:status = 'in-progress' AND b.page != m.nowPage) - ) - AND ( - :keyword IS NULL OR - b.title LIKE %:keyword% OR - w.writerName LIKE %:keyword% - ) + m.memberId = :memberId AND + m.status = 'ACTIVE' AND + ( + :status IS NULL OR + (:status = 'completed' AND b.page = m.nowPage) OR + (:status = 'in-progress' AND b.page != m.nowPage) + ) + AND ( + :keyword IS NULL OR + b.title LIKE %:keyword% OR + w.writerName LIKE %:keyword% + ) """ ) Page searchMyBooks(