소스 검색

주문서수정

tsit14 5 년 전
부모
커밋
8da2c71cfc

+ 36 - 6
src/main/java/com/style24/front/biz/service/TsfOrderService.java

@@ -21,6 +21,7 @@ import com.style24.core.biz.dao.TscOrderDao;
 import com.style24.core.biz.service.TscKakaoPayService;
 import com.style24.core.biz.service.TscKcpService;
 import com.style24.core.biz.service.TscNaverPayService;
+import com.style24.core.biz.service.TscOrderService;
 import com.style24.core.support.env.TscConstants;
 import com.style24.front.biz.dao.TsfOrderDao;
 import com.style24.front.biz.dao.TsfRendererDao;
@@ -70,6 +71,9 @@ public class TsfOrderService {
 
 	@Autowired
 	private TsfRendererDao rendererDao;
+	
+	@Autowired
+	private TscOrderService coreOrderService;
 
 	@Autowired
 	private Environment env;
@@ -493,15 +497,36 @@ public class TsfOrderService {
 	 * @since 2021. 03. 09
 	 */
 	public String orderValidationCheck(Order order) {
+		String resultStr	= "SUCCESS";
+		
 		// 1. 주문상세체크
 		Collection<Order> orderDetailList = order.getOrderDetailList();
 		
+		// TODO 2021.05.07 1.1 장바구니 금액조회 정보 
+		order.setFrontGb(TsfSession.getFrontGb());
+		Collection<Order> cartGoodsList = coreOrderService.getCartGoodsList(order);
+		
+		int orderDetailCurrPriceSum 	= 0;
+		int cartCurrPriceSum 			= 0;
+		
+		for (Order orderDetail : orderDetailList) {
+			orderDetailCurrPriceSum = orderDetailCurrPriceSum + orderDetail.getCurrPrice();
+		}
+		
+		for (Order orderDetail : cartGoodsList) {
+			cartCurrPriceSum = orderDetailCurrPriceSum + orderDetail.getCurrPrice();
+		}
+		
+		// 판매가비교
+		if (orderDetailCurrPriceSum != cartCurrPriceSum) {
+			resultStr = "보유하신 상품쿠폰이 존재하지 않습니다.";
+			return resultStr;
+		}
+
 		int custCpnSq		= 0;
 		int usPntAmt		= 0;
 		int usGfcdAmt		= 0;
-		
-		String resultStr	= "SUCCESS";
-		
+
 		for (Order orderDetail : orderDetailList) {
 			
 			// TODO
@@ -621,13 +646,18 @@ public class TsfOrderService {
 			}
 		}
 		
-		// TODO 5. 사은품채고체크
+		// 6. 사은품채고체크
 		int rtnCnt = orderDao.getCheckFreegiftVal(order);
 		if (rtnCnt > 0) {
 			resultStr = "선택하신 사은품의 재고가 부족 합니다.";
 			return resultStr;
 		}
 		
+		// 7. 상품금액체크
+		
+		
+		
+		
 		return resultStr;
 		
 	}
@@ -638,8 +668,8 @@ public class TsfOrderService {
 	 * param.setOrdPhnno("01011111111");		// 현금영수증 대상 휴대폰번호
 	 * param.setUsGfcdAmt(10000);				// 현금영수증 신청 금액
 	 * param.setOrdNo(211);						// 주문번호
-	 * param.setGoodsNm("보라색 원피스");		// 상품명 (“7. 현금영수증 매출전표 연동” 을 통해 고객이 직접 전표를 확인코자 한다면 상품명을 넘겨주지 않았을 경우 구매자 인증 시 인증오류가 발생할 수 있습니다.)
-	 * param.setOrdNm("구매자");				// 구매자명
+	 * param.setGoodsNm("보라색 원피스");			// 상품명 (“7. 현금영수증 매출전표 연동” 을 통해 고객이 직접 전표를 확인코자 한다면 상품명을 넘겨주지 않았을 경우 구매자 인증 시 인증오류가 발생할 수 있습니다.)
+	 * param.setOrdNm("구매자");					// 구매자명
 	 * param.setOrdEmail("xxxx@xxxx.com");		// 구매자이메일 (“7. 현금영수증 매출전표 연동” 을 통해 고객이 직접 전표를 확인코자 한다면 메일주소를 넘겨주지 않았을 경우 구매자 인증 시 인증오류가 발생할 수 있습니다.)
 	 * @param param
 	 * @return

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

@@ -78,10 +78,6 @@ public class TsfOrderController extends TsfBaseController {
 		ModelAndView mav = new ModelAndView();
 		
 		// 비회원 주문시 로직 정리
-		// @ WEB 인 경우에는 고객정보 입력 화면 후 주문서 이동 후 본인인중
-		// @ WEB 의 경우에는 입력한 고객정보와 인증받은 고객정보가 다른경우 고객정보 업데이트
-		// @ MOBILE 인 경우에는 본인인증 후 주문서 이동
-		
 		// 1. 카트시퀀스가 정보가 없을때 처리 장바구니로 이동
 		if (order.getCartSqArr() == null) {
 			mav.setViewName("redirect:/cart/list/form");						// 장바구니화면이동
@@ -133,10 +129,6 @@ public class TsfOrderController extends TsfBaseController {
 	public ModelAndView orderForm(HttpServletRequest request, Order order) {
 		ModelAndView mav = new ModelAndView();
 		
-		// TODO
-		// 1.비회주문, 회원 주문 판단 로직,  고객정보 세션 판단
-		// 세션고객정보가 존재하면 회원주문 없으면 비회원 주문
-		
 		// 1.1 referer 체크 (order/noMember)
 		String refererStr = "";
 		if (request.getHeader("referer") != null) {
@@ -276,8 +268,6 @@ public class TsfOrderController extends TsfBaseController {
 			}
 		}
 		mav.addObject("devTempYn"			, devTempYn);								// 개발자모드가능여부
-		
-
 		mav.setViewName(super.getDeviceViewName("order/OrderForm"));
 		
 		return mav;
@@ -503,8 +493,9 @@ public class TsfOrderController extends TsfBaseController {
 			order.setJsessionId(TsfSession.getSessionId());
 		}
 		
-		// 2. 즉시할인, 다다익선 할인금액 정보 적용 상품 정보
-		Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
+		// 2. 즉시할인, 다다익선 할인금액 정보 적용 상품 정보 (2021.05.07 화면에서전송)
+		//Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
+		Collection<Order> tmtbGoodsApplyList = order.getCartGoodsList();
 
 		// 3. 배송정보조회(장바구니상품목록)
 		GagaMap delvOrderMap = coreOrderService.getCartDelvGoodsCntList(tmtbGoodsApplyList, order);
@@ -610,8 +601,9 @@ public class TsfOrderController extends TsfBaseController {
 		// 2. 로그인체크 후 정보 설정 (할인구간정보조회)
 		if (TsfSession.isLogin()) {
 			
-			// 2.1 배송단위별 상품 목록 조회 (장바구니)
-			Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
+			// 2.1 배송단위별 상품 목록 조회 (장바구니) (2021.05.07 화면에서전송)
+			//Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(order);
+			Collection<Order> tmtbGoodsApplyList = order.getCartGoodsList();
 			
 			// 2.2 상품금액, 선포인트, 다다익선할인금액
 			goodsDcAmtMap = coreOrderService.getGoodsDcAmt(tmtbGoodsApplyList);
@@ -849,9 +841,9 @@ public class TsfOrderController extends TsfBaseController {
 		 * temp.setPgTid("20210423952698");			// temp.setVaNo("110242222222");  >> PG 송부 후 result에서 값 입력하면됨
 		 *  */
 		
-		String[] goodsNameArr = new String[2]; goodsNameArr[0] ="테스트1";goodsNameArr[1] = "테스트2";
-		String[] goodsPriceArr = new String[2]; goodsPriceArr[0] ="10000";goodsPriceArr[1] = "12000";
-		String[] goodsQuantityArr = new String[2]; goodsQuantityArr[0] ="2";goodsQuantityArr[1] = "3";
+		String[] goodsNameArr 		= new String[2]; goodsNameArr[0] ="테스트1";goodsNameArr[1] = "테스트2";
+		String[] goodsPriceArr 		= new String[2]; goodsPriceArr[0] ="10000";goodsPriceArr[1] = "12000";
+		String[] goodsQuantityArr 	= new String[2]; goodsQuantityArr[0] ="2";goodsQuantityArr[1] = "3";
 		
 		order.setItemNmArr(goodsNameArr);		// 상품명 배열
 		order.setGoodsPriceArr(goodsPriceArr);	// 상품별 가격 배열

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

@@ -30,7 +30,7 @@
 <!-- 주문금액정보표현 -->
 <form id="orderAmtForm" name="orderAmtForm">
 	<!-- 고객정보 -->
-	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo" id="orderInfo">
+	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo">
 		<tbody>
 			<tr style="height:30px;">
 				<th>custNm</th>
@@ -82,7 +82,7 @@
 	<!-- //사은품정보 -->
 	
 	<!-- 주문상세금액 -->
-	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo" id="orderDetailInfo">
+	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo">
 		<tr style="height:30px;">
 			<th>cartSq</th>
 			<th style="display:none">goodsNm</th>
@@ -175,7 +175,7 @@
 	<!-- //주문상세금액 -->
 	
 	<!-- 배송단위목록 -->
-	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo" id="delvFeeCdInfo">
+	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo">
 		<tr style="height:30px;">
 			<th>supplyCompCd</th>
 			<th>delvFeeCd</th>
@@ -196,7 +196,7 @@
 	<!-- //배송단위목록 -->
 	
 	<!-- 주문금액합계 -->
-	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="orderSumAmtInfo" id="orderSumAmtInfo">
+	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="orderSumAmtInfo">
 		<tr style="height:30px;">
 			<th>orgGoodsSumAmt</th>
 			<th>delvSumAmt</th>
@@ -505,6 +505,7 @@ $(document).ready( function() {
 		, "orderMadeYn"		: orderMadeYn
 		, "custDelvAddrSq"	: 0
 		, "giftPackYn"		: giftPackYn
+		, "cartGoodsList"	: cartGoodsList
 	}
 	
 	jsonData = JSON.stringify(jsonObj);
@@ -753,10 +754,11 @@ var fnGetDailyDeliveryCheck = function (temp) {
 				}
 
 				// json 값 설정
-				var orderListObj 		= {
-					"cartSqArr"		: cartSqArr
-					, "shotDelvYn"	: tempShotDelvYn
-					, "giftPackYn"	: giftPackYn
+				var orderListObj = {
+					"cartSqArr"			: cartSqArr
+					, "shotDelvYn"		: tempShotDelvYn
+					, "giftPackYn"		: giftPackYn
+					, "cartGoodsList"	: cartGoodsList
 				};
 				
 				var orderListJsonData 	= JSON.stringify(orderListObj);
@@ -1244,6 +1246,7 @@ var paymentInfoSet = function() {
 						,"freegiftUsePointArr"	: freegiftUsePointArr
 						,"giftMsg"				: giftMsg
 						,"custPayMeans"			: custPayMeans
+						,"cartSqArr"			: cartSqArr
 					};
 					
 					$.ajax( {

+ 13 - 14
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -32,7 +32,7 @@
 <!-- 주문금액정보표현 -->
 <form id="orderAmtForm" name="orderAmtForm">
 	<!-- 주문자정보 -->
-	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo" id="orderInfo">
+	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderInfo">
 		<tbody>
 			<tr style="height:30px;">
 				<th>custNm</th>
@@ -82,7 +82,7 @@
 	<!-- //사은품정보 -->
 	
 	<!-- 주문상세금액 -->
-	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo" id="orderDetailInfo">
+	<table border="1" style="font-size:10px; text-align:center; margin-top:20px; display:none; width:100%;" name="orderDetailInfo">
 		<tr style="height:30px;">
 			<th>cartSq</th>
 			<th style="display:none">goodsNm</th>
@@ -175,7 +175,7 @@
 	<!-- //주문상세금액 -->
 	
 	<!-- 배송단위목록 -->
-	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo" id="delvFeeCdInfo">
+	<table border="1" style="font-size:10px; text-align:center;  margin-top:20px; display:none; width:100%;" name="delvFeeCdInfo">
 		<tr style="height:30px;">
 			<th>supplyCompCd</th>
 			<th>delvFeeCd</th>
@@ -185,9 +185,9 @@
 		</tr>
 		<th:block th:each="delvFeeCd, index : ${delvFeeCdList}">
 			<tr style="height:30px;">
-				<td class="supplyCompCd" th:text="${delvFeeCd.supplyCompCd}"></td>
-				<td class="delvFeeCd" th:text="${delvFeeCd.delvFeeCd}"></td>
-				<td class="delvFee" th:text="${delvFeeCd.delvFee}"></td>
+				<td class="supplyCompCd" 	th:text="${delvFeeCd.supplyCompCd}"></td>
+				<td class="delvFeeCd" 		th:text="${delvFeeCd.delvFeeCd}"></td>
+				<td class="delvFee" 		th:text="${delvFeeCd.delvFee}"></td>
 				<td class="delvCpnSq">0</td>
 				<td class="delvCpnDcAmt">0</td>
 			</tr>
@@ -447,13 +447,6 @@
 									</div>
 								</th:block>
 							</dl>
-							<!-- 비회원인경우 노출 
-							<th:blcok th:if="!${isLogin}">
-								<div class="t_info">
-									<a href="javascript:void(0);" onclick="cfnGoToPage(_PAGE_CUSTOMER_JOIN_TYPE);" title="회원가입 하여 할인받기" class="btn_link">회원가입 하여 할인받기</a>
-								</div>
-							</th:blcok>
-							-->
 						</div>
 						<div class="totalprice_box">
 							<dl>
@@ -574,6 +567,7 @@ $(document).ready( function() {
 		, "foreignBuyYn"	: foreignBuyYn
 		, "orderMadeYn"		: orderMadeYn
 		, "custDelvAddrSq"	: 0
+		, "cartGoodsList"	: cartGoodsList
 	}
 	
 	jsonData = JSON.stringify(jsonObj);
@@ -774,7 +768,11 @@ var fnGetDailyDeliveryCheck = function (temp) {
 				}
 
 				// json 값 설정
-				var orderListObj 		= {"cartSqArr":cartSqArr, "shotDelvYn":tempShotDelvYn};
+				var orderListObj 		= {
+					"cartSqArr"			: cartSqArr
+					, "shotDelvYn"		: tempShotDelvYn 
+					, "cartGoodsList"	: cartGoodsList
+				};
 				var orderListJsonData 	= JSON.stringify(orderListObj);
 				
 				if (temp) {
@@ -1229,6 +1227,7 @@ var paymentInfoSet = function() {
 						,"freegiftUsePointArr"	: freegiftUsePointArr
 						,"giftMsg"				: ""
 						,"custPayMeans"			: custPayMeans
+						,"cartSqArr"			: cartSqArr
 					};
 					
 					$.ajax( {