Jelajahi Sumber

이슈리스트 수정사항 처리

jsh77b 4 tahun lalu
induk
melakukan
98e9f63433
31 mengubah file dengan 377 tambahan dan 122 penghapusan
  1. 36 0
      src/main/java/com/style24/front/biz/web/TsfCommonController.java
  2. 17 1
      src/main/java/com/style24/front/biz/web/TsfMypageController.java
  3. 4 2
      src/main/webapp/WEB-INF/views/mob/common/fragments/FooterMob.html
  4. 1 1
      src/main/webapp/WEB-INF/views/mob/customer/IdAndPwdFindFormMob.html
  5. 1 1
      src/main/webapp/WEB-INF/views/mob/customer/JoinFormMob.html
  6. 2 2
      src/main/webapp/WEB-INF/views/mob/customer/NonCustOrderConfirmFormMob.html
  7. 8 4
      src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailReviewFormMob.html
  8. 10 6
      src/main/webapp/WEB-INF/views/mob/goods/GoodsReviewDetailFormMob.html
  9. 27 4
      src/main/webapp/WEB-INF/views/mob/mypage/MypageCustDeliveryAddrFormMob.html
  10. 1 1
      src/main/webapp/WEB-INF/views/mob/mypage/MypageExchangeFormMob.html
  11. 12 11
      src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewCreateFormMob.html
  12. 10 6
      src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewDetailFormMob.html
  13. 11 6
      src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewFormMob.html
  14. 1 1
      src/main/webapp/WEB-INF/views/mob/mypage/NoMemberExchangeFormMob.html
  15. 1 1
      src/main/webapp/WEB-INF/views/mob/mypage/NoMemberReturnFormMob.html
  16. 12 3
      src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html
  17. 37 4
      src/main/webapp/WEB-INF/views/mob/order/OrderGiftCompleteMob.html
  18. 21 6
      src/main/webapp/WEB-INF/views/mob/order/OrderGiftInfoMob.html
  19. 10 6
      src/main/webapp/WEB-INF/views/mob/planning/PlanningReviewDetailFormMob.html
  20. 26 9
      src/main/webapp/WEB-INF/views/mob/popup/DelvAddrAddPopMob.html
  21. 22 6
      src/main/webapp/WEB-INF/views/mob/popup/DelvAddrChangePopMob.html
  22. 30 10
      src/main/webapp/WEB-INF/views/mob/popup/DelvAddrModifyPopMob.html
  23. 4 2
      src/main/webapp/WEB-INF/views/web/common/fragments/FooterWeb.html
  24. 1 1
      src/main/webapp/WEB-INF/views/web/customer/IdAndPwdFindFormWeb.html
  25. 9 4
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailReviewFormWeb.html
  26. 25 3
      src/main/webapp/WEB-INF/views/web/mypage/MypageCustDeliveryAddrFormWeb.html
  27. 10 10
      src/main/webapp/WEB-INF/views/web/mypage/MypageReviewCreateFormWeb.html
  28. 9 4
      src/main/webapp/WEB-INF/views/web/mypage/MypageReviewFormWeb.html
  29. 6 0
      src/main/webapp/WEB-INF/views/web/popup/DelvAddrChangePopWeb.html
  30. 8 7
      src/main/webapp/ux/mo/css/common_m.css
  31. 5 0
      src/main/webapp/ux/mo/css/style24_m.css

+ 36 - 0
src/main/java/com/style24/front/biz/web/TsfCommonController.java

@@ -449,5 +449,41 @@ public class TsfCommonController extends TsfBaseController {
 		
 		return rtn;
 	}
+	
+	/**
+	 * 배송지정등록 배송지등록수 체크
+	 *
+	 * @param
+	 * @return
+	 * @author jsh77b
+	 * @since 2021. 08. 11
+	 */
+	@ResponseBody
+	@PostMapping(value = "/addDelvAddrCnt")
+	public int addDelvAddrCnt(Order order) {
+		
+		// 1. 로그인체크 후 custNo 설정
+		if (TsfSession.isLogin()) {
+			order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
+		} else {
+			order.setCustNo(0);
+		}
+		
+		// 1.0 주문고객 배송지정보조회
+		Collection<Order> deliveryAddrList = coreOrderService.getDeliveryAddrInfo(order);
+		int index 				= 0;
+		int deliveryAddrCnt 	= deliveryAddrList.size();
+		
+		for (Order deliveryAddr : deliveryAddrList) {
+			if (index == 0) {
+				if (deliveryAddr.getRecipZipcode() == null || "".equals(deliveryAddr.getRecipZipcode())) {
+					deliveryAddrCnt = 0;
+				}
+			}
+		}
+		
+		int rtn = deliveryAddrCnt;
+		return rtn;
+	}
 
 }

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

