Sfoglia il codice sorgente

Merge branch 'develop' of http://112.172.147.34:4936/style24/style24.admin.git into develop

eskim 5 anni fa
parent
commit
4f65dfd680

+ 39 - 0
src/main/java/com/style24/admin/biz/dao/TsaDisplayDao.java

@@ -298,4 +298,43 @@ public interface TsaDisplayDao {
 	 */
 	void saveContents(Contents contents);
 
+	/**
+	 * 메인전시 컨텐츠 타이틀 삭제
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 23
+	 */
+	void deleteContentsTitle(Contents contents);
+
+	/**
+	 * 메인전시 컨텐츠 타이틀 저장
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 23
+	 */
+	void saveContentsTitle(Contents contents);
+
+	/**
+	 * 메인전시 컨텐츠 타이틀 조회
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 23
+	 */
+	String getContentsTitle(String cateNo, String contentsLoc);
+
+	/**
+	 * 메인전시 컨텐츠 타이틀 변경
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 23
+	 */
+	void updateContentsTitle(Contents contents);
+
+	/**
+	 * CATEGORY4SRCH 조회
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 24
+	 */
+	Category getCategory4srch(Category category);
 }

+ 35 - 0
src/main/java/com/style24/admin/biz/service/TsaDisplayService.java

@@ -514,6 +514,20 @@ public class TsaDisplayService {
 				break;
 			}
 		}
+
+		for(Contents contents : contentsList){
+			if(contents != null && contents.getContentsTitle() != null){
+				Contents contentsTmp = new Contents();
+				contentsTmp.setCateNo(contents.getCateNo());
+				contentsTmp.setContentsLoc(contents.getContentsLoc());
+				contentsTmp.setContentsTitle(contents.getContentsTitle());
+				contentsTmp.setRegNo(TsaSession.getInfo().getUserNo());
+				displayDao.deleteContentsTitle(contentsTmp);
+				displayDao.saveContentsTitle(contentsTmp);
+				break;
+			}
+		}
+
 		int ind = 1;
 		for (Contents contents : contentsList) {
 			if (contents != null && contents.getDispStdt() != null && !contents.getDispStdt().equals("")) {
@@ -574,6 +588,27 @@ public class TsaDisplayService {
 			contents.setContentsLoc(contentsLoc);
 			displayDao.deleteContents(contents);
 			displayDao.saveContents(contents);
+			displayDao.updateContentsTitle(contents);
 		}
 	}
+
+	/**
+	 * 메인전시 컨텐츠 타이틀 조회
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 22
+	 */
+	public String getContentsTitle(String cateNo, String contentsLoc) {
+		return displayDao.getContentsTitle(cateNo,contentsLoc);
+	}
+
+	/**
+	 * CATEGORY4SRCH 조회
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 24
+	 */
+	public Category getCategory4srch(Category category){
+		return displayDao.getCategory4srch(category);
+	}
 }

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

@@ -562,6 +562,7 @@ public class TsaDisplayController extends TsaBaseController {
 		mav.addObject("contentsLoc", contentsLoc);
 		mav.addObject("contentsDesc", displayService.getContentsDesc(contentsLoc));
 		mav.addObject("contentsLocList", rendererService.getAvailCommonCodeList("G028"));
+		mav.addObject("contentsTitle", displayService.getContentsTitle(cateNo,contentsLoc));
 		mav.setViewName("display/MainContentsPopupForm");
 		return mav;
 	}
@@ -587,6 +588,7 @@ public class TsaDisplayController extends TsaBaseController {
 	@PostMapping("/contents/preview/save")
 	@ResponseBody
 	public GagaResponse saveContentsPreview(@RequestBody Collection<Contents> contentsList) {
+		log.info("saveContentsPreview:::{}",contentsList);
 		displayService.saveContentsPreview(contentsList);
 		return super.ok(message.getMessage("SUCC_0001"));
 	}
@@ -604,4 +606,17 @@ public class TsaDisplayController extends TsaBaseController {
 		displayService.saveContents(contents);
 		return super.ok(message.getMessage("SUCC_0001"));
 	}
+
+	/**
+	 * CATEGORY4SRCH 조회
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 24
+	 */
+	@PostMapping("/category4srch/list")
+	@ResponseBody
+	public Category getCategory4srch(@RequestBody Category category) {
+		return displayService.getCategory4srch(category);
+	}
+
 }

