Browse Source

GNB탭 리스트 노출

gagamel 5 years ago
parent
commit
9bfff324af

+ 6 - 5
src/main/java/com/style24/front/biz/dao/TsfDisplayDao.java

@@ -1,6 +1,7 @@
 package com.style24.front.biz.dao;
 
 import java.util.Collection;
+import java.util.List;
 
 import com.style24.core.support.annotation.ShopDs;
 import com.style24.persistence.domain.BrandGroup;
@@ -56,7 +57,7 @@ public interface TsfDisplayDao {
 	 * @author gagamel
 	 * @since 2021. 3. 11
 	 */
-	Collection<Cate1> getCategory1List(Cate4Srch cate);
+	List<Cate1> getCategory1List(Cate4Srch cate);
 
 	/**
 	 * 카테고리2 목록
@@ -65,7 +66,7 @@ public interface TsfDisplayDao {
 	 * @author gagamel
 	 * @since 2021. 3. 11
 	 */
-	Collection<Cate2> getCategory2List(Cate4Srch cate);
+	List<Cate2> getCategory2List(Cate4Srch cate);
 
 	/**
 	 * 카테고리3 목록
@@ -74,7 +75,7 @@ public interface TsfDisplayDao {
 	 * @author gagamel
 	 * @since 2021. 3. 11
 	 */
-	Collection<Cate3> getCategory3List(Cate4Srch cate);
+	List<Cate3> getCategory3List(Cate4Srch cate);
 
 	/**
 	 * 카테고리4 목록
@@ -83,7 +84,7 @@ public interface TsfDisplayDao {
 	 * @author gagamel
 	 * @since 2021. 3. 11
 	 */
-	Collection<Cate4> getCategory4List(Cate4Srch cate);
+	List<Cate4> getCategory4List(Cate4Srch cate);
 
 	/**
 	 * 카테고리5 목록
@@ -92,6 +93,6 @@ public interface TsfDisplayDao {
 	 * @author gagamel
 	 * @since 2021. 3. 11
 	 */
-	Collection<Cate5> getCategory5List(Cate4Srch cate);
+	List<Cate5> getCategory5List(Cate4Srch cate);
 
 }

+ 109 - 25
src/main/java/com/style24/front/biz/service/TsfDisplayService.java

@@ -1,16 +1,24 @@
 package com.style24.front.biz.service;
 
-import com.style24.core.support.env.TscConstants;
-import com.style24.front.biz.dao.TsfDisplayDao;
-import com.style24.front.support.env.TsfConstants;
-import com.style24.persistence.domain.*;
-import lombok.extern.slf4j.Slf4j;
+import java.util.Collection;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.cache.annotation.Cacheable;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
-import java.util.Collection;
+import com.style24.core.support.env.TscConstants;
+import com.style24.front.biz.dao.TsfDisplayDao;
+import com.style24.front.support.env.TsfConstants;
+import com.style24.persistence.domain.BrandGroup;
+import com.style24.persistence.domain.Cate1;
+import com.style24.persistence.domain.Cate2;
+import com.style24.persistence.domain.Cate3;
+import com.style24.persistence.domain.Cate4;
+import com.style24.persistence.domain.Cate4Srch;
+import com.style24.persistence.domain.Contents;
+import com.style24.persistence.domain.GnbTab;
+
+import lombok.extern.slf4j.Slf4j;
 
 /**
  * 전시 Service
@@ -43,19 +51,8 @@ public class TsfDisplayService {
 	 * @author gagamel
 	 * @date 2021. 3. 11
 	 */
