Просмотр исходного кода

Merge branch 'develop' into bin2107

bin2107 5 лет назад
Родитель
Сommit
282b4a9d4a
23 измененных файлов с 361 добавлено и 185 удалено
  1. 10 1
      src/main/java/com/style24/front/biz/dao/TsfCouponDao.java
  2. 3 0
      src/main/java/com/style24/front/biz/dao/TsfCustomerDao.java
  3. 41 1
      src/main/java/com/style24/front/biz/service/TsfCouponService.java
  4. 33 8
      src/main/java/com/style24/front/biz/service/TsfCustomerService.java
  5. 3 4
      src/main/java/com/style24/front/biz/service/TsfReviewService.java
  6. 5 2
      src/main/java/com/style24/front/biz/web/TsfGoodsController.java
  7. 5 3
      src/main/java/com/style24/front/biz/web/TsfMypageController.java
  8. 37 8
      src/main/java/com/style24/front/biz/web/TsfOrderController.java
  9. 1 1
      src/main/java/com/style24/front/support/security/handler/TsfLoginSuccessHandler.java
  10. 27 1
      src/main/java/com/style24/persistence/mybatis/shop/TsfCoupon.xml
  11. 3 0
      src/main/java/com/style24/persistence/mybatis/shop/TsfCustomer.xml
  12. 3 3
      src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html
  13. 2 2
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html
  14. 1 0
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailReviewFormWeb.html
  15. 4 4
      src/main/webapp/WEB-INF/views/web/goods/GoodsIncludeFormWeb.html
  16. 0 2
      src/main/webapp/WEB-INF/views/web/mypage/MypageCreListFormWeb.html
  17. 15 15
      src/main/webapp/WEB-INF/views/web/mypage/MypageReviewCreateFormWeb.html
  18. 62 53
      src/main/webapp/WEB-INF/views/web/order/OrderCompleteWeb.html
  19. 65 59
      src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html
  20. 3 1
      src/main/webapp/WEB-INF/views/web/order/OrderListInfoWeb.html
  21. 31 10
      src/main/webapp/WEB-INF/views/web/order/OrderNoMemberWeb.html
  22. 3 3
      src/main/webapp/WEB-INF/views/web/popup/DelvAddrAddPopWeb.html
  23. 4 4
      src/main/webapp/WEB-INF/views/web/popup/DelvAddrModifyPopWeb.html

+ 10 - 1
src/main/java/com/style24/front/biz/dao/TsfCouponDao.java

@@ -105,7 +105,16 @@ public interface TsfCouponDao {
 	 * @since 2021.03.24
 	 */
 	Collection<Coupon> getPlanCouponInfo(Coupon coupon);
-	
+
+	/**
+	 * 등급정책 쿠폰 정보
+	 *
+	 * @param coupon - 쿠폰정보
+	 * @return Coupon
+	 * @author jsshin
+	 * @since 2021.04.08
+	 */
+	Coupon getCustGradePolicyCoupon(Coupon coupon);
 	
 	
 }

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

@@ -9,6 +9,8 @@ import com.style24.persistence.domain.WishList;
 
 import java.util.Collection;
 
+import org.springframework.stereotype.Repository;
+
 /**
  * 고객(회원) Dao
  * 
@@ -16,6 +18,7 @@ import java.util.Collection;
  * @since 2020. 12. 29
  */
 @ShopDs
