Преглед изворни кода

Merge branch 'master' of http://112.172.147.34:4936/style24/style24.doc.git

gagamel пре 5 година
родитељ
комит
82dbd07195

+ 158 - 0
산출물/3.설계/05.DB-Object/03.db_function/FN_GET_APPLY_CPN1_ID.sql

@@ -0,0 +1,158 @@
+CREATE DEFINER=`style`@`%` FUNCTION `style`.`FN_GET_APPLY_CPN1_ID`(I_GOODS_CD varchar(50), I_FRONT_GB char) RETURNS int
+BEGIN
+	DECLARE O_RET_VALUE INT;
+	DECLARE O_CURR_PRICE INT;
+	DECLARE O_DC_VAL INT;
+
+	SET O_RET_VALUE = 0;
+	SET O_DC_VAL = 0;
+
+	SELECT CURR_PRICE
+	INTO   O_CURR_PRICE -- 상품금액
+	FROM   TB_GOODS
+	WHERE  GOODS_CD = I_GOODS_CD
+	;
+
+	WITH GOODS_DATA AS (
+		SELECT G.GOODS_CD
+		     , G.CURR_PRICE
+		     , G.BRAND_CD
+		     , G.SUPPLY_COMP_CD
+		FROM   TB_GOODS G
+		WHERE  1=1
+		AND    G.GOODS_CD = I_GOODS_CD
+	)
+	SELECT Y.CPN_ID
+	INTO   O_RET_VALUE
+	FROM (
+		SELECT CP.CPN_ID
+		     , I_FRONT_GB AS FRONT_GB
+		     , CASE WHEN CP.DC_WAY IN ('G240_11')
+		            THEN CASE WHEN CP.MAX_DC_AMT > (Z.CURR_PRICE * CP.DC_PVAL) / 100
+		                      THEN (Z.CURR_PRICE * CP.DC_PVAL) / 100
+		                      ELSE CP.MAX_DC_AMT
+		                      END
+		            ELSE CP.DC_PVAL
+		            END  DC_PVAL
+		     , CASE WHEN CP.DC_WAY IN ('G240_11')
+		            THEN CASE WHEN CP.MAX_DC_AMT > (Z.CURR_PRICE * CP.DC_MVAL) / 100
+		                      THEN (Z.CURR_PRICE * CP.DC_MVAL) / 100
+		                      ELSE CP.MAX_DC_AMT
+		                      END
+		            ELSE CP.DC_MVAL
+		            END  DC_MVAL
+		     , CASE WHEN CP.DC_WAY IN ('G240_11')
+		            THEN CASE WHEN CP.MAX_DC_AMT > (Z.CURR_PRICE * CP.DC_AVAL) / 100
+		                      THEN (Z.CURR_PRICE * CP.DC_AVAL) / 100
+		                      ELSE CP.MAX_DC_AMT
+		                      END
+		            ELSE CP.DC_AVAL
+		            END  DC_AVAL
+		FROM   TB_COUPON CP
+		INNER  JOIN TB_COUPON_CUST_GBN CGB
+		ON     CP.CPN_ID = CGB.CPN_ID
+		AND    CGB.USABLE_CUST_GB IN ('G100_10') -- 일반회원
+		INNER  JOIN TB_COUPON_CUST_GRADE CGR
+		ON     CP.CPN_ID = CGR.CPN_ID
+		AND    CGR.USABLE_CUST_GRADE IN ('G110_10', 'G110_20', 'G110_30', 'G110_40', 'G110_50') -- 전체등급
+		INNER  JOIN (
+			SELECT X.*
+			FROM (
+				SELECT CR.CPN_ID
+				     , GD.GOODS_CD
+				     , GD.CURR_PRICE
+				FROM   TB_COUPON_REFVAL CR
+				INNER  JOIN GOODS_DATA GD
+				ON     GD.GOODS_CD = CR.REF_VAL
+				WHERE  1=1
+				AND    CR.CPN_TARGET = 'G260_10' -- 상품
+				AND    CR.DEL_YN = 'N'
+				UNION
+				SELECT CR.CPN_ID
+				     , GD.GOODS_CD
+				     , GD.CURR_PRICE
+				FROM   (
+					SELECT C4.LEAF_CATE_NO
+					     , CASE WHEN X = 1 THEN 'CATE1_NO'
+					            WHEN X = 2 THEN 'CATE2_NO'
+					            WHEN X = 3 THEN 'CATE3_NO'
+					            WHEN X = 4 THEN 'CATE4_NO'
+					            ELSE 'CATE5_NO'
+					            END  CATE_LVL
+					     , CASE WHEN X = 1 THEN CATE1_NO
+					            WHEN X = 2 THEN CATE2_NO
+					            WHEN X = 3 THEN CATE3_NO
+					            WHEN X = 4 THEN CATE4_NO
+					            ELSE CATE5_NO
+					            END  CATE_NO
+					FROM   TB_CATE_4SRCH C4
+					LEFT   OUTER JOIN (
+						SELECT 1 AS X
+						UNION  ALL
+						SELECT 2 AS X
+						UNION  ALL
+						SELECT 3 AS X
+						UNION  ALL
+						SELECT 4 AS X
+						UNION  ALL
+						SELECT 5 AS X
+					) B
+					ON     1=1
+					WHERE  1=1
+					AND    C4.SITE_CD = 'G000_10'
+					AND    C4.CATE_TYPE = 'G031_10'
+					ORDER  BY LEAF_CATE_NO
+					     , CATE_LVL
+				) C4SRCH
+				INNER  JOIN TB_COUPON_REFVAL CR
+				ON     C4SRCH.CATE_NO = CR.REF_VAL
+				INNER  JOIN TB_CATE_GOODS CG
+				ON     C4SRCH.LEAF_CATE_NO = CG.CATE_NO
+				INNER  JOIN GOODS_DATA GD
+				ON     CG.GOODS_CD = GD.GOODS_CD
+				WHERE  1=1
+				AND    C4SRCH.CATE_NO IS NOT NULL
+				AND    CR.CPN_TARGET = 'G260_11' -- 카테고리
+				AND    CR.DEL_YN = 'N'
+				UNION
+				SELECT CR1.CPN_ID
+				     , GD.GOODS_CD
+				     , GD.CURR_PRICE
+				FROM   GOODS_DATA GD
+				INNER  JOIN TB_COUPON_REFVAL CR1
+				ON     GD.BRAND_CD = CR1.REF_VAL
+				AND    CR1.CPN_TARGET = 'G260_12' -- 브랜드
+				AND    CR1.DEL_YN = 'N'
+				INNER  JOIN TB_COUPON_REFVAL CR2
+				ON     GD.SUPPLY_COMP_CD = CR2.REF_VAL
+				AND    CR2.CPN_TARGET = 'G260_13' -- 공급업체
+				AND    CR2.DEL_YN = 'N'
+			) X
+			LEFT   OUTER JOIN TB_COUPON_REFVAL CR
+			ON     X.CPN_ID = CR.CPN_ID
+			AND    X.GOODS_CD = CR.REF_VAL
+			AND    CR.CPN_TARGET = 'G260_14' -- 쿠폰제외상품
+			AND    CR.DEL_YN = 'N'
+			LEFT   OUTER JOIN TB_COUPON_BAN_GOODS CBG -- 전체제외상품
+			ON     X.GOODS_CD = CBG.GOODS_CD
+			AND    CBG.DEL_YN = 'N'
+			WHERE  1=1
+			AND    CR.CPN_ID IS NULL
+			AND    CBG.CPN_BAN_GOODS_SQ IS NULL
+		) Z
+		ON     Z.CPN_ID = CP.CPN_ID
+		WHERE  1=1
+		AND    CP.SITE_CD = 'G000_10' -- 자사몰
+		AND    CP.CPN_TYPE = 'G230_10' -- 즉시할인
+		AND    CP.DOWN_STDT < CURRENT_TIMESTAMP
+		AND    CP.DOWN_EDDT > CURRENT_TIMESTAMP
+		ORDER  BY (CASE WHEN I_FRONT_GB IN ('P') THEN CP.DC_PVAL
+		                WHEN I_FRONT_GB IN ('M') THEN CP.DC_MVAL
+		                WHEN I_FRONT_GB IN ('A') THEN CP.DC_AVAL
+		                END) DESC
+	) Y
+	LIMIT   1
+	;
+
+	RETURN O_RET_VALUE;
+END