+ 1 - 0
src/main/java/com/style24/persistence/domain/Category.java

@@ -17,6 +17,7 @@ public class Category extends TscBaseDomain {
 	private Integer cateNo;		// 카테고리번호
 	private String cateNm;		// 카테고리명
 	private String cateGb;		// 카테고리구분
+	private String leafCateNo;	// 단말카테고리번호
 	private String cateType;	// 카테고리유형
 	private Integer cate1No;	// 카테고리1번호
 	private String cate1Nm;		// 카테고리1명

+ 9 - 0
src/main/java/com/style24/persistence/domain/Contents.java

@@ -4,6 +4,8 @@ import com.fasterxml.jackson.annotation.JsonFormat;
 import com.style24.persistence.TscBaseDomain;
 import lombok.Data;
 
+import java.util.List;
+
 @SuppressWarnings("serial")
 @Data
 public class Contents extends TscBaseDomain {
@@ -28,7 +30,14 @@ public class Contents extends TscBaseDomain {
     private String strTitle2;
     private String strTitle3;
     private String strTitle4;
+    private String subText1;
+    private String subText2;
+    private String subText3;
+    private String subText4;
     private String useYn;
+    private String contentsTitle;
+
+    List<Contents> dataList;
 
     @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
     private String[] contentsLocArr;

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

@@ -399,8 +399,8 @@
 	
 	<!-- 카테고리4SRCH truncate -->
 	<delete id="truncateCategory4Srch">
-		/* TsaDisplay.truncateCategory4Srch */
-		TRUNCATE TABLE TB_CATE_4SRCH
+		/* TsaDisplay.truncateCategory4Srch TRUNCATE TABLE TB_CATE_4SRCH */
+		DELETE FROM TB_CATE_4SRCH
 	</delete>
 	
 	<!-- 카테고리4SRCH 생성 -->
@@ -886,7 +886,7 @@
 				FROM ( SELECT G.GOODS_CD
 							, G.GOODS_TNM
 							, G.GOODS_NM
-							, (SELECT SYS_IMG_NM FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND DEFAULT_IMG_YN = 'Y') AS IMG_PATH1
+							, (SELECT SYS_IMG_NM FROM TB_GOODS_IMG WHERE GOODS_CD = G.GOODS_CD AND DEFAULT_IMG_YN = 'Y' ORDER BY REG_DT DESC LIMIT 1) AS IMG_PATH1
 							, A.CATE_NO
 							, A.DISP_ORD
 							, FN_GET_CODE_NM('G056',G.GOODS_TYPE) AS GOODS_TYPE
@@ -1285,6 +1285,10 @@
 			 , STR_TITLE2
 			 , STR_TITLE3
 			 , STR_TITLE4
+		     , SUB_TEXT1
+			 , SUB_TEXT2
+			 , SUB_TEXT3
+			 , SUB_TEXT4
 			 , USE_YN
 			 , REG_NO
 			 , REG_DT
@@ -1328,6 +1332,10 @@
 			, STR_TITLE2
 			, STR_TITLE3
 			, STR_TITLE4
+			, SUB_TEXT1
+			, SUB_TEXT2
+			, SUB_TEXT3
+			, SUB_TEXT4
 			, USE_YN
 			, REG_NO
 			, REG_DT
@@ -1355,6 +1363,10 @@
 			,#{strTitle2}
 			,#{strTitle3}
 			,#{strTitle4}
+			,#{subText1}
+			,#{subText2}
+			,#{subText3}
+			,#{subText4}
 			,#{useYn}
 			,#{regNo}
 			,NOW()
@@ -1398,6 +1410,10 @@
 			, STR_TITLE2
 			, STR_TITLE3
 			, STR_TITLE4
+			, SUB_TEXT1
+			, SUB_TEXT2
+			, SUB_TEXT3
+			, SUB_TEXT4
 			, USE_YN
 			, REG_NO
 			, REG_DT
@@ -1424,6 +1440,10 @@
 			 , STR_TITLE2
 			 , STR_TITLE3
 			 , STR_TITLE4
+		 	 , SUB_TEXT1
+			 , SUB_TEXT2
+			 , SUB_TEXT3
+			 , SUB_TEXT4
 			 , USE_YN
 			 , #{regNo}
 			 , NOW()
@@ -1433,4 +1453,86 @@
 		WHERE	CONTENTS_LOC = #{contentsLoc}
 		AND 	CATE_NO = #{cateNo}
 	</insert>
+
+	<!-- 메인전시 컨텐츠 타이틀 임시테이블 삭제 -->
+	<delete id="deleteContentsTitle" parameterType="Contents">
+		/* TsaDisplay.deleteContentsTitle */
+		DELETE FROM TMP_MAIN_LAYOUT_TITLE
+		WHERE 	CATE_NO = #{cateNo}
+		  AND 	CONTENTS_LOC = #{contentsLoc}
+	</delete>
+
+	<!-- 메인전시 컨텐츠 타이틀 임시테이블 저장 -->
+	<insert id="saveContentsTitle" parameterType="Contents">
+		/* TsaDisplay.saveContentsTitle */
+		INSERT INTO TMP_MAIN_LAYOUT_TITLE
+		(
+			CATE_NO
+			,CONTENTS_LOC
+			,CONTENTS_TITLE
+			,REG_NO
+			,REG_DT
+		)
+		VALUES
+		(
+		 	#{cateNo}
+		 	,#{contentsLoc}
+			,#{contentsTitle}
+			,#{regNo}
+			,NOW()
+		)
+	</insert>
+
+	<!-- 메인전시 컨텐츠 타이틀 조회 -->
+	<select id="getContentsTitle" parameterType="String" resultType="String">
+		/* TsaDisplay.getContentsTitle */
+		SELECT	CONTENTS_TITLE
+		FROM	TMP_MAIN_LAYOUT_TITLE
+		WHERE	CATE_NO = #{cateNo}
+		AND		CONTENTS_LOC = #{contentsLoc}
+	</select>
+
+	<!-- 메인전시 컨텐츠 타이틀 변경 -->
+	<update id="updateContentsTitle" parameterType="Contents">
+		/* TsaDisplay.updateContentsTitle */
+		UPDATE	TB_MAIN_LAYOUT
+		SET CONTENTS_TITLE = (SELECT CONTENTS_TITLE FROM TMP_MAIN_LAYOUT_TITLE WHERE CATE_NO = #{cateNo} AND CONTENTS_LOC = #{contentsLoc})
+		WHERE CATE_NO = #{cateNo}
+		AND CONTENTS_LOC = #{contentsLoc}
+	</update>
+
+	<!-- CATEGORY4SRCH 조회 -->
+	<select id="getCategory4srch" parameterType="Category" resultType="Category">
+		/* TsaDisplay.getCategory4srch */
+		SELECT	SITE_CD
+				,CATE_GB
+				,LEAF_CATE_NO
+				,CATE_TYPE
+				,CATE1_NO
+				,CATE1_NM
+				,CATE2_NO
+				,CATE2_NM
+				,CATE3_NO
+				,CATE3_NM
+				,CATE4_NO
+				,CATE4_NM
+				,CATE5_NO
+				,CATE5_NM
+				,FULL_CATE_NO
+				,FULL_CATE_NM
+				,DISP_ORD
+				,FORMAL_GB
+				,CONTENTS_LOC
+		FROM	TB_CATE_4SRCH
+		WHERE	1=1
+		<if test='cate1No != null and cate1No != ""'>
+			AND CATE1_NO = #{cate1No}
+		</if>
+		<if test='cateGb != null and cateGb != ""'>
+			AND CATE_GB = #{cateGb}
+		</if>
+		<if test='contentsLoc != null and contentsLoc != ""'>
+			AND CONTENTS_LOC = #{contentsLoc}
+		</if>
+	</select>
 </mapper>

+ 5 - 5
src/main/webapp/WEB-INF/views/display/GoodsDispOrdChangePopupForm.html

@@ -207,7 +207,7 @@
 					,multiGoods : multiGoods
 				}
 				var jsonData = JSON.stringify(data);
-				gagajf.ajaxJsonSubmit('/display/category/goods/save', jsonData, fnSearchPopup);
+				gagajf.ajaxJsonSubmit('/display/category/goods/save', jsonData, fnSearchData);
 				uifnPopupClose('popupGoods');
 			}
 		});
@@ -228,7 +228,7 @@
 				};
 
 				var jsonData = JSON.stringify(data);
