|
|
@@ -2,7 +2,7 @@
|
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
<mapper namespace="com.style24.admin.biz.dao.TsaOrderChangeDao">
|
|
|
|
|
|
- <!-- 주문상세 > 주문취소 > 주문취소대상목록 -->
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문취소,반품,교환 대상목록 -->
|
|
|
<select id="getCancelRequestTargetList" parameterType="Order" resultType="Order">
|
|
|
/* order.getCancelRequestTargetList */
|
|
|
SELECT OD.ORD_NO
|
|
|
@@ -91,17 +91,20 @@
|
|
|
AND DF.DELV_FEE_CD = DFP.DELV_FEE_CD
|
|
|
AND DFP.USE_YN = 'Y'
|
|
|
WHERE 1=1
|
|
|
- AND OD.ORD_DTL_STAT IN (
|
|
|
- 'G013_10', 'G013_20', 'G013_30', 'G013_40'
|
|
|
- )
|
|
|
+ <if test="ordDtlStatArr != null and ordDtlStatArr != ''">
|
|
|
+ AND OD.ORD_DTL_STAT IN
|
|
|
+ <foreach collection="ordDtlStatArr" item="item" index="index" open="(" close=")" separator=",">
|
|
|
+ #{item}
|
|
|
+ </foreach>
|
|
|
+ </if>
|
|
|
AND OD.ORD_NO = #{ordNo}
|
|
|
GROUP BY OD.ORD_NO
|
|
|
, OD.ORD_DTL_NO
|
|
|
ORDER BY OD.ORD_NO
|
|
|
, OD.ORD_DTL_NO
|
|
|
</select>
|
|
|
-
|
|
|
- <!-- 주문상세 > 주문취소 > 주문변경정보 등록-->
|
|
|
+
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문변경정보 등록-->
|
|
|
<insert id="createOrderChange" parameterType="OrderChange" keyProperty="ordChgSq">
|
|
|
/* Order.createOrderChange */
|
|
|
INSERT INTO TB_ORDER_CHANGE (
|
|
|
@@ -143,73 +146,372 @@
|
|
|
FROM TB_ORDER
|
|
|
WHERE ORD_NO = #{ordNo}
|
|
|
</insert>
|
|
|
+
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문상세단품정보 수정 -->
|
|
|
+ <update id="updateOrderDetailItem" parameterType="Order">
|
|
|
+ /* Order.updateOrderDetailItem */
|
|
|
+ UPDATE TB_ORDER_DETAIL_ITEM ODI
|
|
|
+ INNER JOIN TB_ORDER_DETAIL OD
|
|
|
+ ON OD.ORD_DTL_NO = OD.ORD_DTL_NO
|
|
|
+ SET ODI.ORD_DTL_STAT = CASE WHEN OD.ORD_QTY > (OD.CNCL_RTN_QTY + #{ordCanChgQty})
|
|
|
+ THEN ODI.ORD_DTL_STAT
|
|
|
+ ELSE #{ordDtlStat}
|
|
|
+ END
|
|
|
+ , ODI.CNCL_RTN_AMT = ODI.CNCL_RTN_AMT + #{cnclRtnAmt}
|
|
|
+ , ODI.CPN1_DC_AMT = ODI.CPN1_DC_AMT - #{cpn1DcAmt}
|
|
|
+ , ODI.TMTB1_DC_AMT = ODI.TMTB1_DC_AMT - #{tmtb1DcAmt}
|
|
|
+ , ODI.TMTB2_DC_AMT = ODI.TMTB1_DC_AMT - #{tmtb2DcAmt}
|
|
|
+ , ODI.GOODS_CPN_DC_AMT = ODI.GOODS_CPN_DC_AMT - #{goodsCpnDcAmt}
|
|
|
+ , ODI.CART_CPN_DC_AMT = ODI.CART_CPN_DC_AMT - #{cartCpnDcAmt}
|
|
|
+ , ODI.PNT_DC_AMT = ODI.PNT_DC_AMT - #{pntDcAmt}
|
|
|
+ , ODI.PRE_PNT_DC_AMT = ODI.PRE_PNT_DC_AMT - #{prePntDcAmt}
|
|
|
+ , ODI.SAVE_PNT_AMT = ODI.SAVE_PNT_AMT - #{savePntAmt}
|
|
|
+ , ODI.REAL_ORD_AMT = ODI.REAL_ORD_AMT - #{realOrdAmt}
|
|
|
+ , ODI.GFCD_USE_AMT = ODI.GFCD_USE_AMT - #{gfcdUseAmt}
|
|
|
+ , ODI.UPD_NO = #{updNo}
|
|
|
+ , ODI.UPD_DT = SYSDATE()
|
|
|
+ WHERE 1=1
|
|
|
+ AND ODI.ORD_NO = #{ordNo}
|
|
|
+ AND ODI.ORD_DTL_NO = #{ordDtlNo}
|
|
|
+ AND ODI.ORD_DTL_ITEM_SQ = #{ordDtlItemSq}
|
|
|
+ </update>
|
|
|
|
|
|
- <!-- 주문상세 > 주문취소 > 주문사은품취소 -->
|
|
|
- <update id="updateOrdFreegiftDel" parameterType="Order">
|
|
|
- /* Order.updateOrdFreegiftDel */
|
|
|
- UPDATE TB_ORD_FREEGIFT_VAL
|
|
|
- SET DEL_YN= 'N'
|
|
|
- , UPD_NO = #{updNo}
|
|
|
- , UPD_DT = SYSDATE()
|
|
|
- WHERE FREEGIFT_VAL_SQ IN (
|
|
|
- SELECT OFRV.FREEGIFT_VAL_SQ
|
|
|
- FROM TB_ORD_FREEGIFT OFR
|
|
|
- INNER JOIN TB_ORD_FREEGIFT_VAL OFRV
|
|
|
- ON OFR.ORD_FREEGIFT_SQ = OFRV.ORD_FREEGIFT_SQ
|
|
|
- WHERE 1=1
|
|
|
- AND OFR.ORD_NO = (SELECT CASE WHEN SUM(X.ORD_QTY) > SUM(X.CNCL_RTN_QTY)
|
|
|
- THEN 0
|
|
|
- ELSE X.ORD_NO
|
|
|
- END
|
|
|
- FROM TB_ORDER_DETAIL X
|
|
|
- WHERE 1=1
|
|
|
- AND X.ORD_NO = #{ordNo})
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문상세단품정보 이력 등록 -->
|
|
|
+ <insert id="createOrderDetailItemHst" parameterType="Order">
|
|
|
+ /* Order.createOrderDetailItemHst */
|
|
|
+ INSERT INTO TB_ORDER_DETAIL_ITEM_HST (
|
|
|
+ ORD_DTL_ITEM_SQ
|
|
|
+ , ORD_DTL_NO
|
|
|
+ , ORD_NO
|
|
|
+ , ORD_DTL_STAT
|
|
|
+ , ITEM_CD
|
|
|
+ , OPT_CD
|
|
|
+ , OPT_CD1
|
|
|
+ , OPT_CD2
|
|
|
+ , SKU_MODEL_NO
|
|
|
+ , PRODUCT_NO
|
|
|
+ , PRODUCT_CODE
|
|
|
+ , ITEM_QTY
|
|
|
+ , ITEM_PRICE
|
|
|
+ , OPT_ADD_PRICE
|
|
|
+ , DISP_ORD
|
|
|
+ , ORD_AMT
|
|
|
+ , CNCL_RTN_AMT
|
|
|
+ , CPN1_DC_AMT
|
|
|
+ , TMTB1_DC_AMT
|
|
|
+ , TMTB2_DC_AMT
|
|
|
+ , GOODS_CPN_DC_AMT
|
|
|
+ , CART_CPN_DC_AMT
|
|
|
+ , PNT_DC_AMT
|
|
|
+ , PRE_PNT_DC_AMT
|
|
|
+ , SAVE_PNT_AMT
|
|
|
+ , REAL_ORD_AMT
|
|
|
+ , GFCD_USE_AMT
|
|
|
+ , REG_NO
|
|
|
+ , REG_DT
|
|
|
+ , UPD_NO
|
|
|
+ , UPD_DT
|
|
|
+ )
|
|
|
+ SELECT ORD_DTL_ITEM_SQ
|
|
|
+ , ORD_DTL_NO
|
|
|
+ , ORD_NO
|
|
|
+ , #{ordDtlStat}
|
|
|
+ , ITEM_CD
|
|
|
+ , OPT_CD
|
|
|
+ , OPT_CD1
|
|
|
+ , OPT_CD2
|
|
|
+ , SKU_MODEL_NO
|
|
|
+ , PRODUCT_NO
|
|
|
+ , PRODUCT_CODE
|
|
|
+ , ITEM_QTY
|
|
|
+ , ITEM_PRICE
|
|
|
+ , OPT_ADD_PRICE
|
|
|
+ , DISP_ORD
|
|
|
+ , ORD_AMT
|
|
|
+ , #{cnclRtnAmt}
|
|
|
+ , #{cpn1DcAmt}
|
|
|
+ , #{tmtb1DcAmt}
|
|
|
+ , #{tmtb2DcAmt}
|
|
|
+ , #{goodsCpnDcAmt}
|
|
|
+ , #{cartCpnDcAmt}
|
|
|
+ , #{pntDcAmt}
|
|
|
+ , #{prePntDcAmt}
|
|
|
+ , #{savePntAmt}
|
|
|
+ , #{realOrdAmt}
|
|
|
+ , #{gfcdUseAmt}
|
|
|
+ , REG_NO
|
|
|
+ , REG_DT
|
|
|
+ , UPD_NO
|
|
|
+ , UPD_DT
|
|
|
+ FROM TB_ORDER_DETAIL_ITEM
|
|
|
+ WHERE 1=1
|
|
|
+ AND ORD_NO = #{ordNo}
|
|
|
+ AND ORD_DTL_NO = #{ordDtlNo}
|
|
|
+ AND ORD_DTL_ITEM_SQ = #{ordDtlItemSq}
|
|
|
+ </insert>
|
|
|
+
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문상세단품정보 수정 (재고수정) -->
|
|
|
+ <update id="updateOptionQty" parameterType="OrderChange">
|
|
|
+ /* Order.updateOptionQty */
|
|
|
+ UPDATE TB_OPTION OP
|
|
|
+ INNER JOIN TB_ORDER_DETAIL_ITEM ODI
|
|
|
+ ON OP.GOODS_CD = ODI.ITEM_CD
|
|
|
+ AND OP.OPT_CD1 = ODI.OPT_CD1
|
|
|
+ AND OP.OPT_CD2 = ODI.OPT_CD2
|
|
|
+ SET OP.CURR_STOCK_QTY = OP.CURR_STOCK_QTY + (ODI.ITEM_QTY * #{ordCanChgQty})
|
|
|
+ , OP.UPD_NO = #{updNo}
|
|
|
+ , OP.UPD_DT = SYSDATE()
|
|
|
+ WHERE 1=1
|
|
|
+ AND ODI.ORD_NO = #{ordNo}
|
|
|
+ AND ODI.ORD_DTL_NO = #{ordDtlNo}
|
|
|
+ AND ODI.ORD_DTL_ITEM_SQ = #{ordDtlItemSq}
|
|
|
+ </update>
|
|
|
+
|
|
|
+ <!-- 주문상세 > 주문취소 > 주문상세정보(취소,반품) 이력 등록-->
|
|
|
+ <insert id="createOrderDetailHstCnclRtn" parameterType="Order">
|
|
|
+ /* Order.createOrderDetailHstCnclRtn */
|
|
|
+ INSERT INTO TB_ORDER_DETAIL_HST (
|
|
|
+ ORD_DTL_NO
|
|
|
+ , ORD_NO
|
|
|
+ , ORD_EXCH_GB
|
|
|
+ , ORD_DTL_STAT
|
|
|
+ , ORG_ORD_DTL_NO
|
|
|
+ , SUPPLY_COMP_CD
|
|
|
+ , GOODS_CD
|
|
|
+ , PRODUCT_NO
|
|
|
+ , PRODUCT_CODE
|
|
|
+ , FORMAL_GB
|
|
|
+ , GOODS_TYPE
|
|
|
+ , LIST_PRICE
|
|
|
+ , CURR_PRICE
|
|
|
+ , DC_RATE
|
|
|
+ , OPT_ADD_PRICE
|
|
|
+ , ORD_QTY
|
|
|
+ , ORD_AMT
|
|
|
+ , CNCL_RTN_QTY
|
|
|
+ , CNCL_RTN_AMT
|
|
|
+ , CPN1_CPN_SQ
|
|
|
+ , CPN1_DC_AMT
|
|
|
+ , TMTB1_SQ
|
|
|
+ , TMTB1_DC_AMT
|
|
|
+ , TMTB2_SQ
|
|
|
+ , TMTB2_DC_AMT
|
|
|
+ , GOODS_CPN_SQ
|
|
|
+ , GOODS_CPN_DC_AMT
|
|
|
+ , CART_CPN_SQ
|
|
|
+ , CART_CPN_DC_AMT
|
|
|
+ , BURDEN_RATE
|
|
|
+ , PNT_DC_AMT
|
|
|
+ , PRE_PNT_DC_AMT
|
|
|
+ , SAVE_PNT_AMT
|
|
|
+ , REAL_ORD_AMT
|
|
|
+ , GFCD_USE_AMT
|
|
|
+ , VENDOR_ID
|
|
|
+ , EXTMALL_ID
|
|
|
+ , AGENT_ORDER_ID
|
|
|
+ , EXTMALL_ORDER_ID
|
|
|
+ , CHANGABLE_YN
|
|
|
+ , CHANGE_FEE_FREE_YN
|
|
|
+ , RETURNABLE_YN
|
|
|
+ , RETURN_FEE_FREE_YN
|
|
|
+ , SOLDOUT_YN
|
|
|
+ , SOLDOUT_MEMO
|
|
|
+ , SOLDOUT_REG_NO
|
|
|
+ , SOLDOUT_REG_DT
|
|
|
+ , DELV_ADDR_SQ
|
|
|
+ , DELV_FEE_CD
|
|
|
+ , SHOT_DELV_YN
|
|
|
+ , GIFT_PACK_YN
|
|
|
+ , MAKE_GOODS_YN
|
|
|
+ , ENTRY_NO
|
|
|
+ , DELV_LOC_CD
|
|
|
+ , DELV_ASSIGN_DT
|
|
|
+ , DELV_ASSIGN_STAT
|
|
|
+ , DSTRBT_NOTE
|
|
|
+ , DELV_STDT
|
|
|
+ , DELV_EDDT
|
|
|
+ , SHIP_COMP_CD
|
|
|
+ , INVOICE_NO
|
|
|
+ , INVOICE_SEND_YN
|
|
|
+ , SELL_STORE_CD
|
|
|
+ , SELL_FEE_RATE
|
|
|
+ , AF_LINK_CD
|
|
|
+ , ITHR_CD
|
|
|
+ , CONTENTS_LOC
|
|
|
+ , PLAN_DTL_SQ
|
|
|
+ , SOCIAL_SQ
|
|
|
+ , REG_NO
|
|
|
+ , REG_DT
|
|
|
+ , UPD_NO
|
|
|
+ , UPD_DT
|
|
|
)
|
|
|
+ SELECT OD.ORD_DTL_NO
|
|
|
+ , OD.ORD_NO
|
|
|
+ , OD.ORD_EXCH_GB
|
|
|
+ , #{ordDtlStat}
|
|
|
+ , OD.ORG_ORD_DTL_NO
|
|
|
+ , OD.SUPPLY_COMP_CD
|
|
|
+ , OD.GOODS_CD
|
|
|
+ , OD.PRODUCT_NO
|
|
|
+ , OD.PRODUCT_CODE
|
|
|
+ , OD.FORMAL_GB
|
|
|
+ , OD.GOODS_TYPE
|
|
|
+ , OD.LIST_PRICE
|
|
|
+ , OD.CURR_PRICE
|
|
|
+ , OD.DC_RATE
|
|
|
+ , OD.OPT_ADD_PRICE
|
|
|
+ , OD.ORD_QTY
|
|
|
+ , Z.ORD_AMT
|
|
|
+ , #{ordCanChgQty}
|
|
|
+ , OD.ORD_AMT
|
|
|
+ , OD.CPN1_CPN_SQ
|
|
|
+ , OD.CPN1_DC_AMT - Z.CPN1_DC_AMT
|
|
|
+ , OD.TMTB1_SQ
|
|
|
+ , OD.TMTB1_DC_AMT - Z.TMTB1_DC_AMT
|
|
|
+ , OD.TMTB2_SQ
|
|
|
+ , OD.TMTB2_DC_AMT - Z.TMTB2_DC_AMT
|
|
|
+ , OD.GOODS_CPN_SQ
|
|
|
+ , OD.GOODS_CPN_DC_AMT - Z.GOODS_CPN_DC_AMT
|
|
|
+ , OD.CART_CPN_SQ
|
|
|
+ , OD.CART_CPN_DC_AMT - Z.CART_CPN_DC_AMT
|
|
|
+ , OD.BURDEN_RATE
|
|
|
+ , OD.PNT_DC_AMT - Z.PNT_DC_AMT
|
|
|
+ , OD.PRE_PNT_DC_AMT - Z.PRE_PNT_DC_AMT
|
|
|
+ , OD.SAVE_PNT_AMT - Z.SAVE_PNT_AMT
|
|
|
+ , Z.REAL_ORD_AMT
|
|
|
+ , OD.GFCD_USE_AMT - Z.GFCD_USE_AMT
|
|
|
+ , OD.VENDOR_ID
|
|
|
+ , OD.EXTMALL_ID
|
|
|
+ , OD.AGENT_ORDER_ID
|
|
|
+ , OD.EXTMALL_ORDER_ID
|
|
|
+ , OD.CHANGABLE_YN
|
|
|
+ , OD.CHANGE_FEE_FREE_YN
|
|
|
+ , OD.RETURNABLE_YN
|
|
|
+ , OD.RETURN_FEE_FREE_YN
|
|
|
+ , OD.SOLDOUT_YN
|
|
|
+ , OD.SOLDOUT_MEMO
|
|
|
+ , OD.SOLDOUT_REG_NO
|
|
|
+ , OD.SOLDOUT_REG_DT
|
|
|
+ , OD.DELV_ADDR_SQ
|
|
|
+ , OD.DELV_FEE_CD
|
|
|
+ , OD.SHOT_DELV_YN
|
|
|
+ , OD.GIFT_PACK_YN
|
|
|
+ , OD.MAKE_GOODS_YN
|
|
|
+ , OD.ENTRY_NO
|
|
|
+ , OD.DELV_LOC_CD
|
|
|
+ , OD.DELV_ASSIGN_DT
|
|
|
+ , OD.DELV_ASSIGN_STAT
|
|
|
+ , OD.DSTRBT_NOTE
|
|
|
+ , OD.DELV_STDT
|
|
|
+ , OD.DELV_EDDT
|
|
|
+ , OD.SHIP_COMP_CD
|
|
|
+ , OD.INVOICE_NO
|
|
|
+ , OD.INVOICE_SEND_YN
|
|
|
+ , OD.SELL_STORE_CD
|
|
|
+ , OD.SELL_FEE_RATE
|
|
|
+ , OD.AF_LINK_CD
|
|
|
+ , OD.ITHR_CD
|
|
|
+ , OD.CONTENTS_LOC
|
|
|
+ , OD.PLAN_DTL_SQ
|
|
|
+ , OD.SOCIAL_SQ
|
|
|
+ , #{regNo} AS REG_ID
|
|
|
+ , CURRENT_TIMESTAMP() AS REG_DT
|
|
|
+ , #{regNo} AS REG_ID
|
|
|
+ , CURRENT_TIMESTAMP() AS UPD_DT
|
|
|
+ FROM TB_ORDER_DETAIL OD
|
|
|
+ INNER JOIN (
|
|
|
+ SELECT ODI.ORD_DTL_NO
|
|
|
+ , SUM(ODI.ORD_AMT) AS ORD_AMT
|
|
|
+ , SUM(ODI.CNCL_RTN_AMT) AS CNCL_RTN_AMT
|
|
|
+ , SUM(ODI.CPN1_DC_AMT) AS CPN1_DC_AMT
|
|
|
+ , SUM(ODI.TMTB1_DC_AMT) AS TMTB1_DC_AMT
|
|
|
+ , SUM(ODI.TMTB2_DC_AMT) AS TMTB2_DC_AMT
|
|
|
+ , SUM(ODI.GOODS_CPN_DC_AMT) AS GOODS_CPN_DC_AMT
|
|
|
+ , SUM(ODI.CART_CPN_DC_AMT) AS CART_CPN_DC_AMT
|
|
|
+ , SUM(ODI.PNT_DC_AMT) AS PNT_DC_AMT
|
|
|
+ , SUM(ODI.PRE_PNT_DC_AMT) AS PRE_PNT_DC_AMT
|
|
|
+ , SUM(ODI.SAVE_PNT_AMT) AS SAVE_PNT_AMT
|
|
|
+ , SUM(ODI.REAL_ORD_AMT) AS REAL_ORD_AMT
|
|
|
+ , SUM(ODI.GFCD_USE_AMT) AS GFCD_USE_AMT
|
|
|
+ FROM TB_ORDER_DETAIL_ITEM ODI
|
|
|
+ WHERE ODI.ORD_DTL_NO = #{ordDtlNo}
|
|
|
+ GROUP BY ODI.ORD_DTL_NO
|
|
|
+ ) Z
|
|
|
+ ON OD.ORD_DTL_NO = Z.ORD_DTL_NO
|
|
|
+ AND OD.ORD_DTL_NO = #{ordDtlNo}
|
|
|
+ </insert>
|
|
|
+
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문상세정보 수정 -->
|
|
|
+ <update id="updateOrderDetail" parameterType="Order">
|
|
|
+ /* Order.updateOrderDetail */
|
|
|
+ UPDATE TB_ORDER_DETAIL OD
|
|
|
+ INNER JOIN (
|
|
|
+ SELECT ODI.ORD_DTL_NO
|
|
|
+ , SUM(ODI.CNCL_RTN_AMT) AS CNCL_RTN_AMT
|
|
|
+ , SUM(ODI.CPN1_DC_AMT) AS CPN1_DC_AMT
|
|
|
+ , SUM(ODI.TMTB1_DC_AMT) AS TMTB1_DC_AMT
|
|
|
+ , SUM(ODI.TMTB2_DC_AMT) AS TMTB2_DC_AMT
|
|
|
+ , SUM(ODI.GOODS_CPN_DC_AMT) AS GOODS_CPN_DC_AMT
|
|
|
+ , SUM(ODI.CART_CPN_DC_AMT) AS CART_CPN_DC_AMT
|
|
|
+ , SUM(ODI.PNT_DC_AMT) AS PNT_DC_AMT
|
|
|
+ , SUM(ODI.PRE_PNT_DC_AMT) AS PRE_PNT_DC_AMT
|
|
|
+ , SUM(ODI.SAVE_PNT_AMT) AS SAVE_PNT_AMT
|
|
|
+ , SUM(ODI.REAL_ORD_AMT) AS REAL_ORD_AMT
|
|
|
+ , SUM(ODI.GFCD_USE_AMT) AS GFCD_USE_AMT
|
|
|
+ FROM TB_ORDER_DETAIL_ITEM ODI
|
|
|
+ WHERE ODI.ORD_NO = #{ordNo}
|
|
|
+ AND ODI.ORD_DTL_NO = #{ordDtlNo}
|
|
|
+ GROUP BY ODI.ORD_DTL_NO
|
|
|
+ ) Z
|
|
|
+ ON OD.ORD_DTL_NO = Z.ORD_DTL_NO
|
|
|
+ SET OD.ORD_DTL_STAT = CASE WHEN OD.ORD_QTY > (OD.CNCL_RTN_QTY + #{ordCanChgQty})
|
|
|
+ THEN OD.ORD_DTL_STAT
|
|
|
+ ELSE #{ordDtlStat}
|
|
|
+ END
|
|
|
+ , OD.CNCL_RTN_QTY = OD.CNCL_RTN_QTY + #{ordCanChgQty}
|
|
|
+ , OD.CNCL_RTN_AMT = Z.CNCL_RTN_AMT
|
|
|
+ , OD.CPN1_DC_AMT = Z.CPN1_DC_AMT
|
|
|
+ , OD.TMTB1_DC_AMT = Z.TMTB1_DC_AMT
|
|
|
+ , OD.TMTB2_DC_AMT = Z.TMTB2_DC_AMT
|
|
|
+ , OD.GOODS_CPN_DC_AMT = Z.GOODS_CPN_DC_AMT
|
|
|
+ , OD.CART_CPN_DC_AMT = Z.CART_CPN_DC_AMT
|
|
|
+ , OD.PNT_DC_AMT = Z.PNT_DC_AMT
|
|
|
+ , OD.PRE_PNT_DC_AMT = Z.PRE_PNT_DC_AMT
|
|
|
+ , OD.SAVE_PNT_AMT = Z.SAVE_PNT_AMT
|
|
|
+ , OD.REAL_ORD_AMT = Z.REAL_ORD_AMT
|
|
|
+ , OD.GFCD_USE_AMT = Z.GFCD_USE_AMT
|
|
|
+ WHERE 1=1
|
|
|
+ AND OD.ORD_NO = #{ordNo}
|
|
|
+ AND OD.ORD_DTL_NO = #{ordDtlNo}
|
|
|
</update>
|
|
|
|
|
|
- <!-- 주문상세 > 주문취소 > 주문환불 금액 정보 등록 -->
|
|
|
- <insert id="createRefund" parameterType="Order">
|
|
|
- /* Order.createRefund */
|
|
|
- INSERT INTO TB_REFUND (
|
|
|
- ORD_NO
|
|
|
- , PAY_SQ
|
|
|
- , ORD_CHG_SQ
|
|
|
- , REFUND_AMT
|
|
|
- , RA_NO
|
|
|
- , RA_BANK
|
|
|
- , RA_NM
|
|
|
- , RF_CPN1_AMT
|
|
|
- , RF_TMTB1_AMT
|
|
|
- , RF_TMTB2_AMT
|
|
|
- , RF_GOODS_CPN_AMT
|
|
|
- , RF_CART_CPN_AMT
|
|
|
- , RF_PNT_AMT
|
|
|
- , RF_PRE_PNT_AMT
|
|
|
- , RF_GFCD_USE_AMT
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문변경정보상세 등록-->
|
|
|
+ <insert id="createOrderChangeDetail" parameterType="OrderChange">
|
|
|
+ /* Order.createOrderChangeDetail */
|
|
|
+ INSERT INTO TB_ORDER_CHANGE_DETAIL (
|
|
|
+ ORD_CHG_SQ
|
|
|
+ , ORD_DTL_NO
|
|
|
+ , CHG_QTY
|
|
|
+ , CHG_STAT
|
|
|
+ , COMPLETE_DT
|
|
|
, REG_NO
|
|
|
, REG_DT
|
|
|
+ , UPD_NO
|
|
|
+ , UPD_DT
|
|
|
) VALUES (
|
|
|
- #{ordNo}
|
|
|
- , #{paySq}
|
|
|
- , #{ordChgSq}
|
|
|
- , #{refundAmt}
|
|
|
- , #{raNo}
|
|
|
- , #{raBank}
|
|
|
- , #{raNm}
|
|
|
- , #{rfCpn1Amt}
|
|
|
- , #{rfTmtb1Amt}
|
|
|
- , #{rfTmtb2Amt}
|
|
|
- , #{rfGoodsCpnAmt}
|
|
|
- , #{rfCartCpnAmt}
|
|
|
- , #{rfPntAmt}
|
|
|
- , #{rfPrePntAmt}
|
|
|
- , #{rfGfcdUseAmt}
|
|
|
+ #{ordChgSq}
|
|
|
+ , #{ordDtlNo}
|
|
|
+ , #{chgQty}
|
|
|
+ , #{chgStat}
|
|
|
+ , SYSDATE()
|
|
|
, #{regNo}
|
|
|
, SYSDATE()
|
|
|
+ , #{updNo}
|
|
|
+ , SYSDATE()
|
|
|
)
|
|
|
</insert>
|
|
|
|
|
|
- <!-- 주문상세 > 주문취소 > 주문환불 결제 정보 등록 -->
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문환불금액정보 등록 -->
|
|
|
<insert id="createPayment" parameterType="Order" keyProperty="paySq">
|
|
|
/* Order.createPayment */
|
|
|
INSERT INTO TB_PAYMENT (
|
|
|
@@ -279,7 +581,49 @@
|
|
|
AND PAY_STAT = 'G016_30'
|
|
|
</insert>
|
|
|
|
|
|
- <!-- 주문상세 > 주문취소 > 주문추가배송금액등록-->
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문환불정보 등록 -->
|
|
|
+ <insert id="createRefund" parameterType="Order">
|
|
|
+ /* Order.createRefund */
|
|
|
+ INSERT INTO TB_REFUND (
|
|
|
+ ORD_NO
|
|
|
+ , PAY_SQ
|
|
|
+ , ORD_CHG_SQ
|
|
|
+ , REFUND_AMT
|
|
|
+ , RA_NO
|
|
|
+ , RA_BANK
|
|
|
+ , RA_NM
|
|
|
+ , RF_CPN1_AMT
|
|
|
+ , RF_TMTB1_AMT
|
|
|
+ , RF_TMTB2_AMT
|
|
|
+ , RF_GOODS_CPN_AMT
|
|
|
+ , RF_CART_CPN_AMT
|
|
|
+ , RF_PNT_AMT
|
|
|
+ , RF_PRE_PNT_AMT
|
|
|
+ , RF_GFCD_USE_AMT
|
|
|
+ , REG_NO
|
|
|
+ , REG_DT
|
|
|
+ ) VALUES (
|
|
|
+ #{ordNo}
|
|
|
+ , #{paySq}
|
|
|
+ , #{ordChgSq}
|
|
|
+ , #{refundAmt}
|
|
|
+ , #{raNo}
|
|
|
+ , #{raBank}
|
|
|
+ , #{raNm}
|
|
|
+ , #{rfCpn1Amt}
|
|
|
+ , #{rfTmtb1Amt}
|
|
|
+ , #{rfTmtb2Amt}
|
|
|
+ , #{rfGoodsCpnAmt}
|
|
|
+ , #{rfCartCpnAmt}
|
|
|
+ , #{rfPntAmt}
|
|
|
+ , #{rfPrePntAmt}
|
|
|
+ , #{rfGfcdUseAmt}
|
|
|
+ , #{regNo}
|
|
|
+ , SYSDATE()
|
|
|
+ )
|
|
|
+ </insert>
|
|
|
+
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문추가배송금액등록-->
|
|
|
<insert id="createDeliveryFee" parameterType="Order">
|
|
|
/* Order.createDeliveryFee */
|
|
|
INSERT INTO TB_DELIVERY_FEE (
|
|
|
@@ -319,104 +663,30 @@
|
|
|
)
|
|
|
</insert>
|
|
|
|
|
|
- <!-- 주문상세 > 주문반품 > 주문반품대상목록 -->
|
|
|
- <select id="getReturnRequestTargetList" parameterType="Order" resultType="Order">
|
|
|
- /* order.getReturnRequestTargetList */
|
|
|
- SELECT OD.ORD_NO
|
|
|
- , OD.ORD_DTL_NO
|
|
|
- , OD.ORD_DTL_STAT
|
|
|
- , FN_GET_CODE_NM('G013', OD.ORD_DTL_STAT) AS ORD_DTL_STAT_NM
|
|
|
- , CASE WHEN OD.ORD_DTL_STAT IN ('G013_20', 'G013_30', 'G013_40')
|
|
|
- THEN 'Y'
|
|
|
- ELSE 'N'
|
|
|
- END ALL_CAN_YN
|
|
|
- , G1.GOODS_CD
|
|
|
- , G1.GOODS_NM
|
|
|
- , G1.GOODS_TYPE
|
|
|
- , FN_GET_CODE_NM('G056', G1.GOODS_TYPE) AS GOODS_TYPE_NM
|
|
|
- , ODI.ORD_DTL_ITEM_SQ
|
|
|
- , G2.GOODS_CD AS ITEM_CD
|
|
|
- , G2.GOODS_NM AS ITEM_NM
|
|
|
- , ODI.OPT_CD
|
|
|
- , ODI.OPT_CD1
|
|
|
- , ODI.OPT_CD2
|
|
|
- , ODI.ITEM_QTY
|
|
|
- , OD.ORD_QTY
|
|
|
- , OD.CNCL_RTN_QTY
|
|
|
- , CASE WHEN OCD.ORD_REQ_CHG_QTY IS NULL
|
|
|
- THEN 0
|
|
|
- ELSE OCD.ORD_REQ_CHG_QTY * ODI.ITEM_QTY
|
|
|
- END ORD_REQ_CHG_QTY
|
|
|
- , ODI.ITEM_PRICE
|
|
|
- , ODI.OPT_ADD_PRICE
|
|
|
- , ODI.ORD_AMT
|
|
|
- , ODI.CNCL_RTN_AMT
|
|
|
- , ODI.CPN1_DC_AMT
|
|
|
- , ODI.TMTB1_DC_AMT
|
|
|
- , ODI.TMTB2_DC_AMT
|
|
|
- , ODI.GOODS_CPN_DC_AMT
|
|
|
- , ODI.CART_CPN_DC_AMT
|
|
|
- , ODI.PNT_DC_AMT
|
|
|
- , ODI.PRE_PNT_DC_AMT
|
|
|
- , ODI.GFCD_USE_AMT
|
|
|
- , ODI.REAL_ORD_AMT
|
|
|
- , DF.DELV_FEE
|
|
|
- , DF.SUPPLY_COMP_CD
|
|
|
- , DF.DELV_FEE_CD
|
|
|
- , DFP.MIN_ORD_AMT
|
|
|
- , DFP.DELV_FEE AS ORG_DELV_FEE
|
|
|
- , DFP.RTN_DELV_FEE
|
|
|
- , DFP.DELV_FEE + DFP.RTN_DELV_FEE AS EXC_DELV_FEE
|
|
|
- , 0 AS ORD_CAN_CHG_QTY
|
|
|
- FROM TB_ORDER_DETAIL OD
|
|
|
- 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 (
|
|
|
- SELECT OD.ORD_DTL_NO
|
|
|
- , SUM(OCD.CHG_QTY) AS ORD_REQ_CHG_QTY
|
|
|
- FROM TB_ORDER_CHANGE_DETAIL OCD
|
|
|
- INNER JOIN TB_ORDER_DETAIL OD
|
|
|
- ON OCD.ORD_DTL_NO = OD.ORD_DTL_NO
|
|
|
- WHERE 1=1
|
|
|
- AND OD.ORD_NO = #{ordNo}
|
|
|
- AND OCD.CHG_STAT IN (
|
|
|
- 'G685_20', 'G685_30', 'G685_40'
|
|
|
- )
|
|
|
- GROUP BY OCD.ORD_DTL_NO
|
|
|
- ) OCD
|
|
|
- ON OD.ORD_DTL_NO = OCD.ORD_DTL_NO
|
|
|
- INNER JOIN (
|
|
|
- SELECT X.SUPPLY_COMP_CD
|
|
|
- , X.DELV_FEE_CD
|
|
|
- , SUM(X.DELV_FEE) AS DELV_FEE
|
|
|
- FROM TB_DELIVERY_FEE X
|
|
|
+ <!-- 주문상세 > 주문취소신청 > 주문사은품취소 -->
|
|
|
+ <update id="updateOrdFreegiftDel" parameterType="Order">
|
|
|
+ /* Order.updateOrdFreegiftDel */
|
|
|
+ UPDATE TB_ORD_FREEGIFT_VAL
|
|
|
+ SET DEL_YN= 'N'
|
|
|
+ , UPD_NO = #{updNo}
|
|
|
+ , UPD_DT = SYSDATE()
|
|
|
+ WHERE FREEGIFT_VAL_SQ IN (
|
|
|
+ SELECT OFRV.FREEGIFT_VAL_SQ
|
|
|
+ FROM TB_ORD_FREEGIFT OFR
|
|
|
+ INNER JOIN TB_ORD_FREEGIFT_VAL OFRV
|
|
|
+ ON OFR.ORD_FREEGIFT_SQ = OFRV.ORD_FREEGIFT_SQ
|
|
|
WHERE 1=1
|
|
|
- AND X.ORD_NO = #{ordNo}
|
|
|
- AND X.DELV_FEE_GB = 'G018_10'
|
|
|
- GROUP BY X.SUPPLY_COMP_CD
|
|
|
- , X.DELV_FEE_CD
|
|
|
- ) DF
|
|
|
- ON OD.SUPPLY_COMP_CD = DF.SUPPLY_COMP_CD
|
|
|
- AND OD.DELV_FEE_CD = DF.DELV_FEE_CD
|
|
|
- INNER JOIN TB_DELV_FEE_POLICY DFP
|
|
|
- ON DF.SUPPLY_COMP_CD = DFP.SUPPLY_COMP_CD
|
|
|
- AND DF.DELV_FEE_CD = DFP.DELV_FEE_CD
|
|
|
- AND DFP.USE_YN = 'Y'
|
|
|
- WHERE 1=1
|
|
|
- AND OD.ORD_DTL_STAT IN (
|
|
|
- 'G013_50', 'G013_55', 'G013_60'
|
|
|
+ AND OFR.ORD_NO = (SELECT CASE WHEN SUM(X.ORD_QTY) > SUM(X.CNCL_RTN_QTY)
|
|
|
+ THEN 0
|
|
|
+ ELSE X.ORD_NO
|
|
|
+ END
|
|
|
+ FROM TB_ORDER_DETAIL X
|
|
|
+ WHERE 1=1
|
|
|
+ AND X.ORD_NO = #{ordNo})
|
|
|
)
|
|
|
- AND OD.ORD_NO = #{ordNo}
|
|
|
- GROUP BY OD.ORD_NO
|
|
|
- , OD.ORD_DTL_NO
|
|
|
- ORDER BY OD.ORD_NO
|
|
|
- , OD.ORD_DTL_NO
|
|
|
- </select>
|
|
|
+ </update>
|
|
|
+
|
|
|
+
|
|
|
|
|
|
<!-- 주문상세 > 주문취소 > 고객환불계좌정보 조회 -->
|
|
|
<select id="getRefundAccount" parameterType="Order" resultType="Order">
|
|
|
@@ -447,7 +717,7 @@
|
|
|
) Z
|
|
|
</select>
|
|
|
|
|
|
- <!-- 주문상세 > 주문취소 > 고객환불계좌정보 체크 -->
|
|
|
+ <!-- 주문상세 > 주문취소 > 고객환불계좌정보 중복체크 -->
|
|
|
<select id="getRefundAccountCheck" parameterType="Order" resultType="int">
|
|
|
/* Order.getRefundAccountCheck */
|
|
|
SELECT COUNT(1)
|