+ 154 - 0
산출물/3.설계/05.DB-Object/03.db_function/FN_GET_APPLY_CPN1_PRICE.sql

@@ -0,0 +1,154 @@
+CREATE DEFINER=`style`@`%` FUNCTION `style`.`FN_GET_APPLY_CPN1_PRICE`(I_GOODS_CD varchar(50), I_FRONT_GB char) RETURNS int
+BEGIN
+	DECLARE O_RET_VALUE INT;
+	DECLARE O_CURR_PRICE INT;
+	DECLARE O_DC_VAL INT;
+
+	SET O_RET_VALUE = 0;
+	SET O_DC_VAL = 0;
+
+	SELECT CURR_PRICE
+	INTO   O_CURR_PRICE -- 상품금액
+	FROM   TB_GOODS
+	WHERE  GOODS_CD = I_GOODS_CD
+	;
+
+	WITH GOODS_DATA AS (
+		SELECT G.GOODS_CD
+		     , G.CURR_PRICE
+		     , G.BRAND_CD
+		     , G.SUPPLY_COMP_CD
+		FROM   TB_GOODS G
+		WHERE  1=1
+		AND    G.GOODS_CD = I_GOODS_CD
+	)
+	SELECT CASE WHEN Y.FRONT_GB IN ('P') THEN Y.DC_PVAL
+	            WHEN Y.FRONT_GB IN ('M') THEN Y.DC_MVAL
+	            WHEN Y.FRONT_GB IN ('A') THEN Y.DC_AVAL
+	            END
+	INTO   O_DC_VAL
+	FROM (
+		SELECT CP.CPN_ID
+		     , I_FRONT_GB AS FRONT_GB
+		     , CASE WHEN CP.DC_WAY IN ('G240_11')
+		            THEN (Z.CURR_PRICE * CP.DC_PVAL) / 100
+		            ELSE CP.DC_PVAL
+		            END  DC_PVAL
+		     , CASE WHEN CP.DC_WAY IN ('G240_11')
+		            THEN (Z.CURR_PRICE * CP.DC_MVAL) / 100
+		            ELSE CP.DC_MVAL
+		            END  DC_MVAL
+		     , CASE WHEN CP.DC_WAY IN ('G240_11')
+		            THEN (Z.CURR_PRICE * CP.DC_AVAL) / 100
+		            ELSE CP.DC_AVAL
+		            END  DC_AVAL
+		FROM   TB_COUPON CP
+		INNER  JOIN TB_COUPON_CUST_GBN CGB
+		ON     CP.CPN_ID = CGB.CPN_ID
+		AND    CGB.USABLE_CUST_GB IN ('G100_10') -- 일반회원
+		INNER  JOIN TB_COUPON_CUST_GRADE CGR
+		ON     CP.CPN_ID = CGR.CPN_ID
+		AND    CGR.USABLE_CUST_GRADE IN ('G110_10', 'G110_20', 'G110_30', 'G110_40', 'G110_50') -- 전체등급
+		INNER  JOIN (
+			SELECT X.*
+			FROM (
+				SELECT CR.CPN_ID
+				     , GD.GOODS_CD
+				     , GD.CURR_PRICE
+				FROM   TB_COUPON_REFVAL CR
+				INNER  JOIN GOODS_DATA GD
+				ON     GD.GOODS_CD = CR.REF_VAL
+				WHERE  1=1
+				AND    CR.CPN_TARGET = 'G260_10' -- 상품
+				AND    CR.DEL_YN = 'N'
+				UNION
+				SELECT CR.CPN_ID
+				     , GD.GOODS_CD
+				     , GD.CURR_PRICE
+				FROM   (
+					SELECT C4.LEAF_CATE_NO
+					     , CASE WHEN X = 1 THEN 'CATE1_NO'
+					            WHEN X = 2 THEN 'CATE2_NO'
+					            WHEN X = 3 THEN 'CATE3_NO'
+					            WHEN X = 4 THEN 'CATE4_NO'
+					            ELSE 'CATE5_NO'
+					            END  CATE_LVL
+					     , CASE WHEN X = 1 THEN CATE1_NO
+					            WHEN X = 2 THEN CATE2_NO
+					            WHEN X = 3 THEN CATE3_NO
+					            WHEN X = 4 THEN CATE4_NO
+					            ELSE CATE5_NO
+					            END  CATE_NO
+					FROM   TB_CATE_4SRCH C4
+					LEFT   OUTER JOIN (
+						SELECT 1 AS X
+						UNION  ALL
+						SELECT 2 AS X
+						UNION  ALL
+						SELECT 3 AS X
+						UNION  ALL
+						SELECT 4 AS X
+						UNION  ALL
+						SELECT 5 AS X
+					) B
+					ON     1=1
+					WHERE  1=1
+					AND    C4.SITE_CD = 'G000_10'
+					AND    C4.CATE_TYPE = 'G031_10'
+					ORDER  BY LEAF_CATE_NO
+					     , CATE_LVL
+				) C4SRCH
+				INNER  JOIN TB_COUPON_REFVAL CR
+				ON     C4SRCH.CATE_NO = CR.REF_VAL
+				INNER  JOIN TB_CATE_GOODS CG
+				ON     C4SRCH.LEAF_CATE_NO = CG.CATE_NO
+				INNER  JOIN GOODS_DATA GD
+				ON     CG.GOODS_CD = GD.GOODS_CD
+				WHERE  1=1
+				AND    C4SRCH.CATE_NO IS NOT NULL
+				AND    CR.CPN_TARGET = 'G260_11' -- 카테고리
+				AND    CR.DEL_YN = 'N'
+				UNION
+				SELECT CR1.CPN_ID
+				     , GD.GOODS_CD
+				     , GD.CURR_PRICE
+				FROM   GOODS_DATA GD
+				INNER  JOIN TB_COUPON_REFVAL CR1
+				ON     GD.BRAND_CD = CR1.REF_VAL
+				AND    CR1.CPN_TARGET = 'G260_12' -- 브랜드
+				AND    CR1.DEL_YN = 'N'
+				INNER  JOIN TB_COUPON_REFVAL CR2
+				ON     GD.SUPPLY_COMP_CD = CR2.REF_VAL
+				AND    CR2.CPN_TARGET = 'G260_13' -- 공급업체
+				AND    CR2.DEL_YN = 'N'
+			) X
+			LEFT   OUTER JOIN TB_COUPON_REFVAL CR
+			ON     X.CPN_ID = CR.CPN_ID
+			AND    X.GOODS_CD = CR.REF_VAL
+			AND    CR.CPN_TARGET = 'G260_14' -- 쿠폰제외상품
+			AND    CR.DEL_YN = 'N'
+			LEFT   OUTER JOIN TB_COUPON_BAN_GOODS CBG -- 전체제외상품
+			ON     X.GOODS_CD = CBG.GOODS_CD
+			AND    CBG.DEL_YN = 'N'
+			WHERE  1=1
+			AND    CR.CPN_ID IS NULL
+			AND    CBG.CPN_BAN_GOODS_SQ IS NULL
+		) Z
+		ON     Z.CPN_ID = CP.CPN_ID
+		WHERE  1=1
+		AND    CP.SITE_CD = 'G000_10' -- 자사몰
+		AND    CP.CPN_TYPE = 'G230_10' -- 즉시할인
+		AND    CP.DOWN_STDT < CURRENT_TIMESTAMP
+		AND    CP.DOWN_EDDT > CURRENT_TIMESTAMP
+		ORDER  BY (CASE WHEN I_FRONT_GB IN ('P') THEN CP.DC_PVAL
+		                WHEN I_FRONT_GB IN ('M') THEN CP.DC_MVAL
+		                WHEN I_FRONT_GB IN ('A') THEN CP.DC_AVAL
+		                END) DESC
+	) Y
+	LIMIT   1
+	;
+
+	SET O_RET_VALUE = O_CURR_PRICE - O_DC_VAL;
+
+	RETURN O_RET_VALUE;
+END

