Преглед изворни кода

Merge remote-tracking branch 'origin/jsh77b' into order

card007 пре 5 година
родитељ
комит
4e608ea18b
26 измењених фајлова са 239 додато и 152 уклоњено
  1. 39 6
      src/main/java/com/style24/front/biz/service/TsfOrderService.java
  2. 2 2
      src/main/java/com/style24/front/biz/service/TsfPlanningService.java
  3. 1 0
      src/main/java/com/style24/front/biz/web/TsfDisplayController.java
  4. 9 0
      src/main/java/com/style24/front/biz/web/TsfMypageController.java
  5. 30 20
      src/main/java/com/style24/front/biz/web/TsfOrderController.java
  6. 1 0
      src/main/java/com/style24/persistence/mybatis/shop/TsfPlanning.xml
  7. 14 25
      src/main/resources/config/application-style.yml
  8. 7 7
      src/main/webapp/WEB-INF/views/mob/mypage/MypageCancelFormMob.html
  9. 8 1
      src/main/webapp/WEB-INF/views/mob/mypage/MypageOrderDetailFormMob.html
  10. 7 2
      src/main/webapp/WEB-INF/views/mob/mypage/MypageOrderListInfoMob.html
  11. 20 2
      src/main/webapp/WEB-INF/views/mob/order/OrderCompleteMob.html
  12. 16 10
      src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html
  13. 2 2
      src/main/webapp/WEB-INF/views/mob/order/OrderFreegiftInfoMob.html
  14. 3 1
      src/main/webapp/WEB-INF/views/web/display/CategoryGoodsListFormWeb.html
  15. 1 1
      src/main/webapp/WEB-INF/views/web/mypage/MypageGiftcardFormWeb.html
  16. 8 6
      src/main/webapp/WEB-INF/views/web/mypage/MypageReviewDetailFormWeb.html
  17. 13 17
      src/main/webapp/WEB-INF/views/web/order/OrderCompleteWeb.html
  18. 1 1
      src/main/webapp/WEB-INF/views/web/order/OrderCouponApplyPopWeb.html
  19. 24 21
      src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html
  20. 5 3
      src/main/webapp/WEB-INF/views/web/order/OrderFreegiftInfoWeb.html
  21. 11 9
      src/main/webapp/WEB-INF/views/web/order/OrderPaymentInfoWeb.html
  22. 3 3
      src/main/webapp/WEB-INF/views/web/planning/PlanningEventAttendFormWeb.html
  23. 3 3
      src/main/webapp/WEB-INF/views/web/popup/DelvAddrModifyPopWeb.html
  24. 1 1
      src/main/webapp/biz/goods.js
  25. 5 4
      src/main/webapp/ux/pc/css/common.css
  26. 5 5
      src/main/webapp/ux/pc/css/layout.css

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

@@ -21,6 +21,7 @@ import com.style24.core.biz.dao.TscOrderDao;
 import com.style24.core.biz.service.TscKakaoPayService;
 import com.style24.core.biz.service.TscKcpService;
 import com.style24.core.biz.service.TscNaverPayService;
+import com.style24.core.biz.service.TscOrderService;
 import com.style24.core.support.env.TscConstants;
 import com.style24.front.biz.dao.TsfOrderDao;
 import com.style24.front.biz.dao.TsfRendererDao;
