Prechádzať zdrojové kódy

개선 #998 [ADMIN][FRONT] 배송비 계산 처리 시 상품권 사용 금액 추가 처리 임시 커밋

card007 4 rokov pred
rodič
commit
b948f9a337

+ 34 - 26
src/main/webapp/WEB-INF/views/order/RtnReqForm.html

@@ -105,59 +105,59 @@
 						<tr>
 							<td style="height:25px;">상품금액</td>
 							<td>취소상품금액</td>
-							<td class="spanCnclRtnAmt">15,000원</td>
+							<td class="spanCnclRtnAmt">0원</td>
 							<td></td>
 						</tr>
 						<tr>
 							<td rowspan="2">할인금액차감</td>
 							<td>쿠폰할인차감</td>
-							<td class="spanCpnDcAmt">15,000원</td>
+							<td class="spanCpnDcAmt">0원</td>
 							<td style="line-height:25px;">
-								<div style="height:25px;"><span>즉시할인쿠폰 : </span><span class="spanCpn1DcAmt">-60,000원</span></div>
-								<div style="height:25px;"><span>주문서상품쿠폰 : </span><span class="spanGoodsCpnDcAmt">-60,000원</span></div>
-								<div style="height:25px;"><span>장바구니쿠폰 : </span><span class="spanCartCpnDcAmt">-60,000원</span></div>
+								<div style="height:25px;"><span>즉시할인쿠폰 : </span><span class="spanCpn1DcAmt">0원</span></div>
+								<div style="height:25px;"><span>주문서상품쿠폰 : </span><span class="spanGoodsCpnDcAmt">0원</span></div>
+								<div style="height:25px;"><span>장바구니쿠폰 : </span><span class="spanCartCpnDcAmt">0원</span></div>
 							</td>
 						</tr>
 						<tr>
 							<td>상품할인차감</td>
-							<td class="goodsDcSumAmt">15,000원</td>
+							<td class="goodsDcSumAmt">0원</td>
 							<td style="line-height:25px;">
-								<div style="height:25px;"><span>선포인트할인 : </span><span class="spanPrePntDcAmt">-60,000원</span></div>
-								<div style="height:25px;"><span>다다익선할인 : </span><span class="spanTmtbDcAmt">-60,000원</span></div>
+								<div style="height:25px;"><span>선포인트할인 : </span><span class="spanPrePntDcAmt">0원</span></div>
+								<div style="height:25px;"><span>다다익선할인 : </span><span class="spanTmtbDcAmt">0원</span></div>
 							</td>
 						</tr>
 						<tr>
 							<td>배송비</td>
 							<td>환불배송비</td>
-							<td class="spanRealDelvAmt">-60,000원</td>
+							<td class="spanRealDelvAmt">0원</td>
 							<td style="line-height:25px;">
-								<div style="height:25px;"><span>배송비쿠폰 : </span><span class="delvCpnAmt">-60,000원</span></div>
-								<div style="height:25px;"><span>추가금결제 : </span><span class="addDelvFee">-60,000원</span></div>
+								<div style="height:25px;"><span>배송비쿠폰 : </span><span class="delvCpnAmt">0원</span></div>
+								<div style="height:25px;"><span>추가금결제 : </span><span class="addDelvFee">0원</span></div>
 							</td>
 						</tr>
 						<tr>
 							<td rowspan="4">환불금액</td>
 							<td style="height:25px;">총환불금액</td>
-							<td class="totalRefundAmt">70,000원</td>
+							<td class="totalRefundAmt">0원</td>
 							<td></td>
 						</tr>
 						<tr>
 							<td style="height:25px;">결제수단환불</td>
-							<td class="spanRefundAmt">70,000원</td>
+							<td class="spanRefundAmt">0원</td>
 							<td>
-								<span class="pgGbNm">신용카드</span><span class="cardNm">(현대)</span>
+								<span class="pgGbNm"></span><span class="cardNm"></span>
 							</td>
 						</tr>
 						<tr>
 							<td style="height:25px;">상품권환불</td>