+@Repository
 public interface TsfCustomerDao {
 
 	/**

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

@@ -491,5 +491,45 @@ public class TsfCouponService {
 		return count;
 	}
 
-	
+	/**
+	 * 등급쿠폰 발급
+	 *
+	 * @param cpnId - 쿠폰 아이디
+	 * @return int - 결과
+	 * @author jsshin
+	 * @since 2021.04.08
+	 */
+	public int saveCustGradeCoupon(String cpnId) {
+		int resultCnt = 0;
+		if (org.apache.commons.lang3.StringUtils.isNotBlank(cpnId)) {
+			Coupon params = new Coupon();
+			Coupon custGradeCoupon = couponDao.getCustGradePolicyCoupon(params);
+
+			if (custGradeCoupon != null) {
+				CustCoupon custCoupon = new CustCoupon();
+				custCoupon.setCpnId(custGradeCoupon.getCpnId());
+				custCoupon.setAvailStdt(custGradeCoupon.getAvailStdt());
+				custCoupon.setAvailEddt(custGradeCoupon.getAvailEddt());
+				custCoupon.setPubReason(TscConstants.PubReason.CHANGE_CUSTOMER_GRADE.value());
+				custCoupon.setEndAlimSendYn("N");		// 알림 발송 여부(발송되면 Y)
+				custCoupon.setUpdNo(custGradeCoupon.getCustNo());
+				custCoupon.setRegNo(custGradeCoupon.getCustNo());
+			}
+
+			resultCnt = 1;
+		}
+		return resultCnt;
+	}
+
+	/**
+	 * 생일쿠폰 발급
+	 *
+	 * @param cpnId - 쿠폰 아이디
+	 * @return int - 결과
+	 * @author jsshin
+	 * @since 2021.04.08
+	 */
+	public int saveCustBirthDayCoupon(String cpnId) {
+		return 0;
+	}
 }

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

@@ -635,7 +635,7 @@ public class TsfCustomerService {
 	/**
 	 * 위시리스트 삭제처리
 	 *
-	 * @param paramList - 고객 일련번호
+	 * @param wishlist - 고객 일련번호
 	 * @return void
 	 * @author eskim
 	 * @since 2021. 03. 08
@@ -985,17 +985,42 @@ public class TsfCustomerService {
 		return result;
 	}
 
+
+	/*
+	 * 정책 등급쿠폰 발급
+	 *
+	 * @param  custGrade - 고객번호
+	 * @return CustGrade
+	 * @author jsshin
+	 * @since 2021. 04. 06
+	 */
 	public GagaMap downloadCustGradeCoupon(Integer custNo) {
 		GagaMap result = new GagaMap();
 		Customer custInfo = getCustomerFindByCustNo(custNo);
-		// TB_CUST_GRADE_POLICY
-
-		// 1. 등급정책 정보
-		// 1.1 WELCOME 첫번째 쿠폰은 무시
-		// 1.2 두번쨰 쿠폰은 저장
-		// 1.3 세번째 쿠폰은 생일 쿠폰이여서 생일 판단 후 등록
-
+		CustGrade params = new CustGrade();
+		params.setCustNo(custInfo.getCustNo());
+		params.setSiteCd(custInfo.getSiteCd());
+		params.setGradeCd(custInfo.getCustGrade());
+		List<CustGrade> custGradeCollection = (List<CustGrade>)customerDao.getCustGradePolicy(params);
+		CustGrade custGrade = custGradeCollection.get(0);
+
+		// WELCOME 등급 첫 번째 쿠폰은 회원가입시 쿠폰
+		if (TscConstants.CustGrade.WELCOME.value().equals(custGrade.getGradeCd())) {
+			custGrade.setGradeCpnId1("");
+			// 1. 회원등급 정책 쿠폰1, 쿠폰2 발급
+			int gradeCpn1 = couponService.saveCustGradeCoupon(custGrade.getGradeCpnId1());
+			int gradeCpn2 = couponService.saveCustGradeCoupon(custGrade.getGradeCpnId2());
+
+			// 2. 생일쿠폰 발급
+			int birthCpn = 0;
+			if (StringUtils.isNotBlank(custInfo.getBirthYmd()) && custInfo.getBirthYmd().length() > 7) {
+				birthCpn = couponService.saveCustBirthDayCoupon(custGrade.getGradeCpnId3());
+			}
+			result.setInt("gradeCpn1", gradeCpn1);
+			result.setInt("gradeCpn2", gradeCpn2);
+			result.setInt("birthCpn", birthCpn);
 
+		}
 		return result;
 	}
 }

