From f35021b5437362b33c13e16ce1fe6a3b439ed7dd Mon Sep 17 00:00:00 2001 From: "Harry M. You" Date: Wed, 3 Dec 2025 10:07:19 +0900 Subject: [PATCH] =?UTF-8?q?=EC=98=81=EC=83=81=EA=B4=80=EB=A6=AC=20select?= =?UTF-8?q?=EC=BF=BC=EB=A6=AC=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapsheet/MapSheetMngRepositoryImpl.java | 36 ++++++++----------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/mapsheet/MapSheetMngRepositoryImpl.java b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/mapsheet/MapSheetMngRepositoryImpl.java index 74180f12..4119a5bc 100644 --- a/src/main/java/com/kamco/cd/kamcoback/postgres/repository/mapsheet/MapSheetMngRepositoryImpl.java +++ b/src/main/java/com/kamco/cd/kamcoback/postgres/repository/mapsheet/MapSheetMngRepositoryImpl.java @@ -1,7 +1,9 @@ package com.kamco.cd.kamcoback.postgres.repository.mapsheet; import com.kamco.cd.kamcoback.mapsheet.dto.MapSheetMngDto; +import com.kamco.cd.kamcoback.members.dto.RoleType; import com.kamco.cd.kamcoback.postgres.entity.MapSheetMngHstEntity; +import com.querydsl.core.BooleanBuilder; import com.querydsl.core.types.Expression; import com.querydsl.core.types.Projections; import com.querydsl.core.types.dsl.BooleanExpression; @@ -89,7 +91,13 @@ public class MapSheetMngRepositoryImpl extends QuerydslRepositorySupport @Override public Page findMapSheetMngList(MapSheetMngDto.@Valid searchReq searchReq) { - Pageable pageable = PageRequest.of(searchReq.getPage(), searchReq.getSize()); + Pageable pageable = searchReq.toPageable(); + BooleanBuilder whereBuilder = new BooleanBuilder(); + + if (searchReq.getMngYyyy() != null ) { + whereBuilder.and(mapSheetMngEntity.id.eq(searchReq.getMngYyyy())); + } + List foundContent = queryFactory .select( Projections.constructor( @@ -109,21 +117,16 @@ public class MapSheetMngRepositoryImpl extends QuerydslRepositorySupport ) ) .from(mapSheetMngEntity) - //.where( - // mapSheetMngSearchValue(searchReq) - //) - //.offset(pageable.getOffset()) - //.limit(pageable.getPageSize()) - //.orderBy(mapSheetMngEntity.id.desc()) + .where(whereBuilder) + .offset(pageable.getOffset()) + .limit(pageable.getPageSize()) + .orderBy(mapSheetMngEntity.createdDttm.desc()) .fetch(); Long countQuery = queryFactory .select(mapSheetMngEntity.id.count()) .from(mapSheetMngEntity) - //.where( - // mapSheetMngEntity.id.eq(searchReq.getMngYyyy()), - // mapSheetMngSearchValue(searchReq) - //) + .where(whereBuilder) .fetchOne(); return new PageImpl<>(foundContent, pageable, countQuery); @@ -144,16 +147,5 @@ public class MapSheetMngRepositoryImpl extends QuerydslRepositorySupport } - private NumberExpression mngRowNum(){ - return Expressions.numberTemplate(Integer.class, "row_number() over(order by {0} desc)", mapSheetMngEntity.createdDttm); - } - private BooleanExpression mapSheetMngSearchValue(MapSheetMngDto.searchReq searchReq) { - if (Objects.isNull(searchReq.getMngYyyy())) { - return null; - } - - // 검색어 1개 값이 도엽명 or 도엽번호 like 검색 - return Expressions.booleanTemplate("{0} = " + searchReq.getMngYyyy() , mapSheetMngEntity.id); - } }