-							<td class="spanGfcdUseAmt">70,000P</td>
+							<td class="spanGfcdUseAmt">0P</td>
 							<td></td>
 						</tr>
 						<tr>
 							<td style="height:25px;">포인트환불</td>
-							<td class="spanPntDcAmt">70,000원</td>
+							<td class="spanPntDcAmt">0원</td>
 							<td>
-								<span>적립예정포인트환수 : </span><span class="spanSavePntAmt">60,000P</span>
+								<span>적립예정포인트환수 : </span><span class="spanSavePntAmt">0P</span>
 							</td>
 						</tr>
 					</tbody>
@@ -1009,15 +1009,23 @@ var fnCalculateRefundAmt = function (obj) {
 	var chgQtyArr			= [];
 	
 	// 1. 반품신청수량 체크
+	var chk = 0;
 	for (i=0 ; i<cancelRequestTargetList.length ; i++) {
 		if (cancelRequestTargetList[i].ordCanChgQty > 0) {
 			// 반품신청값설정
 			ordDtlNoArr.push(cancelRequestTargetList[i].ordDtlNo);
 			cnclRtnReqQtyArr.push(cancelRequestTargetList[i].ordCanChgQty);
 			chgQtyArr.push(cancelRequestTargetList[i].chgQty);
+			chk++;
 		}
 	}
 
+	// 신청수량이 없거나 반품사유 선택 안했을 시 계산 안함
+	console.log($('#cancelRequestFrm input[name=chgReason]').val());
+	if (chk == 0 || $('#cancelRequestFrm input[name=chgReason]').val() == '') {
+		return false;
+	}
+
 	// 2. 추가정보설정
 	var chgerNm 	= orderInfoList[0].ordNm;
 	var chgerEmail 	= orderInfoList[0].ordEmail;
@@ -1128,9 +1136,9 @@ var fnCalculateRefundAmt = function (obj) {
 				addDelvFee = 0;
 			}
 
-			let refundPayAmt		= spanRefundAmt - spanDelvGfcdUseAmt - leftAddDelvFee;	// 결제금액 환불 (환불예정금액 - 환불 배송비 상품권 금액 - 추가배송비)
+			let refundPayAmt		= spanRefundAmt - leftAddDelvFee;						// 결제금액 환불 (환불예정금액 - 환불 배송비 상품권 금액 - 추가배송비)
 			let deliveryFee 		= 0 - spanTotRtnDelvFee;								// 환불배송비
-			let spanTotGfcdUseAmt	= spanGfcdUseAmt + spanDelvGfcdUseAmt;					// 환불 상품권 금액 합계
+			let spanTotGfcdUseAmt	= spanGfcdUseAmt;										// 환불 상품권 금액 합계
 			let totalRefundAmt		= spanRefundAmt + spanTotGfcdUseAmt + spanPntDcAmt;		// 총 환불 금액
 
 			// 상품금액
@@ -1138,17 +1146,17 @@ var fnCalculateRefundAmt = function (obj) {
 
 			// 할인금액차감
 			$(".spanCpnDcAmt").text(spanCpnDcAmt.addComma()+"원");							// 쿠폰할인차감 > 합계
-			$(".spanCpn1DcAmt").text(spanCpn1DcAmt.addComma()+"원");						// 쿠폰할인차감 > 즉시할인쿠폰
-			$(".spanGoodsCpnDcAmt").text(spanGoodsCpnDcAmt.addComma()+"원");				// 쿠폰할인차감 > 주문서상품쿠폰
+			$(".spanCpn1DcAmt").text(spanCpn1DcAmt.addComma()+"원");							// 쿠폰할인차감 > 즉시할인쿠폰
+			$(".spanGoodsCpnDcAmt").text(spanGoodsCpnDcAmt.addComma()+"원");					// 쿠폰할인차감 > 주문서상품쿠폰
 			$(".spanCartCpnDcAmt").text(spanCartCpnDcAmt.addComma()+"원");					// 쿠폰할인차감 > 장바구니쿠폰
-			$(".goodsDcSumAmt").text(goodsDcSumAmt.addComma()+"원");						// 상품할인차감 > 합계
-			$(".spanPrePntDcAmt").text(spanPrePntDcAmt.addComma()+"원");					// 상품할인차감 > 선포인트할인
-			$(".spanTmtbDcAmt").text(spanTmtbDcAmt.addComma()+"원");						// 상품할인차감 > 다다익선할인
+			$(".goodsDcSumAmt").text(goodsDcSumAmt.addComma()+"원");							// 상품할인차감 > 합계
+			$(".spanPrePntDcAmt").text(spanPrePntDcAmt.addComma()+"원");						// 상품할인차감 > 선포인트할인
+			$(".spanTmtbDcAmt").text(spanTmtbDcAmt.addComma()+"원");							// 상품할인차감 > 다다익선할인
 
 			// 배송비
-			$(".spanRealDelvAmt").text(deliveryFee.addComma()+"원");						// 환불배송비 > 합계
+			$(".spanRealDelvAmt").text(deliveryFee.addComma()+"원");							// 환불배송비 > 합계
 			$(".addDelvFee").text(addDelvFee.addComma()+"원");								// 환불배송비 > 추가금결제
-			$(".delvCpnAmt").text(spanDelvCpnDcAmt.addComma()+"원");						// 환불배송비 > 배송비쿠폰
+			$(".delvCpnAmt").text(spanDelvCpnDcAmt.addComma()+"원");							// 환불배송비 > 배송비쿠폰
 
 			// 환불금액
 			$(".totalRefundAmt").text(totalRefundAmt.addComma()+"원");						// 총환불금액

+ 17 - 13
src/main/webapp/WEB-INF/views/withdraw/RefundDetailForm.html

@@ -499,7 +499,7 @@
 				}
 				//alert("총수량 출고예외");
 				// 환불금액  = 취소 상품 실결제 금액 + 배송비 
-				refundAmt = spanRealCnclRtnAmt + spanSumDeliveryFee - spanDelvCpnDcAmt;
+				refundAmt = spanRealCnclRtnAmt + spanSumDeliveryFee - spanDelvCpnDcAmt - spanDelvGfcdUseAmt;
 				delvGfcdUseAmt	= spanDelvGfcdUseAmt;
 			} else { // 총 주문수량  <>  반품수량   
 				//alert("출고예외");
@@ -574,7 +574,7 @@
 					
 					// 2021.07.02 환불컨펌 환불금액계산
 					// 환불비용 = (취소상품실결제금액) + (원주문배송비- 배송비쿠폰할인금액)
-					refundAmt = spanRealCnclRtnAmt + spanSumDeliveryFee - spanDelvCpnDcAmt;
+					refundAmt = spanRealCnclRtnAmt + spanSumDeliveryFee - spanDelvCpnDcAmt - spanDelvGfcdUseAmt;
 					delvFee = spanSumDeliveryFee - spanDelvCpnDcAmt;
 					delvGfcdUseAmt	= spanDelvGfcdUseAmt;
 				}
