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

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

gagamel 5 лет назад
Родитель
Сommit
68807bbd6b
38 измененных файлов с 343 добавлено и 191 удалено
  1. 1 1
      src/main/java/com/style24/front/biz/service/TsfDisplayService.java
  2. 13 0
      src/main/java/com/style24/front/biz/web/TsfDisplayController.java
  3. 23 5
      src/main/java/com/style24/front/biz/web/TsfMypageController.java
  4. 6 0
      src/main/java/com/style24/persistence/domain/Counsel.java
  5. 1 0
      src/main/java/com/style24/persistence/domain/MainLayout.java
  6. 157 100
      src/main/java/com/style24/persistence/mybatis/shop/TsfGoods.xml
  7. 1 2
      src/main/java/com/style24/persistence/mybatis/shop/TsfPlanning.xml
  8. 9 2
      src/main/webapp/WEB-INF/views/mob/callcenter/FaqFormMob.html
  9. 1 1
      src/main/webapp/WEB-INF/views/mob/callcenter/OneToOneQnaFormMob.html
  10. 2 2
      src/main/webapp/WEB-INF/views/mob/display/BrandMainFormMob.html
  11. 7 5
      src/main/webapp/WEB-INF/views/mob/display/MallMainFormMob.html
  12. 8 1
      src/main/webapp/WEB-INF/views/mob/goods/GoodsDealDescFormMob.html
  13. 8 1
      src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html
  14. 2 2
      src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewFormMob.html
  15. 1 1
      src/main/webapp/WEB-INF/views/mob/mypage/MypageWishListFormMob.html
  16. 5 5
      src/main/webapp/WEB-INF/views/mob/planning/PlanningDetailFormMob.html
  17. 2 1
      src/main/webapp/WEB-INF/views/mob/planning/PlanningMainFormMob.html
  18. 1 1
      src/main/webapp/WEB-INF/views/mob/planning/PlanningShotGuideFormMob.html
  19. 1 1
      src/main/webapp/WEB-INF/views/mob/social/SocialMainFormMob.html
  20. 1 1
      src/main/webapp/WEB-INF/views/web/callcenter/NoticeFormWeb.html
  21. 1 1
      src/main/webapp/WEB-INF/views/web/callcenter/OneToOneQnaFormWeb.html
  22. 1 1
      src/main/webapp/WEB-INF/views/web/common/fragments/FooterWeb.html
  23. 2 2
      src/main/webapp/WEB-INF/views/web/display/BrandMainFormWeb.html
  24. 7 5
      src/main/webapp/WEB-INF/views/web/display/MallMainFormWeb.html
  25. 9 1
      src/main/webapp/WEB-INF/views/web/goods/GoodsDealDescFormWeb.html
  26. 11 2
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html
  27. 3 3
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailQnaFormWeb.html
  28. 2 2
      src/main/webapp/WEB-INF/views/web/mypage/MypageReviewFormWeb.html
  29. 1 1
      src/main/webapp/WEB-INF/views/web/mypage/MypageWishListFormWeb.html
  30. 5 5
      src/main/webapp/WEB-INF/views/web/planning/PlanningDetailFormWeb.html
  31. 1 1
      src/main/webapp/WEB-INF/views/web/planning/PlanningMainFormWeb.html
  32. 1 1
      src/main/webapp/WEB-INF/views/web/planning/PlanningShotGuideFormWeb.html
  33. 1 1
      src/main/webapp/WEB-INF/views/web/social/SocialMainFormWeb.html
  34. 3 5
      src/main/webapp/ux/mo/css/layout_m.css
  35. 17 16
      src/main/webapp/ux/mo/css/style24_m.css
  36. 13 4
      src/main/webapp/ux/mo/js/common_m.js
  37. 14 7
      src/main/webapp/ux/pc/css/layout.css
  38. 1 1
      src/main/webapp/ux/pc/css/main.css

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

@@ -578,7 +578,7 @@ public class TsfDisplayService {
 			tempCate.setContentsLoc(data.getContentsLoc());
 			tempCate.setMaxRow(10);
 			tempCate.setCustNo(TsfSession.isLogin() ? TsfSession.getInfo().getCustNo() : 0);
-			tempCate.setCate1No(data.getCateNo());
+			tempCate.setCateNo(data.getCateNo());
 			tempCate.setSiteCd(data.getSiteCd());
 			tempCate.setCateGb(data.getCateGb());
 			data.setGoodsList(goodsDao.getContentsCategoryGoodsList(tempCate));

+ 13 - 0
src/main/java/com/style24/front/biz/web/TsfDisplayController.java

@@ -205,6 +205,10 @@ public class TsfDisplayController extends TsfBaseController {
 				mainLayout.setMdPickList(displayService.getContentsForGoods(contents));
 			}
 
+			if (contentsLoc.equals("SMM003")||contentsLoc.equals("SBM007")){
+				mainLayout.setNewItemList(displayService.getContentsForGoods(contents));
+			}
+
 			mainLayoutList.add(mainLayout);
 		}
 
@@ -338,9 +342,17 @@ public class TsfDisplayController extends TsfBaseController {
 					cate4Srch.setMaxRow(50);
 					Collection<Goods> goodsList = goodsService.getContentsCategoryGoodsList(cate4Srch);
 					brandMain.setGoodsList(goodsList);
+				}else if(contentsLoc.equals("SBM017") || contentsLoc.equals("SBM018")||contentsLoc.equals("SBM019")){
+					cate4Srch.setBrandGroupNo(brandMain.getBrandGroupNo());
+					cate4Srch.setMaxRow(20);
+					Collection<Goods> goodsList = goodsService.getContentsCategoryGoodsList(cate4Srch);
+					brandMain.setGoodsList(goodsList);
 				}
 				brandMain.setContentsList(displayService.getContentsList(contents));
