فهرست منبع

Merge branch 'develop' into eskim

Conflicts:
	src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html
eskim 4 سال پیش
والد
کامیت
e1e009e406
29فایلهای تغییر یافته به همراه135 افزوده شده و 75 حذف شده
  1. 1 1
      src/main/java/com/style24/front/biz/dao/TsfCustomerDao.java
  2. 1 1
      src/main/java/com/style24/front/biz/service/TsfCustomerService.java
  3. 6 4
      src/main/java/com/style24/front/biz/service/TsfOrderService.java
  4. 1 1
      src/main/java/com/style24/front/biz/thirdparty/EigeneaiApi.java
  5. 2 2
      src/main/java/com/style24/front/biz/thirdparty/SearchEngineDiquest.java
  6. 2 2
      src/main/java/com/style24/persistence/mybatis/shop/TsfCustomer.xml
  7. 3 3
      src/main/java/com/style24/persistence/mybatis/shop/TsfGoods.xml
  8. 1 1
      src/main/java/com/style24/persistence/mybatis/shop/TsfOrder.xml
  9. 21 3
      src/main/java/com/style24/persistence/mybatis/shop/TsfOrderChange.xml
  10. 8 3
      src/main/webapp/WEB-INF/views/mob/app/NoticeFormMob.html
  11. 16 0
      src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html
  12. 10 1
      src/main/webapp/WEB-INF/views/mob/mypage/MypageCreCancelDetailFormMob.html
  13. 13 1
      src/main/webapp/WEB-INF/views/mob/mypage/MypageCreListInfoMob.html
  14. 0 14
      src/main/webapp/WEB-INF/views/mob/mypage/MypageOrderListInfoMob.html
  15. 0 1
      src/main/webapp/WEB-INF/views/mob/mypage/MypageReturnFormMob.html
  16. 0 1
      src/main/webapp/WEB-INF/views/mob/mypage/NoMemberReturnFormMob.html
  17. 6 3
      src/main/webapp/WEB-INF/views/web/customer/PrivacyPolicyFormWeb.html
  18. 1 1
      src/main/webapp/WEB-INF/views/web/display/SearchLayerWeb.html
  19. 7 1
      src/main/webapp/WEB-INF/views/web/mypage/MypageCreCancelDetailFormWeb.html
  20. 10 1
      src/main/webapp/WEB-INF/views/web/mypage/MypageCreListFormWeb.html
  21. 0 7
      src/main/webapp/WEB-INF/views/web/mypage/MypageOrderListFormWeb.html
  22. 0 1
      src/main/webapp/WEB-INF/views/web/mypage/MypageReturnFormWeb.html
  23. 0 1
      src/main/webapp/WEB-INF/views/web/mypage/NoMemberReturnFormWeb.html
  24. 4 2
      src/main/webapp/biz/goods.js
  25. 1 1
      src/main/webapp/biz/search.js
  26. 4 4
      src/main/webapp/ux/mo/css/common_m.css
  27. 7 6
      src/main/webapp/ux/mo/css/layout_m.css
  28. 2 1
      src/main/webapp/ux/pc/css/common.css
  29. 8 7
      src/main/webapp/ux/pc/css/layout.css

+ 1 - 1
src/main/java/com/style24/front/biz/dao/TsfCustomerDao.java