@@ -642,37 +642,41 @@
 		}
 		
 		//$("#spanRefundAmt").text(reFundInfo.spanRefundAmt.addComma());				//환불 금액 합계
-
+		
+		console.log('refundAmt : ' + refundAmt);
+		console.log('spanGfcdUseAmt : ' + spanGfcdUseAmt);
+		console.log('spanPntDcAmt : ' + spanPntDcAmt);
+		console.log('delvGfcdUseAmt : ' + delvGfcdUseAmt);
 		var totalRefundAmt = refundAmt + spanGfcdUseAmt + spanPntDcAmt + delvGfcdUseAmt;
 		var totalGfcdUseAmt = spanGfcdUseAmt + delvGfcdUseAmt;
 		
 		reFundInfo.totalRefundAmt = totalRefundAmt;
 		
 		// 상품금액
-		$(".spanCnclRtnAmt").text(goodsCancelAmt.addComma()+"원");						// 취소상품금액
+		$(".spanCnclRtnAmt").text(goodsCancelAmt.addComma()+"원");					// 취소상품금액
 		
 		// 할인금액차감
-		$(".spanCpnDcAmt").text(spanCpnDcAmt.addComma()+"원");							// 쿠폰할인차감 > 합계
+		$(".spanCpnDcAmt").text(spanCpnDcAmt.addComma()+"원");						// 쿠폰할인차감 > 합계
 		$(".spanCpn1DcAmt").text(spanCpn1DcAmt.addComma()+"원");						// 쿠폰할인차감 > 즉시할인쿠폰
 		$(".spanGoodsCpnDcAmt").text(spanGoodsCpnDcAmt.addComma()+"원");				// 쿠폰할인차감 > 주문서상품쿠폰