-				gagajf.ajaxJsonSubmit('/display/goods/dispord/change/delete', jsonData, fnSearchPopup);
+				gagajf.ajaxJsonSubmit('/display/goods/dispord/change/delete', jsonData, fnSearchData);
 			}
 		});
 	}
@@ -246,7 +246,7 @@
 				};
 
 				var jsonData = JSON.stringify(data);
-				gagajf.ajaxJsonSubmit('/display/category/goods/dispord/init', jsonData, fnSearchPopup);
+				gagajf.ajaxJsonSubmit('/display/category/goods/dispord/init', jsonData, fnSearchData);
 			}
 		});
 	});
@@ -270,7 +270,7 @@
 					,cateNo : $("#goodsDispOrdChangeForm input[name=cateCd]").val()
 				}
 				var jsonData = JSON.stringify(data);
-				gagajf.ajaxJsonSubmit('/display/category/goods/dispord/updown', jsonData, fnSearchPopup);
+				gagajf.ajaxJsonSubmit('/display/category/goods/dispord/updown', jsonData, fnSearchData);
 
 			}
 		});
@@ -301,7 +301,7 @@
 				}
 
 				var jsonData = JSON.stringify(data);
-				gagajf.ajaxJsonSubmit('/display/category/goods/dispord/update', jsonData, fnSearchPopup);
+				gagajf.ajaxJsonSubmit('/display/category/goods/dispord/update', jsonData, fnSearchData);
 			}
 		});
 	});

