sowon4187 пре 5 година
родитељ
комит
424777e671

+ 45 - 1
src/main/java/com/style24/persistence/mybatis/shop/TssPlan.xml

@@ -913,7 +913,7 @@
 	</insert>
 	
 	<select id="getPlanCustGbList" parameterType="Plan" resultType="Plan">
-		/* TssPlan.createPlanCustGrade */
+		/* TssPlan.getPlanCustGbList */
 		SELECT CUST_GB 
 			  ,PLAN_SQ 
 			  ,REG_DT 
@@ -968,6 +968,50 @@
 					 AND CUST_GB = #{custGb}
 	</insert>
 	
+	<insert id="createPlanCustGradeCopy" parameterType="Plan">
+		/* TssPlan.createPlanCustGbCopy */
+			INSERT INTO
+					 TB_PLAN_CUST_GRADE
+					 (
+			         	PLAN_SQ
+			          , CUST_GRADE
+			          , REG_NO
+			          , REG_DT
+     			      ) SELECT 	
+     			      		 #{planSq}
+     			      		, CUST_GRADE
+     			      		,#{regNo}
+     			      		,now()
+	        	   FROM  TB_PLAN_CUST_GRADE
+	        	   WHERE 1=1
+					 AND PLAN_SQ = #{copyPlanSq}
+					 AND CUST_GRADE = #{custGrade}
+	</insert>
+	
+	<delete id="deletePlanCustGrade" parameterType="Plan">
+		/* TssPlan.deletePlanCustGrade */
+		DELETE 
+		FROM TB_PLAN_CUST_GRADE
+		WHERE PLAN_SQ= #{planSq}
+	</delete>
+	
+	<insert id="createPlanCustGrade" parameterType="Plan">
+		/* TssPlan.createPlanCustGrade */
+		INSERT INTO TB_PLAN_CUST_GRADE
+				(
+					PLAN_SQ
+				  , CUST_GRADE
+				  , REG_NO
+				  , REG_DT
+				)
+			VALUES(
+					#{planSq}
+				  , #{custGrade}
+				  , #{regNo}
+				  , CURRENT_TIMESTAMP
+				 )
+	</insert>
+	
 	<!-- 기획전 삭제처리 -->
 	<update id="deletePlan" parameterType="Plan">
 		/* TssPlan.deletePlan */

+ 27 - 0
src/main/java/com/style24/scm/biz/dao/TssPlanDao.java

@@ -373,4 +373,31 @@ public interface TssPlanDao {
 	 */
 	void deletePlan(Plan param);
 	
+	/**
+	 * 기획전 고객등급 복사
+	 *
+	 * @param
+	 * @author sowon
+	 * @since 2021. 05. 06
+	 */
+	void createPlanCustGradeCopy(Plan param);
+	
+	/**
+	 * 기획전 회원등급 등록
+	 *
+	 * @param
+	 * @author sowon
+	 * @since 2021. 05. 06
+	 */
+	void createPlanCustGrade(Plan param);
+	
+	/**
+	 * 기획전 회원등급 삭제
+	 *
+	 * @param
+	 * @author sowon
+	 * @since  2021. 05. 07
+	 */
+	void deletePlanCustGrade(Plan param);
+	
 }

+ 19 - 36
src/main/java/com/style24/scm/biz/service/TssPlanService.java

@@ -145,31 +145,14 @@ public class TssPlanService {
 		}
 		
 		// 기획전 회원등급 insert
-//		String[] custGrade = param.getUsableCustGradeArr();
-//		for (int j = 0; j < custGrade.length; j++) {
-//			plan.setCustGrade(custGrade[j]);
-//			plan.setPlanSq(param.getPlanSq());
-//			plan.setRegNo(TsaSession.getInfo().getUserNo());
-//			planDao.createPlanCustGrade(plan);
-//		}
-		
-		log.debug("planSq : {}", param.getPlanSq());
+		String[] custGrade = param.getUsableCustGradeArr();
+		for (int j = 0; j < custGrade.length; j++) {
+			plan.setCustGrade(custGrade[j]);
+			plan.setPlanSq(param.getPlanSq());
+			plan.setRegNo(TssSession.getInfo().getUserNo());
+			planDao.createPlanCustGrade(plan);
+		}
 
-		//기획전 응모이벤트
-//		if (StringUtils.isNotBlank(param.getPrivacyPolicy())) {
-//			int i = 0;
-//			for (String planQtitle : param.getPlanQtitle()) {
-//				PlanQuestAnswer planQuestAnswer = new PlanQuestAnswer();
-//				planQuestAnswer.setPlanSq(param.getPlanSq());
-//				planQuestAnswer.setPlanQtitle(planQtitle);
-//				planQuestAnswer.setAttachYn(param.getAttachYn()[i]);
-//				planQuestAnswer.setQuestNo(i);
-//				planQuestAnswer.setRegNo(param.getRegNo());
-//				planQuestAnswer.setUpdNo(param.getUpdNo());
-//				planDao.savePlanQuestion(planQuestAnswer);
-//				i++;
-//			}
-//		}
 
 	}
 	
@@ -307,18 +290,18 @@ public class TssPlanService {
 		}
 		
 		//기존 회원등급 삭제
