Explorar el Código

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

eskim hace 5 años
padre
commit
8683a9e05b
Se han modificado 33 ficheros con 2009 adiciones y 474 borrados
  1. 10 0
      src/main/java/com/style24/front/biz/dao/TsfCustomerDao.java
  2. 17 0
      src/main/java/com/style24/front/biz/dao/TsfGoodsDao.java
  3. 19 3
      src/main/java/com/style24/front/biz/service/TsfCouponService.java
  4. 1 1
      src/main/java/com/style24/front/biz/service/TsfCustomerService.java
  5. 2 0
      src/main/java/com/style24/front/biz/service/TsfDeliveryService.java
  6. 11 12
      src/main/java/com/style24/front/biz/service/TsfGoodsService.java
  7. 49 49
      src/main/java/com/style24/front/biz/service/TsfOrderService.java
  8. 1 54
      src/main/java/com/style24/front/biz/web/TsfDeliveryController.java
  9. 6 1
      src/main/java/com/style24/front/biz/web/TsfMypageController.java
  10. 3 0
      src/main/java/com/style24/persistence/mybatis/shop/TsfCoupon.xml
  11. 24 0
      src/main/java/com/style24/persistence/mybatis/shop/TsfCustomer.xml
  12. 251 1
      src/main/java/com/style24/persistence/mybatis/shop/TsfGoods.xml
  13. 2 0
      src/main/java/com/style24/persistence/mybatis/shop/TsfOrder.xml
  14. 1 1
      src/main/java/com/style24/persistence/mybatis/shop/TsfPlanning.xml
  15. 1 1
      src/main/resources/config/application-locd.yml
  16. 1 1
      src/main/resources/config/application-run.yml
  17. 1 1
      src/main/resources/config/application-style.yml
  18. 1 1
      src/main/resources/config/application-tsit.yml
  19. 2 2
      src/main/webapp/WEB-INF/views/mob/cart/CartListAjaxFormMob.html
  20. 45 0
      src/main/webapp/WEB-INF/views/mob/common/fragments/GnbSubPlanningMob.html
  21. 1 1
      src/main/webapp/WEB-INF/views/mob/common/fragments/HeadMob.html
  22. 35 0
      src/main/webapp/WEB-INF/views/mob/common/layout/PlanningLayoutMob.html
  23. 1345 0
      src/main/webapp/WEB-INF/views/mob/display/CategoryGoodsListFormMob.html
  24. 154 164
      src/main/webapp/WEB-INF/views/mob/display/LookbookMainFormMob.html
  25. 2 84
      src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html
  26. 10 15
      src/main/webapp/WEB-INF/views/mob/planning/PlanningCustGradeBenefitFormMob.html
  27. 5 10
      src/main/webapp/WEB-INF/views/web/common/fragments/FooterWeb.html
  28. 1 1
      src/main/webapp/WEB-INF/views/web/common/fragments/HeadWeb.html
  29. 1 1
      src/main/webapp/WEB-INF/views/web/display/MallMainFormWeb.html
  30. 2 64
      src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html
  31. 3 3
      src/main/webapp/WEB-INF/views/web/planning/PlanningCustGradeBenefitFormWeb.html
  32. 0 1
      src/main/webapp/biz/goods.js
  33. 2 2
      src/main/webapp/ux/mo/css/layout_m.css

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

@@ -169,6 +169,16 @@ public interface TsfCustomerDao {
 	 */
 	CustGrade getExpectedCustGrde(CustGrade custGrade);
 
+	/**
+	 * 고객 등급 기준 주문정보 조회
+	 *
+	 * @param custGrade - 사이트 코드
+	 * @return int - 결과
+	 * @author jsshin
+	 * @since 2021. 04. 06
+	 */
+	CustGrade getCustGradeOrderInfo(CustGrade custGrade);
+
 	/**
 	 * 고객 생년월일 저장
 	 *

+ 17 - 0
src/main/java/com/style24/front/biz/dao/TsfGoodsDao.java

@@ -21,6 +21,7 @@ import com.style24.persistence.domain.Notice;
 import com.style24.persistence.domain.ReinboundInform;
 import com.style24.persistence.domain.SizeInfo;
 import com.style24.persistence.domain.Tmtb;
+import com.style24.persistence.domain.GoodsSearch;
 import com.style24.persistence.domain.searchengine.SearchEngine;
 
 /**
@@ -401,5 +402,21 @@ public interface TsfGoodsDao {
 	 */
 	Collection<SearchEngine> getSearchGoodsList(SearchEngine params);
 
+	/**
+	 * 컨텐츠 카테고리 상품 건수
+	 * @param params
+	 * @return
+	 * @author bin2107
+	 * @date 2021. 5. 10
+	 */
 	int getContentsCategoryGoodsCount(Cate4Srch cate4Srch);
+
+	/**
+	 * 브랜드메인 브랜드별 신상품 50개 목록
+	 * @param params
+	 * @return
+	 * @author bin2107
+	 * @date 2021. 5. 12
+	 */
+	Collection<Goods> getBrandNewGoodsList(GoodsSearch goodsSearch);
 }

+ 19 - 3
src/main/java/com/style24/front/biz/service/TsfCouponService.java

