|
@@ -138,6 +138,21 @@ public class TscOrderRefundService {
|
|
|
// 3.5 주문취소환불금액 계산
|
|
// 3.5 주문취소환불금액 계산
|
|
|
orderObj.setRealOrdAmt(orderObj.getCnclRtnAmt() - dcTotAmt);
|
|
orderObj.setRealOrdAmt(orderObj.getCnclRtnAmt() - dcTotAmt);
|
|
|
|
|
|
|
|
|
|
+ // 2021.10.19 card007 상품권 100% 사용 주문 취소 비율배분 시 REAL_ORD_AMT != 0 인 케이스 방어로직
|
|
|
|
|
+ if (oneData.getRealOrdAmt() == 0 && orderObj.getRealOrdAmt() != 0) {
|
|
|
|
|
+ int realOrdAmt = orderObj.getRealOrdAmt();
|
|
|
|
|
+
|
|
|
|
|
+ if (realOrdAmt > 0) {
|
|
|
|
|
+ // realOrdAmt > 0 이면 gfcdUseAmt에 더하고 realOrdAmt에는 뺸다.
|
|
|
|
|
+ orderObj.setGfcdUseAmt(orderObj.getGfcdUseAmt() + realOrdAmt);
|
|
|
|
|
+ orderObj.setRealOrdAmt(orderObj.getRealOrdAmt() - realOrdAmt);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ // realOrdAmt < 0 이면 gfcdUseAmt에 빼고 realOrdAmt에는 더한다.
|
|
|
|
|
+ orderObj.setGfcdUseAmt(orderObj.getGfcdUseAmt() - realOrdAmt);
|
|
|
|
|
+ orderObj.setRealOrdAmt(orderObj.getRealOrdAmt() + realOrdAmt);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
// 3.6 배송정보 관련 설정
|
|
// 3.6 배송정보 관련 설정
|
|
|
orderObj.setOrdDtlNo(oneData.getOrdDtlNo());
|
|
orderObj.setOrdDtlNo(oneData.getOrdDtlNo());
|
|
|
orderObj.setGoodsTypeNm(oneData.getGoodsTypeNm());
|
|
orderObj.setGoodsTypeNm(oneData.getGoodsTypeNm());
|