|
@@ -1331,4 +1331,231 @@
|
|
|
]]>
|
|
]]>
|
|
|
</select>
|
|
</select>
|
|
|
|
|
|
|
|
|
|
+ <!-- TB_IF_PRODUCTSKU_TEMP 삭제 -->
|
|
|
|
|
+ <delete id="deleteIfProductSku" timeout="300">
|
|
|
|
|
+ /* TsbGoods.deleteIfProductSku */
|
|
|
|
|
+ TRUNCATE TABLE TB_IF_PRODUCTSKU
|
|
|
|
|
+ </delete>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- TB_IF_PRODUCTSKU_TEMP 저장 -->
|
|
|
|
|
+ <insert id="createIfProductSku" parameterType="IfProduct">
|
|
|
|
|
+ /* TsbGoods.createIfProductSku */
|
|
|
|
|
+ INSERT INTO TB_IF_PRODUCTSKU(
|
|
|
|
|
+ SKUCODE
|
|
|
|
|
+ , SKUMODELNO
|
|
|
|
|
+ , PRODUCTNO
|
|
|
|
|
+ , PRODUCTCODE
|
|
|
|
|
+ , OPTION1
|
|
|
|
|
+ , OPTION2
|
|
|
|
|
+ , OPTION3
|
|
|
|
|
+ , SELLINGSTOCKAMOUNT
|
|
|
|
|
+ , SELLINGSTOCKTYPECD
|
|
|
|
|
+ , LIMITSTOCKAMOUNT
|
|
|
|
|
+ , VENDORSKUMODELNO
|
|
|
|
|
+ , VENDORSKUCODE
|
|
|
|
|
+ , ISVIRTUALSTOCK
|
|
|
|
|
+ , DATEVIRTUALSTOCK
|
|
|
|
|
+ , SKUCODE88
|
|
|
|
|
+ , UPD_DT
|
|
|
|
|
+ )
|
|
|
|
|
+ VALUES(
|
|
|
|
|
+ #{skucode}
|
|
|
|
|
+ , #{skumodelno}
|
|
|
|
|
+ , #{productno}
|
|
|
|
|
+ , #{productcode}
|
|
|
|
|
+ , #{option1}
|
|
|
|
|
+ , #{option2}
|
|
|
|
|
+ , #{option3}
|
|
|
|
|
+ , #{sellingstockamount}
|
|
|
|
|
+ , #{sellingstocktypecd}
|
|
|
|
|
+ , #{limitstockamount}
|
|
|
|
|
+ , #{vendorskumodelno}
|
|
|
|
|
+ , #{vendorskucode}
|
|
|
|
|
+ , #{isvirtualstock}
|
|
|
|
|
+ , #{datevirtualstock}
|
|
|
|
|
+ , #{skucode88}
|
|
|
|
|
+ , NOW()
|
|
|
|
|
+ )
|
|
|
|
|
+ </insert>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- TB_IF_PRODUCTSKU_HST 삭제 -->
|
|
|
|
|
+ <delete id="deleteWmsProductSkuHst" parameterType="String" timeout="300">
|
|
|
|
|
+ /* TsbGoods.deleteWmsProductSkuHst */
|
|
|
|
|
+ DELETE TB_IF_PRODUCTSKU_HST
|
|
|
|
|
+ WHERE JOBDATE <![CDATA[<=]]> #{jobdate}
|
|
|
|
|
+ </delete>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- TB_IF_PRODUCTSKU_HST 저장 -->
|
|
|
|
|
+ <insert id="createWmsProductSkuHst" parameterType="String" timeout="300">
|
|
|
|
|
+ /* TsbGoods.createWmsProductSkuHst */
|
|
|
|
|
+ INSERT INTO TB_IF_PRODUCTSKU_HST(
|
|
|
|
|
+ JOBDATE
|
|
|
|
|
+ , SKUCODE
|
|
|
|
|
+ , SKUMODELNO
|
|
|
|
|
+ , PRODUCTNO
|
|
|
|
|
+ , PRODUCTCODE
|
|
|
|
|
+ , OPTION1
|
|
|
|
|
+ , OPTION2
|
|
|
|
|
+ , OPTION3
|
|
|
|
|
+ , SELLINGSTOCKAMOUNT
|
|
|
|
|
+ , SELLINGSTOCKTYPECD
|
|
|
|
|
+ , LIMITSTOCKAMOUNT
|
|
|
|
|
+ , VENDORSKUMODELNO
|
|
|
|
|
+ , VENDORSKUCODE
|
|
|
|
|
+ , ISVIRTUALSTOCK
|
|
|
|
|
+ , DATEVIRTUALSTOCK
|
|
|
|
|
+ , SKUCODE88
|
|
|
|
|
+ )
|
|
|
|
|
+ SELECT #{jobdate}
|
|
|
|
|
+ , SKUCODE
|
|
|
|
|
+ , SKUMODELNO
|
|
|
|
|
+ , PRODUCTNO
|
|
|
|
|
+ , PRODUCTCODE
|
|
|
|
|
+ , OPTION1
|
|
|
|
|
+ , OPTION2
|
|
|
|
|
+ , OPTION3
|
|
|
|
|
+ , SELLINGSTOCKAMOUNT
|
|
|
|
|
+ , SELLINGSTOCKTYPECD
|
|
|
|
|
+ , LIMITSTOCKAMOUNT
|
|
|
|
|
+ , VENDORSKUMODELNO
|
|
|
|
|
+ , VENDORSKUCODE
|
|
|
|
|
+ , ISVIRTUALSTOCK
|
|
|
|
|
+ , DATEVIRTUALSTOCK
|
|
|
|
|
+ , SKUCODE88
|
|
|
|
|
+ FROM TB_IF_PRODUCTSKU
|
|
|
|
|
+ </insert>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- TB_GOODS_STOCK 삭제 -->
|
|
|
|
|
+ <delete id="deleteGoodsDispStock" timeout="300">
|
|
|
|
|
+ /* TsbGoods.deleteGoodsDispStock */
|
|
|
|
|
+ DELETE FROM TB_GOODS_STOCK
|
|
|
|
|
+ </delete>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- TB_GOODS_STOCK 저장 -->
|
|
|
|
|
+ <insert id="createGoodsDispStock" parameterType="String" timeout="300">
|
|
|
|
|
+ /* TsbGoods.createGoodsDispStock */
|
|
|
|
|
+ INSERT INTO TB_GOODS_STOCK(
|
|
|
|
|
+ GOODS_CD
|
|
|
|
|
+ , STOCK_QTY
|
|
|
|
|
+ , REG_DT
|
|
|
|
|
+ )
|
|
|
|
|
+ SELECT Z.GOODS_CD
|
|
|
|
|
+ , MIN(Z.STOCK_QTY_ITEM) AS STOCK_QTY
|
|
|
|
|
+ , NOW()
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT A.GOODS_CD
|
|
|
|
|
+ , A.MIN_ORD_QTY
|
|
|
|
|
+ , SUM(C.CURR_STOCK_QTY - C.BASE_STOCK_QTY) AS STOCK_QTY_ITEM
|
|
|
|
|
+ FROM TB_GOODS A
|
|
|
|
|
+ , VW_STOCK C
|
|
|
|
|
+ WHERE A.GOODS_CD = C.GOODS_CD
|
|
|
|
|
+ AND C.SOLDOUT_YN = 'N'
|
|
|
|
|
+ AND C.CURR_STOCK_QTY - C.BASE_STOCK_QTY > 0
|
|
|
|
|
+ GROUP BY A.GOODS_CD, A.MIN_ORD_QTY
|
|
|
|
|
+ UNION ALL
|
|
|
|
|
+ SELECT A.GOODS_CD
|
|
|
|
|
+ , A.MIN_ORD_QTY
|
|
|
|
|
+ , SUM(C.CURR_STOCK_QTY - C.BASE_STOCK_QTY) AS STOCK_QTY_ITEM
|
|
|
|
|
+ FROM TB_GOODS A
|
|
|
|
|
+ , TB_GOODS_COMPOSE B
|
|
|
|
|
+ , VW_STOCK C
|
|
|
|
|
+ WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
|
|
+ AND B.COMPS_GOODS_CD = C.GOODS_CD
|
|
|
|
|
+ AND B.USE_YN = 'Y'
|
|
|
|
|
+ AND A.GOODS_TYPE != 'N'
|
|
|
|
|
+ AND C.SOLDOUT_YN = 'N'
|
|
|
|
|
+ AND C.CURR_STOCK_QTY - C.BASE_STOCK_QTY > 0
|
|
|
|
|
+ GROUP BY A.GOODS_CD, A.MIN_ORD_QTY
|
|
|
|
|
+ ) Z
|
|
|
|
|
+ GROUP BY Z.GOODS_CD, Z.MIN_ORD_QTY
|
|
|
|
|
+ HAVING Z.MIN_ORD_QTY <![CDATA[<=]]> MIN(Z.STOCK_QTY_ITEM)
|
|
|
|
|
+ </insert>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- ERP 재고 임시 테이블 삭제 -->
|
|
|
|
|
+ <delete id="deleteTbOptionSyncTemp">
|
|
|
|
|
+ /* TsbGoods.deleteTbOptionSyncTemp */
|
|
|
|
|
+ TRUNCATE TABLE TB_OPTION_SYNC_TEMP
|
|
|
|
|
+ </delete>
|
|
|
|
|
+
|
|
|
|
|
+ <!--ERP 재고 임시 테이블 이관 -->
|
|
|
|
|
+ <insert id="createTbOptionSyncTemp">
|
|
|
|
|
+ /* TsbGoods.createTbOptionSyncTemp */
|
|
|
|
|
+ INSERT INTO TB_OPTION_SYNC_TEMP
|
|
|
|
|
+ (
|
|
|
|
|
+ GOODS_CD
|
|
|
|
|
+ , OPT_CD
|
|
|
|
|
+ , OPT_CD1
|
|
|
|
|
+ , OPT_CD2
|
|
|
|
|
+ , SKU_MODEL_NO
|
|
|
|
|
+ , PRODUCT_NO
|
|
|
|
|
+ , PRODUCT_CODE
|
|
|
|
|
+ , BASE_STOCK_QTY
|
|
|
|
|
+ , CURR_STOCK_QTY
|
|
|
|
|
+ , ADD_PRICE
|
|
|
|
|
+ , SOLDOUT_YN
|
|
|
|
|
+ , DISP_ORD
|
|
|
|
|
+ , DISP_YN
|
|
|
|
|
+ , ERP_STOCK_LINK_YN
|
|
|
|
|
+ , REG_ID
|
|
|
|
|
+ , REG_DT
|
|
|
|
|
+ , UPD_ID
|
|
|
|
|
+ , UPD_DT
|
|
|
|
|
+ )
|
|
|
|
|
+ SELECT GOODS_CD
|
|
|
|
|
+ , OPT_CD
|
|
|
|
|
+ , OPT_CD1
|
|
|
|
|
+ , OPT_CD2
|
|
|
|
|
+ , SKU_MODEL_NO
|
|
|
|
|
+ , PRODUCT_NO
|
|
|
|
|
+ , PRODUCT_CODE
|
|
|
|
|
+ , 0 AS BASE_STOCK_QTY
|
|
|
|
|
+ , CURR_STOCK_QTY
|
|
|
|
|
+ , 'N' AS SOLDOUT_YN
|
|
|
|
|
+ , DISP_ORD
|
|
|
|
|
+ , 'Y' AS DISP_YN
|
|
|
|
|
+ , ERP_STOCK_LINK_YN
|
|
|
|
|
+ , 'batch' AS REG_ID
|
|
|
|
|
+ , SYSDATE AS REG_DT
|
|
|
|
|
+ , 'batch' AS UPD_ID
|
|
|
|
|
+ , SYSDATE AS UPD_DT
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT GOODS_CD
|
|
|
|
|
+ , SIZE_CD
|
|
|
|
|
+ , SIZE_NM
|
|
|
|
|
+ , SUM(CURR_ON_STOCK_QTY) AS CURR_ON_STOCK_QTY
|
|
|
|
|
+ , SUM(CURR_OFF_STOCK_QTY) AS CURR_OFF_STOCK_QTY
|
|
|
|
|
+ , SUM(CURR_SHOP_STOCK_QTY) AS CURR_SHOP_STOCK_QTY
|
|
|
|
|
+ , NVL((SELECT (MAX(DISP_ORD) + 1) AS DISP_ORD FROM TB_STOCK WHERE GOODS_CD = Z.GOODS_CD)
|
|
|
|
|
+ , ROW_NUMBER() OVER(PARTITION BY GOODS_CD ORDER BY SIZE_CD)) AS DISP_ORD
|
|
|
|
|
+ , ERP_STOCK_LINK_YN
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT B.GOODS_CD
|
|
|
|
|
+ , A.SKUCODE AS OPT_CD
|
|
|
|
|
+ , A.OPTION1 AS OPT_CD1
|
|
|
|
|
+ , A.OPTION2 ASOPT_CD2
|
|
|
|
|
+ , A.SKUMODELNO AS SKU_MODEL_NO
|
|
|
|
|
+ , B.PRODUCT_NO
|
|
|
|
|
+ , B.PRODUCT_CODE
|
|
|
|
|
+ , SUM(GREATEST(A.SELLINGSTOCKAMOUNT, 0)) AS CURR_STOCK_QTY
|
|
|
|
|
+ , B.ERP_STOCK_LINK_YN
|
|
|
|
|
+ , A.CD_LOC
|
|
|
|
|
+ , D.STOCK_APPL_RATE
|
|
|
|
|
+ FROM TB_IF_PRODUCTSKU_TEMP A, TB_GOODS B, TB_STOCK_LINK_BASE C, TB_DELIVERY_LOC D
|
|
|
|
|
+ WHERE B.SELF_GOODS_YN = 'Y'
|
|
|
|
|
+ AND B.GOODS_TYPE = 'N'
|
|
|
|
|
+ AND B.GOODS_NUM = A.CD_STYLE
|
|
|
|
|
+ AND B.COLOR_CD = A.CD_COLOR
|
|
|
|
|
+ AND B.BRAND_CD = C.BRAND_CD
|
|
|
|
|
+ AND B.FORMAL_GB = C.FORMAL_GB
|
|
|
|
|
+ AND B.SUPPLY_COMP_CD = D.SUPPLY_COMP_CD
|
|
|
|
|
+ AND C.STOCK_LINK_YN = 'Y'
|
|
|
|
|
+ AND D.USE_YN = 'Y'
|
|
|
|
|
+ AND A.CD_LOC = C.DELV_LOC_CD
|
|
|
|
|
+ AND A.CD_LOC = D.DELV_LOC_CD
|
|
|
|
|
+ GROUP BY B.GOODS_CD, A.CD_SIZE, B.ERP_STOCK_LINK_YN, A.CD_LOC, D.STOCK_APPL_RATE
|
|
|
|
|
+ ) Z
|
|
|
|
|
+ GROUP BY GOODS_CD, SIZE_CD, ERP_STOCK_LINK_YN
|
|
|
|
|
+ )
|
|
|
|
|
+ </insert>
|
|
|
|
|
+
|
|
|
</mapper>
|
|
</mapper>
|