|
|
@@ -279,6 +279,7 @@
|
|
|
<dd th:if="${paymentInfo.pgGb == 'NAVER'}">네이버페이</dd>
|
|
|
<dd th:if="${paymentInfo.pgGb == 'KAKAO'}">카카오페이</dd>
|
|
|
<dd th:if="${paymentInfo.pgGb == 'PAYCO'}">PAYCO</dd>
|
|
|
+ <dd th:if="${paymentInfo.pgGb == 'ISTYLE'}">상품권</dd>
|
|
|
</div>
|
|
|
<div>
|
|
|
<dt>결제 금액 환불</dt>
|
|
|
@@ -507,62 +508,65 @@
|
|
|
let jsonData = JSON.stringify(data);
|
|
|
|
|
|
gagajf.ajaxJsonSubmit(url, jsonData, function (result) {
|
|
|
- let refundPoint = Number(result.spanPntDcAmt); // 환불 포인트 금액
|
|
|
- let spanGfcdUseAmt = Number(result.spanGfcdUseAmt); // 환불 상품권 금액
|
|
|
- let spanDelvGfcdUseAmt = Number(result.spanDelvGfcdUseAmt); // 환불 배송비 상품권 금액 (반품에서는 안돌려줘서 항상 0일듯)
|
|
|
- let spanCnclRtnAmt = Number(result.spanCnclRtnAmt); // 환불 상품 금액
|
|
|
- let spanCpnDcAmt = Number(result.spanCpnDcAmt); // 쿠폰 할인 차감 금액
|
|
|
- let spanCpn1DcAmt = Number(result.spanCpn1DcAmt); // 즉시할인 쿠폰 차감 금액
|
|
|
- let spanTmtbDcAmt = Number(result.spanTmtbDcAmt); // 다다익선 할인 차감 금액
|
|
|
- let spanPrePntDcAmt = Number(result.spanPrePntDcAmt); // 선포인트 할인 차감 금액
|
|
|
- let sumDeliveryFee = Number(result.sumDeliveryFee); // 원주문배송비 (반품에서는 안돌려줘서 항상 0일듯)
|
|
|
- //let spanTotDeliveryFee = Number(result.spanTotDeliveryFee); // 추가배송비 (무료배송비 허들 깨져서 발생한 배송비) - 추가배송비는 환불컨펌에서 처리
|
|
|
- let spanTotDeliveryFee = 0;
|
|
|
- let spanTotRtnDelvFee = Number(result.spanTotRtnDelvFee); // 반품배송비 (회수요청으로 인한 반품 배송비)
|
|
|
- let spanRealCnclRtnAmt = Number(result.spanRealCnclRtnAmt); // 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
|
|
|
- let refundGiftCard = spanGfcdUseAmt + spanDelvGfcdUseAmt; // 환불 상품권 금액 합계
|
|
|
- let spanRefundAmt = spanRealCnclRtnAmt + sumDeliveryFee; // 환불예정금액 (환불상품실결제금액 - 원주문배송비)
|
|
|
+ let refundPoint = Number(result.spanPntDcAmt); // 환불 포인트 금액
|
|
|
+ let spanGfcdUseAmt = Number(result.spanGfcdUseAmt); // 환불 상품권 금액
|
|
|
+ let spanDelvGfcdUseAmt = Number(result.spanDelvGfcdUseAmt); // 환불 배송비 상품권 금액 (반품에서는 안돌려줘서 항상 0일듯)
|
|
|
+ let spanCnclRtnAmt = Number(result.spanCnclRtnAmt); // 환불 상품 금액
|
|
|
+ let spanCpnDcAmt = Number(result.spanCpnDcAmt); // 쿠폰 할인 차감 금액
|
|
|
+ let spanCpn1DcAmt = Number(result.spanCpn1DcAmt); // 즉시할인 쿠폰 차감 금액
|
|
|
+ let spanTmtbDcAmt = Number(result.spanTmtbDcAmt); // 다다익선 할인 차감 금액
|
|
|
+ let spanPrePntDcAmt = Number(result.spanPrePntDcAmt); // 선포인트 할인 차감 금액
|
|
|
+ let spanTotRtnDelvFee = Number(result.spanTotRtnDelvFee); // 반품배송비 (회수요청으로 인한 반품 배송비)
|
|
|
+ let spanRealCnclRtnAmt = Number(result.spanRealCnclRtnAmt); // 환불 상품 실결제 금액 (환불상품금액 - 할인차감금액)
|
|
|
+ let goodsCancelAmt = spanCnclRtnAmt + spanCpn1DcAmt; // 상품취소금액
|
|
|
+ let deductDcAmt = 0 - spanCpnDcAmt - spanTmtbDcAmt - spanPrePntDcAmt; // 할인금액 차감 (쿠폰+다다익선+선포인트)
|
|
|
+ let refundGiftCard = spanGfcdUseAmt + spanDelvGfcdUseAmt; // 환불 상품권 금액 합계
|
|
|
+ let spanRefundAmt = spanRealCnclRtnAmt; // 환불예정금액 (환불상품실결제금액)
|
|
|
|
|
|
// 반품 사유 및 반품 방식 배송비 계산
|
|
|
- if (result.spanRealCnclRtnAmt > 0) {
|
|
|
- let wdGb = $('#returnForm input[name=wdGb]:radio:checked').val();
|
|
|
- // 회사사유 : 추가배송비 0, 반품배송비 0
|
|
|
- if (!isCustomer) {
|
|
|
- spanTotRtnDelvFee = 0;
|
|
|
- //spanTotDeliveryFee = 0; // 추가배송비는 환불컨펌에서 처리
|
|
|
- }
|
|
|
- // 고객사유(직접발송) : 반품배송비 0
|
|
|
- else if (wdGb == 'D') {
|
|
|
- spanTotRtnDelvFee = 0;
|
|
|
- }
|
|
|
- } else {
|
|
|
+ let wdGb = $('#returnForm input[name=wdGb]:radio:checked').val();
|
|
|
+
|
|
|
+ // 2021.08.10 card007 상품권 100% 결제 관련 로직 변경
|
|
|
+ // 회사귀책이거나 직접배송일때 반품배송비 0
|
|
|
+ if (!isCustomer || wdGb == 'D') {
|
|
|
spanTotRtnDelvFee = 0;
|
|
|
- //spanTotDeliveryFee = 0; // 추가배송비는 환불컨펌에서 처리
|
|
|
}
|
|
|
|
|
|
- let goodsCancelAmt = spanCnclRtnAmt + spanCpn1DcAmt; // 상품취소금액
|
|
|
- let addDelvFee = spanTotRtnDelvFee + spanTotDeliveryFee; // 추가배송비
|
|
|
- let deductDcAmt = spanCpnDcAmt + spanTmtbDcAmt + spanPrePntDcAmt; // 할인금액 차감(쿠폰+다다익선+선포인트)
|
|
|
- let refundPayAmt = spanRefundAmt - addDelvFee; // 결제금액 환불
|
|
|
-
|
|
|
// 추가배송비 영역 설정
|
|
|
- if (refundPayAmt < 0) {
|
|
|
- refundPayAmt += addDelvFee;
|
|
|
+ // 2021.08.10 card007 상품권100% 결제 로직 수정
|
|
|
+ let refundAmt = spanRefundAmt + spanGfcdUseAmt;
|
|
|
+ let leftAddDelvFee = spanTotRtnDelvFee;
|
|
|
+
|
|
|
+ if (refundAmt < spanTotRtnDelvFee) {
|
|
|
$('#addDeliveryFee').css('display', '');
|
|
|
- $('#addPayCost').text(addDelvFee.addComma() + '원');
|
|
|
- $('#returnForm input[name=addPayCost]').val(addDelvFee);
|
|
|
+ $('#addPayCost').text(spanTotRtnDelvFee.addComma() + '원');
|
|
|
+ $('#returnForm input[name=addPayCost]').val(spanTotRtnDelvFee);
|
|
|
} else {
|
|
|
+ if (leftAddDelvFee > spanRefundAmt) {
|
|
|
+ leftAddDelvFee -= spanRefundAmt;
|
|
|
+ spanRefundAmt = 0;
|
|
|
+ } else {
|
|
|
+ spanRefundAmt -= leftAddDelvFee;
|
|
|
+ leftAddDelvFee = 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (leftAddDelvFee > 0) {
|
|
|
+ refundGiftCard -= leftAddDelvFee;
|
|
|
+ leftAddDelvFee = 0;
|
|
|
+ }
|
|
|
+
|
|
|
$('#addDeliveryFee').css('display', 'none');
|
|
|
$('#returnForm input[name=addPayCost]').val(0);
|
|
|
}
|
|
|
-
|
|
|
- let returnAmt = refundPayAmt + refundPoint + refundGiftCard; // 환불예정금액
|
|
|
+
|
|
|
+ let refundPayAmt = spanRefundAmt - leftAddDelvFee; // 결제금액 환불
|
|
|
+ let returnAmt = refundPayAmt + refundPoint + refundGiftCard; // 환불예정금액
|
|
|
|
|
|
// 금액 설정
|
|
|
$('#returnAmt').text(returnAmt.addComma());
|
|
|
$('#goodsCancelAmt').text(goodsCancelAmt.addComma());
|
|
|
- $('#deliveryFee').text((0 - addDelvFee).addComma());
|
|
|
- $('#deductDcAmt').text((0 - deductDcAmt).addComma());
|
|
|
+ $('#deliveryFee').text((0 - spanTotRtnDelvFee).addComma());
|
|
|
+ $('#deductDcAmt').text(deductDcAmt.addComma());
|
|
|
$('#refundPayAmt').text(refundPayAmt.addComma());
|
|
|
$('#refundPoint').text(refundPoint.addComma());
|
|
|
$('#refundGiftCard').text(refundGiftCard.addComma());
|
|
|
@@ -597,6 +601,7 @@
|
|
|
// 반품 사유 설정
|
|
|
$(param).parent().parent().find('input[name=chgReason]').val(chgReason);
|
|
|
|
|
|
+ console.log('isCustomer : ' + isCustomer);
|
|
|
// 환불금액 계산
|
|
|
fnChangeReturnQty();
|
|
|
}
|