|
|
@@ -513,6 +513,8 @@
|
|
|
, Z.GOODS_TYPE
|
|
|
, Z.SUPPLY_COMP_CD
|
|
|
, Z.DELV_FEE_CD
|
|
|
+ , Z.MIN_ORD_AMT
|
|
|
+ , Z.DELV_FEE
|
|
|
, Z.CART_DELV_FEE_CD
|
|
|
, (Z.CURR_PRICE + SUM(Z.OPT_ADD_PRICE)) * Z.GOODS_QTY AS CURR_PRICE
|
|
|
, (Z.LIST_PRICE + SUM(Z.OPT_ADD_PRICE)) * Z.GOODS_QTY AS LIST_PRICE
|
|
|
@@ -521,119 +523,121 @@
|
|
|
ELSE (Z.CURR_PRICE * Z.GOODS_QTY) * (Z.PNT_MRATE/100) END AS SAVE_PNT_AMT
|
|
|
, SYS_IMG_NM
|
|
|
FROM (SELECT C.CART_SQ
|
|
|
- , C.GOODS_CD
|
|
|
- , C.GOODS_QTY
|
|
|
- , CD.ITEM_CD
|
|
|
- , CD.OPT_CD
|
|
|
- , CD.ITEM_QTY
|
|
|
- , CD.CART_DTL_SQ
|
|
|
- , IFNULL((SELECT COLOR_KNM FROM TB_COLOR C WHERE COLOR_CD = IFNULL(NULLIF(O.OPT_CD1,'') , G.MAIN_COLOR_CD ) AND USE_YN = 'Y'), O.OPT_CD1) AS COLOR_NM
|
|
|
+ , C.GOODS_CD
|
|
|
+ , C.GOODS_QTY
|
|
|
+ , CD.ITEM_CD
|
|
|
+ , CD.OPT_CD
|
|
|
+ , CD.ITEM_QTY
|
|
|
+ , CD.CART_DTL_SQ
|
|
|
+ , IFNULL((SELECT COLOR_KNM FROM TB_COLOR C WHERE COLOR_CD = IFNULL(NULLIF(O.OPT_CD1,'') , G.MAIN_COLOR_CD ) AND USE_YN = 'Y'), O.OPT_CD1) AS COLOR_NM
|
|
|
, O.OPT_CD1
|
|
|
- , O.OPT_CD2
|
|
|
- , G.GOODS_TYPE
|
|
|
- , G.SUPPLY_COMP_CD
|
|
|
- , G.GOODS_NM
|
|
|
- , G.BRAND_CD
|
|
|
- , G.PNT_PRATE
|
|
|
- , G.PNT_MRATE
|
|
|
- , STOCK.SOLDOUT_YN
|
|
|
- , FN_GET_APPLY_CPN1_PRICE(C.GOODS_CD, #{frontGb}) AS CURR_PRICE
|
|
|
+ , O.OPT_CD2
|
|
|
+ , G.GOODS_TYPE
|
|
|
+ , G.SUPPLY_COMP_CD
|
|
|
+ , G.GOODS_NM
|
|
|
+ , G.BRAND_CD
|
|
|
+ , G.PNT_PRATE
|
|
|
+ , G.PNT_MRATE
|
|
|
+ , STOCK.SOLDOUT_YN
|
|
|
+ , FN_GET_APPLY_CPN1_PRICE(C.GOODS_CD, #{frontGb}) AS CURR_PRICE
|
|
|
, G.LIST_PRICE
|
|
|
- , IFNULL(O.ADD_PRICE, 0) AS OPT_ADD_PRICE
|
|
|
- , BR.BRAND_ENM
|
|
|
- , BR.BRAND_KNM
|
|
|
- , CT.CUST_GRADE
|
|
|
- , CASE WHEN GOG.CUST_GRADE IS NOT NULL AND GOG.CUST_GRADE = IFNULL(CT.CUST_GRADE, '') THEN GOG.CUST_GRADE
|
|
|
- WHEN GOG.CUST_GRADE IS NOT NULL THEN 'NO'
|
|
|
- ELSE CT.CUST_GRADE END AS ORDER_GRADE
|
|
|
- , (SELECT SUPPLY_COMP_NM FROM TB_SUPPLY_COMPANY WHERE SUPPLY_COMP_CD = G.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM
|
|
|
- , (SELECT GOODS_NM FROM TB_GOODS WHERE GOODS_CD = CD.ITEM_CD) AS ITEM_NM
|
|
|
- , CASE WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
|
|
|
- ELSE DFP.DELV_FEE_CD END AS DELV_FEE_CD
|
|
|
- , CASE WHEN GQDS.GOODS_CD IS NULL AND G.SELF_GOODS_YN = 'Y' THEN 'SHOT'
|
|
|
- WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
|
|
|
- ELSE DFP.DELV_FEE_CD END AS CART_DELV_FEE_CD
|
|
|
- , CASE WHEN C.CUST_NO > 0 AND (SELECT IFNULL(SUM(OD.ORD_QTY), 0)
|
|
|
- FROM TB_ORDER_DETAIL OD
|
|
|
- INNER JOIN TB_ORDER O
|
|
|
- ON OD.ORD_NO = O.ORD_NO
|
|
|
- WHERE O.CUST_NO = C.CUST_NO
|
|
|
- AND OD.ORD_EXCH_GB = 'O'
|
|
|
- AND OD.ORD_DTL_STAT <![CDATA[ <> ]]> 'G013_00'
|
|
|
- AND OD.ORD_DTL_STAT <![CDATA[ <> ]]> 'G013_98'
|
|
|
- AND OD.ORD_DTL_STAT <![CDATA[ <> ]]> 'G013_99'
|
|
|
- AND OD.GOODS_CD = C.GOODS_CD
|
|
|
- AND DATE(ORD_DT) = CURRENT_DATE) + C.GOODS_QTY > G.DAY_MAX_ORD_QTY THEN 1 ELSE 0 END CUST_TODAY_ORD
|
|
|
- , CASE WHEN C.CUST_NO = 0 AND C.GOODS_QTY > G.DAY_MAX_ORD_QTY THEN 1 ELSE 0 END AS NOCUST_TODAY_ORD
|
|
|
- /*, CASE WHEN G.GOODS_TYPE != 'G056_S' AND G.SELF_GOODS_YN = 'Y' THEN (SELECT SYS_IMG_NM FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = CD.OPT_CD1 AND DEFAULT_IMG_YN = 'Y' LIMIT 1)
|
|
|
- ELSE (SELECT SYS_IMG_NM FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = G.MAIN_COLOR_CD AND DEFAULT_IMG_YN = 'Y' LIMIT 1) END AS SYS_IMG_NM*/
|
|
|
- /* , (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = IFNULL(G.MAIN_COLOR_CD,'XX') AND DEFAULT_IMG_YN = 'Y') AS SYS_IMG_NM */
|
|
|
- , CASE WHEN G.GOODS_TYPE != 'G056_S' AND G.SELF_GOODS_YN = 'Y' THEN (SELECT SYS_IMG_NM FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = CD.OPT_CD1 AND DEFAULT_IMG_YN = 'Y' LIMIT 1)
|
|
|
- ELSE (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = IFNULL(G.MAIN_COLOR_CD,'XX') AND DEFAULT_IMG_YN = 'Y' LIMIT 1) END AS SYS_IMG_NM
|
|
|
- FROM TB_CART C
|
|
|
- INNER JOIN TB_CART_DETAIL CD
|
|
|
- ON C.CART_SQ = CD.CART_SQ
|
|
|
- INNER JOIN TB_GOODS G
|
|
|
- ON C.GOODS_CD = G.GOODS_CD
|
|
|
- INNER JOIN TB_BRAND BR
|
|
|
- ON G.BRAND_CD = BR.BRAND_CD
|
|
|
- INNER JOIN TB_DELV_FEE_POLICY DFP
|
|
|
- ON G.DELV_FEE_CD = DFP.DELV_FEE_CD
|
|
|
- INNER JOIN TB_OPTION O
|
|
|
- ON CD.ITEM_CD = O.GOODS_CD
|
|
|
- AND CD.OPT_CD = O.OPT_CD
|
|
|
- INNER JOIN ( SELECT A.CART_SQ
|
|
|
- , MAX(A.SOLDOUT_YN) AS SOLDOUT_YN
|
|
|
- FROM (SELECT C.CART_SQ
|
|
|
- , CASE WHEN VS.SOLDOUT_YN = 'N' AND VS.CURR_STOCK_QTY >= C.GOODS_QTY * GC.QTY THEN 'N'
|
|
|
- ELSE 'Y' END AS SOLDOUT_YN
|
|
|
- FROM TB_CART C
|
|
|
- INNER JOIN TB_CART_DETAIL CD
|
|
|
- ON C.CART_SQ = CD.CART_SQ
|
|
|
- INNER JOIN TB_GOODS G
|
|
|
- ON C.GOODS_CD = G.GOODS_CD
|
|
|
- INNER JOIN TB_GOODS_COMPOSE GC
|
|
|
- ON C.GOODS_CD = GC.GOODS_CD
|
|
|
- AND CD.ITEM_CD = GC.COMPS_GOODS_CD
|
|
|
- INNER JOIN VW_STOCK VS
|
|
|
- ON CD.ITEM_CD = VS.GOODS_CD
|
|
|
- AND CD.OPT_CD = VS.OPT_CD
|
|
|
- WHERE 1=1
|
|
|
- AND C.CART_GB = 'G026_BC'
|
|
|
- AND G.GOODS_STAT = 'G008_90'
|
|
|
- AND G.SELF_MALL_YN = 'Y'
|
|
|
- <if test="custNo == 0">
|
|
|
- AND C.CUST_NO = 0
|
|
|
- AND C.JSESSION_ID = #{jsessionId}
|
|
|
- </if>
|
|
|
- <if test="custNo != 0">
|
|
|
- AND C.CUST_NO = #{custNo}
|
|
|
- </if>
|
|
|
- UNION ALL
|
|
|
- SELECT C.CART_SQ
|
|
|
- , CASE WHEN VS.SOLDOUT_YN = 'N' AND VS.CURR_STOCK_QTY >= C.GOODS_QTY THEN 'N'
|
|
|
- ELSE 'Y' END AS SOLDOUT_YN
|
|
|
- FROM TB_CART C
|
|
|
- INNER JOIN TB_CART_DETAIL CD
|
|
|
- ON C.CART_SQ = CD.CART_SQ
|
|
|
- INNER JOIN TB_GOODS G
|
|
|
- ON C.GOODS_CD = G.GOODS_CD
|
|
|
- INNER JOIN VW_STOCK VS
|
|
|
- ON C.GOODS_CD = VS.GOODS_CD
|
|
|
- AND CD.OPT_CD = VS.OPT_CD
|
|
|
- WHERE 1=1
|
|
|
- AND C.CART_GB = 'G026_BC'
|
|
|
- AND G.GOODS_STAT = 'G008_90'
|
|
|
- AND G.SELF_MALL_YN = 'Y'
|
|
|
- <if test="custNo == 0">
|
|
|
- AND C.CUST_NO = 0
|
|
|
- AND C.JSESSION_ID = #{jsessionId}
|
|
|
- </if>
|
|
|
- <if test="custNo != 0">
|
|
|
- AND C.CUST_NO = #{custNo}
|
|
|
- </if>
|
|
|
- ) A
|
|
|
- GROUP BY A.CART_SQ
|
|
|
+ , IFNULL(O.ADD_PRICE, 0) AS OPT_ADD_PRICE
|
|
|
+ , BR.BRAND_ENM
|
|
|
+ , BR.BRAND_KNM
|
|
|
+ , CT.CUST_GRADE
|
|
|
+ , DFP.MIN_ORD_AMT
|
|
|
+ , DFP.DELV_FEE
|
|
|
+ , CASE WHEN GOG.CUST_GRADE IS NOT NULL AND GOG.CUST_GRADE = IFNULL(CT.CUST_GRADE, '') THEN GOG.CUST_GRADE
|
|
|
+ WHEN GOG.CUST_GRADE IS NOT NULL THEN 'NO'
|
|
|
+ ELSE CT.CUST_GRADE END AS ORDER_GRADE
|
|
|
+ , (SELECT SUPPLY_COMP_NM FROM TB_SUPPLY_COMPANY WHERE SUPPLY_COMP_CD = G.SUPPLY_COMP_CD) AS SUPPLY_COMP_NM
|
|
|
+ , (SELECT GOODS_NM FROM TB_GOODS WHERE GOODS_CD = CD.ITEM_CD) AS ITEM_NM
|
|
|
+ , CASE WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
|
|
|
+ ELSE DFP.DELV_FEE_CD END AS DELV_FEE_CD
|
|
|
+ , CASE WHEN GQDS.GOODS_CD IS NULL AND G.SELF_GOODS_YN = 'Y' THEN 'SHOT'
|
|
|
+ WHEN G.SELF_GOODS_YN = 'Y' THEN 'WMS'
|
|
|
+ ELSE DFP.DELV_FEE_CD END AS CART_DELV_FEE_CD
|
|
|
+ , CASE WHEN C.CUST_NO > 0 AND (SELECT IFNULL(SUM(OD.ORD_QTY), 0)
|
|
|
+ FROM TB_ORDER_DETAIL OD
|
|
|
+ INNER JOIN TB_ORDER O
|
|
|
+ ON OD.ORD_NO = O.ORD_NO
|
|
|
+ WHERE O.CUST_NO = C.CUST_NO
|
|
|
+ AND OD.ORD_EXCH_GB = 'O'
|
|
|
+ AND OD.ORD_DTL_STAT <![CDATA[ <> ]]> 'G013_00'
|
|
|
+ AND OD.ORD_DTL_STAT <![CDATA[ <> ]]> 'G013_98'
|
|
|
+ AND OD.ORD_DTL_STAT <![CDATA[ <> ]]> 'G013_99'
|
|
|
+ AND OD.GOODS_CD = C.GOODS_CD
|
|
|
+ AND DATE(ORD_DT) = CURRENT_DATE) + C.GOODS_QTY > G.DAY_MAX_ORD_QTY THEN 1 ELSE 0 END CUST_TODAY_ORD
|
|
|
+ , CASE WHEN C.CUST_NO = 0 AND C.GOODS_QTY > G.DAY_MAX_ORD_QTY THEN 1 ELSE 0 END AS NOCUST_TODAY_ORD
|
|
|
+ /*, CASE WHEN G.GOODS_TYPE != 'G056_S' AND G.SELF_GOODS_YN = 'Y' THEN (SELECT SYS_IMG_NM FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = CD.OPT_CD1 AND DEFAULT_IMG_YN = 'Y' LIMIT 1)
|
|
|
+ ELSE (SELECT SYS_IMG_NM FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = G.MAIN_COLOR_CD AND DEFAULT_IMG_YN = 'Y' LIMIT 1) END AS SYS_IMG_NM*/
|
|
|
+ /* , (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = IFNULL(G.MAIN_COLOR_CD,'XX') AND DEFAULT_IMG_YN = 'Y') AS SYS_IMG_NM */
|
|
|
+ , CASE WHEN G.GOODS_TYPE != 'G056_S' AND G.SELF_GOODS_YN = 'Y' THEN (SELECT SYS_IMG_NM FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = CD.OPT_CD1 AND DEFAULT_IMG_YN = 'Y' LIMIT 1)
|
|
|
+ ELSE (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND COLOR_CD = IFNULL(G.MAIN_COLOR_CD,'XX') AND DEFAULT_IMG_YN = 'Y' LIMIT 1) END AS SYS_IMG_NM
|
|
|
+ FROM TB_CART C
|
|
|
+ INNER JOIN TB_CART_DETAIL CD
|
|
|
+ ON C.CART_SQ = CD.CART_SQ
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
+ ON C.GOODS_CD = G.GOODS_CD
|
|
|
+ INNER JOIN TB_BRAND BR
|
|
|
+ ON G.BRAND_CD = BR.BRAND_CD
|
|
|
+ INNER JOIN TB_DELV_FEE_POLICY DFP
|
|
|
+ ON G.DELV_FEE_CD = DFP.DELV_FEE_CD
|
|
|
+ INNER JOIN TB_OPTION O
|
|
|
+ ON CD.ITEM_CD = O.GOODS_CD
|
|
|
+ AND CD.OPT_CD = O.OPT_CD
|
|
|
+ INNER JOIN ( SELECT A.CART_SQ
|
|
|
+ , MAX(A.SOLDOUT_YN) AS SOLDOUT_YN
|
|
|
+ FROM (SELECT C.CART_SQ
|
|
|
+ , CASE WHEN VS.SOLDOUT_YN = 'N' AND VS.CURR_STOCK_QTY >= C.GOODS_QTY * GC.QTY THEN 'N'
|
|
|
+ ELSE 'Y' END AS SOLDOUT_YN
|
|
|
+ FROM TB_CART C
|
|
|
+ INNER JOIN TB_CART_DETAIL CD
|
|
|
+ ON C.CART_SQ = CD.CART_SQ
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
+ ON C.GOODS_CD = G.GOODS_CD
|
|
|
+ INNER JOIN TB_GOODS_COMPOSE GC
|
|
|
+ ON C.GOODS_CD = GC.GOODS_CD
|
|
|
+ AND CD.ITEM_CD = GC.COMPS_GOODS_CD
|
|
|
+ INNER JOIN VW_STOCK VS
|
|
|
+ ON CD.ITEM_CD = VS.GOODS_CD
|
|
|
+ AND CD.OPT_CD = VS.OPT_CD
|
|
|
+ WHERE 1=1
|
|
|
+ AND C.CART_GB = 'G026_BC'
|
|
|
+ AND G.GOODS_STAT = 'G008_90'
|
|
|
+ AND G.SELF_MALL_YN = 'Y'
|
|
|
+ <if test="custNo == 0">
|
|
|
+ AND C.CUST_NO = 0
|
|
|
+ AND C.JSESSION_ID = #{jsessionId}
|
|
|
+ </if>
|
|
|
+ <if test="custNo != 0">
|
|
|
+ AND C.CUST_NO = #{custNo}
|
|
|
+ </if>
|
|
|
+ UNION ALL
|
|
|
+ SELECT C.CART_SQ
|
|
|
+ , CASE WHEN VS.SOLDOUT_YN = 'N' AND VS.CURR_STOCK_QTY >= C.GOODS_QTY THEN 'N'
|
|
|
+ ELSE 'Y' END AS SOLDOUT_YN
|
|
|
+ FROM TB_CART C
|
|
|
+ INNER JOIN TB_CART_DETAIL CD
|
|
|
+ ON C.CART_SQ = CD.CART_SQ
|
|
|
+ INNER JOIN TB_GOODS G
|
|
|
+ ON C.GOODS_CD = G.GOODS_CD
|
|
|
+ INNER JOIN VW_STOCK VS
|
|
|
+ ON C.GOODS_CD = VS.GOODS_CD
|
|
|
+ AND CD.OPT_CD = VS.OPT_CD
|
|
|
+ WHERE 1=1
|
|
|
+ AND C.CART_GB = 'G026_BC'
|
|
|
+ AND G.GOODS_STAT = 'G008_90'
|
|
|
+ AND G.SELF_MALL_YN = 'Y'
|
|
|
+ <if test="custNo == 0">
|
|
|
+ AND C.CUST_NO = 0
|
|
|
+ AND C.JSESSION_ID = #{jsessionId}
|
|
|
+ </if>
|
|
|
+ <if test="custNo != 0">
|
|
|
+ AND C.CUST_NO = #{custNo}
|
|
|
+ </if>
|
|
|
+ ) A
|
|
|
+ GROUP BY A.CART_SQ
|
|
|
) STOCK
|
|
|
ON C.CART_SQ = STOCK.CART_SQ
|
|
|
LEFT OUTER JOIN TB_CUSTOMER CT
|
|
|
@@ -676,6 +680,8 @@
|
|
|
, Z.LIST_PRICE
|
|
|
, Z.SUPPLY_COMP_NM
|
|
|
, Z.DELV_FEE_CD
|
|
|
+ , Z.MIN_ORD_AMT
|
|
|
+ , Z.DELV_FEE
|
|
|
, Z.CART_DELV_FEE_CD
|
|
|
, Z.CURR_PRICE
|
|
|
, Z.PNT_PRATE
|