|
|
@@ -914,12 +914,12 @@
|
|
|
ODIH.SELL_AMT
|
|
|
ELSE
|
|
|
0
|
|
|
- END) AS MK_NET_SALES_AMT /*한세MK순매출금액*/
|
|
|
- , -1 * SUM(CASE WHEN ODIH.SUPPLY_COMP_CD = 3 THEN /*한세드림*/
|
|
|
- ODIH.CNCL_AMT
|
|
|
- ELSE
|
|
|
- 0
|
|
|
- END) AS DR_NET_SALES_AMT /*한세드림순매출금액*/
|
|
|
+ END) AS MK_NET_SALES_AMT /*한세MK순매출금액*/
|
|
|
+ , SUM(CASE WHEN ODIH.SUPPLY_COMP_CD = 3 THEN /*한세드림*/
|
|
|
+ ODIH.SELL_AMT
|
|
|
+ ELSE
|
|
|
+ 0
|
|
|
+ END) AS DR_NET_SALES_AMT /*한세드림순매출금액*/
|
|
|
FROM (
|
|
|
SELECT OD.SUPPLY_COMP_CD
|
|
|
, (CASE WHEN ODIH.ORD_DTL_STAT = 'G720_10' THEN 1 ELSE -1 END)
|
|
|
@@ -950,6 +950,7 @@
|
|
|
, ODIH.GFCD_USE_AMT /*상품권사용금액*/
|
|
|
FROM TB_ORDER_DETAIL_ITEM_HST ODIH
|
|
|
INNER JOIN TB_ORDER_DETAIL OD ON ODIH.ORD_DTL_NO = OD.ORD_DTL_NO
|
|
|
+ AND OD.SUPPLY_COMP_CD IN (3,5,4) /*한세드림,한세MK,FRJ*/
|
|
|
INNER JOIN TB_ORDER O ON ODIH.ORD_NO = O.ORD_NO
|
|
|
INNER JOIN TB_SUPPLY_COMPANY SC ON OD.SUPPLY_COMP_CD = SC.SUPPLY_COMP_CD
|
|
|
LEFT OUTER JOIN TB_EXTMALL_USAC_PRICE EUP ON ODIH.ORD_DTL_ITEM_HST_SQ = EUP.ORD_DTL_ITEM_HST_SQ
|
|
|
@@ -970,32 +971,35 @@
|
|
|
, CD_STYLE
|
|
|
, CD_COLOR
|
|
|
, CD_SIZE
|
|
|
+ , BRAND_CD
|
|
|
, QT_SALE
|
|
|
, AM_ACSALE
|
|
|
, DS_REMARK
|
|
|
, REG_DT
|
|
|
)
|
|
|
- SELECT #{erpGb} AS ERP_GB
|
|
|
+ SELECT #{erpGb} AS ERP_GB
|
|
|
, DT_SALE
|
|
|
, TP_SALE
|
|
|
, CD_STYLE
|
|
|
, CD_COLOR
|
|
|
, CD_SIZE
|
|
|
+ , BRAND_CD
|
|
|
, QT_SALE
|
|
|
, AM_ACSALE
|
|
|
- , 'TEST' AS DS_REMARK
|
|
|
- , NOW() AS REG_DT
|
|
|
+ , '' AS DS_REMARK
|
|
|
+ , NOW() AS REG_DT
|
|
|
FROM (
|
|
|
- SELECT DATE_FORMAT(O.PAY_DT,'%Y%m%d') AS DT_SALE /*판매일자*/
|
|
|
+ SELECT DATE_FORMAT(ODIH.REG_DT,'%Y%m%d') AS DT_SALE /*판매일자(=발생일자)*/
|
|
|
, CASE WHEN ODIH.ORD_DTL_STAT = 'G720_20' THEN '1'
|
|
|
ELSE '2'
|
|
|
- END AS TP_SALE /*판매구분(1:판매, 2:환불)*/
|
|
|
- , ODIH.ITEM_CD AS CD_STYLE /*스타일코드*/
|
|
|
- , ODIH.OPT_CD1 AS CD_COLOR /*색상코드*/
|
|
|
- , ODIH.OPT_CD2 AS CD_SIZE /*사이즈코드*/
|
|
|
+ END AS TP_SALE /*판매구분(1:판매, 2:환불)*/
|
|
|
+ , SUBSTRING(ODIH.SKU_MODEL_NO,1,10) AS CD_STYLE /*ERP스타일코드*/
|
|
|
+ , SUBSTRING(ODIH.SKU_MODEL_NO,11,2) AS CD_COLOR /*ERP색상코드*/
|
|
|
+ , TRIM(SUBSTRING(ODIH.SKU_MODEL_NO,13,3)) AS CD_SIZE /*ERP사이즈코드*/
|
|
|
+ , G.BRAND_CD /*브랜드코드*/
|
|
|
, SUM(CAST(CASE WHEN ODIH.ORD_DTL_STAT = 'G720_20' THEN ODIH.ORD_QTY - ODIH.CNCL_RTN_QTY /*판매-배송중*/
|
|
|
ELSE ODIH.CNCL_RTN_QTY /*환입-반품완료,환입-교환완료*/
|
|
|
- END AS SIGNED INT)) AS QT_SALE /*판매수량*/
|
|
|
+ END AS SIGNED INT)) AS QT_SALE /*판매수량*/
|
|
|
, SUM(CAST(CASE WHEN ODIH.ORD_DTL_STAT = 'G720_20' /*판매-배송중*/ THEN
|
|
|
((ODIH.ORD_QTY - ODIH.CNCL_RTN_QTY) * (CASE WHEN O.MALL_GB = 'G011_20' /*제휴몰*/ THEN
|
|
|
IFNULL(EUP.USAC_PRICE,ODIH.ITEM_PRICE)
|
|
|
@@ -1008,30 +1012,32 @@
|
|
|
ELSE
|
|
|
ODIH.ITEM_PRICE
|
|
|
END))
|
|
|
- END AS SIGNED INT)) AS AM_ACSALE /*실판매금액*/
|
|
|
+ END AS SIGNED INT)) AS AM_ACSALE /*실판매금액*/
|
|
|
FROM TB_ORDER_DETAIL_ITEM_HST ODIH
|
|
|
INNER JOIN TB_ORDER_DETAIL OD ON ODIH.ORD_DTL_NO = OD.ORD_DTL_NO
|
|
|
INNER JOIN TB_ORDER O ON ODIH.ORD_NO = O.ORD_NO
|
|
|
INNER JOIN TB_SUPPLY_COMPANY SC ON OD.SUPPLY_COMP_CD = SC.SUPPLY_COMP_CD
|
|
|
+ INNER JOIN TB_GOODS G ON ODIH.ITEM_CD = G.GOODS_CD
|
|
|
LEFT OUTER JOIN TB_EXTMALL_USAC_PRICE EUP ON ODIH.ORD_DTL_ITEM_HST_SQ = EUP.ORD_DTL_ITEM_HST_SQ
|
|
|
WHERE 1 = 1
|
|
|
AND ODIH.REG_DT <![CDATA[>=]]> DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY)
|
|
|
AND ODIH.REG_DT <![CDATA[<]]> CURRENT_DATE()
|
|
|
AND ODIH.ORD_DTL_STAT IN ('G720_20','G720_50','G720_60') /*판매-배송중, 환입-반품완료, 환입-교환완료*/
|
|
|
<if test='erpGb == "hsmk"'>
|
|
|
- AND OD.SUPPLY_COMP_CD IN (5,4) /*한세MK, FRJ*/
|
|
|
+ AND OD.SUPPLY_COMP_CD = 5 /*한세MK*/
|
|
|
</if>
|
|
|
<if test='erpGb == "hsdr"'>
|
|
|
AND OD.SUPPLY_COMP_CD = 3 /*한세드림*/
|
|
|
</if>
|
|
|
AND SC.DISTRIBUTION_GB IN ('G065_10','G065_11','G065_12') /*자사*/
|
|
|
- GROUP BY DATE_FORMAT(O.PAY_DT,'%Y%m%d')
|
|
|
+ GROUP BY DATE_FORMAT(ODIH.REG_DT,'%Y%m%d')
|
|
|
, CASE WHEN ODIH.ORD_DTL_STAT = 'G720_20' THEN '1'
|
|
|
ELSE '2'
|
|
|
END
|
|
|
- , ODIH.ITEM_CD
|
|
|
- , ODIH.OPT_CD1
|
|
|
- , ODIH.OPT_CD2
|
|
|
+ , SUBSTRING(ODIH.SKU_MODEL_NO,1,10)
|
|
|
+ , SUBSTRING(ODIH.SKU_MODEL_NO,11,2)
|
|
|
+ , TRIM(SUBSTRING(ODIH.SKU_MODEL_NO,13,3))
|
|
|
+ , G.BRAND_CD
|
|
|
) ODIH
|
|
|
WHERE QT_SALE <![CDATA[<>]]> 0
|
|
|
AND NOT EXISTS (SELECT 1
|
|
|
@@ -1045,20 +1051,20 @@
|
|
|
)
|
|
|
</insert>
|
|
|
|
|
|
- <!-- 매출반영 총건수 조회 -->
|
|
|
- <select id="getSalesUploadTotalCount" parameterType="String" resultType="int">
|
|
|
- /* TsbStatistics.getSalesUploadTotalCount */
|
|
|
- SELECT COUNT(*) AS CNT
|
|
|
+ <!-- 매출반영 브랜드 목록 -->
|
|
|
+ <select id="getSalesUploadBrandList" parameterType="String" resultType="String">
|
|
|
+ /* TsbStatistics.getSalesUploadBrandList */
|
|
|
+ SELECT DISTINCT BRAND_CD
|
|
|
FROM TB_HANSAE_SALES
|
|
|
WHERE ERP_GB = #{erpGb}
|
|
|
- AND REG_DT <![CDATA[>=]]> CURRENT_DATE() /*당일에 등록된 넘*/
|
|
|
- AND REG_DT <![CDATA[<]]> DATE_ADD(CURRENT_DATE(), INTERVAL 1 DAY) /*당일에 등록된 넘*/
|
|
|
+ AND DT_SALE = DATE_FORMAT(DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY),'%Y%m%d') /*전일에 등록된 넘*/
|
|
|
+ AND CD_SALEBILL IS NULL /*판매전표가없는넘(=매출반영안했거나 실패한넘)*/
|
|
|
+ ORDER BY BRAND_CD
|
|
|
</select>
|
|
|
|
|
|
<!-- 매출반영 목록 -->
|
|
|
<select id="getSalesUploadList" parameterType="Erp" resultType="paramMap">
|
|
|
/* TsbStatistics.getSalesUploadList */
|
|
|
- <include refid="selectForPagingHeader"/>
|
|
|
SELECT DT_SALE
|
|
|
, TP_SALE
|
|
|
, CD_STYLE
|
|
|
@@ -1069,10 +1075,10 @@
|
|
|
, DS_REMARK
|
|
|
FROM TB_HANSAE_SALES
|
|
|
WHERE ERP_GB = #{erpGb}
|
|
|
- AND REG_DT <![CDATA[>=]]> CURRENT_DATE() /*당일에 등록된 넘*/
|
|
|
- AND REG_DT <![CDATA[<]]> DATE_ADD(CURRENT_DATE(), INTERVAL 1 DAY) /*당일에 등록된 넘*/
|
|
|
+ AND DT_SALE = DATE_FORMAT(DATE_ADD(CURRENT_DATE(), INTERVAL -1 DAY),'%Y%m%d') /*전일에 등록된 넘*/
|
|
|
+ AND BRAND_CD = #{brandCd}
|
|
|
+ AND CD_SALEBILL IS NULL /*판매전표가없는넘(=매출반영안했거나 실패한넘)*/
|
|
|
ORDER BY DT_SALE, TP_SALE, CD_STYLE, CD_COLOR, CD_SIZE
|
|
|
- <include refid="selectForPagingFooter"/>
|
|
|
</select>
|
|
|
|
|
|
<!-- 매출반영I/F번호 조회 -->
|
|
|
@@ -1106,6 +1112,7 @@
|
|
|
UPDATE TB_HANSAE_SALES
|
|
|
SET CD_SALEBILL = #{CD_SALEBILL}
|
|
|
, DS_ERROR = #{DS_ERROR}
|
|
|
+ , NO_IF = CASE WHEN LENGTH(#{DS_ERROR}) > 0 THEN NULL ELSE #{NO_IF} END
|
|
|
, UPD_DT = NOW()
|
|
|
WHERE ERP_GB = #{ERP_GB}
|
|
|
AND NO_IF = #{NO_IF}
|