+ 87 - 2
src/main/webapp/WEB-INF/views/display/MainContentsPopupForm.html

@@ -14,7 +14,7 @@
  * 1.0  2021.2.23    bin2107     최초 작성
  *******************************************************************************
  -->
-	<div class="modalPopup" data-width="1200" >
+	<div class="modalPopup" data-width="1400" >
 		<div class="panelStyle">
 			<div class="panelTitle">
 				<h2 id="popTitle" th:text="${contentsLoc}"></h2>
@@ -32,7 +32,19 @@
 					</li>
 				</ul>
 			</div>
-			<form style="height:600px; width:1100px; overflow:auto; margin-left:40px; border-style: solid; border-width: 1px;" id="popSortable">
+			<form name="contentsTitleForm" id="contentsTitleForm" style="width:1170px; overflow:auto; display: none;">
+				<table class="frmStyle">
+					<colgroup>
+						<col style="width:10%;"/>
+						<col style="width:90%;"/>
+					</colgroup>
+					<tr>
+						<th>컨텐츠 타이틀</th>
+						<td><input type="text" name="contentsTitle" style="width:50%;" maxlength="40" required="required" data-valid-name="컨텐츠타이틀" th:value="${contentsTitle}"></td>
+					</tr>
+				</table>
+			</form>
+			<form style="height:600px; width:1370px; overflow:auto;" id="popSortable">
 			</form>
 		</div>
 	</div>
@@ -41,6 +53,7 @@
 /*<![CDATA[*/
 	var cateNo = [[${cateNo}]];
 	var contentsLoc = [[${contentsLoc}]];
+	var contentsTitle = [[${contentsTitle}]];
 	var contentsLocArr = gagajf.convertToArray([[${contentsLocList}]]);
 	var tdWidth = $("#sortable").find("td").width();
 	var tdDeleteWidth = parseInt(tdWidth/11, 10);
