|
@@ -6,160 +6,159 @@
|
|
|
<select id="getOrderListCount" parameterType="Order" resultType="int">
|
|
<select id="getOrderListCount" parameterType="Order" resultType="int">
|
|
|
/* order.getOrderListCnt */
|
|
/* order.getOrderListCnt */
|
|
|
SELECT COUNT(1)
|
|
SELECT COUNT(1)
|
|
|
- FROM TB_ORDER O
|
|
|
|
|
- INNER JOIN TB_ORDER_DETAIL OD
|
|
|
|
|
- ON O.ORD_NO = OD.ORD_NO
|
|
|
|
|
- INNER JOIN TB_GOODS G1
|
|
|
|
|
- ON OD.GOODS_CD = G1.GOODS_CD
|
|
|
|
|
- INNER JOIN TB_ORDER_DETAIL_ITEM ODI
|
|
|
|
|
- ON OD.ORD_NO = ODI.ORD_NO
|
|
|
|
|
- AND OD.ORD_DTL_NO = ODI.ORD_DTL_NO
|
|
|
|
|
- INNER JOIN TB_GOODS G2
|
|
|
|
|
- ON ODI.ITEM_CD = G2.GOODS_CD
|
|
|
|
|
- LEFT OUTER JOIN TB_GOODS_IMG GI
|
|
|
|
|
- ON ODI.ITEM_CD = GI.GOODS_CD
|
|
|
|
|
- AND ODI.OPT_CD1 = GI.COLOR_CD
|
|
|
|
|
- INNER JOIN TB_PAYMENT P
|
|
|
|
|
- ON O.ORD_NO = P.ORD_NO
|
|
|
|
|
- AND P.PAY_GB = 'O'
|
|
|
|
|
- AND P.PAY_STAT = 'G016_30'
|
|
|
|
|
- INNER JOIN TB_DELIVERY_ADDR DA
|
|
|
|
|
- ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
|
|
|
|
|
- LEFT OUTER JOIN (
|
|
|
|
|
- SELECT OC.WD_INVOICE_NO
|
|
|
|
|
- , OC.WD_INVOICE_SEND_YN
|
|
|
|
|
- , OC.SHIP_COMP_CD
|
|
|
|
|
- , OCD.ORD_DTL_NO
|
|
|
|
|
- , OCD.CHG_QTY
|
|
|
|
|
|
|
+ FROM TB_ORDER O
|
|
|
|
|
+ INNER JOIN TB_ORDER_DETAIL OD
|
|
|
|
|
+ ON O.ORD_NO = OD.ORD_NO
|
|
|
|
|
+ INNER JOIN TB_GOODS G1
|
|
|
|
|
+ ON OD.GOODS_CD = G1.GOODS_CD
|
|
|
|
|
+ INNER JOIN TB_ORDER_DETAIL_ITEM ODI
|
|
|
|
|
+ ON OD.ORD_NO = ODI.ORD_NO
|
|
|
|
|
+ AND OD.ORD_DTL_NO = ODI.ORD_DTL_NO
|
|
|
|
|
+ INNER JOIN TB_GOODS G2
|
|
|
|
|
+ ON ODI.ITEM_CD = G2.GOODS_CD
|
|
|
|
|
+ LEFT OUTER JOIN TB_GOODS_IMG GI
|
|
|
|
|
+ ON ODI.ITEM_CD = GI.GOODS_CD
|
|
|
|
|
+ AND ODI.OPT_CD1 = GI.COLOR_CD
|
|
|
|
|
+ INNER JOIN TB_PAYMENT P
|
|
|
|
|
+ ON O.ORD_NO = P.ORD_NO
|
|
|
|
|
+ AND P.PAY_GB = 'O'
|
|
|
|
|
+ AND P.PAY_STAT = 'G016_30'
|
|
|
|
|
+ INNER JOIN TB_DELIVERY_ADDR DA
|
|
|
|
|
+ ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
|
|
|
|
|
+ <if test="(chgStat != null and chgStat != '') or (chgGb != null and chgGb != '')">
|
|
|
|
|
+ LEFT OUTER JOIN (
|
|
|
|
|
+ SELECT OCD.ORD_DTL_NO
|
|
|
|
|
+ , OC.CHG_GB
|
|
|
|
|
+ , OCD.CHG_STAT
|
|
|
|
|
+ FROM TB_ORDER_CHANGE OC
|
|
|
|
|
+ INNER JOIN TB_ORDER_CHANGE_DETAIL OCD
|
|
|
|
|
+ ON OC.ORD_CHG_SQ = OCD.ORD_CHG_SQ
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ GROUP BY OCD.ORD_DTL_NO
|
|
|
|
|
+ , OC.CHG_GB
|
|
|
, OCD.CHG_STAT
|
|
, OCD.CHG_STAT
|
|
|
- FROM TB_ORDER_CHANGE OC
|
|
|
|
|
- INNER JOIN TB_ORDER_CHANGE_DETAIL OCD
|
|
|
|
|
- ON OC.ORD_CHG_SQ = OCD.ORD_CHG_SQ
|
|
|
|
|
- WHERE 1=1
|
|
|
|
|
- GROUP BY OC.WD_INVOICE_NO, OC.WD_INVOICE_SEND_YN, OC.SHIP_COMP_CD, OCD.ORD_DTL_NO, OCD.CHG_QTY, OCD.CHG_STAT
|
|
|
|
|
) OCD
|
|
) OCD
|
|
|
- ON OD.ORD_DTL_NO = OCD.ORD_DTL_NO
|
|
|
|
|
- WHERE 1=1
|
|
|
|
|
|
|
+ ON OD.ORD_DTL_NO = OCD.ORD_DTL_NO
|
|
|
|
|
+ </if>
|
|
|
|
|
+ WHERE 1=1
|
|
|
<if test='siteCd != null and siteCd != ""'>
|
|
<if test='siteCd != null and siteCd != ""'>
|
|
|
- AND O.SITE_CD = #{siteCd}
|
|
|
|
|
|
|
+ AND O.SITE_CD = #{siteCd}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='mallCd != null and mallCd != ""'>
|
|
<if test='mallCd != null and mallCd != ""'>
|
|
|
- AND O.MALL_GB = #{mallCd}
|
|
|
|
|
|
|
+ AND O.MALL_GB = #{mallCd}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='supplyCompCd != null and supplyCompCd != ""'>
|
|
<if test='supplyCompCd != null and supplyCompCd != ""'>
|
|
|
- AND OD.SUPPLY_COMP_CD = #{supplyCompCd}
|
|
|
|
|
|
|
+ AND OD.SUPPLY_COMP_CD = #{supplyCompCd}
|
|
|
</if>
|
|
</if>
|
|
|
<if test="multiBrand != null and multiBrand != ''">
|
|
<if test="multiBrand != null and multiBrand != ''">
|
|
|
- AND G1.BRAND_CD IN
|
|
|
|
|
|
|
+ AND G1.BRAND_CD IN
|
|
|
<foreach collection="multiBrand" item="item" index="index" open="(" close=")" separator=",">
|
|
<foreach collection="multiBrand" item="item" index="index" open="(" close=")" separator=",">
|
|
|
#{item}
|
|
#{item}
|
|
|
</foreach>
|
|
</foreach>
|
|
|
</if>
|
|
</if>
|
|
|
<if test="multiOrdDtlStat != null and multiOrdDtlStat != ''">
|
|
<if test="multiOrdDtlStat != null and multiOrdDtlStat != ''">
|
|
|
- AND OD.ORD_DTL_STAT IN
|
|
|
|
|
|
|
+ AND OD.ORD_DTL_STAT IN
|
|
|
<foreach collection="multiOrdDtlStat" item="item" index="index" open="(" close=")" separator=",">
|
|
<foreach collection="multiOrdDtlStat" item="item" index="index" open="(" close=")" separator=",">
|
|
|
#{item}
|
|
#{item}
|
|
|
</foreach>
|
|
</foreach>
|
|
|
</if>
|
|
</if>
|
|
|
<if test="multiOrdDtlStat == null or multiOrdDtlStat == ''">
|
|
<if test="multiOrdDtlStat == null or multiOrdDtlStat == ''">
|
|
|
<if test="multiOrdStat != null and multiOrdStat != ''">
|
|
<if test="multiOrdStat != null and multiOrdStat != ''">
|
|
|
- AND OD.ORD_DTL_STAT IN
|
|
|
|
|
|
|
+ AND OD.ORD_DTL_STAT IN
|
|
|
<foreach collection="multiOrdStat" item="item" index="index" open="(" close=")" separator=",">
|
|
<foreach collection="multiOrdStat" item="item" index="index" open="(" close=")" separator=",">
|
|
|
#{item}
|
|
#{item}
|
|
|
</foreach>
|
|
</foreach>
|
|
|
</if>
|
|
</if>
|
|
|
</if>
|
|
</if>
|
|
|
<if test="chgStat != null and chgStat != ''">
|
|
<if test="chgStat != null and chgStat != ''">
|
|
|
- AND OCD.CHG_STAT = #{chgStat}
|
|
|
|
|
|
|
+ AND OCD.CHG_STAT = #{chgStat}
|
|
|
</if>
|
|
</if>
|
|
|
- <if test="chgStat == null or chgStat == ''">
|
|
|
|
|
- <if test="chgGb != null and chgGb != ''">
|
|
|
|
|
- AND OCD.CHG_STAT = #{chgGb}
|
|
|
|
|
- </if>
|
|
|
|
|
|
|
+ <if test="chgGb != null and chgGb != ''">
|
|
|
|
|
+ AND OCD.CHG_GB = #{chgGb}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='search != null and search == "searchOrdNo"'>
|
|
<if test='search != null and search == "searchOrdNo"'>
|
|
|
<if test="condition != null and condition != ''">
|
|
<if test="condition != null and condition != ''">
|
|
|
- AND O.ORD_NO = #{condition}
|
|
|
|
|
|
|
+ AND O.ORD_NO = #{condition}
|
|
|
</if>
|
|
</if>
|
|
|
</if>
|
|
</if>
|
|
|
<if test='search != null and search == "searchExtmallOrderId"'>
|
|
<if test='search != null and search == "searchExtmallOrderId"'>
|
|
|
<if test="condition != null and condition != ''">
|
|
<if test="condition != null and condition != ''">
|
|
|
- AND OD.EXTMALL_ORDER_ID = #{condition}
|
|
|
|
|
|
|
+ AND OD.EXTMALL_ORDER_ID = #{condition}
|
|
|
</if>
|
|
</if>
|
|
|
</if>
|
|
</if>
|
|
|
<if test='search != null and search == "searchAgentOrderId"'>
|
|
<if test='search != null and search == "searchAgentOrderId"'>
|
|
|
<if test="condition != null and condition != ''">
|
|
<if test="condition != null and condition != ''">
|
|
|
- AND OD.AGENT_ORDER_ID = #{condition}
|
|
|
|
|
|
|
+ AND OD.AGENT_ORDER_ID = #{condition}
|
|
|
</if>
|
|
</if>
|
|
|
</if>
|
|
</if>
|
|
|
<if test='payMeans != null and payMeans != ""'>
|
|
<if test='payMeans != null and payMeans != ""'>
|
|
|
- AND P.PAY_MEANS = #{payMeans}
|
|
|
|
|
|
|
+ AND P.PAY_MEANS = #{payMeans}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='orderNm != null and orderNm != ""'>
|
|
<if test='orderNm != null and orderNm != ""'>
|
|
|
- AND O.ORD_NM = #{orderNm}
|
|
|
|
|
|
|
+ AND O.ORD_NM = #{orderNm}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='custId != null and custId != ""'>
|
|
<if test='custId != null and custId != ""'>
|
|
|
- AND O.CUST_NO = #{custId}
|
|
|
|
|
|
|
+ AND O.CUST_NO = #{custId}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='orderPhnno != null and orderPhnno != ""'>
|
|
<if test='orderPhnno != null and orderPhnno != ""'>
|
|
|
- AND O.ORD_PHNNO = #{orderPhnno}
|
|
|
|
|
|
|
+ AND O.ORD_PHNNO = #{orderPhnno}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='goodsCd != null and goodsCd != ""'>
|
|
<if test='goodsCd != null and goodsCd != ""'>
|
|
|
- AND G1.GOODS_CD = #{goodsCd}
|
|
|
|
|
|
|
+ AND G1.GOODS_CD = #{goodsCd}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='sizeCd != null and sizeCd != ""'>
|
|
<if test='sizeCd != null and sizeCd != ""'>
|
|
|
- AND ODI.OPT_CD2 = #{sizeCd}
|
|
|
|
|
|
|
+ AND ODI.OPT_CD2 = #{sizeCd}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='goodsNm != null and goodsNm != ""'>
|
|
<if test='goodsNm != null and goodsNm != ""'>
|
|
|
- AND G1.GOODS_NM = #{goodsNm}
|
|
|
|
|
|
|
+ AND G1.GOODS_NM = #{goodsNm}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='payMeans != null and payMeans != ""'>
|
|
<if test='payMeans != null and payMeans != ""'>
|
|
|
- AND P.PAY_MEANS = #{payMeans}
|
|
|
|
|
|
|
+ AND P.PAY_MEANS = #{payMeans}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='orderNm != null and orderNm != ""'>
|
|
<if test='orderNm != null and orderNm != ""'>
|
|
|
- AND O.ORD_NM = #{orderNm}
|
|
|
|
|
|
|
+ AND O.ORD_NM = #{orderNm}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='custId != null and custId != ""'>
|
|
<if test='custId != null and custId != ""'>
|
|
|
- AND O.CUST_NO = #{custId}
|
|
|
|
|
|
|
+ AND O.CUST_NO = #{custId}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='orderPhnno != null and orderPhnno != ""'>
|
|
<if test='orderPhnno != null and orderPhnno != ""'>
|
|
|
- AND O.ORD_PHNNO = #{orderPhnno}
|
|
|
|
|
|
|
+ AND O.ORD_PHNNO = #{orderPhnno}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='goodsCd != null and goodsCd != ""'>
|
|
<if test='goodsCd != null and goodsCd != ""'>
|
|
|
- AND G2.GOODS_CD = #{goodsCd}
|
|
|
|
|
|
|
+ AND G2.GOODS_CD = #{goodsCd}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='sizeCd != null and sizeCd != ""'>
|
|
<if test='sizeCd != null and sizeCd != ""'>
|
|
|
- AND ODI.OPT_CD2 = #{sizeCd}
|
|
|
|
|
|
|
+ AND ODI.OPT_CD2 = #{sizeCd}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='goodsNm != null and goodsNm != ""'>
|
|
<if test='goodsNm != null and goodsNm != ""'>
|
|
|
- AND G2.GOODS_NM = #{goodsNm}
|
|
|
|
|
|
|
+ AND G2.GOODS_NM = #{goodsNm}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='recipNm != null and recipNm != ""'>
|
|
<if test='recipNm != null and recipNm != ""'>
|
|
|
- AND DA.RECIP_NM = #{recipNm}
|
|
|
|
|
|
|
+ AND DA.RECIP_NM = #{recipNm}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='invoiceNo != null and invoiceNo != ""'>
|
|
<if test='invoiceNo != null and invoiceNo != ""'>
|
|
|
- AND OD.INVOICE_NO = #{invoiceNo}
|
|
|
|
|
|
|
+ AND OD.INVOICE_NO = #{invoiceNo}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='wdInvoiceSendYn != null and wdInvoiceSendYn == "Y"'>
|
|
<if test='wdInvoiceSendYn != null and wdInvoiceSendYn == "Y"'>
|
|
|
- AND OD.INVOICE_SEND_YN = 'Y'
|
|
|
|
|
|
|
+ AND OD.INVOICE_SEND_YN = 'Y'
|
|
|
</if>
|
|
</if>
|
|
|
<if test='wdInvoiceSendYn != null and wdInvoiceSendYn == "N"'>
|
|
<if test='wdInvoiceSendYn != null and wdInvoiceSendYn == "N"'>
|
|
|
- AND OD.INVOICE_SEND_YN = 'N'
|
|
|
|
|
|
|
+ AND OD.INVOICE_SEND_YN = 'N'
|
|
|
</if>
|
|
</if>
|
|
|
<if test='searchDateGb != null and searchDateGb == "ordDt"'>
|
|
<if test='searchDateGb != null and searchDateGb == "ordDt"'>
|
|
|
- AND O.ORD_DT >= DATE_FORMAT(#{stDate}, '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
- AND O.ORD_DT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(#{edDate}, INTERVAL 1 DAY), '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
|
|
+ AND O.ORD_DT >= DATE_FORMAT(#{stDate}, '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
+ AND O.ORD_DT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(#{edDate}, INTERVAL 1 DAY), '%Y-%m-%d %H:%i:%S')
|
|
|
</if>
|
|
</if>
|
|
|
<if test='searchDateGb != null and searchDateGb == "delvStdt"'>
|
|
<if test='searchDateGb != null and searchDateGb == "delvStdt"'>
|
|
|
- AND OD.DELV_STDT >= DATE_FORMAT(#{stDate}, '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
- AND OD.DELV_STDT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(#{edDate}, INTERVAL 1 DAY), '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
|
|
+ AND OD.DELV_STDT >= DATE_FORMAT(#{stDate}, '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
+ AND OD.DELV_STDT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(#{edDate}, INTERVAL 1 DAY), '%Y-%m-%d %H:%i:%S')
|
|
|
</if>
|
|
</if>
|
|
|
<if test='searchDateGb != null and searchDateGb == "soldoutDt"'>
|
|
<if test='searchDateGb != null and searchDateGb == "soldoutDt"'>
|
|
|
- AND OD.SOLDOUT_REG_DT >= DATE_FORMAT(#{stDate}, '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
- AND OD.SOLDOUT_REG_DT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(#{edDate}, INTERVAL 1 DAY), '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
|
|
+ AND OD.SOLDOUT_REG_DT >= DATE_FORMAT(#{stDate}, '%Y-%m-%d %H:%i:%S')
|
|
|
|
|
+ AND OD.SOLDOUT_REG_DT <![CDATA[<]]> DATE_FORMAT(DATE_ADD(#{edDate}, INTERVAL 1 DAY), '%Y-%m-%d %H:%i:%S')
|
|
|
</if>
|
|
</if>
|
|
|
<if test="ordNoList != null and ordNoList != ''">
|
|
<if test="ordNoList != null and ordNoList != ''">
|
|
|
- AND OD.ORD_NO IN
|
|
|
|
|
|
|
+ AND OD.ORD_NO IN
|
|
|
<foreach collection="ordNoList" item="item" index="index" open="(" close=")" separator=",">
|
|
<foreach collection="ordNoList" item="item" index="index" open="(" close=")" separator=",">
|
|
|
#{item}
|
|
#{item}
|
|
|
</foreach>
|
|
</foreach>
|
|
@@ -217,9 +216,15 @@
|
|
|
THEN '주문'
|
|
THEN '주문'
|
|
|
ELSE '교환'
|
|
ELSE '교환'
|
|
|
END EXCH_GB_NM
|
|
END EXCH_GB_NM
|
|
|
|
|
+ , DA.RECIP_NM
|
|
|
|
|
+ , DA.RECIP_PHNNO
|
|
|
|
|
+ , CONCAT(DA.RECIP_BASE_ADDR, ' ', DA.RECIP_DTL_ADDR) AS RECIP_ADDR
|
|
|
|
|
+ , DA.DELV_MEMO
|
|
|
|
|
+ , OD.DSTRBT_NOTE
|
|
|
FROM TB_ORDER O
|
|
FROM TB_ORDER O
|
|
|
INNER JOIN TB_ORDER_DETAIL OD
|
|
INNER JOIN TB_ORDER_DETAIL OD
|
|
|
ON O.ORD_NO = OD.ORD_NO
|
|
ON O.ORD_NO = OD.ORD_NO
|
|
|
|
|
+ AND OD.ORD_DTL_STAT <![CDATA[<>]]> 'G013_97' -- 교환철회 상품 제외
|
|
|
INNER JOIN TB_GOODS G1
|
|
INNER JOIN TB_GOODS G1
|
|
|
ON OD.GOODS_CD = G1.GOODS_CD
|
|
ON OD.GOODS_CD = G1.GOODS_CD
|
|
|
INNER JOIN TB_ORDER_DETAIL_ITEM ODI
|
|
INNER JOIN TB_ORDER_DETAIL_ITEM ODI
|
|
@@ -236,19 +241,18 @@
|
|
|
AND P.PAY_STAT = 'G016_30'
|
|
AND P.PAY_STAT = 'G016_30'
|
|
|
INNER JOIN TB_DELIVERY_ADDR DA
|
|
INNER JOIN TB_DELIVERY_ADDR DA
|
|
|
ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
|
|
ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
|
|
|
- LEFT OUTER JOIN (SELECT OC.WD_INVOICE_NO
|
|
|
|
|
- , OC.WD_INVOICE_SEND_YN
|
|
|
|
|
- , OC.SHIP_COMP_CD
|
|
|
|
|
- , OCD.ORD_DTL_NO
|
|
|
|
|
- , OCD.CHG_QTY
|
|
|
|
|
|
|
+ <if test="(chgStat != null and chgStat != '') or (chgGb != null and chgGb != '')">
|
|
|
|
|
+ LEFT OUTER JOIN (SELECT OCD.ORD_DTL_NO
|
|
|
|
|
+ , OC.CHG_GB
|
|
|
, OCD.CHG_STAT
|
|
, OCD.CHG_STAT
|
|
|
FROM TB_ORDER_CHANGE OC
|
|
FROM TB_ORDER_CHANGE OC
|
|
|
INNER JOIN TB_ORDER_CHANGE_DETAIL OCD
|
|
INNER JOIN TB_ORDER_CHANGE_DETAIL OCD
|
|
|
ON OC.ORD_CHG_SQ = OCD.ORD_CHG_SQ
|
|
ON OC.ORD_CHG_SQ = OCD.ORD_CHG_SQ
|
|
|
WHERE 1=1
|
|
WHERE 1=1
|
|
|
- GROUP BY OC.WD_INVOICE_NO, OC.WD_INVOICE_SEND_YN, OC.SHIP_COMP_CD, OCD.ORD_DTL_NO, OCD.CHG_QTY, OCD.CHG_STAT
|
|
|
|
|
|
|
+ GROUP BY OCD.ORD_DTL_NO, OC.CHG_GB, OCD.CHG_STAT
|
|
|
) OCD
|
|
) OCD
|
|
|
ON OD.ORD_DTL_NO = OCD.ORD_DTL_NO
|
|
ON OD.ORD_DTL_NO = OCD.ORD_DTL_NO
|
|
|
|
|
+ </if>
|
|
|
WHERE 1=1
|
|
WHERE 1=1
|
|
|
<if test='siteCd != null and siteCd != ""'>
|
|
<if test='siteCd != null and siteCd != ""'>
|
|
|
AND O.SITE_CD = #{siteCd}
|
|
AND O.SITE_CD = #{siteCd}
|
|
@@ -282,10 +286,8 @@
|
|
|
<if test="chgStat != null and chgStat != ''">
|
|
<if test="chgStat != null and chgStat != ''">
|
|
|
AND OCD.CHG_STAT = #{chgStat}
|
|
AND OCD.CHG_STAT = #{chgStat}
|
|
|
</if>
|
|
</if>
|
|
|
- <if test="chgStat == null or chgStat == ''">
|
|
|
|
|
- <if test="chgGb != null and chgGb != ''">
|
|
|
|
|
- AND OCD.CHG_STAT = #{chgGb}
|
|
|
|
|
- </if>
|
|
|
|
|
|
|
+ <if test="chgGb != null and chgGb != ''">
|
|
|
|
|
+ AND OCD.CHG_GB = #{chgGb}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='search != null and search == "searchOrdNo"'>
|
|
<if test='search != null and search == "searchOrdNo"'>
|
|
|
<if test="condition != null and condition != ''">
|
|
<if test="condition != null and condition != ''">
|
|
@@ -396,7 +398,7 @@
|
|
|
, FN_GET_CODE_NM('G011', O.MALL_GB) AS MALL_GB_NM
|
|
, FN_GET_CODE_NM('G011', O.MALL_GB) AS MALL_GB_NM
|
|
|
, O.FRONT_GB
|
|
, O.FRONT_GB
|
|
|
, CASE WHEN O.FRONT_GB = 'P'
|
|
, CASE WHEN O.FRONT_GB = 'P'
|
|
|
- THEN 'PC'
|
|
|
|
|
|
|
+ THEN 'PC'
|
|
|
ELSE 'MOBILE'
|
|
ELSE 'MOBILE'
|
|
|
END FRONT_GB_NM
|
|
END FRONT_GB_NM
|
|
|
, OD.EXTMALL_ID
|
|
, OD.EXTMALL_ID
|
|
@@ -412,7 +414,7 @@
|
|
|
, O.ORD_TELNO
|
|
, O.ORD_TELNO
|
|
|
, C.CUST_GB
|
|
, C.CUST_GB
|
|
|
, CASE WHEN C.CUST_GB IS NULL
|
|
, CASE WHEN C.CUST_GB IS NULL
|
|
|
- THEN '비회원'
|
|
|
|
|
|
|
+ THEN '비회원'
|
|
|
ELSE FN_GET_CODE_NM('G100', C.CUST_GB)
|
|
ELSE FN_GET_CODE_NM('G100', C.CUST_GB)
|
|
|
END CUST_GB_NM
|
|
END CUST_GB_NM
|
|
|
, C.MANAGED_RSN
|
|
, C.MANAGED_RSN
|
|
@@ -484,6 +486,18 @@
|
|
|
THEN 0
|
|
THEN 0
|
|
|
ELSE OCD.ORD_REQ_CHG_QTY * ODI.ITEM_QTY
|
|
ELSE OCD.ORD_REQ_CHG_QTY * ODI.ITEM_QTY
|
|
|
END ORD_REQ_CHG_QTY
|
|
END ORD_REQ_CHG_QTY
|
|
|
|
|
+ , CASE WHEN OCD.CANCEL_REQUEST_QTY IS NULL
|
|
|
|
|
+ THEN 0
|
|
|
|
|
+ ELSE OCD.CANCEL_REQUEST_QTY * ODI.ITEM_QTY
|
|
|
|
|
+ END CANCEL_REQUEST_QTY
|
|
|
|
|
+ , CASE WHEN OCD.EXCHANGE_REQUEST_QTY IS NULL
|
|
|
|
|
+ THEN 0
|
|
|
|
|
+ ELSE OCD.EXCHANGE_REQUEST_QTY * ODI.ITEM_QTY
|
|
|
|
|
+ END EXCHANGE_REQUEST_QTY
|
|
|
|
|
+ , CASE WHEN OCD.RETURN_REQUEST_QTY IS NULL
|
|
|
|
|
+ THEN 0
|
|
|
|
|
+ ELSE OCD.RETURN_REQUEST_QTY * ODI.ITEM_QTY
|
|
|
|
|
+ END RETURN_REQUEST_QTY
|
|
|
, ODI.OPT_ADD_PRICE
|
|
, ODI.OPT_ADD_PRICE
|
|
|
, ODI.CPN1_DC_AMT
|
|
, ODI.CPN1_DC_AMT
|
|
|
, ODI.GOODS_CPN_DC_AMT
|
|
, ODI.GOODS_CPN_DC_AMT
|
|
@@ -514,6 +528,7 @@
|
|
|
FROM TB_ORDER O
|
|
FROM TB_ORDER O
|
|
|
INNER JOIN TB_ORDER_DETAIL OD
|
|
INNER JOIN TB_ORDER_DETAIL OD
|
|
|
ON O.ORD_NO = OD.ORD_NO
|
|
ON O.ORD_NO = OD.ORD_NO
|
|
|
|
|
+ AND OD.ORD_DTL_STAT <![CDATA[<>]]> 'G013_97' -- 교환철회 상품 제외
|
|
|
INNER JOIN TB_GOODS G1
|
|
INNER JOIN TB_GOODS G1
|
|
|
ON OD.GOODS_CD = G1.GOODS_CD
|
|
ON OD.GOODS_CD = G1.GOODS_CD
|
|
|
INNER JOIN TB_ORDER_DETAIL_ITEM ODI
|
|
INNER JOIN TB_ORDER_DETAIL_ITEM ODI
|
|
@@ -557,6 +572,9 @@
|
|
|
ON OD.ORD_DTL_NO = X.ORD_DTL_NO
|
|
ON OD.ORD_DTL_NO = X.ORD_DTL_NO
|
|
|
LEFT OUTER JOIN (SELECT OD.ORD_DTL_NO
|
|
LEFT OUTER JOIN (SELECT OD.ORD_DTL_NO
|
|
|
, SUM(OCD.CHG_QTY) AS ORD_REQ_CHG_QTY
|
|
, SUM(OCD.CHG_QTY) AS ORD_REQ_CHG_QTY
|
|
|
|
|
+ , SUM(IF(OCD.CHG_STAT = 'G685_20', OCD.CHG_QTY, 0)) AS CANCEL_REQUEST_QTY
|
|
|
|
|
+ , SUM(IF(OCD.CHG_STAT = 'G685_30', OCD.CHG_QTY, 0)) AS EXCHANGE_REQUEST_QTY
|
|
|
|
|
+ , SUM(IF(OCD.CHG_STAT = 'G685_40', OCD.CHG_QTY, 0)) AS RETURN_REQUEST_QTY
|
|
|
FROM TB_ORDER_CHANGE_DETAIL OCD
|
|
FROM TB_ORDER_CHANGE_DETAIL OCD
|
|
|
INNER JOIN TB_ORDER_DETAIL OD
|
|
INNER JOIN TB_ORDER_DETAIL OD
|
|
|
ON OCD.ORD_DTL_NO = OD.ORD_DTL_NO
|
|
ON OCD.ORD_DTL_NO = OD.ORD_DTL_NO
|
|
@@ -633,6 +651,7 @@
|
|
|
ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
|
|
ON OD.DELV_ADDR_SQ = DA.DELV_ADDR_SQ
|
|
|
WHERE 1 = 1
|
|
WHERE 1 = 1
|
|
|
AND OD.ORD_NO = #{ordNo}
|
|
AND OD.ORD_NO = #{ordNo}
|
|
|
|
|
+ AND OD.ORD_DTL_STAT <![CDATA[<>]]> 'G013_97' -- 교환철회 상품 제외
|
|
|
) Z
|
|
) Z
|
|
|
ORDER BY Z.DELV_ADDR_SQ
|
|
ORDER BY Z.DELV_ADDR_SQ
|
|
|
</select>
|
|
</select>
|
|
@@ -659,6 +678,10 @@
|
|
|
WHERE 1 = 1
|
|
WHERE 1 = 1
|
|
|
AND P.ORD_NO = #{ordNo}
|
|
AND P.ORD_NO = #{ordNo}
|
|
|
AND P.PAY_STAT = 'G016_30'
|
|
AND P.PAY_STAT = 'G016_30'
|
|
|
|
|
+ AND NOT EXISTS (SELECT 1
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL OCD
|
|
|
|
|
+ WHERE P.ORD_CHG_SQ = OCD.ORD_CHG_SQ
|
|
|
|
|
+ AND OCD.CHG_STAT = 'G685_31')
|
|
|
ORDER BY P.REG_DT DESC
|
|
ORDER BY P.REG_DT DESC
|
|
|
</select>
|
|
</select>
|
|
|
|
|
|
|
@@ -676,6 +699,10 @@
|
|
|
FROM TB_DELIVERY_FEE DF
|
|
FROM TB_DELIVERY_FEE DF
|
|
|
WHERE 1 = 1
|
|
WHERE 1 = 1
|
|
|
AND DF.ORD_NO = #{ordNo}
|
|
AND DF.ORD_NO = #{ordNo}
|
|
|
|
|
+ AND NOT EXISTS (SELECT 1
|
|
|
|
|
+ FROM TB_ORDER_CHANGE_DETAIL OCD
|
|
|
|
|
+ WHERE DF.ORD_CHG_SQ = OCD.ORD_CHG_SQ
|
|
|
|
|
+ AND OCD.CHG_STAT = 'G685_31')
|
|
|
) Z
|
|
) Z
|
|
|
GROUP BY Z.DELV_FEE_GB
|
|
GROUP BY Z.DELV_FEE_GB
|
|
|
, Z.DELV_FEE_GB_NM
|
|
, Z.DELV_FEE_GB_NM
|
|
@@ -1561,13 +1588,418 @@
|
|
|
<update id="updateOrderChange" parameterType="Order">
|
|
<update id="updateOrderChange" parameterType="Order">
|
|
|
/* order.updateOrderChange : 반품/교환 > 회수지 정보 수정 */
|
|
/* order.updateOrderChange : 반품/교환 > 회수지 정보 수정 */
|
|
|
UPDATE TB_ORDER_CHANGE
|
|
UPDATE TB_ORDER_CHANGE
|
|
|
- SET CHGER_ZIPCODE = #{chgerZipCode}
|
|
|
|
|
|
|
+ SET CHGER_ZIPCODE = #{chgerZipcode}
|
|
|
, CHGER_BASE_ADDR = #{chgerBaseAddr}
|
|
, CHGER_BASE_ADDR = #{chgerBaseAddr}
|
|
|
, CHGER_DTL_ADDR = #{chgerDtlAddr}
|
|
, CHGER_DTL_ADDR = #{chgerDtlAddr}
|
|
|
, UPD_NO = #{updNo}
|
|
, UPD_NO = #{updNo}
|
|
|
, UPD_DT = NOW()
|
|
, UPD_DT = NOW()
|
|
|
WHERE ORD_CHG_SQ = #{ordChgSq}
|
|
WHERE ORD_CHG_SQ = #{ordChgSq}
|
|
|
</update>
|
|
</update>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 장바구니 상품 목록 조회 (업체별 배송단위) -->
|
|
|
|
|
+ <select id="getCartGoodsList" parameterType="Order" resultType="Order">
|
|
|
|
|
+ /* TsfOrder.getCartGoodsList */
|
|
|
|
|
+ SELECT CA.CART_SQ
|
|
|
|
|
+ , CD.CART_DTL_SQ
|
|
|
|
|
+ , BR.BRAND_ENM
|
|
|
|
|
+ , G.GOODS_NM
|
|
|
|
|
+ , CA.GOODS_CD
|
|
|
|
|
+ , CD.ITEM_CD
|
|
|
|
|
+ , OP.OPT_CD
|
|
|
|
|
+ , OP.OPT_CD1
|
|
|
|
|
+ , OP.OPT_CD2
|
|
|
|
|
+ , CA.GOODS_QTY
|
|
|
|
|
+ , G.GOODS_TYPE
|
|
|
|
|
+ , G.LIST_PRICE
|
|
|
|
|
+ , G.CURR_PRICE
|
|
|
|
|
+ , G.GOODS_GB
|
|
|
|
|
+ , G.PRE_PPNT_USABLE_YN
|
|
|
|
|
+ , G.PRE_MPNT_USABLE_YN
|
|
|
|
|
+ , G.MIN_ORD_AMT
|
|
|
|
|
+ , G.MAX_ORD_QTY
|
|
|
|
|
+ , G.DAY_MAX_ORD_QTY
|
|
|
|
|
+ , G.GIFT_PACK_YN
|
|
|
|
|
+ , G.NEW_CUST_ORD_YN
|
|
|
|
|
+ , DFP.SUPPLY_COMP_CD
|
|
|
|
|
+ , CASE WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
|
|
|
|
|
+ ELSE DFP.DELV_FEE_CD END AS DELV_FEE_CD
|
|
|
|
|
+ , GRS.DELV_RES_DT
|
|
|
|
|
+ , DFP.MIN_ORD_AMT
|
|
|
|
|
+ , DFP.DELV_FEE
|
|
|
|
|
+ FROM TB_CART CA
|
|
|
|
|
+ INNER JOIN TB_CART_DETAIL CD
|
|
|
|
|
+ ON CA.CART_SQ = CD.CART_SQ
|
|
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
|
|
+ ON CA.GOODS_CD = G.GOODS_CD
|
|
|
|
|
+ INNER JOIN TB_OPTION OP
|
|
|
|
|
+ ON CD.ITEM_CD = OP.GOODS_CD
|
|
|
|
|
+ AND CD.OPT_CD1 = OP.OPT_CD1
|
|
|
|
|
+ AND CD.OPT_CD2 = OP.OPT_CD2
|
|
|
|
|
+ INNER JOIN TB_DELV_FEE_POLICY DFP
|
|
|
|
|
+ ON G.DELV_FEE_CD = DFP.DELV_FEE_CD
|
|
|
|
|
+ INNER JOIN TB_BRAND BR
|
|
|
|
|
+ ON G.BRAND_CD = BR.BRAND_CD
|
|
|
|
|
+ LEFT OUTER JOIN TB_GOODS_RES_SELL GRS
|
|
|
|
|
+ ON CA.GOODS_CD = GRS.GOODS_CD
|
|
|
|
|
+ WHERE 1 = 1
|
|
|
|
|
+ AND G.GOODS_STAT = 'G008_90'
|
|
|
|
|
+ <if test="custNo == 0">
|
|
|
|
|
+ AND CA.CUST_NO = 0
|
|
|
|
|
+ AND CA.JSESSION_ID = #{jsessionId}
|
|
|
|
|
+ </if>
|
|
|
|
|
+ <if test="custNo != 0">
|
|
|
|
|
+ AND CA.CUST_NO = #{custNo}
|
|
|
|
|
+ </if>
|
|
|
|
|
+ <if test="cartSqArr != null and cartSqArr ==''">
|
|
|
|
|
+ AND CA.CART_SQ IN
|
|
|
|
|
+ <foreach collection="cartSqArr" item="item" index="index" open="(" close=")" separator=",">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
|
|
+ </if>
|
|
|
|
|
+ ORDER BY DFP.SUPPLY_COMP_CD
|
|
|
|
|
+ , DFP.DELV_FEE_CD
|
|
|
|
|
+ , CD.CART_SQ
|
|
|
|
|
+ , CD.CART_DTL_SQ
|
|
|
|
|
+ </select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 고객정보 조회 -->
|
|
|
|
|
+ <select id="getCustemerInfo" parameterType="Order" resultType="Order">
|
|
|
|
|
+ /* TsfOrder.getCustemerInfo */
|
|
|
|
|
+ SELECT CU.CUST_NM
|
|
|
|
|
+ , CU.EMAIL
|
|
|
|
|
+ , CU.CELL_PHNNO
|
|
|
|
|
+ FROM TB_CUSTOMER CU
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND CU.CUST_NO = #{custNo}
|
|
|
|
|
+ </select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 배송지정보 조회 -->
|
|
|
|
|
+ <select id="getDeliveryAddrInfo" parameterType="Order" resultType="Order">
|
|
|
|
|
+ /* TsfOrder.getDeliveryAddrInfo */
|
|
|
|
|
+ SELECT CDA.DELV_ADDR_NM
|
|
|
|
|
+ , CDA.RECIP_ZIPCODE
|
|
|
|
|
+ , CDA.RECIP_BASE_ADDR
|
|
|
|
|
+ , CDA.RECIP_DTL_ADDR
|
|
|
|
|
+ , CDA.RECIP_PHNNO
|
|
|
|
|
+ , CDA.DELV_MEMO
|
|
|
|
|
+ FROM TB_CUST_DELIVERY_ADDR CDA
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND CDA.CUST_NO = #{custNo}
|
|
|
|
|
+ AND CDA.DEL_YN = 'N'
|
|
|
|
|
+ AND CDA.DEFAULT_YN = 'Y'
|
|
|
|
|
+ LIMIT 1
|
|
|
|
|
+ </select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 포인트정보 조회 -->
|
|
|
|
|
+ <select id="getCustPointInfo" parameterType="Order" resultType="int">
|
|
|
|
|
+ /* TsfOrder.getCustPointInfo */
|
|
|
|
|
+ SELECT IFNULL(SUM(CP.RM_PNT_AMT), 0) AS RM_PNT_AMT
|
|
|
|
|
+ FROM TB_CUST_POINT CP
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND CP.CUST_NO = #{custNo}
|
|
|
|
|
+ AND CP.EXP_BE_DT <![CDATA[<]]> CURRENT_TIMESTAMP
|
|
|
|
|
+ AND CP.EXP_CMP_DT > CURRENT_TIMESTAMP
|
|
|
|
|
+ </select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 상품권정보 조회 -->
|
|
|
|
|
+ <select id="getGiftcardInfo" parameterType="Order" resultType="int">
|
|
|
|
|
+ /* TsfOrder.getGiftcardInfo */
|
|
|
|
|
+ SELECT IFNULL(SUM(CG.RM_GFCD_AMT)) AS RM_GFCD_AMT
|
|
|
|
|
+ FROM TB_CUST_GIFTCARD CG
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND CG.CUST_NO = #{custNo}
|
|
|
|
|
+ AND CG.USE_ST_DATE <![CDATA[<]]> CURRENT_TIMESTAMP
|
|
|
|
|
+ AND CG.USE_EXP_DATE > CURRENT_TIMESTAMP
|
|
|
|
|
+ </select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 총알배송 가능지역 조회 -->
|
|
|
|
|
+ <select id="getDailyDeliveryZoneInfo" parameterType="Order" resultType="int">
|
|
|
|
|
+ /* TsfOrder.getDailyDeliveryZoneInfo */
|
|
|
|
|
+ SELECT COUNT(1)
|
|
|
|
|
+ FROM TB_DAILY_DELIVERY_ZONE DC
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND ZIP_NO = #{zipNo}
|
|
|
|
|
+ </select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 즉시할인 적용 상품 조회 -->
|
|
|
|
|
+ <select id="getCpn1ApplyGoodsList" parameterType="Order" resultType="Order">
|
|
|
|
|
+ /* TsfOrder.getCpn1ApplyGoodsList */
|
|
|
|
|
+ WITH GOODS_DATA AS (
|
|
|
|
|
+ SELECT CA.GOODS_CD
|
|
|
|
|
+ , G.SUPPLY_COMP_CD
|
|
|
|
|
+ , G.BRAND_CD
|
|
|
|
|
+ , CA.GOODS_QTY
|
|
|
|
|
+ , G.CURR_PRICE
|
|
|
|
|
+ , OP.ADD_PRICE
|
|
|
|
|
+ , G.GOODS_TYPE
|
|
|
|
|
+ FROM TB_CART CA
|
|
|
|
|
+ INNER JOIN TB_CART_DETAIL CD
|
|
|
|
|
+ ON CA.CART_SQ = CD.CART_SQ
|
|
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
|
|
+ ON CA.GOODS_CD = G.GOODS_CD
|
|
|
|
|
+ LEFT OUTER JOIN TB_OPTION OP
|
|
|
|
|
+ ON G.GOODS_CD = OP.GOODS_CD
|
|
|
|
|
+ AND CD.OPT_CD = OP.OPT_CD
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND G.GOODS_STAT = 'G008_90' -- 승인완료
|
|
|
|
|
+ <if test="cartSqArr != null and cartSqArr ==''">
|
|
|
|
|
+ AND CA.CART_SQ IN
|
|
|
|
|
+ <foreach collection="cartSqArr" item="item" index="index" open="(" close=")" separator=",">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
|
|
+ </if>
|
|
|
|
|
+ )
|
|
|
|
|
+ SELECT Z.GOODS_CD
|
|
|
|
|
+ , Z.CURR_PRICE
|
|
|
|
|
+ , Z.ADD_PRICE
|
|
|
|
|
+ , Z.GOODS_QTY
|
|
|
|
|
+ , CP.CPN_ID
|
|
|
|
|
+ , CP.CPN_NM
|
|
|
|
|
+ , CP.DC_WAY
|
|
|
|
|
+ , CP.DC_PVAL
|
|
|
|
|
+ , CP.DC_MVAL
|
|
|
|
|
+ , CP.DC_AVAL
|
|
|
|
|
+ , CP.MAX_DC_AMT
|
|
|
|
|
+ , CP.BUY_LIMIT_AMT
|
|
|
|
|
+ , CASE WHEN CP.DC_WAY = 'G240_11'
|
|
|
|
|
+ THEN (Z.CURR_PRICE * CP.DC_PVAL) / 100
|
|
|
|
|
+ ELSE CP.DC_PVAL
|
|
|
|
|
+ END PC_CURR_PRICE
|
|
|
|
|
+ FROM TB_COUPON CP
|
|
|
|
|
+ INNER JOIN TB_COUPON_CUST_GBN CGB
|
|
|
|
|
+ ON CP.CPN_ID = CGB.CPN_ID
|
|
|
|
|
+ AND CGB.USABLE_CUST_GB IN ('G100_10')
|
|
|
|
|
+ INNER JOIN TB_COUPON_CUST_GRADE CGR
|
|
|
|
|
+ ON CP.CPN_ID = CGR.CPN_ID
|
|
|
|
|
+ AND CGR.USABLE_CUST_GRADE IN ('G110_40', 'G110_50')
|
|
|
|
|
+ INNER JOIN (
|
|
|
|
|
+ SELECT CR.CPN_ID
|
|
|
|
|
+ , GD.GOODS_CD
|
|
|
|
|
+ , GD.CURR_PRICE
|
|
|
|
|
+ , GD.ADD_PRICE
|
|
|
|
|
+ , GD.GOODS_QTY
|
|
|
|
|
+ , GD.GOODS_TYPE
|
|
|
|
|
+ FROM TB_COUPON_REFVAL CR
|
|
|
|
|
+ INNER JOIN GOODS_DATA GD
|
|
|
|
|
+ ON CR.REF_VAL = GD.GOODS_CD
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND CR.CPN_TARGET = 'G260_10' -- 상품
|
|
|
|
|
+ AND CR.DEL_YN = 'N'
|
|
|
|
|
+ UNION
|
|
|
|
|
+ SELECT CR.CPN_ID
|
|
|
|
|
+ , GD.GOODS_CD
|
|
|
|
|
+ , GD.CURR_PRICE
|
|
|
|
|
+ , GD.ADD_PRICE
|
|
|
|
|
+ , GD.GOODS_QTY
|
|
|
|
|
+ , GD.GOODS_TYPE
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT C4.LEAF_CATE_NO
|
|
|
|
|
+ , CASE WHEN X = 1 THEN 'CATE1_NO'
|
|
|
|
|
+ WHEN X = 2 THEN 'CATE2_NO'
|
|
|
|
|
+ WHEN X = 3 THEN 'CATE3_NO'
|
|
|
|
|
+ WHEN X = 4 THEN 'CATE4_NO'
|
|
|
|
|
+ ELSE 'CATE5_NO'
|
|
|
|
|
+ END CATE_LVL
|
|
|
|
|
+ , CASE WHEN X = 1 THEN CATE1_NO
|
|
|
|
|
+ WHEN X = 2 THEN CATE2_NO
|
|
|
|
|
+ WHEN X = 3 THEN CATE3_NO
|
|
|
|
|
+ WHEN X = 4 THEN CATE4_NO
|
|
|
|
|
+ ELSE CATE5_NO
|
|
|
|
|
+ END CATE_NO
|
|
|
|
|
+ FROM TB_CATE_4SRCH C4
|
|
|
|
|
+ LEFT OUTER JOIN (
|
|
|
|
|
+ SELECT 1 AS X
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT 2 AS X
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT 3 AS X
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT 4 AS X
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT 5 AS X
|
|
|
|
|
+ ) B
|
|
|
|
|
+ ON 1=1
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND C4.SITE_CD = 'G000_10'
|
|
|
|
|
+ AND C4.CATE_TYPE = 'G031_10'
|
|
|
|
|
+ ORDER BY LEAF_CATE_NO
|
|
|
|
|
+ , CATE_LVL
|
|
|
|
|
+ ) C4SRCH
|
|
|
|
|
+ INNER JOIN TB_COUPON_REFVAL CR
|
|
|
|
|
+ ON C4SRCH.CATE_NO = CR.REF_VAL
|
|
|
|
|
+ INNER JOIN TB_CATE_GOODS CG
|
|
|
|
|
+ ON C4SRCH.LEAF_CATE_NO = CG.CATE_NO
|
|
|
|
|
+ INNER JOIN GOODS_DATA GD
|
|
|
|
|
+ ON CG.GOODS_CD = GD.GOODS_CD
|
|
|
|
|
+ WHERE C4SRCH.CATE_NO IS NOT NULL
|
|
|
|
|
+ AND CR.CPN_TARGET = 'G260_11' -- 카테고리
|
|
|
|
|
+ AND CR.DEL_YN = 'N'
|
|
|
|
|
+ UNION
|
|
|
|
|
+ SELECT CR1.CPN_ID
|
|
|
|
|
+ , GD.GOODS_CD
|
|
|
|
|
+ , GD.CURR_PRICE
|
|
|
|
|
+ , GD.ADD_PRICE
|
|
|
|
|
+ , GD.GOODS_QTY
|
|
|
|
|
+ , GD.GOODS_TYPE
|
|
|
|
|
+ FROM GOODS_DATA GD
|
|
|
|
|
+ INNER JOIN TB_COUPON_REFVAL CR1
|
|
|
|
|
+ ON GD.SUPPLY_COMP_CD = CR1.REF_VAL
|
|
|
|
|
+ AND CR1.CPN_TARGET = 'G260_12' -- 브랜드
|
|
|
|
|
+ AND CR1.DEL_YN = 'N'
|
|
|
|
|
+ INNER JOIN TB_COUPON_REFVAL CR2
|
|
|
|
|
+ ON GD.SUPPLY_COMP_CD = CR2.REF_VAL
|
|
|
|
|
+ AND CR2.CPN_TARGET = 'G260_13' -- 공급업체
|
|
|
|
|
+ AND CR2.DEL_YN = 'N'
|
|
|
|
|
+ ) Z
|
|
|
|
|
+ ON Z.CPN_ID = CP.CPN_ID
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND CP.SITE_CD = '10'
|
|
|
|
|
+ AND CP.CPN_TYPE = 'G230_10' -- 즉시할인
|
|
|
|
|
+ AND CP.DOWN_STDT <![CDATA[<]]> CURRENT_TIMESTAMP
|
|
|
|
|
+ AND CP.DOWN_EDDT > CURRENT_TIMESTAMP
|
|
|
|
|
+ </select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 상품쿠폰, 장바구니쿠폰 적용 상품 조회 -->
|
|
|
|
|
+ <select id="getGoodsCartCpnApplyGoodsList" parameterType="Order" resultType="Order">
|
|
|
|
|
+ /* TsfOrder.getGoodsCartCpnApplyGoodsList */
|
|
|
|
|
+ WITH GOODS_DATA AS (
|
|
|
|
|
+ SELECT CA.GOODS_CD
|
|
|
|
|
+ , G.SUPPLY_COMP_CD
|
|
|
|
|
+ , G.BRAND_CD
|
|
|
|
|
+ , CA.GOODS_QTY
|
|
|
|
|
+ , G.CURR_PRICE
|
|
|
|
|
+ , OP.ADD_PRICE
|
|
|
|
|
+ , G.GOODS_TYPE
|
|
|
|
|
+ FROM TB_CART CA
|
|
|
|
|
+ INNER JOIN TB_CART_DETAIL CD
|
|
|
|
|
+ ON CA.CART_SQ = CD.CART_SQ
|
|
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
|
|
+ ON CA.GOODS_CD = G.GOODS_CD
|
|
|
|
|
+ LEFT OUTER JOIN TB_OPTION OP
|
|
|
|
|
+ ON G.GOODS_CD = OP.GOODS_CD
|
|
|
|
|
+ AND CD.OPT_CD = OP.OPT_CD
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND G.GOODS_STAT = 'G008_90' -- 승인완료
|
|
|
|
|
+ <if test="cartSqArr != null and cartSqArr ==''">
|
|
|
|
|
+ AND CA.CART_SQ IN
|
|
|
|
|
+ <foreach collection="cartSqArr" item="item" index="index" open="(" close=")" separator=",">
|
|
|
|
|
+ #{item}
|
|
|
|
|
+ </foreach>
|
|
|
|
|
+ </if>
|
|
|
|
|
+ )
|
|
|
|
|
+ SELECT Z.GOODS_CD
|
|
|
|
|
+ , Z.CURR_PRICE
|
|
|
|
|
+ , Z.ADD_PRICE
|
|
|
|
|
+ , Z.GOODS_QTY
|
|
|
|
|
+ , CP.CPN_ID
|
|
|
|
|
+ , CP.CPN_NM
|
|
|
|
|
+ , CP.DC_WAY
|
|
|
|
|
+ , CP.DC_PVAL
|
|
|
|
|
+ , CP.DC_MVAL
|
|
|
|
|
+ , CP.DC_AVAL
|
|
|
|
|
+ , CP.MAX_DC_AMT
|
|
|
|
|
+ , CP.BUY_LIMIT_AMT
|
|
|
|
|
+ , CASE WHEN CP.DC_WAY = 'G240_11'
|
|
|
|
|
+ THEN (Z.CURR_PRICE * CP.DC_PVAL) / 100
|
|
|
|
|
+ ELSE CP.DC_PVAL
|
|
|
|
|
+ END PC_CURR_PRICE
|
|
|
|
|
+ FROM TB_COUPON CP
|
|
|
|
|
+ INNER JOIN TB_COUPON_CUST_GBN CGB
|
|
|
|
|
+ ON CP.CPN_ID = CGB.CPN_ID
|
|
|
|
|
+ AND CGB.USABLE_CUST_GB IN ('G100_10')
|
|
|
|
|
+ INNER JOIN TB_COUPON_CUST_GRADE CGR
|
|
|
|
|
+ ON CP.CPN_ID = CGR.CPN_ID
|
|
|
|
|
+ AND CGR.USABLE_CUST_GRADE IN ('G110_40', 'G110_50')
|
|
|
|
|
+ INNER JOIN (
|
|
|
|
|
+ SELECT CR.CPN_ID
|
|
|
|
|
+ , GD.GOODS_CD
|
|
|
|
|
+ , GD.CURR_PRICE
|
|
|
|
|
+ , GD.ADD_PRICE
|
|
|
|
|
+ , GD.GOODS_QTY
|
|
|
|
|
+ , GD.GOODS_TYPE
|
|
|
|
|
+ FROM TB_COUPON_REFVAL CR
|
|
|
|
|
+ INNER JOIN GOODS_DATA GD
|
|
|
|
|
+ ON CR.REF_VAL = GD.GOODS_CD
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND CR.CPN_TARGET = 'G260_10' -- 상품
|
|
|
|
|
+ AND CR.DEL_YN = 'N'
|
|
|
|
|
+ UNION
|
|
|
|
|
+ SELECT CR.CPN_ID
|
|
|
|
|
+ , GD.GOODS_CD
|
|
|
|
|
+ , GD.CURR_PRICE
|
|
|
|
|
+ , GD.ADD_PRICE
|
|
|
|
|
+ , GD.GOODS_QTY
|
|
|
|
|
+ , GD.GOODS_TYPE
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT C4.LEAF_CATE_NO
|
|
|
|
|
+ , CASE WHEN X = 1 THEN 'CATE1_NO'
|
|
|
|
|
+ WHEN X = 2 THEN 'CATE2_NO'
|
|
|
|
|
+ WHEN X = 3 THEN 'CATE3_NO'
|
|
|
|
|
+ WHEN X = 4 THEN 'CATE4_NO'
|
|
|
|
|
+ ELSE 'CATE5_NO'
|
|
|
|
|
+ END CATE_LVL
|
|
|
|
|
+ , CASE WHEN X = 1 THEN CATE1_NO
|
|
|
|
|
+ WHEN X = 2 THEN CATE2_NO
|
|
|
|
|
+ WHEN X = 3 THEN CATE3_NO
|
|
|
|
|
+ WHEN X = 4 THEN CATE4_NO
|
|
|
|
|
+ ELSE CATE5_NO
|
|
|
|
|
+ END CATE_NO
|
|
|
|
|
+ FROM TB_CATE_4SRCH C4
|
|
|
|
|
+ LEFT OUTER JOIN (
|
|
|
|
|
+ SELECT 1 AS X
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT 2 AS X
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT 3 AS X
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT 4 AS X
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT 5 AS X
|
|
|
|
|
+ ) B
|
|
|
|
|
+ ON 1=1
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND C4.SITE_CD = 'G000_10'
|
|
|
|
|
+ AND C4.CATE_TYPE = 'G031_10'
|
|
|
|
|
+ ORDER BY LEAF_CATE_NO
|
|
|
|
|
+ , CATE_LVL
|
|
|
|
|
+ ) C4SRCH
|
|
|
|
|
+ INNER JOIN TB_COUPON_REFVAL CR
|
|
|
|
|
+ ON C4SRCH.CATE_NO = CR.REF_VAL
|
|
|
|
|
+ INNER JOIN TB_CATE_GOODS CG
|
|
|
|
|
+ ON C4SRCH.LEAF_CATE_NO = CG.CATE_NO
|
|
|
|
|
+ INNER JOIN GOODS_DATA GD
|
|
|
|
|
+ ON CG.GOODS_CD = GD.GOODS_CD
|
|
|
|
|
+ WHERE C4SRCH.CATE_NO IS NOT NULL
|
|
|
|
|
+ AND CR.CPN_TARGET = 'G260_11' -- 카테고리
|
|
|
|
|
+ AND CR.DEL_YN = 'N'
|
|
|
|
|
+ UNION
|
|
|
|
|
+ SELECT CR1.CPN_ID
|
|
|
|
|
+ , GD.GOODS_CD
|
|
|
|
|
+ , GD.CURR_PRICE
|
|
|
|
|
+ , GD.ADD_PRICE
|
|
|
|
|
+ , GD.GOODS_QTY
|
|
|
|
|
+ , GD.GOODS_TYPE
|
|
|
|
|
+ FROM GOODS_DATA GD
|
|
|
|
|
+ INNER JOIN TB_COUPON_REFVAL CR1
|
|
|
|
|
+ ON GD.SUPPLY_COMP_CD = CR1.REF_VAL
|
|
|
|
|
+ AND CR1.CPN_TARGET = 'G260_12' -- 브랜드
|
|
|
|
|
+ AND CR1.DEL_YN = 'N'
|
|
|
|
|
+ INNER JOIN TB_COUPON_REFVAL CR2
|
|
|
|
|
+ ON GD.SUPPLY_COMP_CD = CR2.REF_VAL
|
|
|
|
|
+ AND CR2.CPN_TARGET = 'G260_13' -- 공급업체
|
|
|
|
|
+ AND CR2.DEL_YN = 'N'
|
|
|
|
|
+ ) Z
|
|
|
|
|
+ ON Z.CPN_ID = CP.CPN_ID
|
|
|
|
|
+ INNER JOIN TB_CUST_COUPON CCP
|
|
|
|
|
+ ON CP.CPN_ID = CCP.CPN_ID
|
|
|
|
|
+ WHERE 1=1
|
|
|
|
|
+ AND CP.SITE_CD = '10'
|
|
|
|
|
+ AND CP.CPN_TYPE IN ('G230_11', 'G230_20') -- 상품쿠폰, 장바구니쿠폰
|
|
|
|
|
+ AND CP.DOWN_STDT <![CDATA[<]]> CURRENT_TIMESTAMP
|
|
|
|
|
+ AND CP.DOWN_EDDT > CURRENT_TIMESTAMP
|
|
|
|
|
+ </select>
|
|
|
|
|
|
|
|
</mapper>
|
|
</mapper>
|
|
|
|
|
|