|
|
@@ -170,10 +170,10 @@
|
|
|
|
|
|
<select id="getQuickWishList" parameterType="WishList" resultType="Goods">
|
|
|
/* TsfWishlist.getQuickWishList*/
|
|
|
- SELECT Z.*
|
|
|
+SELECT Z.*
|
|
|
FROM
|
|
|
(
|
|
|
- WITH TAB_PLAN_GOODS AS (
|
|
|
+ WITH TAB_GOODS AS (
|
|
|
SELECT W.AF_LINK_CD
|
|
|
,W.CONTENTS_LOC
|
|
|
,W.CUST_NO
|
|
|
@@ -207,7 +207,7 @@
|
|
|
AND G.SELF_MALL_YN = 'Y' /*몰노출상품*/
|
|
|
AND B.USE_YN = 'Y'
|
|
|
AND BG.USE_YN = 'Y'
|
|
|
- AND W.CUST_NO = #{custNo}
|
|
|
+ AND W.CUST_NO = #{custNo} /**P*/
|
|
|
AND NOW() BETWEEN G.SELL_STDT AND G.SELL_EDDT
|
|
|
GROUP BY W.AF_LINK_CD
|
|
|
,W.CONTENTS_LOC
|
|
|
@@ -227,62 +227,74 @@
|
|
|
, G.MIN_ORD_QTY /*최소주문수량*/
|
|
|
)
|
|
|
, TAB_GOODS_IMG AS (
|
|
|
- SELECT PG.GOODS_CD
|
|
|
+ SELECT G.GOODS_CD
|
|
|
, MAX(CASE WHEN GI.DEFAULT_IMG_YN = 'Y' THEN GI.SYS_IMG_NM ELSE NULL END) AS SYS_IMG_NM
|
|
|
- FROM TAB_PLAN_GOODS PG
|
|
|
+ FROM TAB_GOODS G
|
|
|
, TB_GOODS_IMG GI
|
|
|
- WHERE PG.GOODS_CD = GI.GOODS_CD
|
|
|
- AND PG.MAIN_COLOR_CD = GI.COLOR_CD
|
|
|
+ WHERE G.GOODS_CD = GI.GOODS_CD
|
|
|
+ AND G.MAIN_COLOR_CD = GI.COLOR_CD
|
|
|
AND (GI.DEFAULT_IMG_YN = 'Y' OR GI.MOUSEOVER_IMG_YN = 'Y')
|
|
|
- GROUP BY PG.GOODS_CD
|
|
|
+ GROUP BY G.GOODS_CD
|
|
|
)
|
|
|
, TAB_STOCK AS (
|
|
|
- SELECT PG.GOODS_CD
|
|
|
- , SUM(case WHEN S.SOLDOUT_YN = 'Y' THEN 0
|
|
|
+ SELECT G.GOODS_CD
|
|
|
+ , SUM(CASE WHEN S.SOLDOUT_YN = 'Y' THEN 0
|
|
|
ELSE S.CURR_STOCK_QTY - S.BASE_STOCK_QTY END ) AS STOCK_QTY_SUM
|
|
|
, MIN(CASE WHEN S.SOLDOUT_YN = 'N' THEN S.OPT_CD ELSE 'XXX' END) AS OPT_CD
|
|
|
- FROM TAB_PLAN_GOODS PG
|
|
|
+ FROM TAB_GOODS G
|
|
|
, VW_STOCK S
|
|
|
- WHERE PG.GOODS_CD = S.GOODS_CD
|
|
|
- AND PG.GOODS_TYPE = 'G056_N'
|
|
|
+ WHERE G.GOODS_CD = S.GOODS_CD
|
|
|
+ AND G.GOODS_TYPE = 'G056_N'
|
|
|
AND S.DISP_YN = 'Y' /*노출하는상품만*/
|
|
|
- GROUP BY PG.GOODS_CD
|
|
|
+ GROUP BY G.GOODS_CD
|
|
|
UNION ALL
|
|
|
- SELECT PG.GOODS_CD
|
|
|
- , SUM(CASE WHEN S.SOLDOUT_YN = 'Y' THEN 0
|
|
|
- ELSE S.CURR_STOCK_QTY - S.BASE_STOCK_QTY END ) AS STOCK_QTY_SUM
|
|
|
- , MIN(CASE WHEN S.SOLDOUT_YN = 'N' THEN S.OPT_CD ELSE 'XXX' END) AS OPT_CD
|
|
|
- FROM TAB_PLAN_GOODS PG
|
|
|
- , VW_STOCK_COMPOSE S
|
|
|
- WHERE PG.GOODS_CD = S.GOODS_CD
|
|
|
- AND PG.GOODS_TYPE != 'G056_N'
|
|
|
- AND S.DISP_YN = 'Y' /*노출하는상품만*/
|
|
|
- GROUP BY PG.GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
+ , SUM(CASE WHEN SOLDOUT_YN = 'Y' THEN 0
|
|
|
+ ELSE CURR_STOCK_QTY END ) AS STOCK_QTY_SUM
|
|
|
+ , GROUP_CONCAT(DISTINCT OPT_CD) AS OPT_CD
|
|
|
+ FROM (
|
|
|
+ SELECT G.GOODS_CD
|
|
|
+ , GC.COMPS_GOODS_CD
|
|
|
+ , S.OPT_CD
|
|
|
+ , S.SOLDOUT_YN
|
|
|
+ , S.CURR_STOCK_QTY - S.BASE_STOCK_QTY AS CURR_STOCK_QTY
|
|
|
+ , RANK()
|
|
|
+ OVER (PARTITION BY G.GOODS_CD ,GC.COMPS_GOODS_CD ORDER BY S.SOLDOUT_YN, S.CURR_STOCK_QTY DESC , S.OPT_CD) AS NUMB
|
|
|
+ FROM TAB_GOODS G
|
|
|
+ , TB_GOODS_COMPOSE GC
|
|
|
+ , VW_STOCK S
|
|
|
+ WHERE 1 = 1
|
|
|
+ AND G.GOODS_CD = GC.GOODS_CD
|
|
|
+ AND GC.COMPS_GOODS_CD = S.GOODS_CD
|
|
|
+ AND G.GOODS_TYPE IN ('G056_D','G056_S')
|
|
|
+ AND S.DISP_YN = 'Y' /*노출하는상품만*/
|
|
|
+ ) Z
|
|
|
+ WHERE NUMB = 1
|
|
|
+ GROUP BY GOODS_CD
|
|
|
)
|
|
|
SELECT
|
|
|
- PG.BRAND_GROUP_NM
|
|
|
- , PG.GOODS_CD
|
|
|
- , PG.MIN_ORD_QTY
|
|
|
- , PG.GOODS_TYPE
|
|
|
- , FN_GET_GOODS_NM(PG.GOODS_NM,PG.GOODS_GB,PG.FOREIGN_BUY_YN,PG.PARALLEL_IMPORT_YN,PG.ORDER_MADE_YN) AS GOODS_FULL_NM /*상품FULL명*/
|
|
|
- , PG.GOODS_NM
|
|
|
- , PG.GOODS_TNM
|
|
|
- , PG.MAIN_COLOR_CD
|
|
|
- , PG.LIST_PRICE
|
|
|
- , PG.AF_LINK_CD
|
|
|
- , PG.CONTENTS_LOC
|
|
|
- , PG.CUST_NO
|
|
|
- , PG.REG_DT
|
|
|
- , FN_GET_BENEFIT_PRICE( 'P' /**P*/,PG.GOODS_CD,PG.CURR_PRICE, 'G100_10' /**P*/) AS CURR_PRICE /*현재판매가*/
|
|
|
+ G.BRAND_GROUP_NM
|
|
|
+ , G.GOODS_CD
|
|
|
+ , G.MIN_ORD_QTY
|
|
|
+ , G.GOODS_TYPE
|
|
|
+ , FN_GET_GOODS_NM(G.GOODS_NM,G.GOODS_GB,G.FOREIGN_BUY_YN,G.PARALLEL_IMPORT_YN,G.ORDER_MADE_YN) AS GOODS_FULL_NM /*상품FULL명*/
|
|
|
+ , G.GOODS_NM
|
|
|
+ , G.GOODS_TNM
|
|
|
+ , G.MAIN_COLOR_CD
|
|
|
+ , G.LIST_PRICE
|
|
|
+ , G.AF_LINK_CD
|
|
|
+ , G.CONTENTS_LOC
|
|
|
+ , G.CUST_NO
|
|
|
+ , G.REG_DT
|
|
|
+ , FN_GET_BENEFIT_PRICE( 'P' ,G.GOODS_CD,G.CURR_PRICE, 'G100_10' ) AS CURR_PRICE /*현재판매가*/
|
|
|
, GI.SYS_IMG_NM
|
|
|
, S.STOCK_QTY_SUM
|
|
|
, S.OPT_CD
|
|
|
- FROM TAB_PLAN_GOODS PG
|
|
|
- INNER JOIN TAB_GOODS_IMG GI ON PG.GOODS_CD = GI.GOODS_CD
|
|
|
- LEFT OUTER JOIN TAB_STOCK S ON PG.GOODS_CD = S.GOODS_CD
|
|
|
+ , (SELECT GROUP_CONCAT(COMPS_GOODS_CD) FROM TB_GOODS_COMPOSE WHERE GOODS_CD = G.GOODS_CD) AS COMPS_GOODS_CD
|
|
|
+ FROM TAB_GOODS G
|
|
|
+ INNER JOIN TAB_GOODS_IMG GI ON G.GOODS_CD = GI.GOODS_CD
|
|
|
+ LEFT OUTER JOIN TAB_STOCK S ON G.GOODS_CD = S.GOODS_CD
|
|
|
)Z
|
|
|
- ORDER BY Z.STOCK_QTY_SUM ASC,Z.REG_DT DESC
|
|
|
+ ORDER BY FIELD(Z.STOCK_QTY_SUM, 1, 2 ,3 ,4 ,5) DESC ,Z.REG_DT DESC
|
|
|
</select>
|
|
|
-
|
|
|
-
|
|
|
</mapper>
|