|
@@ -233,38 +233,30 @@
|
|
|
AND SITE_CD = #{siteCd}
|
|
AND SITE_CD = #{siteCd}
|
|
|
AND USE_YN = 'Y') AS BRAND_CATE1_NO
|
|
AND USE_YN = 'Y') AS BRAND_CATE1_NO
|
|
|
FROM TB_GOODS G
|
|
FROM TB_GOODS G
|
|
|
- , TB_BRAND B
|
|
|
|
|
- , TB_COLOR C
|
|
|
|
|
- , (SELECT GOODS_CD
|
|
|
|
|
- , MAX(CASE WHEN SOLDOUT_YN = 'Y' THEN 0
|
|
|
|
|
- WHEN UPPER(NVL(#{isApp},'FALSE')) = 'TRUE' THEN CURR_APP_STOCK_QTY
|
|
|
|
|
- WHEN #{frontGb} = 'M' THEN CURR_MO_STOCK_QTY
|
|
|
|
|
- ELSE CURR_PC_STOCK_QTY
|
|
|
|
|
- END) AS STOCK_QTY
|
|
|
|
|
- FROM VW_STOCK
|
|
|
|
|
- WHERE SOLDOUT_YN = 'N'
|
|
|
|
|
- GROUP BY GOODS_CD) S
|
|
|
|
|
- , (SELECT GOODS_CD
|
|
|
|
|
- , MAX(CASE WHEN SOLDOUT_YN = 'Y' THEN 0
|
|
|
|
|
- WHEN UPPER(NVL(#{isApp},'FALSE')) = 'TRUE' THEN CURR_APP_STOCK_QTY
|
|
|
|
|
- WHEN #{frontGb} = 'M' THEN CURR_MO_STOCK_QTY
|
|
|
|
|
- ELSE CURR_PC_STOCK_QTY
|
|
|
|
|
- END) AS STOCK_QTY
|
|
|
|
|
- FROM VW_STOCK_COMPOSE
|
|
|
|
|
- WHERE SOLDOUT_YN = 'N'
|
|
|
|
|
- GROUP BY GOODS_CD) S1
|
|
|
|
|
|
|
+ INNER JOIN TB_BRAND B ON G.BRAND_CD = B.BRAND_CD
|
|
|
|
|
+ AND B.USE_YN = 'Y'
|
|
|
|
|
+ LEFT OUTER JOIN (SELECT GOODS_CD
|
|
|
|
|
+ , MAX(CASE WHEN SOLDOUT_YN = 'Y' THEN 0
|
|
|
|
|
+ ELSE CURR_STOCK_QTY
|
|
|
|
|
+ END) AS STOCK_QTY
|
|
|
|
|
+ FROM VW_STOCK
|
|
|
|
|
+ WHERE SOLDOUT_YN = 'N'
|
|
|
|
|
+ GROUP BY GOODS_CD) S ON G.GOODS_CD = S.GOODS_CD
|
|
|
|
|
+ LEFT OUTER JOIN (SELECT GOODS_CD
|
|
|
|
|
+ , MAX(CASE WHEN SOLDOUT_YN = 'Y' THEN 0
|
|
|
|
|
+ ELSE CURR_STOCK_QTY
|
|
|
|
|
+ END) AS STOCK_QTY
|
|
|
|
|
+ FROM VW_STOCK_COMPOSE
|
|
|
|
|
+ WHERE SOLDOUT_YN = 'N'
|
|
|
|
|
+ GROUP BY GOODS_CD) S1 G.GOODS_CD = S1.GOODS_CD
|
|
|
WHERE G.GOODS_NUM = (SELECT GOODS_NUM FROM TB_GOODS WHERE GOODS_CD = #{goodsCd})
|
|
WHERE G.GOODS_NUM = (SELECT GOODS_NUM FROM TB_GOODS WHERE GOODS_CD = #{goodsCd})
|
|
|
AND G.GOODS_TYPE = 'G056_N' -- 일반상품
|
|
AND G.GOODS_TYPE = 'G056_N' -- 일반상품
|
|
|
-- AND G.SELF_MALL_YN = 'Y' -- 자사몰 노출
|
|
-- AND G.SELF_MALL_YN = 'Y' -- 자사몰 노출
|
|
|
- AND G.BRAND_CD = B.BRAND_CD
|
|
|
|
|
- AND B.USE_YN = 'Y'
|
|
|
|
|
- AND G.GOODS_CD = S.GOODS_CD(+)
|
|
|
|
|
- AND G.GOODS_CD = S1.GOODS_CD(+)
|
|
|
|
|
- <if test='goodsCdincludeYn != null and goodsCdincludeYn == "N"'>
|
|
|
|
|
|
|
+ <if test='goodsCdIncludeYn != null and goodsCdIncludeYn == "N"'>
|
|
|
AND G.GOODS_CD <![CDATA[<>]]> #{goodsCd}
|
|
AND G.GOODS_CD <![CDATA[<>]]> #{goodsCd}
|
|
|
</if>
|
|
</if>
|
|
|
<if test='adminYn == null or adminYn != "Y"'>
|
|
<if test='adminYn == null or adminYn != "Y"'>
|
|
|
- AND G.GOODS_STAT = '90'
|
|
|
|
|
|
|
+ AND G.GOODS_STAT = 'G008_90'
|
|
|
</if>
|
|
</if>
|
|
|
) Z
|
|
) Z
|
|
|
WHERE 1 = 1
|
|
WHERE 1 = 1
|
|
@@ -273,7 +265,51 @@
|
|
|
</if>
|
|
</if>
|
|
|
ORDER BY Z.COLOR_CD
|
|
ORDER BY Z.COLOR_CD
|
|
|
</select>
|
|
</select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 상품 동영상정보 -->
|
|
|
|
|
+ <select id="getVideoList" parameterType="String" resultType="VideoDisploc">
|
|
|
|
|
+ /* TsfGoods.getVideoList */
|
|
|
|
|
+ SELECT A.VIDEO_SQ
|
|
|
|
|
+ , A.DISPLOC_VAL
|
|
|
|
|
+ , B.VIDEO_GB
|
|
|
|
|
+ , B.VIDEO_VAL
|
|
|
|
|
+ FROM TB_VIDEO_DISPLOC A
|
|
|
|
|
+ INNER JOIN TB_VIDEO B ON A.VIDEO_SQ = B.VIDEO_SQ
|
|
|
|
|
+ AND B.DISP_YN = 'Y'
|
|
|
|
|
+ WHERE A.DISPLOC_GB = 'G'
|
|
|
|
|
+ AND A.DISPLOC_VAL = #{goodsCd}
|
|
|
|
|
+ AND A.DISP_YN = 'Y'
|
|
|
|
|
+ ORDER BY A.VIDEO_SQ DESC
|
|
|
|
|
+ </select>
|
|
|
|
|
|
|
|
|
|
+ <!-- 상품 고시정보 목록 -->
|
|
|
|
|
+ <select id="getGoodsNotiList" parameterType="Goods" resultType="GoodsNotiInfo">
|
|
|
|
|
+ /* TsfGoods.getGoodsNotiList */
|
|
|
|
|
+ SELECT A.GOODS_CD
|
|
|
|
|
+ , A.NI_CLSF_CD
|
|
|
|
|
+ , A.NI_ITEM_CD
|
|
|
|
|
+ , FN_GET_CODE_NM('G005',A.NI_ITEM_CD) AS NI_ITEM_NM
|
|
|
|
|
+ , A.NI_CONTENT
|
|
|
|
|
+ , A.DISP_ORD
|
|
|
|
|
+ FROM TB_GOODS_NOTI_INFO A
|
|
|
|
|
+ WHERE A.GOODS_CD = #{goodsCd}
|
|
|
|
|
+ ORDER BY A.DISP_ORD
|
|
|
|
|
+ </select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 상품 이미지 정보 -->
|
|
|
|
|
+ <select id="getGoodsImg" parameterType="String" resultType="GoodsImg">
|
|
|
|
|
+ /* TsfGoods.getGoodsImg */
|
|
|
|
|
+ SELECT GOODS_CD
|
|
|
|
|
+ , COLOR_CD
|
|
|
|
|
+ , DISP_ORD
|
|
|
|
|
+ , SYS_IMG_NM
|
|
|
|
|
+ , DEFAULT_IMG_YN
|
|
|
|
|
+ , MOUSEOVER_IMG_YN
|
|
|
|
|
+ , REG_NO
|
|
|
|
|
+ FROM TB_GOODS_IMG
|
|
|
|
|
+ WHERE GOODS_CD = #{goodsCd}
|
|
|
|
|
+ ORDER BY DISP_ORD
|
|
|
|
|
+ </select>
|
|
|
|
|
|
|
|
<!-- 구성 상품 정보 -->
|
|
<!-- 구성 상품 정보 -->
|
|
|
<select id="getGoodsCompsInfo" parameterType="Goods" resultType="Goods">
|
|
<select id="getGoodsCompsInfo" parameterType="Goods" resultType="Goods">
|
|
@@ -313,4 +349,51 @@
|
|
|
WHERE VS.GOODS_CD = #{goodsCd}
|
|
WHERE VS.GOODS_CD = #{goodsCd}
|
|
|
AND VS.OPT_CD = #{optCd}
|
|
AND VS.OPT_CD = #{optCd}
|
|
|
</select>
|
|
</select>
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 무이자 혜택안내 -->
|
|
|
|
|
+ <select id="getCardPromotionList" parameterType="CardPromotion" resultType="CardPromotion">
|
|
|
|
|
+ /* TsfGoods.getCardPromotionList */
|
|
|
|
|
+ SELECT *
|
|
|
|
|
+ FROM (
|
|
|
|
|
+ SELECT A.CARD_PRMT_SQ
|
|
|
|
|
+ , A.PRMT_NM
|
|
|
|
|
+ , A.PRMT_GB
|
|
|
|
|
+ , A.DC_GB
|
|
|
|
|
+ , A.LINK_URL
|
|
|
|
|
+ , A.NOTE
|
|
|
|
|
+ , B.CARD_PRMT_CDT_SQ
|
|
|
|
|
+ , B.MIN_PAY_AMT
|
|
|
|
|
+ , B.MAX_NO_ITRT
|
|
|
|
|
+ , B.MIN_NO_ITRT
|
|
|
|
|
+ , B.DC_WAY
|
|
|
|
|
+ , B.DC_VAL
|
|
|
|
|
+ , C.PRMT_TARGET_CD
|
|
|
|
|
+ , D.CD_NM
|
|
|
|
|
+ , RANK() OVER(PARTITION BY A.PRMT_GB, A.DC_GB ORDER BY A.CARD_PRMT_SQ , B.CARD_PRMT_CDT_SQ, C.PRMT_TARGET_CD DESC) RNUM
|
|
|
|
|
+ FROM TB_CARD_PROMOTION A
|
|
|
|
|
+ INNER JOIN TB_CARD_PROMOTION_CONDITION B ON A.CARD_PRMT_SQ = B.CARD_PRMT_SQ
|
|
|
|
|
+ INNER JOIN TB_CARD_PROMOTION_TARGET C ON B.CARD_PRMT_CDT_SQ = C.CARD_PRMT_CDT_SQ
|
|
|
|
|
+ INNER JOIN TB_COMMON_CODE D ON C.PRMT_TARGET_CD = D.CD
|
|
|
|
|
+ AND D.CD_GB = 'G941'
|
|
|
|
|
+ AND D.USE_YN ='Y'
|
|
|
|
|
+ WHERE NOW() BETWEEN A.PRMT_STD AND A.PRMT_EDD
|
|
|
|
|
+ AND A.DISP_YN = 'Y'
|
|
|
|
|
+ <if test="prmtGb != null and prmtGb != '' ">
|
|
|
|
|
+ AND A.PRMT_GB = #{prmtGb} -- A:프로모션, B:무이자
|
|
|
|
|
+ </if>
|
|
|
|
|
+ <if test='prmtGb != null and prmtGb == "A" '>
|
|
|
|
|
+ <choose>
|
|
|
|
|
+ <when test='dcGb != null and dcGb=="3"'>
|
|
|
|
|
+ AND A.DC_GB IN ('3')
|
|
|
|
|
+ </when>
|
|
|
|
|
+ <otherwise>
|
|
|
|
|
+ AND A.DC_GB IN ('1','2')
|
|
|
|
|
+ </otherwise>
|
|
|
|
|
+ </choose>
|
|
|
|
|
+ </if>
|
|
|
|
|
+ ) A
|
|
|
|
|
+ <if test="rownum != null and rownum > 0 ">
|
|
|
|
|
+ LIMIT 1
|
|
|
|
|
+ </if>
|
|
|
|
|
+ </select>
|
|
|
</mapper>
|
|
</mapper>
|