Procházet zdrojové kódy

이태영 - 20210407 장바구니 세션 추가

xodud1202 před 5 roky
rodič
revize
8dce69f339

+ 16 - 3
src/main/java/com/style24/front/biz/service/TsfCartService.java

@@ -79,8 +79,6 @@ public class TsfCartService {
 			cartGb    = params.iterator().next().getCartCompsList().iterator().next().getCartGb();
 		}
 
-		log.info("CHECK GOODS_TYPE ::::: {}", goodsType);
-
 		// 장바구니 상품 및 재고 가능 여부 체크
 		if(TscConstants.GoodsType.SET.value().equals(goodsType)) {
 			for (Cart goodsParams : params) {
@@ -213,6 +211,7 @@ public class TsfCartService {
 		result.put("goodsType", goodsType);
 		result.put("cartGb", cartGb);
 		result.put("message", "SUCCESS");
+		result.put("custNo", login.getCustNo());
 
 		return result;
 	}
@@ -237,6 +236,7 @@ public class TsfCartService {
 		cart.setJsessionId(TscSession.getSessionId());
 
 		// 장바구니 보유 CART_SQ 쿼리
+		List<String> sendCartSqList = new ArrayList<String>();
 		for (Cart carts : params) {
 			int i = 1;
 			Collection<Cart> cartInfos = carts.getCartCompsList();
@@ -296,7 +296,7 @@ public class TsfCartService {
 				cartDao.insertCartHst(cart);                    // 장바구니 이력 정보 저장
 
 				cartSqs.add(cart.getCartSq());
-				TsfSession.setAttribute("cartSqArr", cart.getCartSq()+"");
+				sendCartSqList.add(cart.getCartSq() + "");
 
 				for (Cart param : cartInfos) {
 					param.setCartSq(cart.getCartSq());
@@ -309,6 +309,19 @@ public class TsfCartService {
 				}
 			}
 		}
+
+		StringBuilder cartSqComma = new StringBuilder();
+
+		int i = 0;
+		for(String cartSq : sendCartSqList) {
+			if(i > 0) {
+				cartSqComma.append(",");
+			}
+			cartSqComma.append(cartSq);
+			i++;
+		}
+
+		TsfSession.setAttribute("cartSqArr", cartSqComma.toString());
 	}
 
 	@Transactional("shopTxnManager")

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

@@ -714,9 +714,11 @@
 						$("#cartListForm .area_salecoupon .coupon_box").show();
 
 						// 합계 금액
-						$("#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(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 .cp_name").text(cpnInfo.cpnNm);

+ 5 - 2
src/main/webapp/WEB-INF/views/web/cart/CartListAjaxFormWeb.html

@@ -698,8 +698,11 @@
 						$("#cartListForm .area_salecoupon .coupon_box").show();
 
 						// 합계 금액
-						$("#cartListForm #sumRealPayAmt").text(Number(sumRealPayAmt - cpnInfo.dcAmt).toLocaleString());
-						$("#cartListForm #totDcAmt").text(Number(totDcAmt - cpnInfo.dcAmt).toLocaleString());
+						// 합계 금액
+						if(cartArr.length > 0) {
+							$("#cartListForm #sumRealPayAmt").text(Number(sumRealPayAmt - cpnInfo.dcAmt).toLocaleString());
+							$("#cartListForm #totDcAmt").text(Number(totDcAmt - cpnInfo.dcAmt).toLocaleString());
+						}
 
 						// 쿠폰 정보
 						$("#cartListForm .area_salecoupon .cp_name").text(cpnInfo.cpnNm);

+ 0 - 19
src/main/webapp/WEB-INF/views/web/goods/GoodsDealDetailFormWeb.html

@@ -716,25 +716,6 @@
 	
 	//장바구니담기
 	var fnAddCart = function(btnType){
-		
-		// 바로구매는 로그인여부 확인
-		if (btnType == "O" && !cfCheckLogin()) {
-			
-			let btn = ["비회원 구매", "로그인후 구매"]; //버튼명[좌,우]
-			mcxDialog.confirmC("로그인 후 구매 시 다양한 혜택을 받으실 수 있습니다.", { //내용
-				btn: btn,
-				btnClick: function(index){
-					if (index == 1){ //button1 일때 처리문
-						// 비회원 URL
-						ALERT('비회원');
-					} else {	//button2 일때 처리문
-						cfnGoToPage(_PAGE_LOGIN);
-					}
-				}
-			});
-			return false;
-		}
-		
 		let params = [];
 		
 		let target = $('#cartForm input[name=cea]');

+ 15 - 3
src/main/webapp/ux/style24_link.js

@@ -266,9 +266,21 @@ function cfnAddCart(cartList) {
 					}
 					$("#directOrderForm").html(orderHtml);
 					
-					$("#directOrderForm").submit();
-					
-					//location.href='/cart/list/form';
+					if(result.custNo == 0) {
+						var btn = ["비회원 구매", "로그인 후 구매"];
+						mcxDialog.confirmC("로그인 후 구매 시 다양한 혜택을 받으실 수 있습니다.", { //내용
+							btn: btn,
+							btnClick: function(index){
+								if (index == 1) { //button1 일때 처리문
+									$("#directOrderForm").submit();
+								} else {
+									location.href="/signin";
+								}
+							}
+						});
+					} else {
+						$("#directOrderForm").submit();
+					}
 				} else {
 					mcxDialog.alert("쇼핑백담기, 바로구매가 아닌 상태입니다. 해당 요청이 맞다면 새로고침 후 다시시도해주세요.");
 				}