diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponNumberRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponNumberRepository.kt index b66268b..c51c98c 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponNumberRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponNumberRepository.kt @@ -8,6 +8,12 @@ interface CanCouponNumberRepository : JpaRepository, CanC interface CanCouponNumberQueryRepository { fun getUseCouponCount(id: Long): Int + + fun getCouponNumberTotalCount(couponId: Long): Int + + fun getCouponNumberList(couponId: Long, offset: Long, limit: Long): List + + fun getAllCouponNumberList(couponId: Long): List } class CanCouponNumberQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) : CanCouponNumberQueryRepository { @@ -19,4 +25,45 @@ class CanCouponNumberQueryRepositoryImpl(private val queryFactory: JPAQueryFacto .fetch() .size } + + override fun getCouponNumberTotalCount(couponId: Long): Int { + return queryFactory + .select(canCouponNumber.id) + .from(canCouponNumber) + .where(canCouponNumber.canCoupon.id.eq(couponId)) + .fetch() + .size + } + + override fun getCouponNumberList(couponId: Long, offset: Long, limit: Long): List { + return queryFactory + .select( + QGetCouponNumberListItemResponse( + canCouponNumber.id, + canCouponNumber.couponNumber, + canCouponNumber.member.isNotNull + ) + ) + .from(canCouponNumber) + .where(canCouponNumber.canCoupon.id.eq(couponId)) + .orderBy(canCouponNumber.id.asc()) + .offset(offset) + .limit(limit) + .fetch() + } + + override fun getAllCouponNumberList(couponId: Long): List { + return queryFactory + .select( + QGetCouponNumberListItemResponse( + canCouponNumber.id, + canCouponNumber.couponNumber, + canCouponNumber.member.isNotNull + ) + ) + .from(canCouponNumber) + .where(canCouponNumber.canCoupon.id.eq(couponId)) + .orderBy(canCouponNumber.id.asc()) + .fetch() + } } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponRepository.kt index 9c3653c..012ab52 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponRepository.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponRepository.kt @@ -2,7 +2,6 @@ package kr.co.vividnext.sodalive.can.coupon import com.querydsl.jpa.impl.JPAQueryFactory import kr.co.vividnext.sodalive.can.coupon.QCanCoupon.canCoupon -import kr.co.vividnext.sodalive.can.coupon.QCanCouponNumber.canCouponNumber import org.springframework.data.jpa.repository.JpaRepository interface CanCouponRepository : JpaRepository, CanCouponQueryRepository @@ -10,10 +9,6 @@ interface CanCouponRepository : JpaRepository, CanCouponQueryRe interface CanCouponQueryRepository { fun getCouponTotalCount(): Int fun getCouponList(offset: Long, limit: Long): List - fun getCouponNumberTotalCount(couponId: Long): Int - fun getCouponNumberList(couponId: Long, offset: Long, limit: Long): List - - fun getAllCouponNumberList(couponId: Long): List } class CanCouponQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) : CanCouponQueryRepository { @@ -33,45 +28,4 @@ class CanCouponQueryRepositoryImpl(private val queryFactory: JPAQueryFactory) : .limit(limit) .fetch() } - - override fun getCouponNumberTotalCount(couponId: Long): Int { - return queryFactory - .select(canCouponNumber.id) - .from(canCouponNumber) - .where(canCouponNumber.canCoupon.id.eq(couponId)) - .fetch() - .size - } - - override fun getCouponNumberList(couponId: Long, offset: Long, limit: Long): List { - return queryFactory - .select( - QGetCouponNumberListItemResponse( - canCouponNumber.id, - canCouponNumber.couponNumber, - canCouponNumber.member.isNotNull - ) - ) - .from(canCouponNumber) - .where(canCouponNumber.canCoupon.id.eq(couponId)) - .orderBy(canCouponNumber.id.asc()) - .offset(offset) - .limit(limit) - .fetch() - } - - override fun getAllCouponNumberList(couponId: Long): List { - return queryFactory - .select( - QGetCouponNumberListItemResponse( - canCouponNumber.id, - canCouponNumber.couponNumber, - canCouponNumber.member.isNotNull - ) - ) - .from(canCouponNumber) - .where(canCouponNumber.canCoupon.id.eq(couponId)) - .orderBy(canCouponNumber.id.asc()) - .fetch() - } } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponService.kt index 9524e17..e5b95bc 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponService.kt @@ -49,15 +49,15 @@ class CanCouponService( } fun getCouponNumberList(couponId: Long, offset: Long, limit: Long): GetCouponNumberListResponse { - val totalCount = repository.getCouponNumberTotalCount(couponId = couponId) - val items = repository.getCouponNumberList(couponId = couponId, offset = offset, limit = limit) + val totalCount = couponNumberRepository.getCouponNumberTotalCount(couponId = couponId) + val items = couponNumberRepository.getCouponNumberList(couponId = couponId, offset = offset, limit = limit) return GetCouponNumberListResponse(totalCount, items) } fun downloadCouponNumberList(couponId: Long): ByteArrayInputStream { val header = listOf("순번", "쿠폰번호", "사용여부") val byteArrayOutputStream = ByteArrayOutputStream() - val couponNumberList = repository.getAllCouponNumberList(couponId) + val couponNumberList = couponNumberRepository.getAllCouponNumberList(couponId) val workbook = XSSFWorkbook() try {