|
|
@@ -1,13 +1,13 @@
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
<mapper namespace="com.style24.batch.biz.dao.TsbGoodsSearchDao">
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 테이블 삭제 -->
|
|
|
<delete id="deleteGoodsSearchTemp" timeout="600">
|
|
|
/* TsbGoodsSearch.deleteGoodsSearchTemp */
|
|
|
TRUNCATE TABLE TB_GOODS_SEARCH_TEMP
|
|
|
</delete>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 상품기본정보 생성 -->
|
|
|
<insert id="createGoodsSearchTempByGoods" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.createGoodsSearchTempByGoods */
|
|
|
@@ -88,9 +88,9 @@
|
|
|
ELSE NULL END AS SIZE_GB_NM
|
|
|
, DATE_FORMAT(G.SELL_STDT, '%Y-%m-%d %H:%i:%S') AS SELL_STDT
|
|
|
, DATE_FORMAT(G.SELL_EDDT, '%Y-%m-%d %H:%i:%S') AS SELL_EDDT
|
|
|
- , (CASE WHEN G.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'Y' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = G.GOODS_CD AND OPT_CD1 = O.OPT_CD1)
|
|
|
+ , (CASE WHEN G.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'Y' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = G.GOODS_CD AND OPT_CD1 = O.OPT_CD1)
|
|
|
WHEN G.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'N' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = G.GOODS_CD)
|
|
|
- ELSE (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_COMPOSE WHERE GOODS_CD = G.GOODS_CD)
|
|
|
+ ELSE (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_COMPOSE WHERE GOODS_CD = G.GOODS_CD)
|
|
|
END) AS STOCK_QTY
|
|
|
, 'C' AS PROC_GB
|
|
|
FROM TB_GOODS G
|
|
|
@@ -102,7 +102,7 @@
|
|
|
INNER JOIN TB_ITEMKIND I ON G.ITEMKIND_CD = I.ITEMKIND_CD
|
|
|
|
|
|
<if test='procGb != null and procGb == "S" '>
|
|
|
- INNER JOIN (SELECT GOODS_CD, OPT_CD1
|
|
|
+ INNER JOIN (SELECT GOODS_CD, OPT_CD1
|
|
|
FROM TB_GOODS_SEARCH_SECTION_TEMP
|
|
|
WHERE PROC_GB = 'C') ST ON G.GOODS_CD = ST.GOODS_CD
|
|
|
LEFT OUTER JOIN TB_OPTION O ON G.GOODS_CD = O.GOODS_CD
|
|
|
@@ -116,9 +116,9 @@
|
|
|
</if>
|
|
|
WHERE G.SELF_MALL_YN = 'Y' -- 자사몰 노출
|
|
|
AND G.GOODS_STAT = 'G008_90' -- 상품상태 승인완료
|
|
|
- AND NOW() BETWEEN SELL_STDT AND SELL_EDDT -- 현재 판매가능기간
|
|
|
+ AND NOW() BETWEEN SELL_STDT AND SELL_EDDT -- 현재 판매가능기간
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 상품키워드 생성 -->
|
|
|
<update id="updateGoodsSearchTempByKeyword" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempByKeyword */
|
|
|
@@ -133,7 +133,7 @@
|
|
|
SET A.AD_KEYWORD = B.AD_KEYWORD
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 상품이미지 생성 -->
|
|
|
<update id="updateGoodsSearchTempByImage" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempByImage */
|
|
|
@@ -157,7 +157,7 @@
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
AND A.OPT_CD1 = B.COLOR_CD
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 상품 동영상 생성 -->
|
|
|
<update id="updateGoodsSearchTempByVideo" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempByVideo */
|
|
|
@@ -184,7 +184,7 @@
|
|
|
, A.VIDEO_VAL_S = B.VIDEO_VAL_S
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 상품 즉시적용가 생성 -->
|
|
|
<update id="updateGoodsSearchTempByPrice" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempByPrice */
|
|
|
@@ -200,7 +200,7 @@
|
|
|
, A.APP_CURR_PRICE = B.APP_CURR_PRICE
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 상품 아이콘 생성 -->
|
|
|
<update id="updateGoodsSearchTempByIcon" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempByIcon */
|
|
|
@@ -212,7 +212,7 @@
|
|
|
SET A.BENEFIT_GB = B.BENEFIT_GB
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 상품 전시카테 생성 -->
|
|
|
<update id="updateGoodsSearchTempByCate" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempByCate */
|
|
|
@@ -247,7 +247,7 @@
|
|
|
, A.BYBRAND_CATE_NO = B.BYBRAND_CATE_NO
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 자사 옵션정보 생성 -->
|
|
|
<update id="updateGoodsSearchTempBySelfOpt" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempBySelfOpt */
|
|
|
@@ -267,7 +267,7 @@
|
|
|
INNER JOIN TB_COMMON_CODE CC ON C.COLOR_GRP_CD = CC.CD
|
|
|
AND CC.USE_YN = 'Y'
|
|
|
AND CC.CD_GB = 'G072'
|
|
|
-
|
|
|
+
|
|
|
WHERE G.SELF_GOODS_YN = 'Y' /*자사상품*/
|
|
|
GROUP BY G.GOODS_CD, VS.OPT_CD1, C.COLOR_CD, CC.CD_DESC) B
|
|
|
SET A.COLOR_CHIP = B.COLOR_CHIP
|
|
|
@@ -277,19 +277,19 @@
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
AND A.OPT_CD1 = B.OPT_CD1
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 자사 옵션별생삭정보 생성 -->
|
|
|
<update id="updateGoodsSearchTempBySelfColor" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempBySelfColor */
|
|
|
UPDATE TB_GOODS_SEARCH_TEMP A, (SELECT GOODS_CD, GROUP_CONCAT(CONCAT(OPT_CD1,':', OPT_CD1_CHIP)) AS COLOR_CHIPS
|
|
|
- FROM TB_GOODS_SEARCH_TEMP
|
|
|
+ FROM TB_GOODS_SEARCH_TEMP
|
|
|
WHERE SELF_GOODS_YN = 'Y'
|
|
|
AND PROC_GB = 'C'
|
|
|
GROUP BY GOODS_CD) B
|
|
|
SET A.COLOR_CHIPS = B.COLOR_CHIPS
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 입점 옵션정보 생성 -->
|
|
|
<update id="updateGoodsSearchTempBySelfNoOpt" parameterType="String" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchTempBySelfNoOpt */
|
|
|
@@ -299,24 +299,24 @@
|
|
|
FROM TB_GOODS_SEARCH_TEMP G
|
|
|
INNER JOIN VW_STOCK VS ON G.GOODS_CD = VS.GOODS_CD
|
|
|
AND VS.DISP_YN = 'Y'
|
|
|
-
|
|
|
+
|
|
|
WHERE G.SELF_GOODS_YN = 'N' /*입점상품*/
|
|
|
GROUP BY G.GOODS_CD) B
|
|
|
SET A.SIZES = B.SIZES
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 temp 입점 옵션정보 생성 -->
|
|
|
<insert id="updateSessionGroupConcat">
|
|
|
set session group_concat_max_len = 102400;
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 테이블 삭제 -->
|
|
|
<delete id="deleteGoodsSearch" timeout="600">
|
|
|
/* TsbGoodsSearch.deleteGoodsSearch */
|
|
|
DELETE FROM TB_GOODS_SEARCH
|
|
|
</delete>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 테이블 생성 -->
|
|
|
<insert id="createGoodsSearch" timeout="600">
|
|
|
/* TsbGoodsSearch.createGoodsSearch */
|
|
|
@@ -434,13 +434,13 @@
|
|
|
, PROC_GB
|
|
|
FROM TB_GOODS_SEARCH_TEMP
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 TEMP 상품 정보 삭제 -->
|
|
|
<delete id="deleteGoodsSearchSectionTemp" timeout="300">
|
|
|
/* TsbGoodsSearch.deleteGoodsSearchSectionTemp */
|
|
|
DELETE FROM TB_GOODS_SEARCH_SECTION_TEMP
|
|
|
</delete>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 상품추가건 -->
|
|
|
<insert id="createGoodsSearchSectionTempByGoods" timeout="300">
|
|
|
/* TsbGoods.createGoodsSearchSectionTempByGoods */
|
|
|
@@ -449,7 +449,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,'C' AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -462,25 +462,25 @@
|
|
|
AND BG.USE_YN = 'Y'
|
|
|
INNER JOIN TB_GOODS_SUMMARY GS ON G.GOODS_CD = GS.GOODS_CD
|
|
|
INNER JOIN TB_ITEMKIND I ON G.ITEMKIND_CD = I.ITEMKIND_CD
|
|
|
-
|
|
|
+
|
|
|
LEFT OUTER JOIN TB_OPTION O ON G.GOODS_CD = O.GOODS_CD
|
|
|
AND G.SELF_GOODS_YN = 'Y'
|
|
|
WHERE G.SELF_MALL_YN = 'Y' -- 자사몰 노출
|
|
|
AND G.GOODS_STAT = 'G008_90' -- 상품상태 승인완료
|
|
|
- AND NOW() BETWEEN SELL_STDT AND SELL_EDDT -- 현재 판매가능기간
|
|
|
+ AND NOW() BETWEEN SELL_STDT AND SELL_EDDT -- 현재 판매가능기간
|
|
|
AND G.PRICE_UPD_DT >= DATE_ADD(NOW(), INTERVAL -65 MINUTE) -- 가격변경일 65분 이내
|
|
|
) Z
|
|
|
WHERE NOT EXISTS( SELECT 1
|
|
|
FROM TB_GOODS_SEARCH ST
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
- AND ST.PROC_GB = 'C'
|
|
|
- )
|
|
|
+ AND ST.PROC_GB = 'C'
|
|
|
+ )
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = 'C'
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 판매가 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempByPrice" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempByPrice */
|
|
|
@@ -489,7 +489,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,'C' AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -500,7 +500,7 @@
|
|
|
AND G.SELF_GOODS_YN = 'Y'
|
|
|
WHERE G.SELF_MALL_YN = 'Y' -- 자사몰 노출
|
|
|
AND G.GOODS_STAT = 'G008_90' -- 상품상태 승인완료
|
|
|
- AND NOW() BETWEEN SELL_STDT AND SELL_EDDT -- 현재 판매가능기간
|
|
|
+ AND NOW() BETWEEN SELL_STDT AND SELL_EDDT -- 현재 판매가능기간
|
|
|
AND G.PRICE_UPD_DT >= DATE_ADD(NOW(), INTERVAL -65 MINUTE) -- 가격변경일 65분 이내
|
|
|
) Z
|
|
|
WHERE NOT EXISTS( SELECT 1
|
|
|
@@ -513,13 +513,13 @@
|
|
|
FROM TB_GOODS_SEARCH ST
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
- AND ST.PROC_GB = 'C'
|
|
|
- )
|
|
|
+ AND ST.PROC_GB = 'C'
|
|
|
+ )
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = 'C'
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 즉시할인쿠폰 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempByCoupon" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempByCoupon */
|
|
|
@@ -528,7 +528,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,'C' AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -551,18 +551,18 @@
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
AND ST.PROC_GB = 'D'
|
|
|
- )
|
|
|
+ )
|
|
|
AND EXISTS( SELECT 1
|
|
|
FROM TB_GOODS_SEARCH ST
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
- AND ST.PROC_GB = 'C'
|
|
|
- )
|
|
|
+ AND ST.PROC_GB = 'C'
|
|
|
+ )
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = 'C'
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 타이틀 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempByTitle" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempByTitle */
|
|
|
@@ -571,7 +571,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,'C' AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -583,7 +583,7 @@
|
|
|
LEFT OUTER JOIN TB_GOODS B ON A.GOODS_CD = B.GOODS_CD
|
|
|
AND B.SELF_MALL_YN = 'Y' -- 자사몰 노출
|
|
|
AND B.GOODS_STAT = 'G008_90' -- 상품상태 승인완료
|
|
|
- AND NOW() BETWEEN B.SELL_STDT AND B.SELL_EDDT -- 현재 판매가능기간
|
|
|
+ AND NOW() BETWEEN B.SELL_STDT AND B.SELL_EDDT -- 현재 판매가능기간
|
|
|
AND B.UPD_DT >= DATE_ADD(NOW(), INTERVAL -65 MINUTE) -- 가격변경일 65분 이내
|
|
|
) Z
|
|
|
WHERE GOODS_TNM_AS <![CDATA[<>]]> GOODS_TNM
|
|
|
@@ -597,13 +597,13 @@
|
|
|
FROM TB_GOODS_SEARCH ST
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
- AND ST.PROC_GB = 'C'
|
|
|
- )
|
|
|
+ AND ST.PROC_GB = 'C'
|
|
|
+ )
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = 'C'
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 혜택(딱지) 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempByBenefit" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempByBenefit */
|
|
|
@@ -612,7 +612,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,'C' AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -637,13 +637,13 @@
|
|
|
FROM TB_GOODS_SEARCH ST
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
- AND ST.PROC_GB = 'C'
|
|
|
- )
|
|
|
+ AND ST.PROC_GB = 'C'
|
|
|
+ )
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = 'C'
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 자사 옵션정보 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempBySelfOpt" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempBySelfOpt */
|
|
|
@@ -652,7 +652,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,CASE WHEN NULLIF(SIZES,'') IS NULL THEN 'D' ELSE 'C' END AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -660,14 +660,14 @@
|
|
|
, A.OPT_CD1
|
|
|
, A.SIZES AS SIZES_AS
|
|
|
, (SELECT GROUP_CONCAT(DISTINCT CONCAT(VS.OPT_CD2 ,':' ,CASE WHEN VS.SOLDOUT_YN = 'Y' THEN 'Y'
|
|
|
- ELSE CASE WHEN VS.CURR_STOCK_QTY - VS.BASE_STOCK_QTY > 0 THEN 'N'
|
|
|
- ELSE 'Y' END
|
|
|
+ ELSE CASE WHEN VS.CURR_STOCK_QTY - VS.BASE_STOCK_QTY > 0 THEN 'N'
|
|
|
+ ELSE 'Y' END
|
|
|
END) ORDER BY VS.DISP_ORD SEPARATOR ',') AS SIZES
|
|
|
FROM TB_GOODS_SEARCH G
|
|
|
INNER JOIN VW_STOCK VS ON G.GOODS_CD = VS.GOODS_CD
|
|
|
AND G.OPT_CD1 = VS.OPT_CD1
|
|
|
AND VS.DISP_YN = 'Y'
|
|
|
-
|
|
|
+
|
|
|
WHERE G.GOODS_CD = A.GOODS_CD
|
|
|
AND G.OPT_CD1 = A.OPT_CD1
|
|
|
AND G.SELF_GOODS_YN = 'Y' /*자사상품*/
|
|
|
@@ -686,7 +686,7 @@
|
|
|
PROC_GB = (CASE WHEN NULLIF(SIZES,'') IS NULL THEN 'D' ELSE 'C' END)
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 자사 옵션정보 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempBySelfOpt_ORG" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempBySelfOpt_ORG */
|
|
|
@@ -695,7 +695,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,CASE WHEN NULLIF(SIZES,'') IS NULL THEN 'D' ELSE 'C' END AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -712,9 +712,9 @@
|
|
|
INNER JOIN VW_STOCK VS ON G.GOODS_CD = VS.GOODS_CD
|
|
|
AND G.OPT_CD1 = VS.OPT_CD1
|
|
|
AND VS.DISP_YN = 'Y'
|
|
|
-
|
|
|
+
|
|
|
WHERE G.SELF_GOODS_YN = 'Y' /*자사상품*/
|
|
|
- GROUP BY G.GOODS_CD, G.OPT_CD1) B
|
|
|
+ GROUP BY G.GOODS_CD, G.OPT_CD1) B
|
|
|
ON A.GOODS_CD = B.GOODS_CD
|
|
|
AND A.OPT_CD1 = B.OPT_CD1
|
|
|
WHERE A.SELF_GOODS_YN = 'Y' /*자사상품*/
|
|
|
@@ -730,7 +730,7 @@
|
|
|
PROC_GB = (CASE WHEN NULLIF(SIZES,'') IS NULL THEN 'D' ELSE 'C' END)
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 입점 옵션정보 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempBySelfNoOpt" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempBySelfNoOpt */
|
|
|
@@ -739,7 +739,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,CASE WHEN NULLIF(SIZES,'') IS NULL THEN 'D' ELSE 'C' END AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -747,13 +747,13 @@
|
|
|
, A.OPT_CD1
|
|
|
, A.SIZES AS SIZES_AS
|
|
|
, (SELECT GROUP_CONCAT(DISTINCT CONCAT(VS.OPT_CD2 ,':' ,CASE WHEN VS.SOLDOUT_YN = 'Y' THEN 'Y'
|
|
|
- ELSE CASE WHEN VS.CURR_STOCK_QTY - VS.BASE_STOCK_QTY > 0 THEN 'N'
|
|
|
- ELSE 'Y' END
|
|
|
+ ELSE CASE WHEN VS.CURR_STOCK_QTY - VS.BASE_STOCK_QTY > 0 THEN 'N'
|
|
|
+ ELSE 'Y' END
|
|
|
END) ORDER BY VS.DISP_ORD SEPARATOR ',') AS SIZES
|
|
|
FROM TB_GOODS_SEARCH G
|
|
|
INNER JOIN VW_STOCK VS ON G.GOODS_CD = VS.GOODS_CD
|
|
|
AND VS.DISP_YN = 'Y'
|
|
|
-
|
|
|
+
|
|
|
WHERE G.GOODS_CD = A.GOODS_CD
|
|
|
AND G.OPT_CD1 = A.OPT_CD1
|
|
|
AND G.SELF_GOODS_YN = 'N' /*입점상품*/
|
|
|
@@ -768,12 +768,12 @@
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
AND ST.PROC_GB = 'D'
|
|
|
- )
|
|
|
+ )
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = (CASE WHEN NULLIF(SIZES,'') IS NULL THEN 'D' ELSE 'C' END)
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 재고수량 변경건 -->
|
|
|
<insert id="updateGoodsSearchSectionTempByStock" timeout="300">
|
|
|
/* TsbGoods.updateGoodsSearchSectionTempByStock */
|
|
|
@@ -782,26 +782,26 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,'C' AS PROC_GB
|
|
|
FROM (
|
|
|
SELECT A.GOODS_CD
|
|
|
, A.OPT_CD1
|
|
|
, A.STOCK_QTY
|
|
|
- , (CASE WHEN A.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'Y' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = A.GOODS_CD AND OPT_CD1 = A.OPT_CD1)
|
|
|
+ , (CASE WHEN A.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'Y' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = A.GOODS_CD AND OPT_CD1 = A.OPT_CD1)
|
|
|
WHEN A.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'N' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = A.GOODS_CD)
|
|
|
- ELSE (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_COMPOSE WHERE GOODS_CD = A.GOODS_CD)
|
|
|
+ ELSE (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_COMPOSE WHERE GOODS_CD = A.GOODS_CD)
|
|
|
END) AS CHANGE_STOCK_QTY
|
|
|
FROM TB_GOODS_SEARCH A
|
|
|
) Z
|
|
|
WHERE STOCK_QTY <![CDATA[<>]]> CHANGE_STOCK_QTY
|
|
|
-
|
|
|
+
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = 'C'
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 입점 옵션정보 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempBySelfNoOpt_org" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempBySelfNoOpt_org */
|
|
|
@@ -810,7 +810,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
,CASE WHEN NULLIF(SIZES,'') IS NULL THEN 'D' ELSE 'C' END AS PROC_GB
|
|
|
FROM (
|
|
|
@@ -826,9 +826,9 @@
|
|
|
FROM TB_GOODS_SEARCH G
|
|
|
INNER JOIN VW_STOCK VS ON G.GOODS_CD = VS.GOODS_CD
|
|
|
AND VS.DISP_YN = 'Y'
|
|
|
-
|
|
|
+
|
|
|
WHERE G.SELF_GOODS_YN = 'N' /*입점상품*/
|
|
|
- GROUP BY G.GOODS_CD, G.OPT_CD1) B
|
|
|
+ GROUP BY G.GOODS_CD, G.OPT_CD1) B
|
|
|
ON A.GOODS_CD = B.GOODS_CD
|
|
|
WHERE A.SELF_GOODS_YN = 'N' /*입점상품*/
|
|
|
) Z
|
|
|
@@ -838,12 +838,12 @@
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
AND ST.PROC_GB = 'D'
|
|
|
- )
|
|
|
+ )
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = (CASE WHEN NULLIF(SIZES,'') IS NULL THEN 'D' ELSE 'C' END)
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 부분색인용 상품정보 생성 - 상품상태 변경건 -->
|
|
|
<insert id="saveGoodsSearchSectionTempByStat" timeout="300">
|
|
|
/* TsbGoods.saveGoodsSearchSectionTempByStat */
|
|
|
@@ -852,7 +852,7 @@
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
)
|
|
|
- SELECT GOODS_CD
|
|
|
+ SELECT GOODS_CD
|
|
|
,OPT_CD1
|
|
|
<![CDATA[
|
|
|
,CASE WHEN GOODS_STAT <> 'G008_90' THEN 'D'
|
|
|
@@ -881,7 +881,7 @@
|
|
|
, TG.SELL_EDDT
|
|
|
FROM TB_GOODS_SEARCH G
|
|
|
INNER JOIN TB_GOODS TG ON G.GOODS_CD = TG.GOODS_CD
|
|
|
- ) B
|
|
|
+ ) B
|
|
|
ON A.GOODS_CD = B.GOODS_CD
|
|
|
) Z
|
|
|
WHERE (GOODS_STAT_AS <![CDATA[<>]]> GOODS_STAT )
|
|
|
@@ -893,7 +893,7 @@
|
|
|
WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
AND ST.PROC_GB = 'D'
|
|
|
- )
|
|
|
+ )
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
<![CDATA[
|
|
|
PROC_GB = (CASE WHEN GOODS_STAT <> 'G008_90' THEN 'D'
|
|
|
@@ -904,7 +904,95 @@
|
|
|
]]>
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
+
|
|
|
+ <!-- 상품검색 부분색인용 상품정보 생성 - 전시카텍 변경건 -->
|
|
|
+ <insert id="saveGoodsSearchSectionTempByCate" timeout="300">
|
|
|
+ /* TsbGoods.saveGoodsSearchSectionTempByCate */
|
|
|
+ INSERT INTO TB_GOODS_SEARCH_SECTION_TEMP (
|
|
|
+ GOODS_CD
|
|
|
+ , OPT_CD1
|
|
|
+ , PROC_GB
|
|
|
+ )
|
|
|
+ SELECT GOODS_CD
|
|
|
+ ,OPT_CD1
|
|
|
+ ,'C' AS PROC_GB
|
|
|
+ FROM (
|
|
|
+ SELECT A.GOODS_CD
|
|
|
+ , A.OPT_CD1
|
|
|
+ , A.DEFAULT_CATE_YN AS DEFAULT_CATE_YN_AS
|
|
|
+ , A.BRAND_CATE_NO AS BRAND_CATE_NO_AS
|
|
|
+ , A.BYITEM_CATE_NO AS BYITEM_CATE_NO_AS
|
|
|
+ , A.BYBRAND_CATE_NO AS BYBRAND_CATE_NO_AS
|
|
|
+ , B.DEFAULT_CATE_YN AS DEFAULT_CATE_YN
|
|
|
+ , B.BRAND_CATE_NO AS BRAND_CATE_NO
|
|
|
+ , B.BYITEM_CATE_NO AS BYITEM_CATE_NO
|
|
|
+ , B.BYBRAND_CATE_NO AS BYBRAND_CATE_NO
|
|
|
+ FROM TB_GOODS_SEARCH A
|
|
|
+ LEFT OUTER JOIN (SELECT GOODS_CD
|
|
|
+ , MAX(DEFAULT_CATE_YN) AS DEFAULT_CATE_YN
|
|
|
+ , MAX(BRAND_CATE_NO) AS BRAND_CATE_NO
|
|
|
+ , GROUP_CONCAT(DISTINCT BYITEM_CATE_NO) AS BYITEM_CATE_NO
|
|
|
+ , GROUP_CONCAT(DISTINCT BYBRAND_CATE_NO) AS BYBRAND_CATE_NO
|
|
|
+ FROM (
|
|
|
+ SELECT G.GOODS_CD
|
|
|
+ , MAX(BG.DEFAULT_CATE_YN) AS DEFAULT_CATE_YN
|
|
|
+ , MAX(BG.BRAND_CATE_NO) AS BRAND_CATE_NO
|
|
|
+ , CG.CATE_NO AS BYITEM_CATE_NO
|
|
|
+ , 0 AS BYBRAND_CATE_NO
|
|
|
+ FROM TB_GOODS G
|
|
|
+ INNER JOIN TB_BRAND B ON G.BRAND_CD = B.BRAND_CD
|
|
|
+ AND B.USE_YN = 'Y'
|
|
|
+ INNER JOIN TB_BRAND_GROUP BG ON B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
|
|
|
+ AND BG.USE_YN = 'Y'
|
|
|
+ INNER JOIN TB_CATE_GOODS CG ON G.GOODS_CD = CG.GOODS_CD
|
|
|
+ INNER JOIN TB_CATE_4SRCH TCS ON CG.CATE_NO = TCS.LEAF_CATE_NO
|
|
|
+ AND TCS.SITE_CD = 'G000_10' -- 사이트
|
|
|
+ AND TCS.CATE_GB = 'G032_101' -- BY ITEM
|
|
|
+ AND TCS.CATE_TYPE = 'G031_10' -- 카테고리유형
|
|
|
+ GROUP BY G.GOODS_CD, CG.CATE_NO
|
|
|
+ UNION ALL
|
|
|
+ SELECT G.GOODS_CD
|
|
|
+ , MAX(BG.DEFAULT_CATE_YN) AS DEFAULT_CATE_YN
|
|
|
+ , MAX(BG.BRAND_CATE_NO) AS BRAND_CATE_NO
|
|
|
+ , 0 AS BYITEM_CATE_NO
|
|
|
+ , CG.CATE_NO AS BYBRAND_CATE_NO
|
|
|
+ FROM TB_GOODS G
|
|
|
+ INNER JOIN TB_BRAND B ON G.BRAND_CD = B.BRAND_CD
|
|
|
+ AND B.USE_YN = 'Y'
|
|
|
+ INNER JOIN TB_BRAND_GROUP BG ON B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
|
|
|
+ AND BG.USE_YN = 'Y'
|
|
|
+ INNER JOIN TB_CATE_GOODS CG ON G.GOODS_CD = CG.GOODS_CD
|
|
|
+ INNER JOIN TB_CATE_4SRCH TCS ON CG.CATE_NO = TCS.LEAF_CATE_NO
|
|
|
+ AND TCS.SITE_CD = 'G000_10' -- 사이트
|
|
|
+ AND TCS.CATE_GB = 'G032_102' -- BY BRAND
|
|
|
+ AND TCS.CATE_TYPE = 'G031_10' -- 카테고리유형
|
|
|
+ GROUP BY G.GOODS_CD, CG.CATE_NO
|
|
|
+ ) Z
|
|
|
+ GROUP BY GOODS_CD) B ON A.GOODS_CD = B.GOODS_CD
|
|
|
+ ) Z
|
|
|
+ WHERE (DEFAULT_CATE_YN_AS <![CDATA[<>]]> DEFAULT_CATE_YN
|
|
|
+ OR BRAND_CATE_NO_AS <![CDATA[<>]]> BRAND_CATE_NO
|
|
|
+ OR BYITEM_CATE_NO_AS <![CDATA[<>]]> BYITEM_CATE_NO
|
|
|
+ OR BYBRAND_CATE_NO_AS <![CDATA[<>]]> BYBRAND_CATE_NO
|
|
|
+ )
|
|
|
+ AND NOT EXISTS( SELECT 1
|
|
|
+ FROM TB_GOODS_SEARCH_SECTION_TEMP ST
|
|
|
+ WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
+ AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
+ AND ST.PROC_GB = 'D'
|
|
|
+ )
|
|
|
+ AND EXISTS( SELECT 1
|
|
|
+ FROM TB_GOODS_SEARCH ST
|
|
|
+ WHERE ST.GOODS_CD = Z.GOODS_CD
|
|
|
+ AND ST.OPT_CD1 = Z.OPT_CD1
|
|
|
+ AND ST.PROC_GB = 'C'
|
|
|
+ )
|
|
|
+ ON DUPLICATE KEY UPDATE
|
|
|
+ PROC_GB = 'C'
|
|
|
+ , DATA_UPD_DT = NOW()
|
|
|
+ </insert>
|
|
|
+
|
|
|
<!-- 상품검색 temp 상품기본정보 생성 -->
|
|
|
<insert id="updateGoodsSearchSectionByDel" timeout="600">
|
|
|
/* TsbGoods.updateGoodsSearchSectionByDel */
|
|
|
@@ -985,9 +1073,9 @@
|
|
|
ELSE NULL END AS SIZE_GB_NM
|
|
|
, DATE_FORMAT(G.SELL_STDT, '%Y-%m-%d %H:%i:%S') AS SELL_STDT
|
|
|
, DATE_FORMAT(G.SELL_EDDT, '%Y-%m-%d %H:%i:%S') AS SELL_EDDT
|
|
|
- , (CASE WHEN G.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'Y' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = G.GOODS_CD AND OPT_CD1 = ST.OPT_CD1)
|
|
|
+ , (CASE WHEN G.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'Y' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = G.GOODS_CD AND OPT_CD1 = ST.OPT_CD1)
|
|
|
WHEN G.GOODS_TYPE = 'G056_N' AND SELF_GOODS_YN = 'N' THEN (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK WHERE GOODS_CD = G.GOODS_CD)
|
|
|
- ELSE (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_COMPOSE WHERE GOODS_CD = G.GOODS_CD)
|
|
|
+ ELSE (SELECT IFNULL(SUM(CURR_STOCK_QTY - BASE_STOCK_QTY),0) FROM VW_STOCK_COMPOSE WHERE GOODS_CD = G.GOODS_CD)
|
|
|
END) AS STOCK_QTY
|
|
|
, ST.PROC_GB
|
|
|
FROM TB_GOODS_SEARCH_SECTION_TEMP ST
|
|
|
@@ -996,19 +1084,19 @@
|
|
|
INNER JOIN TB_BRAND_GROUP BG ON B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
|
|
|
INNER JOIN TB_GOODS_SUMMARY GS ON ST.GOODS_CD = GS.GOODS_CD
|
|
|
INNER JOIN TB_ITEMKIND I ON G.ITEMKIND_CD = I.ITEMKIND_CD
|
|
|
-
|
|
|
+
|
|
|
WHERE ST.PROC_GB = 'D'
|
|
|
ON DUPLICATE KEY UPDATE
|
|
|
PROC_GB = 'D'
|
|
|
, DATA_UPD_DT = NOW()
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 TB_GOODS_SEARCHS_SECTION 테이블 삭제 -->
|
|
|
<delete id="deleteGoodsSearchSection" timeout="600">
|
|
|
/* TsbGoodsSearch.deleteGoodsSearchSection */
|
|
|
DELETE FROM TB_GOODS_SEARCH_SECTION
|
|
|
</delete>
|
|
|
-
|
|
|
+
|
|
|
<!-- 상품검색 TB_GOODS_SEARCHS_SECTION 테이블 생성 -->
|
|
|
<insert id="createGoodsSearchSection" timeout="600">
|
|
|
/* TsbGoodsSearch.createGoodsSearchSection */
|
|
|
@@ -1126,11 +1214,11 @@
|
|
|
, PROC_GB
|
|
|
FROM TB_GOODS_SEARCH_TEMP
|
|
|
</insert>
|
|
|
-
|
|
|
+
|
|
|
<!-- 부분색인 상품정보 전체색인 에 적용 - PROC_GB: C -->
|
|
|
<update id="updateGoodsSearchAll" timeout="600">
|
|
|
/* TsbGoodsSearch.updateGoodsSearchAll */
|
|
|
- UPDATE TB_GOODS_SEARCH A,
|
|
|
+ UPDATE TB_GOODS_SEARCH A,
|
|
|
(SELECT GOODS_CD
|
|
|
, OPT_CD1
|
|
|
, GOODS_NM
|
|
|
@@ -1186,7 +1274,7 @@
|
|
|
, OPT_CD1_CHIP
|
|
|
, COLOR_CHIPS
|
|
|
, PROC_GB
|
|
|
- FROM TB_GOODS_SEARCH_SECTION
|
|
|
+ FROM TB_GOODS_SEARCH_SECTION
|
|
|
WHERE PROC_GB = 'C'
|
|
|
) B
|
|
|
SET A.GOODS_NM = B.GOODS_NM
|
|
|
@@ -1246,19 +1334,19 @@
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
AND A.OPT_CD1 = B.OPT_CD1
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
<!-- 부분색인 상품정보 전체색인 에 적용 - PROC_GB: D -->
|
|
|
<update id="updateGoodsSearchAllDel" timeout="600">
|
|
|
/* TsbGoodsSearch.updateGoodsSearchAllDel */
|
|
|
UPDATE TB_GOODS_SEARCH A, (SELECT GOODS_CD
|
|
|
, OPT_CD1
|
|
|
, PROC_GB
|
|
|
- FROM TB_GOODS_SEARCH_SECTION
|
|
|
+ FROM TB_GOODS_SEARCH_SECTION
|
|
|
WHERE PROC_GB = 'D'
|
|
|
) B
|
|
|
SET A.PROC_GB = B.PROC_GB
|
|
|
WHERE A.GOODS_CD = B.GOODS_CD
|
|
|
AND A.OPT_CD1 = B.OPT_CD1
|
|
|
</update>
|
|
|
-
|
|
|
+
|
|
|
</mapper>
|