jsh77b vor 5 Jahren
Ursprung
Commit
689cc240e7

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

@@ -404,6 +404,11 @@ public class TsfOrderController extends TsfBaseController {
 		mav.addObject("deliveryAddrInfo"	, deliveryAddrInfo);						// 배송지정보
 		mav.addObject("order"				, order);									// 파라미터
 		mav.addObject("isLogin"				, TsfSession.isLogin());					// 로그인여부
+
+		// 2021.04.29 해외구매대행, 주문제작
+		mav.addObject("foreignBuyYn"		, order.getForeignBuyYn());					// 해외구매대행여부
+		mav.addObject("orderMadeYn"			, order.getOrderMadeYn());					// 주문제작여부
+				
 		mav.setViewName(super.getDeviceViewName("order/OrderDeliveryAddrInfo"));
 		
 		return mav;
@@ -626,8 +631,12 @@ public class TsfOrderController extends TsfBaseController {
 			
 			// 2.10 고객 보유 상품권 정보 조회
 			rmGfcdAmt = coreOrderService.getGiftcardInfo(order);
-		} 
-
+		}
+		
+		// 2021.04.29 포인트사용정보조회
+		Order pointUseEnvset = coreOrderService.getPointUseEnvset();
+		
+		// 주문시포인트설정정보조회
 		ModelAndView mav = new ModelAndView();
 		mav.addObject("goodsApplyCpnList"				, goodsApplyCpnList);						// 상품적용쿠폰
 		mav.addObject("cartCpnList"						, cartCpnList);								// 장바구니쿠폰목록
@@ -643,6 +652,7 @@ public class TsfOrderController extends TsfBaseController {
 		mav.addObject("savePntSumAmt"					, goodsDcAmtMap.get("savePntSumAmt"));		// 적립예정포인트합계
 		mav.addObject("order"							, order);									// 파라미터
 		mav.addObject("isLogin"							, TsfSession.isLogin());					// 로그인여부
+		mav.addObject("pointUseEnvset"					, pointUseEnvset);							// 포인트사용정보조회
 		
 		mav.setViewName(super.getDeviceViewName("order/OrderDcAmtInfo"));
 		

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

@@ -322,8 +322,8 @@
 				</div>
 			</div>
 			<div class="btn_group btn_group_flex">
-				<div><button type="button" class="btn btn_gost"><span>주문 상세보기</span></button></div>
-				<div><button type="button" class="btn btn_dark"><span>쇼핑 계속하기</span></button></div>
+				<div><button type="button" class="btn btn_gost" th:ordno="${orderInfo.ordNo}" onclick="fnGoToOrderDetail(this)"><span>주문 상세보기</span></button></div>
+				<div><button type="button" class="btn btn_dark" onclick="location.href='/'"><span>쇼핑 계속하기</span></button></div>
 			</div>
 		</div>
 	</section>
@@ -471,6 +471,12 @@ var delvMemoSet = function(delvMemoObj) {
 	)
 }
 
+//주문상세보기 버튼 클릭 이벤트 처리
+var fnGoToOrderDetail = function(param) {
+	let ordNo = $(param).attr('ordNo');
+	cfnGoToPage(_PAGE_MYPAGE_ORDER_DETAIL + ordNo);
+}
+
 </script>
 </th:block>
 </body>

+ 7 - 4
src/main/webapp/WEB-INF/views/mob/order/OrderDcAmtInfoMob.html

@@ -160,12 +160,15 @@
 							<!-- 포인트금액 0보다 클때 적용 -->
 							<th:block th:if="${rmPntAmt} > 0">
 								<div>
-									<dt>STYLE24 포인트 <span>결제금액의 최대 40%까지 사용가능</span></dt>
+									<dt>STYLE24 포인트 <span th:text="|결제금액의 최대 ${pointUseEnvset.pointUseMaxLimit}%까지 사용가능|"></span></dt>
 									<dd>
 										<div class="form_field">
 											<input type="hidden" name="rmPntAmt" th:value="${rmPntAmt}"/>
+											<input type="hidden" name="pointUseOrdMinAmt" th:value="${pointUseEnvset.pointUseOrdMinAmt}"/>
+											<input type="hidden" name="pointUseMaxLimit" th:value="${pointUseEnvset.pointUseMaxLimit}"/>
+											
 											<!-- 스타일 포인트 3만원 이상 결제시 노출 -->