@@ -87,12 +100,16 @@
 			html += '<td class="aL"><button type="button" class="btn btn-base btn-lg" onclick="fnAddTitlePopRow(this);">타이틀추가</button>';
 			html += '<button type="button" class="btn btn-base btn-lg" onclick="fnAddImgPopRow(this);">이미지추가</button>';
 			html += '<button type="button" class="btn btn-base btn-lg" onclick="fnAddLinkPopRow(this);">링크추가</button>';
+			if(contentsLoc=='SMM001'){
+				html += '<button type="button" class="btn btn-base btn-lg" onclick="fnAddSubTextPopRow(this);">서브텍스트추가</button>';
+			}
 			html += '<button type="button" class="btn btn-danger btn-lg" onclick="fnDeleteContentsRow(this);">삭제</button></td>';
 			html += '</tr></thead><tbody>';
 			for(var j=1; j<5; j++){
 				var strTitle = eval("result["+i+"].strTitle" + j);
 				var imgPath = eval("result["+i+"].imgPath" + j);
 				var strVar = eval("result["+i+"].strVar" + j);
+				var subText = eval("result["+i+"].subText" + j);
 				if(strTitle!=null && strTitle!='null' && strTitle!='' ){
 					html += fnAddTitlePopRow(strTitle);
 				}
@@ -102,6 +119,9 @@
 				if(strVar!=null && strVar!='null' && strVar!='' ){
 					html += fnAddLinkPopRow(strVar);
 				}
+				if(subText!=null && subText!='null' && subText!='' ){
+					html += fnAddSubTextPopRow(subText);
+				}
 			}
 			html += '</tbody></table>';
 		}
@@ -144,6 +164,9 @@
 		html += '<td class="aL"><button type="button" class="btn btn-base btn-lg" onclick="fnAddTitlePopRow(this);">타이틀추가</button>';
 		html += '<button type="button" class="btn btn-base btn-lg" onclick="fnAddImgPopRow(this);">이미지추가</button>';
 		html += '<button type="button" class="btn btn-base btn-lg" onclick="fnAddLinkPopRow(this);">링크추가</button>';
+		if(contentsLoc=='SMM001'){
+			html += '<button type="button" class="btn btn-base btn-lg" onclick="fnAddSubTextPopRow(this);">서브텍스트추가</button>';
+		}
 		html += '<button type="button" class="btn btn-danger btn-lg" onclick="fnDeleteContentsRow(this);">삭제</button></td>';
 		html += '</tr></thead><tbody></tbody></table>';
 		$("#popSortable").prepend(html);
@@ -164,6 +187,14 @@
 		if(!gagajf.checkRequired("#popSortable")){
 			return;
 		}