+ 262 - 2
산출물/3.설계/05.DB-Object/06.DDL/table.sql

@@ -1847,7 +1847,8 @@ CREATE TABLE TB_BRAND_GROUP (
   BRAND_GROUP_KNM VARCHAR(50)       NOT NULL COMMENT '브랜드그룹한글명', -- 브랜드그룹한글명
   BRAND_GROUP_ENM VARCHAR(50)       NULL COMMENT '브랜드그룹영문명', -- 브랜드그룹영문명
   DISP_NM_LANG    VARCHAR(2)        NOT NULL DEFAULT 'KR' COMMENT '노출명언어(KR:한글명,EN:영문명)', -- 노출명언어
-  LOGO_FILE_NM    VARCHAR(50)       NULL COMMENT '로고파일명', -- 로고파일명
+  LOGO_FILE_NM    VARCHAR(50)       NULL COMMENT '로고파일명(칼라)', -- 로고파일명
+  BW_LOGO_FILE_NM  VARCHAR(50)       NULL COMMENT '로고파일명(흑백)', -- 로고파일명
   RGB_CD          VARCHAR(10)       NULL COMMENT 'RGB코드', -- RGB코드
   DISP_ORD        SMALLINT UNSIGNED NOT NULL DEFAULT 1 COMMENT '표시순서', -- 표시순서
   DEFAULT_CATE_YN CHAR(1)           NOT NULL DEFAULT 'Y' COMMENT '기본전시카테고리여부(N:별도카테고리)',
@@ -7147,6 +7148,7 @@ CREATE TABLE TB_GOODS_IMG (
   SYS_IMG_NM     VARCHAR(200) NOT NULL  COMMENT '시스템이미지', -- 시스템이미지
   DEFAULT_IMG_YN VARCHAR(1)   NULL COMMENT '대표이미지여부', -- 대표이미지여부
   MOUSEOVER_IMG_YN CHAR(1)    NOT NULL DEFAULT 'N' COMMENT '마우스오버이미지여부', -- 마우스오버이미지여부
+  EXTMALL_IMG_YN CHAR(1)    NOT NULL DEFAULT 'N' COMMENT '외부몰용이미지여부(정사각형)', -- 외부몰용이미지여부(정사각형)
   REG_NO         INT UNSIGNED NOT NULL COMMENT '등록자번호', -- 등록자번호
   REG_DT         TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '등록일시' -- 등록일시
 )
@@ -15046,4 +15048,262 @@ ALTER TABLE TB_VIDEO_DISPLOC
       VIDEO_SQ,    -- 동영상일련번호
       DISPLOC_GB,  -- 노출위치구분
       DISPLOC_VAL  -- 노출위치값
-    );
+    );
+	
+################################################################################
+# 출고처지정 
+################################################################################	
+CREATE TABLE TB_DELIVERY_ASSIGN
+(
+	DELV_ASSIGN_SQ INT UNSIGNED AUTO_INCREMENT COMMENT '출고지정일련번호'
+		PRIMARY KEY,
+	ORD_NO INT UNSIGNED NOT NULL COMMENT '주문번호',
+	ORD_DTL_NO INT UNSIGNED NOT NULL COMMENT '주문상세번호',
+	DELV_LOC_CD VARCHAR(20) NOT NULL COMMENT '출고처코드',
+	ASSIGN_QTY INT NOT NULL COMMENT '지정수량',
+	DELV_AR_GB CHAR NOT NULL COMMENT '출고수락거부구분(P:대기, Y:수락, N:거부)',
+	DELV_AR_NO INT UNSIGNED NULL COMMENT '출고수락거부자ID(사용자)',
+	DELV_AR_DT TIMESTAMP NULL COMMENT '출고수락거부일시',
+	REJECT_REASON VARCHAR(20) NULL COMMENT '거부사유(공통코드G300)',
+	REG_NO INT UNSIGNED NOT NULL COMMENT '등록자NO',
+	REG_DT TIMESTAMP NOT NULL COMMENT '등록일시',
+	UPD_NO INT UNSIGNED NOT NULL COMMENT '수정자NO',
+	UPD_DT TIMESTAMP NOT NULL COMMENT '수정일시'
+)
+COMMENT '출고지정. 자사상품의 출고처 지정/수락/거부에 의한 발생';
+
+CREATE INDEX TB_DELIVERY_ASSIGN_DELV_LOC_CD_IDX
+	ON TB_DELIVERY_ASSIGN (DELV_LOC_CD, DELV_AR_GB);
+
+CREATE INDEX TB_DELIVERY_ASSIGN_ORD_NO_IDX
+	ON TB_DELIVERY_ASSIGN (ORD_NO, ORD_DTL_NO);
+
+################################################################################
+# 출고처지정 HST 
+################################################################################
+CREATE TABLE TB_DELIVERY_ASSIGN_HST
+(
+	DELV_ASSIGN_HST_SQ INT UNSIGNED AUTO_INCREMENT COMMENT '출고지정이력일련번호'
+		PRIMARY KEY,
+	DELV_ASSIGN_SQ INT UNSIGNED NOT NULL COMMENT '출고지정일련번호',
+	ORD_NO INT UNSIGNED NOT NULL COMMENT '주문번호',
+	ORD_DTL_NO INT UNSIGNED NOT NULL COMMENT '주문상세번호',
+	DELV_LOC_CD VARCHAR(20) NOT NULL COMMENT '출고처코드',
+	ASSIGN_QTY INT NOT NULL COMMENT '지정수량',
+	DELV_AR_GB CHAR NOT NULL COMMENT '출고수락거부구분(P:대기, Y:수락, N:거부)',
+	DELV_AR_NO INT UNSIGNED NULL COMMENT '출고수락거부자ID(사용자)',
+	DELV_AR_DT TIMESTAMP NULL COMMENT '출고수락거부일시',
+	REJECT_REASON VARCHAR(20) NULL COMMENT '거부사유(공통코드G300)',
+	REG_NO INT UNSIGNED NOT NULL COMMENT '등록자NO',
+	REG_DT TIMESTAMP NOT NULL COMMENT '등록일시',
+	UPD_NO INT UNSIGNED NOT NULL COMMENT '수정자NO',
+	UPD_DT TIMESTAMP NOT NULL COMMENT '수정일시',
+	HST_REG_DT TIMESTAMP NOT NULL COMMENT '이력등록일시'
+)
+COMMENT '출고지정이력';
+
+CREATE INDEX TB_DELIVERY_ASSIGN_HST_ORD_NO_IDX
+ON TB_DELIVERY_ASSIGN_HST (ORD_NO, ORD_DTL_NO);
+
+################################################################################
+# 출고금지상품 
+################################################################################
+CREATE TABLE TB_DELIVERY_BAN_GOODS
+(
+	DELV_BAN_GOODS_SQ INT UNSIGNED AUTO_INCREMENT COMMENT '출고금지상품일련번호'
+		PRIMARY KEY,
+	DELV_LOC_CD VARCHAR(20) NOT NULL COMMENT '출고처코드',
+	GOODS_CD VARCHAR(20) NOT NULL COMMENT '상품코드',
+	OPT_CD1 VARCHAR(20) NOT NULL COMMENT '옵션1(컬러)',
+	OPT_CD2 VARCHAR(20) NOT NULL COMMENT '옵션2(사이즈)',
+	DELV_BAN_STDT TIMESTAMP NOT NULL COMMENT '출고금지시작일시',
+	DELV_BAN_EDDT TIMESTAMP NOT NULL COMMENT '출고금지종료일시',
+	DEL_YN CHAR NOT NULL DEFAULT 'N' COMMENT '삭제여부(Y:삭제)',
+	REG_NO INT UNSIGNED NOT NULL COMMENT '등록자NO',
+	REG_DT TIMESTAMP NOT NULL COMMENT '등록일시',
+	UPD_NO INT UNSIGNED NOT NULL COMMENT '수정자NO',
+	UPD_DT TIMESTAMP NOT NULL COMMENT '수정일시'
+)
+COMMENT '출고금지상품. 자사상품의 출고금지 등록에 의한 발생';
+
+CREATE INDEX TB_DELIVERY_BAN_GOODS_DELV_BAN_STDT_IDX
+	ON TB_DELIVERY_BAN_GOODS (DELV_BAN_STDT, DELV_BAN_EDDT);
+
+CREATE INDEX TB_DELIVERY_BAN_GOODS_DELV_LOC_CD_IDX
+	ON TB_DELIVERY_BAN_GOODS (DELV_LOC_CD, GOODS_CD, OPT_CD1, OPT_CD2);
+	
+################################################################################
+# ERP 매장별 재고 
+################################################################################
+CREATE TABLE TB_SHOP_GOODS_STOCK
+(
+	SUPPLY_COMP_CD VARCHAR(100) NOT NULL COMMENT '공급업체코드',
+	CD_SHOP VARCHAR(20) NOT NULL COMMENT '매장코드',
+	CD_STYLE VARCHAR(20) NOT NULL COMMENT '스타일코드',
+	CD_COLOR VARCHAR(20) NOT NULL COMMENT '컬러',
+	CD_SIZE VARCHAR(20) NOT NULL COMMENT '사이즈',
+	QT_STOCK INT DEFAULT 0 NOT NULL COMMENT '재고수량',
+	REG_NO INT UNSIGNED NOT NULL COMMENT '등록자',
+	REG_DT TIMESTAMP NOT NULL COMMENT '등록일시',
+	PRIMARY KEY (SUPPLY_COMP_CD, CD_SHOP, CD_STYLE, CD_COLOR, CD_SIZE)
+)
+COMMENT 'ERP 매장별 재고';
+
+################################################################################
+# 총알배송 권역정보 
+################################################################################
+CREATE TABLE TB_DAILY_DELIVERY_ZONE
+(
+	ZIP_NO VARCHAR(6) NOT NULL COMMENT '우편번호',
+	PND_BRAN VARCHAR(7) NULL COMMENT '터미널코드',
+	PND_BRAN_NM VARCHAR(30) NULL COMMENT '지역명',
+	OPER_ABOVE_BRAN VARCHAR(8) NULL,
+	TR_BRAN_NM VARCHAR(30) NULL,
+	CITY_DO VARCHAR(30) NULL COMMENT '시도',
+	GU_GUN VARCHAR(50) NULL COMMENT '구군',
+	DONG_YUP_MEUN VARCHAR(50) NULL COMMENT '동읍면',
+	DELIVERYCLASSCD VARCHAR(20) NOT NULL COMMENT '10:일반 20: 당일',
+	ISUSE VARCHAR(1) NULL COMMENT 'N: 미사용 Y: 사용',
+	DATELASTUPDATE TIMESTAMP NULL COMMENT '수정일',
+	PRIMARY KEY (ZIP_NO, DELIVERYCLASSCD)
+)
+COMMENT '총알배송 권역정보';
+
+################################################################################
+# 배송예외
+################################################################################
+CREATE TABLE TB_ORDER_DELIVERY_EXCEPTION
+(
+	DELIVERY_EXCEPTION_SQ INT UNSIGNED AUTO_INCREMENT COMMENT '배송 예외 일련번호'
+		PRIMARY KEY,
+	IF_DELIVERY_EXCEPTION_NO INT UNSIGNED NOT NULL COMMENT 'WMS 배송 예외 번호',
+	IF_DELIVERY_ORDER_NO INT UNSIGNED NULL COMMENT 'WMS 배송번호',
+	ORD_NO INT UNSIGNED NULL COMMENT '주문번호',
+	DELIVERY_TYPE_CD VARCHAR(20) NULL COMMENT '배송타입(WMS)',
+	IF_STATUS_CD VARCHAR(20) NOT NULL COMMENT 'WMS 상태',
+	PRODUCT_SUMMARY VARCHAR(500) NULL COMMENT '상품써머리',
+	ADMIN_MEMO VARCHAR(2000) NULL COMMENT '관리자 메모',
+	USER_ID_CREATED VARCHAR(50) NULL COMMENT '수정자ID',
+	USER_NAME_CREATED VARCHAR(50) NULL COMMENT '수정자명',
+	DATE_CREATED TIMESTAMP NOT NULL COMMENT '수정일',
+	COMPLTED_YN CHAR NOT NULL COMMENT '처리완료여부(Y:처리완료, N:미처리)',
+	REG_NO INT UNSIGNED NOT NULL COMMENT '등록자NO',
+	REG_DT TIMESTAMP NOT NULL COMMENT '등록일시',
+	UPD_NO INT UNSIGNED NOT NULL COMMENT '수정자NO',
+	UPD_DT TIMESTAMP NOT NULL COMMENT '수정일시'
+)
+COMMENT '배송예외 (WMS에서 재고부족시 IF_TB에 생성)';
+
+CREATE INDEX TB_ORDER_DELIVERY_EXCEPTION_IF_STATUS_CD_IDX
+	ON TB_ORDER_DELIVERY_EXCEPTION (IF_STATUS_CD, DATE_CREATED, COMPLTED_YN);
+	
+################################################################################
+# 배송예외 상세
+################################################################################
+CREATE TABLE TB_ORDER_DELIVERY_EXCEPTION_ITEM
+(
+	DELIVERY_EXCEPTION_ITEM_SQ INT UNSIGNED AUTO_INCREMENT COMMENT '배송 예외 상세 일련번호'
+		PRIMARY KEY,
+	DELIVERY_EXCEPTION_SQ INT UNSIGNED NOT NULL COMMENT '배송 예외 일련번호',
+	IF_DELIVERY_EXCEPTION_ITEM_NO INT UNSIGNED NOT NULL COMMENT 'WMS 배송예외번호',
+	IF_DELIVERY_EXCEPTION_NO INT UNSIGNED NOT NULL COMMENT 'WMS 배송예외상세번호',
+	EXCEPTION_QTY INT NULL COMMENT '예외 수량',
+	REASON_CD VARCHAR(100) NULL COMMENT '사유',
+	ORD_NO INT UNSIGNED NULL COMMENT '주문번호',
+	ORD_DTL_NO INT UNSIGNED NULL COMMENT '주문상세번호',
+	REG_NO INT UNSIGNED NOT NULL COMMENT '등록자NO',
+	REG_DT TIMESTAMP NOT NULL COMMENT '등록일시',
+	UPD_NO INT UNSIGNED NOT NULL COMMENT '수정자NO',
+	UPD_DT TIMESTAMP NOT NULL COMMENT '수정일시'
+)
+COMMENT '배송예외 상세  (WMS에서 재고부족시 IF_TB에 생성)';
+
+CREATE INDEX TB_ORDER_DELIVERY_EXCEPTION_ITEM_DELIVERY_EXCEPTION_SQ_IDX
+	ON TB_ORDER_DELIVERY_EXCEPTION_ITEM (DELIVERY_EXCEPTION_SQ);
+
+CREATE INDEX TB_ORDER_DELIVERY_EXCEPTION_ITEM_IF_DELIVERY_EXCEPTION_NO_IDX
+	ON TB_ORDER_DELIVERY_EXCEPTION_ITEM (IF_DELIVERY_EXCEPTION_NO, IF_DELIVERY_EXCEPTION_ITEM_NO);
+
+CREATE INDEX TB_ORDER_DELIVERY_EXCEPTION_ITEM_ORD_NO_IDX
+	ON TB_ORDER_DELIVERY_EXCEPTION_ITEM (ORD_NO, ORD_DTL_NO);
+	
+################################################################################
+# 회수예외
+################################################################################
+CREATE TABLE TB_ORDER_RECALL_EXCEPTION
+(
+	RECALL_EXCEPTION_NO INT UNSIGNED NOT NULL COMMENT '반품 예외 번호'
+		PRIMARY KEY,
+	DELIVERY_ORDER_NO INT UNSIGNED NULL COMMENT '배송번호',
+	ORDER_NO INT UNSIGNED NULL COMMENT '주문번호',
+	CUSTOMER_NAME VARCHAR(50) NULL COMMENT '고객명',
+	STATUS_CD VARCHAR(20) NULL COMMENT '상태코드',
+	LOGISTICS_NAME VARCHAR(100) NULL COMMENT '택배사명',
+	INVOICE_NO VARCHAR(20) NULL COMMENT '회수송장번호',
+	RECALL_STAT CHAR NULL COMMENT '반품대기처리상태(P:대기 S:완료)',
+	RECALL_STAT_DT TIMESTAMP NULL COMMENT '반품대기처리일시',
+	WMS_SEND_YN CHAR NULL COMMENT 'WMS 전송여부(반품대기처리완료건)Y/N',
+	CHARGE_TYPE VARCHAR(50) NULL COMMENT '요금타입',
+	CHARGE_AMOUNT INT NULL COMMENT '요금총액',
+	USER_ID_CREATED VARCHAR(50) NULL COMMENT '생성자ID',
+	USER_NAME_CREATED VARCHAR(50) NULL COMMENT '생성자명',
+	DATE_CREATED TIMESTAMP NULL COMMENT '생성일자',
+	USER_ID_MODIFIED VARCHAR(50) NULL COMMENT '수정자ID',
+	USER_NAME_MODIFIED VARCHAR(50) NULL COMMENT '수정자명',
+	DATE_LAST_MODIFIED TIMESTAMP NULL COMMENT '수정일자'
+)
+COMMENT '회수예외 (WMS에서 검수시 예외케이스 IF_TB에 생성)';
+
+CREATE INDEX TB_ORDER_RECALL_EXCEPTION_CUSTOMER_NAME_IDX
+	ON TB_ORDER_RECALL_EXCEPTION (CUSTOMER_NAME);
+
+CREATE INDEX TB_ORDER_RECALL_EXCEPTION_DATE_CREATED_IDX
+	ON TB_ORDER_RECALL_EXCEPTION (DATE_CREATED);
+
+CREATE INDEX TB_ORDER_RECALL_EXCEPTION_STATUS_CD_IDX
+	ON TB_ORDER_RECALL_EXCEPTION (STATUS_CD, RECALL_STAT);
+
+################################################################################
+# 회수예외 상세 
+################################################################################
+CREATE TABLE TB_ORDER_RECALL_EXCEPTION_ITEM
+(
+	RECALL_EXCEPTION_ITEM_NO INT UNSIGNED NOT NULL COMMENT '반품예외항목번호'
+		PRIMARY KEY,
+	RECALL_EXCEPTION_NO INT UNSIGNED NULL COMMENT '반품 예외 번호',
+	DELIVERY_ORDER_ITEM_NO INT UNSIGNED NULL COMMENT '배송항목번호',
+	ORDER_DTL_NO INT UNSIGNED NULL COMMENT '주문상세번호',
+	PRODUCT_NO INT UNSIGNED NULL COMMENT '상품번호',
+	PRODUCT_CODE VARCHAR(50) NULL COMMENT '상품코드',
+	PRODUCT_NAME VARCHAR(255) NULL COMMENT '상품명',
+	SKU_CODE VARCHAR(50) NULL COMMENT '옵션코드',
+	SKU_VALUE VARCHAR(100) NULL COMMENT '옵션내용',
+	EXCEPTION_QTY INT NULL COMMENT '예외수량',
+	REASON_CD VARCHAR(100) NULL COMMENT '예외사유'
+)
+COMMENT '회수예외 상세  (WMS에서 검수시 예외케이스 IF_TB에 생성)';
+
+CREATE INDEX TB_ORDER_RECALL_EXCEPTION_ITEM_ORDER_DTL_NO_IDX
+	ON TB_ORDER_RECALL_EXCEPTION_ITEM (ORDER_DTL_NO);
+
+CREATE INDEX TB_ORDER_RECALL_EXCEPTION_ITEM_RECALL_EXCEPTION_NO_IDX
+	ON TB_ORDER_RECALL_EXCEPTION_ITEM (RECALL_EXCEPTION_NO);
+	
+################################################################################
+# 회수예외 메모
+################################################################################
+CREATE TABLE TB_ORDER_RECALL_EXCEPTION_MEMO
+(
+	RECALL_EXCEPTION_MEMO_NO INT UNSIGNED NOT NULL COMMENT '반품 예외메모번호'
+		PRIMARY KEY,
+	RECALL_EXCEPTION_NO INT UNSIGNED NOT NULL COMMENT '반품예외번호',
+	MEMO_TYPE VARCHAR(50) NULL COMMENT '메모타입',
+	ADMIN_MEMO VARCHAR(2000) NULL COMMENT '메모내용',
+	USER_ID_CREATED VARCHAR(50) NULL COMMENT '생성자ID',
+	USER_NAME_CREATED VARCHAR(50) NULL COMMENT '생성자명',
+	DATE_CREATED TIMESTAMP NOT NULL COMMENT '생성일'
+)
+COMMENT '회수예외 메모 (WMS에서 검수시 예외케이스 IF_TB에 생성)';
+
+CREATE INDEX TB_ORDER_RECALL_EXCEPTION_MEMO_RECALL_EXCEPTION_NO_IDX
+	ON TB_ORDER_RECALL_EXCEPTION_MEMO (RECALL_EXCEPTION_NO);

