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

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

card007 5 лет назад
Родитель
Сommit
fdf76ccc70

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

@@ -71,15 +71,6 @@ public interface TsfCartDao {
 	 */
 	void updateCartInfo(Cart param);
 
-	/**
-	 * 장바구니 수정
-	 * @param param
-	 * @return void
-	 * @author xodud1202
-	 * @since 2021. 03. 01
-	 */
-	void updateCart(Cart param);
-
 	/**
 	 * 장바구니 상세 수정
 	 * @param param
@@ -299,5 +290,5 @@ public interface TsfCartDao {
 	 * @author xodud1202
 	 * @since 2021. 04. 04
 	 */
-	int updateCartGoodsQty(Order param);
+	int updateCartGoodsQty(Cart param);
 }

+ 22 - 5
src/main/java/com/style24/front/biz/service/TsfCartService.java

@@ -731,14 +731,18 @@ public class TsfCartService {
 
 		// 업체별 상품 합계 금액 저장
 		int compCnt = 0;
+		String delvYn;
 		Order lastCompCheck = new Order();
 		for (Order delv : delvFeeInfo) {
+			lastCompCheck = null;
 			compCnt = 0;
+			delvYn = "N";
 			for (Order param : params) {
 				if (param.getDelvFeeCd().equals(delv.getDelvFeeCd())) {
 					compCnt++;
 					if("N".equals(param.getSoldoutYn()) && "Y".equals(param.getOrdCanYn()) && param.getGoodsQty() >= param.getMinOrdQty() && param.getGoodsQty() <= param.getMaxOrdQty()) {
 						delv.setCompSumPrice(delv.getCompSumPrice() + param.getCurrPrice());
+						delvYn = "Y";
 					}
 					if (compCnt == 1) {
 						param.setFirstCompYn("Y");
@@ -749,7 +753,15 @@ public class TsfCartService {
 				}
 			}
 
-			lastCompCheck.setAddDelvFeeYn("Y");
+			if(lastCompCheck != null) {
+				// 한 업체의 마지막 상품 체크
+				lastCompCheck.setAddDelvFeeYn("Y");
+
+				// 배송 상품 존재 여부
+				lastCompCheck.setDelvYn(delvYn);
+
+				log.info("CHECK CART_SQ ::: {} / {} / {}", lastCompCheck.getCartSq(), lastCompCheck.getDelvYn(), lastCompCheck.getAddDelvFeeYn());
+			}
 		}
 
 		int wmsSumPrice = 0, wmsMinOrdAmt = 0, wmsDelvFee = 0;
@@ -787,6 +799,11 @@ public class TsfCartService {
 			} else {
 				order.setWmsDelvFee(wmsDelvFee);
 			}
+
+			// 배송 상품 존재 여부
+			if(wmsSumPrice > 0) {
+				order.setDelvYn("Y");
+			}
 		}
 	}
 
@@ -1074,7 +1091,7 @@ public class TsfCartService {
 					cartDao.deleteCartDetail(param);
 				}
 			} else {		// 동일 상품 없을 시 UPDATE
-				cartDao.updateCart(param);						// 장바구니 마스터 정보 저장
+				cartDao.updateCartGoodsQty(param);						// 장바구니 마스터 정보 저장
 				cartDao.insertCartHst(param);					// 장바구니 이력 정보 저장
 				for(int i = 0 ; i < param.getCartDtlSqArr().length ; i++) {
 					param.setItemCd(param.getItemCds()[i]);
@@ -1107,7 +1124,7 @@ public class TsfCartService {
 					cartDao.deleteCartDetail(param);			// 현재 장바구니 삭제
 				}
 			} else {
-				cartDao.updateCart(param);						// 장바구니 마스터 정보 저장
+				cartDao.updateCartGoodsQty(param);						// 장바구니 마스터 정보 저장
 				cartDao.insertCartHst(param);					// 장바구니 수정 이력 저장
 
 				param.setItemCd(param.getItemCds()[0]);
@@ -1177,14 +1194,14 @@ public class TsfCartService {
 	}
 
 	/**
-	 * 장바구니 주문하기 버튼 클릭시 재고 및 상태 체크
+	 * 장바구니 최소/최대 주문 수량으로 변경
 	 * @param Order
 	 * @return Collection<Order>
 	 * @author xodud1202
 	 * @since 2021. 04. 02
 	 */
 	@Transactional("shopTxnManager")
-	public Order updateCartGoodsQty(Order param) {
+	public Order updateCartGoodsQty(Cart param) {
 		if(TsfSession.isLogin()) {
 			param.setCustNo(TsfSession.getInfo().getCustNo());
 			param.setUpdNo(param.getCustNo());

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

@@ -259,7 +259,7 @@ public class TsfCartController extends TsfBaseController {
 	 */
 	@ResponseBody
 	@PostMapping("/update/goodsQty")
-	public Order updateCartGoodsQty(@RequestBody Order param) {
+	public Order updateCartGoodsQty(@RequestBody Cart param) {
 		return cartService.updateCartGoodsQty(param);
 	}
 

+ 2 - 2
src/main/java/com/style24/front/support/config/TsfRedisSessionConfig.java

@@ -88,8 +88,8 @@ public class TsfRedisSessionConfig extends AbstractHttpSessionApplicationInitial
 		serializer.setUseBase64Encoding(false);
 
 		// SSL인증서 적용 시 주석 제거
-		serializer.setUseSecureCookie(true);
-		serializer.setSameSite("NONE");
+//		serializer.setUseSecureCookie(true);
+//		serializer.setSameSite("NONE");
 
 		return serializer;
 	}

+ 0 - 22
src/main/java/com/style24/persistence/mybatis/shop/TsfCart.xml

@@ -174,28 +174,6 @@
 		/* TsfCart.updateCartInfo : 장바구니 UPDATE */
 		UPDATE TB_CART SET
 			  GOODS_QTY = GOODS_QTY + #{goodsQty}
-			, DEAL_GOODS_CD = #{dealGoodsCd}
-			, AF_LINK_CD = #{afLinkCd}
-			, ITHR_CD = #{ithrCd}
-			, CONTENTS_LOC = #{contentsLoc}
-			, PLAN_DTL_SQ = #{planDtlSq}
-			, UPD_NO = #{updNo}
-			, UPD_DT = CURRENT_TIMESTAMP
-		WHERE CART_SQ = #{cartSq}
-		AND   GOODS_CD = #{goodsCd}
-		AND   CUST_NO = #{custNo}
-	</update>
-
-	<!-- 장바구니 UPDATE -->
-	<update id="updateCart" parameterType="Cart">
-		/* TsfCart.updateCart : 장바구니 UPDATE */
-		UPDATE TB_CART SET
-			  GOODS_QTY = #{goodsQty}
-			, DEAL_GOODS_CD = #{dealGoodsCd}
-			, AF_LINK_CD = #{afLinkCd}
-			, ITHR_CD = #{ithrCd}
-			, CONTENTS_LOC = #{contentsLoc}
-			, PLAN_DTL_SQ = #{planDtlSq}
 			, UPD_NO = #{updNo}
 			, UPD_DT = CURRENT_TIMESTAMP
 		WHERE CART_SQ = #{cartSq}

+ 3 - 3
src/main/webapp/WEB-INF/views/mob/cart/CartChangeOptionPopupMob.html

@@ -131,7 +131,7 @@
 						<form class="form_wrap">
 							<div class="form_field">
 								<th:block th:each="color, index : ${comp.cartColorList}">
-									<div class="select_custom item_opt2 sizeList" th:classappend="|${comp.goodsCd}_${color.optCd1} sizeList${comp.goodsCd}|" th:style="${color.cartColorNm != null ? 'display:block' : 'display:none'}">
+									<div class="select_custom item_opt2 sizeList" th:classappend="|${comp.goodsCd}_${color.optCd1} sizeList${comp.goodsCd}|" th:style="${color.cartColorNm != null ? 'display:inline-block' : 'display:none'}">
 										<div class="combo">
 											<div class="select" th:classappend="|size_${comp.goodsCd}_size_nm|" th:text="${comp.optCd2}" th:data="${color.goodsCd}"></div>
 											<ul class="list setSizeSelect" th:classappend="|size_${comp.goodsCd}|" th:data="${comp.goodsCd}">
@@ -188,7 +188,7 @@
 						<form class="form_wrap">
 							<div class="form_field">
 								<th:block th:each="color, index : ${comp.cartColorList}">
-									<div class="select_custom item_opt2 sizeList" th:classappend="|${comp.goodsCd}_${color.optCd1} sizeList${comp.goodsCd}|" th:style="${color.cartColorNm != null ? 'display:block' : 'display:none'}">
+									<div class="select_custom item_opt2 sizeList" th:classappend="|${comp.goodsCd}_${color.optCd1} sizeList${comp.goodsCd}|" th:style="${color.cartColorNm != null ? 'display:inline-block' : 'display:none'}">
 										<div class="combo">
 											<div class="select" th:classappend="|size_${comp.goodsCd}_size_nm|" th:text="${comp.optCd2}" th:data="${color.goodsCd}"></div>
 											<ul class="list setSizeSelect" th:classappend="|size_${comp.goodsCd}|" th:data="${comp.goodsCd}">
@@ -292,7 +292,7 @@
 					let img = color[i].cartImgList[j];
 					if(optCd1 == img.colorCd) {
 						imgHtml += "<li>\n<span class='thumb'>\n";
-						imgHtml += "<img src='" + cart.imgPath + "/" + img.sysImgNm + "' onerror='this.src='" + [[${@environment.getProperty('domain.uximage')}]] + "/images/pc/thumb/bg_item_none.png' alt='" + img.sysImgNm + "' />\n";
+						imgHtml += "<img src='" + _uploadGoodsUrl + "/" + img.sysImgNm + "' onerror='this.src='" + [[${@environment.getProperty('domain.uximage')}]] + "/images/pc/thumb/bg_item_none.png' alt='" + img.sysImgNm + "' />\n";
 						imgHtml += "</span>\n</li>\n";
 					}
 				}

+ 526 - 526
src/main/webapp/WEB-INF/views/mob/cart/CartListAjaxFormMob.html

@@ -623,611 +623,611 @@
 				<button type="button" id="btn_purchase" class="btn btn_primary"><span>구매하기 (<em class="realOrderQtyText" th:text="${order.totCartCnt}"></em>개)</span></button> <!-- 210406_ID 추가 -->
 			</div>
 		</div>
-	</form>
 
-	<!-- 쿠폰사용안내 팝업 -->
-	<div class="modal fade couponInfo_pop cartCpnInfoModal" id="couponInfoPop" tabindex="-1" role="dialog" aria-labelledby="couponInfoLabel" aria-hidden="true">
-		<div class="modal-dialog" role="document">
-			<div class="modal-content">
-				<div class="modal-header">
-					<h5 class="modal-title" id="couponInfoLabel"></h5>
-				</div>
-				<div class="modal-body">
-					<div class="pop_cont">
-						<dl>
-							<div>
-								<dt>사용조건</dt>
-								<dd class="cpnCondition"></dd>
-							</div>
-							<div class="cartCpnPubLimitQty">
-								<dt>발급수량</dt>
-								<dd class="custPubLimitQtyTxt"></dd>
-							</div>
-							<div>
-								<dt>유효기간</dt>
-								<dd class="availDt"></dd>
-							</div>
-							<div>
-								<dt>대상조건</dt>
-								<dd class="refVal"></dd>
-							</div>
-						</dl>
+		<!-- 쿠폰사용안내 팝업 -->
+		<div class="modal fade couponInfo_pop cartCpnInfoModal" id="couponInfoPop" tabindex="-1" role="dialog" aria-labelledby="couponInfoLabel" aria-hidden="true">
+			<div class="modal-dialog" role="document">
+				<div class="modal-content">
+					<div class="modal-header">
+						<h5 class="modal-title" id="couponInfoLabel"></h5>
+					</div>
+					<div class="modal-body">
+						<div class="pop_cont">
+							<dl>
+								<div>
+									<dt>사용조건</dt>
+									<dd class="cpnCondition"></dd>
+								</div>
+								<div class="cartCpnPubLimitQty">
+									<dt>발급수량</dt>
+									<dd class="custPubLimitQtyTxt"></dd>
+								</div>
+								<div>
+									<dt>유효기간</dt>
+									<dd class="availDt"></dd>
+								</div>
+								<div>
+									<dt>대상조건</dt>
+									<dd class="refVal"></dd>
+								</div>
+							</dl>
+						</div>
 					</div>
 				</div>
 			</div>
+			<a href="#close-modal" rel="modal:close" id="couponInfoPop_close" class="close-modal">Close</a>
 		</div>
-		<a href="#close-modal" rel="modal:close" id="couponInfoPop_close" class="close-modal">Close</a>
-	</div>
-	<!-- //쿠폰사용안내 팝업 -->
-
-	<!-- 옵션변경 팝업 -->
-	<div id="optModifyPop01" class="popup_box optModifyPop optModifyPop01"></div>
-	<!-- //옵션변경 팝업 -->
-
-	<script th:inline="javascript">
-		let sumRealPayAmt = [[${order.sumRealPayAmt + order.totDelvFee}]];
-		let totDcAmt = [[${order.totDcAmt}]];
-		let loginInfo = [[${loginInfo}]];
-		let orderFlag = true;
-
-		$(document).ready(function() {
-			if([[${!order.shotCanYn.equals('Y')}]]) {
-				//$(".shotDelvSelect").hide();
-			}
+		<!-- //쿠폰사용안내 팝업 -->
 
-			$("#cartListForm .area_salecoupon .coupon_box").hide();
+		<!-- 옵션변경 팝업 -->
+		<div id="optModifyPop01" class="popup_box optModifyPop optModifyPop01"></div>
+		<!-- //옵션변경 팝업 -->
 
-			if(!loginInfo || loginInfo.custNo == null || loginInfo.custNo == 0) {
-				$("#cartListForm .area_salecoupon").parent().hide();
-			}
-		});
-
-		function cancelCartCpn() {
-			$("#cartListForm #sumRealPayAmt").text(Number(sumRealPayAmt).toLocaleString());
-			$("#cartListForm #totDcAmt").text(Number(totDcAmt).toLocaleString());
-			$("#cartListForm .area_salecoupon .coupon_box").hide();
-
-			$("#bottomOrderArea .realOrderAmtText").text(Number(sumRealPayAmt).toLocaleString());
-		}
-
-		function serialCpnApply() {
-			let cartArr = [];
-			let currPrices = [];
-			$("#cartListForm input[name=cartSqArr]:checked").each(function(index, item) {
-				cartArr.push($(this).val());
-				currPrices.push($(this).parents(".cartInfo").find("input[name=tmtbDcAmt]").val());
-			});
+		<script th:inline="javascript">
+			let sumRealPayAmt = [[${order.sumRealPayAmt + order.totDelvFee}]];
+			let totDcAmt = [[${order.totDcAmt}]];
+			let loginInfo = [[${loginInfo}]];
+			let orderFlag = true;
 
-			let data = {
-				rdCpnNm : $("#cartListForm #serialCpnNm").val(),
-				cartSqArr : cartArr,
-				currPrices : currPrices
-			}
+			$(document).ready(function() {
+				if([[${!order.shotCanYn.equals('Y')}]]) {
+					//$(".shotDelvSelect").hide();
+				}
 
-			let jsonData = JSON.stringify(data);
-
-			$.ajax( {
-				type: "POST",
-				url : '/cart/list/serialCpnApply',
-				contentType: 'application/json',
-				dataType : 'json',
-				data : jsonData,
-				success : function(result) {
-					if(result.serialCpnInfo.result == "SUCCESS") {
-						let cpnInfo = result.serialCpnInfo;
-						$("#cartListForm .area_salecoupon .coupon_box").show();
-
-						// 합계 금액
-						if(cartArr.length > 0) {
-							$("#cartListForm #sumRealPayAmt").text(Number(sumRealPayAmt - cpnInfo.dcAmt).toLocaleString());
-							$("#cartListForm #totDcAmt").text(Number(totDcAmt - cpnInfo.dcAmt).toLocaleString());
-							$("#bottomOrderArea .realOrderAmtText").text(Number(sumRealPayAmt - cpnInfo.dcAmt).toLocaleString());
-						}
+				$("#cartListForm .area_salecoupon .coupon_box").hide();
 
-						// 쿠폰 정보
-						$("#cartListForm .area_salecoupon .cp_name").text(cpnInfo.cpnNm);
-						$("#cartListForm .area_salecoupon .cp_condition").html(cpnInfo.cpnDesc + "<span><em class='tag'>1장 보유</em></span>");
-						$("#cartListForm .area_salecoupon .availStdt").text(cpnInfo.availStdt);
-						$("#cartListForm .area_salecoupon .availEddt").text(cpnInfo.availEddt);
-						if (cpnInfo.dcWay == "G240_10") {
-							$("#cartListForm .area_salecoupon .cp_dc_val").html("<em>" + Number(cpnInfo.dcVal).toLocaleString() + "</em> 원");
-						} else if (cpnInfo.dcWay == "G240_11") {
-							$("#cartListForm .area_salecoupon .cp_dc_val").html("<em>" + cpnInfo.dcVal + "%</em>");
-						}
+				if(!loginInfo || loginInfo.custNo == null || loginInfo.custNo == 0) {
+					$("#cartListForm .area_salecoupon").parent().hide();
+				}
+			});
 
-						let conditionComment = "", refValComment = "";
+			function cancelCartCpn() {
+				$("#cartListForm #sumRealPayAmt").text(Number(sumRealPayAmt).toLocaleString());
+				$("#cartListForm #totDcAmt").text(Number(totDcAmt).toLocaleString());
+				$("#cartListForm .area_salecoupon .coupon_box").hide();
 
-						if(cpnInfo.buyLimitAmt > 0) { conditionComment += "<span>" + Number(cpnInfo.buyLimitAmt).toLocaleString() + "</span>원 이상 구매 시 "; }
-						if(cpnInfo.maxDcAmt > 0) { conditionComment += "최대 <span>" +  Number(cpnInfo.maxDcAmt).toLocaleString() + "</span>원 할인"; }
+				$("#bottomOrderArea .realOrderAmtText").text(Number(sumRealPayAmt).toLocaleString());
+			}
 
-						if("A" == cpnInfo.applyScope) {
-							refValComment += "전체<br/>";
-						} else {
-							if(cpnInfo.refCateCnt > 0) {
-								refValComment += cpnInfo.refCateNm + " 카테고리";
-								if(cpnInfo.refCateCnt > 1) { refValComment += " 外"; }
-								refValComment += "<br/>";
-							}
-							if(cpnInfo.refSupplyCompCnt > 0) {
-								refValComment += cpnInfo.refSupplyCompNm + " 업체";
-								if(cpnInfo.refSupplyCompCnt > 1) { refValComment += " 外"; }
-								refValComment += "<br/>";
-							}
-							if(cpnInfo.refBrandCnt > 0) {
-								refValComment += cpnInfo.refBrandNm;
-								refValComment += " 브랜드";
-								if(cpnInfo.refBrandCnt > 2) { refValComment += " 外"; }
-								refValComment += "<br/>";
-							}
-							if(cpnInfo.refGoodsCnt > 0) {
-								refValComment += cpnInfo.refGoodsNm + " 상품";
-								if(cpnInfo.refGoodsCnt > 1) { refValComment += " 外"; }
-								refValComment += "<br/>";
-							}
-						}
-						refValComment += "일부상품, 특가상품 제외";
+			function serialCpnApply() {
+				let cartArr = [];
+				let currPrices = [];
+				$("#cartListForm input[name=cartSqArr]:checked").each(function(index, item) {
+					cartArr.push($(this).val());
+					currPrices.push($(this).parents(".cartInfo").find("input[name=tmtbDcAmt]").val());
+				});
 
-						$(".cartCpnInfoModal .modal-header").html('<h5 class="modal-title" id="couponInfoLabel">' + cpnInfo.cpnNm + '</h5>');
+				let data = {
+					rdCpnNm : $("#cartListForm #serialCpnNm").val(),
+					cartSqArr : cartArr,
+					currPrices : currPrices
+				}
 
-						if(conditionComment != "") { $(".cartCpnInfoModal .cpnCondition").html(conditionComment); }
-						else { $(".cartCpnInfoModal .cartCpnCondition").hide(); }
+				let jsonData = JSON.stringify(data);
+
+				$.ajax( {
+					type: "POST",
+					url : '/cart/list/serialCpnApply',
+					contentType: 'application/json',
+					dataType : 'json',
+					data : jsonData,
+					success : function(result) {
+						if(result.serialCpnInfo.result == "SUCCESS") {
+							let cpnInfo = result.serialCpnInfo;
+							$("#cartListForm .area_salecoupon .coupon_box").show();
+
+							// 합계 금액
+							if(cartArr.length > 0) {
+								$("#cartListForm #sumRealPayAmt").text(Number(sumRealPayAmt - cpnInfo.dcAmt).toLocaleString());
+								$("#cartListForm #totDcAmt").text(Number(totDcAmt - cpnInfo.dcAmt).toLocaleString());
+								$("#bottomOrderArea .realOrderAmtText").text(Number(sumRealPayAmt - cpnInfo.dcAmt).toLocaleString());
+							}
 
-						if(cpnInfo.custPubLimitQty > 0) { $(".cartCpnInfoModal .custPubLimitQtyTxt").html("1인 최대 <span>" + Number(cpnInfo.custPubLimitQty).toLocaleString() + "</span>매"); }
-						else { $(".cartCpnInfoModal .cartCpnPubLimitQty").hide(); }
+							// 쿠폰 정보
+							$("#cartListForm .area_salecoupon .cp_name").text(cpnInfo.cpnNm);
+							$("#cartListForm .area_salecoupon .cp_condition").html(cpnInfo.cpnDesc + "<span><em class='tag'>1장 보유</em></span>");
+							$("#cartListForm .area_salecoupon .availStdt").text(cpnInfo.availStdt);
+							$("#cartListForm .area_salecoupon .availEddt").text(cpnInfo.availEddt);
+							if (cpnInfo.dcWay == "G240_10") {
+								$("#cartListForm .area_salecoupon .cp_dc_val").html("<em>" + Number(cpnInfo.dcVal).toLocaleString() + "</em> 원");
+							} else if (cpnInfo.dcWay == "G240_11") {
+								$("#cartListForm .area_salecoupon .cp_dc_val").html("<em>" + cpnInfo.dcVal + "%</em>");
+							}
 
-						$(".cartCpnInfoModal .availDt").html('<span>' + cpnInfo.availStdtTime + "</span> ~ <span>" + cpnInfo.availEddtTime + "</span>");
-						$(".cartCpnInfoModal .refVal").html(refValComment);
-					} else {
-						mcxDialog.alert(result.serialCpnInfo.result);
-					}
-				}
-			});
-		}
+							let conditionComment = "", refValComment = "";
 
-		$("input[name=cartSqArr]").on("change", function(e) {
-			changeCartSqArr();
-		});
+							if(cpnInfo.buyLimitAmt > 0) { conditionComment += "<span>" + Number(cpnInfo.buyLimitAmt).toLocaleString() + "</span>원 이상 구매 시 "; }
+							if(cpnInfo.maxDcAmt > 0) { conditionComment += "최대 <span>" +  Number(cpnInfo.maxDcAmt).toLocaleString() + "</span>원 할인"; }
 
-		function changeCartSqArr() {
-			let cartArr = [];
+							if("A" == cpnInfo.applyScope) {
+								refValComment += "전체<br/>";
+							} else {
+								if(cpnInfo.refCateCnt > 0) {
+									refValComment += cpnInfo.refCateNm + " 카테고리";
+									if(cpnInfo.refCateCnt > 1) { refValComment += " 外"; }
+									refValComment += "<br/>";
+								}
+								if(cpnInfo.refSupplyCompCnt > 0) {
+									refValComment += cpnInfo.refSupplyCompNm + " 업체";
+									if(cpnInfo.refSupplyCompCnt > 1) { refValComment += " 外"; }
+									refValComment += "<br/>";
+								}
+								if(cpnInfo.refBrandCnt > 0) {
+									refValComment += cpnInfo.refBrandNm;
+									refValComment += " 브랜드";
+									if(cpnInfo.refBrandCnt > 2) { refValComment += " 外"; }
+									refValComment += "<br/>";
+								}
+								if(cpnInfo.refGoodsCnt > 0) {
+									refValComment += cpnInfo.refGoodsNm + " 상품";
+									if(cpnInfo.refGoodsCnt > 1) { refValComment += " 外"; }
+									refValComment += "<br/>";
+								}
+							}
+							refValComment += "일부상품, 특가상품 제외";
 
-			// 선택된 장바구니 번호
-			$("#cartListForm input[name=cartSqArr]:checked").each(function () {
-				cartArr.push($(this).val());
-			});
+							$(".cartCpnInfoModal .modal-header").html('<h5 class="modal-title" id="couponInfoLabel">' + cpnInfo.cpnNm + '</h5>');
 
-			// 선택된 장바구니 정보 가공
-			let data = {	cartSqArr : cartArr }
-			let jsonData = JSON.stringify(data);
-
-			$.ajax( {
-				type: "POST",
-				url : '/cart/change/goods/list',
-				contentType: 'application/json',
-				dataType : 'json',
-				data : jsonData,
-				success : function(result) {
-					fnChangeCartListInfo(result);
-				}
-			});
-		}
-
-		function fnChangeCartListInfo(order) {
-			let shotList = order.shotCartList;
-			let wmsList = order.wmsCartList;
-			let delvList = order.delvCartList;
-			let cartList = new Array();
-
-			// 다다익선 정보 숨김
-			$("#cartListForm .applyTmtb").hide();
-			$("#cartListForm .notApplyTmtb").hide();
-
-			// 장바구니 각 상품 가격 정보 할인 전으로 변경
-			$("#cartListForm .cartInfo input[name=cartSq]").each(function() {
-				if($(this).parent().find(".calc_box .price_org").text() != "") {
-					$(this).parent().find(".calc_box .price_sale").text($(this).parent().find(".calc_box .price_org").text());
-					$(this).parent().find(".calc_box .price_org").remove();
-				}
-			});
+							if(conditionComment != "") { $(".cartCpnInfoModal .cpnCondition").html(conditionComment); }
+							else { $(".cartCpnInfoModal .cartCpnCondition").hide(); }
 
-			$("#cartListForm").find(".delvFeeArea").html("<div class='info_dlvr'><span class='dlvr_fee'>배송비 무료</span></div>");
-			for(let i = 0 ; i < shotList.length ; i++) {
-				cartList.push(shotList[i]);
-				$("#cartListForm .shotCartInfo input[name=cartSq]").each(function() {
-					if(shotList[i].cartSq == $(this).val()) {
-						let shot = shotList[i];
-						$(this).parent().find(".od_moresale .applyTmtbNm > ul").html("");
-						$(this).parent().find(".od_moresale .notApplyTmtbNm > ul").html("");
-
-						// 다다익선 적용 정보 생성성
-						if(shot.qtyTmtbSq > 0 && shot.applyQtySectionYn == "Y") {
-							$(this).parent().find(".applyTmtb").show();
-						}
-						if(shot.amtTmtbSq > 0 && shot.applyAmtSectionYn == "Y") {
-							$(this).parent().find(".applyTmtb").show();
-						}
-						if(shot.qtyTmtbSq > 0 && shot.applyQtySectionYn == "N") {
-							$(this).parent().find(".notApplyTmtb").show();
-						}
-						if(shot.amtTmtbSq > 0 && shot.applyAmtSectionYn == "N") {
-							$(this).parent().find(".notApplyTmtb").show();
-						}
+							if(cpnInfo.custPubLimitQty > 0) { $(".cartCpnInfoModal .custPubLimitQtyTxt").html("1인 최대 <span>" + Number(cpnInfo.custPubLimitQty).toLocaleString() + "</span>매"); }
+							else { $(".cartCpnInfoModal .cartCpnPubLimitQty").hide(); }
 
-						// 다다익선 할인가 적용
-						if(shot.tmtbDcAmt < shot.currPrice) {
-							$(this).parent().find(".calc_box .price_sale").text(Number(shot.tmtbDcAmt).toLocaleString() + " 원");
-							$(this).parent().find(".calc_box").prepend("<p><span class='price_org'><em>" + Number(shot.currPrice).toLocaleString() + "</em>원</span></p>");
-							$(this).parent().find("input[name=tmtbDcAmt]").val(shot.tmtbDcAmt);
+							$(".cartCpnInfoModal .availDt").html('<span>' + cpnInfo.availStdtTime + "</span> ~ <span>" + cpnInfo.availEddtTime + "</span>");
+							$(".cartCpnInfoModal .refVal").html(refValComment);
+						} else {
+							mcxDialog.alert(result.serialCpnInfo.result);
 						}
 					}
 				});
 			}
 
-			for(let i = 0 ; i < wmsList.length ; i++) {
-				cartList.push(wmsList[i]);
-				$("#cartListForm .wmsCartInfo input[name=cartSq]").each(function() {
-					if(wmsList[i].cartSq == $(this).val()) {
-						let wms = wmsList[i];
-						$(this).parent().find(".od_moresale .applyTmtbNm > ul").html("");
-						$(this).parent().find(".od_moresale .notApplyTmtbNm > ul").html("");
-
-						// 다다익선 적용 정보 생성성
-						if(wms.qtyTmtbSq > 0 && wms.applyQtySectionYn == "Y") {
-							$(this).parent().find(".applyTmtb").show();
-						}
-						if(wms.amtTmtbSq > 0 && wms.applyAmtSectionYn == "Y") {
-							$(this).parent().find(".applyTmtb").show();
-						}
-						if(wms.qtyTmtbSq > 0 && wms.applyQtySectionYn == "N") {
-							$(this).parent().find(".notApplyTmtb").show();
-						}
-						if(wms.amtTmtbSq > 0 && wms.applyAmtSectionYn == "N") {
-							$(this).parent().find(".notApplyTmtb").show();
-						}
+			$("input[name=cartSqArr]").on("change", function(e) {
+				changeCartSqArr();
+			});
 
-						// 다다익선 할인가 적용
-						if(wms.tmtbDcAmt < wms.currPrice) {
-							$(this).parent().find(".calc_box .price_sale").text(Number(wms.tmtbDcAmt).toLocaleString() + " 원");
-							$(this).parent().find(".calc_box").prepend("<p><span class='price_org'><em>" + Number(wms.currPrice).toLocaleString() + "</em>원</span></p>");
-							$(this).parent().find("input[name=tmtbDcAmt]").val(wms.tmtbDcAmt);
-						}
+			function changeCartSqArr() {
+				let cartArr = [];
+
+				// 선택된 장바구니 번호
+				$("#cartListForm input[name=cartSqArr]:checked").each(function () {
+					cartArr.push($(this).val());
+				});
+
+				// 선택된 장바구니 정보 가공
+				let data = {	cartSqArr : cartArr }
+				let jsonData = JSON.stringify(data);
+
+				$.ajax( {
+					type: "POST",
+					url : '/cart/change/goods/list',
+					contentType: 'application/json',
+					dataType : 'json',
+					data : jsonData,
+					success : function(result) {
+						fnChangeCartListInfo(result);
 					}
 				});
 			}
 
-			// 자사 상품 배송비
-			if(order.wmsDelvFee == 0) {
-				$(".selfGoodsDelv").html("<span class='dlvr_fee'>배송비 무료</span>");
-			} else {
-				let html = "<span class='dlvr_fee'>배송비 <em>" + Number(order.wmsDelvFee).toLocaleString() + "</em> 원</span><a href='#' class='btn_popup_save'>배송비 SAVE 상품 보기</a>";
-				$(".selfGoodsDelv").html(html);
-			}
+			function fnChangeCartListInfo(order) {
+				let shotList = order.shotCartList;
+				let wmsList = order.wmsCartList;
+				let delvList = order.delvCartList;
+				let cartList = new Array();
+
+				// 다다익선 정보 숨김
+				$("#cartListForm .applyTmtb").hide();
+				$("#cartListForm .notApplyTmtb").hide();
+
+				// 장바구니 각 상품 가격 정보 할인 전으로 변경
+				$("#cartListForm .cartInfo input[name=cartSq]").each(function() {
+					if($(this).parent().find(".calc_box .price_org").text() != "") {
+						$(this).parent().find(".calc_box .price_sale").text($(this).parent().find(".calc_box .price_org").text());
+						$(this).parent().find(".calc_box .price_org").remove();
+					}
+				});
 
-			for(let i = 0 ; i < delvList.length ; i++) {
-				cartList.push(delvList[i]);
-				$("#cartListForm .delvList .delvCartInfo input[name=cartSq]").each(function() {
-					if(delvList[i].cartSq == $(this).val()) {
-						let delv = delvList[i];
-						$(this).parent().find(".od_moresale .applyTmtbNm > ul").html("");
-						$(this).parent().find(".od_moresale .notApplyTmtbNm > ul").html("");
-
-						// 다다익선 적용 정보 생성성
-						if(delv.qtyTmtbSq > 0 && delv.applyQtySectionYn == "Y") {
-							$(this).parent().find(".applyTmtb").show();
-						}
-						if(delv.amtTmtbSq > 0 && delv.applyAmtSectionYn == "Y") {
-							$(this).parent().find(".applyTmtb").show();
-						}
-						if(delv.qtyTmtbSq > 0 && delv.applyQtySectionYn == "N") {
-							$(this).parent().find(".notApplyTmtb").show();
-						}
-						if(delv.amtTmtbSq > 0 && delv.applyAmtSectionYn == "N") {
+				$("#cartListForm").find(".delvFeeArea").html("<div class='info_dlvr'><span class='dlvr_fee'>배송비 무료</span></div>");
+				for(let i = 0 ; i < shotList.length ; i++) {
+					cartList.push(shotList[i]);
+					$("#cartListForm .shotCartInfo input[name=cartSq]").each(function() {
+						if(shotList[i].cartSq == $(this).val()) {
+							let shot = shotList[i];
+							$(this).parent().find(".od_moresale .applyTmtbNm > ul").html("");
+							$(this).parent().find(".od_moresale .notApplyTmtbNm > ul").html("");
+
+							// 다다익선 적용 정보 생성성
+							if(shot.qtyTmtbSq > 0 && shot.applyQtySectionYn == "Y") {
+								$(this).parent().find(".applyTmtb").show();
+							}
+							if(shot.amtTmtbSq > 0 && shot.applyAmtSectionYn == "Y") {
+								$(this).parent().find(".applyTmtb").show();
+							}
+							if(shot.qtyTmtbSq > 0 && shot.applyQtySectionYn == "N") {
+								$(this).parent().find(".notApplyTmtb").show();
+							}
+							if(shot.amtTmtbSq > 0 && shot.applyAmtSectionYn == "N") {
+								$(this).parent().find(".notApplyTmtb").show();
+							}
+
+							// 다다익선 할인가 적용
+							if(shot.tmtbDcAmt < shot.currPrice) {
+								$(this).parent().find(".calc_box .price_sale").text(Number(shot.tmtbDcAmt).toLocaleString() + " 원");
+								$(this).parent().find(".calc_box").prepend("<p><span class='price_org'><em>" + Number(shot.currPrice).toLocaleString() + "</em>원</span></p>");
+								$(this).parent().find("input[name=tmtbDcAmt]").val(shot.tmtbDcAmt);
+							}
 						}
+					});
+				}
 
-						// 다다익선 할인가 적용
-						if(delv.tmtbDcAmt < delv.currPrice) {
-							$(this).parent().find(".calc_box .price_sale").text(Number(delv.tmtbDcAmt).toLocaleString() + " 원");
-							$(this).parent().find(".calc_box").prepend("<p><span class='price_org'><em>" + Number(delv.currPrice).toLocaleString() + "</em>원</span></p>");
-							$(this).parent().find("input[name=tmtbDcAmt]").val(delv.tmtbDcAmt);
+				for(let i = 0 ; i < wmsList.length ; i++) {
+					cartList.push(wmsList[i]);
+					$("#cartListForm .wmsCartInfo input[name=cartSq]").each(function() {
+						if(wmsList[i].cartSq == $(this).val()) {
+							let wms = wmsList[i];
+							$(this).parent().find(".od_moresale .applyTmtbNm > ul").html("");
+							$(this).parent().find(".od_moresale .notApplyTmtbNm > ul").html("");
+
+							// 다다익선 적용 정보 생성성
+							if(wms.qtyTmtbSq > 0 && wms.applyQtySectionYn == "Y") {
+								$(this).parent().find(".applyTmtb").show();
+							}
+							if(wms.amtTmtbSq > 0 && wms.applyAmtSectionYn == "Y") {
+								$(this).parent().find(".applyTmtb").show();
+							}
+							if(wms.qtyTmtbSq > 0 && wms.applyQtySectionYn == "N") {
+								$(this).parent().find(".notApplyTmtb").show();
+							}
+							if(wms.amtTmtbSq > 0 && wms.applyAmtSectionYn == "N") {
+								$(this).parent().find(".notApplyTmtb").show();
+							}
+
+							// 다다익선 할인가 적용
+							if(wms.tmtbDcAmt < wms.currPrice) {
+								$(this).parent().find(".calc_box .price_sale").text(Number(wms.tmtbDcAmt).toLocaleString() + " 원");
+								$(this).parent().find(".calc_box").prepend("<p><span class='price_org'><em>" + Number(wms.currPrice).toLocaleString() + "</em>원</span></p>");
+								$(this).parent().find("input[name=tmtbDcAmt]").val(wms.tmtbDcAmt);
+							}
 						}
+					});
+				}
 
-						if(delv.delvFee == 0) {
-							$(".delvList").find(".delv_" + delv.delvFeeCd).html("<span class='dlvr_fee'>배송비 무료</span><span class='dlvr_fee'><em>" + delv.supplyCompNm + "</em> 업체직배송</span>");
-						} else {
-							let html = "<div className='order_delivery'><span class='dlvr_fee'>배송비 <em>" + Number(delv.delvFee).toLocaleString() + "</em>원</span><span class='dlvr_shop'><em>" + delv.supplyCompNm + "</em> 업체직배송</span><a href='#' className='btn_popup_save'>배송비 SAVE 상품 보기</a></div>";
-							$(".delvList").find(".delv_" + delv.delvFeeCd).html(html);
+				// 자사 상품 배송비
+				if(order.wmsDelvFee == 0) {
+					$(".selfGoodsDelv").html("<span class='dlvr_fee'>배송비 무료</span>");
+				} else {
+					let html = "<span class='dlvr_fee'>배송비 <em>" + Number(order.wmsDelvFee).toLocaleString() + "</em> 원</span><a href='#' class='btn_popup_save'>배송비 SAVE 상품 보기</a>";
+					$(".selfGoodsDelv").html(html);
+				}
+
+				for(let i = 0 ; i < delvList.length ; i++) {
+					cartList.push(delvList[i]);
+					$("#cartListForm .delvList .delvCartInfo input[name=cartSq]").each(function() {
+						if(delvList[i].cartSq == $(this).val()) {
+							let delv = delvList[i];
+							$(this).parent().find(".od_moresale .applyTmtbNm > ul").html("");
+							$(this).parent().find(".od_moresale .notApplyTmtbNm > ul").html("");
+
+							// 다다익선 적용 정보 생성성
+							if(delv.qtyTmtbSq > 0 && delv.applyQtySectionYn == "Y") {
+								$(this).parent().find(".applyTmtb").show();
+							}
+							if(delv.amtTmtbSq > 0 && delv.applyAmtSectionYn == "Y") {
+								$(this).parent().find(".applyTmtb").show();
+							}
+							if(delv.qtyTmtbSq > 0 && delv.applyQtySectionYn == "N") {
+								$(this).parent().find(".notApplyTmtb").show();
+							}
+							if(delv.amtTmtbSq > 0 && delv.applyAmtSectionYn == "N") {
+							}
+
+							// 다다익선 할인가 적용
+							if(delv.tmtbDcAmt < delv.currPrice) {
+								$(this).parent().find(".calc_box .price_sale").text(Number(delv.tmtbDcAmt).toLocaleString() + " 원");
+								$(this).parent().find(".calc_box").prepend("<p><span class='price_org'><em>" + Number(delv.currPrice).toLocaleString() + "</em>원</span></p>");
+								$(this).parent().find("input[name=tmtbDcAmt]").val(delv.tmtbDcAmt);
+							}
+
+							if(delv.delvFee == 0) {
+								$(".delvList").find(".delv_" + delv.delvFeeCd).html("<span class='dlvr_fee'>배송비 무료</span><span class='dlvr_fee'><em>" + delv.supplyCompNm + "</em> 업체직배송</span>");
+							} else {
+								let html = "<div className='order_delivery'><span class='dlvr_fee'>배송비 <em>" + Number(delv.delvFee).toLocaleString() + "</em>원</span><span class='dlvr_shop'><em>" + delv.supplyCompNm + "</em> 업체직배송</span><a href='#' className='btn_popup_save'>배송비 SAVE 상품 보기</a></div>";
+								$(".delvList").find(".delv_" + delv.delvFeeCd).html(html);
+							}
 						}
-					}
-				});
-			}
+					});
+				}
 
-			// 결제 총액 영역 수정
-			$("#cartListForm .checkSelectCartListCnt").text(Number(order.totCartCnt).toLocaleString());
-			$("#cartListForm .sumListPrice").text(Number(order.sumListPrice).toLocaleString());
-			$("#cartListForm .totDelvFee").text(Number(order.totDelvFee).toLocaleString());
-			sumRealPayAmt = order.sumRealPayAmt + order.totDelvFee;
-			totDcAmt = order.totDcAmt;
-
-			// 하단 구매하기 버튼 수량 및 금액 변경
-			$("#bottomOrderArea .realOrderQtyText").text(Number(order.totCartCnt).toLocaleString());
-			$("#bottomOrderArea .realOrderAmtText").text(Number(sumRealPayAmt).toLocaleString());
-
-			// 할인코드 쿠폰 금액 재확인
-			if($("#cartListForm #serialCpnNm").val()) {
-				serialCpnApply();
-			} else {
-				$("#cartListForm .totDcAmt").text(Number(totDcAmt).toLocaleString());
-				$("#cartListForm .sumRealPayAmt").text(Number(sumRealPayAmt).toLocaleString());
-				cancelCartCpn();
-			}
-		}
+				// 결제 총액 영역 수정
+				$("#cartListForm .checkSelectCartListCnt").text(Number(order.totCartCnt).toLocaleString());
+				$("#cartListForm .sumListPrice").text(Number(order.sumListPrice).toLocaleString());
+				$("#cartListForm .totDelvFee").text(Number(order.totDelvFee).toLocaleString());
+				sumRealPayAmt = order.sumRealPayAmt + order.totDelvFee;
+				totDcAmt = order.totDcAmt;
+
+				// 하단 구매하기 버튼 수량 및 금액 변경
+				$("#bottomOrderArea .realOrderQtyText").text(Number(order.totCartCnt).toLocaleString());
+				$("#bottomOrderArea .realOrderAmtText").text(Number(sumRealPayAmt).toLocaleString());
 
-		function fnOrderValidation(list, listIndex, cartSqArr, allYn) {
-			// listIndex가 -1이면 (마지막이 지난후)
-			if(listIndex ==  - 1) {
-				if(allYn == "Y" && orderFlag) {
-					$("#cartListForm").submit();
+				// 할인코드 쿠폰 금액 재확인
+				if($("#cartListForm #serialCpnNm").val()) {
+					serialCpnApply();
 				} else {
-					if(orderFlag) {
-						let html	 = "<input type='hidden' name='cartSqArr' value='" + cartSqArr + "' />";
-						html		+= "<input type='hidden' name='shotDelvUseYn' value='" + $("input[name=shotDelvUseYn]:checked").val() + "' />";
-						$("#cartInfoForm").html(html);
-						$("#cartInfoForm").submit();
-					}
+					$("#cartListForm .totDcAmt").text(Number(totDcAmt).toLocaleString());
+					$("#cartListForm .sumRealPayAmt").text(Number(sumRealPayAmt).toLocaleString());
+					cancelCartCpn();
 				}
 			}
 
-			let info = list[listIndex];
-			let removeCartSq = 0, updateCartSq = 0, goodsQty = 0;
-			listIndex++;
-
-			// list[listIndex]가 null이 아니라면
-			if(info != null) {
-				if (info.ordCanYn == "N") {		// 주문 불가
-					let message = info.goodsNm + " 상품은 구매 할 수 없습니다. 제외하고 계속 주문하시겠습니까?";
-					fnRemoveCartSqConfirm(message, cartSqArr, info.cartSq, list, listIndex, allYn);
-				} else if (info.soldoutYn == "Y") {		// 품절
-					if (info.goodsStat == "G008_70" || info.ordCanQty < info.minOrdQty) {		// 상품 상태가 품절이거나 주문 가능 수량이 최소주문수량보다 적을경우
-						let message = info.goodsNm + " 상품은 품절입니다. 제외하고 계속 주문하시겠습니까?";
-						fnRemoveCartSqConfirm(message, cartSqArr, info.cartSq, list, listIndex, allYn)
-					} else if (info.goodsQty < info.ordCanQty) {		// 주문 가능 수량이 0일경우
-						let message = info.goodsNm + "의 " + info.colorNm + " 옵션이 품절되었습니다. 제외하고 계속 주문하시겠습니까?";
-						fnRemoveCartSqConfirm(message, cartSqArr, info.cartSq, list, listIndex, allYn)
+			function fnOrderValidation(list, listIndex, cartSqArr, allYn) {
+				// listIndex가 -1이면 (마지막이 지난후)
+				if(listIndex ==  - 1) {
+					if(allYn == "Y" && orderFlag) {
+						$("#cartListForm").submit();
+					} else {
+						if(orderFlag) {
+							let html	 = "<input type='hidden' name='cartSqArr' value='" + cartSqArr + "' />";
+							html		+= "<input type='hidden' name='shotDelvUseYn' value='" + $("input[name=shotDelvUseYn]:checked").val() + "' />";
+							$("#cartInfoForm").html(html);
+							$("#cartInfoForm").submit();
+						}
+					}
+				}
+
+				let info = list[listIndex];
+				let removeCartSq = 0, updateCartSq = 0, goodsQty = 0;
+				listIndex++;
+
+				// list[listIndex]가 null이 아니라면
+				if(info != null) {
+					if (info.ordCanYn == "N") {		// 주문 불가
+						let message = info.goodsNm + " 상품은 구매 할 수 없습니다. 제외하고 계속 주문하시겠습니까?";
+						fnRemoveCartSqConfirm(message, cartSqArr, info.cartSq, list, listIndex, allYn);
+					} else if (info.soldoutYn == "Y") {		// 품절
+						if (info.goodsStat == "G008_70" || info.ordCanQty < info.minOrdQty) {		// 상품 상태가 품절이거나 주문 가능 수량이 최소주문수량보다 적을경우
+							let message = info.goodsNm + " 상품은 품절입니다. 제외하고 계속 주문하시겠습니까?";
+							fnRemoveCartSqConfirm(message, cartSqArr, info.cartSq, list, listIndex, allYn)
+						} else if (info.goodsQty < info.ordCanQty) {		// 주문 가능 수량이 0일경우
+							let message = info.goodsNm + "의 " + info.colorNm + " 옵션이 품절되었습니다. 제외하고 계속 주문하시겠습니까?";
+							fnRemoveCartSqConfirm(message, cartSqArr, info.cartSq, list, listIndex, allYn)
+						} else if (listIndex < list.length) {
+							// 혹시 else일 경우
+							fnOrderValidation(list, listIndex, cartSqArr, allYn);
+						}
+					} else if (info.ordCanQty < info.goodsQty) {		// 최소 주문 수량보다 장바구니에 적게 들어왔을 경우
+						let message;
+						if ("G056_S" == info.goodsType) {
+							message = info.goodsNm + " 의" + info.itemNm + "/" + info.colorNm + "/" + info.optCd2 + "의 수량이 부족합니다.\n구매가능 수량은 " + info.ordCanQty + "개입니다.\n구매가능 수량만큼 주문하시겠습니까?";
+						} else {
+							message = info.goodsNm + " 의" + info.colorNm + "/" + info.optCd2 + "의 수량이 부족합니다.\n구매가능 수량은 " + info.ordCanQty + "개입니다.\n구매가능 수량만큼 주문하시겠습니까?";
+						}
+
+						fnUpdateConfirmChangeQty(message, info.cartSq, info.minOrdQty, list, listIndex, cartSqArr, allYn);
+					} else if (info.goodsQty < info.minOrdQty) {
+						let message = info.goodsNm + " 의 최소 구매수량은 " + info.minOrdQty + "개입니다.\n최소 구매 수량으로 주문하시겠습니까?";
+						fnUpdateConfirmChangeQty(message, info.cartSq, info.minOrdQty, list, listIndex, cartSqArr, allYn);
+					} else if (info.goodsQty > info.maxOrdQty) {
+						let message = info.goodsNm + " 의 최대 구매 사능 수량은 " + info.maxOrdQty + "개입니다. 최대 구매 가능한 수량으로 주문하시겠습니까?";
+						fnUpdateConfirmChangeQty(message, info.cartSq, info.minOrdQty, list, listIndex, cartSqArr, allYn);
 					} else if (listIndex < list.length) {
-						// 혹시 else일 경우
 						fnOrderValidation(list, listIndex, cartSqArr, allYn);
-					}
-				} else if (info.ordCanQty < info.goodsQty) {		// 최소 주문 수량보다 장바구니에 적게 들어왔을 경우
-					let message;
-					if ("G056_S" == info.goodsType) {
-						message = info.goodsNm + " 의" + info.itemNm + "/" + info.colorNm + "/" + info.optCd2 + "의 수량이 부족합니다.\n구매가능 수량은 " + info.ordCanQty + "개입니다.\n구매가능 수량만큼 주문하시겠습니까?";
 					} else {
-						message = info.goodsNm + " 의" + info.colorNm + "/" + info.optCd2 + "의 수량이 부족합니다.\n구매가능 수량은 " + info.ordCanQty + "개입니다.\n구매가능 수량만큼 주문하시겠습니까?";
+						fnOrderValidation(list, -1, cartSqArr, allYn);
 					}
-
-					fnUpdateConfirmChangeQty(message, info.cartSq, info.minOrdQty, list, listIndex, cartSqArr, allYn);
-				} else if (info.goodsQty < info.minOrdQty) {
-					let message = info.goodsNm + " 의 최소 구매수량은 " + info.minOrdQty + "개입니다.\n최소 구매 수량으로 주문하시겠습니까?";
-					fnUpdateConfirmChangeQty(message, info.cartSq, info.minOrdQty, list, listIndex, cartSqArr, allYn);
-				} else if (info.goodsQty > info.maxOrdQty) {
-					let message = info.goodsNm + " 의 최대 구매 사능 수량은 " + info.maxOrdQty + "개입니다. 최대 구매 가능한 수량으로 주문하시겠습니까?";
-					fnUpdateConfirmChangeQty(message, info.cartSq, info.minOrdQty, list, listIndex, cartSqArr, allYn);
-				} else if (listIndex < list.length) {
-					fnOrderValidation(list, listIndex, cartSqArr, allYn);
 				} else {
 					fnOrderValidation(list, -1, cartSqArr, allYn);
 				}
-			} else {
-				fnOrderValidation(list, -1, cartSqArr, allYn);
 			}
-		}
-
-		function fnUpdateConfirmChangeQty(message, cartSq, goodsQty, list, listIndex, cartSqArr, allYn) {
-			mcxDialog.confirmC(message, { //내용
-				btn     : ["취소", "확인"],
-				btnClick: function (index) {
-					if (index == 1) { //button1 일때 처리문
-						orderFlag = false; return false;
-					} else {	//button2 일때 처리문
-						updateGoodsQty(cartSq, goodsQty);
-						fnOrderValidation(list, listIndex, cartSqArr, allYn);
+
+			function fnUpdateConfirmChangeQty(message, cartSq, goodsQty, list, listIndex, cartSqArr, allYn) {
+				mcxDialog.confirmC(message, { //내용
+					btn     : ["취소", "확인"],
+					btnClick: function (index) {
+						if (index == 1) { //button1 일때 처리문
+							orderFlag = false; return false;
+						} else {	//button2 일때 처리문
+							updateGoodsQty(cartSq, goodsQty);
+							fnOrderValidation(list, listIndex, cartSqArr, allYn);
+						}
 					}
-				}
-			});
-		}
-
-		function fnRemoveCartSqConfirm(message, cartSqArr, cartSq, list, listIndex, allYn) {
-			mcxDialog.confirmC(message, { //내용
-				btn     : ["취소", "확인"],
-				btnClick: function (index) {
-					if (index == 1) { //button1 일때 처리문
-						orderFlag = false; return false;
-					} else {	//button2 일때 처리문
-						fnCheckOffCartSqArr(cartSqArr, info.cartSq);
-						fnOrderValidation(list, listIndex, cartSqArr, allYn);
+				});
+			}
+
+			function fnRemoveCartSqConfirm(message, cartSqArr, cartSq, list, listIndex, allYn) {
+				mcxDialog.confirmC(message, { //내용
+					btn     : ["취소", "확인"],
+					btnClick: function (index) {
+						if (index == 1) { //button1 일때 처리문
+							orderFlag = false; return false;
+						} else {	//button2 일때 처리문
+							fnCheckOffCartSqArr(cartSqArr, info.cartSq);
+							fnOrderValidation(list, listIndex, cartSqArr, allYn);
+						}
 					}
-				}
-			});
-		}
+				});
+			}
 
-		function fnCheckOffCartSqArr(cartSqArr, cartSq) {
-			// 체크박스 해제
-			$("#cartListForm input[name=cartSqArr]").each(function () {
-				if ($(this).val() == cartSq) {
-					$(this).prop("checked", false);
-				}
-			});
+			function fnCheckOffCartSqArr(cartSqArr, cartSq) {
+				// 체크박스 해제
+				$("#cartListForm input[name=cartSqArr]").each(function () {
+					if ($(this).val() == cartSq) {
+						$(this).prop("checked", false);
+					}
+				});
 
-			// 장바구니 선택된것 삭제 > cartSq 0으로 변경
-			for (let i = 0; i < cartSqArr.length; i++) {
-				if (cartSqArr[i] == cartSq) {
-					cartSqArr[i] = 0;
+				// 장바구니 선택된것 삭제 > cartSq 0으로 변경
+				for (let i = 0; i < cartSqArr.length; i++) {
+					if (cartSqArr[i] == cartSq) {
+						cartSqArr[i] = 0;
+					}
 				}
 			}
-		}
 
-		// 주문하기
-		function fnSubmitNoMember(cartSq) {
-			let cartSqArr = [];
-			orderFlag = true;
+			// 주문하기
+			function fnSubmitNoMember(cartSq) {
+				let cartSqArr = [];
+				orderFlag = true;
 
-			if($("#cartListForm input[name=cartSqArr]:checked").length < 1) {
-				mcxDialog.alert("구매하실 상품을 선택해주세요.");
-				return false;
-			}
+				if($("#cartListForm input[name=cartSqArr]:checked").length < 1) {
+					mcxDialog.alert("구매하실 상품을 선택해주세요.");
+					return false;
+				}
 
-			if(loginInfo == null || loginInfo.custNo == null || loginInfo.custNo == 0) {
-				var btn = ["비회원 구매", "로그인 후 구매"];
-				mcxDialog.confirmC("로그인 후 구매 시 다양한 혜택을 받으실 수 있습니다.", { //내용
-					btn: btn,
-					btnClick: function(index){
-						if (index == 1){ //button1 일때 처리문
-							if(cartSq == "all") {
-								// 선택된 장바구니 번호
-								$("#cartListForm input[name=cartSqArr]:checked").each(function () {
-									cartSqArr.push($(this).val());
-								});
-
-								fnOrderCheck(cartSqArr, 0, "Y");
-							} else {
-								fnOrderCheck(cartSq, 0, "N");
+				if(loginInfo == null || loginInfo.custNo == null || loginInfo.custNo == 0) {
+					var btn = ["비회원 구매", "로그인 후 구매"];
+					mcxDialog.confirmC("로그인 후 구매 시 다양한 혜택을 받으실 수 있습니다.", { //내용
+						btn: btn,
+						btnClick: function(index){
+							if (index == 1){ //button1 일때 처리문
+								if(cartSq == "all") {
+									// 선택된 장바구니 번호
+									$("#cartListForm input[name=cartSqArr]:checked").each(function () {
+										cartSqArr.push($(this).val());
+									});
+
+									fnOrderCheck(cartSqArr, 0, "Y");
+								} else {
+									fnOrderCheck(cartSq, 0, "N");
+								}
+							} else {	//button2 일때 처리문
+								location.href="/signin";
 							}
-						} else {	//button2 일때 처리문
-							location.href="/signin";
 						}
-					}
-				});
-			} else {
-				if(cartSq == "all") {
-					// 선택된 장바구니 번호
-					$("#cartListForm input[name=cartSqArr]:checked").each(function () {
-						cartSqArr.push($(this).val());
 					});
-
-					fnOrderCheck(cartSqArr, loginInfo.custNo, "Y");
 				} else {
-					fnOrderCheck(cartSq, loginInfo.custNo, "N");
+					if(cartSq == "all") {
+						// 선택된 장바구니 번호
+						$("#cartListForm input[name=cartSqArr]:checked").each(function () {
+							cartSqArr.push($(this).val());
+						});
+
+						fnOrderCheck(cartSqArr, loginInfo.custNo, "Y");
+					} else {
+						fnOrderCheck(cartSq, loginInfo.custNo, "N");
+					}
 				}
 			}
-		}
 
-		// 주문 데이터 밸리데이션 체크
-		function fnOrderCheck(cartSq, custNo, allYn) {
-			// 선택된 장바구니 정보 가공
-			let data = {	  cartSqArr : cartSq
-				, custNo : custNo
+			// 주문 데이터 밸리데이션 체크
+			function fnOrderCheck(cartSq, custNo, allYn) {
+				// 선택된 장바구니 정보 가공
+				let data = {	  cartSqArr : cartSq
+					, custNo : custNo
+				}
+				let jsonData = JSON.stringify(data);
+
+				$.ajax( {
+					type: "POST",
+					url : '/cart/order/list/check',
+					contentType: 'application/json',
+					dataType : 'json',
+					data : jsonData,
+					success : function(result) {
+						if(result == null || result.length == 0) {
+							mcxDialog.alert("주문 가능한 상품이 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
+						} else {
+							fnOrderValidation(result, 0, cartSq, allYn);
+						}
+					}
+				});
 			}
-			let jsonData = JSON.stringify(data);
-
-			$.ajax( {
-				type: "POST",
-				url : '/cart/order/list/check',
-				contentType: 'application/json',
-				dataType : 'json',
-				data : jsonData,
-				success : function(result) {
-					if(result == null || result.length == 0) {
-						mcxDialog.alert("주문 가능한 상품이 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
-					} else {
-						fnOrderValidation(result, 0, cartSq, allYn);
+
+			//옵션변경 팝업열기
+			function fnChangeCartOptCd(cartSq) {
+				$.ajax( {
+					type: "POST",
+					url : '/cart/goods/info',
+					dataType : 'html',
+					data : {cartSq : cartSq},
+					success : function(result) {
+						$("#cartOptionModal").remove();
+						$("#optModifyPop01").html(result);
+						$('#optModifyPop01').show().addClass("active");
+						$("body").css({"overflow":"hidden"});
 					}
+				});
+			}
+
+			// 장바구니 구매 수량 변경
+			function updateGoodsQty(cartSq, goodsQty) {
+				let url = '/cart/update/goodsQty';
+				// 선택된 장바구니 정보 가공
+				let data = {	  cartSq : cartSq
+					, goodsQty : goodsQty
 				}
-			});
-		}
-
-		//옵션변경 팝업열기
-		function fnChangeCartOptCd(cartSq) {
-			$.ajax( {
-				type: "POST",
-				url : '/cart/goods/info',
-				dataType : 'html',
-				data : {cartSq : cartSq},
-				success : function(result) {
-					$("#cartOptionModal").remove();
-					$("#optModifyPop01").html(result);
-					$('#optModifyPop01').show().addClass("active");
-					$("body").css({"overflow":"hidden"});
+				let jsonData = JSON.stringify(data);
+
+				gagajf.ajaxJsonSubmit(url, jsonData, function(result) {
+					//alert(result.changeQty);
+				});
+			}
+
+			// 페이지 이동
+			function fnGoToGoodsDetail(goodsCd) {
+				cfnGoToPage(_PAGE_GOODS_DETAIL + goodsCd);
+			}
+
+			// 전체선택 버튼
+			$("#od_item_all").on("change", function() {
+				if($("#od_item_all").is(":checked")) {
+					$("input[name=cartSqArr]").prop("checked", true);
+					changeCartSqArr();
+				} else {
+					$("input[name=cartSqArr]").prop("checked", false);
+					// 하단 합계금액, 구매하기 수량 변경
+					$("#cartListForm .realOrderAmtText").text("0");
+					$("#cartListForm .realOrderQtyText").text("0");
+					$("#cartListForm .area_order .number").text("0");
+					$("#cartListForm .od_amount_box .sumListPrice").text("0");
+					$("#cartListForm .od_amount_box .totDelvFee").text("0");
+					$("#cartListForm .od_amount_box .totDcAmt").text("0");
+					$("#cartListForm .totalprice_box .sumRealPayAmt").text("0");
 				}
 			});
-		}
-
-		// 장바구니 구매 수량 변경
-		function updateGoodsQty(cartSq, goodsQty) {
-			let url = '/cart/update/goodsQty';
-			// 선택된 장바구니 정보 가공
-			let data = {	  cartSq : cartSq
-				, goodsQty : goodsQty
-			}
-			let jsonData = JSON.stringify(data);
 
-			gagajf.ajaxJsonSubmit(url, jsonData, function(result) {
-				//alert(result.changeQty);
+			//수량조절 이벤트
+			$(document).on('click','.optModifyPop01 .number_count .minus',function(e){
+				var $input = $(this).parent().find('input');
+				var count = parseInt($input.val()) - 1;
+				count = count < 1 ? 1 : count;
+				$input.val(count);
+				$input.change();
+				//수량1개 이하 감소버튼 비활성화
+				if ($input.val() == 1) {
+					$('.optModifyPop01 .number_count .minus').addClass('min_val');
+				}
+				return false;
+			}).on('click','.optModifyPop01 .number_count .plus',function(e){
+				var $input = $(this).parent().find('input');
+				$input.val(parseInt($input.val()) + 1);
+				$input.change();
+				//수량2개 이상부터 감소버튼 활성화
+				$('.optModifyPop01 .number_count .minus').removeClass('min_val');
+				return false;
+			}).on('keyup','.optModifyPop01 .number_count input[type=text]',function(e){
+				//텍스트, 0 입력금지
+				$(this).val($(this).val().replace(/[^1-9]/g,""));
 			});
-		}
 
-		// 페이지 이동
-		function fnGoToGoodsDetail(goodsCd) {
-			cfnGoToPage(_PAGE_GOODS_DETAIL + goodsCd);
-		}
+			/* 팝업 - 옵션변경 > 컬러선택 표기 */
+			$(document).on('click','.optModifyPop .opt_color ul li a',function(e){
+				$(this).parents('.opt_color').find('li a').removeClass('on');
+				$(this).addClass('on');
+				var optColor = $('.optModifyPop .opt_color ul li a.on img').attr('alt');
+				$('.optModify_pop .opt_color .opt_header .color').text(optColor);
+				return false;
+			});
 
-		// 전체선택 버튼
-		$("#od_item_all").on("change", function() {
-			if($("#od_item_all").is(":checked")) {
-				$("input[name=cartSqArr]").prop("checked", true);
-				changeCartSqArr();
-			} else {
-				$("input[name=cartSqArr]").prop("checked", false);
-				// 하단 합계금액, 구매하기 수량 변경
-				$("#cartListForm .realOrderAmtText").text("0");
-				$("#cartListForm .realOrderQtyText").text("0");
-				$("#cartListForm .area_order .number").text("0");
-				$("#cartListForm .od_amount_box .sumListPrice").text("0");
-				$("#cartListForm .od_amount_box .totDelvFee").text("0");
-				$("#cartListForm .od_amount_box .totDcAmt").text("0");
-				$("#cartListForm .totalprice_box .sumRealPayAmt").text("0");
+			/* 쿠폰정보 닫기 */
+			function cancelCartCpn() {
+				$("#cartListForm #sumRealPayAmt").text(Number(sumRealPayAmt).toLocaleString());
+				$("#cartListForm #totDcAmt").text(Number(totDcAmt).toLocaleString());
+				$("#cartListForm .area_salecoupon .coupon_box").hide();
 			}
-		});
-
-		//수량조절 이벤트
-		$(document).on('click','.optModifyPop01 .number_count .minus',function(e){
-			var $input = $(this).parent().find('input');
-			var count = parseInt($input.val()) - 1;
-			count = count < 1 ? 1 : count;
-			$input.val(count);
-			$input.change();
-			//수량1개 이하 감소버튼 비활성화
-			if ($input.val() == 1) {
-				$('.optModifyPop01 .number_count .minus').addClass('min_val');
-			}
-			return false;
-		}).on('click','.optModifyPop01 .number_count .plus',function(e){
-			var $input = $(this).parent().find('input');
-			$input.val(parseInt($input.val()) + 1);
-			$input.change();
-			//수량2개 이상부터 감소버튼 활성화
-			$('.optModifyPop01 .number_count .minus').removeClass('min_val');
-			return false;
-		}).on('keyup','.optModifyPop01 .number_count input[type=text]',function(e){
-			//텍스트, 0 입력금지
-			$(this).val($(this).val().replace(/[^1-9]/g,""));
-		});
-
-		/* 팝업 - 옵션변경 > 컬러선택 표기 */
-		$(document).on('click','.optModifyPop .opt_color ul li a',function(e){
-			$(this).parents('.opt_color').find('li a').removeClass('on');
-			$(this).addClass('on');
-			var optColor = $('.optModifyPop .opt_color ul li a.on img').attr('alt');
-			$('.optModify_pop .opt_color .opt_header .color').text(optColor);
-			return false;
-		});
-
-		/* 쿠폰정보 닫기 */
-		function cancelCartCpn() {
-			$("#cartListForm #sumRealPayAmt").text(Number(sumRealPayAmt).toLocaleString());
-			$("#cartListForm #totDcAmt").text(Number(totDcAmt).toLocaleString());
-			$("#cartListForm .area_salecoupon .coupon_box").hide();
-		}
-	</script>
+		</script>
+	</form>
 </th:block>
 </body>
 </html>

+ 9 - 0
src/main/webapp/WEB-INF/views/mob/cart/CartListFormMob.html

@@ -104,6 +104,15 @@
 		//배송요청사항
 		// var my_deilivery_selecter = new sCombo('.my .ship_request .select_custom');
 
+		//상품옵션변경 팝업 > 컬러선택 표기
+		$(document).on('click','.optModifyPop .opt_color ul li a',function(e){
+			$(this).parents('.opt_color').find('li a').removeClass('on');
+			$(this).addClass('on');
+			var optColor = $(this).find("img").attr('alt');
+			$(this).parent().parent().parent().find(".info").text(optColor);
+			return false;
+		});
+
 		//상품옵션변경 팝업 > 컬러선택 표기
 		$(document).on('change','input[name=shotDelvUseYn]',function(e){
 			let data = {shotDelvUseYn : $("input[name=shotDelvUseYn]:checked").val()};

+ 36 - 85
src/main/webapp/WEB-INF/views/web/cart/CartListAjaxFormWeb.html

@@ -82,6 +82,7 @@
 								<!-- 주문상품 -->
 								<th:block th:each="cart, status : ${order.shotCartList}">
 									<div class="cartInfo goods_info shotCartInfo">
+										<input type="hidden" name="supplyCompNm" value="WMS" />
 										<input type="hidden" name="applyQtySectionYn" th:value="${cart.applyQtySectionYn}" />
 										<input type="hidden" name="applyAmtSectionYn" th:value="${cart.applyAmtSectionYn}" />
 										<input type="hidden" name="qtyTmtbSq" th:value="${cart.qtyTmtbSq}" />
@@ -197,6 +198,7 @@
 								<!-- 주문상품 -->
 								<th:block th:each="cart, status : ${order.wmsCartList}">
 									<div class="cartInfo goods_info wmsCartInfo">
+										<input type="hidden" name="supplyCompNm" value="WMS" />
 										<input type="hidden" name="applyQtySectionYn" th:value="${cart.applyQtySectionYn}" />
 										<input type="hidden" name="applyAmtSectionYn" th:value="${cart.applyAmtSectionYn}" />
 										<input type="hidden" name="qtyTmtbSq" th:value="${cart.qtyTmtbSq}" />
@@ -299,10 +301,10 @@
 					</div>
 
 					<!-- 자사 배송비 -->
-					<div class="goods_foot" style="margin-top:40px;">
+					<div class="goods_foot" style="margin-top:40px;" th:style="${'Y'.equals(order.delvYn) ? 'display:block' : 'display:none'}">
 						<div class="order_delivery selfGoodsDelv" th:classappend="|delv_${order.cartDelvFeeCd}|">
-							<span class="dlvr_fee" th:if="${order.wmsDelvFee == 0}">배송비 무료</span>
-							<span class="dlvr_fee" th:if="${order.wmsDelvFee > 0}">배송비&nbsp;<em th:text="${#numbers.formatInteger(order.wmsDelvFee, 1, 'COMMA')}"></em>원</span>
+							<span class="dlvr_fee delvFeeArea" th:if="${order.wmsDelvFee == 0}">배송비 무료</span>
+							<span class="dlvr_fee delvFeeArea" th:if="${order.wmsDelvFee > 0}">배송비&nbsp;<em th:text="${#numbers.formatInteger(order.wmsDelvFee, 1, 'COMMA')}"></em>원</span>
 							<a href="#" class="btn_popup_save" th:if="${order.wmsDelvFee > 0}">배송비 SAVE 상품 보기</a>
 						</div>
 					</div>
@@ -317,6 +319,7 @@
 								<div class="goods_cont">
 									<!-- 주문상품 -->
 									<div class="cartInfo goods_info delvCartInfo">
+										<input type="hidden" name="supplyCompNm" th:value="${cart.supplyCompNm}" />
 										<input type="hidden" name="applyQtySectionYn" th:value="${cart.applyQtySectionYn}" />
 										<input type="hidden" name="applyAmtSectionYn" th:value="${cart.applyAmtSectionYn}" />
 										<input type="hidden" name="qtyTmtbSq" th:value="${cart.qtyTmtbSq}" />
@@ -414,11 +417,11 @@
 								</div>
 
 								<!-- 입점업체 배송비 -->
-								<div class="goods_foot" th:if="${'Y'.equals(cart.addDelvFeeYn)}">
+								<div class="goods_foot" th:if="${'Y'.equals(cart.addDelvFeeYn)}" th:style="${'Y'.equals(cart.delvYn) ? 'display:block' : 'display:none'}">
 								<!-- <div class="goods_foot" th:if="${cart.compCnt == status.index + 1}"> -->
 									<div class="order_delivery" th:classappend="|delv_${cart.delvFeeCd}|">
-										<span class="dlvr_fee" th:if="${cart.delvFee == 0}">배송비 무료</span>
-										<span class="dlvr_fee" th:if="${cart.delvFee > 0}">배송비&nbsp;<em th:text="${#numbers.formatInteger(cart.delvFee, 1, 'COMMA')}"></em>원</span>
+										<span class="dlvr_fee delvFeeArea" th:if="${cart.delvFee == 0}">배송비 무료</span>
+										<span class="dlvr_fee delvFeeArea" th:if="${cart.delvFee > 0}">배송비&nbsp;<em th:text="${#numbers.formatInteger(cart.delvFee, 1, 'COMMA')}"></em>원</span>
 										<span class="dlvr_shop"><em th:text="${cart.supplyCompNm}"></em>&nbsp;업체직배송</span>
 										<a href="#" class="btn_popup_save" th:if="${cart.delvFee > 0}">배송비 SAVE 상품 보기</a>
 									</div>
@@ -782,74 +785,6 @@
 			return false;
 		});
 
-		/*function deleteCartAjax(cartArr) {
-			if(cartArr.length < 1) {
-				mcxDialog.alert("삭제하실 상품을 선택해 주세요.");
-				return false;
-			}
-
-			let data = {
-				cartSqArr : cartArr
-			}
-
-			let jsonData = JSON.stringify(data);
-
-			$.ajax( {
-				type: "POST",
-				url : '/cart/deleteCart',
-				contentType: 'application/json',
-				dataType : 'json',
-				data : jsonData,
-				success : function(result) {
-					mcxDialog.alert("삭제 되었습니다.");
-					let data = {shotDelvUseYn : $("input[name=shotDelvUseYn]:checked").val()};
-					getCartList(data);
-				}
-			});
-		}*/
-
-		/*function deleteCart(gbn) {
-			let cartArr = [];
-			let confirmMessage = "";
-			if(gbn == "WMS_SELECT") {
-				$("#cartListForm .wmsList input[name=cartSqArr]:checked").each(function () {
-					cartArr.push($(this).val());
-				});
-
-				confirmMessage = "총 " + cartArr.length + "개의 상품을 삭제합니다.";
-			} else if(gbn == "DELV_SELECT") {
-				$("#cartListForm .delvList input[name=cartSqArr]:checked").each(function () {
-					cartArr.push($(this).val());
-				});
-
-				confirmMessage = "총 " + cartArr.length + "개의 상품을 삭제합니다.";
-			} else if(gbn == "WMS_ALL") {
-				$("#cartListForm .wmsList input[name=cartSqArr]").each(function() {
-					cartArr.push($(this).val());
-				});
-
-				confirmMessage = "총알배송상품을 전부 삭제하시겠습니까?";
-			} else if(gbn == "DELV_ALL") {
-				$("#cartListForm .delvList input[name=cartSqArr]").each(function() {
-					cartArr.push($(this).val());
-				});
-
-				confirmMessage = "업체직배송 상품을 전부 삭제하시겠습니까?";
-			} else {
-				cartArr.push(gbn);
-				deleteCartAjax(cartArr);
-				return false;
-			}
-
-			mcxDialog.confirm(confirmMessage, {
-				cancelBtnText: "취소/닫기",			//취소 또는 닫기 버튼명
-				sureBtnText  : "확인",				//처리문 버튼명
-				sureBtnClick : function () {
-					deleteCartAjax(cartArr);
-				}
-			});
-		}*/
-
 		$("input[name=cartSqArr]").on("change", function(e) {
 			changeCartSqArr();
 		});
@@ -888,6 +823,19 @@
 			$("#cartListForm .applyTmtb").hide();
 			$("#cartListForm .notApplyTmtb").hide();
 
+			// 배송비 정보 0원으로 모두 변경 (체크 되지 않은 업체는 0원처리)
+			$("#cartListForm .goods_foot .delvFeeArea").text("배송비 0원");
+
+			/*$("#cartListForm .goods_foot").each(function() {
+				alert($(this).parent().find("input[name=supplyCompNm]").val());
+				let compNm = $(this).parent().find("input[name=supplyCompNm]").val();
+				let html = "<span class='dlvr_fee delvFeeArea'>배송비 <em>0</em>원</span>";
+				if(compNm != "WMS") {
+					html += "<span class='dlvr_shop'><em>" + compNm + "</em> 업체직배송</span>";
+				};
+				$(this).find(".order_delivery").html(html);
+			});*/
+
 			// 장바구니 각 상품 가격 정보 할인 전으로 변경
 			$("#cartListForm .cartInfo input[name=cartSq]").each(function() {
 				if($(this).parent().find(".calc_box .price_org").text() != "") {
@@ -896,7 +844,7 @@
 				}
 			});
 
-			$("#cartListForm").find(".delvFeeArea").html("<div class='info_dlvr'><span class='dlvr_fee'>배송비 무료</span></div>");
+			// $("#cartListForm").find(".delvFeeArea").html("<div class='info_dlvr'><span class='dlvr_fee'>배송비 무료</span></div>");
 			for(let i = 0 ; i < shotList.length ; i++) {
 				cartList.push(shotList[i]);
 				$("#cartListForm .shotCartInfo input[name=cartSq]").each(function() {
@@ -929,6 +877,16 @@
 				});
 			}
 
+			// 자사 상품 배송비
+			if(order.delvYn == "N" || order.delvYn == null) {
+
+			} else if(order.wmsDelvFee == 0) {
+				$(".selfGoodsDelv").html("<span class='dlvr_fee'>배송비 무료</span>");
+			} else {
+				let html = "<span class='dlvr_fee'>배송비 <em>" + Number(order.wmsDelvFee).toLocaleString() + "</em> 원</span><a href='#' class='btn_popup_save'>배송비 SAVE 상품 보기</a>";
+				$(".selfGoodsDelv").html(html);
+			}
+
 			for(let i = 0 ; i < wmsList.length ; i++) {
 				cartList.push(wmsList[i]);
 				$("#cartListForm .wmsCartInfo input[name=cartSq]").each(function() {
@@ -961,14 +919,6 @@
 				});
 			}
 
-			// 자사 상품 배송비
-			if(order.wmsDelvFee == 0) {
-				$(".selfGoodsDelv").html("<span class='dlvr_fee'>배송비 무료</span>");
-			} else {
-				let html = "<span class='dlvr_fee'>배송비 <em>" + Number(order.wmsDelvFee).toLocaleString() + "</em> 원</span><a href='#' class='btn_popup_save'>배송비 SAVE 상품 보기</a>";
-				$(".selfGoodsDelv").html(html);
-			}
-
 			for(let i = 0 ; i < delvList.length ; i++) {
 				cartList.push(delvList[i]);
 				$("#cartListForm .delvList .delvCartInfo input[name=cartSq]").each(function() {
@@ -997,10 +947,11 @@
 							$(this).parent().find("input[name=tmtbDcAmt]").val(delv.tmtbDcAmt);
 						}
 
+						// 입점업체 배송비 목록
 						if(delv.delvFee == 0) {
-							$(".delvList").find(".delv_" + delv.delvFeeCd).html("<span class='dlvr_fee'>배송비 무료</span><span class='dlvr_fee'><em>" + delv.supplyCompNm + "</em> 업체직배송</span>");
+							$(".delvList").find(".delv_" + delv.delvFeeCd).html("<span class='dlvr_fee delvFeeArea'>배송비 무료</span><span class='dlvr_fee'><em>" + delv.supplyCompNm + "</em> 업체직배송</span>");
 						} else {
-							let html = "<div className='order_delivery'><span class='dlvr_fee'>배송비 <em>" + Number(delv.delvFee).toLocaleString() + "</em>원</span><span class='dlvr_shop'><em>" + delv.supplyCompNm + "</em> 업체직배송</span><a href='#' className='btn_popup_save'>배송비 SAVE 상품 보기</a></div>";
+							let html = "<div className='order_delivery'><span class='dlvr_fee delvFeeArea'>배송비 <em>" + Number(delv.delvFee).toLocaleString() + "</em>원</span><span class='dlvr_shop'><em>" + delv.supplyCompNm + "</em> 업체직배송</span><a href='#' className='btn_popup_save'>배송비 SAVE 상품 보기</a></div>";
 							$(".delvList").find(".delv_" + delv.delvFeeCd).html(html);
 						}
 					}

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

@@ -1082,7 +1082,7 @@
 							}
 							quickShoppingBagHtml += "			<a href='javascript:fnGoToGoodsDetail(\"" + info.goodsCd + "\")' class='itemLink'>";
 							quickShoppingBagHtml += '				<div class="itemPic">';
-							quickShoppingBagHtml += '					<img alt="BLACK-a" class="vLHTC pd_img" src="' + order.imgPath1 + '/' + info.sysImgNm + '?RS=120"/>';
+							quickShoppingBagHtml += '					<img alt="BLACK-a" class="vLHTC pd_img" src="' + _uploadGoodsUrl + '/' + info.sysImgNm + '?RS=120"/>';
 							quickShoppingBagHtml += '				</div>';
 							quickShoppingBagHtml += '				<p class="itemBrand">' + info.brandEnm + ' ' + info.brandKnm + '</p>';
 							quickShoppingBagHtml += '				<div class="itemName">' + info.goodsNm + '</div>';