From 57426b5b5b5d84d4fc2203593dd569587c8e2935 Mon Sep 17 00:00:00 2001
From: Klaus <klaus@vividnext.co.kr>
Date: Wed, 30 Aug 2023 18:56:19 +0900
Subject: [PATCH] =?UTF-8?q?=EA=B4=80=EB=A6=AC=EC=9E=90=20=EC=BA=94=20?=
 =?UTF-8?q?=EC=B6=A9=EC=A0=84=EB=82=B4=EC=97=AD=20-=20=EC=95=A0=ED=94=8C?=
 =?UTF-8?q?=20=EC=9D=B8=20=EC=95=B1=20=EA=B2=B0=EC=A0=9C=EC=97=90=20PG?=
 =?UTF-8?q?=EA=B2=B0=EC=A0=9C=EA=B0=80=20=EA=B0=99=EC=9D=B4=20=EB=82=98?=
 =?UTF-8?q?=EC=98=A4=EB=8D=98=20=EB=B2=84=EA=B7=B8=20=EC=88=98=EC=A0=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../charge/AdminChargeStatusQueryRepository.kt    |  8 +++++++-
 .../admin/charge/AdminChargeStatusService.kt      | 15 ++-------------
 2 files changed, 9 insertions(+), 14 deletions(-)

diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/admin/charge/AdminChargeStatusQueryRepository.kt b/src/main/kotlin/kr/co/vividnext/sodalive/admin/charge/AdminChargeStatusQueryRepository.kt
index cf2f704..54e57f0 100644
--- a/src/main/kotlin/kr/co/vividnext/sodalive/admin/charge/AdminChargeStatusQueryRepository.kt
+++ b/src/main/kotlin/kr/co/vividnext/sodalive/admin/charge/AdminChargeStatusQueryRepository.kt
@@ -5,6 +5,7 @@ import com.querydsl.jpa.impl.JPAQueryFactory
 import kr.co.vividnext.sodalive.can.QCan.can1
 import kr.co.vividnext.sodalive.can.charge.ChargeStatus
 import kr.co.vividnext.sodalive.can.charge.QCharge.charge
+import kr.co.vividnext.sodalive.can.payment.PaymentGateway
 import kr.co.vividnext.sodalive.can.payment.PaymentStatus
 import kr.co.vividnext.sodalive.can.payment.QPayment.payment
 import kr.co.vividnext.sodalive.member.QMember.member
@@ -50,7 +51,11 @@ class AdminChargeStatusQueryRepository(private val queryFactory: JPAQueryFactory
             .fetch()
     }
 
-    fun getChargeStatusDetail(startDate: LocalDateTime, endDate: LocalDateTime): List<GetChargeStatusDetailQueryDto> {
+    fun getChargeStatusDetail(
+        startDate: LocalDateTime,
+        endDate: LocalDateTime,
+        paymentGateway: PaymentGateway
+    ): List<GetChargeStatusDetailQueryDto> {
         val formattedDate = Expressions.stringTemplate(
             "DATE_FORMAT({0}, {1})",
             Expressions.dateTimeTemplate(
@@ -83,6 +88,7 @@ class AdminChargeStatusQueryRepository(private val queryFactory: JPAQueryFactory
                     .and(charge.createdAt.loe(endDate))
                     .and(charge.status.eq(ChargeStatus.CHARGE))
                     .and(payment.status.eq(PaymentStatus.COMPLETE))
+                    .and(payment.paymentGateway.eq(paymentGateway))
             )
             .orderBy(formattedDate.desc())
             .fetch()
diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/admin/charge/AdminChargeStatusService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/admin/charge/AdminChargeStatusService.kt
index 811e4bd..9b450fb 100644
--- a/src/main/kotlin/kr/co/vividnext/sodalive/admin/charge/AdminChargeStatusService.kt
+++ b/src/main/kotlin/kr/co/vividnext/sodalive/admin/charge/AdminChargeStatusService.kt
@@ -74,25 +74,14 @@ class AdminChargeStatusService(val repository: AdminChargeStatusQueryRepository)
             .withZoneSameInstant(ZoneId.of("UTC"))
             .toLocalDateTime()
 
-        return repository.getChargeStatusDetail(startDate, endDate)
+        return repository.getChargeStatusDetail(startDate, endDate, paymentGateway)
             .asSequence()
-            .filter {
-                if (paymentGateway == PaymentGateway.APPLE_IAP) {
-                    it.appleChargeAmount > 0
-                } else {
-                    it.pgChargeAmount > 0
-                }
-            }
             .map {
                 GetChargeStatusDetailResponse(
                     memberId = it.memberId,
                     nickname = it.nickname,
                     method = it.method,
-                    amount = if (paymentGateway == PaymentGateway.APPLE_IAP) {
-                        it.appleChargeAmount.toInt()
-                    } else {
-                        it.pgChargeAmount
-                    },
+                    amount = it.appleChargeAmount.toInt(),
                     datetime = it.datetime
                 )
             }