|
|
@@ -1663,6 +1663,85 @@
|
|
|
FROM TB_IF_PRODUCTSKU
|
|
|
</insert>
|
|
|
|
|
|
+ <!-- TB_WMS_STOCK 삭제 -->
|
|
|
+ <delete id="deleteWmsStock" timeout="300">
|
|
|
+ /* TsbGoods.deleteWmsStock */
|
|
|
+ DELETE FROM TB_WMS_STOCK
|
|
|
+ </delete>
|
|
|
+
|
|
|
+ <!-- TB_WMS_STOCK 저장 -->
|
|
|
+ <insert id="createWmsStock" parameterType="java.util.HashMap" >
|
|
|
+ /* TsbGoods.createWmsStock */
|
|
|
+ INSERT INTO TB_WMS_STOCK(
|
|
|
+ PRODUCT_NO
|
|
|
+ ,SKU_CODE
|
|
|
+ ,LOC_QTY
|
|
|
+ ,PICKING_QTY
|
|
|
+ ,EOUT_PICKING_QTY
|
|
|
+ ,UPD_DT
|
|
|
+ )
|
|
|
+ VALUES
|
|
|
+ <foreach collection="productSukList" item="item" index="index" separator=",">
|
|
|
+ (
|
|
|
+ #{item.productNo}
|
|
|
+ , #{item.skuCode}
|
|
|
+ , #{item.locQty}
|
|
|
+ , #{item.pickingQty}
|
|
|
+ , #{item.eoutPickingQty}
|
|
|
+ , NOW()
|
|
|
+ )
|
|
|
+ </foreach>
|
|
|
+
|
|
|
+ </insert>
|
|
|
+
|
|
|
+ <!-- TB_IF_PRODUCTSKU 저장 -->
|
|
|
+ <insert id="createWmsStockByRow" parameterType="WmsStock">
|
|
|
+ /* TsbGoods.createWmsStockByRow */
|
|
|
+ INSERT INTO TB_WMS_STOCK(
|
|
|
+ PRODUCT_NO
|
|
|
+ ,SKU_CODE
|
|
|
+ ,LOC_QTY
|
|
|
+ ,PICKING_QTY
|
|
|
+ ,EOUT_PICKING_QTY
|
|
|
+ ,UPD_DT
|
|
|
+ )
|
|
|
+ VALUES(
|
|
|
+ #{productNo}
|
|
|
+ , #{skuCode}
|
|
|
+ , #{locQty}
|
|
|
+ , #{pickingQty}
|
|
|
+ , #{eoutPickingQty}
|
|
|
+ , NOW()
|
|
|
+ )
|
|
|
+ </insert>
|
|
|
+
|
|
|
+ <!-- TB_IF_PRODUCTSKU_HST 삭제 -->
|
|
|
+ <delete id="deleteWmsStockHst" parameterType="String" timeout="300">
|
|
|
+ /* TsbGoods.deleteWmsStockHst */
|
|
|
+ DELETE FROM TB_WMS_STOCK_HST
|
|
|
+ WHERE JOBDATE <![CDATA[<=]]> #{jobdate}
|
|
|
+ </delete>
|
|
|
+
|
|
|
+ <!-- TB_IF_PRODUCTSKU_HST 저장 -->
|
|
|
+ <insert id="createWmsStockHst" parameterType="String" timeout="300">
|
|
|
+ /* TsbGoods.createWmsStockHst */
|
|
|
+ INSERT INTO TB_WMS_STOCK_HST(
|
|
|
+ JOBDATE
|
|
|
+ ,PRODUCT_NO
|
|
|
+ ,SKU_CODE
|
|
|
+ ,LOC_QTY
|
|
|
+ ,PICKING_QTY
|
|
|
+ ,EOUT_PICKING_QTY
|
|
|
+ )
|
|
|
+ SELECT #{jobdate}
|
|
|
+ ,PRODUCT_NO
|
|
|
+ ,SKU_CODE
|
|
|
+ ,LOC_QTY
|
|
|
+ ,PICKING_QTY
|
|
|
+ ,EOUT_PICKING_QTY
|
|
|
+ FROM TB_WMS_STOCK
|
|
|
+ </insert>
|
|
|
+
|
|
|
<!-- TB_GOODS_STOCK 삭제 -->
|
|
|
<delete id="deleteGoodsDispStock" timeout="300">
|
|
|
/* TsbGoods.deleteGoodsDispStock */
|
|
|
@@ -1733,6 +1812,7 @@
|
|
|
, BASE_STOCK_QTY
|
|
|
, CURR_STOCK_QTY
|
|
|
, STORE_STOCK_QTY
|
|
|
+ , STORE_MAX_QTY
|
|
|
, ADD_PRICE
|
|
|
, SOLDOUT_YN
|
|
|
, DISP_ORD
|
|
|
@@ -1752,7 +1832,82 @@
|
|
|
, PRODUCT_CODE
|
|
|
, 0 AS BASE_STOCK_QTY
|
|
|
, CURR_STOCK_QTY
|
|
|
+ , 0 AS STORE_STOCK_QTY
|
|
|
+ , 0 AS STORE_MAX_QTY
|
|
|
+ , 0 AS ADD_PRICE
|
|
|
+ , 'N' AS SOLDOUT_YN
|
|
|
+ , DISP_ORD
|
|
|
+ , 'Y' AS DISP_YN
|
|
|
+ , ERP_STOCK_LINK_YN
|
|
|
+ , 0 AS REG_NO
|
|
|
+ , NOW() AS REG_DT
|
|
|
+ , 0 AS UPD_NO
|
|
|
+ , NOW() AS UPD_DT
|
|
|
+ FROM (
|
|
|
+ SELECT B.GOODS_CD
|
|
|
+ , A.SKU_CODE AS OPT_CD
|
|
|
+ , E.OPT_CD1
|
|
|
+ , E.OPT_CD2
|
|
|
+ , E.SKU_MODEL_NO
|
|
|
+ , E.PRODUCT_NO
|
|
|
+ , E.PRODUCT_CODE
|
|
|
+ , ROUND((GREATEST(A.LOC_QTY, 0) - GREATEST(A.PICKING_QTY, 0) - GREATEST(A.EOUT_PICKING_QTY, 0)) * (IFNULL(D.STOCK_APPL_RATE, 0)/100)) AS CURR_STOCK_QTY
|
|
|
+ , E.STORE_STOCK_QTY
|
|
|
+ , E.DISP_ORD
|
|
|
+ , B.ERP_STOCK_LINK_YN
|
|
|
+ FROM TB_WMS_STOCK A
|
|
|
+ INNER JOIN TB_OPTION E ON A.PRODUCT_NO = E.PRODUCT_NO
|
|
|
+ AND A.SKU_CODE = E.OPT_CD
|
|
|
+ INNER JOIN TB_GOODS B ON E.GOODS_CD = B.GOODS_CD
|
|
|
+ AND B.SELF_GOODS_YN = 'Y'
|
|
|
+ AND B.ERP_STOCK_LINK_YN = 'Y'
|
|
|
+ INNER JOIN TB_STOCK_SYNC_BASE C ON B.BRAND_CD = C.BRAND_CD
|
|
|
+ AND C.STOCK_SYNC_YN = 'Y'
|
|
|
+ AND C.DELV_LOC_CD = 'DL001' -- WMS 매장코드
|
|
|
+ INNER JOIN TB_DELIVERY_LOC D ON B.SUPPLY_COMP_CD = D.SUPPLY_COMP_CD
|
|
|
+ AND C.DELV_LOC_CD = D.DELV_LOC_CD
|
|
|
+ AND D.USE_YN = 'Y'
|
|
|
+ AND D.DELV_LOC_CD = 'DL001' -- WMS 매장코드
|
|
|
+ ) Z
|
|
|
+ </insert>
|
|
|
+
|
|
|
+ <!--매장 재고 임시 테이블 이관 -->
|
|
|
+ <insert id="saveTbOptionSyncTemp" timeout="300">
|
|
|
+ /* TsbGoods.saveTbOptionSyncTemp */
|
|
|
+ INSERT INTO TB_OPTION_SYNC_TMP
|
|
|
+ (
|
|
|
+ GOODS_CD
|
|
|
+ , OPT_CD
|
|
|
+ , OPT_CD1
|
|
|
+ , OPT_CD2
|
|
|
+ , SKU_MODEL_NO
|
|
|
+ , PRODUCT_NO
|
|
|
+ , PRODUCT_CODE
|
|
|
+ , BASE_STOCK_QTY
|
|
|
+ , CURR_STOCK_QTY
|
|
|
+ , STORE_STOCK_QTY
|
|
|
+ , STORE_MAX_QTY
|
|
|
+ , ADD_PRICE
|
|
|
+ , SOLDOUT_YN
|
|
|
+ , DISP_ORD
|
|
|
+ , DISP_YN
|
|
|
+ , ERP_STOCK_LINK_YN
|
|
|
+ , REG_NO
|
|
|
+ , REG_DT
|
|
|
+ , UPD_NO
|
|
|
+ , UPD_DT
|
|
|
+ )
|
|
|
+ SELECT GOODS_CD
|
|
|
+ , OPT_CD
|
|
|
+ , OPT_CD1
|
|
|
+ , OPT_CD2
|
|
|
+ , SKU_MODEL_NO
|
|
|
+ , PRODUCT_NO
|
|
|
+ , PRODUCT_CODE
|
|
|
+ , 0 AS BASE_STOCK_QTY
|
|
|
+ , 0 AS CURR_STOCK_QTY
|
|
|
, STORE_STOCK_QTY
|
|
|
+ , 0 AS STORE_MAX_QTY
|
|
|
, 0 AS ADD_PRICE
|
|
|
, 'N' AS SOLDOUT_YN
|
|
|
, DISP_ORD
|
|
|
@@ -1763,46 +1918,27 @@
|
|
|
, 0 AS UPD_NO
|
|
|
, NOW() AS UPD_DT
|
|
|
FROM (
|
|
|
- SELECT GOODS_CD
|
|
|
- , OPT_CD
|
|
|
- , OPT_CD1
|
|
|
- , OPT_CD2
|
|
|
- , SKU_MODEL_NO
|
|
|
- , PRODUCT_NO
|
|
|
- , PRODUCT_CODE
|
|
|
- , SUM(CURR_STOCK_QTY) AS CURR_STOCK_QTY
|
|
|
- , STORE_STOCK_QTY
|
|
|
- , IFNULL((SELECT (MAX(DISP_ORD) + 1) AS DISP_ORD
|
|
|
- FROM TB_OPTION WHERE GOODS_CD = Z.GOODS_CD) , ROW_NUMBER() OVER(PARTITION BY GOODS_CD ORDER BY OPT_CD)) AS DISP_ORD
|
|
|
- , ERP_STOCK_LINK_YN
|
|
|
- FROM (
|
|
|
- SELECT B.GOODS_CD
|
|
|
- , A.SKUCODE AS OPT_CD
|
|
|
- , MAX(A.OPTION1) AS OPT_CD1
|
|
|
- , MAX(A.OPTION2) AS OPT_CD2
|
|
|
- , MAX(A.SKUMODELNO) AS SKU_MODEL_NO
|
|
|
- , MAX(E.PRODUCT_NO) AS PRODUCT_NO
|
|
|
- , MAX(E.PRODUCT_CODE) AS PRODUCT_CODE
|
|
|
- , ROUND(GREATEST(A.SELLINGSTOCKAMOUNT, 0) * (IFNULL(D.STOCK_APPL_RATE, 0)/100)) AS CURR_STOCK_QTY
|
|
|
- , MAX(E.STORE_STOCK_QTY) AS STORE_STOCK_QTY
|
|
|
- , MAX(B.ERP_STOCK_LINK_YN) AS ERP_STOCK_LINK_YN
|
|
|
- , D.DELV_LOC_CD
|
|
|
- , D.STOCK_APPL_RATE
|
|
|
- FROM TB_IF_PRODUCTSKU A
|
|
|
- INNER JOIN TB_OPTION E ON A.SKUCODE = E.OPT_CD
|
|
|
- AND A.PRODUCTNO = E.PRODUCT_NO
|
|
|
- INNER JOIN TB_GOODS B ON E.GOODS_CD = B.GOODS_CD
|
|
|
- AND B.SELF_GOODS_YN = 'Y'
|
|
|
- INNER JOIN TB_STOCK_SYNC_BASE C ON B.BRAND_CD = C.BRAND_CD
|
|
|
- AND C.STOCK_SYNC_YN = 'Y'
|
|
|
- INNER JOIN TB_DELIVERY_LOC D ON B.SUPPLY_COMP_CD = D.SUPPLY_COMP_CD
|
|
|
- AND C.DELV_LOC_CD = D.DELV_LOC_CD
|
|
|
- AND D.USE_YN = 'Y'
|
|
|
- WHERE 1 = 1
|
|
|
- GROUP BY B.GOODS_CD, A.SKUCODE, D.DELV_LOC_CD, D.STOCK_APPL_RATE
|
|
|
- ) Z
|
|
|
- GROUP BY GOODS_CD, OPT_CD, OPT_CD1 , OPT_CD2, SKU_MODEL_NO, PRODUCT_NO, PRODUCT_CODE, STORE_STOCK_QTY, ERP_STOCK_LINK_YN
|
|
|
- ) Y
|
|
|
+ SELECT E.GOODS_CD
|
|
|
+ , E.OPT_CD
|
|
|
+ , E.OPT_CD1
|
|
|
+ , E.OPT_CD2
|
|
|
+ , E.SKU_MODEL_NO
|
|
|
+ , E.PRODUCT_NO
|
|
|
+ , E.PRODUCT_CODE
|
|
|
+ , E.CURR_STOCK_QTY
|
|
|
+ , SUM(A.STORE_STOCK_QTY) AS STORE_STOCK_QTY
|
|
|
+ , B.ERP_STOCK_LINK_YN
|
|
|
+ , E.DISP_ORD
|
|
|
+ FROM TB_SHOP_STOCK A
|
|
|
+ INNER JOIN TB_OPTION E ON A.CD_STYLE = E.GOODS_CD
|
|
|
+ AND A.OPT_CD = E.OPT_CD
|
|
|
+ INNER JOIN TB_GOODS B ON E.GOODS_CD = B.GOODS_CD
|
|
|
+ AND B.SELF_GOODS_YN = 'Y'
|
|
|
+ AND B.ERP_STOCK_LINK_YN = 'Y'
|
|
|
+ GROUP BY GOODS_CD , OPT_CD , OPT_CD1 , OPT_CD2 , SKU_MODEL_NO , PRODUCT_NO , PRODUCT_CODE , CURR_STOCK_QTY , DISP_ORD , ERP_STOCK_LINK_YN
|
|
|
+ ) Z
|
|
|
+ ON DUPLICATE KEY UPDATE
|
|
|
+ STORE_STOCK_QTY = Z.STORE_STOCK_QTY
|
|
|
</insert>
|
|
|
|
|
|
<!-- 입점상품 SELL_QTY 목록 조회 -->
|
|
|
@@ -1837,6 +1973,7 @@
|
|
|
, BASE_STOCK_QTY
|
|
|
, CURR_STOCK_QTY
|
|
|
, STORE_STOCK_QTY
|
|
|
+ , STORE_MAX_QTY
|
|
|
, ADD_PRICE
|
|
|
, SOLDOUT_YN
|
|
|
, DISP_ORD
|
|
|
@@ -1857,6 +1994,7 @@
|
|
|
, BASE_STOCK_QTY
|
|
|
, CURR_STOCK_QTY
|
|
|
, STORE_STOCK_QTY
|
|
|
+ , STORE_MAX_QTY
|
|
|
, ADD_PRICE
|
|
|
, SOLDOUT_YN
|
|
|
, DISP_ORD
|
|
|
@@ -1873,8 +2011,8 @@
|
|
|
<!-- 상품 재고 정보 저장 -->
|
|
|
<update id="updateStock" parameterType="Option" timeout="300">
|
|
|
/* TsbGoods.updateStock */
|
|
|
- UPDATE TB_STOCK
|
|
|
- SET CURR_ON_STOCK_QTY = GREATEST(CURR_ON_STOCK_QTY - #{saleStockQty},0)
|
|
|
+ UPDATE TB_OPTION
|
|
|
+ SET CURR_STOCK_QTY = GREATEST(CURR_STOCK_QTY - #{saleStockQty},0)
|
|
|
, UPD_NO = #{updNo}
|
|
|
, UPD_DT = NOW()
|
|
|
WHERE GOODS_CD = #{goodsCd}
|
|
|
@@ -1902,6 +2040,7 @@
|
|
|
, BASE_STOCK_QTY
|
|
|
, CURR_STOCK_QTY
|
|
|
, STORE_STOCK_QTY
|
|
|
+ , STORE_MAX_QTY
|
|
|
, ADD_PRICE
|
|
|
, SOLDOUT_YN
|
|
|
, DISP_ORD
|
|
|
@@ -1920,8 +2059,9 @@
|
|
|
, B.PRODUCT_NO
|
|
|
, B.PRODUCT_CODE
|
|
|
, B.BASE_STOCK_QTY
|
|
|
- , B.CURR_STOCK_QTY
|
|
|
- , B.STORE_STOCK_QTY
|
|
|
+ , 0 AS CURR_STOCK_QTY
|
|
|
+ , 0 AS STORE_STOCK_QTY
|
|
|
+ , 0 AS STORE_MAX_QTY
|
|
|
, B.ADD_PRICE
|
|
|
, B.SOLDOUT_YN
|
|
|
, B.DISP_ORD
|
|
|
@@ -1932,48 +2072,91 @@
|
|
|
, B.UPD_NO
|
|
|
, B.UPD_DT
|
|
|
FROM TB_GOODS A, TB_OPTION B
|
|
|
- WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
+ WHERE A.ERP_STOCK_LINK_YN = 'Y'
|
|
|
+ AND A.GOODS_CD = B.GOODS_CD
|
|
|
</insert>
|
|
|
|
|
|
<!-- TB_OPTION_SYNC_TMP => TB_OPTION_SYNC 변경적용-->
|
|
|
- <insert id="saveGoodsOptionSyncSync" timeout="300">
|
|
|
+ <update id="saveGoodsOptionSyncSync" timeout="300">
|
|
|
/* TsbGoods.saveGoodsOptionSyncSync */
|
|
|
UPDATE TB_OPTION_SYNC A, (SELECT GOODS_CD
|
|
|
, OPT_CD
|
|
|
, CURR_STOCK_QTY
|
|
|
+ , STORE_STOCK_QTY
|
|
|
, ERP_STOCK_LINK_YN
|
|
|
FROM TB_OPTION_SYNC_TMP
|
|
|
WHERE ERP_STOCK_LINK_YN = 'Y'
|
|
|
) B
|
|
|
SET A.CURR_STOCK_QTY = B.CURR_STOCK_QTY
|
|
|
+ , A.STORE_STOCK_QTY = B.STORE_STOCK_QTY
|
|
|
, A.UPD_NO = 0
|
|
|
, A.UPD_DT = NOW()
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
AND A.OPT_CD = B.OPT_CD
|
|
|
<![CDATA[
|
|
|
- AND A.CURR_STOCK_QTY <> B.CURR_STOCK_QTY
|
|
|
+ AND (A.CURR_STOCK_QTY <> B.CURR_STOCK_QTY
|
|
|
+ OR
|
|
|
+ A.STORE_STOCK_QTY <> B.STORE_STOCK_QTY
|
|
|
+ )
|
|
|
]]>
|
|
|
- </insert>
|
|
|
+ </update>
|
|
|
+
|
|
|
+ <!-- TB_OPTION_SYNC 매장별 최대구매수량 적용-->
|
|
|
+ <update id="updateGoodsOptionSyncSync" timeout="300">
|
|
|
+ /* TsbGoods.updateGoodsOptionSyncSync */
|
|
|
+ UPDATE TB_OPTION_SYNC A, (SELECT GOODS_CD
|
|
|
+ , OPT_CD
|
|
|
+ , STORE_MAX_QTY
|
|
|
+ FROM (
|
|
|
+ SELECT GOODS_CD
|
|
|
+ , OPT_CD
|
|
|
+ , GREATEST(CURR_STOCK_QTY, QT_STOCK) AS STORE_MAX_QTY
|
|
|
+ FROM (
|
|
|
+ SELECT OS.GOODS_CD
|
|
|
+ , OS.OPT_CD
|
|
|
+ , GREATEST(OS.CURR_STOCK_QTY, 0) AS CURR_STOCK_QTY
|
|
|
+ , GREATEST(IFNULL(SS.QT_STOCK, 0), 0) AS QT_STOCK
|
|
|
+ FROM TB_OPTION_SYNC OS
|
|
|
+ LEFT OUTER JOIN TB_SHOP_STOCK SS ON OS.GOODS_CD = SS.CD_STYLE
|
|
|
+ AND OS.OPT_CD = SS.OPT_CD
|
|
|
+ WHERE OS.ERP_STOCK_LINK_YN = 'Y'
|
|
|
+ ) Z
|
|
|
+ ) WHERE STORE_MAX_QTY > 0
|
|
|
+ ) B
|
|
|
+ SET A.STORE_MAX_QTY = B.STORE_MAX_QTY
|
|
|
+ , A.UPD_NO = 0
|
|
|
+ , A.UPD_DT = NOW()
|
|
|
+ WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
+ AND A.OPT_CD = B.OPT_CD
|
|
|
+ <![CDATA[
|
|
|
+ AND A.STORE_MAX_QTY <> B.STORE_MAX_QTY
|
|
|
+ ]]>
|
|
|
+ </update>
|
|
|
|
|
|
<!-- WMS 임시 테이블에서 실테이블로 변경 -->
|
|
|
- <insert id="saveGoodsOptionNew" timeout="300">
|
|
|
+ <update id="saveGoodsOptionNew" timeout="300">
|
|
|
/* TsbGoods.saveGoodsOptionNew */
|
|
|
UPDATE TB_OPTION A, (SELECT GOODS_CD
|
|
|
, OPT_CD
|
|
|
, CURR_STOCK_QTY
|
|
|
+ , STORE_STOCK_QTY
|
|
|
, ERP_STOCK_LINK_YN
|
|
|
FROM TB_OPTION_SYNC
|
|
|
WHERE ERP_STOCK_LINK_YN = 'Y'
|
|
|
) B
|
|
|
SET A.CURR_STOCK_QTY = B.CURR_STOCK_QTY
|
|
|
+ , A.STORE_STOCK_QTY = B.STORE_STOCK_QTY
|
|
|
, A.UPD_NO = 0
|
|
|
, A.UPD_DT = NOW()
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
AND A.OPT_CD = B.OPT_CD
|
|
|
<![CDATA[
|
|
|
- AND A.CURR_STOCK_QTY <> B.CURR_STOCK_QTY
|
|
|
+ AND (A.CURR_STOCK_QTY <> B.CURR_STOCK_QTY
|
|
|
+ OR
|
|
|
+ A.STORE_STOCK_QTY <> B.STORE_STOCK_QTY
|
|
|
+ )
|
|
|
]]>
|
|
|
- </insert>
|
|
|
+ </update>
|
|
|
|
|
|
<!-- TB_SELL_QTY_TMP 테이블 삭제 -->
|
|
|
<delete id="deleteTtbSellQtyTemp" timeout="300">
|
|
|
@@ -2044,11 +2227,11 @@
|
|
|
WHERE ORD_DTL_NO IN (
|
|
|
SELECT OD.ORD_DTL_NO
|
|
|
FROM TB_ORDER_DETAIL OD
|
|
|
- , TB_ORDER_DETAIL_ITEM ODI
|
|
|
+ -- , TB_ORDER_DETAIL_ITEM ODI
|
|
|
, TB_GOODS G
|
|
|
WHERE OD.ORD_DTL_NO = ODI.ORD_DTL_NO
|
|
|
- AND OD.ORD_DTL_STAT IN ('G013_10','G013_20') -- 입금대기, 결제완료
|
|
|
- AND ODI.ITEM_CD = G.GOODS_CD
|
|
|
+ AND OD.ORD_DTL_STAT IN ('G013_10','G013_20','G013_25','G013_30','G013_35','G013_40') -- 입금대기, 결제완료, 교환대기, 상품준비중,출고처지정,배송준비중
|
|
|
+ AND OD.GOODS_CD = G.GOODS_CD
|
|
|
AND G.SELF_GOODS_YN ='Y'
|
|
|
)
|
|
|
</insert>
|
|
|
@@ -2087,7 +2270,7 @@
|
|
|
FROM TB_ORDER_DETAIL OD
|
|
|
, TB_ORDER_DETAIL_ITEM ODI
|
|
|
WHERE OD.ORD_DTL_NO = ODI.ORD_DTL_NO
|
|
|
- AND OD.ORD_DTL_STAT IN ('G013_10','G013_20') -- 입금대기, 결제완료
|
|
|
+ AND OD.ORD_DTL_STAT IN ('G013_10','G013_20','G013_25','G013_30','G013_35','G013_40') -- 입금대기, 결제완료, 교환대기, 상품준비중,출고처지정,배송준비중
|
|
|
AND EXISTS (SELECT 1 FROM TB_OPTION X WHERE X.GOODS_CD = ODI.ITEM_CD AND X.OPT_CD = ODI.OPT_CD)
|
|
|
GROUP BY ODI.ITEM_CD, ODI.OPT_CD, OD.ORD_DTL_NO, OD.AGENT_ORDER_ID, OD.EXTMALL_ORDER_ID
|
|
|
) A
|
|
|
@@ -2114,6 +2297,7 @@
|
|
|
, BASE_STOCK_QTY
|
|
|
, CURR_STOCK_QTY
|
|
|
, STORE_STOCK_QTY
|
|
|
+ , STORE_MAX_QTY
|
|
|
, ADD_PRICE
|
|
|
, SOLDOUT_YN
|
|
|
, DISP_ORD
|
|
|
@@ -2133,6 +2317,7 @@
|
|
|
, 0 AS BASE_STOCK_QTY
|
|
|
, E.NORMALQTY AS CURR_STOCK_QTY
|
|
|
, 0 AS STORE_STOCK_QTY
|
|
|
+ , E.NORMALQTY AS STORE_MAX_QTY
|
|
|
, 0 AS ADD_PRICE
|
|
|
, 'N' AS SOLDOUT_YN
|
|
|
, IFNULL((SELECT (MAX(DISP_ORD) + 1)
|
|
|
@@ -2495,4 +2680,95 @@
|
|
|
) Z
|
|
|
</insert>
|
|
|
|
|
|
+ <!-- TB_SHOP_STOCK 삭제 -->
|
|
|
+ <delete id="deleteShopStock" timeout="300">
|
|
|
+ /* TsbGoods.deleteShopStock */
|
|
|
+ DELETE FROM TB_SHOP_STOCK
|
|
|
+ </delete>
|
|
|
+
|
|
|
+ <!-- TB_SHOP_STOCK 저장 -->
|
|
|
+ <insert id="createShopStock" >
|
|
|
+ /* TsbGoods.createShopStock */
|
|
|
+ INSERT INTO TB_SHOP_STOCK(
|
|
|
+ SUPPLY_COMP_CD
|
|
|
+ , CD_SHOP
|
|
|
+ , CD_STYLE
|
|
|
+ , CD_COLOR
|
|
|
+ , CD_SIZE
|
|
|
+ , QT_STOCK
|
|
|
+ , OPT_CD
|
|
|
+ , OPT_CD1
|
|
|
+ , STORE_STOCK_QTY
|
|
|
+ , UPD_DT
|
|
|
+ )
|
|
|
+ SELECT A.SUPPLY_COMP_CD
|
|
|
+ , A.CD_SHOP
|
|
|
+ , A.CD_STYLE
|
|
|
+ , A.CD_COLOR
|
|
|
+ , A.CD_SIZE
|
|
|
+ , A.QT_STOCK
|
|
|
+ , E.OPT_CD
|
|
|
+ , E.OPT_CD1
|
|
|
+ , ROUND(GREATEST(A.QT_STOCK, 0) * (IFNULL(D.STOCK_APPL_RATE, 0)/100)) AS STORE_STOCK_QTY
|
|
|
+ , NOW()
|
|
|
+ FROM (SELECT S.SUPPLY_COMP_CD
|
|
|
+ , S.CD_SHOP
|
|
|
+ , S.CD_STYLE
|
|
|
+ , S.CD_COLOR
|
|
|
+ , S.CD_SIZE
|
|
|
+ , S.QT_STOCK
|
|
|
+ , M.COLOR_CD AS OPT_CD1
|
|
|
+ FROM TB_SHOP_GOODS_STOCK S
|
|
|
+ INNER JOIN TB_WMS_COLOR_MAPPING M ON S.SUPPLY_COMP_CD = M.SUPPLY_COMP_CD
|
|
|
+ AND S.CD_COLOR = M.WMS_COLOR_CD
|
|
|
+ AND M.USE_YN = 'Y') A
|
|
|
+ INNER JOIN TB_OPTION E ON A.CD_STYLE = E.GOODS_CD
|
|
|
+ AND A.OPT_CD1 = E.OPT_CD1
|
|
|
+ AND A.CD_SIZE = E.OPT_CD2
|
|
|
+ INNER JOIN TB_GOODS B ON A.CD_STYLE = B.GOODS_CD
|
|
|
+ AND B.SELF_GOODS_YN = 'Y'
|
|
|
+ AND B.ERP_STOCK_LINK_YN = 'Y'
|
|
|
+ INNER JOIN TB_STOCK_SYNC_BASE C ON B.BRAND_CD = C.BRAND_CD
|
|
|
+ AND C.STOCK_SYNC_YN = 'Y'
|
|
|
+ AND A.CD_SHOP = C.DELV_LOC_CD
|
|
|
+ INNER JOIN TB_DELIVERY_LOC D ON A.SUPPLY_COMP_CD = D.SUPPLY_COMP_CD
|
|
|
+ AND A.CD_SHOP = D.DELV_LOC_CD
|
|
|
+ AND D.USE_YN = 'Y'
|
|
|
+ </insert>
|
|
|
+
|
|
|
+ <!-- TB_SHOP_STOCK_HST 삭제 -->
|
|
|
+ <delete id="deleteShopStockHst" parameterType="String" timeout="300">
|
|
|
+ /* TsbGoods.deleteShopStockHst */
|
|
|
+ DELETE FROM TB_SHOP_STOCK_HST
|
|
|
+ WHERE JOBDATE <![CDATA[<=]]> #{jobdate}
|
|
|
+ </delete>
|
|
|
+
|
|
|
+ <!-- TB_SHOP_STOCK_HST 저장 -->
|
|
|
+ <insert id="createShopStockHst" parameterType="String" timeout="300">
|
|
|
+ /* TsbGoods.createShopStockHst */
|
|
|
+ INSERT INTO TB_SHOP_STOCK_HST(
|
|
|
+ JOBDATE
|
|
|
+ , SUPPLY_COMP_CD
|
|
|
+ , CD_SHOP
|
|
|
+ , CD_STYLE
|
|
|
+ , CD_COLOR
|
|
|
+ , CD_SIZE
|
|
|
+ , QT_STOCK
|
|
|
+ , OPT_CD
|
|
|
+ , OPT_CD1
|
|
|
+ , STORE_STOCK_QTY
|
|
|
+ )
|
|
|
+ SELECT #{jobdate}
|
|
|
+ SUPPLY_COMP_CD
|
|
|
+ , CD_SHOP
|
|
|
+ , CD_STYLE
|
|
|
+ , CD_COLOR
|
|
|
+ , CD_SIZE
|
|
|
+ , QT_STOCK
|
|
|
+ , OPT_CD
|
|
|
+ , OPT_CD1
|
|
|
+ , STORE_STOCK_QTY
|
|
|
+ FROM TB_SHOP_STOCK
|
|
|
+ </insert>
|
|
|
+
|
|
|
</mapper>
|