Просмотр исходного кода

다다익선 - 중복상품 수정

bin2107 5 лет назад
Родитель
Сommit
cba4976ece

+ 1 - 0
src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

@@ -728,6 +728,7 @@ public class TsaMarketingController extends TsaBaseController {
 
 			// TMTB_GOODS_TEMP TABLE TRUNCATE -> 다른 다다에서 사용중인 상품 조회 -> INSERT
 			moreBetterGoods.setApplyGoodsList(moreBetter.getApplyGoodsList());
+			moreBetterGoods.setSectionGb(moreBetter.getSectionGb());
 			morebetterService.createMorebetterGoodsTemp(moreBetterGoods);
 
 			morebetterService.saveMoreBetterDetail(moreBetter);

+ 2 - 0
src/main/java/com/style24/persistence/domain/MoreBetterGoods.java

@@ -32,6 +32,8 @@ public class MoreBetterGoods extends TscBaseDomain {
 	private String goodsCd;
 	private String goodsNm;
 
+	private String sectionGb;		// 구간설정 구분값(G810_10:수량,G810_11:금액)
+
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private String[] arrCompanySq;
 

+ 27 - 19
src/main/java/com/style24/persistence/mybatis/shop/TsaMorebetter.xml

@@ -536,26 +536,34 @@
 	<insert id="createTmtbGoodsTemp" parameterType="MoreBetterGoods">
 		/* TsaMarketing.createTmtbGoodsTemp */
 		INSERT INTO TB_TMTB_USING_GOODS_TEMP
-			SELECT 	#{regNo} AS REG_NO
-			        ,B.GOODS_CD
-					,G.GOODS_NM
-			  FROM 	TB_TMTB A
-		INNER JOIN  TB_TMTB_APPLY_GOODS B
-				ON  A.TMTB_SQ = B.TMTB_SQ
-		INNER JOIN  TB_GOODS G
-				ON  B.GOODS_CD = G.GOODS_CD
+			SELECT Z.REG_NO
+				, Z.GOODS_CD
+				, Z.GOODS_NM
+			FROM (
+					SELECT 	#{regNo} AS REG_NO
+							, B.GOODS_CD
+							, G.GOODS_NM
+							, (SELECT SECTION_GB FROM TB_TMTB_SECTION WHERE A.TMTB_SQ = TMTB_SQ GROUP BY SECTION_GB) AS SECTION_GB
+					  FROM 	TB_TMTB A
+				INNER JOIN  TB_TMTB_APPLY_GOODS B
+						ON  A.TMTB_SQ = B.TMTB_SQ
+				INNER JOIN  TB_GOODS G
+						ON  B.GOODS_CD = G.GOODS_CD
+					WHERE 1=1
+					  AND NOW() BETWEEN DATE_FORMAT(A.TMTB_ST_DT, '%Y-%m-%d %H:%i:%S') AND DATE_FORMAT(A.TMTB_ED_DT, '%Y-%m-%d %H:%i:%S')
+					  AND A.TMTB_STAT = 'G232_11'
+					  AND B.GOODS_GB IN ('G800_10','G800_20')
+					  AND B.DEL_YN = 'N'
+					  AND B.GOODS_CD NOT IN (
+											SELECT	GOODS_CD
+											FROM	TB_TMTB_APPLY_GOODS C
+											WHERE	1=1
+											  AND		B.TMTB_SQ = C.TMTB_SQ
+											  AND		C.GOODS_GB = 'G800_30'
+										)
+			) Z
 			WHERE 1=1
-			  AND NOW() BETWEEN DATE_FORMAT(A.TMTB_ST_DT, '%Y-%m-%d %H:%i:%S') AND DATE_FORMAT(A.TMTB_ED_DT, '%Y-%m-%d %H:%i:%S')
-			  AND A.TMTB_STAT = 'G232_11'
-			  AND B.GOODS_GB IN ('G800_10','G800_20')
-			  AND B.DEL_YN = 'N'
-			  AND B.GOODS_CD NOT IN (
-									SELECT	GOODS_CD
-									FROM	TB_TMTB_APPLY_GOODS C
-									WHERE	1=1
-									  AND		B.TMTB_SQ = C.TMTB_SQ
-									  AND		C.GOODS_GB = 'G800_30'
-								)
+			AND Z.SECTION_GB = #{sectionGb}
 	</insert>
 
 	<select id="getMorebetterDuplicateList" parameterType="MoreBetterGoods" resultType="MoreBetterGoods">