@@ -2357,7 +2357,23 @@ public class TsfMypageController extends TsfBaseController {
 	@GetMapping("/delivery/addr/form")
 	public ModelAndView getDeliveryListForm() {
 		ModelAndView mav = new ModelAndView();
-
+		
+		CustDeliveryAddr custDeliveryAddr = new CustDeliveryAddr();
+		custDeliveryAddr.setCustNo(TsfSession.getInfo().getCustNo());
+		
+		Collection<CustDeliveryAddr> deliveryAddrList = customerService.getCustomerDeliveryAddrList(custDeliveryAddr);
+		int index 				= 0;
+		int deliveryAddrCnt 	= deliveryAddrList.size();
+		
+		for (CustDeliveryAddr deliveryAddr : deliveryAddrList) {
+			if (index == 0) {
+				if (deliveryAddr.getRecipZipcode() == null || "".equals(deliveryAddr.getRecipZipcode())) {
+					deliveryAddrCnt = 0;
+				}
+			}
+		}
+		
+		mav.addObject("deliveryAddrCnt"		, deliveryAddrCnt);			// 배송지등록수
 		mav.setViewName(super.getDeviceViewName("mypage/MypageCustDeliveryAddrForm"));
 
 		return mav;

+ 4 - 2
src/main/webapp/WEB-INF/views/mob/common/fragments/FooterMob.html

@@ -621,15 +621,17 @@ var cfnGetDaumRoadAddr = function(data) {
 	// 내려오는 변수가 값이 없는 경우엔 공백('') 값을 가지므로, 이를 참고하여 분기한다.
 	let fullRoadAddr = data.roadAddress; // 도로명 주소 변수
 	let extraRoadAddr = ''; // 도로명 조합형 주소 변수
-
+	
 	// 법정동명이 있을 경우 추가한다. (법정리는 제외)
 	// 법정동의 경우 마지막 문자가 "동/로/가"로 끝난다.
 	if (data.bname !== '' && /[동|로|가]$/g.test(data.bname)) {
 		extraRoadAddr += data.bname;
 	}
 
+	// 2021.08.11 건물명이 제대로 나오지 않음 수정
 	// 건물명이 있고, 공동주택일 경우 추가한다.
-	if (data.buildingName !== '' && data.apartment === 'Y') {
+	//if (data.buildingName !== '' && data.apartment === 'Y') {
+	if (data.buildingName !== '') {
 		extraRoadAddr += (extraRoadAddr !== '' ? ', ' + data.buildingName : data.buildingName);
 	}
 	

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/customer/IdAndPwdFindFormMob.html

@@ -63,7 +63,7 @@
 											<input type="text" name="custNm" placeholder="이름" class="form_control" maxlength="30"/>
 										</div>
 										<div class="form_field">
-											<input type="text" name="birthYmd" placeholder="생년월일 8자리 (예:19880912)" id="birthYmd" class="form_control" maxlength="8" data-valid-type="numeric"/>
+											<input type="number" pattern="\d*" name="birthYmd" placeholder="생년월일 8자리 (예:19880912)" id="birthYmd" class="form_control" maxlength="8" data-valid-type="numeric"/>
 										</div>
 										<div class="form_field">
 											<input type="text" name="email" placeholder="이메일" class="form_control"/>

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/customer/JoinFormMob.html

@@ -139,7 +139,7 @@
 					<label class="input_label sr-only">휴대폰번호</label>
 					<!-- 휴대폰 인증 입력 전 -->
 					<div class="input_wrap form_full">
-						<input type="text" id="cellPhnno" name="cellPhnno" placeholder="휴대폰 인증 해주세요." class="form_control" minlength="10" maxlength="11" required="required" data-valid-type="numeric" data-valid-name="휴대폰" readonly="readonly"/>
+						<input id="cellPhnno" name="cellPhnno" placeholder="휴대폰 인증 해주세요." class="form_control" minlength="10" maxlength="11" required="required" data-valid-type="numeric" data-valid-name="휴대폰" readonly="readonly"/>
 						<button type="button" id="btnCellPhoneCertify" class="btn btn_dark btn_hp_certi">
 							<span>본인인증</span>
 						</button>

+ 2 - 2
src/main/webapp/WEB-INF/views/mob/customer/NonCustOrderConfirmFormMob.html

@@ -47,11 +47,11 @@
 					</div>
 					<div class="form_field">
 						<label class="input_label sr-only">휴대폰 번호</label>
-						<input type="text" name="ordPhnno" placeholder="휴대폰 번호" id="ordPhnno" class="form_control" minlength="10" maxlength="11" required="required" data-valid-type="numeric" data-valid-name="휴대폰"/>
+						<input type="number" pattern="\d*" name="ordPhnno" placeholder="휴대폰 번호" id="ordPhnno" class="form_control" minlength="10" maxlength="11" required="required" data-valid-type="numeric" data-valid-name="휴대폰"/>
 					</div>
 					<div class="form_field">
 						<label class="input_label sr-only">주문번호</label>
-						<input type="text" name="ordNo" placeholder="주문 번호" id="ordNo" class="form_control" required="required" data-valid-type="numeric" data-valid-name="주문번호" maxlength="30"/>
+						<input type="number" pattern="\d*" name="ordNo" placeholder="주문 번호" id="ordNo" class="form_control" required="required" data-valid-type="numeric" data-valid-name="주문번호" maxlength="30"/>
 					</div>
 					<!-- 210415_수정 : 버튼 형식 변경. -->
 					<div class="btn_group_flex">

+ 8 - 4
src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailReviewFormMob.html

@@ -687,10 +687,14 @@
 			}
 			tag += '					</dd>\n';
 			tag += '				</div>\n';
-			tag += '				<div>\n';
-			tag += '					<dt>키/몸무게</dt>\n';
-			tag += '					<dd>'+ item.height +'cm/'+ item.weight +'kg</dd>\n';
-			tag += '				</div>\n';
+			
+			// 2021.08.11
+			if (item.height > 0 || item.weight > 0) {
+				tag += '				<div>\n';
+				tag += '					<dt>키/몸무게</dt>\n';
+				tag += '					<dd>'+ item.height +'cm/'+ item.weight +'kg</dd>\n';
+				tag += '				</div>\n';
+			}
 			tag += '			</dl>\n';
 			tag += '		</div>\n';
 			tag += '	</div>\n';

+ 10 - 6
src/main/webapp/WEB-INF/views/mob/goods/GoodsReviewDetailFormMob.html

@@ -88,12 +88,16 @@
 															</th:block>
 															</dd>
 														</div>
-														<div>
-															<dt>키/몸무게</dt>
-															<dd><th:block th:if="${not #strings.isEmpty(review.height)}" th:text="|${review.height}cm / |"></th:block> 
-																<th:block th:if="${not #strings.isEmpty(review.weight)}" th:text="|${review.weight}kg|"></th:block>
-															</dd>
-														</div>
+														<!-- 2021.08.11 -->
+														<th:block th:if="${review.height > 0 || review.weight > 0}">
+															<div>
+																<dt>키/몸무게</dt>
+																<dd>
+																	<th:block th:if="${not #strings.isEmpty(review.height)}" th:text="|${review.height}cm / |"></th:block> 
+																	<th:block th:if="${not #strings.isEmpty(review.weight)}" th:text="|${review.weight}kg|"></th:block>
+																</dd>
+															</div>
+														</th:block>
 													</dl>
 												</div>
 											</div>

+ 27 - 4
src/main/webapp/WEB-INF/views/mob/mypage/MypageCustDeliveryAddrFormMob.html

@@ -41,8 +41,12 @@
 		</div>
 	</section>
 </main>
+
 <script th:inline="javascript">
 	/*<![CDATA[*/
+	
+	// 2021.08.11 배송지갯수체크 20개이하
+	var deliveryAddrCnt = [[${deliveryAddrCnt}]];
 
 	var fnCustDeliveryAddList = function () {
 		$.get('/mypage/customer/delivery/addr/list', fnCustDeliveryAddListCallback);
@@ -110,9 +114,10 @@
 
 	// 배송지 추가
 	$('#btnAdrsaddPop').on('click', function () {
+		// 2021.08.11 배송지갯수체크 20개이하
 		$.ajax( {
 			type		: "POST",
-			url 		: '/common/delvAddrAddPop',
+			url 		: '/common/addDelvAddrCnt',
 			dataType 	: 'html',
 			beforeSend : function(xhr, settings) {
 				xhr.setRequestHeader("AJAX"			, "true");
@@ -120,14 +125,31 @@
 				xhr.setRequestHeader('Content-Type'	, 'application/json');
 			},
 			success 	: function(result) {
-				$("#adrsAddPop .modal-dialog .modal-content").html(result);
-				$("#adrsAddPop").modal("show");
+				if (parseInt(result) > 20) {
+					mcxDialog.alert("배송지는 최대 20개까지 등록 가능합니다.");
+					return false;
+				} else {
+					$.ajax( {
+						type		: "POST",
+						url 		: '/common/delvAddrAddPop',
+						dataType 	: 'html',
+						beforeSend : function(xhr, settings) {
+							xhr.setRequestHeader("AJAX"			, "true");
+							xhr.setRequestHeader('Accept'		, 'application/json');
+							xhr.setRequestHeader('Content-Type'	, 'application/json');
+						},
+						success 	: function(result) {
+							$("#adrsAddPop .modal-dialog .modal-content").html(result);
+							$("#adrsAddPop").modal("show");
+						}
+					});
+				}
 			}
 		});
 	});
 
 	var delvAddrSet = function (delvObj) {
-		if(!gagajf.isNull(delvObj.custDelvAddrSq)) {
+		if (!gagajf.isNull(delvObj.custDelvAddrSq)) {
 			fnCustDeliveryAddList();
 		}
 	};
@@ -177,6 +199,7 @@
 	$(document).ready(function() {
 		$('footer').hide();
 		$('#htopTitle').text('배송지 관리');
+		
 		// 배송목록 조회
 		fnCustDeliveryAddList();
 

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

@@ -257,7 +257,7 @@
 									</div>
 									<div class="phone">
 										<dt><span>반송 송장번호</span></dt>
-										<dd><input type="tel" class="form_control" name="wdInvoiceNo" data-valid-type="numeric" value="" oninput='handleOnInput(this, 20)' placeholder="송장번호를 입력해주세요."></dd>
+										<dd><input type="number" pattern="\d*" class="form_control" name="wdInvoiceNo" data-valid-type="numeric" value="" oninput='handleOnInput(this, 20)' placeholder="송장번호를 입력해주세요."></dd>
 									</div>
 								</dl>
 							</div>

+ 12 - 11
src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewCreateFormMob.html

@@ -95,7 +95,7 @@
 												<th>키</th>
 												<td>
 													<div class="form_field rev_height">
-														<input type="tel" class="form_control" oninput='handleOnInput(this, 3)' id="height" name="height" data-valid-type="numeric" placeholder="키를 숫자만 입력해주세요."><span>cm</span>
+														<input type="number" pattern="\d*" class="form_control" oninput='handleOnInput(this, 3)' id="height" name="height" data-valid-type="numeric" placeholder="키를 숫자만 입력해주세요."><span>cm</span>
 													</div>
 												</td>
 											</tr>
@@ -103,7 +103,7 @@
 												<th>몸무게</th>
 												<td>
 													<div class="form_field rev_height">
-														<input type="tel" class="form_control" oninput='handleOnInput(this, 3)' id="weight" name="weight" data-valid-type="numeric" placeholder="몸무게를 숫자만 입력해주세요."><span>kg</span>
+														<input type="number" pattern="\d*" type="tel" class="form_control" oninput='handleOnInput(this, 3)' id="weight" name="weight" data-valid-type="numeric" placeholder="몸무게를 숫자만 입력해주세요."><span>kg</span>
 													</div>
 												</td>
 											</tr>
@@ -346,17 +346,18 @@ var reviewCreate = function () {
 		return;
 	}
 	
-	if($("#reviewForm input[name=height]").val() == '' || $("#reviewForm input[name=height]").val() == null){
-		mcxDialog.alert('키를 입력하세요.');
-		return;
-	}
-	
-	if($("#reviewForm input[name=weight]").val() == '' || $("#reviewForm input[name=weight]").val() == null){
-		mcxDialog.alert('몸무게를 입력하세요.');
-		return;
-	} 
 	
+	// 2021.08.11 이슈리스트 수정사항 선택값으로등록
+	//if($("#reviewForm input[name=height]").val() == '' || $("#reviewForm input[name=height]").val() == null){
+	//	mcxDialog.alert('키를 입력하세요.');
+	//	return;
+	//}
 	
+	//if($("#reviewForm input[name=weight]").val() == '' || $("#reviewForm input[name=weight]").val() == null){
+	//	mcxDialog.alert('몸무게를 입력하세요.');
+	//	return;
+	//} 
+
 	if(reviewList.sizeGb == 'T' || reviewList.sizeGb == 'B' || reviewList.sizeGb == 'S'){
 		if($('#reviewForm input:radio[name=scoreSize]:checked').length == 0){
 			mcxDialog.alert('상품 사이즈를 평가해주세요.');

+ 10 - 6
src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewDetailFormMob.html

@@ -88,12 +88,16 @@
 															</th:block>
 															</dd>
 														</div>
-														<div>
-															<dt>키/몸무게</dt>
-															<dd><th:block th:if="${not #strings.isEmpty(review.height)}" th:text="|${review.height}cm / |"></th:block> 
-																<th:block th:if="${not #strings.isEmpty(review.weight)}" th:text="|${review.weight}kg|"></th:block>
-															</dd>
-														</div>
+														<!-- 2021.08.11 -->
+														<th:block th:if="${review.height > 0 || review.weight > 0}">
+															<div>
+																<dt>키/몸무게</dt>
+																<dd>
+																	<th:block th:if="${not #strings.isEmpty(review.height)}" th:text="|${review.height}cm / |"></th:block> 
+																	<th:block th:if="${not #strings.isEmpty(review.weight)}" th:text="|${review.weight}kg|"></th:block>
+																</dd>
+															</div>
+														</th:block>
 													</dl>
 												</div>
 											</div>

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

@@ -163,10 +163,15 @@
 					html += '						<dt>구매옵션</dt>\n';
 					html += '						<dd>'+item.colorNm+'</dd>\n';
 					html += '					</div>\n';
-					html += '					<div>\n';
-					html += '						<dt>키/몸무게</dt>\n';
-					html += '						<dd>'+item.height+'cm/'+item.weight+'kg</dd>\n';
-					html += '					</div>\n';
+					
+					// 2021.08.11 키, 몸무게 정보가 있으면 노출
+					if (item.height > 0 || item.weight > 0 ) {
+						html += '					<div>\n';
+						html += '						<dt>키/몸무게</dt>\n';
+						html += '						<dd>'+item.height+'cm/'+item.weight+'kg</dd>\n';
+						html += '					</div>\n';
+					}
+					
 					html += '				</dl>\n';
 					html += '			</div>\n';
 					html += '		</div>\n';
@@ -196,8 +201,8 @@
 						html += '		</div>\n';
 					}
 					html += '		<div class="txt_review_box" id="admin_'+item.reviewSq+'">\n';
-// 					html += '			<p style="white-space:pre;">'+item.reviewContent.escapeHtml()+'</p>\n';
-					html += '			<p>'+item.reviewContent.escapeHtml()+'</p>\n';
+ 					html += '			<p style="white-space:pre;">'+item.reviewContent.escapeHtml()+'</p>\n';
+//					html += '			<p>'+item.reviewContent.escapeHtml()+'</p>\n';
 					html += '		</div>\n';
 					html += '		<div  class="response_box2">\n';
 					html += '			<div>\n';

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

@@ -256,7 +256,7 @@
 									</div>
 									<div class="phone">
 										<dt><span>반송 송장번호</span></dt>
-										<dd><input type="tel" class="form_control" name="wdInvoiceNo" data-valid-type="numeric" value="" oninput='handleOnInput(this, 20)' placeholder="송장번호를 입력해주세요."></dd>
+										<dd><input type="number" pattern="\d*" class="form_control" name="wdInvoiceNo" data-valid-type="numeric" value="" oninput='handleOnInput(this, 20)' placeholder="송장번호를 입력해주세요."></dd>
 									</div>
 								</dl>
 							</div>

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

@@ -233,7 +233,7 @@
 									</div>
 									<div class="phone">
 										<dt><span>반송 송장번호</span></dt>
-										<dd><input type="tel" class="form_control" name="wdInvoiceNo" data-valid-type="numeric" value="" oninput='handleOnInput(this, 20)' placeholder="송장번호를 입력해주세요."></dd>
+										<dd><input type="number" pattern="\d*" class="form_control" name="wdInvoiceNo" data-valid-type="numeric" value="" oninput='handleOnInput(this, 20)' placeholder="송장번호를 입력해주세요."></dd>
 									</div>
 								</dl>
 							</div>

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

@@ -1217,20 +1217,23 @@ var paymentInfoSet = function() {
 						}
 						
 						// 2021.07.05
-						if ($("#orderForm #orderGiftInfo input[name=recipPhnno]").val().length < 12) {
+						if ($("#orderForm #orderGiftInfo input[name=recipPhnno]").val().length < 9) {
 							mcxDialog.alert("선물받을분 휴대폰번호를 정확히 입력해주세요.");
 							$('#orderForm #orderGiftInfo input[name=recipPhnno]').focus();
 							return false;
 						}
 						
-						if ($("#orderForm #orderGiftInfo input[name=recipPhnno]").val().length > 13) {
+						if ($("#orderForm #orderGiftInfo input[name=recipPhnno]").val().length > 12) {
 							mcxDialog.alert("선물받을분 휴대폰번호를 정확히 입력해주세요.");
 							$('#orderForm #orderGiftInfo input[name=recipPhnno]').focus();
 							return false;
 						}
 						
+						// 2021.08.11 
+						var recipPhnno = fnPhnnoSet($("#orderForm #orderGiftInfo input[name=recipPhnno]").val());
+						
 						$("#orderAmtForm .recipNm").text($("#orderForm #orderGiftInfo input[name=recipNm]").val());
-						$("#orderAmtForm .recipPhnno").text($("#orderForm #orderGiftInfo input[name=recipPhnno]").val());
+						$("#orderAmtForm .recipPhnno").text(recipPhnno);
 						
 						if (gagajf.isNull($("textarea#giftMsg").val())) {
 							giftMsg = "감사합니다.";
@@ -2978,6 +2981,12 @@ var uncomma = function(str) {
     str = String(str);
     return str.replace(/[^\d]+/g, '');
 }
+
+//하이픈처리
+var fnPhnnoSet = function(str) {
+	var rtnStr = str.replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-");
+	return rtnStr;
+}
 // 2021.04.09 숫자입려 천단위 찍기 ::: END 
 </script>
 

+ 37 - 4
src/main/webapp/WEB-INF/views/mob/order/OrderGiftCompleteMob.html

@@ -238,7 +238,7 @@
 															<tr>
 																<td>
 																	<span class="sr-only">휴대폰 번호</span>
-																	<input type="text" class="form_control" name="recipPhnno" placeholder="휴대폰 번호" th:value="${orderInfo.recipPhnno}" data-valid-type="numeric">
+																	<input type="number" pattern="\d*" class="form_control" name="recipPhnno" placeholder="휴대폰 번호" data-valid-type="numeric">
 																</td>
 															</tr>
 															<tr>
@@ -381,6 +381,7 @@
 var ordNo			= [[${orderInfo.ordNo}]]		// 배송목록
 var delvAddrSq		= [[${orderInfo.delvAddrSq}]];	// 배송지번호
 var giftMsg			= [[${orderInfo.giftMsg}]];		// 선물메세지
+var recipPhnno		= [[${orderInfo.recipPhnno}]];	// 휴대폰번호
 
 // item.questContent.replaceAll("\n", "</br>")
 
@@ -408,6 +409,9 @@ $(document).ready( function() {
 	
 	// 2021.06.18
 	$("#orderGiftForm .shipfold .fold_tit").trigger("click");
+	
+	// 2021.08.11 모바일 하이픈제거
+	$("#orderGiftForm input[name=recipPhnno]").val(recipPhnno.replaceAll("-", ""));
 });
 
 // 2.1 회원 배송지변경 팝업열기
@@ -513,11 +517,13 @@ $("#btn_delivery_addr_save").on("click", function(){
 		return false;
 	}
 	
+	var recipPhnno = fnPhnnoSet($("#deliveryModifyForm input[name=recipPhnno]").val());
+	
 	// 변수값 설정
 	var jsonObj = {
 		"delvAddrSq" 		: delvAddrSq
 		, "recipNm"			: $("#orderGiftForm input[name=recipNm]").val()
-		, "recipPhnno"		: $("#orderGiftForm input[name=recipPhnno]").val()
+		, "recipPhnno"		: recipPhnno
 		, "recipZipcode"	: $("#orderGiftForm input[name=recipZipcode]").val()
 		, "recipBaseAddr"	: $("#orderGiftForm input[name=recipBaseAddr]").val()
 		, "recipDtlAddr"	: $("#orderGiftForm input[name=recipDtlAddr]").val()
@@ -556,6 +562,18 @@ var deliveryAddFormCheck = function() {
 		return false;
 	}
 	
+	if ($("#orderGiftForm input[name=recipPhnno]").val().length < 9) {
+		mcxDialog.alert("휴대폰번호를 정확히 입력해주세요.");
+		$('#orderGiftForm input[name=recipPhnno]').focus();
+		return false;
+	}
+	
+	if ($("#orderGiftForm input[name=recipPhnno]").val().length > 12) {
+		mcxDialog.alert("휴대폰번호를 정확히 입력해주세요.");
+		$('#orderGiftForm input[name=recipPhnno]').focus();
+		return false;
+	}
+	
 	if (gagajf.isNull($("#orderGiftForm input[name=recipZipcode]").val())) {
 		mcxDialog.alert("배송주소를 입력해주세요.");
 		$('#orderGiftForm input[name=recipAddr]').focus();
@@ -598,9 +616,24 @@ var fnOpenDaumAddr = function() {
 	cfnOpenDaumAddr(daumZip);
 }
 
+//하이픈처리
+var fnPhnnoSet = function(str) {
+	var rtnStr = str.replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-");
+	return rtnStr;
+}
+
 // 2021.04.09 하이픈처리
-$(document).on("keyup", "#orderGiftForm input[name=recipPhnno]", function() { 
-	$(this).val( $(this).val().replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-") ); 
+//$(document).on("keyup", "#orderGiftForm input[name=recipPhnno]", function() { 
+//	$(this).val( $(this).val().replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-") ); 
+//});
+
+//length 체크
+$("#orderGiftForm input[name=recipPhnno]").on("keyup", function(){
+	var str = $(this).val();
+	if (str.length > 12) {
+		str = str.slice(0,13);
+	}
+	$(this).val(str);
 });
 
 // 2021.06.18 교환 옵션 변경 팝업

+ 21 - 6
src/main/webapp/WEB-INF/views/mob/order/OrderGiftInfoMob.html

@@ -37,7 +37,7 @@
 									<input type="text" name="recipNm" class="form_control" value="" maxlength="10" placeholder="받는 분" style="ime-mode:active">
 								</div>
 								<div class="input_wrap">
-									<input type="text" name="recipPhnno" class="form_control" value="" minlength="12" maxlength="13" placeholder="받는 분 휴대폰번호" data-valid-type="numeric">
+									<input type="number" pattern="\d*" name="recipPhnno" class="form_control" value="" placeholder="받는 분 휴대폰번호" data-valid-type="numeric">
 									<p class="desc_txt">선물이 타인에게 전송될수 있으니 받으실분 연락처를 정확하게 입력해주세요.</p> <!-- 210421_삭제 : 전화번호를 텍스트 삭제 -->
 								</div>
 								<div class="textarea_wrap">
@@ -60,11 +60,11 @@
 								<div class="form_field">
 									<div class="tab_cont active">
 										<div class="input_wrap">
-											<input type="text" name="recipNm" class="form_control" value="" maxlength="10" placeholder="받는 분" style="ime-mode:active">
+											<input type="number" name="recipNm" class="form_control" value="" maxlength="10" placeholder="받는 분" style="ime-mode:active">
 										</div>
 										<div class="form_field">
 											<div class="input_wrap">
-												<input type="text" name="recipPhnno" class="form_control" value="" minlength="11" maxlength="13" placeholder="받으실분 휴대폰번호" data-valid-type="numeric">
+												<input type="number" pattern="\d*" name="recipPhnno" class="form_control" value="" placeholder="받으실분 휴대폰번호" data-valid-type="numeric">
 												<p class="desc_txt">선물이 타인에게 전송될수 있으니 전화번호를 받으실분 연락처를 정확하게 입력해주세요.</p>
 											</div>
 											<div class="textarea_wrap">
@@ -107,11 +107,26 @@ $(document).ready( function() {
 	//alert("userAgent ::: " + userAgent);
 });
 
-//2021.04.09 하이픈처리
-$(document).on("keyup", "#orderGiftInfo input[name=recipPhnno]", function() { 
-	$(this).val($(this).val().replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-") ); 
+//하이픈처리
+var fnPhnnoSet = function(str) {
+	var rtnStr = str.replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-");
+	return rtnStr;
+}
+
+//length 체크
+$("#orderGiftInfo input[name=recipPhnno]").on("keyup", function(){
+	var str = $(this).val();
+	if (str.length > 12) {
+		str = str.slice(0,13);
+	}
+	$(this).val(str);
 });
 
+//2021.04.09 하이픈처리
+//$(document).on("keyup", "#orderGiftInfo input[name=recipPhnno]", function() { 
+//	$(this).val($(this).val().replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-") ); 
+//});
+
 //선물 받으실 분 직접입력 글자 제한
 $('.doc_review').keyup(function (e){
 	var content = $(this).val();

+ 10 - 6
src/main/webapp/WEB-INF/views/mob/planning/PlanningReviewDetailFormMob.html

@@ -81,12 +81,16 @@
 															</th:block>
 															</dd>
 														</div>
-														<div>
-															<dt>키/몸무게</dt>
-															<dd><th:block th:if="${not #strings.isEmpty(review.height)}" th:text="|${review.height}cm / |"></th:block> 
-																<th:block th:if="${not #strings.isEmpty(review.weight)}" th:text="|${review.weight}kg|"></th:block>
-															</dd>
-														</div>
+														<!-- 2021.08.11 -->
+														<th:block th:if="${review.height > 0 || review.weight > 0}">
+															<div>
+																<dt>키/몸무게</dt>
+																<dd>
+																	<th:block th:if="${not #strings.isEmpty(review.height)}" th:text="|${review.height}cm / |"></th:block> 
+																	<th:block th:if="${not #strings.isEmpty(review.weight)}" th:text="|${review.weight}kg|"></th:block>
+																</dd>
+															</div>
+														</th:block>
 													</dl>
 												</div>
 											</div>

+ 26 - 9
src/main/webapp/WEB-INF/views/mob/popup/DelvAddrAddPopMob.html

@@ -10,7 +10,7 @@
 						<table>
 							<colgroup>
 								<col width="*">
-							</colgroup>   
+							</colgroup>
 							<tbody>
 								<tr>
 									<td>
@@ -21,7 +21,7 @@
 								<tr>
 									<td>
 										<span class="sr-only">휴대폰 번호</span>
-										<input type="text" class="form_control" name="recipPhnno" minlength="12" maxlength="13" placeholder="휴대폰 번호">
+										<input type="number" class="form_control" name="recipPhnno" placeholder="휴대폰 번호" data-valid-type="numeric">
 									</td>
 								</tr>
 								<tr>
@@ -173,13 +173,15 @@ $("#btn_delivery_addr_save").on("click", function(){
 		return false;
 	}
 	
+	var recipPhnno = fnPhnnoSet($("#deliveryAddForm input[name=recipPhnno]").val());
+	
 	// custDelvAddrSq 부모창으로 전달
 	var delvObj = {
 		"custDelvAddrSq"	: 0
 		, "dispYn"			: "Y"
 		, "defaultYn"		: defaultYn
 		, "recipNm"			: $("#deliveryAddForm input[name=recipNm]").val()
-		, "recipPhnno"		: $("#deliveryAddForm input[name=recipPhnno]").val()
+		, "recipPhnno"		: recipPhnno
 		, "recipZipcode"	: $("#deliveryAddForm input[name=recipZipcode]").val()
 		, "recipBaseAddr"	: $("#deliveryAddForm input[name=recipBaseAddr]").val()
 		, "recipDtlAddr"	: $("#deliveryAddForm input[name=recipDtlAddr]").val()
@@ -210,7 +212,7 @@ $("#btn_delivery_addr_save").on("click", function(){
 		success 	: function(result) {
 			if (result != null) {
 				delvObj.custDelvAddrSq = result;
-				
+
 				// 부모장으로 값 전닫
 				delvAddrSet(delvObj);
 			}
@@ -236,13 +238,13 @@ var deliveryAddFormCheck = function() {
 		return false;
 	}
 
-	if ($("#deliveryAddForm input[name=recipPhnno]").val().length < 12) {
+	if ($("#deliveryAddForm input[name=recipPhnno]").val().length < 9) {
 		mcxDialog.alert("휴대폰번호를 정확히 입력해주세요.");
 		$('#deliveryAddForm input[name=recipPhnno]').focus();
 		return false;
 	}
 	
-	if ($("#deliveryAddForm input[name=recipPhnno]").val().length > 13) {
+	if ($("#deliveryAddForm input[name=recipPhnno]").val().length > 12) {
 		mcxDialog.alert("휴대폰번호를 정확히 입력해주세요.");
 		$('#deliveryAddForm input[name=recipPhnno]').focus();
 		return false;
@@ -289,10 +291,25 @@ var fnOpenDaumAddr = function() {
 	cfnOpenDaumAddr(daumZip);
 }
 
-//2021.04.09 하이픈처리
-$(document).on("keyup", "#deliveryAddForm input[name=recipPhnno]", function() { 
-	$(this).val( $(this).val().replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-") ); 
+// 하이픈처리
+var fnPhnnoSet = function(str) {
+	var rtnStr = str.replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-");
+	return rtnStr;
+}
+
+// length 체크
+$("#deliveryAddForm input[name=recipPhnno]").on("keyup", function(){
+	var str = $(this).val();
+	if (str.length > 12) {
+		str = str.slice(0,13);
+	}
+	$(this).val(str);
 });
+
+//2021.04.09 하이픈처리
+//$(document).on("keyup", "#deliveryAddForm input[name=recipPhnno]", function() { 
+//	$(this).val( $(this).val().replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-") ); 
+//});
 </script>
 
 

+ 22 - 6
src/main/webapp/WEB-INF/views/mob/popup/DelvAddrChangePopMob.html

@@ -149,13 +149,12 @@ $("#delvAddrChangeForm .btn_addrModify_pop").on("click", function(){
 	});	
 });
 
-
 // 2.3 배송지추가 팝업열기
 $('#btn_adrsAdd_pop').on("click", function(){
+	// 2021.08.11 배송지갯수체크 20개이하
 	$.ajax( {
 		type		: "POST",
-		url 		: '/common/delvAddrAddPop',
-		data		: JSON.stringify(jsonObj),
+		url 		: '/common/addDelvAddrCnt',
 		dataType 	: 'html',
 		beforeSend : function(xhr, settings) {
 			xhr.setRequestHeader("AJAX"			, "true");
@@ -163,10 +162,27 @@ $('#btn_adrsAdd_pop').on("click", function(){
 			xhr.setRequestHeader('Content-Type'	, 'application/json');
 		},
 		success 	: function(result) {
-			$("#adrsAddPop .modal-dialog .modal-content").html(result);
-			$("#adrsAddPop").modal("show");
+			if (parseInt(result) > 20) {
+				mcxDialog.alert("배송지는 최대 20개까지 등록 가능합니다.");
+				return false;
+			} else {
+				$.ajax( {
+					type		: "POST",
+					url 		: '/common/delvAddrAddPop',
+					dataType 	: 'html',
+					beforeSend : function(xhr, settings) {
+						xhr.setRequestHeader("AJAX"			, "true");
+						xhr.setRequestHeader('Accept'		, 'application/json');
+						xhr.setRequestHeader('Content-Type'	, 'application/json');
+					},
+					success 	: function(result) {
+						$("#adrsAddPop .modal-dialog .modal-content").html(result);
+						$("#adrsAddPop").modal("show");
+					}
+				});
+			}
 		}
-	});	
+	});
 });
 
 </script>

+ 30 - 10
src/main/webapp/WEB-INF/views/mob/popup/DelvAddrModifyPopMob.html

@@ -23,7 +23,7 @@
 								<tr>
 									<td>
 										<span class="sr-only">휴대폰 번호</span>
-										<input type="text" class="form_control" name="recipPhnno" minlength="12" maxlength="13" placeholder="휴대폰 번호" th:value="${deliveryAddrInfo.recipPhnno}">
+										<input type="number" class="form_control" name="recipPhnno" placeholder="휴대폰 번호" data-valid-type="numeric">
 									</td>
 								</tr>
 								<tr>
@@ -32,7 +32,6 @@
 										<div class="input_wrap">
 											<input type="hidden" name="recipZipcode" placeholder="우편번호" th:value="${deliveryAddrInfo.recipZipcode}" readonly="readonly">
 											<input type="hidden" class="form_control" name="recipBaseAddr" placeholder="기본주소"th:value="${deliveryAddrInfo.recipBaseAddr}" readonly="readonly">
-							
 											<input type="text" class="form_control" placeholder="배송주소" name="recipAddr" th:value="${deliveryAddrInfo.recipZipcode} + '    '+ ${deliveryAddrInfo.recipBaseAddr}" readonly="readonly">
 											<input type="text" class="form_control" placeholder="상세주소" name="recipDtlAddr" th:value="${deliveryAddrInfo.recipDtlAddr}">
 											<button type="button" class="btn btn_sch" onclick="fnOpenDaumAddr();">
@@ -135,7 +134,8 @@
 </form>
 
 <script th:inline="javascript">
-var delvMemo = [[${deliveryAddrInfo.delvMemo}]];
+var delvMemo 	= [[${deliveryAddrInfo.delvMemo}]];
+var recipPhnno 	= [[${deliveryAddrInfo.recipPhnno}]];
 //컨텐츠 호출
 $(document).ready( function() {
 	
@@ -175,6 +175,9 @@ $(document).ready( function() {
 			}
 		});
 	});
+	
+	// 2021.08.11 모바일 하이픈제거
+	$("#deliveryModifyForm input[name=recipPhnno]").val(recipPhnno.replaceAll("-", ""));
 });
 
 // 배송지등록버튼
@@ -204,12 +207,14 @@ $("#btn_delivery_modi_save").on("click", function(){
 		return false;
 	}
 	
+	var recipPhnno = fnPhnnoSet($("#deliveryModifyForm input[name=recipPhnno]").val());
+	
 	// 배송지정보설정
 	var jsonObj = {
 		"defaultYn"			: defaultYn
 		, "custDelvAddrSq"	: parseInt($("#deliveryModifyForm input[name=custDelvAddrSq]").val())
 		, "recipNm"			: $("#deliveryModifyForm input[name=recipNm]").val()
-		, "recipPhnno"		: $("#deliveryModifyForm input[name=recipPhnno]").val()
+		, "recipPhnno"		: recipPhnno
 		, "recipZipcode"	: $("#deliveryModifyForm input[name=recipZipcode]").val()
 		, "recipBaseAddr"	: $("#deliveryModifyForm input[name=recipBaseAddr]").val()
 		, "recipDtlAddr"	: $("#deliveryModifyForm input[name=recipDtlAddr]").val()
@@ -234,7 +239,7 @@ $("#btn_delivery_modi_save").on("click", function(){
 				"custDelvAddrSq"	: parseInt($("#deliveryModifyForm input[name=custDelvAddrSq]").val())
 				, "dispYn"			: "Y"
 				, "recipNm"			: $("#deliveryModifyForm input[name=recipNm]").val()
-				, "recipPhnno"		: $("#deliveryModifyForm input[name=recipPhnno]").val()
+				, "recipPhnno"		: recipPhnno
 				, "recipZipcode"	: $("#deliveryModifyForm input[name=recipZipcode]").val()
 				, "recipBaseAddr"	: $("#deliveryModifyForm input[name=recipBaseAddr]").val()
 				, "recipDtlAddr"	: $("#deliveryModifyForm input[name=recipDtlAddr]").val()
@@ -264,13 +269,13 @@ var deliveryModifyFormCheck = function() {
 		return false;
 	}
 
-	if ($("#deliveryModifyForm input[name=recipPhnno]").val().length < 12) {
+	if ($("#deliveryModifyForm input[name=recipPhnno]").val().length < 9) {
 		mcxDialog.alert("휴대폰번호를 정확히 입력해주세요.");
 		$('#deliveryModifyForm input[name=recipPhnno]').focus();
 		return false;
 	}
 	
-	if ($("#deliveryModifyForm input[name=recipPhnno]").val().length > 13) {
+	if ($("#deliveryModifyForm input[name=recipPhnno]").val().length > 12) {
 		mcxDialog.alert("휴대폰번호를 정확히 입력해주세요.");
 		$('#deliveryModifyForm input[name=recipPhnno]').focus();
 		return false;
@@ -318,8 +323,23 @@ var fnOpenDaumAddr = function() {
 	cfnOpenDaumAddr(daumZip);
 }
 
-//2021.04.09 하이픈처리
-$(document).on("keyup", "#deliveryModifyForm input[name=recipPhnno]", function() { 
-	$(this).val( $(this).val().replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-") ); 
+//하이픈처리
+var fnPhnnoSet = function(str) {
+	var rtnStr = str.replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-");
+	return rtnStr;
+}
+
+//length 체크
+$("#deliveryModifyForm input[name=recipPhnno]").on("keyup", function(){
+	var str = $(this).val();
+	if (str.length > 12) {
+		str = str.slice(0,13);
+	}
+	$(this).val(str);
 });
+
+//2021.04.09 하이픈처리
+//$(document).on("keyup", "#deliveryModifyForm input[name=recipPhnno]", function() { 
+//	$(this).val( $(this).val().replace(/[^0-9]/g, "").replace(/(^02|^0505|^1[0-9]{3}|^0[0-9]{2})([0-9]+)?([0-9]{4})$/,"$1-$2-$3").replace("--", "-") ); 
+//});
 </script>

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

@@ -1876,9 +1876,11 @@ var cfnGetDaumRoadAddr = function(data) {
 	if (data.bname !== '' && /[동|로|가]$/g.test(data.bname)) {
 		extraRoadAddr += data.bname;
 	}
-
+	
+	// 2021.08.11 건물명이 제대로 나오지 않음 수정
 	// 건물명이 있고, 공동주택일 경우 추가한다.
-	if (data.buildingName !== '' && data.apartment === 'Y') {
+	//if (data.buildingName !== '' && data.apartment === 'Y') {
+	if (data.buildingName !== '') {
 		extraRoadAddr += (extraRoadAddr !== '' ? ', ' + data.buildingName : data.buildingName);
 	}
 	

+ 1 - 1
src/main/webapp/WEB-INF/views/web/customer/IdAndPwdFindFormWeb.html

@@ -67,7 +67,7 @@
 											<label class="input_label sr-only">생년월일 8자리 (예:19880912)</label>
 											<div class="ui_col_12">
 												<div class="input_wrap">
-													<input type="text" name="birthYmd" placeholder="생년월일 8자리 (예:19880912)" id="birthYmd" class="form_control" maxlength="8" data-valid-type="numeric"/>
+													<input type="number" pattern="\d*" name="birthYmd" placeholder="생년월일 8자리 (예:19880912)" id="birthYmd" class="form_control" maxlength="8" data-valid-type="numeric"/>
 												</div>
 											</div>
 										</div>

+ 9 - 4
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailReviewFormWeb.html

@@ -517,10 +517,15 @@
 				tag += '		</div>\n';
 				tag += '		<div>\n';
 				tag += '			<dl>\n';
-				tag += '				<div>\n';
-				tag += '					<dt>키/몸무게</dt>\n';
-				tag += '					<dd>'+ item.height +'cm/'+ item.weight +'kg</dd>\n';
-				tag += '				</div>\n';
+				
+				// 2021.08.11 키, 몸무게 정보가 있으면 노출
+				if (item.height > 0 || item.weight > 0 ) {
+					tag += '				<div>\n';
+					tag += '					<dt>키/몸무게</dt>\n';
+					tag += '					<dd>'+ item.height +'cm/'+ item.weight +'kg</dd>\n';
+					tag += '				</div>\n';
+				}
+				
 				if (!gagajf.isNull(item.sizeGb) ){	// 사이즈구분값이 있을경우 노출
 					tag += '				<div>\n';
 					tag += '					<dt>사이즈</dt>\n';

+ 25 - 3
src/main/webapp/WEB-INF/views/web/mypage/MypageCustDeliveryAddrFormWeb.html

@@ -67,6 +67,9 @@
 </div>
 <script th:inline="javascript">
 	/*<![CDATA[*/
+	
+	// 2021.08.11 배송지갯수체크 20개이하
+	var deliveryAddrCnt = [[${deliveryAddrCnt}]];
 
 	var fnCustDeliveryAddList = function () {
 		$.get('/mypage/customer/delivery/addr/list', fnCustDeliveryAddListCallback);
@@ -130,9 +133,11 @@
 
 	// 배송지 추가
 	$('#btnAdrsaddPop').on('click', function () {
+		
+		// 2021.08.11 배송지갯수체크 20개이하
 		$.ajax( {
 			type		: "POST",
-			url 		: '/common/delvAddrAddPop',
+			url 		: '/common/addDelvAddrCnt',
 			dataType 	: 'html',
 			beforeSend : function(xhr, settings) {
 				xhr.setRequestHeader("AJAX"			, "true");
@@ -140,8 +145,25 @@
 				xhr.setRequestHeader('Content-Type'	, 'application/json');
 			},
 			success 	: function(result) {
-				$("#adrsAddPop .modal-dialog .modal-content").html(result);
-				$("#adrsAddPop").modal("show");
+				if (parseInt(result) > 20) {
+					mcxDialog.alert("배송지는 최대 20개까지 등록 가능합니다.");
+					return false;
+				} else {
+					$.ajax( {
+						type		: "POST",
+						url 		: '/common/delvAddrAddPop',
+						dataType 	: 'html',
+						beforeSend : function(xhr, settings) {
+							xhr.setRequestHeader("AJAX"			, "true");
+							xhr.setRequestHeader('Accept'		, 'application/json');
+							xhr.setRequestHeader('Content-Type'	, 'application/json');
+						},
+						success 	: function(result) {
+							$("#adrsAddPop .modal-dialog .modal-content").html(result);
+							$("#adrsAddPop").modal("show");
+						}
+					});
+				}
 			}
 		});
 	});

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

@@ -430,17 +430,17 @@ var reviewCreate = function () {
 		return;
 	}
 	
-	if($("#reviewForm input[name=height]").val() == '' || $("#reviewForm input[name=height]").val() == null){
-		mcxDialog.alert('키를 입력하세요.');
-		return;
-	}
-	
-	if($("#reviewForm input[name=weight]").val() == '' || $("#reviewForm input[name=weight]").val() == null){
-		mcxDialog.alert('몸무게를 입력하세요.');
-		return;
-	} 
-	
+	// 2021.08.11 이슈리스트 수정사항 선택값으로등록
+	//if($("#reviewForm input[name=height]").val() == '' || $("#reviewForm input[name=height]").val() == null){
+	//	mcxDialog.alert('키를 입력하세요.');
+	//	return;
+	//}
 	
+	//if($("#reviewForm input[name=weight]").val() == '' || $("#reviewForm input[name=weight]").val() == null){
+	//	mcxDialog.alert('몸무게를 입력하세요.');
+	//	return;
+	//} 
+
 	if(reviewList.sizeGb == 'T' || reviewList.sizeGb == 'B' || reviewList.sizeGb == 'S'){
 		if($('#reviewForm input:radio[name=scoreSize]:checked').length == 0){
 			mcxDialog.alert('상품 사이즈를 평가해주세요.');

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

@@ -269,10 +269,15 @@
 				html+='							</div>\n';
 				html+='							<div>\n';
 				html+='								<dl>\n';
-				html+='									<div>\n';
-				html+='										<dt>키/몸무게</dt>\n';
-				html+='										<dd>'+item.height+'cm/'+item.weight+'kg</dd>\n';
-				html+='									</div>\n';
+				
+				// 2021.08.11 키, 몸무게 정보가 있으면 노출
+				if (item.height > 0 || item.weight > 0 ) {
+					html+='									<div>\n';
+					html+='										<dt>키/몸무게</dt>\n';
+					html+='										<dd>'+item.height+'cm/'+item.weight+'kg</dd>\n';
+					html+='									</div>\n';
+				}
+
 				if (item.sizeGb == 'T' || item.sizeGb == 'B' || item.sizeGb == 'S') {
 					html+='									<div>\n';
 					html+='										<dt>사이즈</dt>\n';

+ 6 - 0
src/main/webapp/WEB-INF/views/web/popup/DelvAddrChangePopWeb.html

@@ -136,6 +136,12 @@ $("#delvAddrChangeForm .btn_addrModify_pop").on("click", function(){
 
 // 2.3 배송지추가 팝업열기
 $('#btn_adrsAdd_pop').on("click", function(){
+	// 2021.08.11 배송지갯수체크 20개이하
+	if (deliveryAddrCnt > 20) {
+		mcxDialog.alert("배송지는 최대 20개까지 등록 가능합니다.");
+		return false;
+	}
+	
 	$.ajax( {
 		type		: "POST",
 		url 		: '/common/delvAddrAddPop',

+ 8 - 7
src/main/webapp/ux/mo/css/common_m.css

@@ -204,7 +204,8 @@ textarea {background-color:transparent; border:0.1rem solid #d7d7d7; width:99%;
 
 select, 
 .form_full input[type="text"], 
-.form_full input[type="select"], 
+.form_full input[type="select"],
+.form_full input[type="number"],  
 .form_full input[type="password"]{ width: 100%;}
 .form_full .input_wrap, 
 .form_full.input_wrap{display: block;}
@@ -230,12 +231,12 @@ select,
 /* form style */
 input,  textarea {font-size:1.2rem; font-family:'Noto Sans KR', 'LATO', sans-serif; color:#666666; vertical-align:middle;}
 select{font-size:1.2rem; font-family:'Noto Sans KR', 'LATO', sans-serif; color:#666666; vertical-align:middle;}
-input[type="text"], input[type="password"] {padding:0 1.5rem; border:0.1rem solid #dddddd;box-sizing: border-box; -webkit-appearance: none; -webkit-border-radius: 0;} 
-input[type="text"]:focus, input[type="password"]:focus,
-input[type="text"].active, input[type="password"].active {border-color: #aaaaaa;} 
-input[type="text"]:disabled, input[type="password"]:disabled, input[type="select"]:disabled,
-input[type="text"]:read-only, input[type="password"]:read-only, input[type="select"]:read-only {background: #F9F9F9;border-color: #dddddd;}
-table input[type="text"], table input[type="password"] {padding:0.6rem 0 0.6rem 0.9rem;}
+input[type="text"], input[type="password"],input[type="number"] {padding:0 1.5rem; border:0.1rem solid #dddddd;box-sizing: border-box; -webkit-appearance: none; -webkit-border-radius: 0;} 
+input[type="text"]:focus, input[type="password"]:focus, input[type="number"]:focus
+input[type="text"].active, input[type="password"].active, input[type="number"].active {border-color: #aaaaaa;} 
+input[type="text"]:disabled, input[type="password"]:disabled, input[type="select"]:disabled, input[type="number"]:disabled
+input[type="text"]:read-only, input[type="password"]:read-only, input[type="select"]:read-only, input[type="number"]:read-only {background: #F9F9F9;border-color: #dddddd;}
+table input[type="text"], table input[type="password"], table input[type="number"] {padding:0.6rem 0 0.6rem 0.9rem;}
 input[type="checkbox"], input[type="radio"] {width:1.3rem; height:1.3rem; margin-right:0.3rem; position:relative; top:0.1rem;}
 input[type=search]::-webkit-search-cancel-button{display:none;}
 input[type="reset"], input[type="button"], input[type="submit"], button {line-height:normal !important;}

+ 5 - 0
src/main/webapp/ux/mo/css/style24_m.css

@@ -1632,12 +1632,15 @@ main.my .my_wishlist .inner:last-child {padding-bottom: 0;}
 .adrsAdd_pop .tbl_wrap .tbl.tbl_dlvr .input_wrap input.form_control + input.form_control {margin-top: -0.1rem;}
 .adrsAdd_pop .tbl_wrap .tbl.tbl_dlvr input[type='text'] {width: 100%; font-size: 1.3rem; color: #888; font-weight: 300;}
 .adrsAdd_pop .tbl_wrap .tbl.tbl_dlvr input[type='text']:first-of-type {padding-right: 5rem;}
+.adrsAdd_pop .tbl_wrap .tbl.tbl_dlvr input[type='number'] {width: 100%; font-size: 1.3rem; color: #888; font-weight: 300;}
+.adrsAdd_pop .tbl_wrap .tbl.tbl_dlvr input[type='number']:first-of-type {padding-right: 5rem;}
 .adrsAdd_pop .dlvr_basic {margin-top: 1.5rem;}
 .adrsAdd_pop .dlvr_basic label {font-size: 1.4rem;}
 .adrsAdd_pop .tbl_wrap .tbl.tbl_request {padding:1.6rem 0;}
 .adrsAdd_pop .tbl_wrap .tbl.tbl_request table td {padding-bottom: 1.6rem;}
 .adrsAdd_pop .tbl_wrap .tbl.tbl_request table tr:last-child td {padding-bottom: 0;}
 .adrsAdd_pop .tbl_wrap .tbl.tbl_request input[type="text"] {width: 100%; height: 4.5rem; font-size: 1.3rem; color: #888; font-weight: 300;}
+.adrsAdd_pop .tbl_wrap .tbl.tbl_request input[type="number"] {width: 100%; height: 4.5rem; font-size: 1.3rem; color: #888; font-weight: 300;}
 .adrsAdd_pop .tbl_wrap .tbl.tbl_request .desc_txt {position: relative; padding-left: 0.8rem; margin-top: 1rem; font-size: 1.1rem; }
 .adrsAdd_pop .tbl_wrap .tbl.tbl_request .desc_txt:after {content:''; position: absolute; top: 0.6rem; left: 0; background: #888; width: 0.2rem; height: 0.2rem;}
 .adrsAdd_pop .htop h5 {display: inline-block;position: relative;height: 3.5rem;line-height: 3.5rem;vertical-align: top; font-size: 1.8rem;color: #222; margin:1rem 0 0 2rem;}
@@ -1663,6 +1666,8 @@ main.my .my_wishlist .inner:last-child {padding-bottom: 0;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr .input_wrap input.form_control + input.form_control {margin-top: -0.1rem;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr input[type='text'] {width: 100%; font-size: 1.3rem; color: #888; font-weight: 300;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr input[type='text']:first-of-type {padding-right: 5rem;}
+.adrsModify_pop .tbl_wrap .tbl.tbl_dlvr input[type='number'] {width: 100%; font-size: 1.3rem; color: #888; font-weight: 300;}
+.adrsModify_pop .tbl_wrap .tbl.tbl_dlvr input[type='number']:first-of-type {padding-right: 5rem;}
 .adrsModify_pop .dlvr_basic {margin-top: 1.5rem;}
 .adrsModify_pop .dlvr_basic label {font-size: 1.4rem;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_request {padding:1.6rem 0;}