Просмотр исходного кода

Merge remote-tracking branch 'origin/develop' into xodud1202

xodud lee 5 лет назад
Родитель
Сommit
868c15a3f0
27 измененных файлов с 245 добавлено и 108 удалено
  1. 2 0
      src/main/java/com/style24/front/biz/service/TsfGiftcardService.java
  2. 8 8
      src/main/java/com/style24/front/biz/service/TsfGoodsService.java
  3. 4 0
      src/main/java/com/style24/front/biz/service/TsfPlanningService.java
  4. 1 0
      src/main/java/com/style24/front/biz/service/TsfReviewService.java
  5. 3 3
      src/main/java/com/style24/front/biz/thirdparty/SearchEngineDiquest.java
  6. 12 1
      src/main/java/com/style24/front/biz/web/TsfOrderController.java
  7. 21 0
      src/main/java/com/style24/front/support/env/TsfConstants.java
  8. 1 0
      src/main/java/com/style24/persistence/domain/searchengine/SearchEngine.java
  9. 2 0
      src/main/java/com/style24/persistence/mybatis/shop/TsfCustomer.xml
  10. 1 1
      src/main/java/com/style24/persistence/mybatis/shop/TsfGoods.xml
  11. BIN
      src/main/webapp/WEB-INF/lib/Istyle.jar
  12. 1 1
      src/main/webapp/WEB-INF/views/mob/common/fragments/GnbMob.html
  13. 30 11
      src/main/webapp/WEB-INF/views/mob/display/CategoryGoodsListFormMob.html
  14. 5 5
      src/main/webapp/WEB-INF/views/mob/display/LookbookDetailFormMob.html
  15. 4 4
      src/main/webapp/WEB-INF/views/mob/display/MallMainFormMob.html
  16. 37 10
      src/main/webapp/WEB-INF/views/mob/display/SearchGoodsListFormMob.html
  17. 1 1
      src/main/webapp/WEB-INF/views/web/callcenter/NoticeFormWeb.html
  18. 7 1
      src/main/webapp/WEB-INF/views/web/common/fragments/FooterWeb.html
  19. 2 2
      src/main/webapp/WEB-INF/views/web/common/fragments/HeadWeb.html
  20. 1 1
      src/main/webapp/WEB-INF/views/web/display/BestMainFormWeb.html
  21. 25 11
      src/main/webapp/WEB-INF/views/web/display/CategoryGoodsListFormWeb.html
  22. 5 5
      src/main/webapp/WEB-INF/views/web/display/LookbookDetailFormWeb.html
  23. 5 5
      src/main/webapp/WEB-INF/views/web/display/MallMainFormWeb.html
  24. 1 1
      src/main/webapp/WEB-INF/views/web/display/OutletMainFormWeb.html
  25. 46 20
      src/main/webapp/WEB-INF/views/web/display/SearchGoodsListFormWeb.html
  26. 16 16
      src/main/webapp/biz/goods.js
  27. 4 1
      src/main/webapp/biz/search.js

+ 2 - 0
src/main/java/com/style24/front/biz/service/TsfGiftcardService.java

@@ -5,6 +5,7 @@ import java.util.Collection;
 import com.style24.core.biz.thirdparty.Yes24Giftcard;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import com.style24.front.biz.dao.TsfGiftcardDao;
 import com.style24.front.support.security.session.TsfSession;
