Просмотр исходного кода

포인트 적립 예정 금액 쿼리 수정

jsshin 5 лет назад
Родитель
Сommit
5fdf47d259
1 измененных файлов с 12 добавлено и 20 удалено
  1. 12 20
      src/main/java/com/style24/persistence/mybatis/shop/TsaCustomer.xml

+ 12 - 20
src/main/java/com/style24/persistence/mybatis/shop/TsaCustomer.xml

@@ -392,26 +392,18 @@
 		               AND    EXP_CMP_DT IS NOT NULL
 		               ), 0)                           AS EXPIRE_PNT_AMT -- 소멸포인트
 		     , IFNULL((
-		               SELECT SUM(A.PNT_AMT + B.PNT_AMT) AS PNT_AMT
-		               FROM (
-		                     SELECT SUM(PNT_AMT) AS PNT_AMT
-		                          , ORD_NO
-		                     FROM   TB_CUST_POINT_HST
-		                     WHERE  OCCUR_GB = 'G069_12' -- 적립예정
-		                     AND    PNT_UPLOAD_STAT = 'G070_10' -- 포인트반영
-		                     AND    CUST_NO = #{custNo}
-		                     GROUP BY ORD_NO
-		                    ) A
-		                 , (
-		                    SELECT SUM(PNT_AMT) AS PNT_AMT
-		                         , ORD_NO
-		                    FROM   TB_CUST_POINT_HST
-		                    WHERE  OCCUR_GB = 'G069_13' -- 적립예정취소
-		                    AND    PNT_UPLOAD_STAT = 'G070_20' -- 포인트반영전취소
-		                    AND    CUST_NO = #{custNo}
-		                    GROUP BY ORD_NO
-		                    ) B
-		               WHERE A.ORD_NO = B.ORD_NO
+		               SELECT SUM(CPH.PNT_AMT) AS PNT_AMT
+		               FROM   TB_CUST_POINT_HST CPH
+		               WHERE  CPH.OCCUR_GB IN ('G069_12', 'G069_13')             -- 적립예정, 적립취소
+		               AND    CPH.PNT_UPLOAD_STAT IN ('G070_10', 'G070_20')        -- 반영예정, 반영전취소
+		               AND    CPH.CUST_NO = #{custNo}
+		               AND    NOT EXISTS (
+		                                  SELECT 1
+		                                  FROM  TB_CUST_POINT_HST
+		                                  WHERE PNT_UPLOAD_STAT = 'G070_30'
+		                                  AND   ORD_NO = CPH.ORD_NO
+		                                  AND   ORD_DTL_NO = CPH.ORD_DTL_NO
+		                                  )
 		               ), 0)                           AS EXPECTED_PNT_AMT -- 적립예정포인트
 		     , IFNULL((
 		               SELECT SUM(RM_PNT_AMT) AS RM_PNT_AMT