@@ -64,7 +64,7 @@ public interface TsfCustomerDao {
 	 * @author jsshin
 	 * @since 2021. 02. 24
 	 */
-	Customer getCusomterActiveAndDormant(Customer customer);
+	Customer getCustomerActiveAndDormant(Customer customer);
 
 	/**
 	 * SNS 정보로 고객 테이블 조회

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

@@ -83,7 +83,7 @@ public class TsfCustomerService {
 		TsfSession.setAttribute("maskingYn", "Y");
 		customer.setSiteCd(TscConstants.Site.STYLE24.value());
 		customer.encryptData(); // 데이터 암호하
-		return customerDao.getCusomterActiveAndDormant(customer);
+		return customerDao.getCustomerActiveAndDormant(customer);
 	}
 
 	/**

+ 6 - 4
src/main/java/com/style24/front/biz/service/TsfOrderService.java

@@ -150,10 +150,12 @@ public class TsfOrderService {
 				&& !TscConstants.OrderDetailStat.DEPOSIT_WAIT.value().equals(tmpOrder.getOrdDtlStat())
 				&& !TscConstants.OrderDetailStat.PAYMENT_COMPLETE.value().equals(tmpOrder.getOrdDtlStat())
 				&& !TscConstants.OrderDetailStat.GOODS_PREPARE.value().equals(tmpOrder.getOrdDtlStat())) {
-				// 2021.06.28 취소수량 존재 시 전체취소 불가 처리
-				if (tmpOrder.getCnclRtnQty() > 0) {
-					allCanYn = "N";
-				}
+				allCanYn = "N";
+			}
+
+			// 2021.06.28 취소수량 존재 시 전체취소 불가 처리
+			if ("Y".equals(allCanYn) && tmpOrder.getCnclRtnQty() > 0) {
+				allCanYn = "N";
 			}
 
 			// 전체 구매확정 가능 여부 설정

+ 1 - 1
src/main/java/com/style24/front/biz/thirdparty/EigeneaiApi.java

@@ -259,7 +259,7 @@ public class EigeneaiApi {
 	 * @since 2021. 6. 30
 	 */
 	public Collection<Item> getRealtimeViewBestGoodsList(int size) {
-		String requestUrl = rtsApiUrl + "/stats-transition?cuid=" + cuid + "&size=" + size + "&type=view&interval=30&span=30";
+		String requestUrl = rtsApiUrl + "/stats-transition?cuid=" + cuid + "&size=" + size + "&type=view&interval=5&span=10";
 
 		Eigeneai eigeneai = this.getEigeneaiInfo(requestUrl);
 		if (eigeneai.getItems() != null && !eigeneai.getItems().isEmpty()) {

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

@@ -189,7 +189,7 @@ public class SearchEngineDiquest {
 
 			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();
@@ -222,7 +222,7 @@ public class SearchEngineDiquest {
 			if (jsonObj.get("returnCode").toString().equals("1")) { // 성공
 				Gson gson = new Gson();
 				result = gson.fromJson(jsonObj.toJSONString(), GoodsListResponse.class);
-//				log.info("///[getGoodsList] result: {}", result);
+				log.info("///[getGoodsList] result: {}", result);
 			}
 		} catch (Exception e) {
 			e.printStackTrace();

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

@@ -289,8 +289,8 @@
 	</insert>
 
 	<!--활동, 휴면 회원만 조회-->
-	<select id="getCusomterActiveAndDormant" parameterType="Customer" resultType="Customer">
-		/* TsfCustomer.getCusomterActiveAndDormant */
+	<select id="getCustomerActiveAndDormant" parameterType="Customer" resultType="Customer">
+		/* TsfCustomer.getCustomerActiveAndDormant */
 		SELECT C.CUST_NO
 		     , C.CUST_ID
 		     , C.EMAIL

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

@@ -1480,7 +1480,7 @@
 		                <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 G 
 		                    , TB_GOODS_STOCK S
 		                    , TB_BRAND B
 		                    , TB_BRAND_GROUP BG
@@ -1840,7 +1840,7 @@
 		         , G.GOODS_TNM          /*상품타이틀명*/
 		         , G.MAIN_COLOR_CD      /*대표색상코드*/
 		         , G.LIST_PRICE         /*정상가(최초판매가)*/
-		         , G.CURR_PRICE         /*현재판매가*/
+		, G.CURR_PRICE         /*현재판매가*/
 		         , G.REG_DT             /*등록일시*/
 		    FROM   (
 		            SELECT DISTINCT CASE WHEN BG.DISP_NM_LANG = 'EN' THEN
@@ -1862,7 +1862,7 @@
 		                 , G.REG_DT                                                 /*등록일시*/
 		            FROM   TB_CATE_4SRCH C4
 		                 , TB_CATE_GOODS CG
-		                 , TB_GOODS G USE INDEX (IX_GOODS_12)
+		                 , TB_GOODS G
 		                 , TB_GOODS_STOCK GS
 		                 , TB_BRAND B
 		                 , TB_BRAND_GROUP BG

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

@@ -108,7 +108,7 @@
 		                 WHERE Z.SHIP_COMP_CD = OD.SHIP_COMP_CD)                        AS SHIP_COMP_NM
 		             , OD.INVOICE_NO
 		             , OD.SUPPLY_COMP_CD
-		             , OD.DELV_FEE_CD
+		             , IF(G.SELF_GOODS_YN = 'Y', 'WMS', OD.DELV_FEE_CD)                 AS DELV_FEE_CD
 		             , OD.SHOT_DELV_YN
 		             , OD.CHANGEABLE_YN
 		             , OD.RETURNABLE_YN

+ 21 - 3
src/main/java/com/style24/persistence/mybatis/shop/TsfOrderChange.xml

@@ -146,15 +146,22 @@
 			</otherwise>
 		</choose>
 		<if test="delvFeeCd != null and delvFeeCd != ''">
+			<choose>
+				<when test="delvFeeCd == 'WMS'">
+		           AND G.SELF_GOODS_YN = 'Y'
+				</when>
+				<otherwise>
 		           AND OD.DELV_FEE_CD = #{delvFeeCd}
+				</otherwise>
+			</choose>
 		</if>
 		           AND O.DISP_YN = 'Y'
 		           AND OD.ORD_QTY - OD.CNCL_RTN_QTY > 0
 		       ) Z
 		 GROUP BY Z.ORD_NO, Z.ORD_DT, Z.ORD_NM, Z.ORD_PHNNO, Z.GIFT_ADDR_INP_YN, Z.ORD_DTL_NO, Z.ORD_EXCH_GB
 		        , Z.GOODS_CD, Z.GOODS_NM, Z.LIST_PRICE, Z.SYS_IMG_NM, Z.ORD_DTL_STAT, Z.ORD_QTY, Z.CNCL_RTN_QTY, Z.ORD_AMT, Z.REAL_ORD_AMT
-		        , Z.SAVE_PNT_AMT, Z.CNCL_RTN_AMT, Z.PNT_DC_AMT, Z.GFCD_USE_AMT, Z.SHIP_COMP_CD, Z.GIFT_PACK_YN, Z.SHIP_COMP_NM, Z.INVOICE_NO
-		        , Z.SUPPLY_COMP_CD, Z.DELV_FEE_CD, Z.SHOT_DELV_YN, Z.CHANGEABLE_YN, Z.SELF_GOODS_YN, Z.BRAND_NM
+		        , Z.SAVE_PNT_AMT, Z.CNCL_RTN_AMT, Z.PNT_DC_AMT, Z.GFCD_USE_AMT, Z.SHIP_COMP_CD, Z.GIFT_PACK_YN , Z.SHIP_COMP_NM
+		        , Z.INVOICE_NO, Z.SUPPLY_COMP_CD, Z.DELV_FEE_CD, Z.SHOT_DELV_YN, Z.CHANGEABLE_YN, Z.SELF_GOODS_YN, Z.BRAND_NM
 		        , Z.ORD_REQ_CHG_QTY, Z.ORD_CAN_CHG_QTY, Z.BANK_CD, Z.ACCOUNT_NO, Z.ACCOUNT_NM
 		 ORDER BY Z.ORD_NO DESC, Z.ORD_DTL_STAT, Z.SELF_GOODS_YN DESC, Z.SHOT_DELV_YN DESC, Z.SUPPLY_COMP_CD, Z.DELV_FEE_CD
 	</select>
@@ -303,7 +310,14 @@
 		           AND O.ORD_NO = #{ordNo}
 		</if>
 		<if test="delvFeeCd != null and delvFeeCd != ''">
+			<choose>
+				<when test="delvFeeCd == 'WMS'">
+		           AND G.SELF_GOODS_YN = 'Y'
+				</when>
+				<otherwise>
 		           AND OD.DELV_FEE_CD = #{delvFeeCd}
+				</otherwise>
+			</choose>
 		</if>
 		<choose>
 			<when test="chgGb == 'G680_30'">
@@ -456,6 +470,8 @@
 		     , Z.ADD_PAY_COST
 		     , Z.SYS_IMG_NM
 		     , Z.GIFT_PACK_YN
+		     , Z.GIFT_ADDR_INP_YN
+		     , Z.GIFT_CANCEL_DAY
 		     , Z.REFUND_AMT
 		  FROM (SELECT OC.ORD_CHG_SQ
 		             , OC.CHG_GB
@@ -486,6 +502,8 @@
 		             , CASE WHEN G1.GOODS_TYPE != 'G056_S' AND G1.SELF_GOODS_YN = 'Y' THEN (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG WHERE GOODS_CD = G1.GOODS_CD AND COLOR_CD = ODI.OPT_CD1 AND DEFAULT_IMG_YN = 'Y')
 		                    ELSE (SELECT MAX(SYS_IMG_NM) FROM TB_GOODS_IMG WHERE GOODS_CD = G1.GOODS_CD AND COLOR_CD = IFNULL(G1.MAIN_COLOR_CD,'XX') AND DEFAULT_IMG_YN = 'Y') END AS SYS_IMG_NM
 		             , OD.GIFT_PACK_YN
+		             , OD.GIFT_ADDR_INP_YN
+		             , TIMESTAMPDIFF(DAY, O.ORD_DT, OCDH.REG_DT)                        AS GIFT_CANCEL_DAY
 		             , R.REFUND_AMT
 		          FROM TB_ORDER_CHANGE OC
 		         INNER JOIN TB_ORDER_CHANGE_DETAIL OCD
@@ -598,7 +616,7 @@
 		</if>
 		  ) Z
 		 GROUP BY Z.ORD_CHG_SQ, Z.CHG_GB, Z.CHG_QTY, Z.ORD_DT, Z.CHG_DATE, Z.CHG_TIME, Z.CHG_ORD_DTL_NO, Z.CHG_STAT, Z.CHG_STAT_NM, Z.ORD_NO, Z.ORD_DTL_NO, Z.GOODS_CD, Z.BRAND_NM
-		        , Z.SHOT_DELV_YN, Z.SELF_GOODS_YN, Z.GOODS_NM, Z.GOODS_TYPE, Z.LIST_PRICE, Z.ADD_PAY_COST, Z.SYS_IMG_NM, Z.GIFT_PACK_YN, Z.REFUND_AMT
+		        , Z.SHOT_DELV_YN, Z.SELF_GOODS_YN, Z.GOODS_NM, Z.GOODS_TYPE, Z.LIST_PRICE, Z.ADD_PAY_COST, Z.SYS_IMG_NM, Z.GIFT_PACK_YN, Z.GIFT_ADDR_INP_YN, Z.GIFT_CANCEL_DAY, Z.REFUND_AMT
 		 ORDER BY Z.ORD_CHG_SQ DESC
 	</select>
 

+ 8 - 3
src/main/webapp/WEB-INF/views/mob/app/NoticeFormMob.html

@@ -41,11 +41,16 @@
 	});
 
 	var pushListInfo = function (pushList) {
+		let orgPushList;
+		//IOS는 앱에서 BASE64로 인코딩 한후 전달 한다.
 		if (_osType === 'I') {
-			alert(pushList);
+  			orgPushList = window.atob(pushList);
+		} else if (_osType === 'A') {
+			orgPushList = pushList;
 		}
-		if (!gagajf.isNull(pushList)) {
-			let pushListJosn = JSON.parse(pushList);
+
+		if (!gagajf.isNull(orgPushList)) {
+			let pushListJosn = JSON.parse(orgPushList);
 			let html = '';
 			$.each(pushListJosn.pushList, function(idx, item) {
 				html += '<div class="inner">\n';

+ 16 - 0
src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html

@@ -2888,6 +2888,18 @@
 			$('.modal.photo_comment_popup .pop_detail').toggleClass('active');
 		});
 		
+		 // 상품상세 asis html  이지미 경로 수정
+		$(".pd_descrp .cont_body").find('img').each(function() {
+			let tmpImgSrc = $(this).attr('src');
+			if (tmpImgSrc.indexOf('Upload') == 1 ){  // /Upload
+				$(this).attr('src' , tmpImgSrc.replace('/Upload', _imgUrl+"/Local"));
+			}
+			
+			if (tmpImgSrc.indexOf('/Upload/Local') > 0 ){  // /Upload
+ 				$(this).attr('src' , tmpImgSrc.replace('/Upload/Local', "/Local"));
+ 			} 
+			
+		});
 	});
 	
 
@@ -2929,6 +2941,7 @@
 	let vh = window.innerHeight * 0.01;
 	document.documentElement.style.setProperty('--vh', `${vh}px`);
 	
+<<<<<<< HEAD
 	 // 상품상세 asis html  이지미 경로 수정
 	window.onload = function(){
    	 $(".pd_descrp .cont_body").find('img').each(function() {
@@ -2941,6 +2954,9 @@
 		});
 		
 	};
+=======
+	
+>>>>>>> refs/heads/develop
 	
    	let goodsVideoList = [[${goodsVideoList}]];
 	let videoFlag = false;

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

@@ -39,7 +39,11 @@
 				<th:block th:if="${cancelDetailList.cancelDetailList}" th:each="cancelDtl, status : ${cancelDetailList.cancelDetailList}" th:with="imageUrl=${@environment.getProperty('upload.goods.view')}">
 					<div class="goods_section">
 						<div class="goods_status">
-							<p class="dlvr_staus" 	th:if="${cancelDtl.chgStat == 'G685_17' or cancelDtl.chgStat == 'G685_18'}">주문취소</p>
+							<!-- 2021.07.01 선물하기 기간완료 처리 -->
+							<th:block th:if="${cancelDtl.chgStat == 'G685_17' or cancelDtl.chgStat == 'G685_18'}">
+								<p class="dlvr_staus"	th:if="${cancelDtl.giftPackYn == 'Y' and cancelDtl.giftAddrInpYn == 'N' and cancelDtl.giftCancelDay >= 3}">선물취소</p>
+								<p class="dlvr_staus"	th:unless="${cancelDtl.giftPackYn == 'Y' and cancelDtl.giftAddrInpYn == 'N' and cancelDtl.giftCancelDay >= 3}">주문취소</p>
+							</th:block>
 							<p class="dlvr_staus" 	th:unless="${cancelDtl.chgStat == 'G685_17' or cancelDtl.chgStat == 'G685_18'}" th:text="${cancelDtl.chgStatNm}"></p>
 							<p class="dlvr_desc" 	th:text="|${cancelDtl.chgDate} ${cancelDtl.chgTime}|"></p>
 						</div>
@@ -96,6 +100,11 @@
 								</button>
 							</div>
 						</div>
+						<th:block th:if="${cancelDtl.giftPackYn == 'Y' and cancelDtl.giftAddrInpYn == 'N' and cancelDtl.giftCancelDay >= 3 and cancelDtl.chgStat == 'G685_18'}">
+							<div class="goods_txt">
+								<p class="cf_txt cf_desc">주소 입력 기한이 경과되어 선물이 취소 되었습니다.</p>
+							</div>
+						</th:block>
 					</div>
 				</th:block>
 			</div>

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

@@ -20,7 +20,11 @@
 					<div class="goods_section">
 						<div class="goods_status">
 							<!-- 상태값 처리 -->
-							<p class="dlvr_staus" th:if="${cre.chgStat == 'G685_17' or cre.chgStat == 'G685_18'}">주문취소</p>
+							<th:block th:if="${cre.chgStat == 'G685_17' or cre.chgStat == 'G685_18'}">
+								<!-- 2021.07.01 선물하기 기간완료 처리 -->
+								<p class="dlvr_staus" th:if="${cre.giftPackYn == 'Y' and cre.giftAddrInpYn == 'N' and cre.giftCancelDay >= 3}">선물취소</p>
+								<p class="dlvr_staus" th:unless="${cre.giftPackYn == 'Y' and cre.giftAddrInpYn == 'N' and cre.giftCancelDay >= 3}">주문취소</p>
+							</th:block>
 							<th:block th:if="${cre.chgStat == 'G685_40'}" th:each="exchange, index : ${creList.exchangeOptionList}">
 								<p class="dlvr_staus" th:if="${cre.chgOrdDtlNo == exchange.ordDtlNo && (exchange.ordDtlStat == 'G013_20' or exchange.ordDtlStat == 'G013_30' or exchange.ordDtlStat == 'G013_35' or exchange.ordDtlStat == 'G013_40' or exchange.ordDtlStat == 'G013_50')}">교환진행중</p>
 								<p class="dlvr_staus" th:if="${cre.chgOrdDtlNo == exchange.ordDtlNo && (exchange.ordDtlStat == 'G013_60' or exchange.ordDtlStat == 'G013_70')}">교환완료</p>
@@ -157,6 +161,14 @@
 						<!-- //취소,반품,교환 상태별 버튼기능정의 -->
 						
 						<!-- 취소,반품,교환 상태별 문구정의 -->
+						<!-- 선물취소 -->
+						<!-- 2021.07.01 선물하기 기간완료 처리 -->
+						<th:block th:if="${cre.giftPackYn == 'Y' and cre.giftAddrInpYn == 'N' and cre.giftCancelDay >= 3 and cre.chgStat == 'G685_18'}">
+							<div class="goods_txt">
+								<p class="cf_txt cf_desc">주소 입력 기한이 경과되어 선물이 취소 되었습니다.</p>
+							</div>
+						</th:block>
+						<!-- //선물취소 -->
 						<!-- 교환접수 -->
 						<th:block th:if="${cre.chgStat} == 'G685_20'">
 							<div class="goods_txt">

+ 0 - 14
src/main/webapp/WEB-INF/views/mob/mypage/MypageOrderListInfoMob.html

@@ -33,12 +33,6 @@
 									<p class="dlvr_staus">선물 완료</p>
 								</th:block>
 								<!-- //배송지등록완료, 결제전취소, 결제후취소 아닐경우 -->
-								
-								<!-- 선물 취소 -->
-								<th:block th:if="${ordDtl.ordDtlStat} == 'G013_98' and ${ordDtl.ordDtlStat} == 'G013_99'">
-									<p class="dlvr_staus">선물 취소</p>
-								</th:block>
-								<!-- //선물 취소 -->
 							</th:block>
 							<!-- //선물배송일때 -->
 							
@@ -480,14 +474,6 @@
 								</th:block>
 							</th:block>
 							<!-- //배송지등록완료, 결제전취소, 결제후취소 아닐경우 -->
-							
-							<!-- 선물 취소 -->
-							<th:block th:if="${ordDtl.ordDtlStat} == 'G013_98' and ${ordDtl.ordDtlStat} == 'G013_99'">
-								<div class="goods_txt">
-									<p class="cf_txt cf_desc">주소 입력 기한이 경과되어 선물이 취소 되었습니다.</p>
-								</div>
-							</th:block>
-							<!-- //선물 취소 -->
 						</th:block>
 						<!-- //선물배송일때 -->
 						<!-- //상태문구정리 -->

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

@@ -651,7 +651,6 @@ var fnChangeReturnQty = function(param) {
 
 		let data 				= {};
 		data.ordNo 				= oneData.ordNo;
-		data.delvFeeCd 			= oneData.delvFeeCd;
 		data.chgGb 				= 'G680_30';
 		data.ordDtlNoArr 		= ordDtlNoArr;
 		data.cnclRtnReqQtyArr 	= cnclRtnReqQtyArr;

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

@@ -656,7 +656,6 @@ var fnChangeReturnQty = function(param) {
 
 		let data 				= {};
 		data.ordNo 				= oneData.ordNo;
-		data.delvFeeCd 			= oneData.delvFeeCd;
 		data.chgGb 				= 'G680_30';
 		data.ordDtlNoArr 		= ordDtlNoArr;
 		data.cnclRtnReqQtyArr 	= cnclRtnReqQtyArr;

+ 6 - 3
src/main/webapp/WEB-INF/views/web/customer/PrivacyPolicyFormWeb.html

@@ -43,7 +43,11 @@
 						<div class="form_field">
 							<div class="select_custom prvs_detail">
 								<div class="combo">
-									<div class="select">개인정보 처리방침 v1.0</div>
+									<th:block th:if="${clauseList}" th:each="oneData, status : ${clauseList}">
+											<th:block th:if="${status.first}">
+												<div class="select" th:text="${oneData.clauseTitle}"></div>
+											</th:block>
+									</th:block>
 									<ul class="list" style="display: none;">
 										<th:block th:if="${clauseList}" th:each="oneData, status : ${clauseList}">
 											<li th:text="${oneData.clauseTitle}" th:onclick="fnGetCaluseInfo([[${oneData.clauseSq}]]);"></li>
@@ -73,7 +77,7 @@
 		$.get('/customer/privacy/policy/info/' + clauseSq
 			, function (data) {
 			if(!gagajf.isNull(data.clauseContent)) {
-				$('.cont_body').html(data.clauseContent);
+				$('.cont_body').html(data.clauseContent.replaceAll('&lt;','<').replaceAll('&gt;', '>').replaceAll('&quot;', '"'));
 				$("html, body").animate({scrollTop : $("#container").offset().top},100)
 			}
 		});
@@ -90,7 +94,6 @@
 		});
 
 		$(window).scroll(function(){
-			var scroll = $(this).scrollTop();
 			var headerH = $(".header").height();
 			if ($(window).scrollTop() > headerH){
 				$(".header").addClass("minify");

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

@@ -479,7 +479,7 @@
 						}
 						tag += item.currPrice.addComma();
 						if (item.listPrice != item.currPrice) {
-							tag += '				<span class="itemPercent">' + (item.listPrice - item.currPrice) / (item.listPrice * 1.0) * 100 + '%</span>\n';
+							tag += '				<span class="itemPercent">' + Math.round((item.listPrice - item.currPrice) / (item.listPrice * 1.0) * 100) + '%</span>\n';
 						}
 						tag += '			</p>\n';
 						tag += '		</a>\n';

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

@@ -79,7 +79,10 @@
 										</div>
 										<div class="status_box">
 											<p>
-												<th:block th:if="${cancelDtl.chgStat == 'G685_17' or cancelDtl.chgStat == 'G685_18'}" th:text="|주문취소|"></th:block>
+												<th:block th:if="${cancelDtl.chgStat == 'G685_17' or cancelDtl.chgStat == 'G685_18'}">
+													<th:block th:if="${cancelDtl.giftPackYn == 'Y' and cancelDtl.giftAddrInpYn == 'N' && cancelDtl.giftCancelDay >= 3}" th:text="|선물취소|"></th:block>
+													<th:block th:unless="${cancelDtl.giftPackYn == 'Y' and cancelDtl.giftAddrInpYn == 'N' && cancelDtl.giftCancelDay >= 3}" th:text="|주문취소|"></th:block>
+												</th:block>
 												<th:block th:unless="${cancelDtl.chgStat == 'G685_17' or cancelDtl.chgStat == 'G685_18'}" th:text="${cancelDtl.chgStatNm}"></th:block>
 												<span class="date" th:text="${cancelDtl.chgDate}"></span>
 												<span class="time" th:text="${cancelDtl.chgTime}"></span>
@@ -89,6 +92,9 @@
 											<p><button type="button" class="btn btn_default btn_sm" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA);"><span>1:1 문의</span></button></p>
 										</div>
 									</div>
+
+									<!-- 선물취소 -->
+									<div class="order_text" th:if="${cancelDtl.giftPackYn == 'Y' && cancelDtl.giftAddrInpYn == 'N' && cancelDtl.giftCancelDay >= 3 && cancelDtl.chgStat == 'G685_18'}"><p>주소 입력 기한이 경과되어 선물이 취소 되었습니다.</p></div>
 								</div>
 							</th:block>
 							<!-- //주문상품 -->

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

@@ -423,7 +423,12 @@
 					tag += '										<div class="status_box">\n';
 					tag += '											<p>\n';
 					if (cre.chgStat == 'G685_17' || cre.chgStat == 'G685_18') {
-						tag += '												주문취소\n';
+						// 2021.07.01 선물하기 기간완료 처리
+						if (cre.giftPackYn == 'Y' && cre.giftAddrInpYn == 'N' && cre.giftCancelDay >= 3) {
+							tag += '												선물취소\n';
+						} else {
+							tag += '												주문취소\n';
+						}
 					} else if (cre.chgStat == 'G685_40') {
 						$.each(creList.exchangeOptionList, function(index, exchange) {
 							if (cre.chgOrdDtlNo == exchange.ordDtlNo && (exchange.ordDtlStat == 'G013_20' || exchange.ordDtlStat == 'G013_30' || exchange.ordDtlStat == 'G013_35' || exchange.ordDtlStat == 'G013_40' || exchange.ordDtlStat == 'G013_50')) {
@@ -467,6 +472,10 @@
 					//}
 					// cre.chgGb == 'G680_30' : 반품
 					// cre.chgGb == 'G680_40' : 교환
+					// 2021.07.01 선물하기 기간완료 처리
+					if (cre.giftPackYn == 'Y' && cre.giftAddrInpYn == 'N' && cre.giftCancelDay >= 3 && cre.chgStat == 'G685_18') {
+						tag += '									<div class="order_text"><p>주소 입력 기한이 경과되어 선물이 취소 되었습니다.</p></div>\n';
+					}
 					// 교환접수
 					if (cre.chgStat == 'G685_20') {
 						tag += '									<div class="order_text"><p>교환 신청이 접수 되었습니다. 신속하게 처리하여 드리겠습니다.</p></div>\n';

+ 0 - 7
src/main/webapp/WEB-INF/views/web/mypage/MypageOrderListFormWeb.html

@@ -474,8 +474,6 @@
 							tag += '											<p>주소 입력 대기중</p>\n';
 						} else if (ordDtl.giftAddrInpYn == 'Y' && ordDtl.ordDtlStat != 'G013_98' && ordDtl.ordDtlStat != 'G013_99') {
 							tag += '											<p>선물 완료</p>\n';
-						} else if (ordDtl.ordDtlStat == 'G013_98' || ordDtl.ordDtlStat == 'G013_99' || ordDtl.giftLimitDay < 0) {
-							tag += '											<p>선물 취소</p>\n';
 						}
 					} else if (ordDtl.ordDtlStat == 'G013_10') {
 						tag += '											<p>주문접수</p>\n';
@@ -572,11 +570,6 @@
 						if (ordDtl.giftAddrInpYn == 'Y' && ordDtl.ordDtlStat != 'G013_98' && ordDtl.ordDtlStat != 'G013_99') {
 							tag += '									<div class="order_text"><p>' + ordDtl.recipNm + '님께 선물이 발송되었습니다.</p></div>\n';
 						}
-						
-						// 선물 취소
-						if (ordDtl.ordDtlStat == 'G013_98' && ordDtl.ordDtlStat == 'G013_99') {
-							tag += '									<div class="order_text"><p>주소 입력 기한이 경과되어 선물이 취소 되었습니다.</p></div>\n';
-						}
 					} else {
 						// 주문 접수
 						if (ordDtl.ordDtlStat == 'G013_10') {

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

@@ -497,7 +497,6 @@
 
 			let data = {};
 			data.ordNo = oneData.ordNo;
-			data.delvFeeCd = oneData.delvFeeCd;
 			data.chgGb = 'G680_30';
 			data.ordDtlNoArr = ordDtlNoArr;
 			data.cnclRtnReqQtyArr = cnclRtnReqQtyArr;

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

@@ -500,7 +500,6 @@
 			data.ordNm = oneData.ordNm;
 			data.ordPhnno = oneData.ordPhnno;
 			data.chgGb = 'G680_30';
-			data.delvFeeCd = oneData.delvFeeCd;
 			data.ordDtlNoArr = ordDtlNoArr;
 			data.cnclRtnReqQtyArr = cnclRtnReqQtyArr;
 			

+ 4 - 2
src/main/webapp/biz/goods.js

@@ -238,7 +238,7 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 		// 	categoryGoodsList.push(item.goodsCd);
 		// }
 		if(!gagajf.isNull(item.goodsCd)) {
-			tag += '<div class="item_prod" id="' + item.goodsCd + item.mainColorCd + '">';
+			tag += '<div class="item_prod" id="' + item.goodsCd + item.colorCd + '">';
 			tag += '	<div class="item_state';
 			if (!gagajf.isNull(item.sizes)) {
 				var sizeArr = item.sizes.split(",");
@@ -266,7 +266,7 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 			} else {
 				tag += ' onClick="cfnPutWishList(this);" goodsCd=\'' + item.goodsCd + '\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>';
 			}
-			tag += '<a href="javascript:void(0);" class="itemLink" onclick="fnClickGoodsCd(\'' + item.goodsCd + '\',\'' + item.mainColorCd + '\');">';
+			tag += '<a href="javascript:void(0);" class="itemLink" onclick="fnClickGoodsCd(\'' + item.goodsCd + '\',\'' + item.colorCd + '\');">';
 			tag += '			<div class="itemPic">';
 			if (!gagajf.isNull(item.videos)) {
 				var videoArr = item.videos.split(",");
@@ -794,6 +794,7 @@ var fnDeleteFilterSlider = function (obj, gubun, minVal, maxVal){
 
 // 정렬 순서
 var fnSortingChange = function (obj, sortingType, stat, appGb){
+	console.log('here sort');
 	fnCategoryGoodsInfiniteScrollInit();
 	if(stat != 'back'){
 		if($("#searchGoodsForm input[name=sortingType]").val()==sortingType){
@@ -825,6 +826,7 @@ var fnSortingChange = function (obj, sortingType, stat, appGb){
 
 	$('#endPage').hide();
 	$('#noFilterData').hide();
+	console.log('here sort2');
 	fnGoodsListSearch();
 }
 

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

@@ -46,7 +46,7 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 			}else{
 				tag += ' onClick="cfnPutWishList(this);" goodsCd=\''+item.goodsCd+'\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>';
 			}
-			tag += '<a href="javascript:void(0);" class="itemLink" onclick="fnClickGoodsCd(\''+item.goodsCd+'\',\'\');">';
+			tag += '<a href="javascript:void(0);" class="itemLink" onclick="fnClickGoodsCd(\''+item.goodsCd+'\',\'' + item.colorCd + '\');">';
 			tag += '			<div class="itemPic">';
 			if(!gagajf.isNull(item.videos)){
 				var videoArr = item.videos.split(",");

+ 4 - 4
src/main/webapp/ux/mo/css/common_m.css

@@ -232,7 +232,7 @@ select,
 /* form style (hyangah_0223_수정중 - input[type="text"] padding 수정) */
 input,  textarea {font-size:1.2rem; font-family:'Noto Sans KR', 'LATO', sans-serif; color:#666666; vertical-align:middle;}
 select{font-size:1.2rem; font-family:'Noto Sans KR', 'LATO', sans-serif; color:#666666; vertical-align:middle;}
-input[type="text"], input[type="password"] {padding:0 1.5rem; border:0.1rem solid #dddddd;box-sizing: border-box;}
+input[type="text"], input[type="password"] {padding:0 1.5rem; border:0.1rem solid #dddddd;box-sizing: border-box; -webkit-appearance: none; -webkit-border-radius: 0;}
 input[type="text"]:focus, input[type="password"]:focus,
 input[type="text"].active, input[type="password"].active {border-color: #aaaaaa;} 
 input[type="text"]:disabled, input[type="password"]:disabled, input[type="select"]:disabled,
@@ -670,7 +670,7 @@ body.gnb_on {height: 100vh;overflow: hidden !important;}
 
 /* header, htop, btn_gnb, header.main, hmenu, bng, bnb */
 header {
-  position: fixed;left: 0;top: 0; width: 100%;z-index: 80;
+  position: fixed;left: 0;top: 0; width: 100%;z-index: 101;
   /*position: sticky;*/width: 100%;transition: top 0.3s;/* background-color: #fff; */ transform: translate3d(0,0,0);
 } /* 210526_ main.container 여백 때문에 sticky 속성 주석. */
 header::after{content: '';display: block;clear: both;}
@@ -852,7 +852,7 @@ header .hmenus .bnb ul > li > a{display: block; padding: 0.8rem 0; font-size: 1.
 /* gnb */
 body.header-show .app .gnb{top: 5.0rem;}
 .app .gnb {position: -webkit-sticky; position: sticky; top: 0; padding-right: 3.0rem; background-color: #fefefe; z-index: 9; /*background-color: #000; transition: top 0.3s;*/ width: 100%;}
-.app .gnb {background-color:#fefefe; position:relative; z-index:79;} /* layout_m 재확인 */
+.app .gnb {background-color:#fefefe; position:relative; z-index:100;} /* layout_m 재확인 */
 .app .gnb.expand{padding-right: 3.0rem;}
 
 .app .gnb .gnb-inner{position: relative; width: 100%; padding: 0.9rem 1.0rem; overflow-x: scroll;}
@@ -880,7 +880,7 @@ section.main, section.ev_list, section.dp_exhibition, section.dp_lookbook, secti
 section.main.scr, section.ev_list.scr, section.dp_exhibition.scr, section.dp_lookbook.scr, section.dp_outlets.scr, section.dp_submain.scr, section.dp_hotdeal.scr, section.br_main.scr, section.dp_best.scr, section.br_lookbook.scr {margin-top: 5.5rem;}
 
 /* .tabbar */
-.tabbar{-webkit-transform: translate(0, 8.0rem);-ms-transform: translate(0, 8.0rem);-moz-transform: translate(0, 8.0rem); transform: translate(0, 8.0rem);transition-duration: 0.25s; position: fixed;width: 100%;bottom: 0;background-color: #f8f8f8;z-index: 20; padding-bottom: constant(safe-area-inset-bottom);padding-bottom: env(safe-area-inset-bottom);}
+.tabbar{-webkit-transform: translate(0, 8.0rem);-ms-transform: translate(0, 8.0rem);-moz-transform: translate(0, 8.0rem); transform: translate(0, 8.0rem);transition-duration: 0.25s; position: fixed;width: 100%;bottom: 0;background-color: #f8f8f8;z-index: 100; padding-bottom: constant(safe-area-inset-bottom);padding-bottom: env(safe-area-inset-bottom);}
 .tabbar.fixed{-webkit-transform: translate(0, 0);-ms-transform: translate(0, 0);-moz-transform: translate(0, 0);transform: translate(0, 0);}
 .tabbar .tabbar-inner{display: -webkit-box;display: -moz-box;display: -webkit-flex;display: -ms-flexbox;display: flex; -webkit-box-pack: justify;-moz-box-pack: justify;-ms-flex-pack: justify;-webkit-justify-content: space-between;justify-content: space-between; padding: 0.6rem 2.0rem;}
 .tabbar .tabbar-inner [class*=btn-]{display: block;width: 4.2rem; height: 3.0666rem; font-size: 0;position: relative;background: url(/images/mo/ico_tabbar.png) no-repeat center;background-size: 18.0rem 2.16rem;padding: 0rem 1rem;}

+ 7 - 6
src/main/webapp/ux/mo/css/layout_m.css

@@ -155,7 +155,7 @@
 .cs_contactUs_my .select,
 .cs_contactUs_my input[type="text"] {width:100%; font-weight:200; box-sizing:border-box; color:#222; font-size:1.2rem; font-weight:300;}	
 .cs_contactUs_my input[type="text"]::placeholder,
-.cs_contactUs_my .form_control {height:4.2rem; color:#222; font-size:1.4rem;}
+.cs_contactUs_my .form_control {height:4.2rem; color:#222; font-size:1.4rem; line-height: 4.5rem;}
 .cs_contactUs_my .input_label {line-height:4.2rem;}
 .cs_contactUs_my .contactus_cnt {color:#888}
 .cs_contactUs_my .select {height:4.2rem; font-size:1.2rem;}
@@ -399,7 +399,8 @@
 /* 슬라이드아이템*/
 .item_prod {display: inline-block;width: 100%;font-size: 0;vertical-align: top;color: rgb(31, 31, 31);position: relative;letter-spacing: -0.025em;}
 .item_prod .item_state {position: relative; padding:0; box-sizing: border-box;}
-.item_prod .item_state.soldout::before {content: 'SOLD OUT';position: absolute;top: 25%;left: 50%;transform: translate(-50%, 0%);width:100%;height: auto;font-size: 1.5rem;font-weight: 500;color: #fff;z-index: 30;text-align: center;}
+/* .item_prod .item_state.soldout::before {content: 'SOLD OUT';position: absolute;top: 25%;left: 50%;transform: translate(-50%, 0%);width:100%;height: auto;font-size: 1.5rem;font-weight: 500;color: #fff;z-index: 30;text-align: center;} */
+.item_state.soldout .itemPic:after {content: 'SOLD OUT';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width:100%;height: auto;font-size: 1.5rem;font-weight: 500;color: #fff;z-index: 30;text-align: center; opacity: 1; background: transparent;}
 .item_prod .item_state.soldout .itemPic:before {content:''; position: absolute; top: 50%; left: 50%;  background: rgba(0,0,0,.7); width: 100%; height: 100%; transform:translate(-50%, -50%); z-index: 20; text-align: center;}
 .item_prod .item_state.AD .itemPic:before {content:'AD'; position: absolute; bottom: 0.666rem; right: 0.666rem; font-size: 1rem; font-weight: 300; letter-spacing: -0.025em; color:#888888; width: auto; height: auto; line-height: 1rem; z-index: 21; text-align: right;}
 
@@ -418,7 +419,7 @@
 .item_prod .itemPic .pd_img {position: absolute;width: 100%;height: auto;top: 50%;left: 0;transform: translateY(-50%);}
 .item_prod .itemPic .pd_mov {position: absolute;width: 100%;height: 100%;top: 50%;left: 0;transform: translateY(-50%);z-index: 2;}
 .item_prod .itemBrand {display: inline-block; margin: 0 0.5rem 0.3rem; font-size: 1rem;font-weight: 300;color: rgb(137, 137, 137); text-overflow:ellipsis;white-space:nowrap;word-wrap:normal;width:10rem;overflow:hidden;}
-.item_prod .itemComment{margin: 0.8rem 0.5rem 0.4rem;line-height: 1; height: 1.2rem; font-size: 1.1rem;font-weight: 300;color: #fd4802;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
+.item_prod .itemComment{margin: 0.8rem 0.5rem 0.4rem; height: 1.3rem; font-size: 1.1rem;font-weight: 300;color: #fd4802;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
 .item_prod .itemName {margin: 0 0.5rem 0.8rem; font-size: 1.1rem; font-weight:300; color: rgb(31, 31, 31); height: 3rem; max-height: 3rem; position: relative; overflow: hidden; white-space: normal; overflow-wrap: break-word; display: block; letter-spacing: -0.025rem;}
 /*.item_prod .itemName {display: -webkit-box;text-overflow: ellipsis;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}*/
 .item_prod .itemName .tit_option{font-weight:500;}
@@ -1686,6 +1687,7 @@
 .dp .dp_util li a.refresh{color:#888!important;}
 .dp .dp_util li a.refresh:after{content:''; position:relative; top:0.1rem;  margin-left:0.8rem; display:inline-block; width:1.1rem; height:1.1rem; background: url(/images/mo/icon_best_refresh.png) center center no-repeat; background-size:contain;}
 .dp .count_wrap {padding:2rem 0;}
+.dp .count_wrap.fixed {position: fixed; top: 5.5rem; left: 0; width: 100%; padding: 2rem; background: #fff; z-index: 100;}
 .dp .count_wrap:after{display:block; content:''; clear:both;}
 .dp .count_wrap div:nth-child(1) {float:left;}
 .dp .count_wrap div:nth-child(1) p {font-size:1.2rem; color:#888;}
@@ -1728,7 +1730,7 @@
 .dp .dp_outlets .outlets_visual .txtWrap.w {color: #fff;}
 .dp .dp_outlets .outlets_visual .txtWrap p {font-size: 3rem; font-weight: 500; line-height: 1.2; display: -webkit-box;text-overflow: ellipsis;-webkit-line-clamp: 2;-webkit-box-orient: vertical; overflow:hidden;}
 .dp .dp_outlets .outlets_visual .txtWrap p.txt_xs {font-size: 1.4rem; margin-top: 1.6rem; font-weight: 300; -webkit-line-clamp: 1;}
-.dp .dp_outlets .dp_cate_list {margin:-1.2rem 0;}
+.dp .dp_outlets .dp_cate_list {margin:-1.2rem 0; border-top: 0.1rem solid #ddd;}
 .dp .dp_outlets .dp_cate_list:after {content:''; display: block; clear: both;}
 .dp .dp_outlets .dp_cate_list a {position:relative; float:left; width:50%; line-height:5rem; padding:0 3rem 0 2rem; font-size:1.3rem; font-weight: 500; color: #222; text-align: left; background: #fff url(/images/mo/ico_more_lg.png) no-repeat right 2rem center; border-bottom:0.1rem solid #ddd; box-sizing:border-box; }
 .dp .dp_outlets .dp_cate_list a:nth-child(2n){ border-left:0.1rem solid #ddd;}
@@ -1819,7 +1821,7 @@
 .dp_hotdeal .itemsGrp.rowtype .item_prod .shape:after{display:none;}
 .dp_hotdeal .itemsGrp.rowtype .item_prod .itemPic::after {background: #f5f5f5; opacity:1; z-index: 7;}
 .dp_hotdeal .itemsGrp.rowtype .item_prod .itemPic .pd_img {z-index: 8;}
-.dp_hotdeal .itemsGrp.rowtype .item_prod.sold_out .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size:1.4rem; color:#fff; font-weight:600; background: rgba(0,0,0,.5); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height:23.4rem;; z-index: 99; text-align: center;}
+.dp_hotdeal .itemsGrp.rowtype .item_prod.sold_out .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size:1.4rem; color:#fff; font-weight:600; background: rgba(0,0,0,.5); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height:23.4rem;; z-index: 98; text-align: center;}
 .dp_hotdeal .itemsGrp.rowtype .item_prod .shape{position:relative;}
 .dp_hotdeal .itemsGrp.rowtype .item_prod .itemBrand {margin:1.5rem 0 0.5rem;}
 .dp_hotdeal .itemsGrp.rowtype .item_prod .itemComment {position: relative; top:-6rem; margin:0;}
@@ -2581,7 +2583,6 @@
 
 
 .sch .sch_result .item_prod{width:100%;}
-.sch .sch_result .item_prod .itemName{margin-top:1rem; color:#535353}
 .sch .sch_result .item_prod .rank::after{background-color:#fd4802;}
 .sch .sch_result .item_prod .rank > span{font-size:0.9rem;}
 .sch .sch_result .item_prod .itemPic.ver{padding-top:99%; margin-top:3rem;}

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

@@ -794,7 +794,8 @@ content: "〉";font-size: 12px;padding-left: 8px;
 
 .item_prod {width: 20%;display: inline-block;font-size: 0px;vertical-align: top;color: rgb(31, 31, 31);position: relative;letter-spacing: -0.2px;}
 .item_state {position: relative; padding: 0px 10px 60px; box-sizing: border-box;}
-.item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 28px; font-weight: 500; color:#fff; background: rgba(0,0,0,.7); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 20; text-align: center;}
+.item_state.soldout .itemPic:after {content: 'SOLD OUT';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width:100%;height: auto;font-size: 18px;font-weight: 500;color: #fff;z-index: 30;text-align: center; opacity: 1; background: transparent;}
+.item_state.soldout .itemPic:before {content:''; position: absolute; top: 50%; left: 50%; font-size: 28px; font-weight: 500; color:#fff; background: rgba(0,0,0,.7); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 20; text-align: center;}
 .item_state.AD .itemPic:before {content:'AD'; position: absolute; bottom: 20px; right: 20px; font-size: 14px; font-weight: 300; letter-spacing: -0.025em; color:#888888; width: auto; height: auto; line-height: 14px; z-index: 21; text-align: right;}
 @media (max-width: 1919px) and (min-width: 1401px){/* .item_state {padding-left: 6px;padding-right: 6px;} */}
 .hgbgCa {width: 100%;height: 100%;}

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

@@ -333,7 +333,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 .partners_pop .tbl.type2 table td {font-size: 14px; font-weight: 300; color:#666;}
 
 /* 퀵메뉴 */
-#quick_menu {position:fixed; bottom:0; right:0; z-index:100; /*padding-left: 60px;*/}
+#quick_menu {position:fixed; bottom:0; right:0; z-index:102; /*padding-left: 60px;*/}
 #quick_menu.active {right: 0;}
 #quick_menu:before {content:''; position: fixed; bottom: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,.5); display: none;}
 #quick_menu.active:before {display: block;}
@@ -362,12 +362,13 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 /* 퀵메뉴_최근 본 상품 */
 #quick_menu .history .itemsGrp {margin:0 -7px;}
 #quick_menu .history .item_prod {width: 50%;}
-#quick_menu .history .item_state {padding:0 7px 14px;}
+#quick_menu .history .item_state {padding:0; margin:0 7px 14px;}
 #quick_menu .history .itemPic {margin-bottom: 0;}
 #quick_menu .history .no_item {display: none;}
 #quick_menu .history .quick_body.nodata .item_prod, #quick_menu .quick_con .quick_body.nodata .product_count {display: none;}
 #quick_menu .history .quick_body.nodata .item_prod {display: none;}
 #quick_menu .history .quick_body.nodata .no_item {display: block; line-height: 700px; text-align: center; font-size: 16px; color: #888;}
+#quick_menu .itemsGrp:not(.rowtype) .item_prod .item_state.soldout::before {top: 50%; transform:translate(-50%, -50%);}
 
 /* 퀵메뉴_쇼핑백 */
 .itemsGrp {margin-bottom:0;}
@@ -393,9 +394,9 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 #quick_menu .shopingbag .itemsGrp .item_prod .itemLike {z-index: 99;}
 #quick_menu .shopingbag .itemsGrp .item_prod .itemPic {position: absolute; top: 0; left: 0; margin-bottom: 0; width: 120px; padding-top: 180px;}
 #quick_menu .shopingbag .itemsGrp .item_prod .itemPic .shape {z-index: 89;}
-#quick_menu .shopingbag .itemsGrp .item_prod .itemPic::after {background: #f9f9f9; opacity:1; z-index: 87;}
-#quick_menu .shopingbag .itemsGrp .item_prod .itemPic .pd_img {z-index: 88;}
-#quick_menu .shopingbag .itemsGrp .item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 20px; color:#fff; background: rgba(0,0,0,.5); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 1; text-align: center;}
+/* #quick_menu .shopingbag .itemsGrp .item_prod .itemPic::after {background: #f9f9f9; opacity:1; z-index: 87;}
+ #quick_menu .shopingbag .itemsGrp .item_prod .itemPic .pd_img {z-index: 88;}
+ #quick_menu .shopingbag .itemsGrp .item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 20px; color:#fff; background: rgba(0,0,0,.5); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 1; text-align: center;} */
 #quick_menu .shopingbag .itemsGrp .item_prod .itemBrand {margin:0px 0 15px; font-size: 12px; line-height:14px; font-weight: 300;}
 #quick_menu .shopingbag .itemsGrp .item_prod .itemComment {font-size: 12px;margin-left: 0;}
 #quick_menu .shopingbag .itemsGrp .item_prod .itemName {margin:0px 0 13px; font-size: 14px; font-weight: 300; line-height: 1.5; max-height:44px; overflow:hidden;}
@@ -3804,7 +3805,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.sch_result .cont_body .sch_result_cont .exhi_list .item_prod:nth-child(5n+0) {margin-right: 0;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .item_prod:nth-child(6n+0) {margin-right: 20px;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp {margin-bottom: 80px;}
-	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item {float:left; width: calc((100% - 60px)/4); overflow: hidden; margin:0 20px 80px 0;}
+	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item {float:left; width: calc((100% - 60px)/4); overflow: hidden; margin:0 20px 80px 0; min-height:717px;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item:nth-child(4n) {margin:0 0 40px 0;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item .exhi_item_img {width: 100%; height: auto; overflow: hidden;} 
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item .exhi_item_img img {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; height:auto;}
@@ -4471,7 +4472,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.hookGrp .hook_list ul li a:hover span:after,
 	.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: 0px;}
+	.hookGrp .hook_cont div{margin-top: 62px;}
 	
 	.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;}