-	public Collection<GnbTab> getGnbTapList(GnbTab gnbTab) {
-		// GNB 탭 목록
-		Collection<GnbTab> tapList = displayDao.getGnbTabList(gnbTab);
-
-		if (tapList != null && !tapList.isEmpty()) {
-			for (GnbTab tab : tapList) {
-				if (tab.getContentsType().equals("C") || tab.getContentsType().equals("O")) { // 컨텐츠유형:카테고리, 아울렛
-					gnbTab.setCateList(this.getCategoryList(TsfConstants.CateGb.BYITEM.value(), tab.getCate1No()));
-				}
-			}
-		}
-
-		return tapList;
+	public Collection<GnbTab> getGnbTabList(GnbTab gnbTab) {
+		return displayDao.getGnbTabList(gnbTab);
 	}
 
 	/**
@@ -70,7 +67,7 @@ public class TsfDisplayService {
 	}
 
 	/**
-	 * 카테고리 목록
+	 * FULL 카테고리1 정보
 	 * @param cateGb - 카테고리구분
 	 * @param cate1No - 카테고리1번호
 	 * @return
@@ -78,6 +75,91 @@ public class TsfDisplayService {
 	 * @since 2021. 3. 11
 	 */
 	@Cacheable(value = "cate", key = "'cateList-'.concat(#cateGb).concat(#cate1No)")
+	public Cate1 getFullCategory1(String cateGb, Integer cate1No) {
+		Cate4Srch cate = new Cate4Srch();
+		cate.setSiteCd(TscConstants.Site.STYLE24.value()); // 사이트코드
+		cate.setCateGb(cateGb); // 카테고리구분
+		cate.setCateType(TsfConstants.CateType.GOODS.value()); // 상품분류카테고리
+		cate.setCate1No(cate1No);
+		return this.getFullCategory1(cate);
+	}
+
+	/**
+	 * FULL 카테고리1 정보
+	 * @param cate - 카테고리 정보
+	 * @return
+	 * @author gagamel
+	 * @since 2021. 3. 11
+	 */
+	public Cate1 getFullCategory1(Cate4Srch cate) {
+		// 카테고리1 정보
+		Cate1 cate1 = displayDao.getCategory1List(cate).get(0);
+
+		if (cate1 != null) {
+			if (cate1.getLeafYn().equals("N")) {
+				cate.setCate1No(cate1.getCate1No());
+
+				// 카테고리2 목록
+				Collection<Cate2> cate2List = displayDao.getCategory2List(cate);
+
+				if (cate2List != null && !cate2List.isEmpty()) {
+					for (Cate2 cate2 : cate2List) {
+						if (cate2.getLeafYn().equals("N")) {
+							cate.setCate2No(cate2.getCate2No());
+
+							// 카테고리3 목록
+							Collection<Cate3> cate3List = displayDao.getCategory3List(cate);
+
+							if (cate3List != null && !cate3List.isEmpty()) {
+								for (Cate3 cate3 : cate3List) {
+									if (cate3.getLeafYn().equals("N")) {
+										cate.setCate3No(cate3.getCate3No());
+
+										// 카테고리4 목록
+										Collection<Cate4> cate4List = displayDao.getCategory4List(cate);
+
+										if (cate4List != null && !cate4List.isEmpty()) {
+											for (Cate4 cate4 : cate4List) {
+												if (cate4.getLeafYn().equals("N")) {
+													cate.setCate4No(cate4.getCate4No());
+
+													// 카테고리5 목록 담기
+													cate4.setCate5List(displayDao.getCategory5List(cate));
+												}
+											}
+
+											log.info("cate4List: {}", cate4List);
+
+											// 카테고리4 목록 담기
+											cate3.setCate4List(cate4List);
+										}
+									}
+								}
+
+								// 카테고리3 목록 담기
+								cate2.setCate3List(cate3List);
+							}
+						}
+					}
+
+					// 카테고리2 목록 담기
+					cate1.setCate2List(cate2List);
+				}
+			}
+		}
+
+		return cate1;
+	}
+
+	/**
+	 * 카테고리 목록
+	 * @param cateGb - 카테고리구분
+	 * @param cate1No - 카테고리1번호
+	 * @return
+	 * @author gagamel
+	 * @since 2021. 3. 11
+	 */
+//	@Cacheable(value = "cate", key = "'cateList-'.concat(#cateGb).concat(#cate1No)")
 	public Collection<Cate1> getCategoryList(String cateGb, Integer cate1No) {
 		Cate4Srch cate = new Cate4Srch();
 		cate.setSiteCd(TscConstants.Site.STYLE24.value()); // 사이트코드
@@ -96,7 +178,7 @@ public class TsfDisplayService {
 	 * @since 2021. 3. 11
 	 */
 	public Collection<Cate1> getAllCategoryList(Cate4Srch cate) {
-		Collection<Cate1> fullCateList = new ArrayList<>();
+//		Collection<Cate1> fullCateList = new ArrayList<>();
 
 		// 카테고리1 목록
 		Collection<Cate1> cate1List = displayDao.getCategory1List(cate);
@@ -135,6 +217,8 @@ public class TsfDisplayService {
 													}
 												}
 
+												log.info("cate4List: {}", cate4List);
+
 												// 카테고리4 목록 담기
 												cate3.setCate4List(cate4List);
 											}
@@ -151,12 +235,12 @@ public class TsfDisplayService {
 						cate1.setCate2List(cate2List);
 					}
 				}
-
-				fullCateList.add(cate1);
 			}
 		}
 
