浏览代码

이태영 - 20210204 사은품프로모션 수정

xodud1202 5 年之前
父节点
当前提交
4d8cb59263

+ 24 - 0
src/main/java/com/style24/admin/biz/dao/TsaFreegiftPromotionDao.java

@@ -185,4 +185,28 @@ public interface TsaFreegiftPromotionDao {
 	 * @since 2021. 01. 20
 	 */
 	void updateFreegoodsPromotionStat(FreeGoodsPromotion param);
+
+	/**
+	 * 적용 업체 및 브랜드 목록 제거
+	 * @param param
+	 * @author xodud1202
+	 * @since 2021. 02. 04
+	 */
+	void deleteFreegiftGoodsApply(FreeGoodsPromotion param);
+
+	/**
+	 * 실사용 업체/브랜드 리스트 등록 (업체/브랜드 모두 등록된 경우)
+	 * @param param
+	 * @author xodud1202
+	 * @since 2021. 02. 04
+	 */
+	void insertFreegiftGoodsApplyList(FreeGoodsPromotion param);
+
+	/**
+	 * 실사용 업체/브랜드 리스트 등록 (한곳만 있을 경우)
+	 * @param param
+	 * @author xodud1202
+	 * @since 2021. 02. 04
+	 */
+	void insertFreegiftGoodsApplyCompanyOrBrandList(FreeGoodsPromotion param);
 }

+ 22 - 1
src/main/java/com/style24/admin/biz/service/TsaFreegiftPromotionService.java

@@ -130,8 +130,9 @@ public class TsaFreegiftPromotionService {
 			freegiftPromotionDao.deleteFreegiftGoodsInfo(param);		// 사은품 프로모션 적용 업체/브랜드/상품 제외상품 정보 삭제
 			freegiftPromotionDao.deleteFreegiftSectionInfo(param);		// 사은품 프로모션 적용 업체/브랜드/상품 제외상품 정보 삭제
 			freegiftPromotionDao.deleteFreegiftValInfo(param);			// 사은품 프로모션 적용 업체/브랜드/상품 제외상품 정보 삭제
+			freegiftPromotionDao.deleteFreegiftGoodsApply(param);		// 사은품 프로모션 적용 업체/브랜드 실적용 데이터 제거
 		} else {
-			param.setFreegiftStat("G232_10");					// 프로모션 등록이면 대기 상태로 저장
+			param.setFreegiftStat("G232_10");							// 프로모션 등록이면 대기 상태로 저장
 			freegiftPromotionDao.createFreegoodsPromotionInfo(param);   // 사은품 프로모션 마스터 정보 저장
 		}
 
@@ -261,6 +262,26 @@ public class TsaFreegiftPromotionService {
 				freegiftPromotionDao.createPromotionFreeGoodsInfo(freegoodsGiveInfo);	// 사은품 지급 상품 영역 저장
 			}
 		}
