|
|
@@ -247,87 +247,112 @@
|
|
|
WHERE CD.CART_DTL_SQ = #{cartDtlSq}
|
|
|
</insert>
|
|
|
|
|
|
- <!-- 다다익선 기본/적용 상품 조회 -->
|
|
|
- <select id="selectMoreBetterCartList" parameterType="Order" resultType="Order">
|
|
|
- /* TsfCart.selectMoreBetterCartList : 다다익선 기본/적용 상품 조회 */
|
|
|
+ <!-- 다다익선 기본 상품 조회 -->
|
|
|
+ <select id="selectMoreBetterBaseCartList" parameterType="Order" resultType="Order">
|
|
|
+ /* TsfCart.selectMoreBetterBaseCartList : 다다익선 기본 상품 조회 */
|
|
|
SELECT C.CART_SQ
|
|
|
- , C.GOODS_CD
|
|
|
- , MAX(T1.QTY_TMTB_SQ) AS BASE_QTY_TMTB_SQ
|
|
|
- , MAX(T1.QTY_TMTB_NM) AS BASE_QTY_TMTB_NM
|
|
|
- , MAX(T1.AMT_TMTB_SQ) AS BASE_AMT_TMTB_SQ
|
|
|
- , MAX(T1.AMT_TMTB_NM) AS BASE_AMT_TMTB_NM
|
|
|
- , MAX(T2.QTY_TMTB_SQ) AS APPLY_QTY_TMTB_SQ
|
|
|
- , MAX(T2.QTY_TMTB_NM) AS APPLY_QTY_TMTB_NM
|
|
|
- , MAX(T2.AMT_TMTB_SQ) AS APPLY_AMT_TMTB_SQ
|
|
|
- , MAX(T2.AMT_TMTB_NM) AS APPLY_AMT_TMTB_NM
|
|
|
- FROM TB_CART C
|
|
|
- LEFT OUTER JOIN (SELECT C.CART_SQ
|
|
|
- , C.GOODS_CD
|
|
|
- , T.TMTB_SQ
|
|
|
- , T.APPLY_GB
|
|
|
- , T.TMTB_NM
|
|
|
- , TAG.GOODS_GB
|
|
|
- , CASE WHEN T.APPLY_GB = 'G810_10' THEN T.TMTB_SQ
|
|
|
- ELSE NULL END AS QTY_TMTB_SQ
|
|
|
- , CASE WHEN T.APPLY_GB = 'G810_11' THEN T.TMTB_SQ
|
|
|
- ELSE NULL END AS AMT_TMTB_SQ
|
|
|
- , CASE WHEN T.APPLY_GB = 'G810_10' THEN T.TMTB_NM
|
|
|
- ELSE NULL END AS QTY_TMTB_NM
|
|
|
- , CASE WHEN T.APPLY_GB = 'G810_11' THEN T.TMTB_NM
|
|
|
- ELSE NULL END AS AMT_TMTB_NM
|
|
|
- FROM TB_CART C
|
|
|
- INNER JOIN TB_TMTB_APPLY_GOODS TAG
|
|
|
- ON C.GOODS_CD = TAG.GOODS_CD
|
|
|
- AND TAG.GOODS_GB = 'G800_10'
|
|
|
- AND TAG.DEL_YN = 'N'
|
|
|
- INNER JOIN TB_TMTB T
|
|
|
- ON T.TMTB_SQ = TAG.TMTB_SQ
|
|
|
- AND T.TMTB_STAT = 'G232_11' /*진행*/
|
|
|
- LEFT OUTER JOIN TB_TMTB_APPLY_GOODS NOT_APPLY
|
|
|
- ON T.TMTB_SQ = NOT_APPLY.TMTB_SQ
|
|
|
- AND C.GOODS_CD = NOT_APPLY.GOODS_CD
|
|
|
- AND NOT_APPLY.GOODS_GB = 'G800_30' /* 제외상품 */
|
|
|
- WHERE 1 = 1
|
|
|
- AND NOT_APPLY.TMTB_SQ IS NULL
|
|
|
- AND TAG.GOODS_GB = 'G800_10'
|
|
|
- AND T.TMTB_ST_DT <![CDATA[<=]]> NOW()
|
|
|
- AND T.TMTB_ED_DT >= NOW()) T1
|
|
|
- ON C.CART_SQ = T1.CART_SQ
|
|
|
- LEFT OUTER JOIN (SELECT C.CART_SQ
|
|
|
- , C.GOODS_CD
|
|
|
- , T.TMTB_SQ
|
|
|
- , T.APPLY_GB
|
|
|
- , T.TMTB_NM
|
|
|
- , CASE WHEN T.APPLY_GB = 'G810_10' THEN T.TMTB_SQ
|
|
|
- ELSE NULL END AS QTY_TMTB_SQ
|
|
|
- , CASE WHEN T.APPLY_GB = 'G810_11' THEN T.TMTB_SQ
|
|
|
- ELSE NULL END AS AMT_TMTB_SQ
|
|
|
- , CASE WHEN T.APPLY_GB = 'G810_10' THEN T.TMTB_NM
|
|
|
- ELSE NULL END AS QTY_TMTB_NM
|
|
|
- , CASE WHEN T.APPLY_GB = 'G810_11' THEN T.TMTB_NM
|
|
|
- ELSE NULL END AS AMT_TMTB_NM
|
|
|
- FROM TB_CART C
|
|
|
- INNER JOIN TB_TMTB_APPLY_GOODS TAG
|
|
|
- ON C.GOODS_CD = TAG.GOODS_CD
|
|
|
- AND TAG.GOODS_GB = 'G800_20'
|
|
|
- AND TAG.DEL_YN = 'N'
|
|
|
- INNER JOIN TB_TMTB T
|
|
|
- ON T.TMTB_SQ = TAG.TMTB_SQ
|
|
|
- AND T.TMTB_STAT = 'G232_11'
|
|
|
- LEFT OUTER JOIN TB_TMTB_APPLY_GOODS NOT_APPLY
|
|
|
- ON T.TMTB_SQ = NOT_APPLY.TMTB_SQ
|
|
|
- AND C.GOODS_CD = NOT_APPLY.GOODS_CD
|
|
|
- AND NOT_APPLY.GOODS_GB = 'G800_30' /* 제외상품 */
|
|
|
- WHERE 1 = 1
|
|
|
- AND NOT_APPLY.TMTB_SQ IS NULL
|
|
|
- AND C.JSESSION_ID = 'aaec62cc-5f91-47bb-ba65-ebc9a61385cf'
|
|
|
- AND T.TMTB_ST_DT <![CDATA[<=]]> NOW()
|
|
|
- AND T.TMTB_ED_DT >= NOW()) T2
|
|
|
- ON C.CART_SQ = T2.CART_SQ
|
|
|
- WHERE 1 = 1
|
|
|
- AND C.JSESSION_ID = 'aaec62cc-5f91-47bb-ba65-ebc9a61385cf'
|
|
|
- AND C.CART_GB = 'G026_BC'
|
|
|
- GROUP BY C.CART_SQ
|
|
|
- , C.GOODS_CD
|
|
|
+ , T.TMTB_SQ
|
|
|
+ , T.APPLY_GB
|
|
|
+ , TAG.GOODS_CD
|
|
|
+ , T.TMTB_NM
|
|
|
+ FROM TB_CART C
|
|
|
+ INNER JOIN TB_TMTB_APPLY_GOODS TAG
|
|
|
+ ON C.GOODS_CD = TAG.GOODS_CD
|
|
|
+ AND TAG.DEL_YN = 'N'
|
|
|
+ INNER JOIN TB_TMTB T
|
|
|
+ ON T.TMTB_SQ = TAG.TMTB_SQ
|
|
|
+ AND T.TMTB_STAT = 'G232_11' /*진행*/
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
+ ON C.GOODS_CD = G.GOODS_CD
|
|
|
+ LEFT OUTER JOIN TB_TMTB_APPLY_GOODS NOT_APPLY
|
|
|
+ ON T.TMTB_SQ = NOT_APPLY.TMTB_SQ
|
|
|
+ AND C.GOODS_CD = NOT_APPLY.GOODS_CD
|
|
|
+ AND NOT_APPLY.GOODS_GB = 'G800_30' /* 제외상품 */
|
|
|
+ WHERE 1=1
|
|
|
+ AND NOT_APPLY.TMTB_SQ IS NULL
|
|
|
+ AND T.TMTB_ST_DT <![CDATA[<=]]> NOW()
|
|
|
+ AND T.TMTB_ED_DT >= NOW()
|
|
|
+ AND C.JSESSION_ID = 'aaec62cc-5f91-47bb-ba65-ebc9a61385cf'
|
|
|
+ AND C.CART_GB = 'G026_BC'
|
|
|
+ AND G.GOODS_STAT = 'G008_90'
|
|
|
+ AND G.SELF_MALL_YN = 'Y'
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!-- 다다익선 적용 상품 SUM DATA 조회 -->
|
|
|
+ <select id="selectApplyMoreBetterCartInfoList" parameterType="int" resultType="Order">
|
|
|
+ /* TsfCart.selectApplyMoreBetterCartInfoList : 다다익선 적용 상품 SUM DATA 조회 */
|
|
|
+ SELECT TAG.TMTB_SQ
|
|
|
+ , SUM(G.CURR_PRICE * C.GOODS_QTY) AS TMTB_SUM_AMT
|
|
|
+ , SUM(C.GOODS_QTY) AS TMTB_SUM_QTY
|
|
|
+ FROM TB_TMTB_APPLY_GOODS TAG
|
|
|
+ INNER JOIN TB_CART C
|
|
|
+ ON TAG.GOODS_CD = C.GOODS_CD
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
+ ON C.GOODS_CD = G.GOODS_CD
|
|
|
+ LEFT OUTER JOIN TB_TMTB_APPLY_GOODS NOT_APPLY
|
|
|
+ ON TAG.GOODS_CD = NOT_APPLY.GOODS_CD
|
|
|
+ AND NOT_APPLY.GOODS_GB = 'G800_30' /* 제외상품 */
|
|
|
+ WHERE 1=1
|
|
|
+ AND NOT_APPLY.TMTB_SQ IS NULL
|
|
|
+ AND TAG.DEL_YN = 'N'
|
|
|
+ AND C.JSESSION_ID = 'aaec62cc-5f91-47bb-ba65-ebc9a61385cf'
|
|
|
+ AND C.CART_GB = 'G026_BC'
|
|
|
+ AND G.GOODS_STAT = 'G008_90'
|
|
|
+ AND G.SELF_MALL_YN = 'Y'
|
|
|
+ <if test="list != null and list.size() > 0">
|
|
|
+ AND TAG.TMTB_SQ IN
|
|
|
+ <foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
|
|
|
+ #{item}
|
|
|
+ </foreach>
|
|
|
+ </if>
|
|
|
+ GROUP BY TAG.TMTB_SQ
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!-- 다다익선 적용 상품 조회 -->
|
|
|
+ <select id="selectApplyMoreBetterCartInfoList" parameterType="int" resultType="Order">
|
|
|
+ /* TsfCart.selectApplyMoreBetterCartInfoList : 다다익선 적용 상품 SUM DATA 조회 */
|
|
|
+ SELECT TAG.TMTB_SQ
|
|
|
+ , SUM(G.CURR_PRICE * C.GOODS_QTY) AS TMTB_SUM_AMT
|
|
|
+ , SUM(C.GOODS_QTY) AS TMTB_SUM_QTY
|
|
|
+ FROM TB_TMTB_APPLY_GOODS TAG
|
|
|
+ INNER JOIN TB_CART C
|
|
|
+ ON TAG.GOODS_CD = C.GOODS_CD
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
+ ON C.GOODS_CD = G.GOODS_CD
|
|
|
+ LEFT OUTER JOIN TB_TMTB_APPLY_GOODS NOT_APPLY
|
|
|
+ ON TAG.GOODS_CD = NOT_APPLY.GOODS_CD
|
|
|
+ AND NOT_APPLY.GOODS_GB = 'G800_30' /* 제외상품 */
|
|
|
+ WHERE 1=1
|
|
|
+ AND NOT_APPLY.TMTB_SQ IS NULL
|
|
|
+ AND TAG.DEL_YN = 'N'
|
|
|
+ AND C.JSESSION_ID = 'aaec62cc-5f91-47bb-ba65-ebc9a61385cf'
|
|
|
+ AND C.CART_GB = 'G026_BC'
|
|
|
+ AND G.GOODS_STAT = 'G008_90'
|
|
|
+ AND G.SELF_MALL_YN = 'Y'
|
|
|
+ <if test="list != null and list.size() > 0">
|
|
|
+ AND TAG.TMTB_SQ IN
|
|
|
+ <foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
|
|
|
+ #{item}
|
|
|
+ </foreach>
|
|
|
+ </if>
|
|
|
+ GROUP BY TAG.TMTB_SQ
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!-- 다다익선 SECTION 적용 조건 조회 -->
|
|
|
+ <select id="selectTmtbSectionValList" parameterType="int" resultType="Order">
|
|
|
+ /* TsfCart.selectTmtbSectionValList : 다다익선 SECTION 적용 조건 조회 */
|
|
|
+ SELECT TC.SECTION_GB
|
|
|
+ , TC.SECTION_VAL
|
|
|
+ , TC.TMTB_SQ
|
|
|
+ FROM TB_TMTB_SECTION TC
|
|
|
+ WHERE 1=1
|
|
|
+ AND TC.DEL_YN = 'N'
|
|
|
+ <if test="list != null and list.size() > 0">
|
|
|
+ AND TC.TMTB_SQ IN
|
|
|
+ <foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
|
|
|
+ #{item}
|
|
|
+ </foreach>
|
|
|
+ </if>
|
|
|
+ ORDER BY TMTB_SQ, SECTION_VAL
|
|
|
</select>
|
|
|
</mapper>
|