-		return fullCateList;
+		log.info("cate1List: {}", cate1List);
+
+		return cate1List;
 	}
 
 }

+ 33 - 24
src/main/java/com/style24/front/biz/web/TsfDisplayController.java

@@ -1,12 +1,8 @@
 package com.style24.front.biz.web;
 
-import com.style24.core.support.message.TscMessageByLocale;
-import com.style24.front.biz.service.TsfDisplayService;
-import com.style24.front.support.controller.TsfBaseController;
-import com.style24.persistence.domain.BrandGroup;
-import com.style24.persistence.domain.Contents;
-import com.style24.persistence.domain.GnbTab;
-import lombok.extern.slf4j.Slf4j;
+import java.util.Collection;
+import java.util.HashMap;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.mobile.device.Device;
 import org.springframework.stereotype.Controller;
@@ -16,8 +12,18 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.servlet.ModelAndView;
 
-import java.util.Collection;
-import java.util.HashMap;
+import com.style24.core.support.env.TscConstants;
+import com.style24.core.support.message.TscMessageByLocale;
+import com.style24.front.biz.service.TsfDisplayService;
+import com.style24.front.support.controller.TsfBaseController;
+import com.style24.front.support.env.TsfConstants;
+import com.style24.persistence.domain.BrandGroup;
+import com.style24.persistence.domain.Cate1;
+import com.style24.persistence.domain.Cate4Srch;
+import com.style24.persistence.domain.Contents;
+import com.style24.persistence.domain.GnbTab;
+
+import lombok.extern.slf4j.Slf4j;
 
 /**
  * 전시 Controller
@@ -74,25 +80,28 @@ public class TsfDisplayController extends TsfBaseController {
 	 * @author gagamel
 	 * @since 2020. 3. 11
 	 */
-	@GetMapping("/gnb/tap/list")
+	@GetMapping("/gnb/tab/list")
 	@ResponseBody
