Browse Source

메인전시 컨텐츠+상품 수정

bin2107 5 years ago
parent
commit
49a728cb67

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

@@ -704,6 +704,7 @@ public class TsaDisplayController extends TsaBaseController {
 		ModelAndView mav = new ModelAndView();
 		mav.addObject("cateNo", cateNo);
 		mav.addObject("contentsLoc", contentsLoc);
+		mav.addObject("brandGroupNo", brandGroupNo);
 		mav.addObject("contentsDesc", displayService.getContentsDesc(contentsLoc));
 		mav.addObject("contentsLocList", rendererService.getAvailCommonCodeList("G028"));
 

+ 10 - 3
src/main/java/com/style24/persistence/mybatis/shop/TsaDsiplay.xml

@@ -1473,7 +1473,11 @@
 			,#{contentsType}
 			,DATE_FORMAT(#{dispStdt}, '%Y-%m-%d %H:%i:%S')
 			,DATE_FORMAT(#{dispEddt}, '%Y-%m-%d %H:%i:%S')
-			,(SELECT DISP_ORD FROM (SELECT IFNULL((MAX(DISP_ORD) + 1), 1) AS DISP_ORD FROM	TB_CONTENTS_PREVIEW	WHERE CATE_NO = #{cateNo} AND CONTENTS_LOC = #{contentsLoc}) TMP)
+			,(SELECT DISP_ORD FROM (SELECT IFNULL((MAX(DISP_ORD) + 1), 1) AS DISP_ORD FROM	TB_CONTENTS_PREVIEW	WHERE CATE_NO = #{cateNo} AND CONTENTS_LOC = #{contentsLoc}
+			    <if test="brandGroupNo != null and brandGroupNo !=''">
+			        AND BRAND_GROUP_NO = #{brandGroupNo}
+			    </if>
+			    ) TMP)
 			,#{imgPath1}
 			,#{imgPath2}
 			,#{imgPath3}
@@ -1684,13 +1688,13 @@
 		(
 		     IFNULL(NULLIF(#{brandGroupNo},''),0)
 		    ,#{cateNo}
-		    ,(SELECT LEAF_CATE_NO FROM (SELECT	LEAF_CATE_NO
+		    ,IFNULL((SELECT LEAF_CATE_NO FROM (SELECT	LEAF_CATE_NO
 		                                FROM	TB_CATE_4SRCH
 		                                WHERE	1=1
 		                                <if test="cateNo != null and cateNo != ''">
 		                                AND     CATE1_NO = #{cateNo}
 		                                </if>
-		                                AND		CONTENTS_LOC = #{contentsLoc}) TMP)
+		                                AND		CONTENTS_LOC = #{contentsLoc}) TMP),0)
 		    ,#{contentsLoc}
 		    ,#{preContentsSq}
 		    ,#{contentsSq}
@@ -1705,6 +1709,9 @@
 		                            </if>
 		                            AND CONTENTS_LOC = #{contentsLoc}
 		                            AND CONTENTS_SQ = #{contentsSq}
+		                            <if test="brandGroupNo != null and brandGroupNo != ''">
+		                            AND BRAND_GROUP_NO = #{brandGroupNo}
+		                            </if>
 		                        ) TMP)
 		    ,#{regNo}
 		    ,NOW()

+ 2 - 1
src/main/webapp/WEB-INF/views/display/MainListForm.html

@@ -660,7 +660,8 @@
 		var contentsLoc = $(obj).closest("td").find('input:hidden[name="contentsLoc"]').val();
 
 		// 브랜드픽, MD추천 다른 팝업 사용
-		if(contentsLoc=='SMM007'||contentsLoc=='SMM009'||contentsLoc=='SMM012'){
+		if(contentsLoc=='SMM007'||contentsLoc=='SMM009'||contentsLoc=='SMM012'||contentsLoc=='SMM003'||contentsLoc=='SBM007'||contentsLoc=='SBM008'||contentsLoc=='SBM009'
+			||contentsLoc=='SBM017'||contentsLoc=='SBM018'||contentsLoc=='SBM019'||contentsLoc=='SOM003'||contentsLoc=='SCM002'||contentsLoc=='SCM003'){
 			cfnOpenMainMultiContentsPopup(cateNo, contentsLoc, brandGroupNo);
 		}else if(contentsLoc=='STAB001' || contentsLoc=='STAB002' || contentsLoc=='SBM002' || contentsLoc=='SBMM002'){
 			cfnOpenMainGnbContentsPopup(cateNo, contentsLoc, brandGroupNo);

+ 85 - 6
src/main/webapp/WEB-INF/views/display/MainMultiContentsPopupForm.html

@@ -28,6 +28,9 @@
 					<li class="aR">
 						<button type="button" class="btn btn btn-base btn-sm" th:if="${contentsLoc == 'SMM007'}" onclick="fnAddBrand(this);">브랜드 추가</button> <!--id="btnBrandAddRow"-->
 						<button type="button" class="btn btn btn-base btn-sm" th:if="${contentsLoc == 'SMM009' or contentsLoc == 'SMM012'}" onclick="fnAddBrand(this);">MD 탭 추가</button>
+						<button type="button" class="btn btn btn-base btn-sm"
+								th:if="${contentsLoc == 'SMM003' or contentsLoc == 'SBM007' or contentsLoc == 'SBM008' or contentsLoc == 'SBM009' or contentsLoc == 'SBM017' or contentsLoc == 'SBM018' or contentsLoc == 'SBM019' or contentsLoc == 'SOM003' or contentsLoc == 'SCM002' or contentsLoc == 'SCM003'}"
+								onclick="fnAddBrand(this);">컨텐츠 추가</button>
 						<button type="button" class="btn btn btn-dark btn-sm" id="btnMultiPopSave">임시저장</button>
 						<input type="hidden" name="uploadDefaultUrlMultiPop" id="uploadDefaultUrlMultiPop" th:value="${@environment.getProperty('upload.image.view') + '/contents/'}"/>
 						<input type="hidden" name="uploadDefaultBrandUrlPop" id="uploadDefaultBrandUrlPop" th:value="${@environment.getProperty('upload.image.view') + '/contents/brand/'}"/>
@@ -45,11 +48,13 @@
 /*<![CDATA[*/
 	var cateNo = [[${cateNo}]];
 	var contentsLoc = [[${contentsLoc}]];
+	var brandGroupNo = [[${brandGroupNo}]];
 	var contentsLocArr = gagajf.convertToArray([[${contentsLocList}]]);
 	var tdWidth = $("#sortable").find("td").width();
 	var tdDeleteWidth = parseInt(tdWidth/11, 10);
 	tdWidth = tdWidth - tdDeleteWidth;
-
+	let tableLen = 0;		// 테이블 ID
+console.log('brandGroupNo:'+brandGroupNo);
 	/**
 	 * 컨텐츠 미리보기 리스트
 	 */
@@ -58,6 +63,7 @@
 		$("#multiPopSortable").html('');
 		var data = {cateNo : cateNo
 			,contentsLoc : contentsLoc
+			,brandGroupNo : brandGroupNo
 		};
 		var jsonData = JSON.stringify(data);
 		gagajf.ajaxJsonSubmit('/display/contents/preview/list', jsonData, fnCreatePopLayout);
@@ -70,7 +76,8 @@
 			var dispEddt = result[i].dispEddt.split(" ");
 			var brandGroupImg = result[i].brandGroupImg;
 
-			html += '<table class="frmStyle tableTest" style="margin-bottom:30px" id="tabTable'+i+'" tableIdx="'+i+'">';
+			html += '<table class="frmStyle tableTest" style="margin-bottom:30px" id="tabTable'+i+'">';
+			html += '<input type="hidden" name="tableIdx" value="'+i+'" data-id="'+i+'">';
 			html += '<colgroup>';
 			html += '<col style="width:10%;"/>';
 			html += '<col style="width:55%;"/>';
@@ -117,6 +124,38 @@
 				html += '</tr>';
 				/*html += fnAddBrandImgRow(result[i].brandGroupImg);*/
 			}
+			if(contentsLoc=='SCM002' || contentsLoc=='SCM003'){
+				html += '		<tr>';
+				html += '			<th>전시 설정</th>';
+				html += '			<td>';
+				if(result[i].useYn=='Y'){
+					html += '				<label class="rdoBtn"><input type="radio" name="dispYn'+i+'" value="Y" checked="checked"/>노출</label>';
+					html += '				<label class="rdoBtn"><input type="radio" name="dispYn'+i+'" value="N"/>비노출</label>';
+				}else{
+					html += '				<label class="rdoBtn"><input type="radio" name="dispYn'+i+'" value="Y"/>노출</label>';
+					html += '				<label class="rdoBtn"><input type="radio" name="dispYn'+i+'" value="N" checked="checked"/>비노출</label>';
+				}
+				html += '			</td>';
+				if(result[i].contentsLoc=='SCM003'){
+					html += '			<th>상품 노출 개수</th>';
+					html += '			<td>';
+					if(result[i].strVar1=='10'){
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="10" checked="checked"/>10개</label>';
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="20"/>20개</label>';
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="30"/>30개</label>';
+					}else if(result[i].strVar1=='20'){
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="10"/>10개</label>';
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="20" checked="checked"/>20개</label>';
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="30"/>30개</label>';
+					}else{
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="10"/>10개</label>';
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="20"/>20개</label>';
+						html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+i+'" value="30" checked="checked"/>30개</label>';
+					}
+					html += '			</td>';
+				}
+				html += '		</tr>';
+			}
 			html += '</thead><tbody>';
 			if(contentsLoc=='SMM007') {
 				for (var j = 1; j < 8; j++) {
@@ -149,6 +188,7 @@
 			changeYear: true,
 			defaultDate: $('.schDate').val()
 		});
+		tableLen = $(".tableTest").length;
 	}
 
 	/**
@@ -190,6 +230,7 @@
 	 */
 	var brandIdx = 0;
 	var fnAddBrand = function (param) {
+		brandIdx = tableLen;
 		var src = '';
 		var imgPath = '';
 		if (typeof param != 'object') {
@@ -197,7 +238,8 @@
 			imgPath = param;
 		}
 
-		var html = '<table class="frmStyle tableTest" style="margin-bottom:30px" id="tabTable'+brandIdx+'" tableIdx="'+brandIdx+'">';
+		var html = '<table class="frmStyle tableTest" style="margin-bottom:30px" id="tabTable'+brandIdx+'" >';
+		html += '<input type="hidden" name="tableIdx" value="'+brandIdx+'" data-id="'+brandIdx+'">';
 		html += '<colgroup>';
 		html += '<col style="width:10%;"/>';
 		html += '<col style="width:55%;"/>';
@@ -262,9 +304,26 @@
 			html += '</td>';
 			html += '</tr>';*/
 		}
+		if(contentsLoc=='SCM002' || contentsLoc=='SCM003'){
+			html += '		<tr>';
+			html += '			<th>전시 설정</th>';
+			html += '			<td>';
+			html += '				<label class="rdoBtn"><input type="radio" name="dispYn'+brandIdx+'" value="Y" checked="checked"/>노출</label>';
+			html += '				<label class="rdoBtn"><input type="radio" name="dispYn'+brandIdx+'" value="N"/>비노출</label>';
+			html += '			</td>';
+			if(contentsLoc=='SCM003'){
+				html += '			<th>상품 노출 개수</th>';
+				html += '			<td>';
+				html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+brandIdx+'" value="10" checked="checked"/>10개</label>';
+				html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+brandIdx+'" value="20"/>20개</label>';
+				html += '				<label class="rdoBtn"><input type="radio" name="dispCnt'+brandIdx+'" value="30"/>30개</label>';
+				html += '			</td>';
+			}
+			html += '		</tr>';
+		}
 		html += '</thead><tbody></tbody></table>';
 
-		brandIdx++;
+		// brandIdx++;
 
 		$("#multiPopSortable").prepend(html);
 		$("#multiPopSortable").sortable();
@@ -283,6 +342,8 @@
 			defaultDate: $('.schDate').val()
 		});
 		fnReloadIdx();
+
+		tableLen = tableLen+1;
 	}
 
 	var fnReloadIdx = function (){
@@ -564,10 +625,27 @@
 
 			var dispOrd = $(this).find("[name=dispOrd]").val();
 
-			var brandGroupNo = $(this).find("[name=brandGroupNo]").val();
+			var brandGroupNo = '';
+			if(contentsLoc=='SBM007'||contentsLoc=='SBM008'||contentsLoc=='SBM009'||contentsLoc=='SBM017'||contentsLoc=='SBM018'||contentsLoc=='SBM019'||contentsLoc=='SOM003'||contentsLoc=='SCM002'||contentsLoc=='SCM003'){
+				brandGroupNo = [[${brandGroupNo}]];
+			}else{
+				$(this).find("[name=brandGroupNo]").val();
+			}
 			var brandGroupImg = $(this).find("[name=brandNewImgFile]").val();
 			var mdTitle = $(this).find("[name=mdTitle]").val();
 
+			var useYn = 'Y';
+			if(contentsLoc=='SCM002' || contentsLoc=='SCM003'){
+				var thisIdx = $(this).find("input[name=tableIdx]").val();
+				useYn = $(this).find("input:radio[name=dispYn"+thisIdx+"]:checked").val();
+			}else{
+				useYn = 'Y';
+			}
+			if(contentsLoc=='SCM003'){
+				var thisIdx = $(this).find("input[name=tableIdx]").val();
+				strVar1 = $(this).find("input:radio[name=dispCnt"+thisIdx+"]:checked").val();
+			}
+
 			var data = {cateNo : cateNo
 				, contentsLoc : contentsLoc
 				, dispStdt : dispStdt
@@ -600,7 +678,7 @@
 				, brandGroupNo : brandGroupNo
 				, brandGroupImg : brandGroupImg
 				, mdTitle : mdTitle
-				, useYn : 'Y'
+				, useYn : useYn
 				, dispOrd : dispOrd
 				, multiContentsYn : 'Y'
 				, goodsCdArr : goodsCdArr
@@ -653,6 +731,7 @@
 		}
 
 		var jsonData = JSON.stringify(dataArr);
+		// console.log(jsonData);
 		mcxDialog.confirm('컨텐츠를 저장 하시겠습니까?', {
 			cancelBtnText: "취소",
 			sureBtnText: "확인",