jsh77b 5 лет назад
Родитель
Сommit
1f3fa8c946

+ 36 - 17
src/main/java/com/style24/front/biz/web/TsfOrderController.java

@@ -125,14 +125,33 @@ public class TsfOrderController extends TsfBaseController {
 	 * @since 2021. 02. 02
 	 */
 	@RequestMapping(value = "/form")
-	public ModelAndView orderForm(Order order) {
+	public ModelAndView orderForm(HttpServletRequest request, Order order) {
 		ModelAndView mav = new ModelAndView();
 		
 		// TODO
 		// 1.비회주문, 회원 주문 판단 로직,  고객정보 세션 판단
 		// 세션고객정보가 존재하면 회원주문 없으면 비회원 주문
+		
+		// 1.0 requestUri check
+		String refererStr = "";
+		if (request.getHeader("referer") != null) {
+			refererStr = request.getHeader("referer").toString();
+			if (refererStr.indexOf("style24.com/order/noMember") < 0) {
+				mav.setViewName("redirect:/cart/list/form");		// 비회원주문서화면
+				return mav;
+			}
+		} else {
+			mav.setViewName("redirect:/cart/list/form");		// 비회원주문서화면
+			return mav;
+		}
 
-		// 1. 로그인체크 후 custNo 설정
+		// 1.1 카트시퀀스가 정보가 없을때 처리 장바구니로 이동 
+		if (order.getCartSqArr() == null) {
+			mav.setViewName("redirect:/cart/list/form");		// 비회원주문서화면
+			return mav;
+		}
+
+		// 1.2 로그인체크 후 custNo 설정
 		if (TsfSession.isLogin()) {
 			order.setCustNo(TsfSession.getInfo().getCustNo()); // 고객번호등록
 		} else {
@@ -141,15 +160,9 @@ public class TsfOrderController extends TsfBaseController {
 		}
 		
 		// TODO
-		int[] arr = {1,2,158,150,149,159,148,153,20,12};
-		order.setCartSqArr(arr);		// 장바구니시퀀스
-		order.setShotDelvUseYn("Y");	// 장바구니총알배송사용여부
-		
-		// 1.1 카트시퀀스가 정보가 없을때 처리 장바구니로 이동 
-		if (order.getCartSqArr() == null) {
-			mav.setViewName("redirect:/cart/list/form");		// 비회원주문서화면
-			return mav;
-		}
+		//int[] arr = {1,2,158,150,149,159,148,153,20,12};
+		//order.setCartSqArr(arr);		// 장바구니시퀀스
+		//order.setShotDelvUseYn("Y");	// 장바구니총알배송사용여부
 		
 		// 2. 로그인정보 체크 후 비회원 고객정보 설정
 		if (TsfSession.isLogin()) {
@@ -157,13 +170,18 @@ public class TsfOrderController extends TsfBaseController {
 			order.setCellPhnno("");
 			order.setEmail("");
 			
-			order.setDelvAddrNm("");
+			order.setDelvAddrNm("없음");
+			order.setRecipNm("배송지명없음");
 			order.setRecipZipcode("00000");
-			order.setRecipBaseAddr("기본주소정보없음");
-			order.setRecipDtlAddr("상제주소정보없음");
+			order.setRecipBaseAddr("기본주소없음");
+			order.setRecipDtlAddr("상제주소없음");
+		} else {
+			// 2021.04.08 휴대폰번호 하이픈 처리
+			order.setHypenCellPhone();
+			log.info("order.getCellPhnno() ::: {}", order.getCellPhnno());
 		}
-		
-		// 2.1 총알배소여부가 null 이면 Y로 설정
+
+		// 2.1 총알배여부가 null 이면 Y로 설정
 		if (order.getShotDelvUseYn() == null || "".equals(order.getShotDelvUseYn())) {
 			order.setShotDelvUseYn("Y");
 		}
@@ -312,7 +330,7 @@ public class TsfOrderController extends TsfBaseController {
 							deliveryAddrInfo.setRecipZipcode("00000");
 							deliveryAddrInfo.setRecipBaseAddr("기본주소정보없음");
 							deliveryAddrInfo.setRecipDtlAddr("상세주소정보없음");
-							deliveryAddrInfo.setDelvMemo("직접받고 부재시 문 앞");
+							deliveryAddrInfo.setDelvMemo("직접 받고 부재 시 문 앞");
 							deliveryAddrInfo.setRecipNm(deliveryAddrInfo.getCustNm());
 						}
 					}
@@ -423,6 +441,7 @@ public class TsfOrderController extends TsfBaseController {
 		mav.addObject("shotCnt" 			, delvOrderMap.get("shotCnt"));				// 자사총알배송상품건수
 		mav.addObject("wmsCnt" 				, delvOrderMap.get("wmsCnt"));				// 자사일반상품건수
 		mav.addObject("isLogin"				, TsfSession.isLogin());					// 로그인여부
+		mav.addObject("IMG_PATH"			, env.getProperty("upload.goods.view"));	// 이미지경로
 		mav.setViewName(super.getDeviceViewName("order/OrderListInfo"));
 		
 		return mav;

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

@@ -1245,7 +1245,7 @@ var dcAmtInfoSet = function() {
 					}
 					
 					// 입력여부체크
-					if (gfcdUseAmt < 1 || $("input[name='gfcdUseAmtStr']").val() == "") {
+					if (gfcdUseAmt < 1 || $("#orderForm input[name='gfcdUseAmtStr']").val() == "") {
 						mcxDialog.alert("사용할 금액을 입력해주세요");
 						// 상품권리셋기능
 						gfcdUseAmtReset();
@@ -1854,7 +1854,7 @@ var custCpnSumAmtCal = function() {
 	var prePntDcAmtYn 		= $("#orderForm input[name='rdi-beforpoint']:checked").val();
 	var leftPntAmt			= parseInt($("#orderAmtForm .pntDcSumAmt").text());
 	var leftGfcdAmt			= parseInt($("#orderAmtForm .gfcdUseSumAmt").text());
-	var cartSqLenght		= $(".cartSq").length; 
+	var cartSqLenght		= $("#orderAmtForm .cartSq").length; 
 	var index				= 1;
 	
 	var orgGoodsSumAmt		= 0;
@@ -2023,7 +2023,7 @@ var delvMemoSet = function(delvMemoObj) {
 	
 	$("#orderForm input[name=delvMemo]").val(delvMemoObj.delvMemo);		// input 값에 설정
 	$("#delvMemo").text(delvMemoObj.delvMemo);							// 메모 text 설정
-	$("#orderAmtForm .delvMemo").text(delvMemoObj.delvMemo);							// 메모 text 설정
+	$("#orderAmtForm .delvMemo").text(delvMemoObj.delvMemo);			// 메모 text 설정
 }
 </script>
 

+ 62 - 53
src/main/webapp/WEB-INF/views/web/order/OrderCompleteWeb.html

@@ -136,51 +136,55 @@
 														<dd><em>0</em>원</dd>
 													</th:block>
 												</div>
-												<div>
-													<dt>다다익선 할인</dt>
-													<th:block th:if="${tmtbSumAmt}>0">
-														<dd><em th:text="|- ${#numbers.formatInteger(tmtbSumAmt, 1, 'COMMA')}|"></em>원</dd>
-													</th:block>
-													<th:block th:if="${tmtbSumAmt}<1">
-														<dd><em>0</em>원</dd>
-													</th:block>
-												</div>
-												<div>
-													<dt>쿠폰할인</dt>
-													<th:block th:if="${cpnDcSumAmt}>0">
-														<dd><em th:text="|- ${#numbers.formatInteger(cpnDcSumAmt, 1, 'COMMA')}|"></em>원</dd>
-													</th:block>
-													<th:block th:if="${cpnDcSumAmt}<1">
-														<dd><em>0</em>원</dd>
-													</th:block>
-												</div>
-												<div>
-													<dt>선포인트 할인</dt>
-													<th:block th:if="${prePntDcSumAmt}>0">
-														<dd><em th:text="|- ${#numbers.formatInteger(prePntDcSumAmt, 1, 'COMMA')}|"></em>원</dd>
-													</th:block>
-													<th:block th:if="${prePntDcSumAmt}<1">
-														<dd><em>0</em>원</dd>
-													</th:block>
-												</div>
-												<div>
-													<dt>포인트 사용</dt>
-													<th:block th:if="${pntDcSumAmt}>0">
-														<dd><em th:text="|- ${#numbers.formatInteger(pntDcSumAmt, 1, 'COMMA')}|"></em>원</dd>
-													</th:block>
-													<th:block th:if="${pntDcSumAmt}<1">
-														<dd><em>0</em>원</dd>
-													</th:block>
-												</div>
-												<div>
-													<dt>상품권 사용</dt>
-													<th:block th:if="${gfcdUseSumAmt}>0">
-														<dd><em th:text="|- ${#numbers.formatInteger(gfcdUseSumAmt, 1, 'COMMA')}|"></em>원</dd>
-													</th:block>
-													<th:block th:if="${gfcdUseSumAmt}<1">
-														<dd><em>0</em>원</dd>
-													</th:block>
-												</div>
+												<!-- 회원인경우노출 -->
+												<th:block th:if="${isLogin}">
+													<div>
+														<dt>다다익선 할인</dt>
+														<th:block th:if="${tmtbSumAmt}>0">
+															<dd><em th:text="|- ${#numbers.formatInteger(tmtbSumAmt, 1, 'COMMA')}|"></em>원</dd>
+														</th:block>
+														<th:block th:if="${tmtbSumAmt}<1">
+															<dd><em>0</em>원</dd>
+														</th:block>
+													</div>
+													<div>
+														<dt>쿠폰할인</dt>
+														<th:block th:if="${cpnDcSumAmt}>0">
+															<dd><em th:text="|- ${#numbers.formatInteger(cpnDcSumAmt, 1, 'COMMA')}|"></em>원</dd>
+														</th:block>
+														<th:block th:if="${cpnDcSumAmt}<1">
+															<dd><em>0</em>원</dd>
+														</th:block>
+													</div>
+													<div>
+														<dt>선포인트 할인</dt>
+														<th:block th:if="${prePntDcSumAmt}>0">
+															<dd><em th:text="|- ${#numbers.formatInteger(prePntDcSumAmt, 1, 'COMMA')}|"></em>원</dd>
+														</th:block>
+														<th:block th:if="${prePntDcSumAmt}<1">
+															<dd><em>0</em>원</dd>
+														</th:block>
+													</div>
+													<div>
+														<dt>포인트 사용</dt>
+														<th:block th:if="${pntDcSumAmt}>0">
+															<dd><em th:text="|- ${#numbers.formatInteger(pntDcSumAmt, 1, 'COMMA')}|"></em>원</dd>
+														</th:block>
+														<th:block th:if="${pntDcSumAmt}<1">
+															<dd><em>0</em>원</dd>
+														</th:block>
+													</div>
+													<div>
+														<dt>상품권 사용</dt>
+														<th:block th:if="${gfcdUseSumAmt}>0">
+															<dd><em th:text="|- ${#numbers.formatInteger(gfcdUseSumAmt, 1, 'COMMA')}|"></em>원</dd>
+														</th:block>
+														<th:block th:if="${gfcdUseSumAmt}<1">
+															<dd><em>0</em>원</dd>
+														</th:block>
+													</div>
+												</th:block>
+												<!-- //회원인경우노출 -->
 												<div>
 													<dt>마일리지 사용</dt>
 													<th:block th:if="${mileageDcAmt}>0">
@@ -199,6 +203,7 @@
 														<dd><em>0</em>원</dd>
 													</th:block>
 												</div>
+												
 											</dl>
 										</td>
 										<td>
@@ -231,14 +236,18 @@
 												</div>
 												<!-- //신용카드 일때 -->
 											</dl>
-											<dl>
-												<div>
-													<dt>적립 예정 포인트</dt>
-													<dd>
-														<span class="save_point"><em th:text="|${#numbers.formatInteger(savePntSumAmt, 1, 'COMMA')}P|"></em></span>
-													</dd>
-												</div>
-											</dl>
+											<!-- 회원인경우노출 -->
+											<th:block th:if="${isLogin}">
+												<dl>
+													<div>
+														<dt>적립 예정 포인트</dt>
+														<dd>
+															<span class="save_point"><em th:text="|${#numbers.formatInteger(savePntSumAmt, 1, 'COMMA')}P|"></em></span>
+														</dd>
+													</div>
+												</dl>
+											</th:block>
+											<!-- //회원인경우노출 -->
 										</td>
 									</tr>
 								</table>

+ 63 - 57
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -509,9 +509,15 @@ var jsonObj 			= {};
 // 컨텐츠 호출
 $(document).ready( function() {
 	
+	var dispYn = "N";
+	
 	// 장바구니시퀀스 배열 변환
 	cartSqArr = String(cartSqArr).split(",");
 	
+	if (isLogin == false) {
+		dispYn = "Y";
+	}
+	
 	// AJAX 로드를 위한 변수 설정
 	jsonObj = {
 		"custNm" 			: custNm
@@ -521,7 +527,7 @@ $(document).ready( function() {
 		, "recipBaseAddr" 	: recipBaseAddr
 		, "recipDtlAddr" 	: recipDtlAddr
 		, "cartSqArr"		: cartSqArr
-		, "dispYn"			: "N"
+		, "dispYn"			: dispYn
 		, "shotDelvYn"		: shotDelvUseYn
 		, "shotDelvUseYn"	: shotDelvUseYn
 		, "foreignBuyYn"	: foreignBuyYn
@@ -576,9 +582,9 @@ var custemerInfoSet = function() {
 				$("#custemerInfo").html(result);
 
 				// 고객정보설정
-				$("#orderAmtForm .custNm").text($("input[name='custNm']").val());
-				$("#orderAmtForm .email").text($("input[name='email']").val());
-				$("#orderAmtForm .cellPhnno").text($("input[name='cellPhnno']").val());
+				$("#orderAmtForm .custNm").text($("#orderForm input[name='custNm']").val());
+				$("#orderAmtForm .email").text($("#orderForm input[name='email']").val());
+				$("#orderAmtForm .cellPhnno").text($("#orderForm input[name='cellPhnno']").val());
 			}
 			// 1.2 배송정보로드
 			deliveryAddrInfoSet(jsonObj, true);
@@ -701,7 +707,7 @@ var fnGetDailyDeliveryCheck = function (temp) {
 		}
 	} else {
 		// 배송지 우편번호 체크
-		var zipcode		= $("input[name='recipZipcode']").val();
+		var zipcode		= $("#orderForm input[name='recipZipcode']").val();
 	
 		// 총알배송여부 체크 배송지정보 존재여부 체크
 		if (zipcode == null || zipcode == '') {
@@ -764,9 +770,9 @@ var orderListInfoSet = function(orderListJsonData, temp) {
 				
 				// 총알배송건수가 있으면 총알배송 태그 표시
 				if (parseInt($("#orderForm input[name=shotCnt]").val()) > 0 ) {
-					$(".shotDelv").show();
+					$("#orderForm .shotDelv").show();
 				} else {
-					$(".shotDelv").hide();
+					$("#orderForm .shotDelv").hide();
 				}
 			}
 			
@@ -906,7 +912,7 @@ var paymentInfoSet = function() {
 								return false;
 							}
 							
-							if (!$("#chk-overs-agr").is(":checked")) {
+							if (!$("#orderForm #chk-overs-agr").is(":checked")) {
 								mcxDialog.alert("개인통관정보고유부호 정보 동의/저장항목을 체크해주세요.");
 								
 								// 배송정보화면노출
@@ -918,7 +924,7 @@ var paymentInfoSet = function() {
 					
 					// 주문제작상품일때 주문제작정보동의
 					if (orderMadeYn == "Y") {
-						if (!$("#chk-custom-agr1").is(":checked")) {
+						if (!$("#orderForm #chk-custom-agr1").is(":checked")) {
 							mcxDialog.alert("주문제작상품 정보 동의를 체크해주세요.");
 							
 							// 배송정보화면노출
@@ -928,8 +934,8 @@ var paymentInfoSet = function() {
 					}
 					
 					// 사은품지급할 경우 체크
-					if ($(".freegiftValArr").text().length > 0) {
-						if (!$("#chk-agree_gift").is(":checked")) {
+					if ($("#orderAmtForm .freegiftValArr").text().length > 0) {
+						if (!$("#orderForm #chk-agree_gift").is(":checked")) {
 							mcxDialog.alert("사은품 지급 정보 동의를 체크해주세요.");
 							
 							// 배송정보화면노출
@@ -1176,7 +1182,7 @@ var dcAmtInfoSet = function() {
 							});
 							
 							// 장바구니쿠폰적용
-							$('.cartCpn').each(function(index){
+							$('#orderAmtForm .cartCpn').each(function(index){
 								if ($(this).find("input[name=rdi-cart-coupon]").is(":checked")) {
 									custCpnApply($(this));
 								}
@@ -1214,9 +1220,9 @@ var dcAmtInfoSet = function() {
 				// 1.8.7 포인트 적용버튼 기능
 				$("#btn_point_apply").on("click", function(){
 					var rmPntAmt 			= parseInt($("#orderForm input[name='rmPntAmt']").val());
-					var freegiftUsePnt 		= parseInt($(".freegiftUsePnt").text());
+					var freegiftUsePnt 		= parseInt($("#orderAmtForm .freegiftUsePnt").text());
 					var pntDcAmt 			= parseInt($("#orderForm input[name='pntDcAmtStr']").val());
-					var realOrdAmt 			= parseInt($(".realOrdSumAmt").text());
+					var realOrdAmt 			= parseInt($("#orderAmtForm .realOrdSumAmt").text());
 					var applyPntDcAmt 		= (realOrdAmt * 40) / 100;
 					
 					rmPntAmt				= rmPntAmt - freegiftUsePnt;
@@ -1279,7 +1285,7 @@ var dcAmtInfoSet = function() {
 					}
 					
 					// 입력여부체크
-					if (gfcdUseAmt < 1 || $("input[name='gfcdUseAmtStr']").val() == "") {
+					if (gfcdUseAmt < 1 || $("#orderForm input[name='gfcdUseAmtStr']").val() == "") {
 						mcxDialog.alert("사용할 금액을 입력해주세요");
 						// 상품권리셋기능
 						gfcdUseAmtReset();
@@ -1330,7 +1336,7 @@ var custGoodsCpnInit = function() {
 		var cpnCartSq = $(this).find("input[name='cpnCartSq']").val();
 		
 		// 장바구니시퀀스 체크
-		$(".cartSq").each(function(){
+		$("#orderAmtForm .cartSq").each(function(){
 			if (cpnCartSq == $(this).text()) {
 				$(this).parent().find(".goodsCpnSq").text("0");			// 상품쿠폰시퀀스
 				$(this).parent().find(".goodsCpnDcAmt").text("0");		// 상품쿠폰할인금액
@@ -1490,7 +1496,7 @@ var custCpnApplyTemp = function(obj) {
 			var cartCpnDcAmt		= 0;
 			
 			// 장바구니시퀀스 체크
-			$(".cartSq").each(function(){
+			$("#orderAmtForm .cartSq").each(function(){
 				if (cartCpnCartSq == $(this).text()) {
 					var orgCurrPrice 	= parseInt($(this).parent().find(".orgCurrPrice").text());
 					var cpn1DcAmt 		= parseInt($(this).parent().find(".cpn1DcAmt").text());
@@ -1560,7 +1566,7 @@ var custCpnApply = function(obj) {
 		var cpnCartSq 	= obj.parent().parent().find("input[name='cpnCartSq']").val();
 		
 		// 장바구니시퀀스 체크
-		$(".cartSq").each(function(){
+		$("#orderAmtForm .cartSq").each(function(){
 			if (cpnCartSq == $(this).text()) {
 				$(this).parent().find(".goodsCpnSq").text(obj.prop("value"));			// 상품쿠폰시퀀스
 				$(this).parent().find(".goodsCpnDcAmt").text(obj.attr("data"));			// 상품쿠폰할인금액
@@ -1589,7 +1595,7 @@ var custCpnApply = function(obj) {
 			var cartCpnDcAmt		= 0;
 			
 			// 장바구니시퀀스 체크
-			$(".cartSq").each(function(){
+			$("#orderAmtForm .cartSq").each(function(){
 				if (cartCpnCartSq == $(this).text()) {
 					var orgCurrPrice 	= parseInt($(this).parent().find(".orgCurrPrice").text());
 					var cpn1DcAmt 		= parseInt($(this).parent().find(".cpn1DcAmt").text());
@@ -1631,7 +1637,7 @@ var custCpnApply = function(obj) {
 		}
 		
 		// 선택안함
-		$(".payTypeNm").text("선택없음");
+		$("#orderForm .payTypeNm").text("선택없음");
 		
 		// 금액일때 할인금액 적용
 		if (dcWay == "G240_10") {
@@ -1645,7 +1651,7 @@ var custCpnApply = function(obj) {
 				var cartCpnDcAmt		= 0;
 									
 				// 장바구니시퀀스 체크
-				$(".cartSq").each(function(){
+				$("#orderAmtForm .cartSq").each(function(){
 					if (cartCpnCartSq == $(this).text()) {
 						var orgCurrPrice 	= parseInt($(this).parent().find(".orgCurrPrice").text());
 						var tmtb1DcAmt 		= parseInt($(this).parent().find(".tmtb1DcAmt").text());
@@ -1689,7 +1695,7 @@ var custCpnApply = function(obj) {
 		var delvFeeCd = obj.attr("delvfeecd");
 		
 		// 배송비쿠폰 테이블 적용
-		$(".delvFeeCd").each(function(){
+		$("#orderAmtForm .delvFeeCd").each(function(){
 			// 배송비쿠폰적용
 			if ($(this).text() == delvFeeCd) {
 				$(this).parent().find(".delvCpnSq").text(obj.attr("value"));
@@ -1753,11 +1759,11 @@ var custCpnNotApply = function(obj) {
 
 // 1.14 선포인트리셋기능 (사용안함)
 var prePntDcAmtReset = function() {
-	var rmPrePntAmt = parseInt($("input[name='rmPrePntAmt']").val());
-	$("input[name='prePntDcAmt']").val(rmPrePntAmt);
+	var rmPrePntAmt = parseInt($("#orderForm input[name='rmPrePntAmt']").val());
+	$("#orderForm input[name='prePntDcAmt']").val(rmPrePntAmt);
 	
 	// 선포인트사용여부 체크 후 적용
-	$("input[name='rdi-beforpoint']").each(function(){
+	$("#orderForm input[name='rdi-beforpoint']").each(function(){
 		// 선포인트 초기 설정 사용함
 		if ($(this).val() == "Y") {
 			$(this).attr("checked", true);
@@ -1765,7 +1771,7 @@ var prePntDcAmtReset = function() {
 		
 		// 버튼기능 구현
 		$(this).on("click", function(){
-			var rmPrePntAmt 		= parseInt($("input[name='rmPrePntAmt']").val());
+			var rmPrePntAmt 		= parseInt($("#orderForm input[name='rmPrePntAmt']").val());
 			
 			// 선포인트적용
 			if ($(this).val() == "Y") {
@@ -1787,8 +1793,8 @@ var prePntDcAmtReset = function() {
 
 // 1.15 포인트리셋기능
 var pntDcAmtReset = function() {
-	$(".pntDcSumAmt").text("0");
-	$("input[name='pntDcAmtStr']").val("");
+	$("#orderAmtForm .pntDcSumAmt").text("0");
+	$("#orderForm input[name='pntDcAmtStr']").val("");
 	$("#pntDcAmt").text("0 원");
 	
 	// 상품권리셋기능
@@ -1797,8 +1803,8 @@ var pntDcAmtReset = function() {
 
 // 1.16 상품권리셋기능
 var gfcdUseAmtReset = function() {
-	$(".gfcdUseSumAmt").text("0");
-	$("input[name='gfcdUseAmtStr']").val("");
+	$("#orderAmtForm .gfcdUseSumAmt").text("0");
+	$("#orderForm input[name='gfcdUseAmtStr']").val("");
 	$("#gfcdUseAmt").text("0 원");
 	
 	// 금액전체계산
@@ -1845,7 +1851,7 @@ var custCpnSumAmtCal = function() {
 		$("#couponDcSumAmt").text(cpnDcSumAmt.addComma() + " 원"); // 쿠폰할인금액합계
 	}
 
-	$(".cpnDcSumAmt").text(cpnDcSumAmt);
+	$("#orderAmtForm .cpnDcSumAmt").text(cpnDcSumAmt);
 	
 	var delvSumAmt = orgSumDelvFee;
 	
@@ -1856,16 +1862,16 @@ var custCpnSumAmtCal = function() {
 			
 			// 최종배송비
 			$("#delvSumAmt").text(delvSumAmt.addComma() + " 원");
-			$(".delvSumAmt").text(delvSumAmt);
+			$("#orderAmtForm .delvSumAmt").text(delvSumAmt);
 		}
 	});
 	
 	// 2021.03.06 주문상세 테이블 적용
 	// 포인트금액 상품상세에 포인트금액 분배 작업
-	var prePntDcAmtYn 		= $("input[name='rdi-beforpoint']:checked").val();
-	var leftPntAmt			= parseInt($(".pntDcSumAmt").text());
-	var leftGfcdAmt			= parseInt($(".gfcdUseSumAmt").text());
-	var cartSqLenght		= $(".cartSq").length; 
+	var prePntDcAmtYn 		= $("#orderForm input[name='rdi-beforpoint']:checked").val();
+	var leftPntAmt			= parseInt($("#orderAmtForm .pntDcSumAmt").text());
+	var leftGfcdAmt			= parseInt($("#orderAmtForm .gfcdUseSumAmt").text());
+	var cartSqLenght		= $("#orderAmtForm .cartSq").length; 
 	var index				= 1;
 	
 	var orgGoodsSumAmt		= 0;
@@ -1884,7 +1890,7 @@ var custCpnSumAmtCal = function() {
 	var realOrdSumAmt		= 0;
 	var savePntSumAmt		= 0;
 	
-	$(".cartSq").each(function(){
+	$("#orderAmtForm .cartSq").each(function(){
 		var orgCurrPrice 	= parseInt($(this).parent().find(".orgCurrPrice").text());
 		var cpn1DcAmt		= parseInt($(this).parent().find(".cpn1DcAmt").text());
 		var optAddPrice 	= parseInt($(this).parent().find(".optAddPrice").text());
@@ -1927,7 +1933,7 @@ var custCpnSumAmtCal = function() {
 	});
 	
 	// 포인트, 상품권 금액 분배
-	$(".cartSq").each(function(){
+	$("#orderAmtForm .cartSq").each(function(){
 		var ordAmt 			= parseInt($(this).parent().find(".ordAmt").text());
 		var dcSumAmt		= parseInt($(this).parent().find(".dcSumAmt").text()); 
 		var tempDiv 		= parseInt((ordAmt / ordSumAmt) * 100);
@@ -1956,29 +1962,29 @@ var custCpnSumAmtCal = function() {
 	
 	realOrdSumAmt = realOrdSumAmt + delvSumAmt;
 	
-	$(".orgGoodsSumAmt").text(orgGoodsSumAmt);
-	$(".cpn1DcSumAmt").text(cpn1DcSumAmt);
-	$(".ordSumAmt").text(ordSumAmt);
-	$(".tmtb1DcSumAmt").text(tmtb1DcSumAmt);
-	$(".tmtb2DcSumAmt").text(tmtb2DcSumAmt);
-	$(".tmtbDcSumAmt").text(tmtbDcSumAmt);
-	$(".goodsCpnDcSumAmt").text(goodsCpnDcSumAmt);
-	$(".cartCpnDcSumAmt").text(cartCpnDcSumAmt);
-	$(".cpnDcSumAmt").text(cpnDcSumAmt);
-	$(".prePntDcSumAmt").text(prePntDcSumAmt);
-	$(".realOrdSumAmt").text(realOrdSumAmt);
-	$(".savePntSumAmt").text(savePntSumAmt);
+	$("#orderAmtForm .orgGoodsSumAmt").text(orgGoodsSumAmt);
+	$("#orderAmtForm .cpn1DcSumAmt").text(cpn1DcSumAmt);
+	$("#orderAmtForm .ordSumAmt").text(ordSumAmt);
+	$("#orderAmtForm .tmtb1DcSumAmt").text(tmtb1DcSumAmt);
+	$("#orderAmtForm .tmtb2DcSumAmt").text(tmtb2DcSumAmt);
+	$("#orderAmtForm .tmtbDcSumAmt").text(tmtbDcSumAmt);
+	$("#orderAmtForm .goodsCpnDcSumAmt").text(goodsCpnDcSumAmt);
+	$("#orderAmtForm .cartCpnDcSumAmt").text(cartCpnDcSumAmt);
+	$("#orderAmtForm .cpnDcSumAmt").text(cpnDcSumAmt);
+	$("#orderAmtForm .prePntDcSumAmt").text(prePntDcSumAmt);
+	$("#orderAmtForm .realOrdSumAmt").text(realOrdSumAmt);
+	$("#orderAmtForm .savePntSumAmt").text(savePntSumAmt);
 	
 	$("#realOrdAmt").text(realOrdSumAmt.addComma()); // 총 결제 예정 금액
-	$(".realOrdAmt").text(realOrdSumAmt.addComma() + " 원"); // 총 결제 예정 금액
+	$("#orderForm .realOrdAmt").text(realOrdSumAmt.addComma() + " 원"); // 총 결제 예정 금액
 	
 	var tempSavePnt			= savePntSumAmt - prePntDcAmt;
 	
 	// 사은품사용 후 보유포인트	
-	var rmPntAmt 			= parseInt($("input[name='rmPntAmt']").val());
-	var freegiftUsePnt 		= parseInt($(".freegiftUsePnt").text());
+	var rmPntAmt 			= parseInt($("#orderForm input[name='rmPntAmt']").val());
+	var freegiftUsePnt 		= parseInt($("#orderAmtForm .freegiftUsePnt").text());
 	rmPntAmt 				= rmPntAmt - freegiftUsePnt; 
-	$(".rmPntAmt").text(rmPntAmt.addComma());
+	$("#orderForm .rmPntAmt").text(rmPntAmt.addComma());
 	
 	// 걸제영역
 	//$("#btn_payment").text("동의 후 "+realOrdSumAmt.addComma()+" 원 결제하기");
@@ -2009,8 +2015,8 @@ var custCpnSumAmtCal = function() {
 		});
 	});
 	
-	$(".freegiftValArr").text(freegiftValArr);				// 사은품시퀀스배열
-	$(".freegiftUsePointArr").text(freegiftUsePointArr);	// 사은품사용포인트배열
+	$("#orderAmtForm .freegiftValArr").text(freegiftValArr);				// 사은품시퀀스배열
+	$("#orderAmtForm .freegiftUsePointArr").text(freegiftUsePointArr);	// 사은품사용포인트배열
 };
 
 // 1.18 배송지정보 설정
@@ -2036,7 +2042,7 @@ var delvMemoSet = function(delvMemoObj) {
 	
 	$("#orderForm input[name=delvMemo]").val(delvMemoObj.delvMemo);		// input 값에 설정
 	$("#delvMemo").text(delvMemoObj.delvMemo);							// 메모 text 설정
-	$(".delvMemo").text(delvMemoObj.delvMemo);							// 메모 text 설정
+	$("#orderAmtForm .delvMemo").text(delvMemoObj.delvMemo);			// 메모 text 설정
 }
 </script>
 

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

@@ -46,7 +46,9 @@
 					<th:block th:each="goods, i : ${delvAllCart}">
 						<div class="item_gd">
 							<figure>
-								<span class="thumb"><img src="/images/pc/thumb/tmp_odSide1.jpg" alt=""></span>
+								<span class="thumb">
+									<img th:src="${IMG_PATH} + '/' + ${goods.sysImgNm}" src="/" width="100%" alt="">
+								</span>
 								<figcaption>
 									<div class="brand" th:text="${goods.brandEnm} + ' ' + ${goods.brandKnm}"></div>
 									<div class="name" th:text="${goods.goodsNm}"></div>									

+ 31 - 10
src/main/webapp/WEB-INF/views/web/order/OrderNoMemberWeb.html

@@ -54,7 +54,7 @@
 						<div class="form_field">
 							<label class="input_label sr-only">이름(주문자명)</label>
 							<div class="input_wrap"> 
-								<input type="text" class="form_control" name="custNm" placeholder="이름(주문자명)" value="">
+								<input type="text" class="form_control" name="custNm" placeholder="이름(주문자명)" value="" readonly="readonly" >
 							</div>
 						</div>	
 						
@@ -63,7 +63,7 @@
 							<label class="input_label sr-only">휴대폰 번호</label>
 							<div class="ui_col_9">
 								<div class="input_wrap"> 
-									<input type="text" class="form_control" name="cellPhnno" placeholder="휴대폰 인증을 해주세요" readonly="readonly" onfocus="this.blur();" value="">
+									<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"/>
 								</div>
 							</div>
 							
@@ -82,7 +82,7 @@
 						<div class="form_field">
 							<label class="input_label sr-only">이메일주소</label>
 							<div class="input_wrap"> 
-								<input type="text" class="form_control" name="email" placeholder="이메일주소" value="">
+								<input type="text" id="email" name="email" placeholder="이메일" class="form_control" required="required" data-valid-name="이메일" maxlength="30"/><!-- 잘못기입된 경우 class "err" 추가 -->
 							</div>
 						</div>	
 						
@@ -154,17 +154,22 @@
 <script th:inline="javascript">
 // 컨텐츠 호출
 $(document).ready( function() {
+	// 2021.04.08 테스트데이타
+	/*
+	$("#orderForm input[name=custNm]").val("전석훈");
+	$("#orderForm input[name=cellPhnno]").val("01065565294");
+	$("#orderForm input[name=email]").val("email@email.com");
+	$("#orderForm input[name=recipZipcode]").val("13245");
+	$("#orderForm input[name=recipBaseAddr]").val("서울시 영등포구 은행로 11, 8층(여의도동, 일신빈딩)");
+	$("#orderForm input[name=recipDtlAddr]").val("8층 ISTYLE24 개발실");
+	$("#orderForm input[name=recipAddr]").val("13245" + '    ' + "서울시 영등포구 은행로 11, 8층(여의도동, 일신빈딩)");
+	*/
 });
 	
 // 주문하기버튼
 $("#btn_order").on("click", function() {
 	// TODO 유효성 체크 추가
-	if (gagajf.isNull($("#orderForm input[name=custNm]").val())) {
-		mcxDialog.alert("이름을 입력해주세요.");
-		$('#orderForm input[name=custNm]').focus();
-		return false;
-	}
-	
+	// 2021.04.08 본인인증을 완료후 이름정보 업데이트로 변경
 	if (gagajf.isNull($("#orderForm input[name=cellPhnno]").val())) {
 		mcxDialog.alert("본인인증을 완료해 주세요.");
 		$('#orderForm input[name=cellPhnno]').focus();
@@ -177,7 +182,7 @@ $("#btn_order").on("click", function() {
 		return false;
 	}
 	
-	if (gagajf.isNull($("#orderForm input[name=email]").val())) {
+	if (!fnCheckValidationEmail($("#orderForm input[name=email]").val())) {
 		mcxDialog.alert("이메일 주소를 다시 확인해주세요.");
 		$('#orderForm input[name=email]').focus();
 		return false;
@@ -244,6 +249,22 @@ var fnOpenDaumAddr = function() {
 	});
 	cfnOpenDaumAddr(daumZip);
 }
+
+/**
+ * 이메일 유효성 체크
+ * @param email - 이메일
+ * @return boolean - 통과(true)/실패(false)
+ * @author jsshin
+ * @since 2021. 02. 15
+ */
+var fnCheckValidationEmail = function (email) {
+	const regexp = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/;
+	let result = true;
+	if (!regexp.test(email)) {
+		result = false;
+	}
+	return result;
+};
 </script>
 </th:block>
 

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

@@ -16,7 +16,7 @@
 					<label class="input_label sr-only">받는 분</label>
 					<div class="ui_col_12">
 						<div class="input_wrap"> 
-							<input type="text" class="form_control" name="recipNm" placeholder="받는 분">
+							<input type="text" class="form_control" name="recipNm" maxlength="10" placeholder="받는 분">
 						</div>
 					</div>
 				</div>	
@@ -24,7 +24,7 @@
 					<label class="input_label sr-only">휴대폰 번호</label>
 					<div class="ui_col_12">
 						<div class="input_wrap"> 
-							<input type="text" class="form_control" name="recipPhnno" placeholder="휴대폰 번호">
+							<input type="text" name="recipPhnno" placeholder="휴대폰 번호" class="form_control" minlength="10" maxlength="11" required="required" data-valid-type="numeric" data-valid-name="휴대폰"/>
 						</div>
 					</div>
 				</div>
@@ -43,7 +43,7 @@
 					<label class="input_label sr-only">상세주소</label>
 					<div class="ui_col_12">
 						<div class="input_wrap"> 
-							<input type="text" class="form_control" name="recipDtlAddr" placeholder="상세주소">
+							<input type="text" class="form_control" name="recipDtlAddr" maxlength="50" placeholder="상세주소">
 						</div>
 					</div>
 				</div>

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

@@ -23,7 +23,7 @@
 					<label class="input_label sr-only">받는 분</label>
 					<div class="ui_col_12">
 						<div class="input_wrap"> 
-							<input type="text" class="form_control" name="recipNm" placeholder="받는 분" th:value="${deliveryAddrInfo.recipNm}">
+							<input type="text" class="form_control" name="recipNm" maxlength="11" placeholder="받는 분" th:value="${deliveryAddrInfo.recipNm}">
 						</div>
 					</div>
 				</div>	
@@ -31,14 +31,14 @@
 					<label class="input_label sr-only">휴대폰 번호</label>
 					<div class="ui_col_12">
 						<div class="input_wrap"> 
-							<input type="text" class="form_control" name="recipPhnno" placeholder="휴대폰 번호" th:value="${deliveryAddrInfo.recipPhnno}">
+							<input type="text" name="recipPhnno" placeholder="휴대폰 번호" class="form_control" minlength="10" maxlength="11" required="required" data-valid-type="numeric" data-valid-name="휴대폰" th:value="${deliveryAddrInfo.recipPhnno}"/>
 						</div>
 					</div>
 				</div>
 				<div class="form_field">
 					<label class="input_label sr-only">배송주소</label>
 					<div class="ui_col_12">
-						<div class="input_wrap"> 
+						<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" name="recipAddr" placeholder="배송주소" th:value="${deliveryAddrInfo.recipZipcode} + '    '+ ${deliveryAddrInfo.recipBaseAddr}" readonly="readonly">
@@ -52,7 +52,7 @@
 					<label class="input_label sr-only">상세주소</label>
 					<div class="ui_col_12">
 						<div class="input_wrap"> 
-							<input type="text" class="form_control" name="recipDtlAddr" placeholder="상세주소" th:value="${deliveryAddrInfo.recipDtlAddr}">
+							<input type="text" class="form_control" name="recipDtlAddr" maxlength="50" placeholder="상세주소" th:value="${deliveryAddrInfo.recipDtlAddr}">
 						</div>
 					</div>
 				</div>