@@ -84,6 +85,7 @@ public class TsfGiftcardService {
 	 * @throws Exception
 	 * @since 2021. 3. 15
 	 */
+	@Transactional("shopTxnManager")
 	public void createGiftcardUseConfirm(GiftCard giftcard) throws Exception {
 		// 고객번호 설정
 		int custNo = TsfSession.getInfo().getCustNo();

+ 8 - 8
src/main/java/com/style24/front/biz/service/TsfGoodsService.java

@@ -468,7 +468,7 @@ public class TsfGoodsService {
 		boolean returnFlag = false;
 		//String[][] arrGoodsStoreList = null;	// 상품코드, 매장코드, 상품별 주문수량
 
-		log.info("[getGoodsSetStockQty] goodsStock = {}", goodsStock);
+		//log.info("[getGoodsSetStockQty] goodsStock = {}", goodsStock);
 
 		// 예약상품 여부 확인
 		int goodsResSellCount = goodsDao.getGoodsResSellCount(goodsStock.getGoodsCd());
@@ -477,7 +477,7 @@ public class TsfGoodsService {
 		for (String arrGoodsCd : goodsStock.getArrGoodsOption()) {	// [{goodsCd|optCd|qty},{goodsCd|optCd|qty}]
 
 			String[] goodsSizeInfo = arrGoodsCd.split("\\|");
-			log.info("[getGoodsSetStockQty] goodsSizeInfo = {}", goodsSizeInfo);
+			//log.info("[getGoodsSetStockQty] goodsSizeInfo = {}", goodsSizeInfo);
 			if (goodsSizeInfo.length == 3) {
 
 				GoodsStock tmpStock = new GoodsStock();
@@ -492,7 +492,7 @@ public class TsfGoodsService {
 					stockByGoodsSize = goodsDao.getGoodsStoreStockQty(tmpStock);
 				}
 				
-				log.info("[getGoodsSetStockQty] stockByGoodsSize = {}", stockByGoodsSize);
+				//log.info("[getGoodsSetStockQty] stockByGoodsSize = {}", stockByGoodsSize);
 				if (stockByGoodsSize <= 0) {
 					returnFlag = true;
 					break;
@@ -507,7 +507,7 @@ public class TsfGoodsService {
 						}
 					}
 				}
-				log.info("[getGoodsSetStockQty] ableOrderCnt = {}", ableOrderCnt);
+				//log.info("[getGoodsSetStockQty] ableOrderCnt = {}", ableOrderCnt);
 			} else {
 				returnFlag = true;
 				break;
@@ -579,8 +579,8 @@ public class TsfGoodsService {
 		if (tmtbSqList == null || tmtbSqList.isEmpty()) {
 			return result;
 		}
-		log.info("[tmtbSqList]={}",tmtbSqList);
-		log.info("[goods]={}",goods);
+		//log.info("[tmtbSqList]={}",tmtbSqList);
+		//log.info("[goods]={}",goods);
 		int rCount = 0;	//다다익선 조회수
 		int tCount = goods.getMaxRownum();	//리턴 잔여수
 		if (tCount == 0) tCount = 20;
@@ -774,7 +774,7 @@ public class TsfGoodsService {
 			measurementStyle.setGoodsCd(goods.getGoodsCd());
 			measurementStyle.setSizeCount(colSize);
 			
-			log.info("arrMeasurementList[0].length = {}", arrMeasurementList[0].length);
+			//log.info("arrMeasurementList[0].length = {}", arrMeasurementList[0].length);
 			for(int j=0; j<arrMeasurementList[0].length; j++) {
 				switch(j) {
 					case 0: measurementStyle.setTypecd(arrMeasurementList[i][j]); break;
@@ -803,7 +803,7 @@ public class TsfGoodsService {
 			measurementStyleList.add(measurementStyle);
 		}
 
-		log.info("measurementStyleList = {}", measurementStyleList);
+		//log.info("measurementStyleList = {}", measurementStyleList);
 	
 		return measurementStyleList;
 	}

+ 4 - 0
src/main/java/com/style24/front/biz/service/TsfPlanningService.java

@@ -392,6 +392,7 @@ public class TsfPlanningService {
 	 * @author sowon
 	 * @date 2021. 4. 3
 	 */
+	@Transactional("shopTxnManager")
 	public void savePollCustAnswer(Poll poll) {
 		poll.setCustNo(TsfSession.getInfo().getCustNo());
 		// 단수형
@@ -533,6 +534,7 @@ public class TsfPlanningService {
 	 * @author sowon
 	 * @date 2021. 4. 7
 	 */
+	@Transactional("shopTxnManager")
 	public void saveAttendEntry(Plan plan) {
 		int custNo = TsfSession.getInfo().getCustNo();
 		plan.setCustNo(custNo);
@@ -601,6 +603,7 @@ public class TsfPlanningService {
 	 * @author sowon
 	 * @date 2021. 4. 13
 	 */
+	@Transactional("shopTxnManager")
 	public void saveEntryReply(Plan plan) {
 		int custNo = TsfSession.getInfo().getCustNo();
 		plan.setCustNo(custNo);
@@ -660,6 +663,7 @@ public class TsfPlanningService {
 	 * @author sowon
 	 * @date 2021. 4. 13
 	 */
+	@Transactional("shopTxnManager")
 	public void deleteEntryReply(Plan plan) {
 		planningDao.deleteEntryReply(plan);
 		planningDao.deleteEntryReplyAttach(plan);

+ 1 - 0
src/main/java/com/style24/front/biz/service/TsfReviewService.java

@@ -452,6 +452,7 @@ public class TsfReviewService {
 	 * @author sowon
 	 * @since 2021. 3. 26
 	 */
+	@Transactional("shopTxnManager")
 	public void reviewDelete(Review review) {
 		review.setCustNo(TsfSession.getInfo().getCustNo());
 		reviewDao.reviewDelete(review);

+ 3 - 3
src/main/java/com/style24/front/biz/thirdparty/SearchEngineDiquest.java

@@ -178,18 +178,18 @@ public class SearchEngineDiquest {
 		Map<String, Object> paramMap = this.convertObjectToMap(params);
 		paramMap.put("adminIp", ipAddr);
 		paramMap.put("adminPort", port);
-//		log.info("///[getFilterList] paramMap: {}", paramMap);
+		log.info("///[getFilterList] paramMap: {}", paramMap);
 
 		try {
 			JSONObject jsonObj = SearchService.getFilterList(paramMap);
-//			log.info("///[getFilterList] jsonObj: {}", jsonObj.toJSONString());
+			log.info("///[getFilterList] jsonObj: {}", jsonObj.toJSONString());
 
 			Gson gson = new Gson();
 			FilterResponse response = gson.fromJson(jsonObj.toJSONString(), FilterResponse.class);
 
 			if (jsonObj.get("returnCode").toString().equals("1")) { // 성공
 				result = response.getResponse();
-//				log.info("///[getFilterList] result: {}", result);
+				log.info("///[getFilterList] result: {}", result);
 			}
 		} catch (Exception e) {
 			e.printStackTrace();

+ 12 - 1
src/main/java/com/style24/front/biz/web/TsfOrderController.java

@@ -1059,7 +1059,7 @@ public class TsfOrderController extends TsfBaseController {
 
 		int count = customerService.getGiftKakaoSendInfo(custContactHst);
 		
-		if (count < 30) {
+		if (count < 1) {
 			// 2021.05.31 알림톡전송 주문완료정보		
 			if (StringUtils.isNotBlank(orderInfo.getOrdPhnno())) {
 				Integer userNo = orderInfo.getCustNo();
@@ -1102,10 +1102,21 @@ public class TsfOrderController extends TsfBaseController {
 					replaceInfo.set("orderListInfo"		, resultMap.get("orderListInfo"));
 					replaceInfo.set("orderFreegiftInfo"	, resultMap.get("orderFreegiftInfo"));
 					
+					replaceInfo.set("vaBankNm"			, orderInfo.getCardNm());
+					replaceInfo.set("vaDeadline"		, orderInfo.getVaDeadline());
+					replaceInfo.set("vaNo"				, orderInfo.getVaNo());
+					
 					// 2021.06.15
 					// 주문완료 안내 메일 보내기
 					if (StringUtils.isNotBlank(orderInfo.getOrdEmail())) {
+						
+						// 결제완료
 						mailService.sendOrderComplete(replaceInfo, userNo);
+						
+						// 입금요청
+						if ("G014_20".equals(orderInfo.getPayMeans())) {
+							mailService.sendVaDepositRequest(replaceInfo, userNo);
+						}
 					}
 				} catch (Exception e) {
 					// TODO Auto-generated catch block

+ 21 - 0
src/main/java/com/style24/front/support/env/TsfConstants.java

@@ -51,6 +51,27 @@ public class TsfConstants {
 			return value;
 		}
 	}
+	
+	// 정산구분상태
+	public enum OrdDtlItemStat {
+		
+		SALE_PAYMENT_COMPLETE("G720_10"), 			// 판매-결제완료
+		SALE_SHIPPING("G720_20"),					// 판매-배송완료
+		SALE_RETURN_CANCEL("G720_30"), 				// 환입-취소완료
+		SALE_RETURN_SOLDOUT_CANCEL("G720_40"),		// 환입-품절취소
+		SALE_RETURN_RETURN_COMPLETE("G720_50"),		// 환입-반품완료
+		SALE_RETURN_EXCHANGE_COMPLETE("G720_60");	// 환입-교환완료
+
+		private String value;
+
+		private OrdDtlItemStat(String value) {
+			this.value = value;
+		}
+
+		public String value() {
+			return value;
+		}
+	}
 
 //	// 카테고리구분
 //	public enum CATE_GB {

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

@@ -85,6 +85,7 @@ public class SearchEngine implements Serializable {
 	private String mainColorCd;		// 메인컬러
 	private String selfGoodsYn;		// 자사상품여부
 	private String colorCd;
+	private String adFlag;			// 광고상품여부
 
 //	private String adminIp;			// 검색엔진IP
 //	private String adminPort;		// 검색엔진포트

+ 2 - 0
src/main/java/com/style24/persistence/mybatis/shop/TsfCustomer.xml

@@ -745,6 +745,8 @@
 		         WHERE CONTACT_TYPE = #{contactType}
 		           AND CONTACT_METHOD = #{contactMethod}
 		           AND CONTACT_MEMO = #{contactMemo}) Z
+		 <if test="contactType == 'G054_308'">
 		 WHERE RESEND_CAN_YN = 'Y'
+		 </if>
 	</select>
 </mapper>

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

@@ -1899,12 +1899,12 @@
 		            AND    GS.STOCK_QTY <![CDATA[>]]> 0 /*재고있는상품*/
 		            AND    B.USE_YN = 'Y'
 		            AND    BG.USE_YN = 'Y'
+		            ORDER BY G.REG_DT DESC, G.GOODS_CD
 		            <if test="maxRow != null and maxRow !=''">
 		            LIMIT #{maxRow}
 		            </if>
 		           ) G
 		    WHERE  1=1
-		    ORDER BY G.REG_DT DESC, G.GOODS_CD
 		<if test="pageable != null and pageable.endRow != null and pageable.endRow > 0">
 			LIMIT #{pageable.limitStartRow} , #{pageable.pageSize}
 		</if>

BIN
src/main/webapp/WEB-INF/lib/Istyle.jar


+ 1 - 1
src/main/webapp/WEB-INF/views/mob/common/fragments/GnbMob.html

@@ -116,7 +116,7 @@
 						});
 					}
 				}
-				tag += '<button>+</button>';
+				// tag += '<button>+</button>';
 				$('#ulGnbTab').html(tag);
 			});
 		// tag += '</ul>\n';

+ 30 - 11
src/main/webapp/WEB-INF/views/mob/display/CategoryGoodsListFormMob.html

@@ -1392,21 +1392,40 @@
 			}else{
 				$.each(cateList, function(idx,item){
 					$.each(allCateList, function (allIdx, allItem){
-						if(item.cate1No==allItem.cate1No){
-							if(idx<1) {
-								$("#htopTitle").append(fnDisplayTitle(item.cate1Nm));
+						if(brandGroupNo > 0){
+							if(item.cate1No==allItem.cate1No){
+								if(idx<1) {
+									$("#htopTitle").append(fnDisplayTitle(item.cate1Nm));
+								}
+								if(idx<1) {
+									tag += '<li';
+									if(item.cate1No==allItem.cate1No){
+										tag += ' class="on"';
+									}
+									tag += '><a href="javascript:void(0);" onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',' + item.cate1No + ' ';
+									if(formalGb=='G009_20'){
+										tag += ' ,\'\',\'\',\'\',\'\',\''+formalGb+'\'';
+									}
+									tag += ');">'+item.cate1Nm+'</a></li>';
+								}
 							}
-						}
-						if(idx<1) {
-							tag += '<li';
+						}else{
 							if(item.cate1No==allItem.cate1No){
-							tag += ' class="on"';
+								if(idx<1) {
+									$("#htopTitle").append(fnDisplayTitle(item.cate1Nm));
+								}
 							}
-							tag += '><a href="javascript:void(0);" onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',' + allItem.cate1No + ' ';
-							if(formalGb=='G009_20'){
-								tag += ' ,\'\',\'\',\'\',\'\',\''+formalGb+'\'';
+							if(idx<1) {
+								tag += '<li';
+								if(item.cate1No==allItem.cate1No){
+									tag += ' class="on"';
+								}
+								tag += '><a href="javascript:void(0);" onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',' + allItem.cate1No + ' ';
+								if(formalGb=='G009_20'){
+									tag += ' ,\'\',\'\',\'\',\'\',\''+formalGb+'\'';
+								}
+								tag += ');">'+allItem.cate1Nm+'</a></li>';
 							}
-							tag += ');">'+allItem.cate1Nm+'</a></li>';
 						}
 					});
 

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

@@ -90,12 +90,12 @@
 															<th:block th:each="optCd : ${#strings.arraySplit(goodsItem.optCdInfo,',')}">
 																<input type="hidden" name="lookbookGoodsOptCd" th:value="${optCd}"/>
 															</th:block>
-															<th:block th:if="${(goodsItem.stockQty <= 0 or goodsItem.soldoutYn == 'Y')}">
-																<a href="javascript:void(0);" class="itemLink" >
-															</th:block>
-															<th:block th:unless="${(goodsItem.stockQty <= 0 or goodsItem.soldoutYn == 'Y')}">
+<!--															<th:block th:if="${(goodsItem.stockQty <= 0 or goodsItem.soldoutYn == 'Y')}">-->
+<!--																<a href="javascript:void(0);" class="itemLink" >-->
+<!--															</th:block>-->
+<!--															<th:block th:unless="${(goodsItem.stockQty <= 0 or goodsItem.soldoutYn == 'Y')}">-->
 																<a href="javascript:void(0);" class="itemLink" th:onclick="cfnGoToGoodsDetail([[${goodsItem.goodsCd}]])">
-															</th:block>
+<!--															</th:block>-->
 																<div class="itemPic">
 																	<img alt="" class="vLHTC pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsItem.sysImgNm}">
 																</div>

+ 4 - 4
src/main/webapp/WEB-INF/views/mob/display/MallMainFormMob.html

@@ -120,8 +120,8 @@
 															<img alt="BLUE-a" class=" pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsData.sysImgNm}" onerror="noneImg(this)"  >
 														</div>
 														<p class="itemBrand" th:text="${goodsData.brandGroupNm}">BRAND NAME</p>
-														<div class=" itemName" th:text="${goodsData.goodsFullNm}">가을 신상 남성 스탠다드핏 로고맨 블루 볼 캡 유니 경량다운 시보리넥 베스트</div>
 														<div class="itemComment" th:text="${goodsData.goodsTnm}">#주문 폭주 상품</div>
+														<div class=" itemName" th:text="${goodsData.goodsFullNm}">가을 신상 남성 스탠다드핏 로고맨 블루 볼 캡 유니 경량다운 시보리넥 베스트</div>
 														<p class="itemPrice" th:text="${#numbers.formatInteger(goodsData.currPrice,1,'COMMA')}">488,000</p>
 													</a>
 												</div>
@@ -177,8 +177,8 @@
 																		<img alt="" class=" pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + bestItemData.sysImgNm}" onerror="noneImg(this)">
 																	</div>
 																	<p class="itemBrand" th:text="${bestItemData.brandGroupNm}">TBJ</p>
-																	<div class="itemName" th:text="${bestItemData.goodsFullNm}">11111 남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																	<div class="itemComment" th:text="${bestItemData.goodsTnm}"># 가을 느낌 물씬!</div>
+																	<div class="itemName" th:text="${bestItemData.goodsFullNm}">11111 남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																	<p class="itemPrice">
 																		<span class="itemPrice_original" th:if="${bestItemData.currPrice != bestItemData.listPrice}" th:text="${#numbers.formatInteger(bestItemData.listPrice,3,'COMMA')}">89,000</span>[[${#numbers.formatInteger(bestItemData.currPrice,0,'COMMA')}]]
 																		<span class=" itemPercent" th:if="${bestItemData.currPrice != bestItemData.listPrice}" th:text="${(bestItemData.listPrice == 0 ? 0 : #numbers.formatDecimal((bestItemData.listPrice - bestItemData.currPrice) / (bestItemData.listPrice * 1.0) * 100, 1, 0)) + '%'}">10%</span>
@@ -272,8 +272,8 @@
 																	<img alt="" class=" pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsData.sysImgNm}" onerror="noneImg(this)">
 																</div>
 																<p class="itemBrand" th:text="${goodsData.brandGroupNm}">TBJ</p>
-																<div class="itemName" th:text="${goodsData.goodsNm}">11111 남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																<div class="itemComment" th:text="${goodsData.goodsTnm}"># 가을 느낌 물씬!</div>
+																<div class="itemName" th:text="${goodsData.goodsNm}">11111 남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																<p class="itemPrice">
 																	<span class="itemPrice_original" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${#numbers.formatInteger(goodsData.listPrice,0,'COMMA')}">89,000</span>[[${#numbers.formatInteger(goodsData.currPrice,0,'COMMA')}]]
 																	<span class=" itemPercent" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${#numbers.formatDecimal(goodsData.dcRate,1,0)} + '%'">10%</span>
@@ -436,8 +436,8 @@
 																			<img alt="" class=" pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsData.sysImgNm}" onerror="noneImg(this)">
 																		</div>
 																		<p class="itemBrand" th:text="${goodsData.brandGroupNm}">TBJ</p>
-																		<div class="itemName" th:text="${goodsData.goodsFullNm}">11111 남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																		<div class="itemComment" th:text="${goodsData.goodsTnm}"># 가을 느낌 물씬!</div>
+																		<div class="itemName" th:text="${goodsData.goodsFullNm}">11111 남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																		<p class="itemPrice">
 																			<span class="itemPrice_original" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${#numbers.formatInteger(goodsData.listPrice,1,'COMMA')}">89,000</span>[[${#numbers.formatInteger(goodsData.currPrice,0,'COMMA')}]]
 																			<span class=" itemPercent" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${(goodsData.listPrice == 0 ? 0 : #numbers.formatDecimal((goodsData.listPrice - goodsData.currPrice) / (goodsData.listPrice * 1.0) * 100, 1, 0)) + '%'}">10%</span>

+ 37 - 10
src/main/webapp/WEB-INF/views/mob/display/SearchGoodsListFormMob.html

@@ -50,10 +50,10 @@
 					<div class="tabContents">
 						<div class="tab_cont active">
 							<!-- tab_cont [1] Start -->
-							<div class="inner" style="display:none;">
+							<div class="inner" id="goodsNodata" style="display:none;">
 								<!-- 전체 검색결과 없을때 -->
 								<div class="nodata">
-									<p>&lsquo;<span>티비제이 제기장 스웨터</span>&rsquo; 에 에 대한<br>검색 결과가 없습니다.</p>
+									<p>&lsquo;<span id="goodsKeyword"></span>&rsquo; 에 에 대한<br>검색 결과가 없습니다.</p>
 								</div>
 								<!-- // 전체 검색결과 없을때 -->
 							</div>
@@ -214,7 +214,7 @@
 								<!-- // 이런상품은 어떤가요 -->
 							</div>
 
-							<div class="inner">
+							<div class="inner" id="dataArea">
 								<!-- 필터 시작 -->
 								<div class="count_wrap">
 									<div>
@@ -257,7 +257,7 @@
 											</ul>
 										</div>
 									</div>
-									<div class="banner">
+									<div class="banner" style="display: none">
 										<img src="/images/mo/shc_banner.png" alt="">
 									</div>
 									<div class="last_page" id="endPage" style="display:none;">
@@ -276,13 +276,13 @@
 									<div class="list_item" id="planArea">
 
 									</div>
-									<div class="list_last">마지막페이지 입니다.</div>
+<!--									<div class="list_last">마지막페이지 입니다.</div>-->
 								</div>
 							</div>
-							<div class="inner" style="display:none;">
+							<div class="inner" id="planNodata" style="display:none;">
 								<!-- 전체 검색결과 없을때 -->
 								<div class="nodata">
-									<p>&lsquo;<span>티비제이 제기장 스웨터</span>&rsquo; 에 에 대한<br>검색 결과가 없습니다.</p>
+									<p>&lsquo;<span id="planKeyword"></span>&rsquo; 에 에 대한<br>검색 결과가 없습니다.</p>
 								</div>
 								<!-- // 전체 검색결과 없을때 -->
 							</div>
@@ -298,13 +298,13 @@
 
 										</ul>
 									</div>
-									<div class="list_last" style="display:none;">마지막페이지 입니다.</div>
+<!--									<div class="list_last" style="display:none;">마지막페이지 입니다.</div>-->
 								</div>
 							</div>
-							<div class="inner" style="display:none;">
+							<div class="inner" id="eventNodata" style="display:none;">
 								<!-- 전체 검색결과 없을때 -->
 								<div class="nodata">
-									<p>&lsquo;<span>티비제이 제기장 스웨터</span>&rsquo; 에 에 대한<br>검색 결과가 없습니다.</p>
+									<p>&lsquo;<span id="eventKeyword"></span>&rsquo; 에 에 대한<br>검색 결과가 없습니다.</p>
 								</div>
 								<!-- // 전체 검색결과 없을때 -->
 							</div>
@@ -683,6 +683,8 @@
 	var fnDrawInfiniteScrollData = function (result){
 		$('#endPage').hide();
 		$('#noDataFilter').hide();
+		$('#goodsNodata').hide();
+		$('#goodsKeyword').text('');
 		totalCnt = result.paging.totalCount;
 		$("#totCntId").text(totalCnt.addComma());
 		$("#prodListCnt").text('('+totalCnt.addComma()+')');
@@ -695,6 +697,11 @@
 		}
 
 		if(dataListLen > 0){
+			$('#noFilterData').hide();
+			$('#endPage').hide();
+			$('#eventNodata').hide();
+			$('#eventKeyword').text('');
+			$('#dataArea').show();
 			var goodsUrl = [[${@environment.getProperty('upload.goods.view')}]];
 			let lastPage = result.paging.pageNo;
 			let endRow = result.paging.endRow - result.paging.pageSize;
@@ -713,6 +720,16 @@
 					$('#endPage').show();
 					$('#noDataFilter').hide();
 				}
+			}else{
+				if($("#searchGoodsForm input[name=pageNo]").val()==1){
+					$('#goodsNodata').show();
+					$('#goodsKeyword').text([[${params.keyword}]]);
+					$('#dataArea').hide();
+				}else{
+					$('#goodsNodata').show();
+					$('#goodsKeyword').text([[${params.keyword}]]);
+					$('#dataArea').hide();
+				}
 			}
 			gagaInfiniteScroll.draw('not');
 		}
@@ -734,6 +751,8 @@
 		}
 
 		if(result.eventList != null && result.eventList.length>0){
+			$("#eventNodata").hide();
+			$("#eventKeyword").text('');
 			$.each(result.eventList, function (idx,item){
 				let html = '';
 
@@ -756,6 +775,9 @@
 
 				$("#eventArea").append(html);
 			});
+		}else{
+			$("#eventNodata").show();
+			$("#eventKeyword").text([[${params.keyword}]]);
 		}
 	}
 
@@ -772,6 +794,8 @@
 		}
 
 		if(result.planList != null && result.planList.length>0){
+			$("#planNodata").hide();
+			$("#planKeyword").text('');
 			$.each(result.planList, function (idx,item){
 				let html = '';
 				html += '<div class="visual">\n';
@@ -807,6 +831,9 @@
 				html += '</div>\n';
 				$("#planArea").append(html);
 			});
+		}else{
+			$("#planNodata").show();
+			$("#planKeyword").text([[${params.keyword}]]);
 		}
 	}
 

+ 1 - 1
src/main/webapp/WEB-INF/views/web/callcenter/NoticeFormWeb.html

@@ -120,7 +120,7 @@
 				tag += '	</div>\n';
 				tag += '	<div class="fold_cont" style="display: none;">\n';
 				tag += '		<div class="fold_detail">\n';
-				tag += '			<div>' + item.noticeContent.escapeHtml().replace(/\n/g,'<br/>') + '</div>\n';
+				tag += '			<div>' + item.noticeContent + '</div>\n';
 				tag += '		</div>\n';
 				tag += '	</div>\n';
 				tag += '</li>\n';

+ 7 - 1
src/main/webapp/WEB-INF/views/web/common/fragments/FooterWeb.html

@@ -925,6 +925,7 @@
 					if (result.length > 0) {
 						$('#ulQuickMenuCate').html('');
 						$('#ulQuickMenuCate').append('<li><a href="javascript:void(0);" onclick="cfnGoToPage(_PAGE_MAIN);"><span>홈</span></a></li>\n');
+						$('#ulQuickMenuCate').append('<li><a href="javascript:void(0);" onclick="cfnGoToPage(_PAGE_ALL_BRAND);"><span>브랜드</span></a></li>\n');
 						
 						let allCate = [[${allCateList}]];
 						$.each(result, function(idx, item) {
@@ -1726,12 +1727,17 @@
 		$('.' + NewLink).show();
 	});
 
-	//Family Site
+	// Family Site
 	$('.family_link').on('click','.btn',function(e){
 		e.preventDefault();
+		e.stopPropagation();
 		$(this).parents('.family_link').find('#family_site').slideToggle(100);
 		$(this).find('.ico.ico_ft_arrow_b').toggleClass('ico_ft_arrow_t');
 	});
+	$(document).click(function(){
+		$('#family_site').hide();
+		$(this).find('.ico.ico_ft_arrow_b').toggleClass('ico_ft_arrow_t');
+	});
 	
 	var tabAnchor = $('.quick_btn button'),
 	tabPanel = $('#quick_menu .quick_con');

+ 2 - 2
src/main/webapp/WEB-INF/views/web/common/fragments/HeadWeb.html

@@ -77,12 +77,12 @@
 	<script src="https://www.google.com/recaptcha/api.js" async defer></script>
 
 	<!-- Global site tag (gtag.js) - Google Analytics -->
-<!-- 	<script async src="https://www.googletagmanager.com/gtag/js?id=UA-168660512-1"></script> -->
+<!-- 	<script async src="https://www.googletagmanager.com/gtag/js?id=G-MQWD9VX4KH"></script> -->
 	<script>
 // 		window.dataLayer = window.dataLayer || [];
 // 		function gtag(){dataLayer.push(arguments);}
 // 		gtag('js', new Date());
-// 		gtag('config', 'UA-168660512-1');
+// 		gtag('config', 'G-MQWD9VX4KH');
 	</script>
 	
 	<th:block th:if="${sessionInfo != null}">

+ 1 - 1
src/main/webapp/WEB-INF/views/web/display/BestMainFormWeb.html

@@ -22,7 +22,7 @@
 	<div id="container" class="container dp">
 		<div class="breadcrumb">
 			<ul>
-				<li class="bread_home"><a href="index.html">홈</a></li>
+				<li class="bread_home"><a href="javascript:void(0);" onclick="cfnGoToPage(_PAGE_MAIN);">홈</a></li>
 				<li class="bread_2depth">베스트</li>
 			</ul>
 		</div>

+ 25 - 11
src/main/webapp/WEB-INF/views/web/display/CategoryGoodsListFormWeb.html

@@ -460,18 +460,32 @@
 			var cateGb =  [[${cateInfo.cateGb}]];
 console.log(allCateList);
 			console.log(cateList);
+
+			if(brandGroupNo>0){
+				$("#brandNm").show();
+				$("#brandNm").text(brandGroupNm);
+			}
+
 			if(cateList.length > 0){
 				$.each(cateList,function (idx,item){
 					$.each(allCateList, function (allIdx, allItem){
-						if(allItem.cate1No==item.cate1No){
-							if(idx<1){
-								$('#ulAllCate').append(fnCreateSearchEngineCategoryList(item));
+						if(brandGroupNo > 0){
+							if(allItem.cate1No==item.cate1No){
+								if(idx<1){
+									$('#ulAllCate').append(fnCreateSearchEngineCategoryList(item));
+								}
 							}
 						}else{
-							if(idx<1){
-								let html = '';
-								html += '<li><a href="javascript:void(0);" onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',' + allItem.cate1No + ');">'+allItem.cate1Nm+'</a></li>';
-								$('#ulAllCate').append(html);
+							if(allItem.cate1No==item.cate1No){
+								if(idx<1){
+									$('#ulAllCate').append(fnCreateSearchEngineCategoryList(item));
+								}
+							}else{
+								if(idx<1){
+									let html = '';
+									html += '<li><a href="javascript:void(0);" onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',' + allItem.cate1No + ');">'+allItem.cate1Nm+'</a></li>\n';
+									$('#ulAllCate').append(html);
+								}
 							}
 						}
 					});
@@ -509,9 +523,9 @@ console.log(allCateList);
 					$("#formTitle").text(formTitle);
 					$("#navNm").hide();
 					if(formalGb=='G009_20'){
-						navNm += '<li class="bread_2depth" id="navNm1">아울렛</li>';
+						navNm += '<li class="bread_2depth" id="navNm1"><a href="javascript:void(0);" onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',\'\',\'\',\'\',\'\',\'\',\'' + formalGb + '\');">아울렛</a></li>\n';
 					}
-					navNm += '<li class="bread_2depth" id="navNm1">' + cate1.cate1Nm + '</li>';
+					navNm += '<li class="bread_2depth" id="navNm1"><a href="javascript:void(0);"  onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',' + cate1.cate1No + ');">' + cate1.cate1Nm + '</a></li>\n';
 					if (brandGroupNo == 0) {
 						$("#navHome").attr('href', '/');
 						$("#navArea").append(navNm);
@@ -522,9 +536,9 @@ console.log(allCateList);
 				}else if(cate1.cate1No == cate1No && cate3No == null){
 					$("#navNm").hide();
 					if(formalGb=='G009_20'){
-						navNm += '<li class="bread_2depth" id="navNm1">아울렛</li>';
+						navNm += '<li class="bread_2depth" id="navNm1"><a href="javascript:void(0);" onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',\'\',\'\',\'\',\'\',\'\',\'' + formalGb + '\');">아울렛</a></li>\n';
 					}
-					navNm += '<li class="bread_2depth" id="navNm1">' + cate1.cate1Nm + '</li>';
+					navNm += '<li class="bread_2depth" id="navNm1"><a href="javascript:void(0);"  onclick="cfnGoToGoodsList(' + brandGroupNo + ',\'' + cateGb + '\',' + cate1.cate1No + ');">' + cate1.cate1Nm + '</a></li>\n';
 					$("#navArea").append(navNm);
 					//$("#navNm").text(cate1.cate1Nm);
 				}else if(cate3No != null){

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

@@ -88,12 +88,12 @@
 														<th:block th:each="optCd : ${#strings.arraySplit(goodsItem.optCdInfo,',')}">
 															<input type="hidden" name="lookbookGoodsOptCd" th:value="${optCd}"/>
 														</th:block>
-														<th:block th:if="${(goodsItem.stockQty <= 0 or goodsItem.soldoutYn == 'Y')}">
-															<a href="javascript:void(0);" class="itemLink" >
-														</th:block>
-														<th:block th:unless="${(goodsItem.stockQty <= 0 or goodsItem.soldoutYn == 'Y')}">
+<!--														<th:block th:if="${(goodsItem.stockQty <= 0 or goodsItem.soldoutYn == 'Y')}">-->
+<!--															<a href="javascript:void(0);" class="itemLink" >-->
+<!--														</th:block>-->
+<!--														<th:block th:unless="${(goodsItem.stockQty <= 0 or goodsItem.soldoutYn == 'Y')}">-->
 															<a href="javascript:void(0);" class="itemLink" th:onclick="cfnGoToGoodsDetail([[${goodsItem.goodsCd}]])">
-														</th:block>
+<!--														</th:block>-->
 															<div class="itemPic">
 																<img alt="" class="vLHTC pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsItem.sysImgNm}">
 															</div>

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

@@ -128,8 +128,8 @@
 															<img alt="BLUE-a" class=" vLHTC pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsData.sysImgNm}" onerror="noneImg(this)">
 														</div>
 														<p class="itemBrand" th:text="${goodsData.brandGroupNm}">BRAND NAME</p>
-														<div class=" itemName" th:text="${goodsData.goodsFullNm}">스타 착용 여성 퍼 아플리케 오버핏 투마일 웨어링 점퍼</div>
 														<div class="itemComment" th:text="${goodsData.goodsTnm}">#가을느낌 물씬!</div>
+														<div class=" itemName" th:text="${goodsData.goodsFullNm}">스타 착용 여성 퍼 아플리케 오버핏 투마일 웨어링 점퍼</div>
 														<p class="itemPrice" th:text="${#numbers.formatInteger(goodsData.currPrice,1,'COMMA')}">488,000원</p>
 													</a>
 												</div>
@@ -182,8 +182,8 @@
 																<img alt="BLACK-a" class=" vLHTC pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + bestItemData.sysImgNm}" onerror="noneImg(this)">
 															</div>
 															<p class=" itemBrand" th:text="${bestItemData.brandGroupNm}">BRAND NAME</p>
-															<div class=" itemName" th:text="${bestItemData.goodsFullNm}">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 															<div class="itemComment" th:text="${bestItemData.goodsTnm}">#데일리웨어로 매일입고싶은</div>
+															<div class=" itemName" th:text="${bestItemData.goodsFullNm}">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 															<p class="itemPrice">[[${#numbers.formatInteger(bestItemData.currPrice,0,'COMMA')}]]
 																<span class="itemPrice_original" th:if="${bestItemData.currPrice != bestItemData.listPrice}" th:text="${#numbers.formatInteger(bestItemData.listPrice,3,'COMMA')}">89,000</span>
 																<span class=" itemPercent" th:if="${bestItemData.currPrice != bestItemData.listPrice}" th:text="${(bestItemData.listPrice == 0 ? 0 : #numbers.formatDecimal((bestItemData.listPrice - bestItemData.currPrice) / (bestItemData.listPrice * 1.0) * 100, 1, 0)) + '%'}">10%</span>
@@ -346,8 +346,8 @@
 																<img alt="" class="pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsData.sysImgNm}" onerror="noneImg(this)">
 															</div>
 															<p class="itemBrand" th:text="${goodsData.brandGroupNm}">BRAND NAME</p>
-															<div class="itemName" th:text="${goodsData.goodsNm}">여성 체인 프린트 큐롯 스커트 프린트 큐롯 스커트</div>
 															<div class="itemComment" th:text="${goodsData.goodsTnm}">#데일리웨어로 매일입고싶은</div>
+															<div class="itemName" th:text="${goodsData.goodsNm}">여성 체인 프린트 큐롯 스커트 프린트 큐롯 스커트</div>
 															<p class="itemPrice">
 																[[${#numbers.formatInteger(goodsData.currPrice,0,'COMMA')}]]
 																<span class="itemPrice_original" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${#numbers.formatInteger(goodsData.listPrice,0,'COMMA')} + '원'"></span>
@@ -429,8 +429,8 @@
 																	</th:block>
 																	<img alt="BLACK-a" class=" vLHTC pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsData.sysImgNm}" onerror="noneImg(this)">
 																</div>
-																<div class=" itemName" th:text="${goodsData.goodsFullNm}">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																<div class="itemComment" th:text="${goodsData.goodsTnm}">#데일리웨어로 매일입고싶은</div>
+																<div class=" itemName" th:text="${goodsData.goodsFullNm}">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																<p class="itemPrice" th:text="${#numbers.formatInteger(goodsData.currPrice,1,'COMMA')}">80,100
 																	<span class="itemPrice_original" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${#numbers.formatInteger(goodsData.listPrice,1,'COMMA')}">89,000</span>
 																	<span class=" itemPercent" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${(goodsData.listPrice == 0 ? 0 : #numbers.formatDecimal((goodsData.listPrice - goodsData.currPrice) / (goodsData.listPrice * 1.0) * 100, 1, 0)) + '%'}">10%</span>
@@ -523,8 +523,8 @@
 																			<img alt="" class=" vLHTC pd_img" th:src="${@environment.getProperty('upload.goods.view') + '/' + goodsData.sysImgNm}" onerror="noneImg(this)">
 																		</div>
 																		<p class="itemBrand" th:text="${goodsData.brandGroupNm}">BRAND NAME</p>
-																		<div class=" itemName" th:text="${goodsData.goodsFullNm}">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																		<div class="itemComment" th:text="${goodsData.goodsTnm}">#주문 폭주 상품</div>
+																		<div class=" itemName" th:text="${goodsData.goodsFullNm}">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
 																		<p class="itemPrice">[[${#numbers.formatInteger(goodsData.currPrice,0,'COMMA')}]]
 																			<span class="itemPrice_original" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${#numbers.formatInteger(goodsData.listPrice,1,'COMMA')}">89,000</span>
 																			<span class=" itemPercent" th:if="${goodsData.currPrice != goodsData.listPrice}" th:text="${(goodsData.listPrice == 0 ? 0 : #numbers.formatDecimal((goodsData.listPrice - goodsData.currPrice) / (goodsData.listPrice * 1.0) * 100, 1, 0)) + '%'}">10%</span>

+ 1 - 1
src/main/webapp/WEB-INF/views/web/display/OutletMainFormWeb.html

@@ -68,7 +68,7 @@
 				<!-- 카테고리 바로가기 -->
 				<div class="content wide dp_category">
 					<div class="cont_head">
-						<h4>카테고리 바로가기</h4>
+						<h4 th:text="${contentsTitle!=null and contentsTitle!=''}?${contentsTitle}:'카테고리 바로가기'"></h4>
 					</div>
 					<div class="cont_body">
 						<div class="dp_cate_list">

+ 46 - 20
src/main/webapp/WEB-INF/views/web/display/SearchGoodsListFormWeb.html

@@ -104,10 +104,10 @@
 					<!-- 검색결과 : 상품 -->
 					<div class="sch_result_cont" style="display:block;">
 						<!-- 통합 상품 검색결과 없을 시 노출 -->
-						<div class="nodata" style="display:none;">
+						<div class="nodata" id="goodsNodata" style="display:none;">
 							<div class="txt_box">
 								<p>
-									<span>‘티비제이 제기장 스웨터’</span> 에 대한 상품 검색결과가 없습니다.
+									‘<span id="goodsKeyword"></span>’ 에 대한 상품 검색결과가 없습니다.
 								</p>
 							</div>
 						</div>
@@ -451,19 +451,6 @@
 									</div>
 								</div>
 								<div class="area_list">
-									<!-- 검색필터 결과 없을 시 노출 -->
-									<div class="nodata" id="noFilterData" style="display:none;">
-										<div class="txt_box">
-											<p>
-												선택하신 조건에 맞는 상품이 없습니다. <br>
-												필터를 다시 선택하신 후 다시 검색해 보세요!
-											</p>
-										</div>
-										<div class="btn_box">
-											<button type="button" class="btn btn_default" onclick="fnFilterReset();"><span>초기화</span></button>
-										</div>
-									</div>
-									<!-- //검색필터 결과 없을 시 노출 -->
 									<!-- 검색필터 결과 상품 노출 -->
 									<div class="count_wrap">
 										<div>
@@ -490,6 +477,19 @@
 										</div>
 									</div>
 									<!-- //검색필터 결과 상품 노출 -->
+									<!-- 검색필터 결과 없을 시 노출 -->
+									<div class="nodata" id="noFilterData" style="display:none;">
+										<div class="txt_box">
+											<p>
+												선택하신 조건에 맞는 상품이 없습니다. <br>
+												필터를 다시 선택하신 후 다시 검색해 보세요!
+											</p>
+										</div>
+										<div class="btn_box">
+											<button type="button" class="btn btn_default" onclick="fnFilterReset();"><span>초기화</span></button>
+										</div>
+									</div>
+									<!-- //검색필터 결과 없을 시 노출 -->
 								</div>
 								<div class="last_page" id="endPage" style="display:none;">
 									<span>마지막 페이지입니다.</span>
@@ -503,10 +503,10 @@
 					<!-- 검색결과 : 기획전 -->
 					<div class="sch_result_cont">
 						<!-- 기획전 검색결과 없을 시 노출 -->
-						<div class="nodata" style="display:none;">
+						<div class="nodata" id="planNodata" style="display:none;">
 							<div class="txt_box">
 								<p>
-									<span>‘티비제이 제기장 스웨터’</span> 에 대한 기획전 검색결과가 없습니다.
+									<span id="planKeyword"></span> 에 대한 기획전 검색결과가 없습니다.
 								</p>
 							</div>
 						</div>
@@ -530,10 +530,10 @@
 					<!-- 검색결과 : 이벤트 -->
 					<div class="sch_result_cont">
 						<!-- 이벤트 검색결과 없을 시 노출 -->
-						<div class="nodata" style="display:none;">
+						<div class="nodata" id="eventNodata" style="display:none;">
 							<div class="txt_box">
 								<p>
-									<span>‘티비제이 제기장 스웨터’</span> 에 대한 이벤트 검색결과가 없습니다.
+									‘<span id="eventKeyword"></span>’ 에 대한 이벤트 검색결과가 없습니다.
 								</p>
 							</div>
 						</div>
@@ -613,6 +613,10 @@
 			if(dataListLen > 0){
 				$('#noFilterData').hide();
 				$('#endPage').hide();
+				$('#goodsNodata').hide();
+				$('#goodsKeyword').text('');
+				$('.cont_body .lnb').show();
+				$('.cont_body .cont').show();
 				$('.cont .count_wrap').show();
 				var goodsUrl = [[${@environment.getProperty('upload.goods.view')}]];
 				let lastPage = result.paging.pageNo;
@@ -621,6 +625,7 @@
 				gagaInfiniteScroll.draw(htm);
 				//fnImgOnoff();
 			}else{
+				console.log('11');
 				if(totalCnt > Number($("#searchGoodsForm").find("input[name=pageSize]").val())){
 					if($("#searchGoodsForm input[name=pageNo]").val()==1){
 						// 필터 값으로 조회 데이터 없을때
@@ -632,6 +637,18 @@
 						$('#endPage').show();
 						$('#noFilterData').hide();
 					}
+				}else{
+					if($("#searchGoodsForm input[name=pageNo]").val()==1){
+						$('#goodsNodata').show();
+						$('#goodsKeyword').text([[${params.keyword}]]);
+						$('.cont_body .lnb').hide();
+						$('.cont_body .cont').hide();
+					}else{
+						$('#goodsNodata').show();
+						$('#goodsKeyword').text([[${params.keyword}]]);
+						$('.cont_body .lnb').hide();
+						$('.cont_body .cont').hide();
+					}
 				}
 				gagaInfiniteScroll.draw('not');
 			}
@@ -784,6 +801,8 @@
 			}
 
 			if(result.eventList != null && result.eventList.length>0){
+				$("#eventNodata").hide();
+				$("#eventKeyword").text('');
 				$.each(result.eventList, function (idx,item){
 					let html = '';
 					html += '<li>\n';
@@ -804,6 +823,9 @@
 					html += '</li>\n';
 					$("#eventArea").append(html);
 				});
+			}else{
+				$("#eventNodata").show();
+				$("#eventKeyword").text([[${params.keyword}]]);
 			}
 		}
 
@@ -818,7 +840,8 @@
 			}else{
 				$("#planListCnt").text('('+result.planList.length.addComma()+')');
 			}
-
+			$("#planNodata").hide();
+			$("#planKeyword").text('');
 			if(result.planList != null && result.planList.length>0){
 				$.each(result.planList, function (idx,item){
 					let html = '';
@@ -858,6 +881,9 @@
 					html += '</div>\n';
 					$("#planArea").append(html);
 				});
+			}else{
+				$("#planNodata").show();
+				$("#planKeyword").text([[${params.keyword}]]);
 			}
 		}
 	

+ 16 - 16
src/main/webapp/biz/goods.js

@@ -255,8 +255,8 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 					tag += '<iframe id="pdThumbVideo" class="pd_mov" src="' + _kollusMediaUrl + '/' + videoUrl + '?enable_initialize_focus=false&autoplay&mute&controls_activation=none" allow="fullscreen" allowFullScreen></iframe>';
 				}
 			}
-			tag += '		<img class=" vLHTC pd_img" src="' + item.sysImgNm + '" data-img="' + item.sysImgNm2 + '" onerror="noneImg(this)">';
-			// tag += '		<img class=" vLHTC pd_img" src="' + goodsUrl + '/' + item.sysImgNm + '" data-img="' + goodsUrl + '/' + item.sysImgNm2 + '" onerror="noneImg(this)">';
+			// tag += '		<img class=" vLHTC pd_img" src="' + item.sysImgNm + '" data-img="' + item.sysImgNm2 + '" onerror="noneImg(this)">';
+			tag += '		<img class=" vLHTC pd_img" src="' + goodsUrl + '/' + item.sysImgNm.replaceAll('//image.istyle24.com/Upload/ProductImage/','') + '" data-img="' + goodsUrl + '/' + item.sysImgNm2.replaceAll('//image.istyle24.com/Upload/ProductImage/','') + '" onerror="noneImg(this)">';
 			if (!gagajf.isNull(item.sizes) && item.selfGoodsYn == 'Y') {
 				var sizeArr = item.sizes.split(",");
 				var minSize;
@@ -299,10 +299,10 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 			tag += '			</div>';
 
 			tag += '			<p class="itemBrand">' + item.brandGroupNm + '</p>';
-			tag += '			<div class="itemName">' + item.goodsFullNm + '</div>';
 			if (item.goodsTnm != null) {
 				tag += '			<div class="itemComment">' + item.goodsTnm + '</div>';
 			}
+			tag += '			<div class="itemName">' + item.goodsFullNm + '</div>';
 			if (appGb != 'Mob') {
 				tag += '			<p class="itemPrice">' + item.currPrice.addComma()
 				if (item.currPrice != item.listPrice) {
@@ -372,19 +372,19 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 		}
 	});
 
-	if (cnt == 1) {
-		// <!-- Criteo 카테고리/리스팅 태그 -->
-		window.criteo_q = window.criteo_q || [];
-		var deviceType = /iPad/.test(navigator.userAgent) ? "t" : /Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Silk/.test(navigator.userAgent) ? "m" : "d";
-		window.criteo_q.push(
-			{event: "setAccount", account: 26073}, // 이 라인은 업데이트하면 안됩니다
-			{event: "setEmail", email: email}, // 유저가 로그인이 안되 있는 경우 빈 문자열을 전달
-			{event: "setSiteType", type: deviceType},
-			{event: "viewList", item: categoryGoodsList} // 가장 위에있는 3개의 상품 ID를 전달
-		);
-		// <!-- END 카테고리/리스팅 태그 -->
-		cnt++;
-	}
+	// if (cnt == 1) {
+	// 	// <!-- Criteo 카테고리/리스팅 태그 -->
+	// 	window.criteo_q = window.criteo_q || [];
+	// 	var deviceType = /iPad/.test(navigator.userAgent) ? "t" : /Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Silk/.test(navigator.userAgent) ? "m" : "d";
+	// 	window.criteo_q.push(
+	// 		{event: "setAccount", account: 26073}, // 이 라인은 업데이트하면 안됩니다
+	// 		{event: "setEmail", email: email}, // 유저가 로그인이 안되 있는 경우 빈 문자열을 전달
+	// 		{event: "setSiteType", type: deviceType},
+	// 		{event: "viewList", item: categoryGoodsList} // 가장 위에있는 3개의 상품 ID를 전달
+	// 	);
+	// 	// <!-- END 카테고리/리스팅 태그 -->
+	// 	cnt++;
+	// }
 
 	return tag;
 }

+ 4 - 1
src/main/webapp/biz/search.js

@@ -32,6 +32,9 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 					tag += ' soldout';
 				}
 			}
+			if(item.adFlag == 'Y'){
+				tag += ' AD';
+			}
 			tag += '">';
 			tag += '		<button type="button" class="itemLike';
 			if(item.likeIt == 'likeit'){
@@ -104,10 +107,10 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 			tag += '			</div>';
 
 			tag += '			<p class="itemBrand">'+item.brandGroupNm+'</p>';
-			tag += '			<div class="itemName">'+item.goodsFullNm+'</div>';
 			if(item.goodsTnm != null){
 				tag += '			<div class="itemComment">'+item.goodsTnm+'</div>';
 			}
+			tag += '			<div class="itemName">'+item.goodsFullNm+'</div>';
 			if(appGb != 'Mob'){
 				tag += '			<p class="itemPrice">'+item.currPrice.addComma()
 				tag += '				<span class="itemPrice_original">'+item.listPrice.addComma()+'</span>';