-//		planDao.deletePlanCustGrade(param);
-//		
-//		
-//		// 기획전 회원등급 insert
-//		String[] custGrade = param.getUsableCustGradeArr();
-//		for (int j = 0; j < custGrade.length; j++) {
-//			plan.setCustGrade(custGrade[j]);
-//			plan.setPlanSq(param.getPlanSq());
-//			plan.setRegNo(TsaSession.getInfo().getUserNo());
-//			planDao.createPlanCustGrade(plan);
-//		}
-//		
+		planDao.deletePlanCustGrade(param);
+		
+		
+		// 기획전 회원등급 insert
+		String[] custGrade = param.getUsableCustGradeArr();
+		for (int j = 0; j < custGrade.length; j++) {
+			plan.setCustGrade(custGrade[j]);
+			plan.setPlanSq(param.getPlanSq());
+			plan.setRegNo(TssSession.getInfo().getUserNo());
+			planDao.createPlanCustGrade(plan);
+		}
+		
 		int ind = 1;
 		if(param.getMainPimg() != null && !"".equals(param.getMainPimg())){
 			String imgInd = String.valueOf(ind);

+ 30 - 11
src/main/webapp/WEB-INF/views/marketing/PlanDetailPopupForm.html

@@ -138,6 +138,9 @@
 							<label class="chkBox" th:if="${usableCustGradeList}" th:each="oneData, status : ${usableCustGradeList}">
 								<input type="checkbox" name="usableCustGradeArr" th:value="${oneData.cd}" th:text="${oneData.cdNm}" checked="checked" disabled="disabled"/>
 							</label>
+							<label class="chkBox">
+								<input type="checkbox" name="usableCustGradeArr" value="G110_60" th:text="비회원" checked="checked" disabled="disabled"/>
+							</label>
 						</td>
 						<th>브랜드</th>
 						<td>
@@ -393,6 +396,9 @@
 							<label class="chkBox" th:if="${usableCustGradeList}" th:each="oneData, status : ${usableCustGradeList}">
 								<input type="checkbox" name="usableCustGradeArr" th:value="${oneData.cd}" th:text="${oneData.cdNm}" checked="checked" disabled="disabled"/>
 							</label>
+							<label class="chkBox">
+								<input type="checkbox" name="usableCustGradeArr" value="G110_60" th:text="비회원" checked="checked" disabled="disabled"/>
+							</label>
 						</td>
 						<th>브랜드</th>
 						<td>
@@ -659,6 +665,10 @@
 					if(!validationPlanDetail()){
 						return false;
 					}
+					if ($('#planRegisterForm input[name=mainPimg]').val()=='') {
+						mcxDialog.alert("메인이미지를 등록하세요.");
+						return false;
+					}
 					var chkFrontGb = $('#planRegisterForm input:checkbox[name=frontGb]:checked');
 					
 					if(chkFrontGb.length < 1){
@@ -677,13 +687,17 @@
 					var usableCustGbArr = [];
 					var chkCustGb = $('#planRegisterForm input:checkbox[name=usableCustGbArr]:checked');
 					
-					if(chkCustGb.length < 1){
-						mcxDialog.alert("사용가능고객구분을 체크해주세요.");
-						return false;
-					} 
-					
+
 					for(let i=0; i< chkCustGb.length; i++){
 						usableCustGbArr.push(chkCustGb.eq(i).val());
+					
+					}
+					var usableCustGradeArr = [];
+					var chkCustGrade = $('#planRegisterForm input:checkbox[name=usableCustGradeArr]:checked');
+					
+					
+					for(let i=0; i< chkCustGrade.length; i++){
+						usableCustGradeArr.push(chkCustGrade.eq(i).val());
 					}
 					
 					
@@ -702,7 +716,7 @@
 					let data = {
 							 multiCate : allCateData
 							,multiBrand : allBrandData
-							//,usableCustGradeArr : usableCustGradeArr
+							,usableCustGradeArr : usableCustGradeArr
 							,usableCustGbArr : usableCustGbArr
 						    ,mode : $('#planRegisterForm input[name=mode]').val()
 						    ,planSq : $('#planRegisterForm input[name=planSq]').val()
@@ -759,15 +773,20 @@
 					var usableCustGbArr = [];
 					var chkCustGb = $('#planUpdateForm input:checkbox[name=usableCustGbArr]:checked');
 					
-					if(chkCustGb.length < 1){
-						mcxDialog.alert("사용가능고객구분을 체크해주세요.");
-						return false;
-					}
 					
 					for(let i=0; i< chkCustGb.length; i++){
 						usableCustGbArr.push(chkCustGb.eq(i).val());
 					}
 					
+					var usableCustGradeArr = [];
+					var chkCustGrade = $('#planUpdateForm input:checkbox[name=usableCustGradeArr]:checked');
+					
+					
+					for(let i=0; i< chkCustGrade.length; i++){
+						usableCustGradeArr.push(chkCustGrade.eq(i).val());
+					}
+					
+					
 					var chkCate = $('#planUpdateForm input:checkbox[name=cateList]:checked');
 					var allCateData = [];
 					for(let i=0; i< chkCate.length; i++){
@@ -782,7 +801,7 @@
 					let data = {
 							 multiCate : allCateData
 							,multiBrand : allBrandData
-							//,usableCustGradeArr : usableCustGradeArr
+							,usableCustGradeArr : usableCustGradeArr
 							,usableCustGbArr : usableCustGbArr
 						    ,mode : $('#planUpdateForm input[name=mode]').val()
 						    ,planSq : $('#planUpdateForm input[name=planSq]').val()