+			} else if("E".equals(brandMain.getContentsYn())){
+
 			} else {
+				log.info("getBrandGroupNo   {}",brandMain.getBrandGroupNo());
 				cate4Srch.setBrandGroupNo(brandMain.getBrandGroupNo());
 				if (cate4Srch.getContentsLoc().equals("SBM008")) {
 					cate4Srch.setMaxRow(10);
@@ -458,6 +470,7 @@ public class TsfDisplayController extends TsfBaseController {
 				for (Contents contentsData : conList) {
 					cate.setContentsLoc("SCM003");
 					cate.setMaxRow(Integer.parseInt(contentsData.getStrVar1()));
+					cate.setCateNo(contents.getCateNo());
 					mav.addObject("bestGoodsList", goodsService.getContentsCategoryGoodsList(cate));
 				}
 			}

+ 23 - 5
src/main/java/com/style24/front/biz/web/TsfMypageController.java

@@ -7,10 +7,6 @@ import java.util.List;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import com.gagaframework.web.util.GagaCookieUtil;
-import com.style24.core.biz.service.TscMailService;
-import com.style24.front.biz.service.TsfLoginService;
-import com.style24.front.support.env.TsfConstants;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;
@@ -28,11 +24,13 @@ import org.springframework.web.servlet.ModelAndView;
 import com.gagaframework.web.parameter.GagaMap;
 import com.gagaframework.web.rest.server.GagaResponse;
 import com.gagaframework.web.rest.server.GagaResponseStatus;
+import com.gagaframework.web.util.GagaCookieUtil;
 import com.style24.core.biz.service.TscCouponService;
 import com.style24.core.biz.service.TscCustomerService;
 import com.style24.core.biz.service.TscEnvsetService;
 import com.style24.core.biz.service.TscKakaotalkService;
 import com.style24.core.biz.service.TscKcpService;
+import com.style24.core.biz.service.TscMailService;
 import com.style24.core.biz.service.TscOrderChangeService;
 import com.style24.core.biz.service.TscOrderRefundService;
 import com.style24.core.biz.service.TscOrderService;
@@ -45,6 +43,7 @@ import com.style24.front.biz.service.TsfCouponService;
 import com.style24.front.biz.service.TsfCustomerService;
 import com.style24.front.biz.service.TsfDeliveryService;
 import com.style24.front.biz.service.TsfGiftcardService;
+import com.style24.front.biz.service.TsfLoginService;
 import com.style24.front.biz.service.TsfOrderChangeService;
 import com.style24.front.biz.service.TsfOrderService;
 import com.style24.front.biz.service.TsfPointService;
@@ -54,6 +53,7 @@ import com.style24.front.biz.service.TsfReviewService;
 import com.style24.front.biz.service.TsfWishlistService;
 import com.style24.front.biz.thirdparty.NiceCertify;
 import com.style24.front.support.controller.TsfBaseController;
+import com.style24.front.support.env.TsfConstants;
 import com.style24.front.support.security.session.TsfSession;
 import com.style24.persistence.TscPageRequest;
 import com.style24.persistence.domain.Cart;
@@ -869,7 +869,25 @@ public class TsfMypageController extends TsfBaseController {
 		GagaMap result = coreOrderChangeService.orderCancelPreInfoTemp(orderChange, custNo);
 
 		// TODO
-		// 취소 완료 알림톡 발송 에정
+		Integer ordChgSq = result.getInt("ordChgSq");
+		
+		// ordChgSq 로 아래 정보 조회하는 쿼리 작성 후 데이터 설정
+		// orderChange.setOrdPhnno();
+		// orderChange.setRefundAmt();
+		// orderChange.setOrdNm();
+		// orderChange.setOrdNo();
+		// orderChange.setGoodsNm();
+		// orderChange.setGoodsCnt();
+		// orderChange.setPayMeans();
+		// orderChange.setPayMeansNm();
+		// orderChange.setPgGb();
+		// orderChange.setCustNo();
+		
+		try {
+			coreKakaotalkService.sendOrderCancelComplete(orderChange, custNo);
+		} catch (Exception e) {
+			throw new IllegalStateException(message.getMessage("FAIL_0004"));
+		}
 
 		result.set("status", GagaResponseStatus.SUCCESS.getCode());
 		result.set("message", message.getMessage("CANCEL_0001"));

+ 6 - 0
src/main/java/com/style24/persistence/domain/Counsel.java

@@ -1,5 +1,6 @@
 package com.style24.persistence.domain;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.style24.core.support.util.MaskingUtils;
 import com.style24.persistence.TscBaseDomain;
@@ -66,6 +67,11 @@ public class Counsel extends TscBaseDomain {
 		return (this.custId != null) ?  MaskingUtils.id(this.custId) : this.custId;
 	}
 	
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private String[] fileOrgFileNm;
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private String[] fileSysFileNm;
+
 
 	// Pagination
 	@JsonInclude(JsonInclude.Include.NON_EMPTY)

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

@@ -35,5 +35,6 @@ public class MainLayout extends TscBaseDomain {
     private Collection<Contents> mdPickList;
     private Collection<Contents> brandPickList;
     private Collection<Contents> bestItemList;
+    private Collection<Contents> newItemList;
 
 }

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

@@ -1391,14 +1391,18 @@
 		WHERE 1 = 1
 		<if test="maxRownum != null and maxRownum > 0">
 		LIMIT #{maxRownum}
-		</if> 
+		</if>
 	</select>
 	
 	<!-- 컨텐츠카테고리상품 목록 -->
 	<select id="getContentsCategoryGoodsList"  parameterType="Cate4Srch" resultType="Goods">
 		/* TsfGoods.getContentsCategoryGoodsList */
 		WITH TAB_GOODS AS (
-		    SELECT G.BRAND_GROUP_NM     /*브랜드그룹명*/
+		    SELECT
+		           <if test="contentsLoc == 'SMM003' or contentsLoc == 'SBM007' or contentsLoc == 'SBM008' or contentsLoc == 'SBM009' or contentsLoc == 'SBM017' or contentsLoc == 'SBM018' or contentsLoc == 'SBM019' or contentsLoc == 'SOM003'">
+					   DISTINCT
+				   </if>
+		           G.BRAND_GROUP_NM     /*브랜드그룹명*/
 		         , G.GOODS_CD           /*상품코드*/
 		         , G.GOODS_NM           /*상품명*/
 		         , G.GOODS_GB           /*상품구분*/
@@ -1412,11 +1416,15 @@
 		         , G.CURR_PRICE         /*현재판매가*/
 		         , G.REG_DT             /*등록일시*/
 		         , G.DISP_ORD
-		         <if test="contentsLoc == 'SCM002'">
+		         <if test="contentsLoc == 'SCM003' and pageGb != null and pageGb == 'BEST'">
 		         , G.SELL_WEEK_QTY
 		         </if>
 		    FROM   (
-		            SELECT CASE WHEN BG.DISP_NM_LANG = 'EN' THEN
+		            SELECT
+		                   <if test="contentsLoc == 'SCM003' and pageGb != null and pageGb == 'BEST'">
+		                      DISTINCT
+		                   </if>
+		                   CASE WHEN BG.DISP_NM_LANG = 'EN' THEN
 		                            BG.BRAND_GROUP_ENM
 		                        ELSE
 		                            BG.BRAND_GROUP_KNM
@@ -1437,33 +1445,72 @@
 		            <choose>
 		                <when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012'">
 		                 , CT.DISP_ORD
-		                 </when>
+		                </when>
+		                <when test="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'">
+		                , CTG.DISP_ORD
+		                </when>
 		                 <otherwise>
 		                 , CG.DISP_ORD
 		                 </otherwise>
 		            </choose>
-		            <if test="contentsLoc == 'SCM002'">
-		                , GS.SELL_WEEK_QTY
-		            </if>
 		            <if test="contentsLoc == 'SCM003' and pageGb != null and pageGb == 'BEST'">
-		                , C4.CATE1_NO
+		                 , GS.SELL_WEEK_QTY
+		                 , CT.CATE_NO AS CATE1_NO
 		            </if>
 		            <choose>
-		                <when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012'"> <!-- md추천 -->
+		                <when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012' or 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'"> <!-- md추천 -->
 		                    FROM	TB_CONTENTS CT
 		                    , TB_CONTENTS_GOODS CTG
 		                    , TB_GOODS G USE INDEX (`PRIMARY`, IX_GOODS_11)
 		                    , TB_GOODS_STOCK S
 		                    , TB_BRAND B
 		                    , TB_BRAND_GROUP BG
+		                    <if test="contentsLoc == 'SCM003' and pageGb != null and pageGb == 'BEST'">
+		                    , TB_GOODS_SUMMARY GS
+		                    </if>
 		                    WHERE	CT.CONTENTS_LOC = CTG.CONTENTS_LOC
 		                    AND 	CT.DISP_ORD = CTG.CONTENTS_SQ
+		                    <if test="contentsLoc == 'SCM003' or contentsLoc == 'SCM002'">
+		                    AND    CT.CATE_NO = CTG.CATE_NO
+		                    </if>
+		                    <if test="contentsLoc == 'SCM003' and pageGb != null and pageGb == 'BEST'"> <!-- 베스트 -->
+		                    AND    CTG.GOODS_CD = GS.GOODS_CD
+		                    </if>
 		                    AND		CTG.GOODS_CD = G.GOODS_CD
 		                    AND		CTG.GOODS_CD = S.GOODS_CD
 		                    AND		G.BRAND_CD = B.BRAND_CD
 		                    AND     B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
 		                    AND		CT.CONTENTS_LOC = #{contentsLoc}
+		                    <if test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012'">
 		                    AND 	CTG.CONTENTS_SQ = #{dispOrd}
+		                    </if>
+		                    <if test="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'">
+		                    AND CT.CONTENTS_SQ IN ( SELECT TMP.CONTENTS_SQ FROM (SELECT A.CONTENTS_SQ FROM TB_CONTENTS A WHERE 1=1 AND A.CONTENTS_LOC = #{contentsLoc} AND NOW() BETWEEN A.DISP_STDT AND A.DISP_EDDT
+		                                                                                    <if test="brandGroupNo != null and brandGroupNo != ''">
+		                                                                                        AND A.BRAND_GROUP_NO = #{brandGroupNo}
+		                                                                                    </if>
+		                                                                                    <if test="contentsLoc=='SCM003'">
+		                                                                                        <if test="cateNo != null and cateNo != ''">
+		                                                                                        AND A.CATE_NO = #{cateNo}
+		                                                                                        </if>
+		                                                                                    </if>
+		                                                                                    <if test="contentsLoc=='SCM002'">
+		                                                                                        <if test="cate1No != null and cate1No != ''">
+		                                                                                            AND A.CATE_NO = #{cate1No}
+		                                                                                        </if>
+		                                                                                    </if>
+		                                                                                    <if test="pageGb != null and pageGb == 'BEST'">
+		                                                                                        <if test="cate1No != null and cate1No != ''">
+		                                                                                        AND A.CATE_NO = #{cate1No}
+		                                                                                        </if>
+		                                                                                    </if>
+		                                                                                    AND A.USE_YN = 'Y' ORDER BY A.CONTENTS_SQ
+		                                                                                    <if test="pageGb == null and pageGb != 'BEST'">
+		                                                                                    LIMIT 1
+		                                                                                    </if>
+		                                                                          ) AS TMP
+		                                                              )
+		                    </if>
 		                    AND		NOW() BETWEEN CT.DISP_STDT AND CT.DISP_EDDT
 		                </when>
 		                <otherwise>
@@ -1473,7 +1520,7 @@
 		                    , TB_GOODS_STOCK S
 		                    , TB_BRAND B
 		                    , TB_BRAND_GROUP BG
-		                    <if test="contentsLoc == 'SCM002'"> <!-- 베스트 -->
+		                    <if test="contentsLoc == 'SCM003'"> <!-- 베스트 -->
 		                    , TB_GOODS_SUMMARY GS
 		                    </if>
 		                    WHERE  C4.LEAF_CATE_NO = CG.CATE_NO
@@ -1489,7 +1536,7 @@
 		                    AND    CG.GOODS_CD = S.GOODS_CD
 		                    AND    G.BRAND_CD = B.BRAND_CD
 		                    AND    B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
-		                    <if test="contentsLoc == 'SCM002'"> <!-- 베스트 -->
+		                    <if test="contentsLoc == 'SCM003'"> <!-- 베스트 -->
 		                    AND    CG.GOODS_CD = GS.GOODS_CD
 	                        </if>
 	                        AND    C4.SITE_CD = #{siteCd}
@@ -1515,13 +1562,13 @@
 		            AND    B.USE_YN = 'Y'
 		            AND    BG.USE_YN = 'Y'
 		            <if test="pageGb != null and pageGb == 'BEST'">
-		            ORDER BY C4.CATE1_NO
+		            ORDER BY CT.CATE_NO
 		            LIMIT 100
 		            </if>
 		           ) G
 		    WHERE  1=1
 		<choose>
-		    <when test="contentsLoc == 'SCM113'"> <!-- 베스트 -->
+		    <when test="contentsLoc == 'SCM013'"><!-- 베스트 -->
 		     ORDER BY G.SELL_WEEK_QTY DESC , G.GOODS_CD
 		    </when>
 		    <when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012'"> <!-- md추천 -->
@@ -1624,7 +1671,6 @@
 		           , G.LIST_PRICE         /*정상가(최초판매가)*/
 		           , G.CURR_PRICE         /*현재판매가*/
 		           , G.REG_DT             /*등록일시*/
-		           , G.NUMB
 		           FROM   (
 		                    SELECT CASE WHEN BG.DISP_NM_LANG = 'EN' THEN
 		                    BG.BRAND_GROUP_ENM
@@ -1642,86 +1688,97 @@
 		                    , G.LIST_PRICE                                             /*정상가(최초판매가)*/
 		                    , G.CURR_PRICE                                             /*현재판매가*/
 		                    , G.REG_DT                                                 /*등록일시*/
-		             <choose>
-		             	<when test="contentsLoc == 'SCM002'"> <!-- 베스트 -->
-		             		, ROW_NUMBER() OVER(ORDER BY GS.SELL_WEEK_QTY DESC
-		             		, G.GOODS_CD) AS NUMB
-		             	</when>
-		             	<when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012'"> <!-- md추천 -->
-		             		, ROW_NUMBER() OVER(ORDER BY CTG.DISP_ORD
-		             		, G.REG_DT DESC
-		             		, G.GOODS_CD) AS NUMB
-		             	</when>
-		             	<when test="contentsLoc == 'SCM002' or (contentsLoc == 'SCM003' and pageGb == null)"> <!-- md추천 -->
-		             		, ROW_NUMBER() OVER(ORDER BY CG.DISP_ORD ,G.UPD_DT DESC, G.CURR_PRICE DESC, G.GOODS_CD ASC) AS NUMB
-		             	</when>
-		             	<when test="contentsLoc == 'SCM003' and pageGb != null and pageGb == 'BEST'">
-		             		, ROW_NUMBER() OVER(ORDER BY C4.CATE1_NO, CG.DISP_ORD ,G.UPD_DT DESC, G.CURR_PRICE DESC, G.GOODS_CD ASC) AS NUMB
-		             	</when>
-		             	<otherwise>
-		             		, ROW_NUMBER() OVER(ORDER BY CG.DISP_ORD
-		             		, G.REG_DT DESC
-		             		, G.GOODS_CD) AS NUMB
-		             	</otherwise>
-		             </choose>
-		<choose>
-		        	<when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012'"> <!-- md추천 -->
-		        		FROM	TB_CONTENTS CT
-		        		, TB_CONTENTS_GOODS CTG
-		        		, TB_GOODS G USE INDEX (`PRIMARY`, IX_GOODS_11)
-		        		, TB_GOODS_STOCK S
-		        		, TB_BRAND B
-		        		, TB_BRAND_GROUP BG
-		        		WHERE	CT.CONTENTS_LOC = CTG.CONTENTS_LOC
-		        		AND 	CT.DISP_ORD = CTG.CONTENTS_SQ
-		        		AND		CTG.GOODS_CD = G.GOODS_CD
-		        		AND		CTG.GOODS_CD = S.GOODS_CD
-		        		AND		G.BRAND_CD = B.BRAND_CD
-		        		AND     B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
-		        		AND		CT.CONTENTS_LOC = #{contentsLoc}
-		        		AND 	CTG.CONTENTS_SQ = #{dispOrd}
-		        		AND		NOW() BETWEEN CT.DISP_STDT AND CT.DISP_EDDT
-		        	</when>
-		        	<otherwise>
-		        		FROM   TB_CATE_4SRCH C4
-		        		, TB_CATE_GOODS CG
-		        		, TB_GOODS G USE INDEX (`PRIMARY`, IX_GOODS_11)
-		        		, TB_GOODS_STOCK S
-		        		, TB_BRAND B
-		        		, TB_BRAND_GROUP BG
-		        		<if test="contentsLoc == 'SCM002'"> <!-- 베스트 -->
-		        			, TB_GOODS_SUMMARY GS
-		        		</if>
-		        		WHERE  C4.LEAF_CATE_NO = CG.CATE_NO
-		        		<choose>
-		        			<when test="brandGroupNo != null and brandGroupNo != ''">
-		        				AND    CG.BRAND_GROUP_NO = #{brandGroupNo}</when>
-		        			<otherwise>
-		        				AND    CG.BRAND_GROUP_NO = 0 /*브랜드메인에서 접근한 것이 아니면*/
-		        			</otherwise>
-		        		</choose>
-		        		AND    CG.GOODS_CD = G.GOODS_CD
-		        		AND    CG.GOODS_CD = S.GOODS_CD
-		        		AND    G.BRAND_CD = B.BRAND_CD
-		        		AND    B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
-		        		<if test="contentsLoc == 'SCM002'"> <!-- 베스트 -->
-		        			AND    CG.GOODS_CD = GS.GOODS_CD
-		        		</if>
-		        		AND    C4.SITE_CD = #{siteCd}
-		        		AND    C4.CATE_GB = #{cateGb}
-		        		AND    C4.CATE_TYPE = 'G031_20' /*컨텐츠카테고리*/
-		        		<choose>
-		        			<when test="pageGb != null and pageGb == 'BEST'">
-		        				<if test="cate1No != null and cate1No != ''">
-		        					AND    C4.CATE1_NO = #{cate1No}
-		        				</if>
-		        			</when>
-		        			<otherwise>
-		        				AND    C4.CATE1_NO = #{cate1No}
-		        			</otherwise>
-		        		</choose>
-		        		AND    C4.CONTENTS_LOC = #{contentsLoc}
-		        	</otherwise>
+		        <choose>
+		            <when test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012' or 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'">
+		                FROM	TB_CONTENTS CT
+		                , TB_CONTENTS_GOODS CTG
+		                , TB_GOODS G USE INDEX (`PRIMARY`, IX_GOODS_11)
+		                , TB_GOODS_STOCK S
+		                , TB_BRAND B
+		                , TB_BRAND_GROUP BG
+		                <if test="contentsLoc == 'SCM003' and pageGb != null and pageGb == 'BEST'">
+		                	, TB_GOODS_SUMMARY GS
+		                </if>
+		                WHERE	CT.CONTENTS_LOC = CTG.CONTENTS_LOC
+		                AND 	CT.DISP_ORD = CTG.CONTENTS_SQ
+		                <if test="contentsLoc == 'SCM003'">
+		                AND    CT.CATE_NO = CTG.CATE_NO
+		                </if>
+		                <if test="contentsLoc == 'SCM003' and pageGb != null and pageGb == 'BEST'"> <!-- 베스트 -->
+		                AND    CTG.GOODS_CD = GS.GOODS_CD
+		                </if>
+		                AND		CTG.GOODS_CD = G.GOODS_CD
+		                AND		CTG.GOODS_CD = S.GOODS_CD
+		                AND		G.BRAND_CD = B.BRAND_CD
+		                AND     B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
+		                AND		CT.CONTENTS_LOC = #{contentsLoc}
+		                <if test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012'">
+		                AND 	CTG.CONTENTS_SQ = #{dispOrd}
+		                </if>
+		                <if test="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'">
+		                    AND CT.CONTENTS_SQ IN ( SELECT TMP.CONTENTS_SQ FROM (SELECT A.CONTENTS_SQ FROM TB_CONTENTS A WHERE 1=1 AND A.CONTENTS_LOC = #{contentsLoc} AND NOW() BETWEEN A.DISP_STDT AND A.DISP_EDDT
+		                                                                                 <if test="brandGroupNo != null and brandGroupNo != ''">
+		                                                                                 AND A.BRAND_GROUP_NO = #{brandGroupNo}
+		                                                                                 </if>
+		                                                                                 <if test="contentsLoc=='SCM003'">
+		                                                                                     <if test="cateNo != null and cateNo != ''">
+		                                                                                 AND A.CATE_NO = #{cateNo}
+		                                                                                     </if>
+		                                                                                 </if>
+		                                                                                 <if test="pageGb != null and pageGb == 'BEST'">
+		                                                                                     <if test="cate1No != null and cate1No != ''">
+		                                                                                 AND    A.CATE_NO = #{cate1No}
+		                                                                                     </if>
+		                                                                                 </if>
+		                                                                                 AND A.USE_YN = 'Y' ORDER BY A.CONTENTS_SQ
+		                                                                                 <if test="pageGb == null and pageGb != 'BEST'">
+		                                                                                 LIMIT 1
+		                                                                                 </if>
+		                                                                            ) AS TMP
+		                                         )
+		                </if>
+		                AND		NOW() BETWEEN CT.DISP_STDT AND CT.DISP_EDDT
+		            </when>
+		            <otherwise>
+		                FROM   TB_CATE_4SRCH C4
+		                , TB_CATE_GOODS CG
+		                , TB_GOODS G USE INDEX (`PRIMARY`, IX_GOODS_11)
+		                , TB_GOODS_STOCK S
+		                , TB_BRAND B
+		                , TB_BRAND_GROUP BG
+		                <if test="contentsLoc == 'SCM003'"> <!-- 베스트 -->
+		                , TB_GOODS_SUMMARY GS
+		                </if>
+		                WHERE  C4.LEAF_CATE_NO = CG.CATE_NO
+		                <choose>
+		                    <when test="brandGroupNo != null and brandGroupNo != ''">
+		                        AND    CG.BRAND_GROUP_NO = #{brandGroupNo}</when>
+		                    <otherwise>
+		                        AND    CG.BRAND_GROUP_NO = 0 /*브랜드메인에서 접근한 것이 아니면*/
+		                    </otherwise>
+		                </choose>
+		                AND    CG.GOODS_CD = G.GOODS_CD
+		                AND    CG.GOODS_CD = S.GOODS_CD
+		                AND    G.BRAND_CD = B.BRAND_CD
+		                AND    B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
+		                <if test="contentsLoc == 'SCM003'"> <!-- 베스트 -->
+		                AND    CG.GOODS_CD = GS.GOODS_CD
+		                </if>
+		                AND    C4.SITE_CD = #{siteCd}
+		                AND    C4.CATE_GB = #{cateGb}
+		                AND    C4.CATE_TYPE = 'G031_20' /*컨텐츠카테고리*/
+		                <choose>
+		                    <when test="pageGb != null and pageGb == 'BEST'">
+		                        <if test="cate1No != null and cate1No != ''">
+		                        AND    C4.CATE1_NO = #{cate1No}
+		                        </if>
+		                    </when>
+		                    <otherwise>
+		                        AND    C4.CATE1_NO = #{cate1No}
+		                    </otherwise>
+		                </choose>
+		                AND    C4.CONTENTS_LOC = #{contentsLoc}
+		            </otherwise>
 		        </choose>
 		        AND    G.GOODS_STAT = 'G008_90' /*승인완료상품*/
 		        AND    G.SELF_MALL_YN = 'Y'   /*몰노출상품*/
@@ -1730,22 +1787,22 @@
 		        AND    B.USE_YN = 'Y'
 		        AND    BG.USE_YN = 'Y'
 		        <if test="pageGb != null and pageGb == 'BEST'">
-		        	ORDER BY C4.CATE1_NO
+		        	ORDER BY CT.CATE_NO
 		        </if>
 		        ) G
 		    WHERE  1=1
 		    <if test="pageable != null and pageable.endRow != null and pageable.endRow > 0">
-		    	AND  G.NUMB BETWEEN #{pageable.startRow} AND #{pageable.endRow}
+		    LIMIT #{pageable.limitStartRow} , #{pageable.pageSize}
 		    </if>
 		    <if test="maxRow != null and maxRow !=''">
-		    	AND  G.NUMB <![CDATA[<=]]> #{maxRow}
+		    LIMIT #{maxRow}
 		    </if>
 		    )
 		SELECT COUNT(1) AS CNT
 		FROM TAB_GOODS G
 		<if test="custNo != null and custNo > 0"> <!-- 로그인 했으면 -->
-			LEFT OUTER JOIN TB_WISHLIST W ON G.GOODS_CD = W.GOODS_CD
-			AND W.CUST_NO = #{custNo}
+		    LEFT OUTER JOIN TB_WISHLIST W ON G.GOODS_CD = W.GOODS_CD
+		    AND W.CUST_NO = #{custNo}
 		</if>
 	</select>
 	

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

@@ -83,6 +83,7 @@
 		   					)
 		   </if>
 		    AND NOW() BETWEEN P.DISP_STDT AND P.DISP_EDDT
+		    AND P.FRONT_GB LIKE CONCAT('%',#{frontGb},'%')
 		    <!-- AND P.FRONT_GB IN (#{frontGb}, 'A') -->
 	</select>
 	
@@ -111,9 +112,7 @@
 		        FROM   TB_PLAN P
 		        WHERE  P.PLAN_GB = 'P' /*기획전*/
 		        AND    P.SITE_CD = #{siteCd}
-		       <!--  <if test="frontGb != null and frontGb != ''">
 		        AND    P.FRONT_GB LIKE CONCAT('%',#{frontGb},'%')
-		        </if> -->
 		        AND    NOW() BETWEEN P.DISP_STDT AND P.DISP_EDDT
 		        AND    P.DEL_YN = 'N' /*삭제안된 기획전*/
 		        AND    P.OPEN_YN = 'Y' /*오픈된 기획전*/

+ 9 - 2
src/main/webapp/WEB-INF/views/mob/callcenter/FaqFormMob.html

@@ -35,8 +35,9 @@
 						<input type="hidden" name="faqType"/>
 						<input type="hidden" name="pageNo" value ="1"/>
 						<input type="hidden" name="pageSize" value ="10"/>
-						<input type="text" class="cs_search_input" name="searchTxt" placeholder="검색어를 입력해주세요" maxlength="50"/>
-						<button onclick="fnSearchFaq(); return false;">search</button>
+						<input type="text" class="form_control cs_search_input" name="searchTxt" placeholder="검색어를 입력해주세요" maxlength="50"/>
+						<button class="btn_x" type="button" onclick="fnRemoveFaq()"><span>검색어 지우기</span></button> <!-- 210514_ 추가 : 검색어 지우기 버튼 [.btn_x] 추가. -->
+						<button class="btn_sch" type="button" onclick="fnSearchFaq(); return false;">search</button> <!-- 210514_ 추가 : .btn_sch 클래스 추가. -->
 						<p>찾으시는 문의 내용이 없으시면 1:1 문의를 이용해 주세요.</p>
 					</form>
 				</div>
@@ -168,6 +169,12 @@
 // 		$('#btnFaqMore').trigger('click');
 		fnGetList($('#ulFaqType>li').eq(0).find('a'));
 	}
+	
+	// 검색어 삭제
+	let fnRemoveFaq = function() {
+		$("#faqForm input[name=searchTxt]").val('');
+		
+	}
 /*]]>*/
 </script>
 

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/callcenter/OneToOneQnaFormMob.html

@@ -321,7 +321,7 @@
 				tag += '	</div>\n';
 				tag += '	<div class="fold_cont">\n';
 				tag += '		<div class="fold_detail">\n';
-				tag += '			<div><p>' + item.questContent.escapeHtml() + '</p></div>\n';
+				tag += '			<div><p>' + item.questContent + '</p></div>\n';
 				
 				if (!gagajf.isNull(item.sysFileNm1) || !gagajf.isNull(item.sysFileNm2)) {
 					tag += '		<p class="img_group">\n';

+ 2 - 2
src/main/webapp/WEB-INF/views/mob/display/BrandMainFormMob.html

@@ -26,7 +26,7 @@
 		</div>
 
 		<th:block th:if="${brandMainLayoutList}" th:each="brandMainLayoutData, mainStat : ${brandMainLayoutList}" th:with="contentsLoc=${#strings.replace(brandMainLayoutData.contentsLoc,'SBM','')},contentsTitle=${brandMainLayoutData.contentsTitle}">
-			<th:block th:if="${brandMainLayoutData.ContentsList != null and !brandMainLayoutData.ContentsList.empty}">
+<!--			<th:block th:if="${brandMainLayoutData.ContentsList != null and !brandMainLayoutData.ContentsList.empty}">-->
 				<th:block th:if="${contentsLoc=='004'}">
 					<!-- 첫번째 슬라이드 -->
 					<div class="inner wide">
@@ -409,7 +409,7 @@
 				</th:block>
 
 
-			</th:block>
+<!--			</th:block>-->
 		</th:block>
 	</section>
 </main>

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

@@ -23,7 +23,7 @@
 	<main role="" id="" class="container">
 		<section class="main">
 			<th:block th:if="${mainLayoutList}" th:each="mainData, mainStat : ${mainLayoutList}" th:with="contentsLoc=${#strings.replace(mainData.contentsLoc,'SMM','')},contentsTitle=${#strings.replace(mainData.contentsTitle,'<br>',' ')}">
-				<th:block th:if="${mainData.ContentsList != null and !mainData.ContentsList.empty}">
+<!--				<th:block th:if="${mainData.ContentsList != null and !mainData.ContentsList.empty}">-->
 					<th:block th:if="${contentsLoc=='001'}">
 						<!-- 1. 비주얼 슬라이드 -->
 						<div class="inner wide">
@@ -239,7 +239,8 @@
 
 					<th:block th:if="${contentsLoc=='006'}">
 						<!-- 6. 타임딜 : 슬라이드 -->
-						<div class="inner bg_dark" th:if="${mainData.socialInfo != null}">
+						<th:block th:each="socialData, socialStat : ${mainData.socialInfo}">
+						<div class="inner bg_dark" th:if="${socialData.socialGoodsList != null}">
 							<div class="main_deal">
 								<div class="titWrap">
 									<a href="javascript:void(0)" onclick="cfnGoToPage(_PAGE_SOCIAL_MAIN);">
@@ -260,7 +261,7 @@
 
 								<div class="swiper-container post-deal">
 									<div class="swiper-wrapper" >
-										<th:block th:each="socialData, socialStat : ${mainData.socialInfo}">
+<!--										<th:block th:each="socialData, socialStat : ${mainData.socialInfo}">-->
 											<th:block th:each="goodsData, goodsStat : ${socialData.socialGoodsList}">
 												<div class="swiper-slide" th:if="${goodsStat.count<21}">
 													<div class="item_prod" style="width:100%">
@@ -282,11 +283,12 @@
 													</div>
 												</div>
 											</th:block>
-										</th:block>
+<!--										</th:block>-->
 									</div>
 								</div>
 							</div>
 						</div>
+						</th:block>
 					</th:block>
 
 					<th:block th:if="${contentsLoc=='007'}">
@@ -740,7 +742,7 @@
 								</div>
 							</div>
 						</div>
-					</th:block>
+<!--					</th:block>-->
 
 				</th:block>
 			</th:block>

+ 8 - 1
src/main/webapp/WEB-INF/views/mob/goods/GoodsDealDescFormMob.html

@@ -77,7 +77,7 @@
 			
 			<th:block th:if="${goodsInfo.tobeFormYn == 'N' and goodsInfo.goodsDesc != null  and !goodsInfo.goodsDesc.empty}" >
 				<div style="height:4rem"></div><!-- 여백용 html -->
-				<th:block th:utext="${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsDesc))}"></th:block>
+				<div id="goodsDescHtml"></div>
 			</th:block>
 		</div>	
 			
@@ -362,6 +362,13 @@
 	 	//210526_ 추가 : 이미지 style 속성 제거
 		$(".mdhtml_box style").remove();$(".mdhtml_box img").removeAttr("style");
 	});
+	
+ //상품상세 적용
+	// 입점 html 에 태그가 정상적이지 않아 스크립트로 처리
+	let goodsDesc = [[${goodsInfo.goodsDesc}]];
+	if ("N" == [[${goodsInfo.tobeFormYn}]] && !gagajf.isNull(goodsDesc)){
+		$('#goodsDescHtml').html([[${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsDesc))}]]);
+	}
   
 /*]]>*/
 </script>	

+ 8 - 1
src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html

@@ -350,7 +350,7 @@
 					
 					<th:block th:if="${goodsInfo.tobeFormYn == 'N' and goodsInfo.goodsDesc != null  and !goodsInfo.goodsDesc.empty}" >
 						<div style="height:4rem"></div><!-- 여백용 html -->
-						<th:block th:utext="${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsDesc))}"></th:block>
+						<div id="goodsDescHtml"></div>
 					</th:block>
 					
 				</div>
@@ -2364,6 +2364,13 @@
 		//210526_ 추가 : 이미지 style 속성 제거
 		$(".mdhtml_box style").remove();$(".mdhtml_box img").removeAttr("style");
 		
+		//상품상세 적용
+		// 입점 html 에 태그가 정상적이지 않아 스크립트로 처리
+		let goodsDesc = [[${goodsInfo.goodsDesc}]];
+		if ("N" == [[${goodsInfo.tobeFormYn}]] && !gagajf.isNull(goodsDesc)){
+			$('#goodsDescHtml').html([[${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsDesc))}]]);
+		}
+		
 		var params = new Object();
 		params.goodsCd = [[${params.goodsCd}]];
 		params.viewDt = [[${params.viewDt}]];