+ 3 - 4
src/main/java/com/style24/front/biz/service/TsfReviewService.java

@@ -7,11 +7,9 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import com.gagaframework.web.parameter.GagaMap;
 import com.style24.front.biz.dao.TsfReviewDao;
 import com.style24.front.support.security.session.TsfSession;
 import com.style24.persistence.domain.Goods;
-import com.style24.persistence.domain.Order;
 import com.style24.persistence.domain.Review;
 
 import lombok.extern.slf4j.Slf4j;
@@ -153,8 +151,9 @@ public class TsfReviewService {
 	public void saveMypageReview(Review review) {
 		review.setDispYn("Y");
 		review.setDelYn("N");
-		review.setRegNo(review.getCustNo());
-		review.setUpdNo(review.getCustNo());
+		review.setRegNo(TsfSession.getInfo().getCustNo());
+		review.setUpdNo(TsfSession.getInfo().getCustNo());
+		
 		reviewDao.saveMypageReview(review);
 	}
 	

+ 5 - 2
src/main/java/com/style24/front/biz/web/TsfGoodsController.java

@@ -135,7 +135,10 @@ public class TsfGoodsController extends TsfBaseController {
 		if (StringUtils.isEmpty(paramsGoods.getColorCd())) {
 			paramsGoods.setColorCd(goods.getMainColorCd());
 			paramsGoods.setOptCd1(goods.getMainColorCd());
+		}else {
+			paramsGoods.setOptCd1(paramsGoods.getColorCd());
 		}
+		
 		paramsGoods.setSelfGoodsYn(goods.getSelfGoodsYn());
 		if (TscConstants.GoodsType.DEAL.value().equals(goods.getGoodsType()) || TscConstants.GoodsType.SET.value().equals(goods.getGoodsType())) {
 			paramsGoods.setColorCd("XX");
@@ -157,8 +160,8 @@ public class TsfGoodsController extends TsfBaseController {
 		// 상품 기본정보
 		mav.addObject("goodsInfo", goods);
 		// 상품 네비정보
-		paramsGoods.setCateGb("G032_101"); 		//by item
-		mav.addObject("goodsNavigation", goodsService.getGoodsNavigation(paramsGoods));
+//		paramsGoods.setCateGb("G032_101"); 		//by item
+//		mav.addObject("goodsNavigation", goodsService.getGoodsNavigation(paramsGoods));
 		// 상품 이미지정보
 		mav.addObject("goodsImgList", goodsService.getGoodsImgList(paramsGoods));
 		// 상품 동영상정보

+ 5 - 3
src/main/java/com/style24/front/biz/web/TsfMypageController.java

@@ -17,9 +17,6 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 import org.springframework.web.servlet.ModelAndView;
 
-import com.gagaframework.web.parameter.GagaMap;
-import com.gagaframework.web.rest.server.GagaResponse;
-import com.gagaframework.web.rest.server.GagaResponseStatus;
 import com.style24.core.biz.service.TscCouponService;
 import com.style24.core.biz.service.TscCustomerService;
 import com.style24.core.biz.service.TscKakaoPayService;
@@ -59,6 +56,10 @@ import com.style24.persistence.domain.WishList;
 
 import lombok.extern.slf4j.Slf4j;
 
+import com.gagaframework.web.parameter.GagaMap;
+import com.gagaframework.web.rest.server.GagaResponse;
+import com.gagaframework.web.rest.server.GagaResponseStatus;
+
 /**
  * 마이페이지 Controller
  * 
@@ -1318,6 +1319,7 @@ public class TsfMypageController extends TsfBaseController {
 	public GagaMap mypageReviewSave(@RequestBody Review review) {
 
 		GagaMap result = new GagaMap();
+		review.setCustNo(TsfSession.getInfo().getCustNo());
 		if(reviewService.reviewDeleteConfirm(review).getCount() > 0) {
 			review.setReviewSq(reviewService.reviewDeleteConfirm(review).getReviewSq());
 		}

+ 37 - 8
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,6 +160,10 @@ public class TsfOrderController extends TsfBaseController {
 		}
 		
 		// TODO
+		//int[] arr = {1,2,158,150,149,159,148,153,20,12};
+		//order.setCartSqArr(arr);		// 장바구니시퀀스
+		//order.setShotDelvUseYn("Y");	// 장바구니총알배송사용여부
+
 		/*int[] arr = {1,2,158,150,149,159,148,153,20,12};
 		order.setCartSqArr(arr);		// 장바구니시퀀스
 		order.setShotDelvUseYn("Y");	// 장바구니총알배송사용여부*/
@@ -157,13 +180,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 +340,7 @@ public class TsfOrderController extends TsfBaseController {
 							deliveryAddrInfo.setRecipZipcode("00000");
 							deliveryAddrInfo.setRecipBaseAddr("기본주소정보없음");
 							deliveryAddrInfo.setRecipDtlAddr("상세주소정보없음");
-							deliveryAddrInfo.setDelvMemo("직접받고 부재시 문 앞");
+							deliveryAddrInfo.setDelvMemo("직접 받고 부재 시 문 앞");
 							deliveryAddrInfo.setRecipNm(deliveryAddrInfo.getCustNm());
 						}
 					}
@@ -423,6 +451,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;

+ 1 - 1
src/main/java/com/style24/front/support/security/handler/TsfLoginSuccessHandler.java

@@ -144,7 +144,7 @@ public class TsfLoginSuccessHandler implements AuthenticationSuccessHandler {
 		// 상품상세 바로구매 > 로그인 한 경우
 		if (returnUrl.indexOf(GOODS_DETAIL_FORM) > -1)  {
 			if (StringUtils.isNotBlank(cartSqArr)) {
-				returnUrl = "/order/form?cartSqArr="+ cartSqArr;
+				returnUrl = "/order/noMember?cartSqArr="+ cartSqArr;
 			}
 		}
 

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

@@ -159,6 +159,7 @@
 		     , CP.END_ALIM_YN
 		     , CASE WHEN #{frontGb} = 'P' THEN CP.DC_PVAL
 		            WHEN #{frontGb} = 'M' THEN CP.DC_MVAL
+		            WHEN #{frontGb} = 'A' THEN CP.DC_AVAL
 		            ELSE CP.DC_AVAL                                              END AS DC_VAL
 		     , CASE WHEN CP.PD_GB = 'D' THEN DATE_FORMAT(NOW(), '%Y%m%d%H%i%S')
 		            ELSE DATE_FORMAT(CP.AVAIL_STDT, '%Y%m%d%H%i%S')              END AS AVAIL_STDT
@@ -698,6 +699,31 @@
 						) A
 				) Z
 		 <!-- WHERE Z.DOWNLOAD_CNT <![CDATA[>=]]> 0 -->
-	
 	</select>
+
+	<!--회원등급쿠폰 정보-->
+	<select id="getCustGradePolicyCoupon" parameterType="Coupon" resultType="Coupon">
+		/*TsfCoupon.getCustGradePolicyCoupon*/
+		SELECT CP.CPN_ID
+		     , CP.END_ALIM_YN
+		     , CASE WHEN #{frontGb} = 'P' THEN CP.DC_PVAL
+		            WHEN #{frontGb} = 'M' THEN CP.DC_MVAL
+		            WHEN #{frontGb} = 'A' THEN CP.DC_AVAL
+		            ELSE CP.DC_AVAL
+		       END                                       AS DC_VAL
+		     , DATE_FORMAT(LAST_DAY(NOW() - INTERVAL 1 MONTH)+ INTERVAL 1 DAY, '%Y%m%d%H%i%S') AS AVAIL_STDT
+		     , DATE_FORMAT(CONCAT(LAST_DAY(NOW()), ' 23:59:59'), '%Y%m%d%H%i%S')               AS AVAIL_EDDT
+		FROM  TB_COUPON CP
+		WHERE CP.CPN_ID = #{cpnId}
+		AND   CP.SITE_CD = #{siteCd}
+		AND   NOT EXISTS (
+		                  SELECT 1
+		                  FROM   TB_CUST_COUPON CC
+		                  WHERE  CC.CPN_ID = CP.CPN_ID
+		                  AND    CC.CUST_NO = #{custNo}
+		                  AND    CC.REG_DT >= DATE_FORMAT(LAST_DAY(NOW() - INTERVAL 1 MONTH)+ INTERVAL 1 DAY, '%Y%m%d%H%i%S')
+		                  AND    CC.REG_DT <![CDATA[<=]]> DATE_FORMAT(CONCAT(LAST_DAY(NOW()), ' 23:59:59'), '%Y%m%d%H%i%S')
+		                  )
+	</select>
+
 </mapper>

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

@@ -588,6 +588,9 @@
 		FROM  TB_CUST_GRADE_POLICY
 		WHERE SITE_CD = #{siteCd}
 		AND   USE_YN = 'Y'
+		<if test="gradeCd != null and gradeCd != ''">
+		AND   GRADE_CD = #{gradeCd}
+		</if>
 		ORDER BY GRADE_CD
 	</select>
 	

+ 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>
 

+ 2 - 2
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html

@@ -20,7 +20,7 @@
 <th:block layout:fragment="content">
 <div id="container" class="container pd" th:with="imgGoodsUrl=${@environment.getProperty('upload.goods.view')}, uxImgUrl=${@environment.getProperty('domain.uximage')}, imgUrl=${@environment.getProperty('upload.image.view')}">
 <script src="https://developers.kakao.com/sdk/js/kakao.min.js"></script>
-	<th:block th:include="~{web/goods/GoodsIncludeFormWeb :: goodsNaviForm}"></th:block>
+	<!-- <th:block th:include="~{web/goods/GoodsIncludeFormWeb :: goodsNaviForm}"></th:block> -->
 	
 	<div class="wrap">
 		<!-- 상품 대표설명 -->
@@ -125,7 +125,7 @@
 										<span class="save_point" th:if="${goodsInfo.pntAmt > 0}">
 											스타일포인트 <th:block th:text="${#numbers.formatInteger(goodsInfo.pntAmt, 0,'COMMA')}"></th:block>P 적립예정
 										</span>
-										<button type="button" id="btn_saleCoupon_pop" class="btn btn_primary btn_sm btn_coupon"  th:if="${goodsCouponList != null and !goodsCouponList.empty}" th:onclick="cfGoodsCouponInfo([[${goodsInfo.goodsCd}]],[[${goodsInfo.goodsType})"><span>쿠폰받기</span></button>
+										<button type="button" id="btn_saleCoupon_pop" class="btn btn_primary btn_sm btn_coupon"  th:if="${goodsCouponList != null and !goodsCouponList.empty}" th:onclick="cfGoodsCouponInfo([[${goodsInfo.goodsCd}]],[[${goodsInfo.goodsType}]])"><span>쿠폰받기</span></button>
 									</div>
 								</div>
 								<div class="desc_status" th:if="${not #strings.isEmpty(goodsInfo.delvResDt) }">

+ 1 - 0
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailReviewFormWeb.html

@@ -353,6 +353,7 @@
 	<input type="hidden" name="pageSize" value ="20"/>
 	<input type="hidden" name="goodsCd" th:value ="${goodsInfo.goodsCd}"/>
 	<input type="hidden" name="goodsType" th:value ="${goodsInfo.goodsType}"/>
+	<input type="hidden" name="selfGoodsYn" th:value ="${goodsInfo.selfGoodsYn}"/>
 	<input type="hidden" name="reviewScore" />
 	<input type="hidden" name="reviewOption" />
 	<input type="hidden" name="reviewHeight" />

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

@@ -22,7 +22,7 @@
 				<th:block th:if="${goodsNavigation.formalGb == '20'}">
 			<li><a href="javascript:void(0);" onclick="cfnGoToOutletMain('300')" >아울렛</a></li>
 			<li th:if="${goodsNavigation.cate1No}">
-				<a href="javascript:void(0);" th:onclick="cfnGoToCategoryGoodsList('','',[[${goodsNavigation.formalGb}]],[[${goodsNavigation.cate1No}]])" th:text="${goodsNavigation.cate1Nm}">cate</a>
+				<a href="javascript:void(0);" th:onclick="cfnGoToGoodsList('0',[[${goodsNavigation.cateGb}]],[[${goodsNavigation.cate1No}]])" th:text="${goodsNavigation.cate1Nm}">cate</a>
 			</li>
 				</th:block>
 				<th:block th:unless="${goodsNavigation.formalGb == '20'}">
@@ -33,21 +33,21 @@
 				</th:block>
 			<li th:if="${goodsNavigation.cate2No}">
 				<th:block th:if="${goodsNavigation.cate3No}">
-				<a href="javascript:void(0);" th:onclick="cfnGoToCategoryGoodsList('','',[[${goodsNavigation.formalGb}]],[[${goodsNavigation.cate1No}]], [[${goodsNavigation.cate2No}]])"
+				<a href="javascript:void(0);" th:onclick="cfnGoToGoodsList('0',[[${goodsNavigation.cateGb}]],[[${goodsNavigation.cate1No}]], [[${goodsNavigation.cate2No}]])"
 				th:text="${goodsNavigation.cate2Nm}">cate</a>
 				</th:block>
 				<th:block th:unless="${goodsNavigation.cate3No}"><strong th:text="${goodsNavigation.cate2Nm}">cate</strong></th:block>
 			</li>
 			<li th:if="${goodsNavigation.cate3No }">
 				<th:block th:if="${goodsNavigation.cate4No}">
-				<a href="javascript:void(0);" th:onclick="cfnGoToCategoryGoodsList('','',[[${goodsNavigation.formalGb}]],[[${goodsNavigation.cate1No}]], [[${goodsNavigation.cate2No}]], [[${goodsNavigation.cate3No}]])"
+				<a href="javascript:void(0);" th:onclick="cfnGoToGoodsList('0',[[${goodsNavigation.cateGb}]],[[${goodsNavigation.cate1No}]], [[${goodsNavigation.cate2No}]], [[${goodsNavigation.cate3No}]])"
 				th:text="${goodsNavigation.cate3Nm}">cate</a>
 				</th:block>
 				<th:block th:unless="${goodsNavigation.cate4No}"><strong th:text="${goodsNavigation.cate3Nm}">cate</strong></th:block>
 			</li>
 			<li th:if="${goodsNavigation.cate4No }">
 				<th:block th:if="${goodsNavigation.cate5No}">
-				<a href="javascript:void(0);" th:onclick="cfnGoToCategoryGoodsList('','',[[${goodsNavigation.formalGb}]],[[${goodsNavigation.cate1No}]], [[${goodsNavigation.cate2No}]], [[${goodsNavigation.cate3No}]], [[${goodsNavigation.cate4No}]])"
+				<a href="javascript:void(0);" th:onclick="cfnGoToGoodsList('0',[[${goodsNavigation.cateGb}]],[[${goodsNavigation.cate1No}]], [[${goodsNavigation.cate2No}]], [[${goodsNavigation.cate3No}]], [[${goodsNavigation.cate4No}]])"
 				th:text="${goodsNavigation.cate4Nm}">cate</a>
 				</th:block>
 				<th:block th:unless="${goodsNavigation.cate5No}"><strong th:text="${goodsNavigation.cate4Nm}">cate</strong></th:block>

+ 0 - 2
src/main/webapp/WEB-INF/views/web/mypage/MypageCreListFormWeb.html

@@ -284,8 +284,6 @@
 				tag += '							</div>\n';
 				tag += '							<div class="goods_cont">\n';
 				$.each(creList.creList, function (index, cre) {
-					console.log(index);
-					console.log(cre);
 					tag += '								<!-- 주문상품1 -->\n';
 					tag += '								<div class="goods_info">\n';
 					tag += '									<div class="order_desc">\n';

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

@@ -430,47 +430,47 @@ var reviewCreate = function () {
 	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]').prop('checked') == false){
+		if($('#reviewForm input:radio[name=scoreSize]:checked').length == 0){
 			mcxDialog.alert('상품 사이즈를 평가해주세요.');
-			return;
+			return false;
 		}
 		
-		if($('#reviewForm input:radio[name=scoreColor]').prop('checked') == false){
+		if($('#reviewForm input:radio[name=scoreColor]:checked').length == 0){
 			mcxDialog.alert('상품 컬러를 평가해주세요.');
-			return;
+			return false;
 		}
 	}
 	
 	if(reviewList.sizeGb == 'T' || reviewList.sizeGb == 'B'){
-		if($('#reviewForm input:radio[name=scoreFit]').prop('checked') == false){
+		if($('#reviewForm input:radio[name=scoreFit]:checked').length == 0){
 			mcxDialog.alert('상품 핏을 평가해주세요.');
-			return;
+			return false;
 		}
-		if($('#reviewForm input:radio[name=scoreThick]').prop('checked') == false){
+		if($('#reviewForm input:radio[name=scoreThick]:checked').length == 0){
 			mcxDialog.alert('상품 두께감을 평가해주세요.');
-			return;
+			return false;
 		}	
 	}
 	
 	if(reviewList.sizeGb == 'S' ){
-		if($('#reviewForm input:radio[name=scoreWeight]').prop('checked') == false){
+		if($('#reviewForm input:radio[name=scoreWeight]:checked').length == 0){
 			mcxDialog.alert('상품 무게감을 평가해주세요.');
-			return;
+			return false;
 		}
 		
-		if($('#reviewForm input:radio[name=scoreBall]').prop('checked') == false){
+		if($('#reviewForm input:radio[name=scoreBall]:checked').length == 0){
 			mcxDialog.alert('상품 볼넓이를 평가해주세요.');
-			return;
+			return false;
 		}
 	}
-
+	
 	if($('#reviewContent').val().length<10){
 		mcxDialog.alert("리뷰 내용을 10자 이상 입력해주세요.");
-		return;
+		return false;
 	}
 	
 	

+ 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>

+ 65 - 59
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -26,7 +26,7 @@
 <script type="text/javascript" src="/biz/payment.js"></script>
 
 <!-- 주문정보form -->
-<form id="order_info" name="order_info" method="post" action="/order/pay/result/response" ></form>
+<form id="order_info" name="order_info" method="post" action="/order/pay/result/response" style="display:none"></form>
 <!-- //주문정보form -->
 
 <!-- 주문금액정보표현 -->
@@ -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("사은품 지급 정보 동의를 체크해주세요.");
 							
 							// 배송정보화면노출
@@ -1065,7 +1071,7 @@ var paymentInfoSet = function() {
 							
 							var pgGb = $("#order_info input[name=pgGb]").val();
 							
-							if (pgGb == "NAVFER") {
+							if (pgGb == "NAVER") {
 								fnNaverPaymentReady();
 							} else if (pgGb == "KAKAO") {
 								fnKakaoPaymentReady();
@@ -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>