+
+		if(contentsLoc=='SMM002'||contentsLoc=='SMM003'||contentsLoc=='SMM004'||contentsLoc=='SMM006'||contentsLoc=='SMM007'
+				||contentsLoc=='SMM010' ||contentsLoc=='SMM012'||contentsLoc=='SMM013'){
+			if(!gagajf.checkRequired("#contentsTitleForm")){
+				return;
+			}
+		}
+
 		var titleBool = true;
 		$("#popSortable").find('input[name=title]').each(function(idx, title) {
 			if ($(title).val()==''){
@@ -191,6 +222,10 @@
 			var strTitle2 = '';
 			var strTitle3 = '';
 			var strTitle4 = '';
+			var subText1 = '';
+			var subText2 = '';
+			var subText3 = '';
+			var subText4 = '';
 			var i = 1;
 			$(this).find('input[name=imgPath]').each(function(){
 				eval("imgPath" + i + "='"+$(this).val()+"'");
@@ -215,6 +250,12 @@
 				eval("strVar" + i + "='"+val+"'");
 				i++;
 			});
+			i = 1;
+			$(this).find('input[name=subText]').each(function(){
+				var subText = $(this).val().replace(/[\']/gi, "\\'");
+				eval("subText" + i + "='"+subText+"'");
+				i++;
+			});
 
 			var dispStdt = $(this).find("[name=dispStdt]").val().replace(/[^0-9]/g, '') + "" +$(this).find("[name=stTimeHour]").val().replace('시', '') + "" +$(this).find("[name=stTimeMin]").val().replace('분', '') + "00";
 			var dispEddt = $(this).find("[name=dispEddt]").val().replace(/[^0-9]/g, '') + "" +$(this).find("[name=edTimeHour]").val().replace('시', '') + "" +$(this).find("[name=edTimeMin]").val().replace('분', '') + "59";
@@ -238,12 +279,17 @@
 				, strTitle2 : strTitle2
 				, strTitle3 : strTitle3
 				, strTitle4 : strTitle4
+				, subText1 : subText1
+				, subText2 : subText2
+				, subText3 : subText3
+				, subText4 : subText4
 				, useYn : 'Y'
 				, dispOrd : dispOrd
 			};
 
 			dataArr.push(data);
 		});
+
 		if(dataArr.length==0){
 			var data = {cateNo : cateNo
 				, contentsLoc : contentsLoc
@@ -285,6 +331,16 @@
 			dataArr = dataArrSort;
 		}
 
+		if(contentsLoc=='SMM002'||contentsLoc=='SMM003'||contentsLoc=='SMM004'||contentsLoc=='SMM006'||contentsLoc=='SMM007'
+				||contentsLoc=='SMM010' ||contentsLoc=='SMM012'||contentsLoc=='SMM013'){
+			var data = {
+				cateNo : cateNo
+				, contentsLoc : contentsLoc
+				, contentsTitle : $("#contentsTitleForm input[name=contentsTitle]").val()
+			}
+			dataArr.push(data);
+		}
+
 		var jsonData = JSON.stringify(dataArr);
 		mcxDialog.confirm('컨텐츠를 저장 하시겠습니까?', {
 			cancelBtnText: "취소",
@@ -337,6 +393,27 @@
 		}
 	}
 
+	/**
+	 * 서브텍스트추가
+	 */
+	var fnAddSubTextPopRow = function (param){
+		var val = typeof param=='object'?'':param;
+		var html = '<tr name="subTextPopRow">'
+		html += '<th>서브텍스트</th>';
+		html += '<td><input type="text" name="subText" maxlength="200" value="'+val+'"/></td>';
+		html += '<td class="aL"><button type="button" class="btn icn" onclick="fnDeleteTrRow(this);"><i class="fa fa-times" aria-hidden="true"></i></button></td>';
+		html += '</tr>';
+		if(typeof param == 'object'){
+			if($(param).closest("table").find("tbody").find("tr[name=subTextPopRow]").length>3){
+				mcxDialog.alert("서브텍스트는 4개까지 등록 가능합니다");
+				return;
+			}
+			$(param).closest("table").find("tbody").append(html);
+		}else{
+			return html;
+		}
+	}
+
 	/**
 	 * 이미지 추가
 	 */
@@ -446,6 +523,14 @@
 
 	$(document).ready(function() {
 		$("#popTitle").text("["+contentsLoc+"] "+gagaAgGrid.lookupValue(contentsLocArr, contentsLoc));
+
+		if(contentsLoc=='SMM002'||contentsLoc=='SMM003'||contentsLoc=='SMM004'||contentsLoc=='SMM006'||contentsLoc=='SMM007'
+				||contentsLoc=='SMM010' ||contentsLoc=='SMM012'||contentsLoc=='SMM013'){
+			$("#contentsTitleForm").show();
+		}else{
+			$("#contentsTitleForm").hide();
+		}
+
 		$("#popSortable").disableSelection();
 		fnGetContentsPreviewList();
 	});

+ 71 - 3
src/main/webapp/WEB-INF/views/display/MainListForm.html

@@ -353,12 +353,12 @@
 			}
 		});
 