+ 349 - 0
산출물/4.구축/데이터처리/핫딜 가격 적용 및 원복.sql

@@ -0,0 +1,349 @@
+	<!-- 소셜상품 가격정보 원복(before) 업데이트 -->
+	<update id="updateGoodsBeforePriceInfo">
+		/* TsbSocial.updateGoodsBeforePriceInfo */
+		UPDATE TB_GOODS A
+			INNER JOIN TB_SOCIAL_GOODS B ON A.GOODS_CD = B.GOODS_CD 
+			INNER JOIN TB_SOCIAL C ON B.SOCIAL_SQ = C.SOCIAL_SQ 								
+		SET A.GOODS_CD = B.GOODS_CD ,
+		    A.CURR_PRICE = B.CURR_BPRICE,
+		    A.DC_RATE = B.DC_BRATE,
+		    A.UPD_DT = NOW(),
+		    A.UPD_NO = #{updNo}
+		WHERE C.USE_YN = 'Y'
+		  AND C.APPLY_GB = 'A'
+		  AND B.DEL_YN = 'N'
+		  AND C.SOCIAL_EDDT <![CDATA[<=]]> DATE_FORMAT(DATE_ADD(CONCAT(CURRENT_DATE(),' 23:59:59'), INTERVAL 0 DAY), '%Y%m%d%H%i%S')
+	</update>
+	
+	<!-- 원복(before) 상품 이력 생성 -->
+	<insert id="createBeforeGoodsHst" parameterType="Social">
+		/* TsbSocial.createBeforeGoodsHst */
+	 		INSERT INTO TB_GOODS_HST 
+			(   
+				GOODS_CD		
+			  , BRAND_CD
+			  , ITEMKIND_CD
+			  , GOODS_NM
+			  , GOODS_TNM
+			  , GOODS_SNM
+			  , GOODS_SNM1
+			  , MAIN_COLOR_CD
+			  , STYLE_YEAR
+			  , SEASON_CD
+			  , SEX_GB
+			  , GOODS_NUM
+			  , GOODS_TYPE
+			  , TAG_PRICE
+			  , LIST_PRICE
+			  , CURR_PRICE
+			  , CURR_BPRICE
+			  , PRICE_UPD_DT
+			  , COST_PRICE
+			  , DC_RATE
+			  , GOODS_STAT
+			  , SELL_STDT
+			  , SELL_EDDT
+			  , SELF_MALL_YN
+			  , GOODS_GB
+			  , FOREIGN_BUY_YN
+			  , PARALLEL_IMPORT_YN
+			  , ORDER_MADE_YN
+			  , DISTRIBUTION_GB
+			  , SELF_GOODS_YN
+			  , SUPPLY_COMP_CD
+			  , SUPPLY_GOODS_CD
+			  , AGE_GRP_CD
+			  , DELV_FEE_CD
+			  , DELV_FEE
+			  , MIN_ORD_AMT
+			  , PNT_PRATE
+			  , PNT_MRATE
+			  , SELL_FEE_RATE
+			  , FORMAL_GB
+			  , CHANGEABLE_YN
+			  , RETURNABLE_YN
+			  , CHANGE_FEE_FREE_YN
+			  , RETURN_FEE_FREE_YN
+			  , PRE_PPNT_USABLE_YN
+			  , PRE_MPNT_USABLE_YN
+			  , MIN_ORD_QTY
+			  , MAX_ORD_QTY
+			  , DAY_MAX_ORD_QTY
+			  , GIFT_PACK_YN
+			  , FRST_CFRM_DT
+			  , ORIGIN_CD
+			  , MAKE_YMD
+			  , TAX_GB
+			  , ERP_PRICE_LINK_YN
+			  , ERP_STOCK_LINK_YN
+			  , NEW_CUST_ORD_YN
+			  , ADULT_YN
+			  , TOBE_FORM_YN
+			  , REG_NO
+			  , REG_DT
+			  , UPD_NO
+			  , UPD_DT
+			)
+			SELECT GOODS_CD
+				  , BRAND_CD
+				  , ITEMKIND_CD
+				  , GOODS_NM
+				  , GOODS_TNM
+				  , GOODS_SNM
+				  , GOODS_SNM1
+				  , MAIN_COLOR_CD
+				  , STYLE_YEAR
+				  , SEASON_CD
+				  , SEX_GB
+				  , GOODS_NUM
+				  , GOODS_TYPE
+				  , TAG_PRICE
+				  , LIST_PRICE
+				  , CURR_PRICE
+				  , CURR_BPRICE
+				  , PRICE_UPD_DT
+				  , COST_PRICE
+				  , DC_RATE
+				  , GOODS_STAT
+				  , SELL_STDT
+				  , SELL_EDDT
+				  , SELF_MALL_YN
+				  , GOODS_GB
+				  , FOREIGN_BUY_YN
+				  , PARALLEL_IMPORT_YN
+				  , ORDER_MADE_YN
+				  , DISTRIBUTION_GB
+				  , SELF_GOODS_YN
+				  , SUPPLY_COMP_CD
+				  , SUPPLY_GOODS_CD
+				  , AGE_GRP_CD
+				  , DELV_FEE_CD
+				  , DELV_FEE
+				  , MIN_ORD_AMT
+				  , PNT_PRATE
+				  , PNT_MRATE
+				  , SELL_FEE_RATE
+				  , FORMAL_GB
+				  , CHANGEABLE_YN
+				  , RETURNABLE_YN
+				  , CHANGE_FEE_FREE_YN
+				  , RETURN_FEE_FREE_YN
+				  , PRE_PPNT_USABLE_YN
+				  , PRE_MPNT_USABLE_YN
+				  , MIN_ORD_QTY
+				  , MAX_ORD_QTY
+				  , DAY_MAX_ORD_QTY
+				  , GIFT_PACK_YN
+				  , FRST_CFRM_DT
+				  , ORIGIN_CD
+				  , MAKE_YMD
+				  , TAX_GB
+				  , ERP_PRICE_LINK_YN
+				  , ERP_STOCK_LINK_YN
+				  , NEW_CUST_ORD_YN
+				  , ADULT_YN
+				  , TOBE_FORM_YN
+				  , #{regNo}
+			      , now()
+				  , #{updNo}
+				  , now()		    
+			FROM   TB_GOODS
+			WHERE  1 = 1
+			AND    GOODS_CD IN (
+			                    SELECT B.GOODS_CD
+			                    FROM   TB_SOCIAL A
+			                         , TB_SOCIAL_GOODS B
+			                    WHERE  A.SOCIAL_SQ = B.SOCIAL_SQ
+			                    AND    A.USE_YN   = 'Y' 
+			                    AND    A.APPLY_GB = 'A' 
+			                    AND    B.DEL_YN   = 'N' 
+			                    AND    A.SOCIAL_EDDT <![CDATA[<=]]> DATE_FORMAT(DATE_ADD(CONCAT(CURRENT_DATE(),' 23:59:59'), INTERVAL 0 DAY), '%Y%m%d%H%i%S')
+								)
+	</insert>
+	<!-- 소셜 적용 여부 '종료'(적용->종료) 업데이트 -->
+	<update id="updateSocialApplyGbtoF">
+		/* TsbSocial.updateSocialApplyGbtoF */
+		UPDATE TB_SOCIAL
+		SET    APPLY_GB = 'F'	<!-- 종료상태 -->
+		      ,UPD_DT = NOW()
+		      ,UPD_NO = #{updNo}
+		WHERE  APPLY_GB = 'A' 	<!-- 적용상태 -->
+		AND    USE_YN   = 'Y' 	<!-- 사용여부 --> 
+		AND    SOCIAL_EDDT <![CDATA[<=]]> DATE_FORMAT(DATE_ADD(CONCAT(CURRENT_DATE(),' 23:59:59'), INTERVAL 0 DAY), '%Y%m%d%H%i%S')
+	</update>
+	
+	<!-- 상품 가격정보 적용(after) -->
+	<update id="updateGoodsAfterPriceInfo">
+		/* TsbSocial.updateGoodsAfterPriceInfo */
+		UPDATE TB_GOODS A
+				INNER JOIN TB_SOCIAL_GOODS B ON A.GOODS_CD = B.GOODS_CD 
+				INNER JOIN TB_SOCIAL C ON B.SOCIAL_SQ = C.SOCIAL_SQ 								
+		SET A.GOODS_CD = B.GOODS_CD ,
+		    A.CURR_PRICE = B.CURR_APRICE,
+		    A.DC_RATE = B.DC_ARATE,
+		    A.UPD_DT = NOW() ,
+		    A.UPD_NO = #{updNo}
+			WHERE C.USE_YN = 'Y'
+			  AND C.APPLY_GB = 'P'
+			  AND B.DEL_YN = 'N'
+			  AND SOCIAL_STDT <![CDATA[>=]]>  DATE_FORMAT(DATE_ADD(CURRENT_DATE(), INTERVAL 0 DAY), '%Y%m%d%H%i%S')  
+	</update>
+	
+	<!-- 적용(after) 상품 이력 생성 -->
+	<insert id="createAfterGoodsHst">
+		/* TsbSocial.createAfterGoodsHst */
+		INSERT INTO TB_GOODS_HST 
+		(   
+			GOODS_CD		
+		  , BRAND_CD
+		  , ITEMKIND_CD
+		  , GOODS_NM
+		  , GOODS_TNM
+		  , GOODS_SNM
+		  , GOODS_SNM1
+		  , MAIN_COLOR_CD
+		  , STYLE_YEAR
+		  , SEASON_CD
+		  , SEX_GB
+		  , GOODS_NUM
+		  , GOODS_TYPE
+		  , TAG_PRICE
+		  , LIST_PRICE
+		  , CURR_PRICE
+		  , CURR_BPRICE
+		  , PRICE_UPD_DT
+		  , COST_PRICE
+		  , DC_RATE
+		  , GOODS_STAT
+		  , SELL_STDT
+		  , SELL_EDDT
+		  , SELF_MALL_YN
+		  , GOODS_GB
+		  , FOREIGN_BUY_YN
+		  , PARALLEL_IMPORT_YN
+		  , ORDER_MADE_YN
+		  , DISTRIBUTION_GB
+		  , SELF_GOODS_YN
+		  , SUPPLY_COMP_CD
+		  , SUPPLY_GOODS_CD
+		  , AGE_GRP_CD
+		  , DELV_FEE_CD
+		  , DELV_FEE
+		  , MIN_ORD_AMT
+		  , PNT_PRATE
+		  , PNT_MRATE
+		  , SELL_FEE_RATE
+		  , FORMAL_GB
+		  , CHANGEABLE_YN
+		  , RETURNABLE_YN
+		  , CHANGE_FEE_FREE_YN
+		  , RETURN_FEE_FREE_YN
+		  , PRE_PPNT_USABLE_YN
+		  , PRE_MPNT_USABLE_YN
+		  , MIN_ORD_QTY
+		  , MAX_ORD_QTY
+		  , DAY_MAX_ORD_QTY
+		  , GIFT_PACK_YN
+		  , FRST_CFRM_DT
+		  , ORIGIN_CD
+		  , MAKE_YMD
+		  , TAX_GB
+		  , ERP_PRICE_LINK_YN
+		  , ERP_STOCK_LINK_YN
+		  , NEW_CUST_ORD_YN
+		  , ADULT_YN
+		  , TOBE_FORM_YN
+		  , REG_NO
+		  , REG_DT
+		  , UPD_NO
+		  , UPD_DT
+			
+		)
+		SELECT GOODS_CD
+			  , BRAND_CD
+			  , ITEMKIND_CD
+			  , GOODS_NM
+			  , GOODS_TNM
+			  , GOODS_SNM
+			  , GOODS_SNM1
+			  , MAIN_COLOR_CD
+			  , STYLE_YEAR
+			  , SEASON_CD
+			  , SEX_GB
+			  , GOODS_NUM
+			  , GOODS_TYPE
+			  , TAG_PRICE
+			  , LIST_PRICE
+			  , CURR_PRICE
+			  , CURR_BPRICE
+			  , PRICE_UPD_DT
+			  , COST_PRICE
+			  , DC_RATE
+			  , GOODS_STAT
+			  , SELL_STDT
+			  , SELL_EDDT
+			  , SELF_MALL_YN
+			  , GOODS_GB
+			  , FOREIGN_BUY_YN
+			  , PARALLEL_IMPORT_YN
+			  , ORDER_MADE_YN
+			  , DISTRIBUTION_GB
+			  , SELF_GOODS_YN
+			  , SUPPLY_COMP_CD
+			  , SUPPLY_GOODS_CD
+			  , AGE_GRP_CD
+			  , DELV_FEE_CD
+			  , DELV_FEE
+			  , MIN_ORD_AMT
+			  , PNT_PRATE
+			  , PNT_MRATE
+			  , SELL_FEE_RATE
+			  , FORMAL_GB
+			  , CHANGEABLE_YN
+			  , RETURNABLE_YN
+			  , CHANGE_FEE_FREE_YN
+			  , RETURN_FEE_FREE_YN
+			  , PRE_PPNT_USABLE_YN
+			  , PRE_MPNT_USABLE_YN
+			  , MIN_ORD_QTY
+			  , MAX_ORD_QTY
+			  , DAY_MAX_ORD_QTY
+			  , GIFT_PACK_YN
+			  , FRST_CFRM_DT
+			  , ORIGIN_CD
+			  , MAKE_YMD
+			  , TAX_GB
+			  , ERP_PRICE_LINK_YN
+			  , ERP_STOCK_LINK_YN
+			  , NEW_CUST_ORD_YN
+			  , ADULT_YN
+			  , TOBE_FORM_YN
+			  , #{regNo}
+		      , now()
+			  , #{updNo}
+			  , now()		    
+		FROM   TB_GOODS
+		WHERE  1 = 1
+		AND    GOODS_CD IN (
+		                    SELECT B.GOODS_CD
+		                    FROM   TB_SOCIAL A
+		                         , TB_SOCIAL_GOODS B
+		                    WHERE  A.SOCIAL_SQ = B.SOCIAL_SQ
+		                    AND    A.USE_YN   = 'Y' 
+		                    AND    A.APPLY_GB = 'P' 
+		                    AND    B.DEL_YN   = 'N' 
+		                    AND    A.SOCIAL_STDT <![CDATA[>=]]>  DATE_FORMAT(DATE_ADD(CURRENT_DATE(), INTERVAL 0 DAY), '%Y%m%d%H%i%S')
+							)
+	</insert>
+	
+	<!-- 소셜 적용 여부 '적용'(대기->적용) 업데이트 -->
+	<update id="updateSocialApplyGbtoA">
+		/* TsbSocial.updateSocialApplyGbtoA */
+		UPDATE TB_SOCIAL
+		SET    APPLY_GB = 'A',
+		       UPD_DT = NOW(),
+		       UPD_NO = #{updNo} 
+		WHERE  APPLY_GB = 'P' 
+		AND    USE_YN   = 'Y' 
+		AND    SOCIAL_STDT <![CDATA[>=]]>  DATE_FORMAT(DATE_ADD(CURRENT_DATE(), INTERVAL 0 DAY), '%Y%m%d%H%i%S')  
+	</update>

BIN
산출물/4.구축/엑셀샘플/SF001_자사상품등록.xlsx