From 35a89c5cb077fe55cb3c16457b2332fe803d9f42 Mon Sep 17 00:00:00 2001 From: kimminu7 Date: Sat, 5 Jul 2025 19:00:37 +0900 Subject: [PATCH] =?UTF-8?q?refactor=20:=20BooleanBuilder=20=EC=A1=B0?= =?UTF-8?q?=ED=95=A9=20=EC=9C=84=EC=B9=98=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../problem/ProblemQueryRepositoryImpl.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/ezcode/codetest/infrastructure/persistence/repository/problem/ProblemQueryRepositoryImpl.java b/src/main/java/org/ezcode/codetest/infrastructure/persistence/repository/problem/ProblemQueryRepositoryImpl.java index 7c68b575..dcad3cb5 100644 --- a/src/main/java/org/ezcode/codetest/infrastructure/persistence/repository/problem/ProblemQueryRepositoryImpl.java +++ b/src/main/java/org/ezcode/codetest/infrastructure/persistence/repository/problem/ProblemQueryRepositoryImpl.java @@ -37,13 +37,6 @@ public Page searchByCondition(Pageable pageable, ProblemSearchCondition builder.and(problem.isDeleted.isFalse()); - JPAQuery query = jpaQueryFactory - .selectDistinct(problem) - .from(problem) - .leftJoin(problemCategory).on(problem.eq(problemCategory.problem)) - .leftJoin(problemCategory.category, category) - .where(builder); - // 카테고리 필터링 if (searchCondition.category() != null) { builder.and(category.code.eq(searchCondition.category()) @@ -55,6 +48,15 @@ public Page searchByCondition(Pageable pageable, ProblemSearchCondition builder.and(problem.difficulty.eq(Difficulty.valueOf(searchCondition.difficulty()))); } + JPAQuery query = jpaQueryFactory + .selectDistinct(problem) + .from(problem) + .leftJoin(problemCategory).on(problem.eq(problemCategory.problem)) + .leftJoin(problemCategory.category, category) + .where(builder); + + + List content = query .offset(pageable.getOffset()) .limit(pageable.getPageSize())