-		$(".spanCartCpnDcAmt").text(spanCartCpnDcAmt.addComma()+"원");					// 쿠폰할인차감 > 장바구니쿠폰
+		$(".spanCartCpnDcAmt").text(spanCartCpnDcAmt.addComma()+"원");				// 쿠폰할인차감 > 장바구니쿠폰
 		$(".goodsDcSumAmt").text(goodsDcSumAmt.addComma()+"원");						// 상품할인차감 > 합계
 		$(".spanPrePntDcAmt").text(spanPrePntDcAmt.addComma()+"원");					// 상품할인차감 > 선포인트할인
 		$(".spanTmtbDcAmt").text(spanTmtbDcAmt.addComma()+"원");						// 상품할인차감 > 다다익선할인
 		
 		// 배송비
 		$(".spanRealDelvAmt").text(delvFee.addComma()+"원");							// 환불배송비 > 합계
-		$(".addDelvFee").text(addDelvFee.addComma()+"원");								// 환불배송비 > 추가금결제
+		$(".addDelvFee").text(addDelvFee.addComma()+"원");							// 환불배송비 > 추가금결제
 		$(".delvCpnAmt").text(spanDelvCpnDcAmt.addComma()+"원");						// 환불배송비 > 배송비쿠폰
 		
 		// 환불금액
-		$(".totalRefundAmt").text(totalRefundAmt.addComma()+"원");						// 총환불금액
+		$(".totalRefundAmt").text(totalRefundAmt.addComma()+"원");					// 총환불금액
 		$(".spanRefundAmt").text(refundAmt.addComma()+"원");							// 결제수단환불
-		$(".pgGbNm").text(pgGbNm);														// 결제수단환불 > 결제수단
-		$(".cardNm").text(cardGbNm);													// 결제수단환불 > 카드명
-		$(".spanGfcdUseAmt").text(totalGfcdUseAmt.addComma()+"원");						// 상품권환불
-		$(".spanPntDcAmt").text(spanPntDcAmt.addComma()+"원");							// 포인트환불
-		$(".spanSavePntAmt").text(spanSavePntAmt.addComma()+"P");						// 포인트환불 > 적립예정포인트환수
+		$(".pgGbNm").text(pgGbNm);													// 결제수단환불 > 결제수단
+		$(".cardNm").text(cardGbNm);												// 결제수단환불 > 카드명
+		$(".spanGfcdUseAmt").text(totalGfcdUseAmt.addComma()+"원");					// 상품권환불
+		$(".spanPntDcAmt").text(spanPntDcAmt.addComma()+"원");						// 포인트환불
+		$(".spanSavePntAmt").text(spanSavePntAmt.addComma()+"P");					// 포인트환불 > 적립예정포인트환수
 	}
 	
 	/*************************************************************************