-	public Collection<GnbTab> getGnbTapList(GnbTab gnbTab) {
+	public Collection<GnbTab> getGnbTabList(GnbTab gnbTab) {
 		gnbTab.setGtabGb("C"); // 공통GNB
-		return displayService.getGnbTapList(gnbTab);
+		return displayService.getGnbTabList(gnbTab);
 	}
 
-//	/**
-//	 * 전체 카테고리 목록
-//	 * @return
-//	 * @throws Exception
-//	 * @author gagamel
-//	 * @since 2020. 2. 7
-//	 */
-//	@GetMapping("/all/cate/list")
-//	@ResponseBody
-//	public Collection<Cate4Srch> getAllCategoryList() {
+	/**
+	 * 전체 카테고리 목록
+	 * @return
+	 * @author gagamel
+	 * @since 2021. 3. 15
+	 */
+	@GetMapping("/all/cate/list")
+	@ResponseBody
+	public Collection<Cate1> getAllCategoryList() {
 //		String soldoutGoodsDisplayYn = policyService.getSoldoutGoodsDisplayYn(WfoConstants.SITE_CD);
-//		return displayService.getAllCategoryList(WfoConstants.CATE_GB.BYITEM.value(), soldoutGoodsDisplayYn);
-//	}
+		Cate4Srch cate = new Cate4Srch();
+		cate.setSiteCd(TscConstants.Site.STYLE24.value()); // 사이트코드
+		cate.setCateGb(TsfConstants.CateGb.BYITEM.value()); // 카테고리구분
+		cate.setCateType(TsfConstants.CateType.GOODS.value()); // 상품분류카테고리
+		return displayService.getAllCategoryList(cate);
+	}
 
 }

+ 3 - 3
src/main/java/com/style24/persistence/domain/GnbTab.java

@@ -1,9 +1,8 @@
 package com.style24.persistence.domain;
 
 import com.style24.persistence.TscBaseDomain;
-import lombok.Data;
 
-import java.util.Collection;
+import lombok.Data;
 
 /**
  * 컨텐츠 Domain
@@ -30,6 +29,7 @@ public class GnbTab extends TscBaseDomain {
 	private String viewDt;			// 미리보기일시
 	private String preview;			// 미리보기여부
 
-	private Collection<Cate1> cateList;	// 카테고리목록
+	private Cate1 fullCate1;		// FULL카테고리1
+//	private Collection<Cate1> cateList;	// 카테고리목록
 
 }

+ 35 - 10
src/main/java/com/style24/persistence/mybatis/shop/TsfDisplay.xml

@@ -251,9 +251,14 @@
 		AND    USE_YN = 'Y'
 		AND    EXISTS (SELECT 1
 		               FROM   TB_CATE_STOCK
-		               WHERE  CATE_GB = A.CATE_GB
-		               AND    BRAND_GROUP_NO = CASE WHEN A.CATE_GB = 'G032_102' THEN #{brandGroupNo} ELSE 0 END
+		               WHERE  SITE_CD = A.SITE_CD
 		               AND    CATE_NO = A.CATE1_NO
+		               <if test='brandGroupNo != null'>
+		               AND    BRAND_GROUP_NO = #{brandGroupNo}
+		               </if>
+		               <if test='formalGb != null'>
+		               AND    FORMAL_GB = #{formalGb}
+		               </if>
 		               <if test='soldoutGoodsDispYn != null and soldoutGoodsDispYn =="N"'>
 		               AND    STOCK_QTY > 0 /*품절상품전시여부:N일 때 재고가 있는 카테고리만*/
 		               </if>
