Jelajahi Sumber

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

card007 5 tahun lalu
induk
melakukan
761d1fed32

+ 80 - 13
src/main/java/com/style24/front/biz/service/TsfOrderService.java

@@ -543,30 +543,97 @@ public class TsfOrderService {
 		order.setFrontGb(TsfSession.getFrontGb());
 		Collection<Order> cartGoodsList = coreOrderService.getCartGoodsList(order);
 		
-		int orderDetailCurrPriceSum 	= 0;
-		int orderDetailRealOrdAmtSum 	= 0;
-		int cpn1DcAmtSum				= 0;
-		int tmtb1DcAmtSum				= 0;
-		int tmtb2DcAmtSum				= 0;
-		int goodsCpnDcAmtSum			= 0;
-		int cartCpnDcAmtSum				= 0;
+		int orgGoodsSumAmt 			= 0;
+		int cpn1DcSumAmt			= 0;
+		int tmtb1DcSumAmt			= 0;
+		int tmtb2DcSumAmt			= 0;
+		int goodsCpnDcSumAmt		= 0;
+		int cartCpnDcSumAmt			= 0;
+		int prePntDcSumAmt			= 0;
+		int pntDcSumAmt				= 0;
+		int gfcdUseSumAmt			= 0;
+		int realOrdSumAmt 			= 0;
 		
-		int cartCurrPriceSum 			= 0;
-		int cartRealOrdAmtSum 			= 0;
+		int cartOrgGoodsSumAmt 		= 0;
+		int cartRealOrdSumAmt 		= 0;
 		
 		// 주문서화면 금액정보 체크
 		for (Order orderDetail : orderDetailList) {
-			orderDetailCurrPriceSum 	= orderDetailCurrPriceSum + orderDetail.getCurrPrice();
-			orderDetailRealOrdAmtSum 	= orderDetailRealOrdAmtSum + orderDetail.getRealOrdAmt();
+			orgGoodsSumAmt 				= orgGoodsSumAmt 	+ orderDetail.getCurrPrice();
+			cpn1DcSumAmt 				= cpn1DcSumAmt 		+ orderDetail.getCpn1DcAmt();
+			tmtb1DcSumAmt 				= tmtb1DcSumAmt 	+ orderDetail.getTmtb1DcAmt();
+			tmtb2DcSumAmt 				= tmtb2DcSumAmt 	+ orderDetail.getTmtb2DcAmt();
+			goodsCpnDcSumAmt			= goodsCpnDcSumAmt 	+ orderDetail.getGoodsCpnDcAmt();
+			cartCpnDcSumAmt				= cartCpnDcSumAmt 	+ orderDetail.getCartCpnDcAmt();
+			prePntDcSumAmt				= prePntDcSumAmt 	+ orderDetail.getPrePntDcAmt();
+			pntDcSumAmt					= pntDcSumAmt 		+ orderDetail.getPntDcAmt();
+			gfcdUseSumAmt				= gfcdUseSumAmt 	+ orderDetail.getGfcdUseAmt();
+			realOrdSumAmt 				= realOrdSumAmt 	+ orderDetail.getRealOrdAmt();
 		}
 		
+		realOrdSumAmt = realOrdSumAmt + order.getDelvSumAmt();
+		
+		if (orgGoodsSumAmt != order.getOrgGoodsSumAmt()) {
+			resultStr = "판매가 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		if (cpn1DcSumAmt != order.getCpn1DcSumAmt()) {
+			resultStr = "즉시할인 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		if (tmtb1DcSumAmt != order.getTmtb1DcSumAmt()) {
+			resultStr = "수량다다익선 할인 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		if (tmtb2DcSumAmt != order.getTmtb2DcSumAmt()) {
+			resultStr = "금액다다익선 할인 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		if (goodsCpnDcSumAmt != order.getGoodsCpnDcSumAmt()) {
+			resultStr = "상품쿠폰 할인 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		if (cartCpnDcSumAmt != order.getCartCpnDcSumAmt()) {
+			resultStr = "장바구니쿠폰 할인 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		if (prePntDcSumAmt != order.getPrePntDcSumAmt()) {
+			resultStr = "선포인트 할인 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		if (pntDcSumAmt != order.getPntDcSumAmt()) {
+			resultStr = "포인트 할인 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		if (gfcdUseSumAmt != order.getGfcdUseSumAmt()) {
+			resultStr = "상품권 사용 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		
+		
+		if (realOrdSumAmt != order.getRealOrdSumAmt()) {
+			resultStr = "실결제 금액정보가 잘못 되었습니다.";
+			return resultStr;
+		}
+		
+		
+
 		// 장바구니 금액정보 체크
 		for (Order orderDetail : cartGoodsList) {
-			cartCurrPriceSum 			= cartCurrPriceSum + orderDetail.getOrgCurrPrice();
+			cartOrgGoodsSumAmt 			= cartOrgGoodsSumAmt + orderDetail.getOrgCurrPrice();
 		}
 		
 		// 판매가비교
-		if (orderDetailCurrPriceSum != cartCurrPriceSum) {
+		if (orgGoodsSumAmt != cartOrgGoodsSumAmt) {
 			resultStr = "금액정보가 잘못 되었습니다.";
 			return resultStr;
 		}

+ 12 - 37
src/main/java/com/style24/front/biz/web/TsfOrderController.java

@@ -738,45 +738,11 @@ public class TsfOrderController extends TsfBaseController {
 		// 3. 주문기본정보등록(주문접수)
 		coreOrderService.createPreOrder(order);
 		
-		// 4. 2021.05.10 장바구니정보 정보 삭제
+		// 4. 2021.05.10 장바구니정보 주문번호 업데이트
 		orderService.insertCartHstOrdNo(order);
-		
-		log.info("order.getEntryNo()           ::: {}", order.getEntryNo());
-		log.info("order.getPgGb()              ::: {}", order.getPgGb());
-		log.info("order.getPayMeans()          ::: {}", order.getPayMeans());
-		log.info("order.getOrdNo()             ::: {}", order.getOrdNo());
-		log.info("order.getGoodsNm()           ::: {}", order.getGoodsNm());
-		log.info("order.getOrdGoodsQty()       ::: {}", order.getOrdGoodsQty());
-		log.info("order.getPayAmt()            ::: {}", order.getPayAmt());
-		log.info("order.getOrdNm()             ::: {}", order.getOrdNm());
-		log.info("order.getOrdPhnno()          ::: {}", order.getOrdPhnno());
-		log.info("order.getCustNo()            ::: {}", order.getCustNo());
-		log.info("order.getFreegiftValArr()    ::: {}", order.getFreegiftValArr());
-		log.info("order.getFreegiftSqArr()     ::: {}", order.getFreegiftSqArr());
-		log.info("order.getSexGb()             ::: {}", order.getSexGb());
-		log.info("order.getBirthYmd()          ::: {}", order.getBirthYmd());
-		log.info("order.getGiftMsg()           ::: {}", order.getGiftMsg());
-		
-		for (int i = 0 ; i < order.getFreegiftGoodsArr().length ; i++) {
-			log.info("order.getFreegiftGoodsArr()  ::: {}", order.getFreegiftGoodsArr()[i]);
-		}
-
-		// 필수 데이터
-		// pgGb = 결제타입, payMeans = 결제수단, ordNo = 주문번호, goodsNm = 상품명, payAmt = 실결제금액, ordNm = 주문자명, ordPhnno = 휴대폰번호, custNo = 고객번호
-		// 선택 데이터
-		// ordEmail = 주문자메일, ordTelno = 전화번호
-		
-		/* 
-		=== 카카오페이 & 네이버페이 파라메터 ===
-		ordNo = 주문번호
-		custNo = 고객번호
-		goodsNm = 상품명
-		ordGoodsQty = 주문상품수량
-		payAmt = 결제금액
-		======================
-		*/
 
 		Payment payment = orderService.setPgDataInfo(order);
+		
 		// 2021.05.10 추가
 		payment.setPayUrl("/create/preOrder");
 		payment.setRetUrl("/pay/result/response");
@@ -829,7 +795,16 @@ public class TsfOrderController extends TsfBaseController {
 		coreOrderService.updateOrderInfo(order);
 		
 		// 4. 2021.05.10 장바구니정보 삭제
-		orderService.deleteCartOrdNo(order);
+		boolean cartDelTemp = true;
+		if (TsfSession.isLogin()) {
+			if ("jsh77b".equals(TsfSession.getInfo().getCustId()) || "xodud1202".equals(TsfSession.getInfo().getCustId()) || "card007".equals(TsfSession.getInfo().getCustId())) {
+				cartDelTemp = false;
+			}
+		}
+		
+		if (cartDelTemp) {
+			orderService.deleteCartOrdNo(order);
+		}
 		
 		// TODO 5. 2021.05.10 보증보험 API 연동
 		orderService.updateInsurance(order);

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

@@ -117,6 +117,8 @@
 			<th>foreignYn</th>
 			<th>orderMadeYn</th>
 			<th>delvFeeCd</th>
+			<th>pntPrate</th>
+			<th>pntMrate</th>
 		</tr>
 		<th:block th:each="delvAllCart, index : ${delvAllCartList}">
 			<th:block th:if="${delvAllCart != null and #lists.size(delvAllCart) > 0}">
@@ -162,11 +164,13 @@
 						<td class="pntDcAmt1">0</td>
 						<td class="gfcdUseAmt1">0</td>
 						<td class="realOrdAmt1">0</td>
-						<td class="savePntAmt1" 	th:text="${goods.savePntAmt}"></td>
+						<td class="savePntAmt1">0</td>
 						<td class="shotDelvYn" 		th:text="${goods.shotDelvYn}"></td>
 						<td class="foreignBuyYn" 	th:text="${goods.foreignBuyYn}"></td>
 						<td class="orderMadeYn" 	th:text="${goods.orderMadeYn}"></td>
 						<td class="delvFeeCd" 		th:text="${goods.delvFeeCd}"></td>
+						<td class="pntPrate" 		th:text="${goods.pntPrate}"></td>
+						<td class="pntMrate" 		th:text="${goods.pntMrate}"></td>
 					</tr>
 				</th:block>
 			</th:block>
@@ -1247,6 +1251,17 @@ var paymentInfoSet = function() {
 						,"giftMsg"				: giftMsg
 						,"custPayMeans"			: custPayMeans
 						,"cartSqArr"			: cartSqArr
+						,"orgGoodsSumAmt"		: $("#orderAmtForm .orgGoodsSumAmt").text()
+						,"cpn1DcSumAmt"			: $("#orderAmtForm .cpn1DcSumAmt").text()
+						,"tmtb1DcSumAmt"		: $("#orderAmtForm .tmtb1DcSumAmt").text()
+						,"tmtb2DcSumAmt"		: $("#orderAmtForm .tmtb2DcSumAmt").text()
+						,"goodsCpnDcSumAmt"		: $("#orderAmtForm .goodsCpnDcSumAmt").text()
+						,"cartCpnDcSumAmt"		: $("#orderAmtForm .cartCpnDcSumAmt").text()
+						,"prePntDcSumAmt"		: $("#orderAmtForm .prePntDcSumAmt").text()
+						,"pntDcSumAmt"			: $("#orderAmtForm .pntDcSumAmt").text()
+						,"gfcdUseSumAmt"		: $("#orderAmtForm .gfcdUseSumAmt").text()
+						,"realOrdSumAmt"		: $("#orderAmtForm .realOrdSumAmt").text()
+						,"delvSumAmt"			: $("#orderAmtForm .delvSumAmt").text()
 					};
 					
 					$.ajax( {
@@ -2261,7 +2276,6 @@ var custCpnSumAmtCal = function() {
 		var goodsCpnDcAmt	= parseInt($(this).parent().find(".goodsCpnDcAmt").text());
 		var cartCpnDcAmt	= parseInt($(this).parent().find(".cartCpnDcAmt").text());
 		var prePntDcAmt1	= parseInt($(this).parent().find(".prePntDcAmt1").text());
-		var savePntAmt1		= parseInt($(this).parent().find(".savePntAmt1").text());
 		var dcSumAmt		= 0;
 		
 		// 주문금액 = ((판매가 - 즉시할인가) + 옵션추가금액) * 장바구니수량
@@ -2282,14 +2296,8 @@ var custCpnSumAmtCal = function() {
 		// 할인금액합계 = 다다익선수량금액 + 다다익선금액금액 + 상품쿠폰금액 + 장바구니금액 + 선포인트금액
 		if (prePntDcAmtYn == "Y") {
 			dcSumAmt		= tmtb1DcAmt + tmtb2DcAmt + goodsCpnDcAmt + cartCpnDcAmt + prePntDcAmt1;
-			
-			// 2021.04.29 선포인트사용포인트 적립포인트금액 0원처리
-			if (prePntDcAmt1 < 1) {
-				savePntSumAmt	= savePntSumAmt + savePntAmt1;
-			}
 		} else {
 			dcSumAmt		= tmtb1DcAmt + tmtb2DcAmt + goodsCpnDcAmt + cartCpnDcAmt;
-			savePntSumAmt	= savePntSumAmt + savePntAmt1;
 		}
 		
 		totDcSumAmt			= totDcSumAmt + dcSumAmt;
@@ -2297,17 +2305,19 @@ var custCpnSumAmtCal = function() {
 		// 주문금액설정
 		$(this).parent().find(".ordAmt").text(ordAmt);
 		$(this).parent().find(".dcSumAmt").text(dcSumAmt);
-		
-		//savePntSumAmt		= savePntSumAmt + savePntAmt1;
 	});
 	
 	// 포인트, 상품권 금액 분배
 	$("#orderAmtForm .cartSq").each(function(){
+		var pntPrate		= parseInt($(this).parent().find(".pntPrate").text());
+		var pntMrate		= parseInt($(this).parent().find(".pntMrate").text());
 		var ordAmt 			= parseInt($(this).parent().find(".ordAmt").text());
 		var dcSumAmt		= parseInt($(this).parent().find(".dcSumAmt").text()); 
+		var prePntDcAmt1	= parseInt($(this).parent().find(".prePntDcAmt1").text());
 		var tempDiv 		= parseInt((ordAmt / ordSumAmt) * 100);
 		var pntDcAmt1 		= 0;
 		var gfcdUseAmt1		= 0;
+		var savePntAmt1		= 0;
 		
 		if (index == cartSqLenght) {
 			pntDcAmt1 		= leftPntAmt;
@@ -2322,9 +2332,22 @@ var custCpnSumAmtCal = function() {
 		var realOrdAmt1		= ordAmt - dcSumAmt - pntDcAmt1 - gfcdUseAmt1;
 		realOrdSumAmt		= realOrdSumAmt + realOrdAmt1;
 		
+		// 2021.05.11 최종할인금액으로 적립포인트 적용
+		savePntAmt1			= parseInt(realOrdAmt1 * (pntPrate/100));
+		
+		// 선포인트사용여부 
+		if (prePntDcAmtYn == "Y") {
+			if (prePntDcAmt1 < 1) {
+				savePntSumAmt	= savePntSumAmt + savePntAmt1;
+			}
+		} else {
+			savePntSumAmt	= savePntSumAmt + savePntAmt1;
+		}
+		
 		$(this).parent().find(".pntDcAmt1").text(pntDcAmt1);
 		$(this).parent().find(".gfcdUseAmt1").text(gfcdUseAmt1);
 		$(this).parent().find(".realOrdAmt1").text(realOrdAmt1);
+		$(this).parent().find(".savePntAmt1").text(savePntAmt1);
 		
 		index++;
 	});

+ 2 - 2
src/main/webapp/WEB-INF/views/web/order/OrderDcAmtInfoWeb.html

@@ -154,7 +154,7 @@
 								<div>
 									<input type="radio" name="rdi-beforpoint" id="rdi-beforpoint2" value="Y" checked> 
 									<label for="rdi-beforpoint2"><span>사용함</span></label> 
-									<span class="useable_point">(<em th:text="${#numbers.formatInteger(prePntDcAmt, 1, 'COMMA')}"></em>&nbsp;사용 가능)</span>
+									<span class="useable_point">(<em th:text="|${#numbers.formatInteger(prePntDcAmt, 1, 'COMMA')}|"></em>&nbsp;사용 가능)</span>
 								</div>
 							</div>
 						</dd>
@@ -186,7 +186,7 @@
 								<!-- 스타일 포인트 3만원 미만 결제시 노출 -->
 								<th:block th:if="${orgGoodsSumAmt} < ${pointUseEnvset.pointUseOrdMinAmt}">
 									<div class="input_wrap">
-										<input type="text" class="form_control" maxlength="" th:placeholder="|${#numbers.formatInteger(pointUseEnvset.pointUseOrdMinAmt, 1, 'COMMA')} 이상 결제시에만 포인트 사용이 가능합니다.|" disabled="">
+										<input type="text" class="form_control" maxlength="" th:placeholder="|${#numbers.formatInteger(pointUseEnvset.pointUseOrdMinAmt, 1, 'COMMA')} 이상 결제시에만 포인트 사용이 가능합니다.|" disabled="">
 									</div>
 								</th:block>
 								<!-- //스타일 포인트 3만원 미만 결제시 노출 -->

+ 34 - 9
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -117,6 +117,8 @@
 			<th>foreignYn</th>
 			<th>orderMadeYn</th>
 			<th>delvFeeCd</th>
+			<th>pntPrate</th>
+			<th>pntMrate</th>
 		</tr>
 		<th:block th:each="delvAllCart, index : ${delvAllCartList}">
 			<th:block th:if="${delvAllCart != null and #lists.size(delvAllCart) > 0}">
@@ -162,11 +164,13 @@
 						<td class="pntDcAmt1">0</td>
 						<td class="gfcdUseAmt1">0</td>
 						<td class="realOrdAmt1">0</td>
-						<td class="savePntAmt1" 	th:text="${goods.savePntAmt}"></td>
+						<td class="savePntAmt1">0</td>
 						<td class="shotDelvYn" 		th:text="${goods.shotDelvYn}"></td>
 						<td class="foreignBuyYn" 	th:text="${goods.foreignBuyYn}"></td>
 						<td class="orderMadeYn" 	th:text="${goods.orderMadeYn}"></td>
 						<td class="delvFeeCd" 		th:text="${goods.delvFeeCd}"></td>
+						<td class="pntPrate" 		th:text="${goods.pntPrate}"></td>
+						<td class="pntMrate" 		th:text="${goods.pntMrate}"></td>
 					</tr>
 				</th:block>
 			</th:block>
@@ -1229,6 +1233,17 @@ var paymentInfoSet = function() {
 						,"giftMsg"				: ""
 						,"custPayMeans"			: custPayMeans
 						,"cartSqArr"			: cartSqArr
+						,"orgGoodsSumAmt"		: $("#orderAmtForm .orgGoodsSumAmt").text()
+						,"cpn1DcSumAmt"			: $("#orderAmtForm .cpn1DcSumAmt").text()
+						,"tmtb1DcSumAmt"		: $("#orderAmtForm .tmtb1DcSumAmt").text()
+						,"tmtb2DcSumAmt"		: $("#orderAmtForm .tmtb2DcSumAmt").text()
+						,"goodsCpnDcSumAmt"		: $("#orderAmtForm .goodsCpnDcSumAmt").text()
+						,"cartCpnDcSumAmt"		: $("#orderAmtForm .cartCpnDcSumAmt").text()
+						,"prePntDcSumAmt"		: $("#orderAmtForm .prePntDcSumAmt").text()
+						,"pntDcSumAmt"			: $("#orderAmtForm .pntDcSumAmt").text()
+						,"gfcdUseSumAmt"		: $("#orderAmtForm .gfcdUseSumAmt").text()
+						,"realOrdSumAmt"		: $("#orderAmtForm .realOrdSumAmt").text()
+						,"delvSumAmt"			: $("#orderAmtForm .delvSumAmt").text()
 					};
 					
 					$.ajax( {
@@ -2161,7 +2176,6 @@ var custCpnSumAmtCal = function() {
 		var cartCpnDcAmt	= parseInt($(this).parent().find(".cartCpnDcAmt").text());
 		var prePntDcAmt1	= parseInt($(this).parent().find(".prePntDcAmt1").text());
 		var dcSumAmt		= 0;
-		var savePntAmt1		= parseInt($(this).parent().find(".savePntAmt1").text());
 		
 		// 주문금액 = ((판매가 - 즉시할인가) + 옵션추가금액) * 장바구니수량
 		orgGoodsSumAmt		= orgGoodsSumAmt + (orgCurrPrice + optAddPrice) * goodsQty;
@@ -2181,14 +2195,8 @@ var custCpnSumAmtCal = function() {
 		// 할인금액합계 = 다다익선수량금액 + 다다익선금액금액 + 상품쿠폰금액 + 장바구니금액 + 선포인트금액
 		if (prePntDcAmtYn == "Y") {
 			dcSumAmt		= tmtb1DcAmt + tmtb2DcAmt + goodsCpnDcAmt + cartCpnDcAmt + prePntDcAmt1;
-			
-			// 2021.04.29 선포인트사용포인트 적립포인트금액 0원처리
-			if (prePntDcAmt1 < 1) {
-				savePntSumAmt	= savePntSumAmt + savePntAmt1;
-			}
 		} else {
 			dcSumAmt		= tmtb1DcAmt + tmtb2DcAmt + goodsCpnDcAmt + cartCpnDcAmt;
-			savePntSumAmt	= savePntSumAmt + savePntAmt1;
 		}
 		
 		// 주문금액설정
@@ -2198,11 +2206,15 @@ var custCpnSumAmtCal = function() {
 	
 	// 포인트, 상품권 금액 분배
 	$("#orderAmtForm .cartSq").each(function(){
+		var pntPrate		= parseInt($(this).parent().find(".pntPrate").text());
+		var pntMrate		= parseInt($(this).parent().find(".pntMrate").text());
 		var ordAmt 			= parseInt($(this).parent().find(".ordAmt").text());
-		var dcSumAmt		= parseInt($(this).parent().find(".dcSumAmt").text()); 
+		var dcSumAmt		= parseInt($(this).parent().find(".dcSumAmt").text());
+		var prePntDcAmt1	= parseInt($(this).parent().find(".prePntDcAmt1").text());
 		var tempDiv 		= parseInt((ordAmt / ordSumAmt) * 100);
 		var pntDcAmt1 		= 0;
 		var gfcdUseAmt1		= 0;
+		var savePntAmt1		= 0;
 		
 		if (index == cartSqLenght) {
 			pntDcAmt1 		= leftPntAmt;
@@ -2217,9 +2229,22 @@ var custCpnSumAmtCal = function() {
 		var realOrdAmt1		= ordAmt - dcSumAmt - pntDcAmt1 - gfcdUseAmt1;
 		realOrdSumAmt		= realOrdSumAmt + realOrdAmt1;
 		
+		// 2021.05.11 최종할인금액으로 적립포인트 적용
+		savePntAmt1			= parseInt(realOrdAmt1 * (pntPrate/100));
+		
+		// 선포인트사용여부 
+		if (prePntDcAmtYn == "Y") {
+			if (prePntDcAmt1 < 1) {
+				savePntSumAmt	= savePntSumAmt + savePntAmt1;
+			}
+		} else {
+			savePntSumAmt	= savePntSumAmt + savePntAmt1;
+		}
+		
 		$(this).parent().find(".pntDcAmt1").text(pntDcAmt1);
 		$(this).parent().find(".gfcdUseAmt1").text(gfcdUseAmt1);
 		$(this).parent().find(".realOrdAmt1").text(realOrdAmt1);
+		$(this).parent().find(".savePntAmt1").text(savePntAmt1);
 		
 		index++;
 	});