+ 2 - 2
src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewFormMob.html

@@ -115,7 +115,7 @@
 					html += '	<div class="part_goods">\n';
 					html += '		<div class="goods_section">\n';
 					html += '			<div class="goods_detail">\n';
-					html += '				<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" >\n';
+					html += '				<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\',\'\',\'IN16_02\')">\n';
 					html += '					<div class="thumb_box">\n';
 					html += '						<img src="' + _uploadGoodsUrl + '/' + item.sysImgNm + '?RS=405" alt="tmp_pdClickother1">\n';
 					html += '					</div>\n';
@@ -291,7 +291,7 @@
 			$.each(result.dataList1, function(idx, item) {
 				html += '		<div class="goods_section">\n';
 				html += '			<div class="goods_detail">\n';
-				html += '				<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')">\n';
+				html += '				<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\',\'\',\'IN16_01\')">\n';
 				html += '					<div class="thumb_box">\n';
 				html += '						<img src="' + _uploadGoodsUrl + '/' + item.sysImgNm + '" alt="tmp_pdClickother1">\n';
 				html += '					</div>\n';

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/mypage/MypageWishListFormMob.html

@@ -55,7 +55,7 @@ var ajaxWishList = function () {
 							html += '		<div class="item_prod">\n';
 							html += '			<div class="item_state">\n';
 							html += '				<button type="button" class="itemLike likeit" goodsCd=\''+item.goodsCd+'\' onclick="wishlistDelete(this)">관심상품 추가</button>\n';
-							html += '				<a href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')">\n';
+							html += '				<a href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\',\'\',\'IN17_01\')">\n';
 							html += '					<div class="itemPic">\n';
 							html += '						<img class="vLHTC pd_img"  src="' + _uploadGoodsUrl + '/' + item.sysImgNm + '">\n';
 							html += '					</div>\n';

+ 5 - 5
src/main/webapp/WEB-INF/views/mob/planning/PlanningDetailFormMob.html

@@ -488,7 +488,7 @@ if(planCornerList.length>0){
 				}
 				html += ' "';
 				html += 'onClick="cfnPutWishList(this);" goodsCd=\''+item2.goodsCd+'\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>\n';
-				html += '						<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item2.goodsCd + '\')"  class="itemLink">\n';
+				html += '						<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item2.goodsCd + '\',\'\',\'IN12_01\')"  class="itemLink">\n';
 				html += '							<div class="itemPic">\n';
 				html += '								<img class="vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item2.sysImgNm +'">\n';
 				html += '							</div>\n';
@@ -586,7 +586,7 @@ if(template.length>0){
 					html += '			<div class="swiper-slide">\n';
 					html += '				<div class="item_prod">\n';
 					html += '					<div class="item_state">\n';
-					html += '						<a href="#none" class="itemLink">\n';
+					html += '						<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\',\'\',\'IN12_01\')" class="itemLink">\n';
 					html += '							<div class="itemPic">\n';
 					html += '								<img class="vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'?RS=780" alt="">\n';
 					html += '							</div>\n';
@@ -642,7 +642,7 @@ var fnGetCompleteCallback = function (result) {
 			$.each(result.dataList, function(idx, item) {
 				html += '		<div class="item_prod">\n';
 				html += '			<div class="item_state">\n';
-				html += '				<a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">\n';
+				html += '				<a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\',\'\',\'IN12_01\')" class="itemLink">\n';
 				html += '					<div class="itemPic">\n';
 				html += '						<img class="vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'">\n';
 				html += '					</div>\n';
@@ -716,7 +716,7 @@ if(template.length>0){
 				html += '			<div class="swiper-slide">\n';
 				html += '				<div class="item_prod">\n';
 				html += '					<div class="item_state">\n';
-				html += '						<a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">\n';
+				html += '						<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\',\'\',\'IN12_01\')" class="itemLink">\n';
 				html += '							<div class="itemPic">\n';
 				html += '								<img class="vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'">\n';
 				html += '							</div>\n';
@@ -819,7 +819,7 @@ if(template.length>0){
 			html += '							<div class="product_view">\n';
 			html += '								<div class="item_prod">\n';
 			html += '									<div class="item_state">\n';
-			html += '										<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">\n';
+			html += '										<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\',\'\',\'IN12_01\')" class="itemLink">\n';
 			html += '											<div class="itemPic">\n';
 			html += '												<img alt="" class="vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'">\n';
 			html += '											</div>\n';

+ 2 - 1
src/main/webapp/WEB-INF/views/mob/planning/PlanningMainFormMob.html

@@ -91,7 +91,7 @@
 								$.each(item.planningGoodsList, function(idx2, goods) {
 									tag += '		<div class="item_prod">\n';
 									tag += '			<div class="item_state">\n';
-									tag += '				<a class="itemLink" href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\'' + goods.goodsCd + '\');">\n';
+									tag += '				<a class="itemLink" href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\'' + goods.goodsCd + '\',\'\',\'IN12_01\');">\n';
 									tag += '					<div class="itemPic">\n';
 									tag += '						<img alt="BLUE-a" class=" vLHTC pd_img" src="' + _uploadGoodsUrl + '/' + goods.sysImgNm + '"/>\n';
 									tag += '					</div>\n';
@@ -113,6 +113,7 @@
 						$('#divPlanningNoData').hide();
 						$('#divPlanningList').show();
 					} else {
+						$('#planningTotCnt').html('<span>0</span>개의 기획전');
 						$('#divPlanningNoData').show();
 						$('#divPlanningList').hide();
 					}

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/planning/PlanningShotGuideFormMob.html

@@ -185,7 +185,7 @@ if(planCornerList.length>0){
 				html += '						<button type="button" class="itemLike" onclick="cfnPutWishList(this);" goodsCd=\''+item2.goodsCd+'\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>';
 			}
 			
-			html += '						<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item2.goodsCd + '\')" class="itemLink">';
+			html += '						<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\''+item2.goodsCd+'\',\'\',\'IN13_01\')" class="itemLink">';
 			html += '							<div class="itemPic">';
 			html += '								<img class="vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item2.sysImgNm +'">';
 			html += '							</div>';

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/social/SocialMainFormMob.html

@@ -134,7 +134,7 @@ let fnGetSocialList = function(result) {
 		}else{
 			html += '        <button type="button" class="itemLike" onclick="cfnMoPutWishList(this);" goodsCd=\''+item.goodsCd+'\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>';
 		}
-		html += '		<a href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\')" >';
+		html += '		<a href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\',\'\',\'IN11_01\')" >';
 		html += '			<div class="shape ranker"><span>특가</span></div>';
 		html += '			<div class="itemPic">';
 		html += '				<img class="vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'">';

+ 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() + '</div>\n';
+				tag += '			<div>' + item.noticeContent + '</div>\n';
 				tag += '		</div>\n';
 				tag += '	</div>\n';
 				tag += '</li>\n';

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

@@ -192,7 +192,7 @@
 				tag += '	<div class="fold_cont" style="display: none;">\n';
 				tag += '		<div class="fold_detail">\n'; //문의 내용
 				tag += '			<div>\n';
-				tag += '				<p>' + item.questContent.escapeHtml() + '</p>\n';
+				tag += '				<p>' + item.questContent + '</p>\n';
 				
 				if (!gagajf.isNull(item.sysFileNm1) || !gagajf.isNull(item.sysFileNm2)) {
 					tag += '				<p class="img_group">\n';

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

@@ -1216,7 +1216,7 @@
 									tag += '			<div class="shape"><span>품절</span></div>';
 								}
 								tag += '			<button type="button" class="itemLike active" goodsCd="'+item.goodsCd+'" onclick="fnWishDelete(this);">관심상품 추가</button>';
-								tag += '			<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\', \'\', \'\', \'\');" class=" itemLink">';	
+								tag += '			<a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\''+goodsCd+'\',\'\',\'IN22_02\')" class=" itemLink">';	
 								tag += '				<div class="itemPic">';		
 								tag += '					<img class="vLHTC pd_img" src="' + _uploadGoodsUrl + '/' + item.sysImgNm + '" alt="이미지설명"/>';		
 								tag += '				</div>';	

+ 2 - 2
src/main/webapp/WEB-INF/views/web/display/BrandMainFormWeb.html

@@ -22,7 +22,7 @@
 <div id="container" class="container brand_main">
 	<div class="wrap ">
 		<th:block th:if="${brandMainLayoutList}" th:each="brandMainLayoutData, mainStat : ${brandMainLayoutList}" th:with="contentsLoc=${#strings.replace(brandMainLayoutData.contentsLoc,'SBM','')},contentsTitle=${brandMainLayoutData.contentsTitle}">
-			<th:block th:if="${brandMainLayoutData.ContentsList != null and !brandMainLayoutData.ContentsList.empty}">
+<!--			<th:block th:if="${brandMainLayoutData.ContentsList != null and !brandMainLayoutData.ContentsList.empty}">-->
 				<th:block th:if="${contentsLoc=='004'}">
 					<!-- 1. 비주얼 슬라이드 -->
 					<div class="content wide main_visual brand_visual" th:if="${brandMainLayoutData.ContentsList != null}">
@@ -427,7 +427,7 @@
 						</div>
 					</div>
 				</th:block>
-			</th:block>
+<!--			</th:block>-->
 		</th:block>
 	</div>
 </div>

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

@@ -23,7 +23,7 @@
 
 	<div class="wrap ">
 		<th:block th:if="${mainLayoutList}" th:each="mainLayoutData, mainStat : ${mainLayoutList}" th:with="contentsLoc=${#strings.replace(mainLayoutData.contentsLoc,'SMM','')}">
-			<th:block th:if="${mainLayoutData.ContentsList != null and !mainLayoutData.ContentsList.empty}">
+<!--			<th:block th:if="${mainLayoutData.ContentsList != null and !mainLayoutData.ContentsList.empty}">-->
 				<th:block th:if="${contentsLoc=='001'}">
 					<!-- 1. 비주얼 슬라이드 -->
 					<div class="content wide main_visual">
@@ -239,7 +239,8 @@
 
 				<!-- 6. 타임딜 : 슬라이드 -->
 				<th:block th:if="${contentsLoc=='006'}">
-					<div class="content wide main_deal" th:if="${mainLayoutData.socialInfo != null}">
+					<th:block th:each="socialData, socialStat : ${mainLayoutData.socialInfo}">
+					<div class="content wide main_deal" th:if="${socialData.socialGoodsList != null}">
 						<div class="cont_head">
 							<p class="displayH" id="id006">
 								<input type="hidden" name="title" th:value="${mainLayoutData.contentsTitle}">
@@ -324,7 +325,7 @@
 						<div class="cont_body">
 							<div class="swiper-container post-deal">
 								<div class="swiper-wrapper">
-									<th:block th:each="socialData, socialStat : ${mainLayoutData.socialInfo}">
+<!--									<th:block th:each="socialData, socialStat : ${mainLayoutData.socialInfo}">-->
 										<th:block th:each="goodsData, goodsStat : ${socialData.socialGoodsList}">
 											<div class="swiper-slide" th:if="${goodsStat.count<21}">
 												<div class="item_prod">
@@ -348,7 +349,7 @@
 												</div>
 											</div>
 										</th:block>
-									</th:block>
+<!--									</th:block>-->
 								</div>
 								<div class="swiper-controls">
 									<div class="swiper-scrollbar"></div>
@@ -356,6 +357,7 @@
 							</div>
 						</div>
 					</div>
+					</th:block>
 				</th:block>
 
 				<!-- 7. 브랜드픽 -->
@@ -565,7 +567,7 @@
 					</div>
 				</th:block>
 			</th:block>
-		</th:block>
+<!--		</th:block>-->
 
 		<!-- 10. 당신을위한제안 -->
 		<div class="content main_foryou">

+ 9 - 1
src/main/webapp/WEB-INF/views/web/goods/GoodsDealDescFormWeb.html

@@ -77,7 +77,7 @@
 		
 		<th:block th:if="${goodsInfo.tobeFormYn == 'N' and goodsInfo.goodsDesc != null  and !goodsInfo.goodsDesc.empty}" >
 		<div style="height:100px"></div><!-- 여백용 html -->
-		<th:block th:utext="${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsDesc))}"></th:block>
+		<div id="goodsDescHtml"></div>
 		</th:block>
 	</div>	
 			
@@ -320,6 +320,14 @@
 	$(".mdhtml_box style").remove();$(".mdhtml_box img").removeAttr("style");
    	
 	});
+	
+ //상품상세 적용
+	// 입점 html 에 태그가 정상적이지 않아 스크립트로 처리
+	let goodsDesc = [[${goodsInfo.goodsDesc}]];
+	if ("N" == [[${goodsInfo.tobeFormYn}]] && !gagajf.isNull(goodsDesc)){
+		$('#goodsDescHtml').html([[${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsDesc))}]]);
+	}
+	
 /*]]>*/
 </script>	
 </html>

+ 11 - 2
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html

@@ -725,8 +725,8 @@
 					</th:block >
 					
 					<th:block th:if="${ goodsInfo.tobeFormYn == 'N' and goodsInfo.goodsDesc != null  and !goodsInfo.goodsDesc.empty}" >
-						<div style="height:100px"></div><!-- 여백용 html -->
-						<th:block th:utext="${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsDesc))}"></th:block>
+						<div style="height:100px"></div>
+						<div id="goodsDescHtml"></div>
 					</th:block>
 				</div>	
 					
@@ -1280,9 +1280,18 @@
 <script th:src="@{'/biz/goods.js?v=' + ${#calendars.format(#calendars.createNow(), 'yyyyMMddHHmmss')}}" src="/biz/goods.js"></script>
 <script th:inline="javascript">
 /*<![CDATA[*/
+	
+	//상품상세 적용
+	// 입점 html 에 태그가 정상적이지 않아 스크립트로 처리
+	let goodsDesc = [[${goodsInfo.goodsDesc}]];
+	if ("N" == [[${goodsInfo.tobeFormYn}]] && !gagajf.isNull(goodsDesc)){
+		$('#goodsDescHtml').html([[${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsDesc))}]]);
+	}
+	
 	let socialSq = [[${goodsInfo.socialSq}]];	
 	let socialEddt = [[${goodsInfo.socialEddt}]];
 	
+	
 	function promotionTimer() {
 		var endTime = new Date(socialEddt); // 남은시간 지정	30 March 2021 9:56:00 GMT+0900	
 			endTime = (Date.parse(endTime) / 1000);

+ 3 - 3
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailQnaFormWeb.html

@@ -103,12 +103,12 @@
 				tag += '				<span class="fold_state ' + (item.ansStat == "G060_10" ? "doing" : "done") + '">' + item.ansStatNm + '</span>\n'; //답변완료 : done / 처리중 : doing
 				tag += '				<div class="fold_tit">\n';
 				tag += '					<span>' + item.questContent.escapeHtml() + '</span>\n';
-				if (item.selfGb == 1){
-				tag += '					<i class="ico ico_myqna"></i>\n';	//내가 쓴 글에 추가되는 아이콘
-				}
 				if (item.secretYn == "Y"){
 				tag += '					<i class="ico ico_secret"></i>\n';	//비밀글에 추가되는 아이콘
 				}
+				if (item.selfGb == 1){
+				tag += '					<i class="ico ico_myqna"></i>\n';	//내가 쓴 글에 추가되는 아이콘
+				}
 				tag += '				</div>\n';
 				tag += '				<div class="data">\n';
 				tag += '					<span class="wr_id">'+ item.maskingCustId+'</span>\n';

+ 2 - 2
src/main/webapp/WEB-INF/views/web/mypage/MypageReviewFormWeb.html

@@ -148,7 +148,7 @@
 				html += '			<div class="order_desc">\n                                                                                      ';
 				html += '				<div class="goods_box">\n                                                                                   ';
 				html += '					<div class="gd_item">\n	                                                                              ';
-				html += '						<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')">\n             ';
+				html += '						<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\',\'\',\'IN16_01\')">\n             ';
 				html += '							<span class="thumb">\n                                                                          ';
 				html += '								<img src="' + _uploadGoodsUrl + '/' + item.sysImgNm + '?RS=550"  width="100%" alt="">\n  ';
 				html += '							</span>\n                                                                                       ';
@@ -211,7 +211,7 @@
 				html+='				<div class="order_desc">\n';
 				html+='					<div class="goods_box">\n';
 				html+='						<div class="gd_item">\n	';
-				html+='							<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" >\n';
+				html+='							<a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\',\'\',\'IN16_02\')">\n';
 				html+='								<span class="thumb">\n';
 				html+='									<img src="' + _uploadGoodsUrl + '/' + item.sysImgNm + '?RS=550" width="100%" alt="">\n';
 				html+='								</span>\n';

+ 1 - 1
src/main/webapp/WEB-INF/views/web/mypage/MypageWishListFormWeb.html

@@ -76,7 +76,7 @@ var ajaxWishList = function () {
 							html+='		<div class="item_prod">\n';
 							html+='			<div class="item_state">\n';
 							html+='				<button type="button" class="itemLike likeit" goodsCd=\''+item.goodsCd+'\' onclick="wishlistDelete(this)">관심상품 추가</button>\n';
-							html+='				<a href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')">\n';
+							html+='				<a href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\',\'\',\'IN17_01\')">\n';
 							html+='					<div class="itemPic">\n';
 							html+='						<img alt="" class=" vLHTC pd_img" src="' + _uploadGoodsUrl + '/' + item.sysImgNm + '?RS=550">\n';
 							html+='					</div>\n';

+ 5 - 5
src/main/webapp/WEB-INF/views/web/planning/PlanningDetailFormWeb.html

@@ -335,7 +335,7 @@ if(planCornerList.length>0){
 				html += ' "';
 				html += ' onClick="cfnPutWishList(this);" goodsCd=\''+item2.goodsCd+'\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>\n';
 				
-				html += '                         <a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item2.goodsCd + '\')" class="itemLink">\n';
+				html += '                         <a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item2.goodsCd + '\',\'\',\'IN12_01\')" class="itemLink">\n';
 				html += '                             <div class="itemPic">\n';
 				html += '                                 <img alt="BLUE-a" class=" vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item2.sysImgNm +'">\n';
 				html += '                             </div>\n';
@@ -462,7 +462,7 @@ if(template.length>0){
 			html += '          <div class="review_item">\n';
 			html += '              <div class="item_prod">\n';
 			html += '                  <div class="item_state">\n';
-			html += '                      <a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">\n';
+			html += '                      <a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\',\'\',\'IN12_01\')" class="itemLink">\n';
 			html += '                          <div class="itemPic">\n';
 			html += '                            	<img alt="" class="vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'">\n';
 			html += '                          </div>\n';
@@ -568,7 +568,7 @@ if(template.length>0){
 					html += '                        <div class="itemComment">'+item.goodsTnm+'</div>\n';
 				}
 				html += '                        <div class="ui_row">\n';
-				html += '                            <button type="button" class="btn btn_default" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')"><span>자세히 보기</span></button>\n';
+				html += '                            <button type="button" class="btn btn_default" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\',\'\',\'IN12_01\')"><span>자세히 보기</span></button>\n';
 				html += '                        </div>\n';
 				html += '                    </div>\n';
 				html += '                </div>\n';
@@ -626,7 +626,7 @@ if(template.length>0){
 					html += '                <div class="swiper-slide">\n';
 					html += '                    <div class="item_prod">\n';
 					html += '                        <div class="item_state">\n';
-					html += '                            <a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">\n';
+					html += '                            <a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\',\'\',\'IN12_01\')" class="itemLink">\n';
 					html += '                                <div class="itemPic">\n';
 					html += '                                    <img alt="BLUE-a" class=" vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'">\n';
 					html += '                                </div>\n';
@@ -702,7 +702,7 @@ if(template.length>0){
 					html += '                <div class="swiper-slide">\n';
 					html += '                    <div class="item_prod">\n';
 					html += '                        <div class="item_state">\n';
-					html += '                            <a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">\n';
+					html += '                            <a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\',\'\',\'IN12_01\')" class="itemLink">\n';
 					html += '                                <div class="itemPic">\n';
 					html += '                                    <img alt="BLUE-a" class=" vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'">\n';
 					html += '                                </div>\n';

+ 1 - 1
src/main/webapp/WEB-INF/views/web/planning/PlanningMainFormWeb.html

@@ -153,7 +153,7 @@
                                     tag += '               <li>\n';
 								    tag += '                   <div class="item_prod">\n';
 								    tag += '                       <div class="item_state">\n';
-								    tag += '                           <a  onclick="cfnGoToGoodsDetail(\'' + goods.goodsCd + '\');" class="itemLink">\n';
+								    tag += '                           <a  onclick="cfnGoToGoodsDetail(\'' + goods.goodsCd + '\',\'\',\'IN12_01\');" class="itemLink">\n';
 								    tag += '                               <div class="itemPic">\n';
 								    tag += '                                   <img alt="" class="vLHTC pd_img" src="' + _uploadGoodsUrl + '/' + goods.sysImgNm + '?RS=1000">\n';
 								    tag += '                               </div>\n';

+ 1 - 1
src/main/webapp/WEB-INF/views/web/planning/PlanningShotGuideFormWeb.html

@@ -194,7 +194,7 @@ if(planCornerList.length>0){
 				}
 				html += ' onClick="cfnPutWishList(this);" goodsCd=\''+item2.goodsCd+'\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>';
 				
-				html += '                         <a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item2.goodsCd + '\')" class="itemLink">';
+				html += '                         <a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\''+item2.goodsCd+'\',\'\',\'IN13_01\')" class="itemLink">';
 				html += '                             <div class="itemPic">';
 				html += '                                 <img alt="BLUE-a" class=" vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item2.sysImgNm +'">';
 				html += '                             </div>';

+ 1 - 1
src/main/webapp/WEB-INF/views/web/social/SocialMainFormWeb.html

@@ -152,7 +152,7 @@ let fnGetSocialList = function(result) {
 			html += '        <button type="button" class="itemLike" onclick="cfnPutWishList(this);" goodsCd=\''+item.goodsCd+'\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>\n';
 		}
 		
-		html += '        <a href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\')" >\n';
+		html += '        <a href="javascript:void(0);" class="itemLink" onclick="cfnGoToGoodsDetail(\''+item.goodsCd+'\',\'\',\'IN11_01\')" >\n';
 		html += '            <div class="itemPic">\n';
 		html += '                <img alt="BLUE-a" class=" vLHTC pd_img" src="'+ _uploadGoodsUrl +'/'+item.sysImgNm +'?RS=550">\n';
 		html += '            </div>\n';

+ 3 - 5
src/main/webapp/ux/mo/css/layout_m.css

@@ -1008,7 +1008,7 @@
 .modal.pd_pop[class*="bnf_"] h6 {margin-bottom:1.6rem; font-size:1.4rem; font-weight:500;}
 .modal.pd_pop[class*="bnf_"] .benefit_blk {margin-top:3rem}
 .modal.pd_pop[class*="bnf_"] .benefit_blk:first-child {margin-top:0}
-.modal.pd_pop[class*="bnf_"] .tbl.type1 {border-top:1px solid #000; border-bottom:1px solid #ddd;} 
+.modal.pd_pop[class*="bnf_"] .tbl.type1 {border-top:0.1rem solid #000; border-bottom:0.1rem solid #ddd;} 
 .modal.pd_pop[class*="bnf_"] .tbl.type1 table {width:100%; text-align:left; word-break:break-all;}
 .modal.pd_pop[class*="bnf_"] .tbl.type1 table th,
 .modal.pd_pop[class*="bnf_"] .tbl.type1 table td {position:relative; padding:1.4rem 1.2rem; font-weight:300; font-size:1.3rem; letter-spacing:-0.025em;}
@@ -1802,8 +1802,6 @@
 .dp_hotdeal .hotdeal #countdown span:first-child{margin-right:1.8vw;}
 .dp_hotdeal .hotdeal .list_content .itemsGrp .item_prod{margin-bottom:3rem; margin-right:0;}
 .dp_hotdeal .itemsGrp.rowtype .item_prod {margin-right:0; width:100%;}
-.dp_hotdeal .itemsGrp.rowtype .item_prod:nth-child(2){margin-top:3rem;}
-.dp_hotdeal .itemsGrp.rowtype .item_prod:nth-child(2n) {margin-right: 0;}
 .dp_hotdeal .itemsGrp.rowtype .item_prod .itemBadge, 
 .dp_hotdeal .itemsGrp.rowtype .item_prod .itemcolorchip {display: none;}
 .dp_hotdeal .itemsGrp.rowtype .item_prod .item_state {display: table;  padding-bottom: 0; height:23.4rem; width: 100%;}
@@ -2124,9 +2122,9 @@
 /* 필터세부사항(사이즈..) */
 .filter_body > ul > li .sizebox{padding-top:3rem;}
 .filter_body > ul > li .sizebox > li{padding:0 2rem 3rem; overflow:hidden;}
-.filter_body > ul > li .sizebox > li label{position:relative; display:block; float:left; margin:2% 0 0 2% ; width:32%; height:33px; line-height:33px; text-align:center; background-color:#fff;}
+.filter_body > ul > li .sizebox > li label{position:relative; display:block; float:left; margin:2% 0 0 2% ; width:32%; height:3.3rem; line-height:3.3rem; text-align:center; background-color:#fff;}
 .filter_body > ul > li .sizebox > li label input{position:absolute; top:0; right:0; opacity:0; width:0; height:0;}
-.filter_body > ul > li .sizebox > li label span{position:absolute; top:0; bottom:0; left:0; right:0; color:#222; border:1px solid #dddddd; box-sizing:border-box;}
+.filter_body > ul > li .sizebox > li label span{position:absolute; top:0; bottom:0; left:0; right:0; color:#222; border:0.1rem solid #dddddd; box-sizing:border-box; overflow:hidden; text-overflow:ellipsis;}
 .filter_body > ul > li .sizebox > li label input:checked + span{border-color:#222;}
 .filter_body > ul > li .sizebox > li label:nth-of-type(3n+1){margin-left:0;}
 .filter_body > ul > li .sizebox strong{display:block;}

+ 17 - 16
src/main/webapp/ux/mo/css/style24_m.css

@@ -939,7 +939,7 @@ main.container .inner h2[data-style~="unusual"] {font-size:2.0rem;top: 0;positio
 .voucher.disable .vch_remain {font-size:2.8rem !important;}
 
 
-.btn_group_flex > div > .btn {padding:1.2rem 1.3rem;}
+/* .btn_group_flex > div > .btn {padding:1.2rem 1.3rem;} */
 .goods_btn_wrap {display:flex; flex-wrap: wrap; width:100%; align-items:stretch; flex-direction:row;}
 .goods_btn_wrap > div {margin:0 0.4rem 0.5rem 0; flex:1;}
 .goods_btn_wrap > div:first-child {margin-left:0}
@@ -1756,6 +1756,7 @@ background-size:100%;}
 .od .order_badge {font-size: 0.9rem; color: #666; font-weight: 300; border:1px solid #888; padding:0.5rem 0.4rem; margin-left: 1px; vertical-align: top;}
 .od .order_bullet_badge {color: #fd4802; border:1px solid #fd4802; background: #fff6f2;}
 
+.od .btn_group_flex > div > .btn {padding:1.3rem;}
 .od .btn_group_flex > div > .btn.btn_primary {border-color:#fd4802; background: #fd4802; color:#fff;}
 
 .od .part_goods {position:relative;}
@@ -2025,7 +2026,7 @@ background-size:100%;}
 .modal.couponModify_pop .modal-body .pop_cont {line-height:1; font-size: 1.3rem;}
 .modal.couponModify_pop .modal-footer {margin-top:0;}
 .modal.couponModify_pop button span {line-height:1;}
-.modal.couponModify_pop h6 {margin-bottom:1.5rem; font-size: 1.4rem; font-weight: 500;}
+.modal.couponModify_pop h6 {margin-bottom:1.5rem; font-size: 1.4rem; font-weight: 500; line-height: 1.4rem;}
 .modal.couponModify_pop .form_field,
 .modal.couponModify_pop .form_field > div {display:block; width:100%;}
 .modal.couponModify_pop .area_item_coupon {margin-bottom:40px;}
@@ -2334,8 +2335,8 @@ main.container .shopping_bag .inner:last-child {padding-bottom: 0;}
 .shopping_bag .area_salecoupon h4 {margin-bottom: 1.5rem; font-size: 1.6rem;}
 
 .shopping_bag .part_goods .goods_basic {margin-top: 2.4rem; padding-top: 2.4rem; border-top: 1px dashed #ddd;}
-.shopping_bag .part_goods h3 {margin-bottom: 2.4rem;}
-.shopping_bag .part_goods h3 span {color: #888; font-size: 1.2rem;}
+.shopping_bag .part_goods h3 {margin-bottom: 2.4rem; font-size: 1.4rem;}
+.shopping_bag .part_goods h3 span {color: #888; font-size: 1.2rem; margin-left: 0.4rem;}
 .shopping_bag .part_goods .goods_detail {padding: 0 0 0 14rem;}
 .shopping_bag .part_goods .goods_detail .thumb_box {left: 3rem;}
 .shopping_bag .part_goods .goods_detail .form_field {position: absolute; left: 0; top: 0;}
@@ -2349,7 +2350,7 @@ main.container .shopping_bag .inner:last-child {padding-bottom: 0;}
 .shopping_bag .goods_dlvr_save a.btn_popup_save {display:inline-block; padding-right:20px; text-align: center; color:#fd4802; font-size:1.1rem; font-weight:200; line-height:14px; text-decoration:underline; background:url('/images/mo/ico_go_save.png') no-repeat 98% 45%; background-size:1.1rem;}
 
 .shopping_bag .od_calc_wrap {position: fixed; left: 0; bottom: 0; z-index: 99; font-size: 0; width: 100%;}
-.shopping_bag .od_calc_wrap button {width: 60%;}
+.shopping_bag .od_calc_wrap button {width: 60%; height: 5.8rem;}
 .shopping_bag .od_calc_wrap button:first-child {width: 40%;}
 
 .shopping_bag .area_order {}
@@ -2552,7 +2553,7 @@ main.container .od_gift .inner:last-child {padding-bottom: 0;}
 
 .od_gift .info_txt {margin-top: 2.4rem; background: #f5f5f5;}
 
-.part_goods .goods_section > .od_calc {margin: 1rem 0 0 0; padding:1.3rem 0 0 0; position: relative; line-height: 1; border-top: 1px solid #ddd;}
+.part_goods .goods_section > .od_calc {margin: 1rem 0 0 0; padding:1.3rem 0 0 0; position: relative; line-height: 1; border-top: 0.1rem solid #ddd;}
 .part_goods .goods_section > .od_calc .price {top: auto; bottom: 0;}
 .part_goods .goods_section > .od_calc .price .sale_price {margin-right: 1rem;}
 .part_goods .goods_section:last-of-type {margin-bottom: 0;}
@@ -2568,17 +2569,17 @@ main.container .od_extra .inner:last-child {padding-bottom: 0;}
 .couponSelectPop .popup_head {text-indent:-999em; visibility: hidden; font-size: 0; padding: 0;}
 .couponSelectPop .popup_con {padding:2rem 2rem;}
 .couponSelectPop .dlvr_coupon {width: 100%; text-align: left;}
-.couponSelectPop .dlvr_coupon {padding:14px 18px;}f
-.couponSelectPop .dlvr_coupon .name {color:#222; font-size:14px; font-weight:300;}
-.couponSelectPop .dlvr_coupon .txt {margin-top:10px; color:#888; font-size:14px; font-weight:200;}
+.couponSelectPop .dlvr_coupon {padding:1.4rem 1.8rem;}
+.couponSelectPop .dlvr_coupon .name {color:#222; font-size:1.4rem; font-weight:300;}
+.couponSelectPop .dlvr_coupon .txt {margin-top:1.0rem; color:#888; font-size:1.4rem; font-weight:200;}
 .couponSelectPop .dlvr_coupon .txt span {font-weight:300;}
-.couponSelectPop .dlvr_coupon .discount {margin-top:10px;  color:#fd4802; font-size:16px; font-weight:300;}
+.couponSelectPop .dlvr_coupon .discount {margin-top:1.0rem;  color:#fd4802; font-size:1.6rem; font-weight:300;}
 .couponSelectPop .dlvr_coupon .discount span {font-weight:500;}
-.couponSelectPop .dlvr_coupon .empty {margin-top:0; color:#222; font-size:14px; font-weight:300;}
+.couponSelectPop .dlvr_coupon .empty {margin-top:0; color:#222; font-size:1.4rem; font-weight:300;}
 
-.couponSelectPop .list li {border:1px solid #eee; border-bottom: 1px solid transparent;}
-.couponSelectPop .list li:last-child {border-bottom: 1px solid #eee;}
-.couponSelectPop .list li:hover, .couponSelectPop01 .list li:active {border:1px solid #fd4802;}
+.couponSelectPop .list li {border:0.1rem solid #eee; border-bottom: 0.1rem solid transparent;}
+.couponSelectPop .list li:last-child {border-bottom: 0.1rem solid #eee;}
+.couponSelectPop .list li:hover, .couponSelectPop01 .list li:active {border:0.1rem solid #fd4802;}
 .couponSelectPop .list > li[aria-disabled="true"] .dlvr_coupon p {color:#888;}
 
 /* 다음우편번호 api */
@@ -2587,7 +2588,7 @@ main.container .od_extra .inner:last-child {padding-bottom: 0;}
 /* popup_메인공지 FULL */
 .popup_main_notice {position:fixed; left:0; top:0; right: 0; bottom: 0; z-index:90000; width: 100%; height: 100%; overflow-y:auto; background: #222;}
 .popup_main_notice .swiper-button-prev,
-.popup_main_notice .swiper-button-next {position:absolute; top:50%; transform:translateY(-50%); display:inline-block; width:60px; height:60px; background-image:url('/images/pc/btn_main_pop_arrow.png'); background-repeat:no-repeat; background-size:auto 100%; z-index:2;}
+.popup_main_notice .swiper-button-next {position:absolute; top:50%; transform:translateY(-50%); display:inline-block; width:6.0rem; height:6.0rem; background-image:url('/images/pc/btn_main_pop_arrow.png'); background-repeat:no-repeat; background-size:auto 100%; z-index:2;}
 .popup_main_notice .swiper-button-prev {left:0; background-position:0 50%;}
 .popup_main_notice .swiper-button-next {right:0; background-position:100% 50%;}
 .popup_main_notice .swiper-button-prev::after,
@@ -2599,7 +2600,7 @@ main.container .od_extra .inner:last-child {padding-bottom: 0;}
 .popup_main_notice .popup_content .popup_body .swiper-slide img {width: 100%; position: absolute; top: 50%; left: 50%; transform:translate(-50%, -50%); height: auto;}
 .popup_main_notice .popup_content .popup_footer {position: fixed; left:0; bottom:0; width: 100%; background:#222; height: 6rem; padding: 2.2rem;}
 .popup_main_notice .popup_content .popup_footer::after {content:''; clear:both; display:block;}
-.popup_main_notice .popup_content .popup_footer a.btn_underline {display:inline-block; float:left; color:#888; font-size:1.3rem; font-weight:200; border-color:#888}
+.popup_main_notice .popup_content .popup_footer a.btn_underline {float:left; color:#888; font-size:1.3rem; font-weight:200; border-color:#888;}
 .popup_main_notice .popup_content .popup_footer a.btn_popup_close {position: absolute; top: 0; right: 0; width: 6rem; height: 6rem; background: url(/images/mo/btn_main_pop_arrow.png) no-repeat center; background-size:1.6rem;}
 
 .popup_main_notice .popup_body.onlyNotice .swiper-button-prev,

+ 13 - 4
src/main/webapp/ux/mo/js/common_m.js

@@ -17,8 +17,18 @@ $(document).ready(function() {
         }, false);
 
         // history back
+        var lastHeight;
+        $('a').click(function () {
+            height2 = $(document).scrollTop();
+            console.log(height2);
+        });
+        //window.onbeforeunload = function(e) {
+        //    lastHeight = $(document).scrollTop();
+        //    console.log(lastHeight);
+        //};
         $(".btn_back").on("click", function () {
-            history.back()
+            history.back();
+            $('html').animate({scrollTop : lastHeight.top}, 400);
         });
 
         // goTop, header (스크롤 인식)
@@ -88,10 +98,9 @@ $(document).ready(function() {
 
         // items like on/off
        
-            $(".itemLike").click(function () {
+        $(document).on('click','.itemLike',function(){
             $(this).toggleClass("likeit");
-            });
-      
+        });
 
 });
 

+ 14 - 7
src/main/webapp/ux/pc/css/layout.css

@@ -1656,18 +1656,19 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.container .wrap .content.wide.dp_detail_case1 {max-width: 1920px;}*/
 	.dp .itemsGrp {margin:0 -10px;}
 	/* 정렬타입 [ cutcut1 ~ 4 ] 추가 */
-	.dp .itemsGrp.cut1 {margin:0 -10px;display: flex;justify-content: center;flex-direction: column;flex-wrap: nowrap;align-content: center;align-items: center;}
-	.dp .itemsGrp.cut1 .item_prod {display: block;}
-	.dp .itemsGrp.cut2 {margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((58% - 20px)/2);}
+	.dp .itemsGrp.cut1 {width: 100%;margin:0 -10px;display: flex;justify-content: center;flex-direction: column;flex-wrap: nowrap;align-content: center;align-items: center;}
+	.dp .itemsGrp.cut1 .item_prod {width: 394px;display: block;}
+	.dp .itemsGrp.cut2 {width: 100%;margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((28.8% - 20px)/2);}
 	.dp .itemsGrp.cut2 .item_prod {width: calc((100% - 0px)/2);}
-	.dp .itemsGrp.cut3 {margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((42.8% - 20px)/2);}
+	.dp .itemsGrp.cut3 {width: 100%;margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((28.75% - 20px)/2);}
 	.dp .itemsGrp.cut3 .item_prod {width: calc((100% - 1px)/3);}
-	.dp .itemsGrp.cut4 {margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((28.8% - 20px)/2);}
+	.dp .itemsGrp.cut4 {width: 100%;margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((28.8% - 20px)/2);}
 	.dp .itemsGrp.cut4 .item_prod {width: calc((100% - 0px)/4);}
+
 	.dp .wrap {padding-bottom:160px;}
 	.dp .cont_body {position:relative;}
 	.container.dp {background: #ffffff;}
-	.container.dp .wrap {position:relative; width:100%; min-width:auto; max-width:none; padding-left:0px; padding-right:0px;}
+	/* .container.dp .wrap {position:relative; width:100%; min-width:auto; max-width:none; padding-left:0px; padding-right:0px;} */
 	.container.dp .content {}
 	.container.dp .content.wide {}
 	.dp .content .cont_head .displayH {margin-bottom: 60px; text-align: center;}
@@ -4419,6 +4420,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	/* 이용약관,개인정보취급방침,업체리스트 */
 	.ps .cont_head > div h3{text-align: center;margin-bottom: 0;padding-bottom: 60px;font-size: 40px;line-height: 1;}
 	.ps .cont_body {width: 1200px;margin: 0 auto;}
+	.ps .cont_foot {width: 1200px;margin: 0 auto;}
 	.ps p {font-size:16px;color:#666666;line-height:26px;letter-spacing:-0.025em;}
 	.ps {padding:0; border-top:1px solid #000;} 
 	.ps table {word-break:keep-all;margin-top: 30px;}
@@ -4448,11 +4450,16 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.hookGrp .hook_list ul li a:focus span:after{content: '';display: block; color: #fd4802; box-sizing: border-box; border-bottom: 1px solid #fd4802;}
 	.hookGrp .hook_cont {font-size:16px;color:#666666;line-height:26px;letter-spacing:-0.025em;}
 	.hookGrp .hook_cont div{margin-top: 62px;}
-	.hookGrp .hook_cont div:last-child{margin-bottom: 160px;}
+	
 	.hookGrp .hook_cont h4 {font-size:24px;font-weight:500;color:#222222;line-height:26px;letter-spacing:-0.025em;}
 	.hookGrp .hook_cont p {font-size:16px;color:#666666;line-height:26px;letter-spacing:-0.025em;}
 	.hookGrp .hook_cont ol li {padding-left: 15px;}
 
+	.ps #prvc_sel {margin-top: 62px; margin-bottom: 160px;}
+	.ps #prvc_sel div {margin-top: 0; margin-bottom: 0;}
+	.ps #prvc_sel .select_custom {width: 240px; height:auto;}
+	.ps #prvc_sel .select_custom .combo .list {position: relative; top: -1px; max-height:none;}
+	.ps #prvc_sel .select_custom .combo .list>li {padding:0 15px;}
 
 
 

+ 1 - 1
src/main/webapp/ux/pc/css/main.css

@@ -66,7 +66,7 @@
 
 
 /* main */
-.container.main .wrap {position:relative; width:100%; min-width:auto; max-width:none; padding-left:0px; padding-right:0px;}
+/* .container.main .wrap {position:relative; width:100%; min-width:auto; max-width:none; padding-left:0px; padding-right:0px;} */
 .main {}
 .main .dpnone {display:none;}
 .main .swiper-pagination {margin:0; position:relative;}