+
+		// 공급업체 / 브랜드 실 사용 테이블 저장
+		if(param.getSupplyCompList() != null && param.getSupplyCompList().size() > 0 && param.getBrandList() != null && param.getBrandList().size() > 0) {
+			freegiftPromotionDao.insertFreegiftGoodsApplyList(param);
+		} else if (param.getSupplyCompList() != null && param.getSupplyCompList().size() > 0) {
+			FreeGoodsPromotion company = new FreeGoodsPromotion();
+			company.setFreegiftSq(param.getFreegiftSq());
+			company.setTargetGb("G260_13");		// 적용 대상 (G260_10|상품, G260_12|브랜드, G260_13|공급처)
+			company.setRegNo(param.getRegNo());
+			freegiftPromotionDao.insertFreegiftGoodsApplyList(company);	// 등록된 업체 코드 등록
+			freegiftPromotionDao.insertFreegiftGoodsApplyCompanyOrBrandList(company);
+		} else if (param.getBrandList() != null && param.getBrandList().size() > 0) {
+			FreeGoodsPromotion brand = new FreeGoodsPromotion();
+			brand.setFreegiftSq(param.getFreegiftSq());
+			brand.setTargetGb("G260_12");		// 적용 대상 (G260_10|상품, G260_12|브랜드, G260_13|공급처)
+			brand.setRegNo(param.getRegNo());
+			freegiftPromotionDao.insertFreegiftGoodsApplyList(brand);	// 등록된 업체 코드 등록
+			freegiftPromotionDao.insertFreegiftGoodsApplyCompanyOrBrandList(brand);
+		}
+
 	}
 
 	/**

+ 52 - 0
src/main/java/com/style24/persistence/mybatis/shop/TsaFreegiftPromotion.xml

@@ -430,4 +430,56 @@
 			, UPD_DT = CURRENT_TIMESTAMP
 		WHERE FREEGIFT_SQ = #{freegiftSq}
 	</update>
+
+	<!-- 사은품 프로모션 지급 사은품 정보 삭제 -->
+	<delete id="deleteFreegiftGoodsApply" parameterType="FreeGoodsPromotion">
+		/* TsaMarketing.deleteFreegiftGoodsApply : 적용 업체 및 브랜드 목록 제거 */
+		DELETE FROM TB_FREEGIFT_GOODS_APPLY
+			  WHERE FREEGIFT_SQ = #{freegiftSq}
+	</delete>
+
+	<!-- 실사용 업체/브랜드 리스트 등록 -->
+	<insert id="insertFreegiftGoodsApplyList" parameterType="FreeGoodsPromotion">
+		/* TsaMarketing.insertFreegiftGoodsApplyList : 실사용 업체/브랜드 리스트 등록 */
+		INSERT INTO TB_FREEGIFT_GOODS_APPLY
+		SELECT FREEGIFT_SQ
+			 , TARGET_GB
+			 , TARGET_VAL
+			 , #{regNo}
+			 , NOW()
+		  FROM TB_FREEGIFT_GOODS
+		 WHERE 1=1
+		   AND FREEGIFT_SQ = #{freegiftSq}
+		   AND DEL_YN = 'N'
+		   AND TARGET_GB IN ('G260_12', 'G260_13')
+	</insert>
+
+	<!-- 실사용 업체/브랜드 리스트 등록 -->
+	<insert id="insertFreegiftGoodsApplyCompanyOrBrandList" parameterType="FreeGoodsPromotion">
+		/* TsaMarketing.insertFreegiftGoodsApplyList : 실사용 업체/브랜드 리스트 등록 */
+		INSERT INTO TB_FREEGIFT_GOODS_APPLY
+		SELECT FG.FREEGIFT_SQ
+		<if test="targetGb == 'G260_13'">		<!-- 업체일 경우 업체에 등록된 브랜드 코드 입력 -->
+		     , 'G260_12'
+		     , BS.BRAND_CD
+		</if>
+		<if test="targetGb == 'G260_12'">		<!-- 브랜드일 경우 업체에 등록된 업체 코드 입력 -->
+			, 'G260_13'
+			 , BS.SUPPLY_COMP_CD
+		</if>
+			 , #{regNo}
+			 , NOW()
+		  FROM TB_FREEGIFT_GOODS FG
+		 INNER JOIN TB_BRAND_SUPPLY BS
+		<if test="targetGb == 'G260_13'">
+			ON FG.TARGET_VAL = BS.SUPPLY_COMP_CD
+		</if>
+		<if test="targetGb == 'G260_12'">
+			ON FG.TARGET_VAL = BS.BRAND_CD
+		</if>
+		 WHERE 1=1
+		   AND FG.FREEGIFT_SQ = #{freegiftSq}
+		   AND FG.TARGET_GB = #{targetGb}
+		   AND FG.DEL_YN = 'N'
+	</insert>
 </mapper>

+ 0 - 2
src/main/webapp/WEB-INF/views/marketing/FreeGoodsPromotionRegiForm.html

@@ -856,8 +856,6 @@
 		let selfYn = $("#freeGoodsPromotionForm input[name=selfYn]:checked").val();
 		if(!selfYn || selfYn == "") { selfYn = "N"; }
 
-		alert($("#freeGoodsPromotionForm select[name=freegiftEdHH]").val());
-
 		let freegiftStdt = $("#freeGoodsPromotionForm input[name=freegiftStDate]").val() + " " + $("#freeGoodsPromotionForm select[name=freegiftStHH]").val() + ":" + $("#freeGoodsPromotionForm select[name=freegiftStMM]").val() + ":00";
 		let freegiftEddt = $("#freeGoodsPromotionForm input[name=freegiftEdDate]").val();
 		if($("#freeGoodsPromotionForm select[name=freegiftEdHH]").val() == "24") {