@@ -767,15 +767,32 @@ public class TsfCouponService {
 		coupon.setCustNo(TsfSession.getInfo().getCustNo());
 		coupon.setCustGrade(TsfSession.getInfo().getCustGrade());
 		Collection<Coupon> quickCouponList = couponDao.getQuickCouponDownList(coupon);
-
+		
+		Coupon temp = quickCouponList.iterator().next();
+		System.out.println(temp);
 		String result = "SUCESS";
 
 		if (quickCouponList == null || quickCouponList.isEmpty()) {
 			result = "ERROR_10";
 			return result;
 		}
+		
+		if (temp.getTotPubLimitQty() > 0) {
+			if (temp.getCustPubLimitQty() <= temp.getCustCouponCnt()) {
+				result = "ERROR_30";
+				return result;
+			}
+		}
+		// 첫구매여부 (Y:구매이력이없음 | N:구매이력있음) - 구매기간일자 해당기간에 구매이력이 없으면 다운로드 가능
+		if ("Y".equals(temp.getFirstOrdYn())) {
+			int firstOrdcnt = orderService.getCustFirstOrderCount(temp);
+			if (firstOrdcnt > 0) {
+				//log.info("상품쿠폰 다운  skip: 쿠폰첫구매정보 : {}, {} ~ {} ", coupon.getFirstOrdYn(), coupon.getBuyStdt(), coupon.getBuyEddt());
+				result = "ERROR_20";
+				return result;
+			}
+		}
 
-		int count = 0;
 		if (coupon.getCpnId() > 0) {
 			for (Coupon quickCoupon : quickCouponList) {
 				if (quickCoupon != null) {
@@ -789,7 +806,6 @@ public class TsfCouponService {
 					custCoupon.setUpdNo(coupon.getCustNo());
 					custCoupon.setRegNo(coupon.getCustNo());
 					coreCouponDao.saveCouponCustPub(custCoupon);
-					count++;
 				}
 			}
 		}

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

@@ -1059,7 +1059,7 @@ public class TsfCustomerService {
 		CustGrade nextCustGradePolicy = custGradePolicy.get(0);
 		nextCustGradePolicy.setCustNo(custGrade.getCustNo());
 		// 2.고객 예상등급 이후 정보로 주문금액 확인
-		CustGrade nextCustGrade = customerDao.getExpectedCustGrde(nextCustGradePolicy);
+		CustGrade nextCustGrade = customerDao.getCustGradeOrderInfo(nextCustGradePolicy);
 		if (nextCustGrade != null) {
 			nextCustGradePolicy.setOrdCnt(nextCustGrade.getOrdCnt());
 			nextCustGradePolicy.setSumRealOrdAmt(nextCustGrade.getSumRealOrdAmt());

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

@@ -69,6 +69,7 @@ public class TsfDeliveryService {
 			}
 			
 			// 주문변경번호 조회 
+			/*
 			Collection<SweetTracker> chgList = deliveryDao.getOrdChgSqList(sweetTracker);
 			for(SweetTracker chgSq : chgList ) {
 				
@@ -86,6 +87,7 @@ public class TsfDeliveryService {
 				ordChg.setOrdDtlNo(chgSq.getOrdDtlNo()); 
 				orderChangeDao.createOrderChangeDetailHst(ordChg);
 			}
+			*/
 		}
 		
 		// 	TB_SWEET_TRACKER 등록 

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

@@ -31,6 +31,7 @@ import com.style24.persistence.domain.ReinboundInform;
 import com.style24.persistence.domain.SizeInfo;
 import com.style24.persistence.domain.Tmtb;
 import com.style24.persistence.domain.searchengine.SearchEngine;
+import com.style24.persistence.domain.GoodsSearch;
 
 import lombok.extern.slf4j.Slf4j;
 
@@ -802,18 +803,16 @@ public class TsfGoodsService {
 				}
 			}
 		} else if (cate.getContentsLoc().equals("SBM013") || cate.getContentsLoc().equals("SBMM013")) {
-//			GoodsSearch goodsSearch = new GoodsSearch();
-//			goodsSearch.setSiteCd(TscConstants.Site.STYLE24.value());
-//			goodsSearch.setFormalGb(cate.getFormalGb());
-//			goodsSearch.setCustGb(cate.getCustGb());
-//			goodsSearch.setCustNo(cate.getCustNo());
-//			goodsSearch.setBrandGroupNo(cate.getBrandGroupNo());
-//			goodsSearch.setMaxRow(cate.getMaxRow());
-//			goodsSearch.setContentsLoc(cate.getContentsLoc());
-//			goodsList = displayDao.getCategoryGoodsList(goodsSearch);
-			//todo 최신상품 불러오는거 만들어야함
-			log.info("SBM013 goodsList cate>>>{}", cate);
-			goodsList = goodsDao.getContentsCategoryGoodsList(cate);
+			GoodsSearch goodsSearch = new GoodsSearch();
+			goodsSearch.setSiteCd(TscConstants.Site.STYLE24.value());
+			goodsSearch.setCateGb("G032_101");
+			goodsSearch.setFrontGb(TsfSession.getFrontGb());
+			goodsSearch.setFormalGb(cate.getFormalGb());
+			goodsSearch.setCustGb(cate.getCustGb());
+			goodsSearch.setCustNo(cate.getCustNo());
+			goodsSearch.setBrandGroupNo(cate.getBrandGroupNo());
+			goodsSearch.setMaxRow(cate.getMaxRow());
+			goodsList = goodsDao.getBrandNewGoodsList(goodsSearch);
 
 			for (Goods temp : goodsList) {
 				if (temp.getSizes() != null) {

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

@@ -1050,53 +1050,53 @@ public class TsfOrderService {
 
 			// 네이버페이 송부용 xml 작성
 			StringBuffer sb = new StringBuffer();
-			sb.append("<order>");
-			sb.append("<merchantId>").append(shopId).append("</merchantId>");								//<!-- 상점ID -->
-			sb.append("<certiKey>").append("<![CDATA[" + certificationKey + "]]>").append("</certiKey>");	//<!-- 인증키 -->
-			sb.append("<backUrl>").append("<![CDATA[" + param.getBackUrl() + "]]>").append("</backUrl>");	//<!-- 이전페이지 -->
-			sb.append("<interface>");
-			sb.append("<merchantCustomCode1>").append(param.getOrdNo()).append("</merchantCustomCode1>");
-			sb.append("<cpaInflowCode>").append(cpaInflowCode).append("</cpaInflowCode>");
-			sb.append("<naverInflowCode>").append(naverInflowCode).append("</naverInflowCode>");
-			sb.append("<saClickId>").append(saClickId).append("</saClickId>");
-			sb.append("</interface>");
+			sb.append("<order>\n");
+			sb.append("\t<merchantId>").append(shopId).append("</merchantId>\n");								//<!-- 상점ID -->
+			sb.append("\t<certiKey>").append(certificationKey).append("</certiKey>\n");	//<!-- 인증키 -->
+			sb.append("\t<backUrl>").append(param.getBackUrl()).append("</backUrl>\n");	//<!-- 이전페이지 -->
+			sb.append("\t<merchantCustomCode1>").append(param.getOrdNo()).append("</merchantCustomCode1>\n");
+			sb.append("\t<interface>\n");
+			sb.append("\t\t<cpaInflowCode>").append(cpaInflowCode).append("</cpaInflowCode>\n");
+			sb.append("\t\t<naverInflowCode>").append(naverInflowCode).append("</naverInflowCode>\n");
+			sb.append("\t\t<saClickId>").append(saClickId).append("</saClickId>\n");
+			sb.append("\t</interface>\n");
 
 			for(Order item : param.getOrderDetailList()) {
 				//<!-- 상품정보 -->
-				sb.append("<product>");
-				sb.append("<id>").append(item.getGoodsCd()).append("</id>");							//<!-- 상품코드 -->
-				sb.append("<ecMallProductId>").append(item.getGoodsCd()).append("</ecMallProductId>");	//<!-- 상품코드 -->
-				sb.append("<name>").append("<![CDATA[" + item.getGoodsNm() + "]]>").append("</name>");	//<!-- 상품명 -->
-				sb.append("<basePrice>").append(item.getCurrPrice() + item.getOptAddPrice()).append("</basePrice>");						//<!-- 상품금액 -->
-				sb.append("<infoUrl>").append("<![CDATA[http:" + param.getGoodsUrl() + item.getGoodsCd() + "]]>").append("</infoUrl>");		//<!-- 상품상세페이지 URL -->
-				sb.append("<imageUrl>").append("<![CDATA[http:" + goodsImgUrl + "/" + item.getSysImgNm() + "]]>").append("</imageUrl>");	//<!-- 상품원본이미지 URL -->
+				sb.append("\t<product>\n");
+				sb.append("\t\t<id>").append(item.getGoodsCd()).append("</id>\n");							//<!-- 상품코드 -->
+				sb.append("\t\t<ecMallProductId>").append(item.getGoodsCd()).append("</ecMallProductId>\n");	//<!-- 상품코드 -->
+				sb.append("\t\t<name>").append(item.getGoodsNm()).append("</name>\n");	//<!-- 상품명 -->
+				sb.append("\t\t<basePrice>").append(item.getCurrPrice() + item.getOptAddPrice()).append("</basePrice>\n");						//<!-- 상품금액 -->
+				sb.append("\t\t<infoUrl>").append("http:" + param.getGoodsUrl() + item.getGoodsCd()).append("</infoUrl>\n");		//<!-- 상품상세페이지 URL -->
+				sb.append("\t\t<imageUrl>").append("http:" + goodsImgUrl + "/" + item.getSysImgNm()).append("</imageUrl>\n");	//<!-- 상품원본이미지 URL -->
 
 				// 옵션 정보
-				sb.append("<option>");
-				sb.append("<quantity>").append(item.getGoodsQty()).append("</quantity>");							//<!-- 옵션수량-->
-				sb.append("<price>").append(item.getOptAddPrice()).append("</price>");								//<!-- 옵션금액 -->
-				sb.append("<manageCode>").append("<![CDATA[" + item.getOptCd() + "]]>").append("</manageCode>");	//<!-- 옵션관리코드 -->
+				sb.append("\t\t<option>\n");
+				sb.append("\t\t\t<quantity>").append(item.getGoodsQty()).append("</quantity>\n");							//<!-- 옵션수량-->
+				sb.append("\t\t\t<price>").append(item.getOptAddPrice()).append("</price>\n");								//<!-- 옵션금액 -->
+				sb.append("\t\t\t<manageCode>").append(item.getOptCd()).append("</manageCode>\n");	//<!-- 옵션관리코드 -->
 
 				// 칼라코드
-				sb.append("<selectedItem>");
-				sb.append("<type>SELECT</type>");//<!-- 옵션유형 -->
-				sb.append("<name>칼라</name>");//<!-- 옵션명 -->
-				sb.append("<value>");
-				sb.append("<id>").append("<![CDATA[" + item.getOptCd1() + "]]>").append("</id>");//<!-- 칼라코드 -->
-				sb.append("<text>").append("<![CDATA[" + item.getColorNm() + "]]>").append("</text>");//<!-- 칼라명 -->
-				sb.append("</value>");
-				sb.append("</selectedItem>");
+				sb.append("\t\t\t<selectedItem>\n");
+				sb.append("\t\t\t\t<type>SELECT</type>\n");//<!-- 옵션유형 -->
+				sb.append("\t\t\t\t<name>색상</name>\n");//<!-- 옵션명 -->
+				sb.append("\t\t\t\t<value>\n");
+				sb.append("\t\t\t\t\t<id>").append(item.getOptCd1()).append("</id>\n");//<!-- 칼라코드 -->
+				sb.append("\t\t\t\t\t<text>").append(item.getColorNm()).append("</text>\n");//<!-- 칼라명 -->
+				sb.append("\t\t\t\t</value>\n");
+				sb.append("\t\t\t</selectedItem>\n");
 
 				// 사이즈코드
-				sb.append("<selectedItem>");
-				sb.append("<type>SELECT</type>");//<!-- 옵션유형 -->
-				sb.append("<name>사이즈</name>");//<!-- 옵션명 -->
-				sb.append("<value>");
-				sb.append("<id>").append("<![CDATA[" + item.getOptCd2() + "]]>").append("</id>");//<!-- 사이즈코드 -->
-				sb.append("<text>").append("<![CDATA[" + item.getOptCd2() + "]]>").append("</text>");//<!-- 사이즈명 -->
-				sb.append("</value>");
-				sb.append("</selectedItem>");
-				sb.append("</option>");
+				sb.append("\t\t\t<selectedItem>\n");
+				sb.append("\t\t\t\t<type>SELECT</type>\n");//<!-- 옵션유형 -->
+				sb.append("\t\t\t\t<name>사이즈</name>\n");//<!-- 옵션명 -->
+				sb.append("\t\t\t\t<value>\n");
+				sb.append("\t\t\t\t\t<id>").append(item.getOptCd2()).append("</id>\n");//<!-- 사이즈코드 -->
+				sb.append("\t\t\t\t\t<text>").append(item.getOptCd2()).append("</text>\n");//<!-- 사이즈명 -->
+				sb.append("\t\t\t\t</value>\n");
+				sb.append("\t\t\t</selectedItem>\n");
+				sb.append("\t\t</option>\n");
 
 				// 배송비 판단 후 배송비유형 선택 (추가 기본배송비, 무료배송비 기준 조회후 등록)
 				//<!-- 배송정보 -->
@@ -1112,22 +1112,22 @@ public class TsfOrderService {
 					delvFee = 0;
 				}
 
-				sb.append("<shippingPolicy>");
-				sb.append("<groupId>").append(item.getDelvFeeCd()).append("</groupId>");		//<!-- 배송비묶음그룹ID -->
-				sb.append("<method>DELIVERY</method>");											//<!-- 배송방법 : 택배,소포,등기 -->
-				sb.append("<feeType>").append("CONDITIONAL_FREE").append("</feeType>");			//<!-- 배송비유형 : 유료 -->
-				sb.append("<feePayType>").append("PREPAYED").append("</feePayType>");			//<!-- 배송비결제방법 : 선불 -->
-				sb.append("<feePrice>").append(item.getDelvFee()).append("</feePrice>");		//<!-- 기본배송비 -->
+				sb.append("\t\t<shippingPolicy>\n");
+				sb.append("\t\t\t<groupId>").append(item.getDelvFeeCd()).append("</groupId>\n");		//<!-- 배송비묶음그룹ID -->
+				sb.append("\t\t\t<method>DELIVERY</method>\n");											//<!-- 배송방법 : 택배,소포,등기 -->
+				sb.append("\t\t\t<feeType>").append("CONDITIONAL_FREE").append("</feeType>\n");			//<!-- 배송비유형 : 유료 -->
+				sb.append("\t\t\t<feePayType>").append("PREPAYED").append("</feePayType>\n");			//<!-- 배송비결제방법 : 선불 -->
+				sb.append("\t\t\t<feePrice>").append(item.getDelvFee()).append("</feePrice>\n");		//<!-- 기본배송비 -->
 
 				// 조건부 무료일경우에만 송부
 				if(TscConstants.DelvFeeCrite.NORMAL.value().equals(item.getDelvFeeCrite())) {
-					sb.append("<conditionalFree>");
-					sb.append("<basePrice>").append(item.getMinOrdAmt()).append("</basePrice>");	//<!-- 무료배송비기준 -->
-					sb.append("</conditionalFree>");
+					sb.append("\t\t\t<conditionalFree>\n");
+					sb.append("\t\t\t\t<basePrice>").append(item.getMinOrdAmt()).append("</basePrice>\n");	//<!-- 무료배송비기준 -->
+					sb.append("\t\t\t</conditionalFree>\n");
 				}
 
-				sb.append("</shippingPolicy>");
-				sb.append("</product>");
+				sb.append("\t\t</shippingPolicy>\n");
+				sb.append("\t</product>\n");
 
 				totPrice = totPrice + ((item.getCurrPrice() + item.getOptAddPrice()) * item.getGoodsQty());
 			}

+ 1 - 54
src/main/java/com/style24/front/biz/web/TsfDeliveryController.java

@@ -50,64 +50,11 @@ public class TsfDeliveryController extends TsfBaseController {
 	@RequestMapping(value = "/sweettracker/response" , method=RequestMethod.POST, consumes="application/json")
 	@ResponseBody
 	public String sweetTrackerResponse(@RequestBody SweetTracker  sweetTracker) throws Exception {
-		
-		deliveryService.saveTemp("들어옴");
-		
-		String msg = "";
-//		Enumeration  enums = request.getParameterNames();
-//		while (enums.hasMoreElements()) {
-//			String name = (String) enums.nextElement();
-//			log.info("name: "+name);
-//			msg = msg+ name+": "+request.getParameter(name)+" ";
-//		}
-//		
-//		deliveryService.saveTemp(msg);
-//		
-//		String fid  = request.getParameter("fid");
-//		String courier_code  = request.getParameter("courier_code");
-//		String invoice_no  = request.getParameter("invoice_no");
-//		String level  = request.getParameter("level");
-//		String time_trans  = request.getParameter("time_trans");
-//		String time_sweet  = request.getParameter("time_sweet");
-//		String where  = request.getParameter("where");
-//		String telno_office  = request.getParameter("telno_office");
-//		String telno_man  = request.getParameter("telno_man");
-//		String details  = request.getParameter("details");
-//		String recv_addr  = request.getParameter("recv_addr");
-//		String recv_name  = request.getParameter("recv_name");
-//		String send_name  = request.getParameter("send_name");
-//		String man  = request.getParameter("man");
-//		String estmate  = request.getParameter("estmate");
-//		
-//		String msg2 = "fid: "+fid+" courier_code:"+courier_code+" invoice_no:"+invoice_no+" level:"+level+" time_trans:"+time_trans;
-//		
-//		deliveryService.saveTemp(msg2);
-//		
-//		
-//		
-//		SweetTracker  sweetTracker = new SweetTracker();
-//		sweetTracker.setFid(request.getParameter("fid"));
-//		sweetTracker.setCourier_code(request.getParameter("courier_code"));
-//		sweetTracker.setInvoice_no(request.getParameter("invoice_no"));
-//		sweetTracker.setLevel(Integer.parseInt(request.getParameter("level")));
-//		sweetTracker.setTime_trans(request.getParameter("time_trans"));
-//		sweetTracker.setTime_sweet(request.getParameter("time_sweet"));
-//		sweetTracker.setWhere(request.getParameter("where"));
-//		sweetTracker.setTelno_office(request.getParameter("telno_office"));
-//		sweetTracker.setTelno_man(request.getParameter("telno_man"));
-//		sweetTracker.setDetails(request.getParameter("details"));
-//		sweetTracker.setRecv_addr(request.getParameter("recv_addr"));
-//		sweetTracker.setRecv_name(request.getParameter("recv_name"));
-//		sweetTracker.setSend_name(request.getParameter("send_name"));
-//		sweetTracker.setMan(request.getParameter("man"));
-//		sweetTracker.setEstmate(request.getParameter("estmate"));
-//		
-		
+
 		deliveryService.saveTemp(sweetTracker.toString());
 		
 		JsonObject rtn = new JsonObject();
 		
-		
 		try {
 			deliveryService.saveDelvStat(sweetTracker);
 			

+ 6 - 1
src/main/java/com/style24/front/biz/web/TsfMypageController.java

@@ -1557,6 +1557,7 @@ public class TsfMypageController extends TsfBaseController {
 	public GagaMap getQuickDownCouponList() {
 		GagaMap result = new GagaMap();
 		Coupon coupon = new Coupon();
+		coupon.setQuickYn("N");
 		Collection<Coupon> ownCouponList = couponService.getQuickCouponDownList(coupon);
 		result.set("ownCouponList", ownCouponList);
 		result.set("couponCount",couponService.getMypageCouponInfo(coupon));
@@ -1576,11 +1577,15 @@ public class TsfMypageController extends TsfBaseController {
 		String couponResult = couponService.saveQuickCoupon(coupon);
 		if ("ERROR_10".equals(couponResult)) {
 			result.set("message", "발급가능 쿠폰이 없습니다.");
+		}else if("ERROR_20".equals(couponResult)){
+			result.set("message", "죄송합니다. 해당 쿠폰은 다운로드가 불가합니다.");
+		}else if("ERROR_30".equals(couponResult)){
+			result.set("message", "죄송합니다. 해당 쿠폰은 다운로드가 불가합니다.");
 		}else {
 			result.set("message", "쿠폰이 발급되었습니다.");
 		}
+		coupon.setQuickYn("Y");
 		result.set("status", "200");
-		
 		result.set("couponList", couponService.getQuickCouponDownList(coupon));
 		return result;
 	}

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

@@ -1292,6 +1292,7 @@
 		      ,C.CUST_PUB_LIMIT_QTY 
 		      ,C.TOT_PUB_LIMIT_QTY
 		      ,C.MAX_DC_AMT 
+		      ,C.FIRST_ORD_YN
 		      , IFNULL((SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = C.CPN_ID AND CUST_NO = #{custNo}),0) AS CUST_COUPON_CNT
 		      , CONCAT(CASE WHEN C.BUY_LIMIT_AMT = 0 THEN ''
 		                   ELSE CONCAT(FORMAT(C.BUY_LIMIT_AMT , 0),'원 이상 구매 시 ')
@@ -1328,7 +1329,9 @@
 		         WHEN 'M' = 'P' THEN C.DC_MVAL
 		     ELSE C.DC_AVAL END) > 0                  -- PC, MOBILE,APP 별로 0 보다 큰 쿠폰
 		AND IF (C.TOT_PUB_LIMIT_QTY = 0, 9999999999,C.TOT_PUB_LIMIT_QTY) > (SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = C.CPN_ID) -- 총발행제한수
+		<if test='quickYn == "N" and quickYn != ""'>
 		AND IF (C.CUST_PUB_LIMIT_QTY = 0, 9999999999,C.CUST_PUB_LIMIT_QTY) > (SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = C.CPN_ID AND CUST_NO= #{custNo}) -- 고객당발행제한수량
+		</if>
 		AND (SELECT COUNT(1)
 		     FROM TB_COUPON_CUST_GBN
 		     WHERE CPN_ID = C.CPN_ID

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

@@ -631,6 +631,30 @@
 		OR    B.SUM_REAL_ORD_AMT >= #{minBuyAmt}
 	</select>
 
+	<!--고객 등급 기준 주문정보-->
+	<select id="getCustGradeOrderInfo" parameterType="CustGrade" resultType="CustGrade">
+		/* TsfCustomer.getCustGradeOrderInfo */
+		SELECT   COUNT(DISTINCT A.ORD_NO) AS ORD_NO_CNT
+		       , SUM(A.SUM_REAL_ORD_AMT)  AS SUM_REAL_ORD_AMT
+		FROM (
+		      SELECT O.ORD_NO
+		           , SUM(OD.REAL_ORD_AMT + OD.GFCD_USE_AMT) AS SUM_REAL_ORD_AMT
+		      FROM   TB_ORDER O
+		      INNER JOIN
+		             TB_ORDER_DETAIL OD
+		      ON     O.ORD_NO = OD.ORD_NO
+		      INNER JOIN
+		             TB_CUSTOMER C
+		      ON     O.CUST_NO = C.CUST_NO
+		      WHERE  OD.ORD_DTL_STAT = 'G013_70' /*구매확정*/
+		      AND    C.CUST_NO = #{custNo}
+		      AND    O.ORD_DT >= DATE_ADD(DATE_ADD(LAST_DAY(NOW()), INTERVAL 1 DAY), INTERVAL -#{calMonths} MONTH)
+		      AND    O.ORD_DT <![CDATA[<]]> DATE_ADD(LAST_DAY(NOW()), INTERVAL 1 DAY) /*익월 1일*/
+		      GROUP BY O.ORD_NO
+		      HAVING SUM(OD.REAL_ORD_AMT + OD.GFCD_USE_AMT) >= #{buyExceptAmt}
+		) A
+	</select>
+
 	<!--배치 생년월일 -->
 	<insert id="saveBatchBirth" parameterType="Customer">
 		/*TsfCustomer.saveBatchBirth*/

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

@@ -2798,5 +2798,255 @@
 		                             AND W.CUST_NO = #{custNo}
 		</if>
 	</select>
-	
+
+	<!-- 브랜드메인 브랜드별 신상품 50개 목록 -->
+	<select id="getBrandNewGoodsList" parameterType="goodsSearch" resultType="Goods">
+		/* TsfGoods.getBrandNewGoodsList */
+		WITH TAB_GOODS AS (
+		       SELECT G.BRAND_GROUP_NM /*브랜드그룹명*/
+		            , G.GOODS_CD /*상품코드*/
+		            , G.GOODS_NM /*상품명*/
+		            , G.GOODS_GB /*상품구분*/
+		            , G.SELF_GOODS_YN /*자사상품여부*/
+		            , G.FOREIGN_BUY_YN /*해외구매대행여부*/
+		            , G.PARALLEL_IMPORT_YN /*병행수입여부*/
+		            , G.ORDER_MADE_YN /*주문제작여부*/
+		            , G.GOODS_TNM /*상품타이틀명*/
+		            , G.MAIN_COLOR_CD /*대표색상코드*/
+		            , G.LIST_PRICE /*정상가(최초판매가)*/
+		            , G.CURR_PRICE /*현재판매가*/
+		            , G.FORMAL_GB /*정상이월구분*/
+		            , G.REG_DT /*등록일시*/
+		            , G.SELL_WEEK_QTY /*주간판매수량*/
+		            , G.REVIEW_REG_CNT /*리뷰등록건수*/
+		       FROM (
+		            SELECT CASE WHEN BG.DISP_NM_LANG = 'EN' THEN
+		                 BG.BRAND_GROUP_ENM
+		                 ELSE
+		                 BG.BRAND_GROUP_KNM
+		                 END AS BRAND_GROUP_NM /*브랜드그룹명*/
+		                 , G.GOODS_CD /*상품코드*/
+		                 , G.GOODS_NM /*상품명*/
+		                 , G.GOODS_GB /*상품구분*/
+		                 , G.SELF_GOODS_YN /*자사상품여부*/
+		                 , G.FOREIGN_BUY_YN /*해외구매대행여부*/
+		                 , G.PARALLEL_IMPORT_YN /*병행수입여부*/
+		                 , G.ORDER_MADE_YN /*주문제작여부*/
+		                 , G.GOODS_TNM /*상품타이틀명*/
+		                 , G.MAIN_COLOR_CD /*대표색상코드*/
+		                 , G.LIST_PRICE /*정상가(최초판매가)*/
+		                 , CASE WHEN #{frontGb} = 'P' AND #{custGb} = 'G100_20' THEN IFNULL(GBP.STAFF_PC_CURR_PRICE,G.CURR_PRICE)
+		                        WHEN #{frontGb} = 'M' AND #{custGb} = 'G100_20' THEN IFNULL(GBP.STAFF_MO_CURR_PRICE,G.CURR_PRICE)
+		                        WHEN #{frontGb} = 'A' AND #{custGb} = 'G100_20' THEN IFNULL(GBP.STAFF_APP_CURR_PRICE,G.CURR_PRICE)
+		                        WHEN #{frontGb} = 'P' AND #{custGb} != 'G100_20' THEN IFNULL(GBP.PC_CURR_PRICE,G.CURR_PRICE)
+		                        WHEN #{frontGb} = 'M' AND #{custGb} != 'G100_20' THEN IFNULL(GBP.MO_CURR_PRICE,G.CURR_PRICE)
+		                        WHEN #{frontGb} = 'A' AND #{custGb} != 'G100_20' THEN IFNULL(GBP.APP_CURR_PRICE,G.CURR_PRICE)
+		                    ELSE G.CURR_PRICE
+		                    END AS CURR_PRICE /*현재판매가*/
+		                 , G.MIN_ORD_AMT /*최소주문금액*/
+		                 , G.FORMAL_GB /*정상이월구분*/
+		                 , G.REG_DT /*등록일시*/
+		                 , GS.SELL_WEEK_QTY /*주간판매수량*/
+		                 , GS.REVIEW_REG_CNT /*리뷰등록건수*/
+		            FROM TB_CATE_4SRCH C4
+		            INNER JOIN TB_CATE_GOODS CG ON C4.LEAF_CATE_NO = CG.CATE_NO
+		            INNER JOIN TB_GOODS G ON CG.GOODS_CD = G.GOODS_CD
+		            INNER JOIN TB_GOODS_STOCK S ON CG.GOODS_CD = S.GOODS_CD
+		            INNER JOIN TB_BRAND B ON G.BRAND_CD = B.BRAND_CD
+		            INNER JOIN TB_BRAND_GROUP BG ON B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
+		            INNER JOIN TB_GOODS_SUMMARY GS ON CG.GOODS_CD = GS.GOODS_CD
+		            LEFT OUTER JOIN TB_GOODS_BENEFIT_PRICE GBP ON CG.GOODS_CD = GBP.GOODS_CD
+		            WHERE C4.SITE_CD = #{siteCd}
+		            AND C4.CATE_GB = #{cateGb}
+		            AND C4.CATE_TYPE = 'G031_10' /*상품카테고리*/
+		        <if test="cate1No != null and cate1No != ''">
+		            AND C4.CATE1_NO = #{cate1No}
+		        </if>
+		        <if test="cate2No != null and cate2No != ''">
+		            AND C4.CATE2_NO = #{cate2No}
+		        </if>
+		        <if test="cate3No != null and cate3No != ''">
+		            AND C4.CATE3_NO = #{cate3No}
+		        </if>
+		        <if test="cate4No != null and cate4No != ''">
+		            AND C4.CATE4_NO = #{cate4No}
+		        </if>
+		        <if test="cate5No != null and cate5No != ''">
+		            AND C4.CATE5_NO = #{cate5No}
+		        </if>
+		    <choose>
+		        <when test="brandGroupNo != null and brandGroupNo > 0">
+		            AND B.BRAND_GROUP_NO = #{brandGroupNo}
+		        </when>
+		        <otherwise>
+		            AND CG.BRAND_GROUP_NO = 0 /*브랜드메인에서 접근한 것이 아니면*/
+			    </otherwise>
+		    </choose>
+		        <if test="formalGb != null and formalGb !=''">
+		            AND G.FORMAL_GB = #{formalGb}
+		        </if>
+		            AND G.GOODS_STAT = 'G008_90' /*승인완료상품*/
+		            AND G.SELF_MALL_YN = 'Y' /*몰노출상품*/
+		            AND NOW() BETWEEN G.SELL_STDT AND G.SELL_EDDT /*유효한 판매기간*/
+		            AND S.STOCK_QTY > 0 /*재고있는 상품*/
+		            AND B.USE_YN = 'Y' /*사용하는 브랜드*/
+		            AND BG.USE_YN = 'Y' /*사용하는 브랜드그룹*/
+		            AND EXISTS (SELECT 1
+		            FROM TB_GOODS_BENEFIT
+		            WHERE GOODS_CD = G.GOODS_CD
+		            AND BENEFIT_GB = '40'
+		        )
+		    ) G
+		    WHERE 1 = 1
+		)
+		, TAB_OPTION AS (
+		      /* 자사상품 색상 목록 */
+		      SELECT O.GOODS_CD
+		           , O.OPT_CD1 AS MAIN_COLOR_CD
+		      FROM TAB_GOODS G
+		      , TB_OPTION O
+		      WHERE G.GOODS_CD = O.GOODS_CD
+		      AND G.SELF_GOODS_YN = 'Y' /*자사상품만*/
+		      AND O.DISP_YN = 'Y'
+		      GROUP BY O.GOODS_CD, O.OPT_CD1
+		)
+		, TAB_ALL_GOODS AS (
+		     SELECT BRAND_GROUP_NM /*브랜드그룹명*/
+		          , GOODS_CD /*상품코드*/
+		          , GOODS_NM /*상품명*/
+		          , GOODS_GB /*상품구분*/
+		          , SELF_GOODS_YN /*자사상품여부*/
+		          , FOREIGN_BUY_YN /*해외구매대행여부*/
+		          , PARALLEL_IMPORT_YN /*병행수입여부*/
+		          , ORDER_MADE_YN /*주문제작여부*/
+		          , GOODS_TNM /*상품타이틀명*/
+		          , MAIN_COLOR_CD /*대표색상코드*/
+		          , LIST_PRICE /*정상가(최초판매가)*/
+		          , CURR_PRICE /*현재판매가*/
+		          , FORMAL_GB /*정상이월구분*/
+		          , REG_DT /*등록일시*/
+		          , SELL_WEEK_QTY /*주간판매수량*/
+		          , REVIEW_REG_CNT /*리뷰등록건수*/
+		          , NUMB
+		     FROM (
+		                SELECT G.BRAND_GROUP_NM /*브랜드그룹명*/
+		                , G.GOODS_CD /*상품코드*/
+		                , G.GOODS_NM /*상품명*/
+		                , G.GOODS_GB /*상품구분*/
+		                , G.SELF_GOODS_YN /*자사상품여부*/
+		                , G.FOREIGN_BUY_YN /*해외구매대행여부*/
+		                , G.PARALLEL_IMPORT_YN /*병행수입여부*/
+		                , G.ORDER_MADE_YN /*주문제작여부*/
+		                , G.GOODS_TNM /*상품타이틀명*/
+		                , IFNULL(O.MAIN_COLOR_CD,G.MAIN_COLOR_CD) AS MAIN_COLOR_CD /*대표색상코드*/
+		                , G.LIST_PRICE /*정상가(최초판매가)*/
+		                , G.CURR_PRICE /*현재판매가*/
+		                , G.FORMAL_GB /*정상이월구분*/
+		                , G.REG_DT /*등록일시*/
+		                , G.SELL_WEEK_QTY /*주간판매수량*/
+		                , G.REVIEW_REG_CNT /*리뷰등록건수*/
+		                , ROW_NUMBER() OVER(ORDER BY G.REG_DT DESC, G.GOODS_CD) AS NUMB
+		                FROM TAB_GOODS G
+		                LEFT OUTER JOIN TAB_OPTION O ON G.GOODS_CD = O.GOODS_CD
+		                WHERE 1=1
+		         ) ORIGINAL
+		     WHERE 1 = 1
+		    <if test="maxRow != null and maxRow > 0">
+		     LIMIT #{maxRow}
+		    </if>
+		)
+		, TAB_GOODS_IMG AS (
+		      /* 상품의 이미지 */
+		      SELECT GOODS_CD
+		           , MAIN_COLOR_CD
+		           , MAX(SYS_IMG_NM) AS SYS_IMG_NM
+		           , MAX(SYS_IMG_NM2) AS SYS_IMG_NM2
+		      FROM (
+		           SELECT G.GOODS_CD
+		                , GI.COLOR_CD AS MAIN_COLOR_CD
+		                , CASE WHEN GI.DEFAULT_IMG_YN = 'Y' THEN GI.SYS_IMG_NM ELSE NULL END AS SYS_IMG_NM
+		                , CASE WHEN GI.MOUSEOVER_IMG_YN = 'Y' THEN GI.SYS_IMG_NM ELSE NULL END AS SYS_IMG_NM2
+		           FROM TAB_ALL_GOODS G
+		              , TB_GOODS_IMG GI
+		           WHERE G.GOODS_CD = GI.GOODS_CD
+		           AND G.MAIN_COLOR_CD = GI.COLOR_CD
+		      ) Z
+		      GROUP BY GOODS_CD , MAIN_COLOR_CD
+		)
+		SELECT G.BRAND_GROUP_NM
+		     , G.GOODS_CD
+		     , FN_GET_GOODS_NM(G.GOODS_NM,G.GOODS_GB,G.FOREIGN_BUY_YN,G.PARALLEL_IMPORT_YN,G.ORDER_MADE_YN) AS GOODS_FULL_NM /*상품FULL명*/
+		     , G.GOODS_TNM
+		     , G.MAIN_COLOR_CD
+		     , G.LIST_PRICE
+		     , G.CURR_PRICE
+		     , GI.SYS_IMG_NM
+		     , GI.SYS_IMG_NM2
+		, (
+		    SELECT GROUP_CONCAT(CONCAT(VIDEO_GB,':',KMC_KEY) ORDER BY NUMB SEPARATOR ',')
+		    FROM (
+		        SELECT GV.VIDEO_GB
+		             , GV.KMC_KEY
+		             , GV.REG_DT
+		             , RANK() OVER(ORDER BY GV.REG_DT, GV.KMC_KEY) AS NUMB
+		        FROM TB_GOODS_VIDEO GV
+		        WHERE GV.GOODS_CD = G.GOODS_CD
+		        AND GV.DISP_YN = 'Y'
+		        AND GV.KMC_KEY IS NOT NULL
+		    ) Z
+		    WHERE NUMB <![CDATA[<=]]> 2
+		) AS VIDEOS
+		, (
+		    SELECT GROUP_CONCAT(DISTINCT CONCAT(C.COLOR_CD,':',CC.CD_DESC) ORDER BY CC.DISP_ORD SEPARATOR ',') AS COLOR_CHIPS
+		    FROM TB_OPTION O
+		       , TB_COLOR C
+		       , TB_COMMON_CODE CC
+		    WHERE O.OPT_CD1 = C.COLOR_CD
+		    AND C.COLOR_GRP_CD = CC.CD
+		    AND O.GOODS_CD = G.GOODS_CD
+		    AND O.DISP_YN = 'Y'
+		    AND C.USE_YN = 'Y'
+		    AND CC.USE_YN = 'Y'
+		) AS COLOR_CHIPS /*컬러칩*/
+		, (
+		   SELECT GROUP_CONCAT(DISTINCT CONCAT(OPT_CD2 ,':' ,CASE WHEN SOLDOUT_YN = 'Y' THEN 'Y'
+		          ELSE CASE WHEN CURR_STOCK_QTY - BASE_STOCK_QTY > 0 THEN 'N' ELSE 'Y' END
+		          END) ORDER BY DISP_ORD SEPARATOR ',') AS SIZES
+		   FROM VW_STOCK
+		   WHERE GOODS_CD = G.GOODS_CD
+		   AND OPT_CD1 = G.MAIN_COLOR_CD
+		   AND DISP_YN = 'Y'
+		) AS SIZES /*사이즈*/
+		, (
+		   SELECT GROUP_CONCAT(CONCAT(BENEFIT_GB,':',BENEFIT_NM) ORDER BY NUMB SEPARATOR ',')
+		   FROM (
+		       SELECT GB.BENEFIT_GB
+		            , CASE WHEN GB.BENEFIT_GB = '10' THEN '쿠폰할인'
+		                   WHEN GB.BENEFIT_GB = '20' THEN '무료배송'
+		                   WHEN GB.BENEFIT_GB = '30' THEN '사은품'
+		                   WHEN GB.BENEFIT_GB = '40' THEN '신상'
+		              ELSE '총알배송' END AS BENEFIT_NM
+		            , RANK() OVER(ORDER BY GB.BENEFIT_GB, GB.GOODS_CD) AS NUMB
+		       FROM TB_GOODS_BENEFIT GB
+		       WHERE GB.GOODS_CD = G.GOODS_CD
+		   ) Z
+		) AS BENEFITS
+		, G.FORMAL_GB
+		, G.REG_DT
+		, G.NUMB
+		<choose>
+		    <when test="custNo != null and custNo > 0"> <!-- 로그인 했으면 -->
+		        , IF(W.GOODS_CD IS NULL,'','likeit') AS LIKE_IT /*위시리스트담긴상품*/
+		    </when>
+		    <otherwise>
+		        , '' AS LIKE_IT /*위시리스트담긴상품*/
+		    </otherwise>
+		</choose>
+		FROM TAB_ALL_GOODS G
+		LEFT OUTER JOIN TAB_GOODS_IMG GI ON G.GOODS_CD = GI.GOODS_CD AND G.MAIN_COLOR_CD = GI.MAIN_COLOR_CD
+		<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}
+		</if>
+	</select>
 </mapper>

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

@@ -509,7 +509,9 @@
 		SELECT COUNT(*) 
 		FROM TB_ORDER
 		WHERE CUST_NO = #{custNo}
+		<if test="buyStdt != null and buyStdt != ''">
 		AND ORD_DT BETWEEN CONCAT(#{buyStdt}, '000000') and CONCAT(#{buyEddt}, '235959')
+		</if>
 	</select>
 	
 	<!-- 보유쿠폰체크 -->

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

@@ -1604,7 +1604,7 @@
 		WHERE PLAN_GB = 'S'
 		AND OPEN_YN = 'Y'
 		AND NOW() BETWEEN DISP_STDT AND DISP_EDDT 
-		ORDER BY UPD_DT DESC LIMIT 1
+		ORDER BY REG_DT DESC LIMIT 1
 	</select>
 	
 </mapper>

+ 1 - 1
src/main/resources/config/application-locd.yml

@@ -83,7 +83,7 @@ naverPay:
     payUrl:
         web : test-pay.naver.com
         mob : test-m.pay.naver.com
-    shop.id : istyle2401
+    shop.id : istyle2424
     button.key : 5DF64042-EF37-45F1-878E-67C7098135E6
     common.certification.key : s_3799db3bf4af-
     certification.key: 2BC5E173-2840-4B48-BC7D-FF770005DD76

+ 1 - 1
src/main/resources/config/application-run.yml

@@ -108,7 +108,7 @@ naverPay:
     payUrl:
         web : pay.naver.com
         mob : m.pay.naver.com
-    shop.id: istyle2401
+    shop.id: istyle2424
     button.key: 5DF64042-EF37-45F1-878E-67C7098135E6
     common.certification.key: s_3799db3bf4af-
     certification.key: 2BC5E173-2840-4B48-BC7D-FF770005DD76

+ 1 - 1
src/main/resources/config/application-style.yml

@@ -96,7 +96,7 @@ naverPay:
     payUrl:
         web : test-pay.naver.com
         mob : test-m.pay.naver.com
-    shop.id : istyle2401
+    shop.id : istyle2424
     button.key: 5DF64042-EF37-45F1-878E-67C7098135E6
     common.certification.key: s_3799db3bf4af-
     certification.key: 2BC5E173-2840-4B48-BC7D-FF770005DD76

+ 1 - 1
src/main/resources/config/application-tsit.yml

@@ -84,7 +84,7 @@ naverPay:
     payUrl:
         web : test-pay.naver.com
         mob : test-m.pay.naver.com
-    shop.id: istyle2401
+    shop.id: istyle2424
     button.key: 5DF64042-EF37-45F1-878E-67C7098135E6
     common.certification.key: s_3799db3bf4af-
     certification.key: 2BC5E173-2840-4B48-BC7D-FF770005DD76

+ 2 - 2
src/main/webapp/WEB-INF/views/mob/cart/CartListAjaxFormMob.html

@@ -425,8 +425,8 @@
 
 						<!-- 입점업체 배송비 -->
 						<div class="goods_txt delvArea" th:if="${'Y'.equals(cart.addDelvFeeYn)}" th:classappend="|delv_${cart.delvFeeCd}|" th:style="${'Y'.equals(cart.delvYn) ? 'display:block' : 'display:none'}">
-							<span class="dlvr_fee delvFeeArea" th:if="${order.wmsDelvFee == 0}">배송비 무료</span>
-							<span class="dlvr_fee delvFeeArea" th:if="${order.wmsDelvFee > 0}">배송비&nbsp;<em th:text="${#numbers.formatInteger(order.wmsDelvFee, 1, 'COMMA')}"></em>원</span>
+							<span class="dlvr_fee delvFeeArea" th:if="${cart.delvFee == 0}">배송비 무료</span>
+							<span class="dlvr_fee delvFeeArea" th:if="${cart.delvFee > 0}">배송비&nbsp;<em th:text="${#numbers.formatInteger(cart.delvFee, 1, 'COMMA')}"></em>원</span>
 							<span th:text="|${cart.supplyCompNm} 업체직배송|"></span>
 						</div>
 

+ 45 - 0
src/main/webapp/WEB-INF/views/mob/common/fragments/GnbSubPlanningMob.html

@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html lang="ko"
+	xmlns:th="http://www.thymeleaf.org">
+<!--
+ *******************************************************************************
+ * @source  : GnbSubMob.html
+ * @desc    : GNB Sub (모바일용)
+ *============================================================================
+ * STYLE24
+ * Copyright(C) 2020 TSIT, All rights reserved.
+ *============================================================================
+ * VER  DATE         AUTHOR      DESCRIPTION
+ * ===  ===========  ==========  =============================================
+ * 1.0  2021.03.08   gagamel     최초 작성
+ *******************************************************************************
+ -->
+<th:block th:fragment="gnb">
+	<a href="#mainCon" class="skipNav">본문바로가기</a>
+	<header class=""> <!-- 서브페이지에서는 <header>의 클래스.main 제거 -->
+		<section class="htop" id="htopSub">
+			<button class="btn_back" title="이전페이지로">
+				<span><i class="gl1"></i><i class="gl2"></i><i class="gl3"></i></span>
+			</button>
+			<h1 id="htopTitle"></h1>
+			<div class="button_wrap">
+				<button type="button" class="search">
+					<img src="/images/mo/ico_btn_search.png" alt="검색">
+				</button>
+				<button type="button" class="store">
+					<img src="/images/mo/ico_btn_store.png" alt="쇼핑백">
+					<span>99+</span>
+				</button>
+			</div>
+		</section>
+	</header>
+	
+<script th:inline="javascript">
+/*<![CDATA[*/
+	
+/*]]>*/
+</script>
+
+</th:block>
+
+</html>

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

@@ -59,7 +59,7 @@
 	<script src="/ux/mo/js/jquery.modal.min.js"></script>
 	<script src="/ux/mo/js/swiper.min.js"></script>
 	<script src="/ux/plugins/jquery.serializeObject.min.js"></script>
-	<script src="/ux/plugins/mcxdialog/mcxdialog_ui.js"></script>
+	<script src="/ux/mo/js/mcxdialog_ui.js"></script>
 	<script type="text/javascript" src="https://ssl.daumcdn.net/dmaps/map_js_init/postcode.v2.js"></script>
 	<script src="/ux/plugins/lazyload.min.js"></script>
 

+ 35 - 0
src/main/webapp/WEB-INF/views/mob/common/layout/PlanningLayoutMob.html

@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html lang="ko"
+	xmlns:th="http://www.thymeleaf.org"
+	xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
+
+<head th:replace="~{mob/common/fragments/HeadMob :: head}"></head>
+
+<body>
+
+	<th:block th:replace="~{web/common/fragments/VariablesWeb :: variables}"></th:block>
+	
+	<div class="app">
+		<!-- GNB -->
+		<th:block th:replace="~{mob/common/fragments/GnbSubPlanningMob :: gnb}"></th:block>
+		<!--// GNB -->
+		
+		<!-- CONTENT AREA -->
+		<th:block layout:fragment="content"></th:block>
+		<!-- // CONTENT AREA -->
+
+		<!-- Footer -->
+		<th:block th:replace="~{mob/common/fragments/FooterMob :: footer}"></th:block>
+
+<script th:inline="javascript">
+/*<![CDATA[*/
+	$(document).ready(function() {
+		
+	});
+/*]]>*/
+</script>
+
+	</div>
+	
+</body>
+</html>

+ 1345 - 0
src/main/webapp/WEB-INF/views/mob/display/CategoryGoodsListFormMob.html

@@ -0,0 +1,1345 @@
+<!DOCTYPE html>
+<html lang="ko"
+	xmlns:th="http://www.thymeleaf.org"
+	xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
+	layout:decorator="mob/common/layout/PlanningLayoutMob">
+<!--
+ *******************************************************************************
+ * @source  : CategoryGoodsListFormMob.html
+ * @desc    : 카테고리별 상품 리스트 Page
+ *============================================================================
+ * STYLE24
+ * Copyright(C) 2020 TSIT, All rights reserved.
+ *============================================================================
+ * VER  DATE         AUTHOR      DESCRIPTION
+ * ===  ===========  ==========  =============================================
+ * 1.0  2021.05.12   bin2107     최초 작성
+ *******************************************************************************
+ -->
+<body>
+
+<th:block layout:fragment="content">
+	<main role="" id="" class="container dp">
+
+		<section class="content dp_list">
+			<div class="inner wide bg_gray">
+				<div class="sub_category">
+					<div class="cate_wrap">
+						<a href="javascript:;" class="on">전체</a>
+						<a href="javascript:;">티셔츠/셔츠</a>
+						<a href="javascript:;">니트/가디건/베스트</a>
+						<a href="javascript:;">원피스/스커트</a>
+						<a href="javascript:;">팬츠/데님/레깅스</a>
+						<a href="javascript:;">가죽/모피</a>
+						<a href="javascript:;">여성 잡화</a>
+						<a href="javascript:;">언더웨어</a>
+						<a href="javascript:;">세트</a>
+						<a href="javascript:;">니트/가디건/베스트</a>
+						<a href="javascript:;">원피스/스커트</a>
+						<a href="javascript:;">가죽/모피</a>
+						<a href="javascript:;">여성 잡화</a>
+					</div>
+				</div>
+			</div>
+			<div class="inner">
+				<!-- 상품리스트 -->
+				<div class="list_content"> <!-- 데이터 없을시 클래스 nodata 추가 -->
+					<div class="count_wrap">
+						<div>
+							<p><span>9999</span>개의 상품</p>
+						</div>
+						<div>
+							<ul class="dp_util">
+								<li>
+									<div class="open_categori">
+										<!-- 210415_select > a태그로 변경 -->
+										<a id="filter">최신상품순
+											<!--<option value="hide">최신상품순</option>
+                                            <option value="Test_SELECT_OPTION_1" rel="icon-temperature">최신상품순1</option>
+                                            <option value="Test_SELECT_OPTION_2">최신상품순2</option>
+                                            <option value="Test_SELECT_OPTION_3">최신상품순3</option>-->
+										</a>
+									</div>
+								</li>
+								<li><a href="#none" class="filter open_filter">필터</a></li>
+							</ul>
+						</div>
+					</div>
+					<div class="list_defult">
+						<div>
+							<p>선택하신 조건에 맞는 상품이 없습니다.<br>필터를 변경해 보세요.</p>
+						</div>
+						<button type="button" class="btn btn_default"><span>선택한 필터 초기화</span></button>
+					</div>
+					<div class="itemsGrp"> <!-- itemsGrp rank hot deal -->
+						<div class="item_prod"> <!-- item_prod ranker d_detail -->
+							<div class="item_state AD"> <!-- item_state AD soldout -->
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state soldout">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<iframe id="pdThumbVideo" class="pd_mov" src="http://v.kr.kollus.com/164MyIiv?enable_initialize_focus=false&autoplay&mute&controls_activation=none" allow="fullscreen" allowFullScreen ></iframe>
+										<!-- <img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt=""> -->
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+						<div class="item_prod">
+							<div class="item_state">
+								<button type="button" class="itemLike">관심상품 추가</button>
+								<a href="#none" class="itemLink">
+									<div class="itemPic">
+										<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
+									</div>
+									<p class="itemBrand">BRAND NAME</p>
+									<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
+									<p class="itemPrice">
+										<span class="itemPrice_original">89,000</span>
+										80,100
+										<span class="itemPercent">10%</span>
+									</p>
+									<div class="itemcolorchip">
+										<span class="chip_color35" value="ABM">BEIGE</span>
+										<span class="chip_color54" value="BDS">BLACK</span>
+										<span class="chip_color40" value="YBR">WHITE</span>
+									</div>
+									<p class="itemBadge">
+										<span class="badge13">베스트 </span>
+									</p>
+									<div class="itemComment">#주문 폭주 상품</div>
+								</a>
+							</div>
+						</div>
+					</div>
+					<div class="list_last">마지막페이지 입니다.</div>
+				</div>
+				<!-- //상품리스트 -->
+			</div>
+		</section>
+
+		<!-- 필터 -->
+		<div class="filter_box">
+			<div class="filter_list">
+				<div class="filter_top">
+					<div class="tt">필터</div>
+					<div>
+						<button class="fillter_reset"><span>초기화</span></button>
+						<button class="close">닫기</button>
+					</div>
+				</div>
+				<div class="filter_con">
+					<div class="filter_header">
+						<div class="form_field">
+							<div>
+								<input id="price" type="checkbox"><label for="price"> <span>남여 공용만 보기</span> </label>
+							</div>
+							<div>
+								<input id="chk-2" type="checkbox"><label for="chk-2"> <span>신상품만 보기</span> </label>
+							</div>
+						</div>
+					</div>
+					<div class="filter_body">
+						<!-- 필터메뉴 -->
+						<ul>
+							<li class="categori">
+								<a href="javascript:void(0)" class="daps1">카테고리<span class="pic">셔츠/블라우스</span></a>
+								<ul class="daps2">
+									<li>
+										<a href="javascript:void(0)">여성</a>
+										<ul class="daps3">
+											<li>
+												<a href="javascript:void(0)">티셔츠/셔츠</a>
+												<ul class="daps4">
+													<li>
+														<a href="javascript:void(0)">셔츠/블라우스</a>
+														<ul class="daps5">
+															<li><a href="javascript:void(0)">셔츠</a></li>
+															<li><a href="javascript:void(0)">블라우스</a></li>
+														</ul>
+													</li>
+													<li>
+														<a href="javascript:void(0)">맨투맨/모자티</a>
+														<ul class="daps5">
+															<li><a href="javascript:void(0)">맨투맨</a></li>
+															<li><a href="javascript:void(0)">모자티</a></li>
+														</ul>
+													</li>
+												</ul>
+											</li>
+										</ul>
+									</li>
+									<li>
+										<a href="javascript:void(0)">남성</a>
+										<ul class="daps3">
+											<li>
+												<a href="javascript:void(0)">티셔츠/셔츠</a>
+												<ul class="daps4">
+													<li>
+														<a href="javascript:void(0)">셔츠/블라우스</a>
+														<ul class="daps5">
+															<li><a href="javascript:void(0)">셔츠</a></li>
+															<li><a href="javascript:void(0)">블라우스</a></li>
+														</ul>
+													</li>
+												</ul>
+											</li>
+										</ul>
+									</li>
+								</ul>
+							</li>
+							<li class="brand">
+								<a href="javascript:void(0)" class="daps1">브랜드</a>
+								<ul class="daps2">
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="brand1" type="checkbox"><label for="brand1"> <span>가르맨디</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="brand2" type="checkbox"><label for="brand2"> <span>공동구매북</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="brand3" type="checkbox"><label for="brand3"> <span>곰아저씨</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="brand4" type="checkbox"><label for="brand4"> <span>겟유즈드</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="brand5" type="checkbox"><label for="brand5"> <span>그랑프리골프</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="brand6" type="checkbox"><label for="brand6"> <span>고세</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+								</ul>
+							</li>
+							<li calss="size">
+								<a href="javascript:void(0)" class="daps1">사이즈<span class="pic">100,105,27,28</span></a>
+								<div class="daps2">
+									<ul class="sizebox">
+										<li>
+											<strong>상의</strong>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize01" data-name="chkFilterSize01" name="filterSizeCds" value=""><span>80</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize02" data-name="chkFilterSize02" name="filterSizeCds" value=""><span>85</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize03" data-name="chkFilterSize03" name="filterSizeCds" value=""><span>90</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize04" data-name="chkFilterSize04" name="filterSizeCds" value=""><span>95</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize05" data-name="chkFilterSize05" name="filterSizeCds" value="" checked><span>100</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize06" data-name="chkFilterSize06" name="filterSizeCds" value="" checked><span>105</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize07" data-name="chkFilterSize07" name="filterSizeCds" value=""><span>110</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize08" data-name="chkFilterSize08" name="filterSizeCds" value=""><span>115</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize09" data-name="chkFilterSize09" name="filterSizeCds" value=""><span>S</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize10" data-name="chkFilterSize10" name="filterSizeCds" value=""><span>M</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize11" data-name="chkFilterSize11" name="filterSizeCds" value=""><span>L</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize12" data-name="chkFilterSize12" name="filterSizeCds" value=""><span>XL</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize13" data-name="chkFilterSize13" name="filterSizeCds" value=""><span>FREE</span>
+											</label>
+										</li>
+										<li>
+											<strong>하의</strong>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize14" data-name="chkFilterSize14" name="filterSizeCds" value=""><span>44</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize15" data-name="chkFilterSize15" name="filterSizeCds" value=""><span>55</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize16" data-name="chkFilterSize16" name="filterSizeCds" value=""><span>66</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize17" data-name="chkFilterSize17" name="filterSizeCds" value=""><span>77</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize18" data-name="chkFilterSize18" name="filterSizeCds" value=""><span>26</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize19" data-name="chkFilterSize19" name="filterSizeCds" value="" checked><span>27</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize20" data-name="chkFilterSize20" name="filterSizeCds" value="" checked><span>28</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize21" data-name="chkFilterSize21" name="filterSizeCds" value=""><span>29</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize22" data-name="chkFilterSize22" name="filterSizeCds" value=""><span>30</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize23" data-name="chkFilterSize23" name="filterSizeCds" value=""><span>32</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize24" data-name="chkFilterSize24" name="filterSizeCds" value=""><span>33</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize25" data-name="chkFilterSize25" name="filterSizeCds" value=""><span>34</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize26" data-name="chkFilterSize26" name="filterSizeCds" value=""><span>M</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize27" data-name="chkFilterSize27" name="filterSizeCds" value=""><span>L</span>
+											</label>
+										</li>
+										<li>
+											<strong>신발</strong>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize28" data-name="chkFilterSize28" name="filterSizeCds" value=""><span>120</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize29" data-name="chkFilterSize29" name="filterSizeCds" value=""><span>130</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize30" data-name="chkFilterSize30" name="filterSizeCds" value=""><span>140</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize31" data-name="chkFilterSize31" name="filterSizeCds" value=""><span>150</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize32" data-name="chkFilterSize32" name="filterSizeCds" value=""><span>140</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize33" data-name="chkFilterSize33" name="filterSizeCds" value=""><span>150</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize34" data-name="chkFilterSize34" name="filterSizeCds" value=""><span>220</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize35" data-name="chkFilterSize35" name="filterSizeCds" value=""><span>230</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize36" data-name="chkFilterSize36" name="filterSizeCds" value=""><span>235</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize37" data-name="chkFilterSize37" name="filterSizeCds" value=""><span>240</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize38" data-name="chkFilterSize38" name="filterSizeCds" value=""><span>245</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize39" data-name="chkFilterSize39" name="filterSizeCds" value=""><span>250</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize40" data-name="chkFilterSize40" name="filterSizeCds" value=""><span>255</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize41" data-name="chkFilterSize41" name="filterSizeCds" value=""><span>260</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize42" data-name="chkFilterSize42" name="filterSizeCds" value=""><span>265</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize43" data-name="chkFilterSize43" name="filterSizeCds" value=""><span>270</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize44" data-name="chkFilterSize44" name="filterSizeCds" value=""><span>275</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize45" data-name="chkFilterSize45" name="filterSizeCds" value=""><span>280</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize46" data-name="chkFilterSize46" name="filterSizeCds" value=""><span>285</span>
+											</label>
+											<label class="size_btn">
+												<input type="checkbox" group="filterValue" id="chkFilterSize47" data-name="chkFilterSize47" name="filterSizeCds" value=""><span>290</span>
+											</label>
+										</li>
+									</ul>
+								</div>
+							</li>
+							<li class="price">
+								<a href="javascript:void(0)" class="daps1">가격<span class="pic">230,000원~487,000원, 700,000원~990,000원</span></a>
+								<ul class="daps2">
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="price1" type="checkbox"><label for="price1"> <span>9천원 이하</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="price2" type="checkbox"><label for="price2"> <span>9천원 ~ 23만원</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="price3" type="checkbox" checked><label for="price3"> <span>23만원 ~ 48만원 7천원</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="price4" type="checkbox" ><label for="price4"> <span>48만원 7천원 ~ 79만원</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="price5" type="checkbox" checked><label for="price5"> <span>70만원 ~ 99만원</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="price6" type="checkbox"><label for="price6"> <span>99만원 ~ 136만원</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="price7" type="checkbox"><label for="price7"> <span>136만원 ~ 179만원 9천원</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+								</ul>
+							</li>
+							<li class="discount">
+								<a href="javascript:void(0)" class="daps1">할인율</a>
+								<ul class="daps2">
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount1" type="checkbox"><label for="discount1"> <span>10% 이하</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount2" type="checkbox"><label for="discount2"> <span>10~20%</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount3" type="checkbox"><label for="discount3"> <span>20~30%</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount4" type="checkbox"><label for="discount4"> <span>30~40%</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount5" type="checkbox"><label for="discount5"> <span>40~50%</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount6" type="checkbox"><label for="discount6"> <span>50~60%</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount7" type="checkbox"><label for="discount7"> <span>60~70%</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount8" type="checkbox"><label for="discount8"> <span>70~80%</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount9" type="checkbox"><label for="discount9"> <span>80~90%</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="discount10" type="checkbox"><label for="discount10"> <span>90이상</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+								</ul>
+							</li>
+							<li class="age">
+								<a href="javascript:void(0)" class="daps1">연령</a>
+								<ul class="daps2">
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="age1" type="checkbox"><label for="age1"> <span>베이비(0~36개월)</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="age2" type="checkbox"><label for="age2"> <span>키즈(4세~7세)</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="age3" type="checkbox"><label for="age3"> <span>주니어(7세~13세)</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+								</ul>
+							</li>
+							<li class="season">
+								<a href="javascript:void(0)" class="daps1">시즌</a>
+								<ul class="daps2">
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="season1" type="checkbox"><label for="season1"> <span>봄</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="season2" type="checkbox"><label for="season2"> <span>여름</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="season3" type="checkbox"><label for="season3"> <span>가을</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="season4" type="checkbox"><label for="season4"> <span>겨울</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="season5" type="checkbox"><label for="season5"> <span>사계절</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+								</ul>
+							</li>
+							<li class="color">
+								<a href="javascript:void(0)" class="daps1">컬러
+									<span class="pic">
+                                            <span class="pdColor-color01"></span><span class="pdColor-color02"></span>
+                                        </span>
+								</a>
+								<div class="daps2">
+									<ul class="colorbox">
+										<li>
+											<label class="color-check">
+												<input type="checkbox" checked>
+												<span class="pdColor-color01"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox" checked>
+												<span class="pdColor-color02"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color03"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color04"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color05"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color06"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color07"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color08"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color09"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color10"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color11"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color12"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color13"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color14"></span>
+											</label>
+										</li>
+										<li>
+											<label class="color-check">
+												<input type="checkbox">
+												<span class="pdColor-color15"></span>
+											</label>
+										</li>
+									</ul>
+								</div>
+							</li>
+							<li class="benefit">
+								<a href="javascript:void(0)" class="daps1">혜택</a>
+								<ul class="daps2">
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="benefit1" type="checkbox"><label for="benefit1"> <span>남여 공용만 보기</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="benefit2" type="checkbox"><label for="benefit2"> <span>신상품만 보기</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="benefit3" type="checkbox"><label for="benefit3"> <span>남여 공용만 보기</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="benefit4" type="checkbox"><label for="benefit4"> <span>신상품만 보기</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="benefit5" type="checkbox"><label for="benefit5"> <span>남여 공용만 보기</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+									<li>
+										<a href="javascript:void(0)">
+											<div class="form_field">
+												<div>
+													<input id="benefit6" type="checkbox"><label for="benefit6"> <span>신상품만 보기</span> </label>
+												</div>
+											</div>
+										</a>
+									</li>
+								</ul>
+							</li>
+						</ul>
+						<!-- //필터메뉴 -->
+					</div>
+				</div>
+			</div>
+		</div>
+		<!-- //필터 -->
+
+		<!-- 카테고리 -->
+		<div class="category_box">
+			<div class="lap">
+				<div class="category_close">카테고리닫기</div>
+				<div class="category_list">
+					<!-- 카테고리 선택 -->
+					<div class="selcet_list">
+						<ul>
+							<li class="active"><a href="javascript:void(0)">최신상품순</a></li>
+							<li><a href="javascript:void(0)">인기많은순</a></li>
+							<li><a href="javascript:void(0)">리뷰많은순</a></li>
+						</ul>
+					</div>
+					<!-- //카테고리 선택 -->
+				</div>
+			</div>
+		</div>
+		<!-- //카테고리 -->
+
+		<!-- 제품네비 -->
+		<div class="nav_box">
+			<div class="lap">
+				<div class="nav_close">네비닫기</div>
+				<div class="nav_list">
+					<!-- 카테고리 선택 -->
+					<div class="nav">
+						<ul>
+							<li class="active">
+								<a href="javascript:void(0)" class="daps1">여성</a>
+								<ul class="daps2">
+									<li><a href="#none">전체</a></li>
+									<li><a href="#none">티셔츠/셔츠</a></li>
+									<li class="on"><a href="#none">니트/가디건/베스트</a></li>
+									<li><a href="#none">원피스/스커트</a></li>
+									<li><a href="#none">팬츠/데님/레깅스</a></li>
+									<li><a href="#none">자켓/점퍼/코트</a></li>
+									<li><a href="#none">여성잡화</a></li>
+									<li><a href="#none">언더웨어</a></li>
+								</ul>
+							</li>
+						</ul>
+					</div>
+					<!-- //카테고리 선택 -->
+				</div>
+			</div>
+		</div>
+		<!-- //제품네비 -->
+
+		<!-- 210415_최신상품순 리스트 팝업 추가 -->
+		<div id="odDatePop" class="popup_box odDatePop">
+			<div class="lap">
+				<div class="popup_close">카테고리닫기</div>
+				<div class="popup_head sr-only">
+					<h2 class="">기간 선택 팝업</h2>
+				</div>
+				<div class="popup_con">
+					<div class="button_list clear">
+						<button type="button" class="on"><span>최신상품순</span></button>
+						<button type="button"><span>인기많은순</span></button>
+						<button type="button"><span>리뷰많은순</span></button>
+					</div>
+				</div>
+			</div>
+		</div>
+	</main>
+</th:block>
+
+<script th:inline="javascript">
+	$(document).ready(function(){
+
+		//네비
+		var bodyChk = 0;
+		function navi(){
+
+			var navOpen=$("#htopTitle");
+			var navClose=$(".nav_box .nav_close");
+			var navPop=$(".nav_box");
+
+			navOpen.on("click",function(){
+				if($(this).hasClass("on")){
+					$(this).removeClass("on")
+					navPop.hide();
+					$("body").css({"overflow":"visible"});
+					bodyChk = 1;
+				}else{
+					$(this).addClass("on")
+					navPop.show();
+					navPop.addClass("on");
+					$("body").css({"overflow":"hidden"});
+					bodyChk = 0;
+				}
+
+
+			});
+
+			navClose.on("click",function(){
+				$(this).removeClass("on");
+				navPop.hide();
+				$("body").css({"overflow":"visible"});
+				$("#htopTitle").removeClass("on");
+			});
+
+			if(bodyChk === 0){
+				$('body').on('scroll touchmove mousewheel', function(event) { // 터치무브와 마우스휠 스크롤 방지
+					event.preventDefault();
+					event.stopPropagation();
+					return false;
+				});
+			}
+		}
+		navi();
+
+		//카테고리
+		function category(){
+			var categoryOpen=$(".open_categori .select_dress");
+			var categoryClose=$(".category_box .category_close");
+			var categoryPop=$(".category_box");
+
+			categoryOpen.on("click",function(){
+				categoryPop.show();
+				categoryPop.addClass("active");
+
+			});
+
+			categoryClose.on("click",function(){
+				categoryPop.hide();
+				$("body").css({"overflow":"visible"});
+			});
+		}
+		category();
+
+		//필터
+		function filter(){
+			var filterOpen=$(".open_filter");
+			var filterClose=$(".filter_box .close");
+			var filterPop=$(".filter_box");
+			var filter=$(".filter_body > ul");
+			var dap1=$(".filter_body > ul .daps1");
+			var dap2=$(".filter_body > ul .daps2");
+			var dap3=$(".filter_body > ul .daps3");
+			var dap4=$(".filter_body > ul .daps4");
+			var dap5=$(".filter_body > ul .daps5");
+			var dap2A=$(".filter_body > ul .daps2 > li > a");
+			var dap3A=$(".filter_body > ul .daps3 > li > a");
+			var dap4A=$(".filter_body > ul .daps4 > li > a");
+			var dap5A=$(".filter_body > ul .daps5 > li > a");
+
+			/* 필터모달 > 열기,닫기 */
+			filterOpen.on("click",function(){
+				filterPop.addClass("active");
+				$("body").css({"overflow":"hidden"});
+			});
+
+			filterClose.on("click",function(){
+				filterPop.removeClass("active");
+				$("body").css({"overflow":"visible"});
+			});
+
+			/* 필터메뉴 > 댑스열고, 닫기 */
+			dap1.on("click",function(){
+				if($(this).hasClass("on")){
+					$(this).removeClass("on");
+					$(this).next(dap2).slideUp();
+				}else{
+					$(this).addClass("on");
+					$(this).next(dap2).slideDown();
+				}
+			});
+
+			dap2A.on("click",function(){
+				if($(this).hasClass("on")){
+					$(this).removeClass("on");
+					$(this).next(dap3).slideUp();
+				}else{
+					$(this).addClass("on");
+					$(this).next(dap3).slideDown();
+				}
+			});
+
+			dap3A.on("click",function(){
+				if($(this).hasClass("on")){
+					$(this).removeClass("on");
+					$(this).next(dap4).slideUp();
+				}else{
+					$(this).addClass("on");
+					$(this).next(dap4).slideDown();
+				}
+			});
+
+			dap4A.on("click",function(){
+				if($(this).hasClass("on")){
+					$(this).removeClass("on");
+					$(this).next(dap5).slideUp();
+				}else{
+					$(this).addClass("on");
+					$(this).next(dap5).slideDown();
+				}
+			});
+
+			dap5A.on("click",function(){
+				if($(this).hasClass("on")){
+					$(this).removeClass("on");
+					//$(this).next(dap6).slideUp();
+				}else{
+					$(this).addClass("on");
+					//$(this).next(dap6).slideDown();
+				}
+			});
+		}
+		filter();
+
+		// 210415_팝업관련 추가
+		//기간 선택 팝업
+		$(document).on("click", ".open_categori", function(){
+			$('#odDatePop').show().addClass("active");
+			$("body").css({"overflow":"hidden"});
+		});
+		//팝업_닫기
+		$('.popup_close').on("click",function(){
+			$('.popup_box').hide().removeClass('active');
+			$("body").css({"overflow":"visible"});
+		});
+		// 210415_팝업 테두리 선택 추가
+		$(document).ready(function(){
+			$(document).on('click','.popup_box .button_list button',function(){
+				$('.popup_box .button_list button').removeClass('on');
+				$(this).addClass('on');
+			})
+		});
+
+		$('.dp .filter_box .filter_con').scroll(function(){
+			//$(".dp .filter_box .filter_con").css("border-bottom", "0px none");
+			//console.log($(".dp .filter_box .filter_con").scrollTop());
+			if($(".dp .filter_box .filter_con").scrollTop() === 0){
+				$(".dp .filter_box .filter_top").css("box-shadow", "none");
+				//$(".dp .filter_box .filter_con").css("border-bottom", "1px solid #eee");
+			} else {
+				$(".dp .filter_box .filter_top").css("box-shadow", "0px 3px 15px 0px rgba(0,0,0,0.30)");
+			}
+		});
+
+		//210510_추가 : 토스트 팝업 button 클릭 시 팝업 닫기.
+		$(document).on('click','.popup_box.odDatePop .button_list button',function(){
+			$(this).parents('.popup_box.odDatePop').hide().removeClass('active');
+			$("body").css({"overflow":"visible"});
+		})
+
+	});
+</script>
+
+</body>
+</html>

+ 154 - 164
src/main/webapp/WEB-INF/views/mob/display/LookbookMainFormMob.html

@@ -27,7 +27,7 @@
 				<div class="list_content"> <!-- 데이터 없을시 클래스 nodata 추가 -->
 					<div class="count_wrap">
 						<div>
-							<p><span>9999</span>개의 상품</p>
+							<p><span id="totCnt"></span>개의 상품</p>
 						</div>
 						<div>
 							<ul class="dp_util">
@@ -52,113 +52,14 @@
 						<button type="button" class="btn btn_default"><span>홈으로 가기</span></button>
 					</div>
 					<div class="lookbookGrp">
-						<div class="swiper_filter brand">
-							<div class="cate_wrap">
-								<a href="javascript:;">전체</a>
-								<a href="javascript:;">티셔츠/셔츠</a>
-								<a href="javascript:;">니트/가디건/베스트</a>
-								<a href="javascript:;">원피스/스커트</a>
-								<a href="javascript:;">팬츠/데님/레깅스</a>
-								<a href="javascript:;">가죽/모피</a>
-								<a href="javascript:;">여성 잡화</a>
-								<a href="javascript:;">언더웨어</a>
-								<a href="javascript:;">세트</a>
-								<a href="javascript:;">니트/가디건/베스트</a>
-								<a href="javascript:;">원피스/스커트</a>
-								<a href="javascript:;">가죽/모피</a>
-								<a href="javascript:;">여성 잡화</a>
+						<div class="swiper_filter brand" id="filterChkArea">
+							<div class="cate_wrap" id="chkBrand">
+								<a href="javascript:void(0);" onclick="fnReset();">전체</a>
 							</div>
-							<div class="btnbox"><a href="#none" class="reset">새로고침</a></div>
+							<div class="btnbox"><a href="javascript:void(0);" class="reset" onclick="fnReset();">새로고침</a></div>
 						</div>
-						<ul class="event_con">
-							<li>
-								<a href="">
-									<div class="ev_img">
-										<img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">
-									</div>
-									<div class="ev_txt">
-										<p class="brand">TBJ 외</p>
-										<p class="tit">2020 F/W COLLECTION 2020</p>
-									</div>
-								</a>
-							</li>
-							<li>
-								<a href="">
-									<div class="ev_img">
-										<img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">
-									</div>
-									<div class="ev_txt">
-										<p class="brand">TBJ 외</p>
-										<p class="tit">2020 F/W COLLECTION 2020</p>
-									</div>
-								</a>
-							</li>
-							<li>
-								<a href="">
-									<div class="ev_img">
-										<img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">
-									</div>
-									<div class="ev_txt">
-										<p class="brand">TBJ 외</p>
-										<p class="tit">2020 F/W COLLECTION 2020</p>
-									</div>
-								</a>
-							</li>
-							<li>
-								<a href="">
-									<div class="ev_img">
-										<img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">
-									</div>
-									<div class="ev_txt">
-										<p class="brand">TBJ 외</p>
-										<p class="tit">2020 F/W COLLECTION 2020</p>
-									</div>
-								</a>
-							</li>
-							<li>
-								<a href="">
-									<div class="ev_img">
-										<img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">
-									</div>
-									<div class="ev_txt">
-										<p class="brand">TBJ 외</p>
-										<p class="tit">2020 F/W COLLECTION 2020</p>
-									</div>
-								</a>
-							</li>
-							<li>
-								<a href="">
-									<div class="ev_img">
-										<img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">
-									</div>
-									<div class="ev_txt">
-										<p class="brand">TBJ 외</p>
-										<p class="tit">2020 F/W COLLECTION 2020</p>
-									</div>
-								</a>
-							</li>
-							<li>
-								<a href="">
-									<div class="ev_img">
-										<img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">
-									</div>
-									<div class="ev_txt">
-										<p class="brand">TBJ 외</p>
-										<p class="tit">2020 F/W COLLECTION 2020</p>
-									</div>
-								</a>
-							</li>
-							<li>
-								<a href="">
-									<div class="ev_img">
-										<img src="/images/pc/thumb/ev_list_img01.jpg" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">
-									</div>
-									<div class="ev_txt">
-										<p class="brand">TBJ 외</p>
-										<p class="tit">2020 F/W COLLECTION 2020</p>
-									</div>
-								</a>
-							</li>
+						<ul class="event_con" id="lookbookArea">
+
 						</ul>
 					</div>
 					<div class="list_last">마지막페이지 입니다.</div>
@@ -167,36 +68,6 @@
 			</div>
 		</section>
 
-		<!-- 카테고리 -->
-		<div class="category_box lookbook">
-			<div class="lap">
-				<div class="category_close">카테고리닫기</div>
-				<div class="category_list">
-					<!-- 카테고리 선택 -->
-					<div class="selcet_list">
-						<ul>
-							<li class="active"><a href="javascript:void(0)">전체</a></li>
-							<li><a href="javascript:void(0)">BUCKAROO</a></li>
-							<li><a href="javascript:void(0)">TBJ</a></li>
-							<li><a href="javascript:void(0)">ANDEW</a></li>
-							<li><a href="javascript:void(0)">FRJ</a></li>
-							<li><a href="javascript:void(0)">LPGA골프</a></li>
-						</ul>
-					</div>
-					<!-- 카테고리 선택 -->
-				</div>
-				<div class="category_floormenu"><!--  ☞☞ 제품이 품절되면 soldout클래스 추가 -->
-					<div>
-						<button class="reset"><span>초기화</span></button>
-					</div>
-					<div>
-						<button class="apply"><span>적용</span></button>
-					</div>
-				</div>
-			</div>
-		</div>
-		<!-- //카테고리 -->
-
 		<!-- 210415_최신상품순 리스트 팝업 추가 -->
 		<div id="odDatePop" class="popup_box odDatePop">
 			<div class="lap">
@@ -205,22 +76,17 @@
 					<h2 class="">기간 선택 팝업</h2>
 				</div>
 				<div class="popup_con">
-					<div class="button_list clear">
-						<button type="button" class="on"><span>전체</span></button>
-						<button type="button"><span>BUCKAROO</span></button>
-						<button type="button"><span>TBJ</span></button>
-						<button type="button"><span>ANDEW</span></button>
-						<button type="button"><span>FRJ</span></button>
+					<div class="button_list clear" id="brandArea">
 					</div>
 				</div>
 			</div>
 			<div class="brand_floormenu"><!--  ☞☞ 제품이 품절되면 soldout클래스 추가 -->
 				<div class="share_like">
-					<button class="refresh">초기화</button>
+					<button class="refresh" onclick="fnReset();">초기화</button>
 					<!--<button class="like">위시리스트</button>-->
 				</div>
 				<div class="prd_buy">
-					<button class="buying btPop_auto" id="btn_purchase">적용</button>
+					<button class="buying" onclick="fnGetBrandLookbookList();">적용</button> <!-- id="btn_purchase"-->
 					<button class="cantbuying">SOLD OUT</button>
 				</div>
 			</div>
@@ -229,7 +95,150 @@
 
 <script th:inline="javascript">
 	/*<![CDATA[*/
+	var currUrl = document.location.href;
+
+	var lookbookGb = [[${lbInfo.lookbookGb}]];
+	if(lookbookGb != 'BL'){
+		lookbookGb = 'L';
+	}else{
+		$(".dp_util .open_categori").hide();
+		$("#filterChkArea").hide();
+	}
+	var brandCd = [[${lbInfo.brandCd}]];
+
+	let fnGetLookbookList = function (lookbookGb, brandGroupNo){
+		let actionUrl = '/display/lookbook/main/list?lookbookGb='+lookbookGb;
+		if (!gagajf.isNull(brandGroupNo)) actionUrl += '&multiBrandCd=' + brandGroupNo;
+
+		$.getJSON(actionUrl , function (result, status){
+			if (status == 'success'){
+				if (result.length > 0){
+					$("#totCnt").html('<span>' + result.length.addComma() + '</span>');
+
+					if (gagajf.isNull(brandGroupNo)){
+						$('#brandArea').html('');
+						let tag = '';
+						let tag3 = '';
+						let brandArr = [];
+						tag += '<button type="button" data-name="" class="on" onclick="fnAddBrand(\'\');"><span>전체</span></button>\n';
+						$.each(result, function(idx, item) {
+							if(!brandArr.includes(item.brandCd)){
+								brandArr.push(item.brandCd);
+								tag += '<button type="button" id="chkFilterBrand'+idx+'" data-name="'+item.brandCd+'" onclick="fnAddBrand(\''+item.brandCd+'\');"><span>'+item.brandNm+'</span></button>\n';
+							}
+						});
+						$('#brandArea').html(tag);
+					}else{
+						var html = '';
+						let onCnt = 0;
+						$(".button_list button").each(function (index) {
+							if($(this).hasClass("on")){
+								var brandCd = $(this).attr("data-name");
+								var brandNm = $(this).find('span').text();
+								html += '<a href="javascript:void(0);" onclick="fnDeleteBrandFilter(\''+brandCd+'\');">'+brandNm+'</a>';
+								$('#chkBrand').html(html);
+								onCnt++;
+							}
+						});
+
+						if(onCnt<1){
+							$(".button_list button").each(function (index) {
+								if(gagajf.isNull($(this).attr('data-name'))){
+									$(this).addClass("on");
+								}
+							});
+							$('#chkBrand').html('<a href="javascript:void(0);" onclick="fnReset();">전체</a>');
+						}
+					}
+
+					var tag2 = '';
+					$.each(result, function(idx, item){
+						tag2 += '<li>\n';
+						tag2 += '	<a href="javascript:void(0);" onclick="cfnGoToLookbookDetail(\''+lookbookGb+'\','+item.lookbookSq+','+item.brandCd+')">\n';
+						tag2 += '		<div class="ev_img">\n';
+						tag2 += '			<img src="' + _imgUrl + item.orgTnfileNm + '" alt="ATTENTION! 20FW HOLIDAY TBJ 주목할 홀리데이 TBJ 컬렉션">\n';
+						tag2 += '		</div>\n';
+						tag2 += '		<div class="ev_txt">\n';
+						if(lookbookGb != 'BL') {
+							tag2 += '			<p class="brand">' + item.brandNm + '</p>\n';
+						}
+						tag2 += '			<p class="tit">'+item.title+'</p>\n';
+						tag2 += '		</div>\n';
+						tag2 += '	</a>\n';
+						tag2 += '</li>\n';
+					});
+					$('#lookbookArea').html(tag2);
+					$('#divLookbookNoData').hide();
+					$('#lookbookArea').show();
+				}else{
+					$("#totCnt").html('<span>0</span>');
+					//document.getElementById("changeClass").class = "event_list no_data";
+					$('#lookbookArea').hide();
+					$('#divLookbookNoData').show();
+				}
+			}
+			//document.getElementById("brandBox").class = "btn btn_default tgl_dropdown";
+			$('.dropdown_menu').hide();
+		});
+	}
+
+	// 필터 브랜드 선택시
+	var fnAddBrand = function (obj){
+		$(".button_list button").each(function (index) {
+			if(gagajf.isNull(obj)){
+				if($(this).attr('data-name') != ''){
+					$(this).removeClass();
+				}
+			}else{
+				if($(this).attr('data-name') == ''){
+					$(this).removeClass();
+				}
+			}
+		});
+	}
+
+	// 선택된 브랜드 조회
+	var fnGetBrandLookbookList = function (){
+		var multiBrandCd = [];
+		$(".button_list button").each(function (index) {
+			if($(this).hasClass("on")){
+				multiBrandCd.push($(this).attr('data-name'));
+			}
+		});
+		$('#chkBrand').html('');
+		fnGetLookbookList(lookbookGb,multiBrandCd);
+	}
+
+	// 초기화버튼
+	var fnReset = function (){
+		// var multiBrandCd = [];
+		// $('#chkBrand').html('');
+		// fnGetLookbookList(lookbookGb,multiBrandCd);
+		// $(".popup_close").click();
+		document.location.href = currUrl;
+	}
+
+	// 리스트상단 필터 리스트에서 삭제 시
+	var fnDeleteBrandFilter = function (brandGroupNo){
+		$(".button_list button").each(function (index) {
+			if($(this).hasClass("on")){
+				if(brandGroupNo == $(this).attr('data-name')){
+					$(this).removeClass();
+				}
+			}
+		});
+
+		fnGetBrandLookbookList();
+	}
+
 	$(document).ready(function(){
+		fnGetLookbookList(lookbookGb,brandCd);
+
+		if(lookbookGb=='BL'){
+			$("#btnHome").attr('onclick', 'cfnGoToBrandMain('+brandCd+');');
+		}else{
+			$("#btnHome").attr('href', '/');
+		}
 
 		$(document).on('click','.sub_category .more_btn',function(){
 			$(this).toggleClass('on');
@@ -241,26 +250,6 @@
 			}
 		});
 
-
-		//카테고리
-		function category(){
-			var categoryOpen=$(".open_categori .select_dress");
-			var categoryClose=$(".category_box .category_close");
-			var categoryPop=$(".category_box");
-
-			categoryOpen.on("click",function(){
-				categoryPop.show();
-				categoryPop.addClass("active");
-				$("body").css({"overflow":"hidden"});
-			});
-
-			categoryClose.on("click",function(){
-				categoryPop.hide();
-				$("body").css({"overflow":"visible"});
-			});
-		}
-		category();
-
 		// 210415_팝업관련 추가
 		//기간 선택 팝업
 		$(document).on("click", ".open_categori", function(){
@@ -292,6 +281,7 @@
 		});
 
 	});
+
 	/*]]>*/
 </script>
 

+ 2 - 84
src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html

@@ -32,20 +32,6 @@
 	<!-- 고객정보 -->
 	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo" id="orderInfo">
 		<tbody>
-			<tr style="height:30px;">
-				<th>custNm</th>
-				<th>email</th>
-				<th>cellPhnno</th>
-				<th>recipNm</th>
-				<th>recipPhnno</th>
-				<th>recipZipcode</th>
-				<th>recipBaseAddr</th>
-				<th>recipDtlAddr</th>
-				<th>delvMemo</th>
-				<th>sexGb</th>
-				<th>birthYmd</th>
-				<th>giftPackYn</th>
-			</tr>
 			<tr style="height:30px;">
 				<td class="custNm"></td>
 				<td class="email"></td>
@@ -66,12 +52,6 @@
 	
 	<!-- 사은품정보 -->
 	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="freegiftInfo">
-		<tr style="height:30px;">
-			<th>freegiftValArr</th>
-			<th>freegiftUsePointArr</th>
-			<th>freegiftSqArr</th>
-			<th>freegiftGoodsArr</th>
-		</tr>
 		<tr style="height:30px;">
 			<td class="freegiftValArr"></td>
 			<td class="freegiftUsePointArr"></td>
@@ -83,43 +63,6 @@
 	
 	<!-- 주문상세금액 -->
 	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo" id="orderDetailInfo">
-		<tr style="height:30px;">
-			<th>cartSq</th>
-			<th style="display:none">goodsNm</th>
-			<th>goodsCd</th>
-			<th>goodsType</th>
-			<th>itemCd</th>
-			<th>optCd</th>
-			<th style="display:none">optCd1</th>
-			<th style="display:none">optCd2</th>
-			<th style="display:none">itemQtyr</th>
-			<th>orgCurrPrice</th>
-			<th>cpn1CpnSq</th>
-			<th>cpn1DcAmt</th>
-			<th>optAddPrice</th>
-			<th>goodsQty</th>
-			<th>ordAmt</th>
-			<th>tmtb1Sq</th>
-			<th>tmtb1DcAmt</th>
-			<th>tmtb2Sq</th>
-			<th>tmtb2DcAmt</th>
-			<th>goodsCpnSq</th>
-			<th>goodsCpnDcAmt</th>
-			<th>cartCpnSq</th>
-			<th>cartCpnDcAmt</th>
-			<th>prePntDcAmt1</th>
-			<th>dcSumAmt</th>
-			<th>pntDcAmt1</th>
-			<th>gfcdUseAmt1</th>
-			<th>realOrdAmt1</th>
-			<th>savePntAmt1</th>
-			<th>shotDelvYn</th>
-			<th>foreignYn</th>
-			<th>orderMadeYn</th>
-			<th>delvFeeCd</th>
-			<th>pntPrate</th>
-			<th>pntMrate</th>
-		</tr>
 		<th:block th:each="delvAllCart, index : ${delvAllCartList}">
 			<th:block th:if="${delvAllCart != null and #lists.size(delvAllCart) > 0}">
 				<th:block th:each="goods, i : ${delvAllCart}">
@@ -180,13 +123,6 @@
 	
 	<!-- 배송단위목록 -->
 	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo" id="delvFeeCdInfo">
-		<tr style="height:30px;">
-			<th>supplyCompCd</th>
-			<th>delvFeeCd</th>
-			<th>delvFee</th>
-			<th>delvCpnSq</th>
-			<th>delvCpnDcAmt</th>
-		</tr>
 		<th:block th:each="delvFeeCd, index : ${delvFeeCdList}">
 			<tr style="height:30px;">
 				<td class="supplyCompCd" th:text="${delvFeeCd.supplyCompCd}"></td>
@@ -201,25 +137,6 @@
 	
 	<!-- 주문금액합계 -->
 	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="orderSumAmtInfo" id="orderSumAmtInfo">
-		<tr style="height:30px;">
-			<th>orgGoodsSumAmt</th>
-			<th>delvSumAmt</th>
-			<th>freegiftUsePnt</th>
-			<th>cpn1DcSumAmt</th>
-			<th>ordSumAmt</th>
-			<th>tmtb1DcSumAmt</th>
-			<th>tmtb2DcSumAmt</th>
-			<th>tmtbDcSumAmt</th>
-			<th>goodsCpnDcSumAmt</th>
-			<th>cartCpnDcSumAmt</th>
-			<th>delvCpnDcSumAmt</th>
-			<th>cpnDcSumAmt</th>
-			<th>prePntDcAmt</th>
-			<th>pntDcSumAmt</th>
-			<th>gfcdUseSumAmt</th>
-			<th>realOrdSumAmt</th>
-			<th>savePntSumAmt</th>
-		</tr>
 		<tr style="height:30px;">
 			<td class="orgGoodsSumAmt">0</td>
 			<td class="delvSumAmt" th:text="${sumDelvFee}"></td>
@@ -2279,7 +2196,8 @@ var custCpnSumAmtCal = function() {
 		var dcSumAmt		= 0;
 		
 		// 주문금액 = ((판매가 - 즉시할인가) + 옵션추가금액) * 장바구니수량
-		orgGoodsSumAmt		= orgGoodsSumAmt + (orgCurrPrice + optAddPrice) * goodsQty;
+		//orgGoodsSumAmt		= orgGoodsSumAmt + (orgCurrPrice + optAddPrice) * goodsQty;
+		orgGoodsSumAmt		= orgGoodsSumAmt + orgCurrPrice;
 		cpn1DcSumAmt		= cpn1DcSumAmt + (cpn1DcAmt * goodsQty);
 		tmtb1DcSumAmt		= tmtb1DcSumAmt + tmtb1DcAmt;
 		tmtb2DcSumAmt		= tmtb2DcSumAmt + tmtb2DcAmt;

+ 10 - 15
src/main/webapp/WEB-INF/views/mob/planning/PlanningCustGradeBenefitFormMob.html

@@ -304,9 +304,8 @@
 
 		// 예정등급이 VIP가 아닌경우
 		if (Number(expctCustGrade.gradeCdNo) > 10) {
-			let nextGradeNo = Number(expctCustGrade.gradeCdNo)-10;				// 다음등급번호
-			let nextCustGradePolicy = fnGetNextGradePolicyInfo(nextGradeNo);	// 다음등급정책정보
-			fnNextGradeCondition(nextCustGradePolicy, expctCustGrade);			// 다음조건 알림
+			let nextGradeNo = 'G110_'+(Number(expctCustGrade.gradeCdNo)-10); // 다음등급번호
+			fnGetNextGradePolicyInfo(nextGradeNo);							 // 다음등급정책정보
 		} else {
 			fnDisplayVipText(expctCustGrade);
 		}
@@ -315,18 +314,14 @@
 
  	// 다음 등급정책
  	var fnGetNextGradePolicyInfo = function (nextGradeNo) {
-		let custGradePolicy = exptCustGradeMap.custGradePolicy;	// 등급별정책
-		let nextCustGradePolicy;
-		$(custGradePolicy).each(function(idx, item) {
-			if (Number(item.gradeCdNo) === nextGradeNo ) {
-				nextCustGradePolicy = item;
-			}
+		$.get('/planning/next/custgrade/info/' + nextGradeNo
+			, function (data) {
+				fnNextGradeCondition(data.nextCustGradePolicy);			// 다음조건 알림
 		});
-		return nextCustGradePolicy;
 	}
 
 	// 다음등급 조건 알림
-	var fnNextGradeCondition = function (nextCustGradePolicy, expctCustGrade) {
+	var fnNextGradeCondition = function (nextCustGradePolicy) {
 		let $etcGrade = $('#etcGrade');
 		let $sameVipGrade = $('#sameVipGrade');
 		let $vipGrade = $('#vipGrade');
@@ -337,13 +332,13 @@
 		let $nextGrde = $('#nextGrde');
 
 		let remnantBuyAmt = 0;
-		if (nextCustGradePolicy.minBuyAmt > expctCustGrade.sumRealOrdAmt) {
-			remnantBuyAmt = nextCustGradePolicy.minBuyAmt - expctCustGrade.sumRealOrdAmt;
+		if (nextCustGradePolicy.minBuyAmt > nextCustGradePolicy.sumRealOrdAmt) {
+			remnantBuyAmt = nextCustGradePolicy.minBuyAmt - nextCustGradePolicy.sumRealOrdAmt;
 		}
 
 		let remnantBuyCnt = 0;
-		if (nextCustGradePolicy.minBuyCnt > expctCustGrade.ordCnt) {
-			remnantBuyCnt = nextCustGradePolicy.minBuyCnt -  expctCustGrade.ordCnt;
+		if (nextCustGradePolicy.minBuyCnt > nextCustGradePolicy.ordCnt) {
+			remnantBuyCnt = nextCustGradePolicy.minBuyCnt -  nextCustGradePolicy.ordCnt;
 		}
 
 		$etcGrade.show();

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

@@ -1356,20 +1356,15 @@
 	// 쿠폰다운로드 콜백
 	var fnQuickCouponCallBack = function(result){
 		if (result.status == "200"){
-			let list = result.couonList;
-
-			list.forEach(function(coupon){
-				if (Number(coupon.custPubLimitQty) > 0){
-					if (Number(coupon.custPubLimitQty) <= Number(coupon.custCouponCnt)){
-						$('#coupon_'+ coupon.cpnId).html('<span>받기완료</span>');
-						$('#coupon_'+ coupon.cpnId).attr('disabled', true);
+			$.each(result.couponList, function (idx, item) {
+				if (Number(item.custPubLimitQty) > 0){
+					if (Number(item.custPubLimitQty) <= Number(item.custCouponCnt)){
+						$('#coupon_'+ item.cpnId).html('<span>받기완료</span>');
+						$('#coupon_'+ item.cpnId).attr('disabled', true);
 					}
 				}
 			});
-			
 		}			
-		//issueCouponBtn();
-		
 	}
 
 	

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

@@ -68,7 +68,7 @@
 	<script src="/ux/pc/js/slick.min.js"></script>
 	<script src="/ux/pc/js/jquery-ui.js"></script>
 	<script src="/ux/plugins/jquery.serializeObject.min.js"></script>
-	<script src="/ux/plugins/mcxdialog/mcxdialog_ui.js"></script>
+	<script src="/ux/pc/js/mcxdialog_ui.js"></script>
 	
 	<script type="text/javascript" src="https://ssl.daumcdn.net/dmaps/map_js_init/postcode.v2.js"></script>
 	<script src="https://www.google.com/recaptcha/api.js" async defer></script>

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

@@ -205,7 +205,7 @@
 							<th:block th:each="ContentsData, ContentsStat : ${mainLayoutData.ContentsList}">
 								<th:block th:if="${ContentsData.contentsType!=null && ContentsData.contentsType!=''}">
 									<div class="bnnbox_crop" th:if="${ContentsData.contentsType=='1'}">
-										<div class="bnn_half" style="width: 100%;height: 230px;float: none;overflow: hidden;">
+										<div class="" style="width: 100%;height: 230px;float: none;overflow: hidden;">
 											<a th:href="${ContentsData.strVar1}" target="_blank">
 												<img th:src="${@environment.getProperty('domain.image')+ContentsData.imgPath1}" alt="">
 											</a>

+ 2 - 64
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -34,19 +34,6 @@
 	<!-- 주문자정보 -->
 	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo" id="orderInfo">
 		<tbody>
-			<tr style="height:30px;">
-				<th>custNm</th>
-				<th>email</th>
-				<th>cellPhnno</th>
-				<th>recipNm</th>
-				<th>recipPhnno</th>
-				<th>recipZipcode</th>
-				<th>recipBaseAddr</th>
-				<th>recipDtlAddr</th>
-				<th>delvMemo</th>
-				<th>sexGb</th>
-				<th>birthYmd</th>
-			</tr>
 			<tr style="height:30px;">
 				<td class="custNm"></td>
 				<td class="email"></td>
@@ -66,12 +53,6 @@
 	
 	<!-- 사은품정보 -->
 	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="freegiftInfo">
-		<tr style="height:30px;">
-			<th>freegiftValArr</th>
-			<th>freegiftUsePointArr</th>
-			<th>freegiftSqArr</th>
-			<th>freegiftGoodsArr</th>
-		</tr>
 		<tr style="height:30px;">
 			<td class="freegiftValArr"></td>
 			<td class="freegiftUsePointArr"></td>
@@ -83,43 +64,6 @@
 	
 	<!-- 주문상세금액 -->
 	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo" id="orderDetailInfo">
-		<tr style="height:30px;">
-			<th>cartSq</th>
-			<th style="display:none">goodsNm</th>
-			<th>goodsCd</th>
-			<th>goodsType</th>
-			<th>itemCd</th>
-			<th>optCd</th>
-			<th style="display:none">optCd1</th>
-			<th style="display:none">optCd2</th>
-			<th style="display:none">itemQtyr</th>
-			<th>orgCurrPrice</th>
-			<th>cpn1CpnSq</th>
-			<th>cpn1DcAmt</th>
-			<th>optAddPrice</th>
-			<th>goodsQty</th>
-			<th>ordAmt</th>
-			<th>tmtb1Sq</th>
-			<th>tmtb1DcAmt</th>
-			<th>tmtb2Sq</th>
-			<th>tmtb2DcAmt</th>
-			<th>goodsCpnSq</th>
-			<th>goodsCpnDcAmt</th>
-			<th>cartCpnSq</th>
-			<th>cartCpnDcAmt</th>
-			<th>prePntDcAmt1</th>
-			<th>dcSumAmt</th>
-			<th>pntDcAmt1</th>
-			<th>gfcdUseAmt1</th>
-			<th>realOrdAmt1</th>
-			<th>savePntAmt1</th>
-			<th>shotDelvYn</th>
-			<th>foreignYn</th>
-			<th>orderMadeYn</th>
-			<th>delvFeeCd</th>
-			<th>pntPrate</th>
-			<th>pntMrate</th>
-		</tr>
 		<th:block th:each="delvAllCart, index : ${delvAllCartList}">
 			<th:block th:if="${delvAllCart != null and #lists.size(delvAllCart) > 0}">
 				<th:block th:each="goods, i : ${delvAllCart}">
@@ -180,13 +124,6 @@
 	
 	<!-- 배송단위목록 -->
 	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo" id="delvFeeCdInfo">
-		<tr style="height:30px;">
-			<th>supplyCompCd</th>
-			<th>delvFeeCd</th>
-			<th>delvFee</th>
-			<th>delvCpnSq</th>
-			<th>delvCpnDcAmt</th>
-		</tr>
 		<th:block th:each="delvFeeCd, index : ${delvFeeCdList}">
 			<tr style="height:30px;">
 				<td class="supplyCompCd" 	th:text="${delvFeeCd.supplyCompCd}"></td>
@@ -2178,7 +2115,8 @@ var custCpnSumAmtCal = function() {
 		var dcSumAmt		= 0;
 		
 		// 주문금액 = ((판매가 - 즉시할인가) + 옵션추가금액) * 장바구니수량
-		orgGoodsSumAmt		= orgGoodsSumAmt + (orgCurrPrice + optAddPrice) * goodsQty;
+		//orgGoodsSumAmt		= orgGoodsSumAmt + (orgCurrPrice + optAddPrice) * goodsQty;
+		orgGoodsSumAmt		= orgGoodsSumAmt + orgCurrPrice;
 		cpn1DcSumAmt		= cpn1DcSumAmt + (cpn1DcAmt * goodsQty);
 		tmtb1DcSumAmt		= tmtb1DcSumAmt + tmtb1DcAmt;
 		tmtb2DcSumAmt		= tmtb2DcSumAmt + tmtb2DcAmt;

+ 3 - 3
src/main/webapp/WEB-INF/views/web/planning/PlanningCustGradeBenefitFormWeb.html

@@ -277,8 +277,8 @@
 
 		// 예정등급이 VIP가 아닌경우
 		if (Number(expctCustGrade.gradeCdNo) > 10) {
-			let nextGradeNo = 'G110_'+(Number(expctCustGrade.gradeCdNo)-10);				// 다음등급번호
-			fnGetNextGradePolicyInfo(nextGradeNo);	// 다음등급정책정보
+			let nextGradeNo = 'G110_'+(Number(expctCustGrade.gradeCdNo)-10); // 다음등급번호
+			fnGetNextGradePolicyInfo(nextGradeNo);							 // 다음등급정책정보
 		} else {
 			fnDisplayVipText(expctCustGrade);
 		}
@@ -290,7 +290,7 @@
 		$.get('/planning/next/custgrade/info/' + nextGradeNo
 			, function (data) {
 				fnNextGradeCondition(data.nextCustGradePolicy);			// 다음조건 알림
-			});
+		});
 	}
 
 	// 다음등급 조건 알림

+ 0 - 1
src/main/webapp/biz/goods.js

@@ -224,7 +224,6 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 			var sizeVal = '';
 			var soldOutYn = '';
 			tag +='<div class="itemOpt">';
-			tag +='	<p>SIZE</p>';
 
 			if(sizeArr.length>5){
 				for(let i=0; i<sizeArr.length; i++){

+ 2 - 2
src/main/webapp/ux/mo/css/layout_m.css

@@ -369,7 +369,7 @@
 /* 슬라이드아이템*/
 .item_prod {display: inline-block;font-size: 0px;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 .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 2.0rem; font-weight: 500; color:#fff; background: rgba(0,0,0,.7); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 12; z-index: 20; text-align: center;}
+.item_prod .item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 2.0rem; font-weight: 500; color:#fff; background: rgba(0,0,0,.7); width: 100%; height: auto; transform:translate(-50%, -50%); line-height: 12; 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;}
 
 .item_prod .itemLike {position: absolute;top:1rem;right:1rem;font-size: 0px;z-index: 19;width: 1.7rem;height: 1.7rem; background: url('/images/mo/ico_like.png');background-size: 3.4rem;background-position:0px 0px;background-repeat: no-repeat;}
@@ -2234,7 +2234,7 @@ header .subs .dp_list_btn_gnbs.on span i {transform: rotate(-180deg);-webkit-tra
 .br .br_main .br_top_info .br_subtitle{text-align:left;}
 .br .br_main .br_top_info > p:nth-of-type(1){margin-bottom:1.6rem; font-weight:bold;}
 .br .br_main .br_top_info > p:nth-of-type(2){margin-bottom:1.2rem; color:#222; font-weight:500; line-height:2rem;}
-.br .br_main .br_top_info .btn_group_flex > div > button > span{display:inline-block; background:url(/images/mo/br_site.png) no-repeat; width:1.1rem; height:1.2rem; margin-left:0.8rem}
+.br .br_main .br_top_info .btn_group_flex > div > .btn > span{display:inline-block; background:url(/images/mo/br_site.png) no-repeat; width:1.1rem; height:1.2rem; margin-left:0.8rem}
 /* br_main - 이미지배너 */
 .br .br_main .br_second_slide{position:relative;}
 .br .br_main .br_second_slide .swiper-slide img{width:100%;}