@@ -70,6 +71,9 @@ public class TsfOrderService {
 
 	@Autowired
 	private TsfRendererDao rendererDao;
+	
+	@Autowired
+	private TscOrderService coreOrderService;
 
 	@Autowired
 	private Environment env;
@@ -517,15 +521,39 @@ public class TsfOrderService {
 	 * @since 2021. 03. 09
 	 */
 	public String orderValidationCheck(Order order) {
+		String resultStr	= "SUCCESS";
+		
 		// 1. 주문상세체크
 		Collection<Order> orderDetailList = order.getOrderDetailList();
 		
+		// TODO 2021.05.07 1.1 장바구니 금액조회 정보 
+		order.setFrontGb(TsfSession.getFrontGb());
+		Collection<Order> cartGoodsList = coreOrderService.getCartGoodsList(order);
+		
+		int orderDetailCurrPriceSum 	= 0;
+		int orderDetailRealOrdAmtSum 	= 0;
+		int cartCurrPriceSum 			= 0;
+		int cartRealOrdAmtSum 			= 0;
+		
+		for (Order orderDetail : orderDetailList) {
+			orderDetailCurrPriceSum = orderDetailCurrPriceSum + orderDetail.getCurrPrice();
+			orderDetailRealOrdAmtSum = orderDetailRealOrdAmtSum + orderDetail.getRealOrdAmt();
+		}
+		
+		for (Order orderDetail : cartGoodsList) {
+			cartCurrPriceSum = orderDetailCurrPriceSum + orderDetail.getCurrPrice();
+		}
+		
+		// 판매가비교
+		if (orderDetailCurrPriceSum != cartCurrPriceSum) {
+			resultStr = "보유하신 상품쿠폰이 존재하지 않습니다.";
+			return resultStr;
+		}
+
 		int custCpnSq		= 0;
 		int usPntAmt		= 0;
 		int usGfcdAmt		= 0;
-		
-		String resultStr	= "SUCCESS";
-		
+
 		for (Order orderDetail : orderDetailList) {
 			
 			// TODO
@@ -645,13 +673,18 @@ public class TsfOrderService {
 			}
 		}
 		
-		// TODO 5. 사은품채고체크
+		// 6. 사은품채고체크
 		int rtnCnt = orderDao.getCheckFreegiftVal(order);
 		if (rtnCnt > 0) {
 			resultStr = "선택하신 사은품의 재고가 부족 합니다.";
 			return resultStr;
 		}
 		
+		// 7. 상품금액체크
+		
+		
+		
+		
 		return resultStr;
 		
 	}
@@ -662,8 +695,8 @@ public class TsfOrderService {
 	 * param.setOrdPhnno("01011111111");		// 현금영수증 대상 휴대폰번호
 	 * param.setUsGfcdAmt(10000);				// 현금영수증 신청 금액
 	 * param.setOrdNo(211);						// 주문번호
-	 * param.setGoodsNm("보라색 원피스");		// 상품명 (“7. 현금영수증 매출전표 연동” 을 통해 고객이 직접 전표를 확인코자 한다면 상품명을 넘겨주지 않았을 경우 구매자 인증 시 인증오류가 발생할 수 있습니다.)
-	 * param.setOrdNm("구매자");				// 구매자명
+	 * param.setGoodsNm("보라색 원피스");			// 상품명 (“7. 현금영수증 매출전표 연동” 을 통해 고객이 직접 전표를 확인코자 한다면 상품명을 넘겨주지 않았을 경우 구매자 인증 시 인증오류가 발생할 수 있습니다.)
+	 * param.setOrdNm("구매자");					// 구매자명
 	 * param.setOrdEmail("xxxx@xxxx.com");		// 구매자이메일 (“7. 현금영수증 매출전표 연동” 을 통해 고객이 직접 전표를 확인코자 한다면 메일주소를 넘겨주지 않았을 경우 구매자 인증 시 인증오류가 발생할 수 있습니다.)
 	 * @param param
 	 * @return

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

@@ -137,9 +137,9 @@ public class TsfPlanningService {
 			}
 		}
 
-		
 		if (!TsfSession.isLogin()) {
-			if (planningDao.getNonmemberGradeAccessible(plan) > 0) {
+			plan.setCustGrade("G110_60");
+			if ("N".equals(planningDao.getCustomerGradeAccessibleYn(plan))) {
 				msg = "로그인 후 이용 가능합니다.";
 			}
 		}

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

@@ -464,6 +464,7 @@ public class TsfDisplayController extends TsfBaseController {
 	@ResponseBody
 	public Collection<Lookbook> lookbooklist(Lookbook lookbook) {
 		lookbook.setFrontGb(TsfSession.getFrontGb());
+		lookbook.setFrontYn("Y");
 		return coreLookbookService.getLookbookList(lookbook);
 	}
 

+ 9 - 0
src/main/java/com/style24/front/biz/web/TsfMypageController.java

@@ -794,6 +794,15 @@ public class TsfMypageController extends TsfBaseController {
 		// 고객번호 설정
 		int custNo = TsfSession.getInfo().getCustNo();
 		order.setCustNo(custNo);
+		
+		// 2021.05.07 고객정보 조회
+		Customer customer = new Customer();
+		customer.setSiteCd(TscConstants.Site.STYLE24.value());
+		customer.setCustNo(custNo);
+		customer.setCustStat(TscConstants.CustStat.ACTIVE.value());
+		customer = coreCustomerService.getCustomerInfo(customer);
+		
+		mav.addObject("customerInfo", customer);
 
 		// 취소 가능 리스트 조회
 		GagaMap map = orderChangeService.getCancelListForMypage(order);

+ 30 - 20
src/main/java/com/style24/front/biz/web/TsfOrderController.java

@@ -267,7 +267,15 @@ public class TsfOrderController extends TsfBaseController {
 		
 		// 4.6 선물받기여부
 		mav.addObject("giftPackYn"			, giftPackYn);								// 선물받기여부
-
+		
+		// 2021.05.07 jsh77b id만 개발자모드허용
+		boolean devTempYn = false;
+		if (TsfSession.isLogin()) {
+			if ("jsh77b".equals(TsfSession.getInfo().getCustId())) {
+				devTempYn = true;
+			}
+		}
+		mav.addObject("devTempYn"			, devTempYn);								// 개발자모드가능여부
 		mav.setViewName(super.getDeviceViewName("order/OrderForm"));
 		
 		return mav;
@@ -493,8 +501,9 @@ public class TsfOrderController extends TsfBaseController {
 			order.setJsessionId(TsfSession.getSessionId());
 		}
 		
-		// 2. 즉시할인, 다다익선 할인금액 정보 적용 상품 정보
-		Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
+		// 2. 즉시할인, 다다익선 할인금액 정보 적용 상품 정보 (2021.05.07 화면에서전송)
+		//Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
+		Collection<Order> tmtbGoodsApplyList = order.getCartGoodsList();
 
 		// 3. 배송정보조회(장바구니상품목록)
 		GagaMap delvOrderMap = coreOrderService.getCartDelvGoodsCntList(tmtbGoodsApplyList, order);
@@ -600,8 +609,9 @@ public class TsfOrderController extends TsfBaseController {
 		// 2. 로그인체크 후 정보 설정 (할인구간정보조회)
 		if (TsfSession.isLogin()) {
 			
-			// 2.1 배송단위별 상품 목록 조회 (장바구니)
-			Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
+			// 2.1 배송단위별 상품 목록 조회 (장바구니) (2021.05.07 화면에서전송)
+			//Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
+			Collection<Order> tmtbGoodsApplyList = order.getCartGoodsList();
 			
 			// 2.2 상품금액, 선포인트, 다다익선할인금액
 			goodsDcAmtMap = coreOrderService.getGoodsDcAmt(tmtbGoodsApplyList);
@@ -839,29 +849,29 @@ public class TsfOrderController extends TsfBaseController {
 		 * temp.setPgTid("20210423952698");			// temp.setVaNo("110242222222");  >> PG 송부 후 result에서 값 입력하면됨
 		 *  */
 		
-		String[] goodsNameArr = new String[2]; goodsNameArr[0] ="테스트1";goodsNameArr[1] = "테스트2";
-		String[] goodsPriceArr = new String[2]; goodsPriceArr[0] ="20000";goodsPriceArr[1] = "22000";
-		String[] goodsQuantityArr = new String[2]; goodsQuantityArr[0] ="2";goodsQuantityArr[1] = "3";
-		
-		order.setItemNmArr(goodsNameArr);			// 상품명 배열
-		order.setGoodsPriceArr(goodsPriceArr);		// 상품별 가격 배열
-		order.setItemQtyArr(goodsQuantityArr);		// 상품별 수량 배열
-		order.setOrdNo(order.getOrdNo());			// 주문번호
-		order.setRealOrdAmt(53000);					// 결제금액
-		order.setBirthYmd("198912021");				// 생년월일 + 성별(남자 : 1, 여자 : 2)
-		order.setPayMeans(TscConstants.PayMeans.BANK_DEPOSIT.value());		// 무통장입금 or 계좌이체
+		String[] goodsNameArr 		= new String[2]; goodsNameArr[0] ="테스트1";goodsNameArr[1] = "테스트2";
+		String[] goodsPriceArr 		= new String[2]; goodsPriceArr[0] ="10000";goodsPriceArr[1] = "12000";
+		String[] goodsQuantityArr 	= new String[2]; goodsQuantityArr[0] ="2";goodsQuantityArr[1] = "3";
+		
+		order.setItemNmArr(goodsNameArr);		// 상품명 배열
+		order.setGoodsPriceArr(goodsPriceArr);	// 상품별 가격 배열
+		order.setItemQtyArr(goodsQuantityArr);	// 상품별 수량 배열
+		order.setOrdNo(order.getOrdNo());		// 주문번호
+		order.setRealOrdAmt(32000);				// 결제금액
+		order.setBirthYmd("198912021");			// 생년월일 + 성별(남자 : 1, 여자 : 2)
+		order.setPayMeans(TscConstants.PayMeans.ACCOUNT_TRANSFER.value());		// 무통장입금 or 계좌이체
 		order.setBankNm("신한은행");				// 은행명  >> PG 송부 후 result에서 값 입력하면됨
 		order.setOrdNm("이태영");					// 주문자명
-		order.setOrdTelno("");						// 주문자전화1 ("-" 포함)
-		order.setOrdPhnno("010-1234-5555");			// 주문자전화2 ("-" 포함)
-		order.setRecipZipcode("08755");				// 주문자우편번호
+		order.setOrdTelno("");					// 주문자전화1 ("-" 포함)
+		order.setOrdPhnno("010-1234-5555");		// 주문자전화2 ("-" 포함)
+		order.setRecipZipcode("08755");			// 주문자우편번호
 		order.setRecipAddr("서울시 관악구 신림동 1414-11 타워타워 101호");	// 주문자주소
 		order.setOrdEmail("xodud1202@naver.com");	// 주문자이메일
 		order.setRecipNm("이태영");					// 수령인명
 		order.setRecipTelno("");					// 수령인전화번호
 		order.setRecipPhnno("010-1234-5555");		// 수령인휴대폰번호
 		order.setCustNo(100010);					// 고객번호
-		order.setVaNo("110222119990");				// 가상계좌번호
+		order.setVaNo("110242222222");				// 가상계좌번호
 
 		// uSafeGuaranteeInsurance(order);
 		orderService.uSafeGuaranteeInsurance(order);

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

@@ -396,6 +396,7 @@
 		                       WHEN 'G110_30' THEN 'SILVER'
 		                       WHEN 'G110_40' THEN 'BRONZE'
 		                       WHEN 'G110_50' THEN 'WELCOME'
+		                       WHEN 'G110_60' THEN '비회원'
 		                       END AS CUST_GRADE
 		FROM TB_PLAN_CUST_GRADE 
 		WHERE PLAN_SQ = #{planSq}

+ 14 - 25
src/main/resources/config/application-style.yml

@@ -8,20 +8,9 @@ spring:
                 max-active: 10
                 max-idle: 10
                 min-idle: 2
-        host: 172.30.90.111
+        host: 172.30.87.5
         port: 6379
-        password:
-        cluster:
-            nodes:
-                172.30.90.111:6379
-                172.30.90.112:6379
-                172.30.90.113:6379
-                172.30.90.111:6380
-                172.30.90.112:6380
-                172.30.90.113:6380
-                172.30.90.111:6381
-                172.30.90.112:6381
-                172.30.90.113:6381
+        password: MdxpyGtipZSci6VhTpFdklXxb4Qv7zxEq3Jqg3ULekg=
 
 # SSL Server
 has-ssl: false
@@ -30,40 +19,40 @@ logging:
     config: classpath:log/logback-run.xml
 
 domain:
-    admin: //admin.style24.com
+    admin: //bos.style24.com
     front: //www.style24.com
-    image: //www.style24.com
+    image: //image.istyle24.com
     uximage: //www.style24.com
 
 
 upload:
     default:
-        target.path: /files/data/style24
+        target.path: /usr/local/data/style24
         max.size: 10
         allow.extension: jpg|gif|jpeg|png|bmp|txt|doc|docx|ppt|pptx|xls|xlsx|hwp|pdf
-        view: //image.style24.com
+        view: //image.istyle24.com
     goods:
-        target.path: /files/data/style24/Upload/ProductImage
+        target.path: /usr/local/data/style24/productimage
         max.size: 10
         allow.extension: jpg|gif|jpeg|png
         view: //image.istyle24.com/Upload/ProductImage
     image:
-        target.path: /files/data/style24
+        target.path: /usr/local/data/style24
         max.size: 10
         allow.extension: jpg|gif|jpeg|png
-        view: //image.style24.com
+        view: //image.istyle24.com
     excel:
-        target.path: /files/data/style24/excel
+        target.path: /usr/local/data/style24/excel
         max.size: 10
         allow.extension: xls|xlsx
-        view: //image.style24.com/excel
+        view: //image.istyle24.com/excel
     sample:
-        target.path: /files/data/style24/sample
+        target.path: /usr/local/data/style24/sample
         max.size: 10
         allow.extension: txt|doc|docx|ppt|pptx|xls|xlsx|hwp|pdf
         view: //image.style24.com/sample
 
-download.path: /files/data
+download.path: /usr/local/data
 
 # USAFE 보증보험 정보
 usafe.guarantee:
@@ -74,7 +63,7 @@ usafe.guarantee:
 # PG
 pg:
     kcp:
-        log.dir: /files/data/style24/logs/kcpLogs/front
+        log.dir: /logs/style24/kcpLogs/front
         gw:
             url: testpaygw.kcp.co.kr
             port: 8090

+ 7 - 7
src/main/webapp/WEB-INF/views/mob/mypage/MypageCancelFormMob.html

@@ -192,7 +192,7 @@
 				</div>
 				<div class="btn_group btn_group_flex">
 					<div><button type="button" class="btn btn_default" onclick="cfnGoToPage(_PAGE_MYPAGE_ORDER_LIST);"><span>취소</span></button></div>
-					<div><button type="button" id="btn_order_return" class="btn btn_dark" onclick="fnCancel();"><span>주문 취소</span></button></div>
+					<div><button type="button" class="btn btn_dark" onclick="fnCancel();"><span>주문 취소</span></button></div>
 				</div>
 			</div>
 		</form>
@@ -201,7 +201,7 @@
 
 <!-- 210408_취소 수량 선택 팝업 -->
 <th:block th:if="${cancelList.cancelList}" th:each="cancel, status : ${cancelList.cancelList}">
-	<div class="popup_box returnCountPop">
+	<div class="popup_box cancelCountPop">
 		<div class="lap">
 			<div class="popup_close">카테고리닫기</div>
 			<div class="popup_head sr-only">
@@ -210,7 +210,7 @@
 			<div class="popup_con">
 				<div class="button_list clear">
 					<button type="button" qty=0 onclick="fnChangeCancelQty(this);"><span>수량 0개</span></button>
-					<th:block th:each="num : ${#numbers.sequence(1,cancel.ordCanChgQty)}">
+					<th:block th:each="num : ${#numbers.sequence(1, cancel.ordCanChgQty)}">
 						<button type="button" th:qty="${num}" onclick="fnChangeCancelQty(this);"><span th:text="|수량 ${num}개|"></span></button>
 					</th:block>
 					<input type="hidden" name="ordDtlNo" th:value="${cancel.ordDtlNo}">
@@ -231,7 +231,7 @@
 		<div class="popup_con">
 			<div class="tbl_wrap">
 				<div class="tbl_tit"> 
-					<h3>환불 계좌 등록</h3><!-- 210409_수정 : 텍스트 변경 -->
+					<h3>환불 계좌 등록</h3>
 				</div>
 				<div class="tbl type1">
 					<table>
@@ -316,13 +316,13 @@ $(document).ready(function() {
 });
 
 // 취소수량버튼기능
-$(".select_custom.select_count").each(function(idx){
+$("#cancelForm .select_custom.select_count").each(function(idx){
 	$(this).on("click", function(){
 		// 전체비활성화
-		$(".returnCountPop").hide();
+		$(".cancelCountPop").hide();
 		
 		// 수량팝업활성화
-		$(".returnCountPop").eq(idx).show().addClass("active");
+		$(".cancelCountPop").eq(idx).show().addClass("active");
 		$("body").css({"overflow":"hidden"});
 	});
 });

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

@@ -123,8 +123,15 @@
 							<!-- 주문상태별 버튼기능 정의 -->
 							<!-- 일반주문 -->
 							<th:block th:unless="${ordDtl.giftPackYn} == 'Y'">
+								<!-- 입금대기 1:1문의 버튼(입금대기, 배송준비중, 구매확정) -->
+								<th:block th:if="${ordDtl.ordDtlStat == 'G013_10'}">
+									<div class="goods_btn_wrap btn_group_flex">
+										<div><button type="button" class="btn btn_default" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA_REG);"><span>1:1 문의</span></button></div>
+									</div>
+								</th:block>
+							
 								<!-- 입금대기, 결제완료, 상품준비중, 출고처지정 : 주문취소 -->
-								<th:block th:if="${ordDtl.ordDtlStat} == 'G013_10' or ${ordDtl.ordDtlStat} == 'G013_20' or ${ordDtl.ordDtlStat} == 'G013_30' or ${ordDtl.ordDtlStat} == 'G013_35'">
+								<th:block th:if="${ordDtl.ordDtlStat} == 'G013_20' or ${ordDtl.ordDtlStat} == 'G013_30' or ${ordDtl.ordDtlStat} == 'G013_35'">
 									<div class="goods_btn_wrap btn_group_flex">
 										<div><button type="button" class="btn btn_default btn_cncl_complete" th:attr="ordNo=${ordDtl.ordNo}, ordDtlNo=${ordDtl.ordDtlNo}, delvFeeCd=${ordDtl.delvFeeCd}" onclick="fnCreateChange(this, 'cancel');"><span>주문 취소</span></button></div>
 									</div>

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

@@ -104,8 +104,13 @@
 						<!-- 버튼기능정리 -->
 						<!-- 일반배송 -->
 						<th:block th:unless="${ordDtl.giftPackYn} == 'Y'">
-							<!-- 입금대기, 결제완료, 상품준비중, 출고처지정 (주문취소) -->
-							<th:block th:if="${ordDtl.ordDtlStat} == 'G013_10' or ${ordDtl.ordDtlStat} == 'G013_20' or ${ordDtl.ordDtlStat} == 'G013_30' or ${ordDtl.ordDtlStat} == 'G013_35'">
+							<!-- 입금대기 1:1문의 버튼(입금대기, 배송준비중, 구매확정) -->
+							<th:block th:if="${ordDtl.ordDtlStat == 'G013_10'}">
+								<p><button type="button" class="btn btn_default btn_sm" onclick="cfnGoToPage(_PAGE_ONETOONE_QNA_REG);"><span>1:1 문의</span></button></p>
+							</th:block>
+														
+							<!-- 결제완료, 상품준비중, 출고처지정 (주문취소) -->
+							<th:block th:if="${ordDtl.ordDtlStat} == 'G013_20' or ${ordDtl.ordDtlStat} == 'G013_30' or ${ordDtl.ordDtlStat} == 'G013_35'">
 								<div class="goods_btn_wrap btn_group_flex">
 									<div>
 										<button type="button" class="btn btn_default btn_cncl_complete" th:ordNo="${ordDtl.ordNo}" th:ordDtlNo="${ordDtl.ordDtlNo}" th:ordCanChgQty="${ordDtl.ordCanChgQty}" th:delvFeeCd="${ordDtl.delvFeeCd}" onclick="fnCreateChange(this, 'cancel');">

+ 20 - 2
src/main/webapp/WEB-INF/views/mob/order/OrderCompleteMob.html

@@ -312,8 +312,26 @@
 										<dd th:if="${orderInfo.pgGb == 'NAVER'}"><div><span>네이버 페이</span></div></dd>
 										<dd th:if="${orderInfo.pgGb == 'KAKAO'}"><div><span>카카오 페이</span></div></dd>
 										<dd th:if="${orderInfo.pgGb == 'PAYCO'}"><div><span>PAYCO</span></div></dd>
-										<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_10'}"><div><span>실시간계좌이체</span></div></dd>
-										<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_20'}"><div><span>무통장입금</span></div></dd>
+										<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_10'}">
+											<div>
+												<span>
+													실시간계좌이체
+													<th:blcok th:if="${orderInfo.cashAuthNo} != null and ${orderInfo.cashAuthNo} != ''">
+													<br>(현금영수증 신청)
+													</th:blcok>
+												</span>
+											</div>
+										</dd>
+										<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_20'}">
+											<div>
+												<span>
+													무통장입금
+													<th:blcok th:if="${orderInfo.cashAuthNo} != null and ${orderInfo.cashAuthNo} != ''">
+													<br>(현금영수증 신청)
+													</th:blcok>
+												</span>
+											</div>
+										</dd>
 										<dd><div><span th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_30'}" th:text="|${orderInfo.cardNm}/${orderInfo.cardMips}|"></span></div></dd>
 										<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_60'}"><div><span>휴대폰결제</span></div></dd>
 													

+ 16 - 10
src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html

@@ -30,7 +30,7 @@
 <!-- 주문금액정보표현 -->
 <form id="orderAmtForm" name="orderAmtForm">
 	<!-- 고객정보 -->
-	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo" id="orderInfo">
+	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo">
 		<tbody>
 			<tr style="height:30px;">
 				<th>custNm</th>
@@ -82,7 +82,7 @@
 	<!-- //사은품정보 -->
 	
 	<!-- 주문상세금액 -->
-	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo" id="orderDetailInfo">
+	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo">
 		<tr style="height:30px;">
 			<th>cartSq</th>
 			<th style="display:none">goodsNm</th>
@@ -175,7 +175,7 @@
 	<!-- //주문상세금액 -->
 	
 	<!-- 배송단위목록 -->
-	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo" id="delvFeeCdInfo">
+	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo">
 		<tr style="height:30px;">
 			<th>supplyCompCd</th>
 			<th>delvFeeCd</th>
@@ -196,7 +196,7 @@
 	<!-- //배송단위목록 -->
 	
 	<!-- 주문금액합계 -->
-	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="orderSumAmtInfo" id="orderSumAmtInfo">
+	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="orderSumAmtInfo">
 		<tr style="height:30px;">
 			<th>orgGoodsSumAmt</th>
 			<th>delvSumAmt</th>
@@ -505,6 +505,7 @@ $(document).ready( function() {
 		, "orderMadeYn"		: orderMadeYn
 		, "custDelvAddrSq"	: 0
 		, "giftPackYn"		: giftPackYn
+		, "cartGoodsList"	: cartGoodsList
 	}
 	
 	jsonData = JSON.stringify(jsonObj);
@@ -753,10 +754,11 @@ var fnGetDailyDeliveryCheck = function (temp) {
 				}
 
 				// json 값 설정
-				var orderListObj 		= {
-					"cartSqArr"		: cartSqArr
-					, "shotDelvYn"	: tempShotDelvYn
-					, "giftPackYn"	: giftPackYn
+				var orderListObj = {
+					"cartSqArr"			: cartSqArr
+					, "shotDelvYn"		: tempShotDelvYn
+					, "giftPackYn"		: giftPackYn
+					, "cartGoodsList"	: cartGoodsList
 				};
 				
 				var orderListJsonData 	= JSON.stringify(orderListObj);
@@ -866,6 +868,9 @@ var freegiftInfoSet = function() {
 						mcxDialog.alert("적용된 할인/혜택이 초기화 됩니다.");
 						pntDcAmtReset();
 					}
+					
+					// 2021.05.07 금액계산실행
+					custCpnSumAmtCal();
 				});
 				
 				// 2021.04.29 무료사은품 기본선택
@@ -1241,6 +1246,7 @@ var paymentInfoSet = function() {
 						,"freegiftUsePointArr"	: freegiftUsePointArr
 						,"giftMsg"				: giftMsg
 						,"custPayMeans"			: custPayMeans
+						,"cartSqArr"			: cartSqArr
 					};
 					
 					$.ajax( {
@@ -1551,7 +1557,7 @@ var dcAmtInfoSet = function() {
 					}
 					
 					// 2021.04.23 추가
-					mcxDialog.alert("총 " + getZeroMinusDelAmt(pntDcAmt) + " P를 차감 결제 합니다.");
+					mcxDialog.alert("총 " + getZeroMinusDelAmt(pntDcAmt) + " P를 차감 결제 합니다.");
 					
 					// 포인트 적용
 					$("#orderAmtForm .pntDcSumAmt").text(pntDcAmt);
@@ -1615,7 +1621,7 @@ var dcAmtInfoSet = function() {
 					}
 					
 					// 2021.04.23 추가
-					mcxDialog.alert("총 " + gfcdUseAmt.addComma() + " 원를 상품권 금액에서 차감 결제 합니다.");
+					mcxDialog.alert("총 " + gfcdUseAmt.addComma() + " 원를 상품권 금액에서 차감 결제 합니다.");
 					
 					// 상품권 적용
 					$("#orderAmtForm .gfcdUseSumAmt").text(gfcdUseAmt);

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

@@ -46,12 +46,12 @@
 							<p class="txt">
 								<!-- 필수사은품 -->
 								<th:block th:if="${freegift.allYn} == 'Y'">
-									<span th:text="|사은품필수 ${i.count}|"></span>
+									<span th:text="'사은품필수' + ${i.count}"></span>
 								</th:block>
 								<!-- //필수사은품 -->
 								<!-- 선택사은품 -->
 								<th:block th:if="${freegift.allYn} == 'N'">
-									<span th:text="|사은품선택 ${i.count}|"></span>
+									<span th:text="'사은품선택' + ${i.count}"></span>
 								</th:block>
 								<!-- //선택사은품 -->
 								<th:block th:text="${freegift.freegiftNm}"></th:block>

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

@@ -875,7 +875,7 @@
 			var overSrc;
 			var srcName = nowImg.attr('src');
 			overSrc = srcName.substring(0, srcName.lastIndexOf('.'));
-			
+
 			var srcImg;
 			var srcdat;
 
@@ -920,8 +920,10 @@
 				// $(this).attr('src', overSrc + '.' + /[^.]+$/.exec(srcName));
 				//$(this).attr('src', img1);
 				// return false;
+				$(this).parents('.itemPic').removeClass();
 				$(this).children('.pd_img').siblings(".itemOpt").removeClass('on');
 				$(this).children('.pd_img').attr('src', srcImg);
+				$(this).children('.pd_img').css("opacity","1");
 			});
 		}
 

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

@@ -208,7 +208,7 @@
 					tmtbHtml += '		<td><span class="tag deepgray">차감</span></td>';
 				}
 				tmtbHtml += '<td>';
-				tmtbHtml += '<div class="txt_content">'	+ useGiftcard.goodsNm + '</div>';
+				tmtbHtml += '<div class="txt_content" style="padding-left:40px; text-align:left;">'	+ useGiftcard.goodsNm + '</div>';
 				tmtbHtml += '</td>';
 				if(useGiftcard.gfcdAmt<0){
 					tmtbHtml += '<td><span class="amount_minus"> <em>'

+ 8 - 6
src/main/webapp/WEB-INF/views/web/mypage/MypageReviewDetailFormWeb.html

@@ -95,21 +95,23 @@
 				tag +='			<div class="response_box">\n';
 				tag +='				<div class="full">\n';
 				tag +='					<dl>\n';
-				if (review.goodsOptionList != null && review.goodsOptionList.length > 0){
-					$.each(review.goodsOptionList, function(aIdx, reviewGoods){
 				tag +='						<div>\n';
 				tag +='							<dt>구매옵션</dt>\n';
-				tag +='							<dd>'+ reviewGoods.optCd1Nm +' / '+ reviewGoods.optCd2+'</dd>\n';
-				tag +='						</div>\n';
-					});		
+				if (review.goodsOptionList != null && review.goodsOptionList.length > 0){
+					tag +='							<dd>\n';	
+						$.each(review.goodsOptionList, function(aIdx, reviewGoods){
+					tag +='							<p><span>'+ reviewGoods.optCd1Nm +'</span> / <span>'+ reviewGoods.optCd2+'</span></p>\n';
+						});		
+					tag +='							<dd>\n';	
 				}
+				tag +='						</div>\n';
 				tag +='					</dl>\n';
 				tag +='				</div>\n';
 				tag +='				<div class="full">\n';
 				tag +='					<dl>\n';
 				tag +='						<div>\n';
 				tag +='							<dt>키/몸무게</dt>\n';
-				tag +='							<dd>'+review.height+' / '+review.weight +' \n';
+				tag +='							<dd>'+review.height+'cm / '+review.weight +'kg \n';
 				tag +='							</dd>\n';
 				tag +='						</div>\n';
 				tag +='					</dl>\n';

+ 13 - 17
src/main/webapp/WEB-INF/views/web/order/OrderCompleteWeb.html

@@ -227,28 +227,24 @@
 												</div>
 												<!-- 신용카드 일때 -->
 												<div>
-													<dt>결제방법</dt>
+													<dt class="sr-only">결제방법</dt>
 													<dd th:if="${orderInfo.pgGb == 'NAVER'}">네이버 페이</dd>
 													<dd th:if="${orderInfo.pgGb == 'KAKAO'}">카카오 페이</dd>
 													<dd th:if="${orderInfo.pgGb == 'PAYCO'}">PAYCO</dd>
-													<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_10'}">실시간계좌이체</dd>
-													<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_20'}">무통장입금</dd>
+													<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_10'}">
+														실시간계좌이체
+														<th:blcok th:if="${orderInfo.cashAuthNo} != null and ${orderInfo.cashAuthNo} != ''">
+														(현금영수증신청)
+														</th:blcok>
+													</dd>
+													<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_20'}">
+														무통장입금
+														<th:blcok th:if="${orderInfo.cashAuthNo} != null and ${orderInfo.cashAuthNo} != ''">
+														(현금영수증신청)
+														</th:blcok>
+													</dd>
 													<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_30'}" th:text="|${orderInfo.cardNm}/${orderInfo.cardMips}|"></dd>
 													<dd th:if="${orderInfo.pgGb == 'KCP' and orderInfo.payMeans == 'G014_60'}">휴대폰결제</dd>
-																										
-													<!-- kcp 신용카드
-													<th:block th:if="${orderInfo.payMeans} == 'G014_30'">
-														<th:block th:if="${orderInfo.cardType} == 'Y'">
-															<dd th:text="|체크카드(${orderInfo.cardNm})/${orderInfo.cardMips}|"></dd>
-														</th:block>
-														<th:block th:if="${orderInfo.cardType} == 'N'">
-															<dd th:text="|신용카드(${orderInfo.cardNm})/${orderInfo.cardMips}|"></dd>
-														</th:block>
-													</th:block>
-													<th:block th:if="${orderInfo.payMeans} != 'G014_30'">
-														<dd th:text="${orderInfo.payType}"></dd>
-													</th:block>
-													-->
 												</div>
 												<!-- //신용카드 일때 -->
 											</dl>

+ 1 - 1
src/main/webapp/WEB-INF/views/web/order/OrderCouponApplyPopWeb.html

@@ -5,7 +5,7 @@
 	<div class="modal-dialog" role="document">
 		<div class="modal-content">
 			<div class="modal-header">
-				<h5 class="modal-title" id="couponModifyLabel">할인쿠폰 변</h5>
+				<h5 class="modal-title" id="couponModifyLabel">할인쿠폰 변</h5>
 			</div>
 			<div class="modal-body">
 				<div class="pop_cont">

+ 24 - 21
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -32,7 +32,7 @@
 <!-- 주문금액정보표현 -->
 <form id="orderAmtForm" name="orderAmtForm">
 	<!-- 주문자정보 -->
-	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo" id="orderInfo">
+	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo">
 		<tbody>
 			<tr style="height:30px;">
 				<th>custNm</th>
@@ -82,7 +82,7 @@
 	<!-- //사은품정보 -->
 	
 	<!-- 주문상세금액 -->
-	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo" id="orderDetailInfo">
+	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo">
 		<tr style="height:30px;">
 			<th>cartSq</th>
 			<th style="display:none">goodsNm</th>
@@ -175,7 +175,7 @@
 	<!-- //주문상세금액 -->
 	
 	<!-- 배송단위목록 -->
-	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo" id="delvFeeCdInfo">
+	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo">
 		<tr style="height:30px;">
 			<th>supplyCompCd</th>
 			<th>delvFeeCd</th>
@@ -185,9 +185,9 @@
 		</tr>
 		<th:block th:each="delvFeeCd, index : ${delvFeeCdList}">
 			<tr style="height:30px;">
-				<td class="supplyCompCd" th:text="${delvFeeCd.supplyCompCd}"></td>
-				<td class="delvFeeCd" th:text="${delvFeeCd.delvFeeCd}"></td>
-				<td class="delvFee" th:text="${delvFeeCd.delvFee}"></td>
+				<td class="supplyCompCd" 	th:text="${delvFeeCd.supplyCompCd}"></td>
+				<td class="delvFeeCd" 		th:text="${delvFeeCd.delvFeeCd}"></td>
+				<td class="delvFee" 		th:text="${delvFeeCd.delvFee}"></td>
 				<td class="delvCpnSq">0</td>
 				<td class="delvCpnDcAmt">0</td>
 			</tr>
@@ -348,7 +348,6 @@
 													</tr>
 												</tbody>
 											</table>
-											개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.개인정보제공에 대한 동의 내용입니다.
 										</div>
 									</div>
 									<!-- 
@@ -448,13 +447,6 @@
 									</div>
 								</th:block>
 							</dl>
-							<!-- 비회원인경우 노출 
-							<th:blcok th:if="!${isLogin}">
-								<div class="t_info">
-									<a href="javascript:void(0);" onclick="cfnGoToPage(_PAGE_CUSTOMER_JOIN_TYPE);" title="회원가입 하여 할인받기" class="btn_link">회원가입 하여 할인받기</a>
-								</div>
-							</th:blcok>
-							-->
 						</div>
 						<div class="totalprice_box">
 							<dl>
@@ -539,6 +531,7 @@ var foreignBuyYn		= [[${order.foreignBuyYn}]];	// 해외구매대행
 var foreignBuyYn		= [[${foreignBuyYn}]];			// 해외구매대행여부
 var orderMadeYn			= [[${orderMadeYn}]];			// 주문제작상품여부
 var isLogin				= [[${isLogin}]];				// 로그인여부
+var devTempYn			= [[${devTempYn}]];				// 개발자모드가능여부
 
 var custCpnSq 			= 0;
 var cpnIndex			= 0;
@@ -574,6 +567,7 @@ $(document).ready( function() {
 		, "foreignBuyYn"	: foreignBuyYn
 		, "orderMadeYn"		: orderMadeYn
 		, "custDelvAddrSq"	: 0
+		, "cartGoodsList"	: cartGoodsList
 	}
 	
 	jsonData = JSON.stringify(jsonObj);
@@ -590,7 +584,8 @@ $(document).ready( function() {
 	arr[3] = "delvFeeCdInfo";
 	arr[4] = "orderSumAmtInfo";
 	
-	if (devTemp) {
+	// 개발자모드실행
+	if (devTemp == true && devTempYn == true) {
 		$("table").each(function(){
 			var name = $(this).attr("name");
 			for (i=0 ; i<arr.length ; i++) {
@@ -773,7 +768,11 @@ var fnGetDailyDeliveryCheck = function (temp) {
 				}
 
 				// json 값 설정
-				var orderListObj 		= {"cartSqArr":cartSqArr, "shotDelvYn":tempShotDelvYn};
+				var orderListObj 		= {
+					"cartSqArr"			: cartSqArr
+					, "shotDelvYn"		: tempShotDelvYn 
+					, "cartGoodsList"	: cartGoodsList
+				};
 				var orderListJsonData 	= JSON.stringify(orderListObj);
 				
 				if (temp) {
@@ -888,6 +887,9 @@ var freegiftInfoSet = function() {
 						mcxDialog.alert("적용된 할인/혜택이 초기화 됩니다.");
 						pntDcAmtReset();
 					}
+					
+					// 2021.05.07 금액계산실행
+					custCpnSumAmtCal();
 				});
 				
 				// 2021.04.29 무료사은품 기본선택
@@ -1076,7 +1078,7 @@ var paymentInfoSet = function() {
 							return false;
 						}
 					}
-					
+										
 					// 사은품지급할 경우 체크 2020.04.29 사은품지급이 필수가 아닙니다.
 					if ($("#orderAmtForm .freegiftValArr").text().length > 0) {
 						if (!$("#orderForm #chk-agree_gift").is(":checked")) {
@@ -1225,6 +1227,7 @@ var paymentInfoSet = function() {
 						,"freegiftUsePointArr"	: freegiftUsePointArr
 						,"giftMsg"				: ""
 						,"custPayMeans"			: custPayMeans
+						,"cartSqArr"			: cartSqArr
 					};
 					
 					$.ajax( {
@@ -1475,7 +1478,7 @@ var dcAmtInfoSet = function() {
 					}
 					
 					// 2021.04.23 추가
-					mcxDialog.alert("총 " + getZeroMinusDelAmt(pntDcAmt) + " P를 차감 결제 합니다.");
+					mcxDialog.alert("총 " + getZeroMinusDelAmt(pntDcAmt) + " P를 차감 결제 합니다.");
 					
 					// 포인트 적용
 					$("#orderAmtForm .pntDcSumAmt").text(pntDcAmt);
@@ -1539,7 +1542,7 @@ var dcAmtInfoSet = function() {
 					}
 					
 					// 2021.04.23 추가
-					mcxDialog.alert("총 " + gfcdUseAmt.addComma() + " 원를 상품권 금액에서 차감 결제 합니다.”");
+					mcxDialog.alert("총 " + gfcdUseAmt.addComma() + " 원을 상품권 금액에서 차감 결제 합니다.");
 					
 					// 상품권 적용
 					$("#orderAmtForm .gfcdUseSumAmt").text(gfcdUseAmt);
@@ -2259,7 +2262,7 @@ var custCpnSumAmtCal = function() {
 	var freegiftValArr 			= [];
 	var freegiftUsePointArr 	= [];
 		
-	$(".gift_box").each(function(){
+	$("#orderForm .gift_box").each(function(){
 		$(this).find(".freegiftRdo").each(function(){
 			// 사은품필수
 			if ($(this).attr("allYn") == "Y" ) {
@@ -2278,7 +2281,7 @@ var custCpnSumAmtCal = function() {
 		});
 	});
 	
-	$("#orderAmtForm .freegiftValArr").text(freegiftValArr);				// 사은품시퀀스배열
+	$("#orderAmtForm .freegiftValArr").text(freegiftValArr);			// 사은품시퀀스배열
 	$("#orderAmtForm .freegiftUsePointArr").text(freegiftUsePointArr);	// 사은품사용포인트배열
 };
 

+ 5 - 3
src/main/webapp/WEB-INF/views/web/order/OrderFreegiftInfoWeb.html

@@ -34,12 +34,14 @@
 		<th:block th:each="freegift, i : ${freegiftList}">
 			<div class="gift_box">
 				<p class="txt">
+					
 					<th:block th:if="${freegift.allYn} == 'Y'">
-						<span th:text="'사은품필수' + ${i.count} + ' ' + ${freegift.freegiftNm}"></span>
+						<span th:text="'사은품필수' + ${i.count}"></span>
 					</th:block>
 					<th:block th:if="${freegift.allYn} == 'N'">
-						<span th:text="'사은품선택' + ${i.count} + ' ' + ${freegift.freegiftNm}"></span>
+						<span th:text="'사은품선택' + ${i.count}"></span>
 					</th:block>
+					<th:block th:text="${freegift.freegiftNm}"></th:block>
 				</p>
 				<div class="form_field">
 					<!-- 전체지급 사음품(필수) -->
@@ -48,7 +50,7 @@
 							<th:block th:if="${freegift.freegiftSq} == ${freegiftGoods.freegiftSq}">
 								<div class="gift">
 									<input type="hidden" th:name="'rdi-gift'+${i.count}" th:id="'rdi-gift'+${i.count}+${k.count}" class="chk_img freegiftRdo" th:value="${freegiftGoods.freegiftValSq}" usepoint="0" allYn="Y">
-									<input type="checkbox" name="chk-gift-required" id="chk-gift-required1" class="chk_img" value="" checked="" onclick="return(false);">
+									<input type="checkbox" name="chk-gift-required" th:id="'chk-gift-required'+${i.count}+${k.count}" class="chk_img" value="" checked="" onclick="return(false);">
 									<label for="rdi-gift'+${i.count}+${k.count}">
 										<span class="thumb"><img src="http://ts5000.ipdisk.co.kr:89/images/pc/thumb/tmp_gift1.jpg" width="" alt=""></span>
 										<span class="name" th:text="${freegiftGoods.goodsNm}"></span>

+ 11 - 9
src/main/webapp/WEB-INF/views/web/order/OrderPaymentInfoWeb.html

@@ -77,16 +77,18 @@
 				</ul>
 			</div>
 		</div>
-		<div class="form_field">
-			<div class="agree_paymethod">
-				<input id="chk-agree_paymethod" type="checkbox">
-				<label for="chk-agree_paymethod">
-					 <span>선택한 결제수단으로 향후 결제 이용에 동의합니다.&nbsp;&nbsp;
-						<em class="tmark_optional">(선택)</em>
-					</span>
-				</label>
+		<th:blcok th:if="${isLogin}">
+			<div class="form_field">
+				<div class="agree_paymethod">
+					<input id="chk-agree_paymethod" type="checkbox">
+					<label for="chk-agree_paymethod">
+						 <span>선택한 결제수단으로 향후 결제 이용에 동의합니다.&nbsp;&nbsp;
+							<em class="tmark_optional">(선택)</em>
+						</span>
+					</label>
+				</div>
 			</div>
-		</div>
+		</th:blcok>
 		<div class="form_field">
 			<div class="agree_insurance">
 				<input id="chk-insurance" type="checkbox" name="insuranceYn"> 

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

@@ -139,12 +139,12 @@
 							<div class="benefit_con">
 							<ul>
 								 <th:block th:each="a, benefitStat : ${benefitList}">
-								<li th:if="${a.benefitGb == 'P'}">
+								<li th:if="${a.benefitGb == 'P' or ( a.basDays > 0 and a.dcVal > 0)}">
 									<div class="benfit_point">
 										<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.pntAmt}"></em>P</span>
 									</div>
 								</li>
-								<li th:if="${a.benefitGb == 'C'}">
+								<li th:if="${a.benefitGb == 'C'  or ( a.basDays > 0 and a.dcVal > 0)}">
 									<div class="benfit_coupon">
 										<th:block th:if="${a.dcWay == '%'}">
 										<span th:text="${a.basDays}"></span>일 출석 시 <span class="c_primary"><em th:text="${a.dcVal}"></em>%</span><strong> 할인 쿠폰</strong>
@@ -154,7 +154,7 @@
 										</th:block>
 									</div>
 								</li>
-								<li th:if="${a.benefitGb == 'A'}">
+								<li th:if="${a.benefitGb == 'A'  or ( a.basDays > 0 and a.dcVal > 0)}">
 									<div class="benfit_coupon">
 									<th:block th:if="${a.dcWay == '%'}">
 										<span th:text="${a.basDays}"></span>일 출석 시<br><span class="c_primary"><em th:text="${a.pntAmt}"></em>P</span> + <span class="c_primary"><em th:text="${a.dcVal}"></em>%</span> <strong>할인 쿠폰</strong>

+ 3 - 3
src/main/webapp/WEB-INF/views/web/popup/DelvAddrModifyPopWeb.html

@@ -11,12 +11,12 @@
 				<div class="default_addrs">
 					<div class="form_field">
 						<th:block th:if="${deliveryAddrInfo.defaultYn} == 'Y'">
-							<input id="chk-default-addrs" type="checkbox" name="defaultYn" checked>
+							<input id="chk-default-addrs1" type="checkbox" name="defaultYn" checked>
 						</th:block>
 						<th:block th:if="${deliveryAddrInfo.defaultYn} == 'N'">
-							<input id="chk-default-addrs" type="checkbox" name="defaultYn">
+							<input id="chk-default-addrs1" type="checkbox" name="defaultYn">
 						</th:block>
-						<label for="chk-default-addrs"><span>기본 배송지로 등록</span></label>
+						<label for="chk-default-addrs1"><span>기본 배송지로 등록</span></label>
 					</div>
 				</div>
 				<div class="form_field">

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

@@ -175,7 +175,7 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 		}
 
 		tag += '<div class="item_prod">';
-		tag += '	<div class="item_state">';
+		tag += '	<div class="item_state" data-id="'+item.soldoutYn+'">';
 		tag += '		<button type="button" class="itemLike';
 		if(item.likeIt == 'likeit'){
 			tag += ' likeit';

+ 5 - 4
src/main/webapp/ux/pc/css/common.css

@@ -762,7 +762,7 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .itemsGrp.rowtype .item_prod .itemLike {left:240px; z-index:99;}
 .itemsGrp.rowtype .item_prod .itemPic {position: absolute; top: 0; left: 0; margin-bottom: 0; padding-top: 0; width: 280px; height: 420px;}
 .itemsGrp.rowtype .item_prod .itemPic .shape {z-index: 89;}
-.itemsGrp.rowtype .item_prod .itemPic::after {background: #f5f5f5; opacity:1; z-index: 87;}
+.itemsGrp.rowtype .item_prod .itemPic::after {background: #f9f9f9; opacity:1; z-index: 87;}
 .itemsGrp.rowtype .item_prod .itemPic .pd_img {z-index: 88;}
 .itemsGrp.rowtype .item_state.soldout .itemPic:before {content:'SOLD OUT'; position:absolute; top:50%; left:50%; color:#fff; font-size:28px; font-weight:500; background:rgba(0,0,0,.7); width:100%; height:100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 89; text-align:center;}
 .itemsGrp.rowtype .item_prod .itemBrand {margin:0px; font-size: 16px; font-weight: 300;}
@@ -779,7 +779,8 @@ content: "〉";font-size: 12px;padding-left: 8px;
 
 .item_prod {width: 20%;display: inline-block;font-size: 0px;vertical-align: top;color: rgb(31, 31, 31);position: relative;letter-spacing: -0.2px;}
 .item_state {position: relative; padding: 0px 10px 60px; box-sizing: border-box;}
-.itemsGrp .item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 20px; color:#fff; background: rgba(0,0,0,.5); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 1; text-align: center;}
+.itemsGrp .item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 28px; font-weight: 500; color:#fff; background: rgba(0,0,0,.7); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 20; text-align: center;}
+.itemsGrp .item_state.AD .itemPic:before {content:'AD'; position: absolute; bottom: 20px; right: 20px; font-size: 14px; font-weight: 300; letter-spacing: -0.025em; color:#888888; width: auto; height: auto; line-height: 14px; z-index: 21; text-align: right;}
 @media (max-width: 1919px) and (min-width: 1401px){/* .item_state {padding-left: 6px;padding-right: 6px;} */}
 .hgbgCa {width: 100%;height: 100%;}
 .fgRDJH {padding: 0px 40px;font-size: 0px;box-sizing: border-box;}
@@ -797,7 +798,7 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .itemLike.likeit::before {opacity: 1;}
 
 .itemLink {z-index:20;position: relative;text-decoration: none;color: rgb(102, 102, 102);cursor: pointer;display: block;}
-.itemPic {position: relative;width: 100%;margin-bottom:20px;padding-top: 150%;font-size: 0px;overflow: hidden;background-color: #ffffff;}
+.itemPic {position: relative;width: 100%;margin-bottom:20px;padding-top: 150%;font-size: 0px;overflow: hidden;background-color: #f9f9f9;}
 .itemPic::after {content: "";display: block;position: absolute;top: 0px;left: 0px;width: 100%;height: 100%;opacity: 0;background-color: rgb(0, 0, 0);z-index: 999;}
 .itemPic .pd_img,
 .itemPic .pd_mov {position: absolute;width: 100%;height: auto;top: 50%;left: 0px;transform: translateY(-50%);}
@@ -805,7 +806,7 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .itemPic .pd_img {z-index: 1;transition: 0.5s;}
 .itemPic .pd_img::after {content: '';display: block; height: 100%;width: 100%;background: #333;}
 /* .itemPic .pd_img {position: absolute;width: 100%;width: auto; height: auto;max-height: 500px;top: 50%;left: 50%;transform: translate(-50%,-50%);} */
-.itemOpt{z-index:3; pointer-events:none;position: absolute;bottom: -120px; left: 0; right: 0; width: 100%; height:111px;padding: 32px 0; text-align:center; color: #fff; background: rgb(0 0 0 / 0.8); transition-duration:0.45s;}
+.itemOpt{z-index:3; pointer-events:none;position: absolute;bottom: -120px; left: 0; right: 0; width: 100%; height:62px;padding: 25px 0; text-align:center; color: #fff; background: rgb(0 0 0 / 0.8); transition-duration:0.45s;}
 .itemOpt.on{transition-duration:0.45s;bottom:0;}
 .itemOpt p{font-size: 12px;line-height: 1.2;padding-bottom: 15px;}
 .itemOpt ul{display: block;margin: 0 auto;width: auto;}

+ 5 - 5
src/main/webapp/ux/pc/css/layout.css

@@ -391,7 +391,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 #quick_menu .shopingbag .itemsGrp .item_prod .itemLike {z-index: 99;}
 #quick_menu .shopingbag .itemsGrp .item_prod .itemPic {position: absolute; top: 0; left: 0; margin-bottom: 0; width: 120px; padding-top: 180px;}
 #quick_menu .shopingbag .itemsGrp .item_prod .itemPic .shape {z-index: 89;}
-#quick_menu .shopingbag .itemsGrp .item_prod .itemPic::after {background: #f5f5f5; opacity:1; z-index: 87;}
+#quick_menu .shopingbag .itemsGrp .item_prod .itemPic::after {background: #f9f9f9; opacity:1; z-index: 87;}
 #quick_menu .shopingbag .itemsGrp .item_prod .itemPic .pd_img {z-index: 88;}
 #quick_menu .shopingbag .itemsGrp .item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 20px; color:#fff; background: rgba(0,0,0,.5); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 1; text-align: center;}
 #quick_menu .shopingbag .itemsGrp .item_prod .itemBrand {margin:0px 0 15px; font-size: 12px; line-height:14px; font-weight: 300;}
@@ -1800,7 +1800,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.dp_Exhibition .exhi_list .exhi_item_pr li {height: 150px; margin-bottom: 16px;}
 	.dp_Exhibition .exhi_list .exhi_item_pr li:last-child {margin-bottom: 0;}
 	.dp_Exhibition .exhi_list .exhi_item_pr .item_prod {width: 100%; margin-right: 0; margin-bottom: 0; height: 150px;}
-	.dp_Exhibition .exhi_list .exhi_item_pr .itemPic {position: absolute; left: 0; top: 0; width: 100px; height: 150px; padding-top: 0; margin-bottom: 0; background:#f5f5f5;}
+	.dp_Exhibition .exhi_list .exhi_item_pr .itemPic {position: absolute; left: 0; top: 0; width: 100px; height: 150px; padding-top: 0; margin-bottom: 0; background:#f9f9f9;}
 	.dp_Exhibition .exhi_list .exhi_item_pr .itemLink {position: static; display: table-cell; vertical-align:middle;}
 	.dp_Exhibition .exhi_list .exhi_item_pr .itemName {font-size: 14px; line-height: 1.4; max-height: none; margin: 0px 0px 15px; height:auto;}
 	.dp_Exhibition .exhi_list .exhi_item_pr .itemPrice {margin-left: 0; margin-right: 0;}
@@ -3280,7 +3280,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.pd_pop.pd_lookbook_pop .itemsGrp .item_prod {width: 100%; overflow: hidden;}
 	.pd_pop.pd_lookbook_pop .itemsGrp .item_prod .item_state {display: table; padding-left: 310px; padding-right: 55px; padding-bottom: 0; width: 100%; min-height:390px;}
 	.pd_pop.pd_lookbook_pop .itemsGrp .item_prod .itemLink {display: table-cell; position: static; vertical-align: middle;}
-	.pd_pop.pd_lookbook_pop .itemsGrp .item_prod .itemPic {position: absolute; top: 0; left: 0; margin-bottom: 0; width: 260px; height:390px; padding:0; background: #f5f5f5;}
+	.pd_pop.pd_lookbook_pop .itemsGrp .item_prod .itemPic {position: absolute; top: 0; left: 0; margin-bottom: 0; width: 260px; height:390px; padding:0; background: #f9f9f9;}
 	.pd_pop.pd_lookbook_pop .itemsGrp .item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 20px; color:#fff; background: rgba(0,0,0,.5); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 1; text-align: center;}
 	.pd_pop.pd_lookbook_pop .itemsGrp .item_prod .itemBrand {margin:0px 0px 15px; font-size: 14px; font-weight: 300;}
 	.pd_pop.pd_lookbook_pop .itemsGrp .item_prod .itemName {margin:0px 0px 25px; font-size: 18px; font-weight: 300; line-height: 28px; height:56px;}
@@ -3775,7 +3775,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item_pr li:last-child {margin-bottom: 0;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item_pr .item_prod {width: 100%; margin-right: 0; margin-bottom: 0; height: 150px;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item_pr {background: #fff; padding: 20px; position: relative; z-index: 9; width: 88.4%; margin:-70px auto 0;}
-	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item_pr .itemPic {position: absolute; left: 0; top: 0; background:#f5f5f5; width: 100px; height: 150px; padding-top: 0; margin-bottom: 0;}
+	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item_pr .itemPic {position: absolute; left: 0; top: 0; background:#f9f9f9; width: 100px; height: 150px; padding-top: 0; margin-bottom: 0;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item_pr .itemLink {position: static; display: table-cell; vertical-align:middle;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item_pr .itemName {font-size: 14px; line-height: 1.4; max-height: none; margin: 0px 0px 15px; height:auto;}
 	.sch_result .cont_body .sch_result_cont .exhi_list .itemsGrp .exhi_item_pr .itemPrice {margin-left: 0; margin-right: 0; font-size: 16px;}
@@ -4823,7 +4823,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.modal.lookbook_item_pop .itemsGrp .item_prod {width: 100%; overflow: hidden;}
 	.modal.lookbook_item_pop .itemsGrp .item_prod .item_state {display: table; padding-left: 310px; padding-right: 55px; padding-bottom: 0; width: 100%; min-height:390px;}
 	.modal.lookbook_item_pop .itemsGrp .item_prod .itemLink {display: table-cell; position: static; vertical-align: middle;}
-	.modal.lookbook_item_pop .itemsGrp .item_prod .itemPic {position: absolute; top: 0; left: 0; margin-bottom: 0; width: 260px; height:390px; padding:0; background: #f5f5f5;}
+	.modal.lookbook_item_pop .itemsGrp .item_prod .itemPic {position: absolute; top: 0; left: 0; margin-bottom: 0; width: 260px; height:390px; padding:0; background: #f9f9f9;}
 	.modal.lookbook_item_pop .itemsGrp .item_state.soldout .itemPic:before {content:'SOLD OUT'; position: absolute; top: 50%; left: 50%; font-size: 20px; color:#fff; background: rgba(0,0,0,.5); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 1; text-align: center;}
 	.modal.lookbook_item_pop .itemsGrp .item_prod .itemBrand {margin:0px 0px 15px; font-size: 14px; font-weight: 300;}
 	.modal.lookbook_item_pop .itemsGrp .item_prod .itemName {margin:0px 0px 25px; font-size: 18px; font-weight: 300; line-height: 28px; height:56px;}