-											<th:block th:if="${orgGoodsSumAmt} >= 30000">
+											<th:block th:if="${orgGoodsSumAmt} >= ${pointUseEnvset.pointUseOrdMinAmt}">
 												<div class="input_wrap">
 													<input type="text" name="pntDcAmtStr" class="form_control" maxlength="11" placeholder="사용할 포인트를 입력해주세요." onkeyup="inputNumberFormat(this);">
 													<button type="button" class="btn btn_dark btn_sm" id="btn_point_apply">
@@ -176,9 +179,9 @@
 											<!-- 스타일 포인트 3만원 이상 결제시 노출 -->
 											
 											<!-- 스타일 포인트 3만원 미만 결제시 노출 -->
-											<th:block th:if="${orgGoodsSumAmt} < 30000">
+											<th:block th:if="${orgGoodsSumAmt} < ${pointUseEnvset.pointUseOrdMinAmt}">
 												<div class="input_wrap">
-													<input type="text" class="form_control" maxlength="" placeholder="3만원 이상 결제시에만 포인트 사용이 가능합니다." readonly="readonly" onfocus="this.blur();">
+													<input type="text" class="form_control" maxlength="" th:placeholder="|${#numbers.formatInteger(pointUseEnvset.pointUseOrdMinAmt, 1, 'COMMA')} 이상 결제시에만 포인트 사용이 가능합니다.|" readonly="readonly" onfocus="this.blur();">
 													<button type="button" class="btn btn_dark btn_sm">
 														<span>적용</span>
 													</button>

+ 76 - 12
src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html

