Kaynağa Gözat

포인트 임시커밋

ChoiSooHwan 5 yıl önce
ebeveyn
işleme
569f6112b1

+ 37 - 23
src/main/java/com/style24/persistence/mybatis/shop/TsfPoint.xml

@@ -46,34 +46,46 @@
 	<!-- 적립내역 조회-->
 	<select id="getAccumulatePointList" parameterType="Point" resultType="Point">
 	/* TsfPoint.getAccumulatePointList */
-	SELECT
+	SELECT	
 		CASE   TCHP.OCCUR_GB
-		WHEN   'G069_12' THEN '상품 구매'
-		WHEN   'G069_20' THEN '리뷰'
-		WHEN   'G069_30' THEN '이벤트'
-		WHEN   'G069_90' THEN '관리자'
-		END AS OCCUR_GB ,	
-		CASE   TCHP.OCCUR_GB  	
-		WHEN   'G069_12' THEN TG.GOODS_NM 
-		WHEN   'G069_20' THEN TG.GOODS_NM 
-		WHEN   'G069_30' THEN TCHP.OCCUR_DTL_DESC
-		WHEN   'G069_90' THEN TCHP.OCCUR_DTL_DESC
+			WHEN   'G069_20' THEN '리뷰'
+			WHEN   'G069_30' THEN '이벤트'
+			WHEN   'G069_40' THEN '상품 구매'
+			WHEN   'G069_90' THEN '관리자'
+		END AS OCCUR_GB
+	  , CASE   TCHP.OCCUR_GB 
+			WHEN   'G069_20' THEN TG.GOODS_NM
+			WHEN   'G069_30' THEN TCHP.OCCUR_DTL_DESC
+			WHEN   'G069_40' THEN TG.GOODS_NM
+			WHEN   'G069_90' THEN TCHP.OCCUR_DTL_DESC
 		END AS  OCCUR_DTL_DESC
 			  , TCHP.PNT_AMT AS pntAmt
 			  , TCHP.UPD_DT  AS pntUploadDt
 		FROM TB_CUST_POINT_HST TCHP
+		LEFT JOIN 
+		(
+			SELECT REVIEW_SQ
+		         , goods_cd
+			FROM   TB_REVIEW TR
+			WHERE  TR.PNT_GIVE_STAT = 'G043_30'
+		) TR
+		ON TCHP.REVIEW_SQ = TR.REVIEW_SQ
 		LEFT JOIN TB_ORDER_DETAIL TOD
-		ON TOD.ORD_NO = TCHP.ORD_NO
-		AND TOD.ORD_DTL_NO = TCHP.ORD_DTL_NO
-		LEFT JOIN TB_GOODS TG 
-		ON TG.GOODS_CD = TOD.GOODS_CD 
+		ON TCHP.ORD_NO = TOD.ORD_NO
+		AND TCHP.ORD_DTL_NO = TOD.ORD_DTL_NO
+		LEFT JOIN TB_GOODS TG
+		ON (TG.GOODS_CD = TOD.GOODS_CD OR TG.GOODS_CD = TR.GOODS_CD)
 		WHERE TCHP.CUST_NO = #{custNo}
-		AND TCHP.OCCUR_GB IN ('G069_12','G069_20','G069_30','G069_90')
+		AND CASE 
+			WHEN TCHP.REVIEW_SQ IS NULL THEN 1
+			WHEN TCHP.REVIEW_SQ IS NOT NULL AND TR.REVIEW_SQ IS NOT NULL THEN 1
+		END > 0	
+		AND TCHP.OCCUR_GB IN ('G069_20','G069_30','G069_40','G069_90')
 		AND TCHP.PNT_UPLOAD_STAT = 'G070_30'
 		AND TCHP.PNT_AMT <![CDATA[>]]> 0
-		AND DATE_FORMAT(TCHP.UPD_DT,'%Y%m') = #{searchDt}
-		GROUP BY TCHP.OCCUR_GB, PNT_AMT, GOODS_NM, TCHP.OCCUR_DTL_DESC, TCHP.UPD_DT
-	ORDER BY TCHP.UPD_DT DESC
+		AND DATE_FORMAT(TCHP.UPD_DT,'%Y%m') = #{searchDt}		
+		GROUP BY TCHP.REVIEW_SQ, TCHP.OCCUR_GB, PNT_AMT, GOODS_NM, TCHP.OCCUR_DTL_DESC, TCHP.UPD_DT
+	ORDER BY TCHP.UPD_DT DESC;
 	</select>
 	
 	<!-- 사용내역 조회-->
@@ -105,7 +117,7 @@
 		AND TCHP.PNT_UPLOAD_STAT = 'G070_30'
 		AND 0 <![CDATA[>]]> TCHP.PNT_AMT
 		AND DATE_FORMAT(TCHP.UPD_DT,'%Y%m') = #{searchDt}
-		GROUP BY  TCHP.OCCUR_GB, PNT_AMT, GOODS_NM,  TCHP.OCCUR_DTL_DESC, TCHP.UPD_DT
+		GROUP BY  TCHP.OCCUR_GB, PNT_AMT, GOODS_NM, TCHP.OCCUR_DTL_DESC, TCHP.UPD_DT
 	ORDER BY TCHP.UPD_DT DESC;
 	</select>
 	
@@ -134,11 +146,13 @@
 			 , TCHP.PNT_AMT AS pntAmt
 			 , TCHP.UPD_DT  AS pntUploadDt
 		FROM TB_CUST_POINT_HST TCHP
+		LEFT JOIN TB_REVIEW TR
+		ON TR.REVIEW_SQ = TCHP.REVIEW_SQ 
 		LEFT JOIN TB_ORDER_DETAIL TOD
-		ON TOD.ORD_NO = TCHP.ORD_NO
-		AND TOD.ORD_DTL_NO = TCHP.ORD_DTL_NO
+		ON TCHP.ORD_NO = TOD.ORD_NO
+		AND TCHP.ORD_DTL_NO = TOD.ORD_DTL_NO
 		LEFT JOIN TB_GOODS TG 
-		ON TG.GOODS_CD = TOD.GOODS_CD 
+		ON (TG.GOODS_CD = TOD.GOODS_CD OR TG.GOODS_CD = TR.GOODS_CD)
 		WHERE TCHP.CUST_NO = #{custNo}
 		AND TCHP.OCCUR_GB IN ('G069_10','G069_12','G069_20','G069_21','G069_30','G069_90','G069_99')
 		AND TCHP.PNT_UPLOAD_STAT = 'G070_30'