@@ -279,9 +284,14 @@
 		AND    USE_YN = 'Y'
 		AND    EXISTS (SELECT 1
 		               FROM   TB_CATE_STOCK
-		               WHERE  CATE_GB = A.CATE_GB
-		               AND    BRAND_GROUP_NO = CASE WHEN A.CATE_GB = 'G032_102' THEN #{brandGroupNo} ELSE 0 END
+		               WHERE  SITE_CD = A.SITE_CD
 		               AND    CATE_NO = A.CATE2_NO
+		               <if test='brandGroupNo != null'>
+		               AND    BRAND_GROUP_NO = #{brandGroupNo}
+		               </if>
+		               <if test='formalGb != null'>
+		               AND    FORMAL_GB = #{formalGb}
+		               </if>
 		               <if test='soldoutGoodsDispYn != null and soldoutGoodsDispYn =="N"'>
 		               AND    STOCK_QTY > 0 /*품절상품전시여부:N일 때 재고가 있는 카테고리만*/
 		               </if>
@@ -309,9 +319,14 @@
 		AND    USE_YN = 'Y'
 		AND    EXISTS (SELECT 1
 		               FROM   TB_CATE_STOCK
-		               WHERE  CATE_GB = A.CATE_GB
-		               AND    BRAND_GROUP_NO = CASE WHEN A.CATE_GB = 'G032_102' THEN #{brandGroupNo} ELSE 0 END
+		               WHERE  SITE_CD = A.SITE_CD
 		               AND    CATE_NO = A.CATE3_NO
+		               <if test='brandGroupNo != null'>
+		               AND    BRAND_GROUP_NO = #{brandGroupNo}
+		               </if>
+		               <if test='formalGb != null'>
+		               AND    FORMAL_GB = #{formalGb}
+		               </if>
 		               <if test='soldoutGoodsDispYn != null and soldoutGoodsDispYn =="N"'>
 		               AND    STOCK_QTY > 0 /*품절상품전시여부:N일 때 재고가 있는 카테고리만*/
 		               </if>
@@ -341,9 +356,14 @@
 		AND    USE_YN = 'Y'
 		AND    EXISTS (SELECT 1
 		               FROM   TB_CATE_STOCK
-		               WHERE  CATE_GB = A.CATE_GB
-		               AND    BRAND_GROUP_NO = CASE WHEN A.CATE_GB = 'G032_102' THEN #{brandGroupNo} ELSE 0 END
+		               WHERE  SITE_CD = A.SITE_CD
 		               AND    CATE_NO = A.CATE4_NO
+		               <if test='brandGroupNo != null'>
+		               AND    BRAND_GROUP_NO = #{brandGroupNo}
+		               </if>
+		               <if test='formalGb != null'>
+		               AND    FORMAL_GB = #{formalGb}
+		               </if>
 		               <if test='soldoutGoodsDispYn != null and soldoutGoodsDispYn =="N"'>
 		               AND    STOCK_QTY > 0 /*품절상품전시여부:N일 때 재고가 있는 카테고리만*/
 		               </if>
@@ -375,9 +395,14 @@
 		AND    USE_YN = 'Y'
 		AND    EXISTS (SELECT 1
 		               FROM   TB_CATE_STOCK
-		               WHERE  CATE_GB = A.CATE_GB
-		               AND    BRAND_GROUP_NO = CASE WHEN A.CATE_GB = 'G032_102' THEN #{brandGroupNo} ELSE 0 END
+		               WHERE  SITE_CD = A.SITE_CD
 		               AND    CATE_NO = A.CATE5_NO
+		               <if test='brandGroupNo != null'>
+		               AND    BRAND_GROUP_NO = #{brandGroupNo}
+		               </if>
+		               <if test='formalGb != null'>
+		               AND    FORMAL_GB = #{formalGb}
+		               </if>
 		               <if test='soldoutGoodsDispYn != null and soldoutGoodsDispYn =="N"'>
 		               AND    STOCK_QTY > 0 /*품절상품전시여부:N일 때 재고가 있는 카테고리만*/
 		               </if>

+ 96 - 98
src/main/webapp/WEB-INF/views/web/common/fragments/GnbWeb.html

@@ -168,113 +168,116 @@
 
 	<script th:inline="javascript">
 		/*<![CDATA[*/
+		// 전체카테고리 조회
+		let allCate;
+		let fnGetAllCategory = function() {
+			$.getJSON('/display/all/cate/list'
+				, function(result, status) {
+					if (status == 'success') {
+						allCate = result;
+						
+						// GNB탭 > 브랜드 생성
+						fnCreateGnbBrandGroup();
+					}
+			});
+		}
+		
 		// GNB탭 > 카테고리
-		let fnGetGnbCategory = function(cateList) {
+		let fnGetGnbCategory = function(cate1) {
 			let tag = '';
-
-			if (cateList.length > 0) {
-				$.each(cateList, function(idx1, cate1) {
-					tag += '<li class="has_depth">\n'; //depth_menu 있을 시 has_depth 클래스 추가
-					tag += '	<a href="javascript:void(0);" onclick="cfnGoToCategory(' + cate1.cate1Nm + ');">' + cate1.cate1Nm + '</a>\n';
-					tag += '	<div class="depth_menu category">\n';
-					tag += '		<div class="head_category">\n';
-					tag += '			<div class="tit">\n';
-					tag += '				<p>' + cate1.cate1Nm + '</p>\n';
-					tag += '				<a href="javascript:void(0);" onclick="cfnGoToCategory(' + cate1.cate1No + ');" class="more">전체보기</a>\n';
+			if (cate1 != null) {
+				tag += '<li class="has_depth">\n'; //depth_menu 있을 시 has_depth 클래스 추가
+				tag += '	<a href="javascript:void(0);" onclick="cfnGoToCategory(' + cate1.cate1Nm + ');">' + cate1.cate1Nm + '</a>\n';
+				tag += '	<div class="depth_menu category">\n';
+				tag += '		<div class="head_category">\n';
+				tag += '			<div class="tit">\n';
+				tag += '				<p>' + cate1.cate1Nm + '</p>\n';
+				tag += '				<a href="javascript:void(0);" onclick="cfnGoToCategory(' + cate1.cate1No + ');" class="more">전체보기</a>\n';
+				tag += '			</div>\n';
+				if (cate1.leafYn == 'N' && cate1.cate2List.length > 0) {
+					tag += '			<div class="menu">\n';
+					tag += '				<ul class="maintabs">\n';
+					$.each(cate1.cate2List, function(idx2, cate2) {
+						tag += '					<li>\n';
+						tag += '						<a href="javascript:void(0);" onclick="cfnGoToCategoryMain(\'' + cate2.cateGb + '\',\'' + cate2.cate1No + '\',\'' + cate2.cate2No + '\');">' + cate2.cate2Nm + '</a>\n';
+						if (cate2.leafYn == 'N' && cate2.cate3List.length > 0) {
+							tag += '						<ul class="box_depth2">\n';
+							$.each(cate2.cate3List, function(idx3, cate3) {
+								tag += '							<li>\n';
+								tag += '								<a href="javascript:void(0);" onclick="cfnGoToCategoryMain(\'' + cate3.cateGb + '\',\'' + cate3.cate1No + '\',\'' + cate3.cate2No + '\',\'' + cate3.cate3No + '\');">' + cate3.cate3Nm + '</a>\n';
+								if (cate3.leafYn == 'N' && cate3.cate4List.length > 0) {
+									tag += '								<ul class="box_depth3">\n';
+									$.each(cate3.cate4List, function(idx4, cate4) {
+										tag += '									<li><a href="javascript:void(0);" onclick="cfnGoToCategoryMain(\'' + cate4.cateGb + '\',\'' + cate4.cate1No + '\',\'' + cate4.cate2No + '\',\'' + cate4.cate3No + '\',\'' + cate4.cate4No + '\');">' + cate4.cate4Nm + '</a></li>\n';
+									});
+									tag += '								</ul>\n';
+								}
+								tag += '							</li>\n';
+							});
+							tag += '						</ul>\n';
+						}
+						tag += '					</li>\n';
+					});
+					tag += '				</ul>\n';
 					tag += '			</div>\n';
+					tag += '		</div>\n';
+					tag += '	</div>\n';
+				}
 
-					if (cate1.leafYn == 'N' && cate1.cate2List.length > 0) {
-						tag += '			<div class="menu">\n';
-						tag += '				<ul class="maintabs">\n';
-
-						$.each(cate1.cate2List, function(idx2, cate2) {
-							tag += '					<li>\n';
-							tag += '						<a href="javascript:void(0);" onclick="cfnGoToCategoryMain(\'' + cate2.cateGb + '\',\'' + cate2.cate1No + '\',\'' + cate2.cate2No + '\');">' + cate2.cate2Nm + '</a>\n';
-
-							if (cate2.leafYn == 'N' && cate2.cate3List.length > 0) {
-								tag += '						<ul class="box_depth2">\n';
-
-								$.each(cate2.cate3List, function(idx3, cate3) {
-									tag += '							<li>\n';
-									tag += '								<a href="javascript:void(0);" onclick="cfnGoToCategoryMain(\'' + cate3.cateGb + '\',\'' + cate3.cate1No + '\',\'' + cate3.cate2No + '\',\'' + cate3.cate3No + '\');">' + cate3.cate3Nm + '</a>\n';
-
-									if (cate3.leafYn == 'N' && cate3.cate4List.length > 0) {
-										tag += '								<ul class="box_depth3">\n';
-
-										$.each(cate3.cate4List, function(idx4, cate4) {
-											tag += '									<li><a href="javascript:void(0);" onclick="cfnGoToCategoryMain(\'' + cate4.cateGb + '\',\'' + cate4.cate1No + '\',\'' + cate4.cate2No + '\',\'' + cate4.cate3No + '\',\'' + cate4.cate4No + '\');">' + cate4.cate4Nm + '</a></li>\n';
-										});
-
-										tag += '								</ul>\n';
-									}
-
-									tag += '							</li>\n';
-								});
-
-								tag += '						</ul>\n';
-							}
-
-							tag += '					</li>\n';
-						});
-
-						tag += '				</ul>\n';
-						tag += '			</div>\n';
-						tag += '		</div>\n';
-						tag += '	</div>\n';
-					}
-
-					// if (cate1.bannerList.length > 0) {
-					// 	tag += '	<div class="head_banner">\n';
-					// 	tag += '		<div class="tit">\n';
-					// 	tag += '			<p>가을의 신상 만나기</p>\n';
-					// 	tag += '		</div>\n';
-					// 	tag += '		<div class="list">\n';
-					// 	tag += '			<ul class="clear event_con">\n';
-					// 	tag += '				<li>\n';
-					// 	tag += '					<a href="">\n';
-					// 	tag += '						<div class="ev_img"><img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션"></div>\n';
-					// 	tag += '						<div class="txt">\n';
-					// 	tag += '							<p class="tit">2020 FALL COLLECTION 가을에는 이 컬러 2020 FALL COLLECTION 가을에는 이 컬러</p>\n';
-					// 	tag += '						</div>\n';
-					// 	tag += '					</a>\n';
-					// 	tag += '				</li>\n';
-					// 	tag += '				<li>\n';
-					// 	tag += '					<a href="">\n';
-					// 	tag += '						<div class="ev_img"><img src="/images/pc/thumb/ev_list_img02.jpg" alt="단 48시간, 퓨어캐시미어 최대 80%세일 PURE CASHMERE 48H POP-UP"></div>\n';
-					// 	tag += '						<div class="txt">\n';
-					// 	tag += '							<p class="tit">FALL NEW ARRIVAL</p>\n';
-					// 	tag += '						</div>\n';
-					// 	tag += '					</a>\n';
-					// 	tag += '				</li>\n';
-					// 	tag += '			</ul>\n';
-					// 	tag += '		</div>\n';
-					// 	tag += '	</div>\n';
-					// }
-
-					tag += '</li>\n';
-				});
+				// if (cate1.bannerList.length > 0) {
+				// 	tag += '	<div class="head_banner">\n';
+				// 	tag += '		<div class="tit">\n';
+				// 	tag += '			<p>가을의 신상 만나기</p>\n';
+				// 	tag += '		</div>\n';
+				// 	tag += '		<div class="list">\n';
+				// 	tag += '			<ul class="clear event_con">\n';
+				// 	tag += '				<li>\n';
+				// 	tag += '					<a href="">\n';
+				// 	tag += '						<div class="ev_img"><img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션"></div>\n';
+				// 	tag += '						<div class="txt">\n';
+				// 	tag += '							<p class="tit">2020 FALL COLLECTION 가을에는 이 컬러 2020 FALL COLLECTION 가을에는 이 컬러</p>\n';
+				// 	tag += '						</div>\n';
+				// 	tag += '					</a>\n';
+				// 	tag += '				</li>\n';
+				// 	tag += '				<li>\n';
+				// 	tag += '					<a href="">\n';
+				// 	tag += '						<div class="ev_img"><img src="/images/pc/thumb/ev_list_img02.jpg" alt="단 48시간, 퓨어캐시미어 최대 80%세일 PURE CASHMERE 48H POP-UP"></div>\n';
+				// 	tag += '						<div class="txt">\n';
+				// 	tag += '							<p class="tit">FALL NEW ARRIVAL</p>\n';
+				// 	tag += '						</div>\n';
+				// 	tag += '					</a>\n';
+				// 	tag += '				</li>\n';
+				// 	tag += '			</ul>\n';
+				// 	tag += '		</div>\n';
+				// 	tag += '	</div>\n';
+				// }
+				tag += '</li>\n';
 			}
-
 			return tag;
 		}
 
 		// GNB탭 생성
-		let fnCreateGnbTap = function() {
-			$.getJSON('/display/gnb/tap/list'
+		let fnCreateGnbTab = function() {
+			$.getJSON('/display/gnb/tab/list'
 				, function(result, status) {
 					if (status == 'success') {
 						if (result.length > 0) {
 							$('#divGnbTab').html('');
 							$('#ulGnbTab').html('');
-
 							$.each(result, function(idx, item) {
+								console.log(item);
+								
 								if (item.contentsType == 'C' || item.contentsType == 'O') { // 컨텐츠유형:카테고리, 아울렛
-									let gnbCate = fnGetGnbCategory(item.cateList);
-									$('#divGnbTab').append(gnbCate);
-									$('#ulGnbTab').append(gnbCate);
+									$.each(allCate, function(allCateIdx, allCateItem) {
+										if (item.cate1No == allCateItem.cate1No) {
+											let gnbCate = fnGetGnbCategory(allCateItem);
+											$('#divGnbTab').append(gnbCate);
+											$('#ulGnbTab').append(gnbCate);
+										}
+									});
 								} else if (item.contentsType == 'L') { // 컨텐츠유형:링크
-									$('#divGnbTab').append('<li><a href="' + item.linkUrl + '">' + item.title + '</a></li>');
-									$('#ulGnbTab').append('<li><a href="' + item.linkUrl + '">' + item.title + '</a></li>');
+									$('#divGnbTab').append('<li><a href="' + item.linkUrl + '">' + item.gtabNm + '</a></li>');
+									$('#ulGnbTab').append('<li><a href="' + item.linkUrl + '">' + item.gtabNm + '</a></li>');
 								}
 							});
 						}
@@ -291,7 +294,6 @@
 							$('#divGnbBrandGrp').html('');
 							let tag = '';
 							let prevTitle = '';
-
 							$.each(result, function (idx, item) {
 								if (prevTitle != item.title) {
 									if (idx > 0) {
@@ -299,7 +301,6 @@
 										tag += '	</div>\n';
 										tag += '</div>\n';
 									}
-
 									tag += '<div class="row">\n';
 									tag += '	<p>' + item.title + '</p>\n';
 									tag += '	<div class="brand_list swiper-container">\n';
@@ -312,18 +313,14 @@
 									tag += '				</a>\n';
 									tag += '			</li>\n';
 								}
-
 								prevTitle = item.title;
 							});
-
 							tag += '		</ul>\n';
 							tag += '	</div>\n';
 							tag += '</div>\n';
-
 							$('#divGnbBrandGrp').html(tag);
 						}
-
-						fnCreateGnbTap();
+						fnCreateGnbTab();
 					}
 			});
 		}
@@ -393,7 +390,8 @@
 				},
 			});
 
-			fnCreateGnbBrandGroup();
+			// 전체 카테고리 조회
+			fnGetAllCategory();
 		});
 		/*]]>*/
 	</script>