@@ -641,6 +641,11 @@ var orderGiftInfoSet = function() {
 
 // 1.4.2 배송정보로드
 var deliveryAddrInfoSet = function(delvObj, temp) {
+	
+	// 2021.04.29 AJAX 로드를 위한 변수 설정	
+	delvObj.foreignBuyYn 	= foreignBuyYn;
+	delvObj.orderMadeYn 	= orderMadeYn;
+	
 	$.ajax( {
 		type		: "POST",
 		url 		: '/order/deliveryAddrInfo',
@@ -779,6 +784,8 @@ var orderListInfoSet = function(orderListJsonData, temp) {
 			if (result != null) {
 				$("#orderListInfo").css("display", "block");
 				$("#orderListInfo").html(result);
+				
+				alert(result);
 
 				$("#delvFeeCdCnt").text($("#orderForm input[name=delvFeeCdCnt]").val());
 				
@@ -848,8 +855,12 @@ var freegiftInfoSet = function() {
 					$("#orderForm .total_deduct").text(total_deduct.addComma());			// 사은품총사용포인트
 					$("#orderAmtForm .freegiftUsePnt").text(total_deduct);
 					
-					// 포인트초기화기능
-					pntDcAmtReset();
+					// 2021.04.29 사은품기능 리셋
+					var pntDcAmt = parseInt($("#orderAmtForm .pntDcSumAmt").text());
+					if (pntDcAmt > 0) {
+						mcxDialog.alert("적용된 할인/혜택이 초기화 됩니다.");
+						pntDcAmtReset();
+					}
 				});
 				
 				// 2021.04.29 무료사은품 기본선택
@@ -860,6 +871,42 @@ var freegiftInfoSet = function() {
 					// 첫번째 무료 선택 
 					if (usepoint == 0 && count == 1) {
 						$(this).trigger("click");
+						
+						total_gift 		= 0;
+						total_deduct 	= 0;
+						
+						// 2021.04.14 사은품 사용 포인트가 보유포인트보다 작아야 한다.
+						var rmPntAmt 			= parseInt($("#orderForm input[name='rmPntAmt']").val());
+						var freegiftUsePnt 		= parseInt($("#orderAmtForm .freegiftUsePnt").text());
+						var usepoint			= parseInt($(this).attr("usepoint"));
+						rmPntAmt 				= rmPntAmt - freegiftUsePnt - usepoint;
+						
+						if (rmPntAmt < 0) {
+							mcxDialog.alert("보유포인트가 부족합니다.");
+							return false;
+						}
+						
+						$("#orderForm .freegiftRdo").each(function(){
+							if ($(this).attr("allYn") == "Y" ) {
+								total_gift 		+= 1;
+							}
+							
+							// 라디오버튼 사은품 체크
+							if ($(this).is(":checked")) {
+								// 수령거부가 아닐때 체크
+								if ($(this).val() != "noSel") {
+									total_gift 		+= 1;
+									total_deduct 	+= parseInt($(this).attr("usepoint"));
+								}
+							}
+						});
+						
+						$("#orderForm .total_gift").text(total_gift);							// 사은품총선택개수
+						$("#orderForm .total_deduct").text(total_deduct.addComma());			// 사은품총사용포인트
+						$("#orderAmtForm .freegiftUsePnt").text(total_deduct);
+						
+						// 포인트초기화기능
+						pntDcAmtReset();
 					}
 				});
 
@@ -925,8 +972,10 @@ var paymentInfoSet = function() {
 						$("#orderForm .area_paymethod .agree_insurance").show();
 					} else {
 						$("#orderForm .area_paymethod .agree_insurance").hide();
-						$("#orderForm input[name=insuranceYn]").attr("checked", false);
 					}
+					
+					// 2021.04.29 수정
+					$("#orderForm input[name=insuranceYn]").attr("checked", false);
 				});
 				
 				// 결재하기
@@ -1064,6 +1113,11 @@ var paymentInfoSet = function() {
 					var paynormalArr		= paynormal.split("|");
 					var pgGb				= paynormalArr[0];
 					var payMeans			= paynormalArr[1];
+					
+					// 자주쓰는결제타입
+					if ($("#orderForm #chk-agree_paymethod").is(":checked") == true) {
+						custPayMeans		= "Y";
+					}
 
 					// 주문상세데이타 생성
 					$("#orderDetailInfo .cartSq").each(function(){
@@ -1180,6 +1234,7 @@ var paymentInfoSet = function() {
 						,"freegiftGoodsArr"		: freegiftGoodsArr
 						,"freegiftUsePointArr"	: freegiftUsePointArr
 						,"giftMsg"				: giftMsg
+						,"custPayMeans"			: custPayMeans
 					};
 					
 					$.ajax( {
@@ -1430,7 +1485,8 @@ var dcAmtInfoSet = function() {
 					var freegiftUsePnt 		= parseInt($("#orderAmtForm .freegiftUsePnt").text());
 					var pntDcAmt 			= parseInt(uncomma($("#orderForm input[name='pntDcAmtStr']").val()));
 					var realOrdAmt 			= parseInt($("#orderAmtForm .realOrdSumAmt").text());
-					var applyPntDcAmt 		= (realOrdAmt * 40) / 100;
+					var pointUseMaxLimit	= parseInt($("#orderForm input[name='pointUseMaxLimit']").val());
+					var applyPntDcAmt 		= (realOrdAmt * pointUseMaxLimit) / 100;
 					
 					rmPntAmt				= rmPntAmt - freegiftUsePnt;
 					
@@ -1482,7 +1538,7 @@ var dcAmtInfoSet = function() {
 					
 					// 실결제금액보다 크게 적용 되었을때 적용 불가능
 					if (pntDcAmt > applyPntDcAmt) {
-						mcxDialog.alert("결제금액의 최대 40%를 초과 사용 할 수 없습니다.");
+						mcxDialog.alert("결제금액의 최대 " + pointUseMaxLimit +"%를 초과 사용 할 수 없습니다.");
 						// 포인트리셋기능
 						pntDcAmtReset();
 						return false;
@@ -2046,11 +2102,13 @@ var custCpnNotApply = function(obj, idx) {
 
 // 1.14 선포인트리셋기능 (사용안함)
 var prePntDcAmtReset = function() {
-	var rmPrePntAmt = 0; 
-	
-	if ($("#orderForm input[name='rmPrePntAmt']") > 0) {
+	// 2021.04.29 수정
+	var rmPrePntAmt = parseInt($("#orderForm input[name='rmPrePntAmt']").val());
+	if (rmPrePntAmt > 0) {
 		rmPrePntAmt = parseInt($("#orderForm input[name='rmPrePntAmt']").val());
 		$("#orderForm input[name='prePntDcAmt']").val(rmPrePntAmt);
+	} else {
+		rmPrePntAmt = 0;
 	}
 	
 	// 선포인트사용여부 체크 후 적용
@@ -2208,12 +2266,18 @@ var custCpnSumAmtCal = function() {
 		var ordAmt			= ((orgCurrPrice +  - cpn1DcAmt) + optAddPrice) * goodsQty;
 		ordSumAmt			= ordSumAmt + ordAmt;
 		
-		// 선포인트사용여부
+		// 선포인트사용여부 
 		// 할인금액합계 = 다다익선수량금액 + 다다익선금액금액 + 상품쿠폰금액 + 장바구니금액 + 선포인트금액
 		if (prePntDcAmtYn == "Y") {
 			dcSumAmt		= tmtb1DcAmt + tmtb2DcAmt + goodsCpnDcAmt + cartCpnDcAmt + prePntDcAmt1;
+			
+			// 2021.04.29 선포인트사용포인트 적립포인트금액 0원처리
+			if (prePntDcAmt1 < 1) {
+				savePntSumAmt	= savePntSumAmt + savePntAmt1;
+			}
 		} else {
 			dcSumAmt		= tmtb1DcAmt + tmtb2DcAmt + goodsCpnDcAmt + cartCpnDcAmt;
+			savePntSumAmt	= savePntSumAmt + savePntAmt1;
 		}
 		
 		totDcSumAmt			= totDcSumAmt + dcSumAmt;
@@ -2222,7 +2286,7 @@ var custCpnSumAmtCal = function() {
 		$(this).parent().find(".ordAmt").text(ordAmt);
 		$(this).parent().find(".dcSumAmt").text(dcSumAmt);
 		
-		savePntSumAmt		= savePntSumAmt + savePntAmt1;
+		//savePntSumAmt		= savePntSumAmt + savePntAmt1;
 	});
 	
 	// 포인트, 상품권 금액 분배
@@ -2282,8 +2346,8 @@ var custCpnSumAmtCal = function() {
 	rmPntAmt 				= rmPntAmt - freegiftUsePnt; 
 	$("#orderForm .rmPntAmt").text(rmPntAmt.addComma());
 	
-	// 적립포인트
-	$("#savePntSumAmt").text(savePntSumAmt.addComma()+" P");
+	// 2021.04.29 적립포인트금액 선포인트 사용시 사용금액제외
+	$("#orderForm #savePntSumAmt").text(savePntSumAmt.addComma() + " P");
 	
 	// 사은품정보 설정
 	var freegiftValArr 			= [];

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/order/OrderPaymentInfoMob.html

@@ -95,7 +95,7 @@
 									‘전자상거래 등에서의 소비자보호에 관한 법률‘에 따라 현금 결제 시 서울보증보험㈜가 제공하는 소비자
 									피해보상보험을<br>신청할 수 있도록 해드리고 있습니다. (2013.11.28부터 시행)
 								</p>
-								<a href="" class="btn btn_default"><span>FAQ확인</span></a>
+								<a href="/callcenter/faq/form" class="btn btn_default"><span>FAQ확인</span></a>
 							</div>
 						</div>
 					</div>

+ 8 - 1
src/main/webapp/WEB-INF/views/mob/popup/DelvAddrAddPopMob.html

@@ -164,6 +164,13 @@ $("#btn_delivery_addr_save").on("click", function(){
 		delvMemo = $("#deliveryAddForm input[name=delvMemoText]").val();
 	}
 	
+	// 2021.04.29 추가
+	if (gagajf.isNull(delvMemo)) {
+		mcxDialog.alert("기타사항을 입력해주세요.");
+		$("#deliveryAddForm input[name=delvMemoText]").focus();
+		return false;
+	}
+	
 	// custDelvAddrSq 부모창으로 전달
 	var delvObj = {
 		"custDelvAddrSq"	: 0
@@ -216,7 +223,7 @@ $("#btn_delivery_addr_save").on("click", function(){
 var deliveryAddFormCheck = function() {
 	// TODO 유효성 체크 추가
 	if (gagajf.isNull($("#deliveryAddForm input[name=recipNm]").val())) {
-		mcxDialog.alert("이름을 입력해주세요.");
+		mcxDialog.alert("받는분을 입력해주세요.");
 		$('#deliveryAddForm input[name=custNm]').focus();
 		return false;
 	}

+ 8 - 1
src/main/webapp/WEB-INF/views/mob/popup/DelvAddrModifyPopMob.html

@@ -195,6 +195,13 @@ $("#btn_delivery_modi_save").on("click", function(){
 		delvMemo = $("#deliveryModifyForm input[name=delvMemoText]").val();
 	}
 	
+	// 2021.04.29 추가
+	if (gagajf.isNull(delvMemo)) {
+		mcxDialog.alert("기타사항을 입력해주세요.");
+		$("#deliveryAddForm input[name=delvMemoText]").focus();
+		return false;
+	}
+	
 	// 배송지정보설정
 	var jsonObj = {
 		"defaultYn"			: defaultYn
@@ -245,7 +252,7 @@ $("#btn_delivery_modi_save").on("click", function(){
 var deliveryModifyFormCheck = function() {
 	// TODO 유효성 체크 추가
 	if (gagajf.isNull($("#deliveryModifyForm input[name=recipNm]").val())) {
-		mcxDialog.alert("이름을 입력해주세요.");
+		mcxDialog.alert("받는분을 입력해주세요.");
 		$('#deliveryModifyForm input[name=custNm]').focus();
 		return false;
 	}

+ 7 - 2
src/main/webapp/WEB-INF/views/web/order/OrderCompleteWeb.html

@@ -256,8 +256,8 @@
 					</div>
 					<div class="sec_foot">
 						<div class="btn_group_md">
-							<button type="button" class="btn btn_default btn_md"><span>주문 상세보기</span></button>
-							<button type="button" class="btn btn_dark btn_md"><span>쇼핑 계속하기</span></button>
+							<button type="button" class="btn btn_default btn_md" th:ordno="${orderInfo.ordNo}" onclick="fnGoToOrderDetail(this)"><span>주문 상세보기</span></button>
+							<button type="button" class="btn btn_dark btn_md" onclick="location.href='/'"><span>쇼핑 계속하기</span></button>
 						</div>
 					</div>
 				</div>
@@ -392,6 +392,11 @@ var delvMemoSet = function(delvMemoObj) {
 	$("#delvMemo").text(delvMemo);
 }
 
+//주문상세보기 버튼 클릭 이벤트 처리
+var fnGoToOrderDetail = function(param) {
+	let ordNo = $(param).attr('ordNo');
+	cfnGoToPage(_PAGE_MYPAGE_ORDER_DETAIL + ordNo);
+}
 
 
 </script>

+ 8 - 4
src/main/webapp/WEB-INF/views/web/order/OrderDcAmtInfoWeb.html

@@ -169,8 +169,11 @@
 						<dd>
 							<div class="form_field">
 								<input type="hidden" name="rmPntAmt" th:value="${rmPntAmt}"/>
+								<input type="hidden" name="pointUseOrdMinAmt" th:value="${pointUseEnvset.pointUseOrdMinAmt}"/>
+								<input type="hidden" name="pointUseMaxLimit" th:value="${pointUseEnvset.pointUseMaxLimit}"/>
+								
 								<!-- 스타일 포인트 3만원 이상 결제시 노출 -->
-								<th:block th:if="${orgGoodsSumAmt} >= 30000">
+								<th:block th:if="${orgGoodsSumAmt} >= ${pointUseEnvset.pointUseOrdMinAmt}">
 									<div class="input_wrap">
 										<input type="text" name="pntDcAmtStr" class="form_control" maxlength="11" placeholder="사용할 포인트를 입력해주세요." onkeyup="inputNumberFormat(this);">
 										<button type="button" class="btn btn_dark btn_sm" id="btn_point_apply">
@@ -181,9 +184,9 @@
 								<!-- 스타일 포인트 3만원 이상 결제시 노출 -->
 								
 								<!-- 스타일 포인트 3만원 미만 결제시 노출 -->
-								<th:block th:if="${orgGoodsSumAmt} < 30000">
+								<th:block th:if="${orgGoodsSumAmt} < ${pointUseEnvset.pointUseOrdMinAmt}">
 									<div class="input_wrap">
-										<input type="text" class="form_control" maxlength="" placeholder="3만원 이상 결제시에만 포인트 사용이 가능합니다." disabled="">
+										<input type="text" class="form_control" maxlength="" th:placeholder="|${#numbers.formatInteger(pointUseEnvset.pointUseOrdMinAmt, 1, 'COMMA')} 이상 결제시에만 포인트 사용이 가능합니다.|" disabled="">
 									</div>
 								</th:block>
 								<!-- //스타일 포인트 3만원 미만 결제시 노출 -->
@@ -191,7 +194,8 @@
 								<p>
 									<span class="remain_point">보유:&nbsp;
 										<em class="rmPntAmt" th:text="${#numbers.formatInteger(rmPntAmt, 1, 'COMMA')}"></em>P
-									</span>(결제금액의 최대 40%까지 사용가능)
+									</span>
+									<th:block th:text="|(결제금액의 최대 ${pointUseEnvset.pointUseMaxLimit}%까지 사용가능)|"></th:block>
 								</p>
 							</div>
 						</dd>

+ 39 - 14
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -626,6 +626,11 @@ var custemerInfoSet = function() {
 
 // 1.2 배송정보로드
 var deliveryAddrInfoSet = function(delvObj, temp) {
+	
+	// 2021.04.29 AJAX 로드를 위한 변수 설정	
+	delvObj.foreignBuyYn 	= foreignBuyYn;
+	delvObj.orderMadeYn 	= orderMadeYn;
+	
 	$.ajax( {
 		type		: "POST",
 		url 		: '/order/deliveryAddrInfo',
@@ -866,8 +871,12 @@ var freegiftInfoSet = function() {
 					$("#orderForm .total_deduct").text(total_deduct.addComma());			// 사은품총사용포인트
 					$("#orderAmtForm .freegiftUsePnt").text(total_deduct);
 					
-					// 포인트초기화기능
-					pntDcAmtReset();
+					// 2021.04.29 사은품기능 리셋
+					var pntDcAmt = parseInt($("#orderAmtForm .pntDcSumAmt").text());
+					if (pntDcAmt > 0) {
+						mcxDialog.alert("적용된 할인/혜택이 초기화 됩니다.");
+						pntDcAmtReset();
+					}
 				});
 				
 				// 2021.04.29 무료사은품 기본선택
@@ -973,8 +982,9 @@ var paymentInfoSet = function() {
 						$("#orderForm .area_paymethod .agree_insurance").show();
 					} else {
 						$("#orderForm .area_paymethod .agree_insurance").hide();
-						$("#orderForm input[name=insuranceYn]").attr("checked", false);
 					}
+					// 2021.04.29 수정
+					$("#orderForm input[name=insuranceYn]").attr("checked", false);
 				});
 				
 				// 결재하기
@@ -1079,6 +1089,12 @@ var paymentInfoSet = function() {
 					var paynormalArr		= paynormal.split("|");
 					var pgGb				= paynormalArr[0];
 					var payMeans			= paynormalArr[1];
+					var custPayMeans		= "N";
+					
+					// 자주쓰는결제타입
+					if ($("#orderForm #chk-agree_paymethod").is(":checked") == true) {
+						custPayMeans		= "Y";
+					}
 
 					// 주문상세데이타 생성
 					$("#orderDetailInfo .cartSq").each(function(){
@@ -1197,6 +1213,7 @@ var paymentInfoSet = function() {
 						,"freegiftGoodsArr"		: freegiftGoodsArr
 						,"freegiftUsePointArr"	: freegiftUsePointArr
 						,"giftMsg"				: ""
+						,"custPayMeans"			: custPayMeans
 					};
 					
 					$.ajax( {
@@ -1383,7 +1400,8 @@ var dcAmtInfoSet = function() {
 					var freegiftUsePnt 		= parseInt($("#orderAmtForm .freegiftUsePnt").text());
 					var pntDcAmt 			= parseInt(uncomma($("#orderForm input[name='pntDcAmtStr']").val()));
 					var realOrdAmt 			= parseInt($("#orderAmtForm .realOrdSumAmt").text());
-					var applyPntDcAmt 		= (realOrdAmt * 40) / 100;
+					var pointUseMaxLimit	= parseInt($("#orderForm input[name='pointUseMaxLimit']").val());
+					var applyPntDcAmt 		= (realOrdAmt * pointUseMaxLimit) / 100;
 					
 					rmPntAmt				= rmPntAmt - freegiftUsePnt;
 					
@@ -1435,7 +1453,7 @@ var dcAmtInfoSet = function() {
 					
 					// 실결제금액보다 크게 적용 되었을때 적용 불가능
 					if (pntDcAmt > applyPntDcAmt) {
-						mcxDialog.alert("결제금액의 최대 40%를 초과 사용 할 수 없습니다.");
+						mcxDialog.alert("결제금액의 최대 " + pointUseMaxLimit +"%를 초과 사용 할 수 없습니다.");
 						// 포인트리셋기능
 						pntDcAmtReset();
 						return false;
@@ -1986,15 +2004,15 @@ var custCpnNotApply = function(obj) {
 
 // 1.14 선포인트리셋기능 (사용안함)
 var prePntDcAmtReset = function() {
-	var rmPrePntAmt = 0;
-	
-	if ($("#orderForm input[name='rmPrePntAmt']") != null) {
+	// 2021.04.29 수정
+	var rmPrePntAmt = parseInt($("#orderForm input[name='rmPrePntAmt']").val());
+	if (rmPrePntAmt > 0) {
 		rmPrePntAmt = parseInt($("#orderForm input[name='rmPrePntAmt']").val());
 		$("#orderForm input[name='prePntDcAmt']").val(rmPrePntAmt);
+	} else {
+		rmPrePntAmt = 0;
 	}
 	
-	$("#orderForm input[name='prePntDcAmt']").val(rmPrePntAmt);
-	
 	// 선포인트사용여부 체크 후 적용
 	$("#orderForm input[name='rdi-beforpoint']").each(function(){
 		// 선포인트 초기 설정 사용함
@@ -2018,7 +2036,7 @@ var prePntDcAmtReset = function() {
 		});
 	});
 
-	$("#prePntDcAmt").text(getZeroMinusDelAmt(rmPrePntAmt)+" 원");
+	$("#orderForm #prePntDcAmt").text(getZeroMinusDelAmt(rmPrePntAmt)+" 원");
 
 	// 포인트기능 리렛
 	pntDcAmtReset();
@@ -2140,19 +2158,23 @@ var custCpnSumAmtCal = function() {
 		var ordAmt			= ((orgCurrPrice +  - cpn1DcAmt) + optAddPrice) * goodsQty;
 		ordSumAmt			= ordSumAmt + ordAmt;
 		
-		// 선포인트사용여부
+		// 선포인트사용여부 
 		// 할인금액합계 = 다다익선수량금액 + 다다익선금액금액 + 상품쿠폰금액 + 장바구니금액 + 선포인트금액
 		if (prePntDcAmtYn == "Y") {
 			dcSumAmt		= tmtb1DcAmt + tmtb2DcAmt + goodsCpnDcAmt + cartCpnDcAmt + prePntDcAmt1;
+			
+			// 2021.04.29 선포인트사용포인트 적립포인트금액 0원처리
+			if (prePntDcAmt1 < 1) {
+				savePntSumAmt	= savePntSumAmt + savePntAmt1;
+			}
 		} else {
 			dcSumAmt		= tmtb1DcAmt + tmtb2DcAmt + goodsCpnDcAmt + cartCpnDcAmt;
+			savePntSumAmt	= savePntSumAmt + savePntAmt1;
 		}
 		
 		// 주문금액설정
 		$(this).parent().find(".ordAmt").text(ordAmt);
 		$(this).parent().find(".dcSumAmt").text(dcSumAmt);
-		
-		savePntSumAmt		= savePntSumAmt + savePntAmt1;
 	});
 	
 	// 포인트, 상품권 금액 분배
@@ -2201,6 +2223,9 @@ var custCpnSumAmtCal = function() {
 	$("#realOrdAmt").text(realOrdSumAmt.addComma()); // 총 결제 예정 금액
 	$("#orderForm .realOrdAmt").text(realOrdSumAmt.addComma() + " 원"); // 총 결제 예정 금액
 	
+	// 2021.04.29 적립포인트금액 선포인트 사용시 사용금액제외
+	$("#orderForm #savePntSumAmt").text(savePntSumAmt.addComma() + " P");
+	
 	var tempSavePnt			= savePntSumAmt - prePntDcAmt;
 	
 	// 사은품사용 후 보유포인트	

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

@@ -77,7 +77,6 @@
 				</ul>
 			</div>
 		</div>
-		<!-- 
 		<div class="form_field">
 			<div class="agree_paymethod">
 				<input id="chk-agree_paymethod" type="checkbox">
@@ -88,14 +87,12 @@
 				</label>
 			</div>
 		</div>
-		 -->
-		 
 		<div class="form_field">
 			<div class="agree_insurance">
 				<input id="chk-insurance" type="checkbox" name="insuranceYn"> 
 				<label for="chk-insurance"> 
 					<span>소비자 피해 보상보험 신청&nbsp;&nbsp;<em class="tmark_optional">(선택)</em></span> 
-					<a href="javascript:void(0);" class="btn_underline"><span>FAQ확인</span></a>
+					<a href="/callcenter/faq/form" class="btn_underline"><span>FAQ확인</span></a>
 				</label>
 				<p>
 					‘전자상거래 등에서의 소비자보호에 관한 법률‘에 따라 현금 결제 시 서울보증보험㈜가 제공하는 소비자

+ 8 - 1
src/main/webapp/WEB-INF/views/web/popup/DelvAddrAddPopWeb.html

@@ -127,6 +127,13 @@ $("#btn_delivery_addr_save").on("click", function(){
 		delvMemo = $("#deliveryAddForm input[name=delvMemoText]").val();
 	}
 	
+	// 2021.04.29 추가
+	if (gagajf.isNull(delvMemo)) {
+		mcxDialog.alert("기타사항을 입력해주세요.");
+		$("#deliveryAddForm input[name=delvMemoText]").focus();
+		return false;
+	}
+	
 	// custDelvAddrSq 부모창으로 전달
 	var delvObj = {
 		"custDelvAddrSq"	: 0
@@ -179,7 +186,7 @@ $("#btn_delivery_addr_save").on("click", function(){
 var deliveryAddFormCheck = function() {
 	// TODO 유효성 체크 추가
 	if (gagajf.isNull($("#deliveryAddForm input[name=recipNm]").val())) {
-		mcxDialog.alert("이름을 입력해주세요.");
+		mcxDialog.alert("받는분을 입력해주세요.");
 		$('#deliveryAddForm input[name=custNm]').focus();
 		return false;
 	}

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

@@ -158,6 +158,13 @@ $("#btn_delivery_modi_save").on("click", function(){
 		delvMemo = $("#deliveryModifyForm input[name=delvMemoText]").val();
 	}
 	
+	// 2021.04.29 추가
+	if (gagajf.isNull(delvMemo)) {
+		mcxDialog.alert("기타사항을 입력해주세요.");
+		$("#deliveryAddForm input[name=delvMemoText]").focus();
+		return false;
+	}
+	
 	// 배송지정보설정
 	var jsonObj = {
 		"defaultYn"			: defaultYn
@@ -208,7 +215,7 @@ $("#btn_delivery_modi_save").on("click", function(){
 var deliveryModifyFormCheck = function() {
 	// TODO 유효성 체크 추가
 	if (gagajf.isNull($("#deliveryModifyForm input[name=recipNm]").val())) {
-		mcxDialog.alert("이름을 입력해주세요.");
+		mcxDialog.alert("받는분을 입력해주세요.");
 		$('#deliveryModifyForm input[name=custNm]').focus();
 		return false;
 	}

+ 7 - 0
src/main/webapp/WEB-INF/views/web/popup/DelvMemoChangePopWeb.html

@@ -90,6 +90,13 @@ $(document).ready( function() {
 		if (rtnTxt == "기타사항") {
 			rtnTxt = $("#deliveryAddrMemoForm input[name='delvMemoText']").val();
 		} 
+		
+		// 2021.04.29 추가
+		if (gagajf.isNull(rtnTxt)) {
+			mcxDialog.alert("기타사항을 입력해주세요.");
+			$("#deliveryAddrMemoForm input[name='delvMemoText']").focus();
+			return false;
+		}
 
 		// 배송메모 부모창에 설정
 		if (typeof fnChangeDelvMemo === 'function') {