-		if(cate1No=='100'){
+		if(cate1No=='1700'){
 			contentsLocHtml += '<option value="SGNB001">[SGNB001] STYLE24MALL > GNB > TOP배너</option>';
 			contentsLocHtml += '<option value="STAB001">[STAB001] STYLE24MALL > GNB > 카테고리탭</option>';
 			contentsLocHtml += '<option value="SKEY001">[SKEY001] STYLE24MALL > GNB > 검색어</option>';
 		}
-		if(cate1No=='101'){
+		if(cate1No=='4700'){
 			contentsLocHtml += '<option value="SGNB002">[SGNB001] STYLE24MALL > GNB > TOP배너(모바일)</option>';
 			contentsLocHtml += '<option value="STAB001">[STAB001] STYLE24MALL > GNB > 카테고리탭</option>';
 			contentsLocHtml += '<option value="SKEY001">[SKEY001] STYLE24MALL > GNB > 검색어</option>';
@@ -560,10 +560,31 @@
 			cateNo = $("#searchForm select[name=cate2No]").val().split(',')[0];
 		}
 		var contentsLoc = $(obj).closest("td").find('input:hidden[name="contentsLoc"]').val();
-		console.log('fnChangeContents contentsLoc>>> '+contentsLoc);
 		cfnOpenMainContentsPopup(cateNo, contentsLoc);
 	}
 
+	/**
+	 * 첨부파일 등록
+	 */
+	var fnFileUpload = function (obj, ind){
+		var file = obj.files[0];
+		file.name = 'test';
+		if (typeof(file) == 'undefined'){
+			return;
+		}
+		gagajf.ajaxFileUpload('/common/file/upload?subDir=/display/main'
+				, file
+				, function(result) {
+					$(obj).closest('div').find('input:hidden[name=sysFileNm]').val(result.oldFileName);
+					$(obj).closest('div').find('input:hidden[name=newSysFileNm]').val(result.newFileName);
+					$("#bannerPreViewUrl_"+ind).attr('src', $("#uploadDefaultUrl").val()+result.newFileName);
+					$("#imgView_"+ind).removeClass("off").addClass("on");
+					//uifnFitGrid();
+				}
+				, 'image'
+		);
+	};
+
 	/**
 	 * 개별 적용 버튼
 	 */
@@ -617,6 +638,53 @@
 		});
 	});
 
+	/**
+	 * 상품관리
+	 */
+	var fnSearchCategory = function (contentsLoc){
+		var val = $("#searchForm select[name=cate1No]").val();
+		var cate1No = '';
+
+		if(val.split(',')[1]=='Y'){
+			cate1No = val.split(',')[0];
+		}else{
+			cate1No = $("#searchForm select[name=cate2No]").val().split(',')[0];
+		}
+
+		var data = {
+			contentsLoc : contentsLoc
+			,cate1No : cate1No
+		};
+		var jsonData = JSON.stringify(data);
+		gagajf.ajaxJsonSubmit('/display/category4srch/list', jsonData, fnGoodsMng);
+	};
+
+	var fnGoodsMng = function (result){
+		var selLvl = 6;
+		if(gagajf.isNull(result.cate4No)){
+			selLvl = 5;
+		}
+		if(gagajf.isNull(result.cate3No)){
+			selLvl = 4;
+		}
+		if(gagajf.isNull(result.cate2No)){
+			selLvl = 3;
+		}
+
+		console.log('mainListForm result cateCd>>'+result.leafCateNo);
+
+		var params = 'cateGb='+result.cateGb;
+		params += '&cateType='+result.cateType;
+		params += '&cate1No='+result.cate1No;
+		params += '&cate2No='+result.cate2No;
+		params += '&cate3No='+result.cate3No;
+		params += '&cate4No='+result.cate4No;
+		params += '&selLvl='+selLvl;
+		params += '&cateCd='+result.leafCateNo;
+		params += '&goodsAddYn=Y';
+		cfnOpenGoodsDispOrdChangePopup('', params);
+	};
+
 	$(document).ready(function() {
 		var today = new Date(_today);
 		var yesterDay = new Date(today.getFullYear(), today.getMonth(), today.getDate()+1).format("YYYY-MM-DD");

File diff suppressed because it is too large
+ 862 - 814
src/main/webapp/WEB-INF/views/marketing/PlanTemplatePopupForm.html


Some files were not shown because too many files changed in this diff