|
|
@@ -32,326 +32,326 @@ public class TscOrderRefundService {
|
|
|
* @author jsh77b
|
|
|
* @since 2021. 01. 19
|
|
|
*/
|
|
|
- public GagaMap cnclRtnRefundAmt(List<Order> cnclRtnList) {
|
|
|
- GagaMap mav = new GagaMap();
|
|
|
-
|
|
|
- // 1. 변수설정
|
|
|
- int spanPayAmt = 0; // 총 결제 금액
|
|
|
- int spanSumRealOrdAmt = 0; // 상품 실결제 금액
|
|
|
- int spanSumDeliveryFee = 0; // 배송금액
|
|
|
- int spanRtnSumDeliveryFee = 0; // 반품배송금액
|
|
|
- int spanExcSumDeliveryFee = 0; // 교환배송금액
|
|
|
- int spanOrdAmt = 0; // 주문 상품 금액
|
|
|
- int spanCnclRtnAmt = 0; // 취소 상품 금액
|
|
|
- int spanTotPntDcAmt = 0; // 취소 사용 포인트
|
|
|
- int spanPntDcAmt = 0; // 고객 포인트
|
|
|
- int spanPrePntDcAmt = 0; // 상품 선포인트
|
|
|
- int spanCpnDcAmt = 0; // 취소 사용 쿠폰금액
|
|
|
- int spanCpn1DcAmt = 0; // 즉시할인쿠폰
|
|
|
- int spanGoodsCpnDcAmt = 0; // 상품쿠폰
|
|
|
- int spanCartCpnDcAmt = 0; // 장바구니쿠폰
|
|
|
- int spanDelvCpnDcAmt = 0; // 배송비쿠폰
|
|
|
- int spanRefundDelvCpnAmt = 0; // 배송비쿠폰 환불 금액
|
|
|
- int spanTmtbDcAmt = 0; // 취소 다다익선 금액
|
|
|
- int spanTmtb1DcAmt = 0; // 수량할인
|
|
|
- int spanTmtb2DcAmt = 0; // 금액할인
|
|
|
- int spanGfcdUseAmt = 0; // 취소 고객 상품권 금액
|
|
|
- int spanRealCnclRtnAmt = 0; // 취소 상품 실결제 금액
|
|
|
- int spanTotDeliveryFee = 0; // 환불 배송 금액
|
|
|
- int spanRefundAmt = 0; // 환불 금액 합계
|
|
|
-
|
|
|
- int sumDeliveryFee = 0; // 배송금액 (전체 취소시에 배송금액도 같이 환불)
|
|
|
-
|
|
|
- int cnclRtnAmt = 0; // 기취소 처리 된 금액
|
|
|
-
|
|
|
- List<Order> cancelOrderRefundList = new ArrayList<>(); // 주문환불금액목록
|
|
|
- List<Order> cancelDelvRefundList = new ArrayList<>(); // 주문환불배송금액목록
|
|
|
-
|
|
|
- Order orderObj = new Order();
|
|
|
- Order delvObj = new Order();
|
|
|
- int k = 0 ;
|
|
|
-
|
|
|
- // 2. 초기 배송정보 설정
|
|
|
- delvObj.setOrdAmt(0);
|
|
|
- delvObj.setCnclRtnAmt(0);
|
|
|
- delvObj.setRealOrdAmt(0);
|
|
|
- delvObj.setDelvFee(cnclRtnList.get(k).getDelvFee());
|
|
|
- delvObj.setDelvCpnDcAmt(cnclRtnList.get(k).getDelvCpnDcAmt());
|
|
|
- delvObj.setMinOrdAmt(cnclRtnList.get(k).getMinOrdAmt());
|
|
|
- delvObj.setOrgDelvFee(cnclRtnList.get(k).getOrgDelvFee());
|
|
|
- delvObj.setRtnDelvFee(cnclRtnList.get(k).getRtnDelvFee());
|
|
|
- delvObj.setExcDelvFee(cnclRtnList.get(k).getExcDelvFee());
|
|
|
- delvObj.setSupplyCompCd(cnclRtnList.get(k).getSupplyCompCd());
|
|
|
- delvObj.setDelvFeeCd(cnclRtnList.get(k).getDelvFeeCd());
|
|
|
- delvObj.setLastCanYn(cnclRtnList.get(k).getLastCanYn());
|
|
|
- cancelDelvRefundList.add(delvObj);
|
|
|
-
|
|
|
- // 3. 취소신청수량 정보를 취소 환불 금액 계산
|
|
|
- for (Order oneData : cnclRtnList) {
|
|
|
- orderObj = new Order();
|
|
|
-
|
|
|
- // 3.1 주문기본정보 설정
|
|
|
- orderObj.setItemQty(oneData.getItemQty());
|
|
|
- orderObj.setOrdQty(oneData.getOrdQty());
|
|
|
- orderObj.setCnclRtnQty(oneData.getCnclRtnQty());
|
|
|
- orderObj.setOrdReqChgQty(oneData.getOrdReqChgQty());
|
|
|
- orderObj.setOrdCanChgQty(oneData.getOrdCanChgQty());
|
|
|
- orderObj.setItemPrice(oneData.getItemPrice());
|
|
|
- orderObj.setOptAddPrice (oneData.getOptAddPrice());
|
|
|
- orderObj.setOrdAmt(oneData.getOrdAmt());
|
|
|
-
|
|
|
- orderObj.setOrdNo(oneData.getOrdNo());
|
|
|
- orderObj.setOrdDtlNo(oneData.getOrdDtlNo());
|
|
|
- orderObj.setGoodsCd(oneData.getGoodsCd());
|
|
|
- orderObj.setGoodsNm(oneData.getGoodsNm());
|
|
|
- orderObj.setOrdDtlItemSq(oneData.getOrdDtlItemSq());
|
|
|
- orderObj.setItemCd(oneData.getItemCd());
|
|
|
- orderObj.setItemNm(oneData.getItemNm());
|
|
|
- orderObj.setOptCd1(oneData.getOptCd1());
|
|
|
- orderObj.setOptCd2(oneData.getOptCd2());
|
|
|
-
|
|
|
- // 3.2 주문취소수량으로 취소율 정보 설정
|
|
|
- int ordQty = oneData.getOrdQty();
|
|
|
- int itemQty = oneData.getItemQty();
|
|
|
- int ordCanChgQty = oneData.getOrdCanChgQty();
|
|
|
- int cnclRtnQty = oneData.getCnclRtnQty();
|
|
|
-
|
|
|
- float _appQty = (float)ordCanChgQty / (float)(ordQty - cnclRtnQty);
|
|
|
-
|
|
|
- // 3.3 주문취소금액 & 취소할인금액 계산
|
|
|
- orderObj.setOrgCnclRtnAmt(oneData.getCnclRtnAmt());
|
|
|
- orderObj.setCnclRtnAmt(((oneData.getItemPrice() + oneData.getOptAddPrice()) * itemQty) * ordCanChgQty);
|
|
|
- orderObj.setCpn1DcAmt((int)(oneData.getCpn1DcAmt() * _appQty));
|
|
|
- orderObj.setTmtb1DcAmt((int)(oneData.getTmtb1DcAmt() * _appQty));
|
|
|
- orderObj.setTmtb2DcAmt((int)(oneData.getTmtb2DcAmt() * _appQty));
|
|
|
- orderObj.setGoodsCpnDcAmt((int)(oneData.getGoodsCpnDcAmt() * _appQty));
|
|
|
- orderObj.setCartCpnDcAmt((int)(oneData.getCartCpnDcAmt() * _appQty));
|
|
|
- orderObj.setPntDcAmt((int)(oneData.getPntDcAmt() * _appQty));
|
|
|
- orderObj.setPrePntDcAmt((int)(oneData.getPrePntDcAmt() * _appQty));
|
|
|
- orderObj.setSavePntAmt((int)(oneData.getSavePntAmt() * _appQty));
|
|
|
- orderObj.setGfcdUseAmt((int)(oneData.getGfcdUseAmt() * _appQty));
|
|
|
-
|
|
|
- // 3.4 취소할인합계금액 적용
|
|
|
- int dcTotAmt = 0;
|
|
|
- dcTotAmt += orderObj.getTmtb1DcAmt();
|
|
|
- dcTotAmt += orderObj.getTmtb2DcAmt();
|
|
|
- dcTotAmt += orderObj.getGoodsCpnDcAmt();
|
|
|
- dcTotAmt += orderObj.getCartCpnDcAmt();
|
|
|
- dcTotAmt += orderObj.getPntDcAmt();
|
|
|
- dcTotAmt += orderObj.getPrePntDcAmt();
|
|
|
- dcTotAmt += orderObj.getCpn1DcAmt();
|
|
|
- dcTotAmt += orderObj.getGfcdUseAmt();
|
|
|
-
|
|
|
- // 3.5 주문취소환불금액 계산
|
|
|
- orderObj.setRealOrdAmt(orderObj.getCnclRtnAmt() - dcTotAmt);
|
|
|
-
|
|
|
- // 3.6 배송정보 관련 설정
|
|
|
- orderObj.setOrdDtlNo(oneData.getOrdDtlNo());
|
|
|
- orderObj.setGoodsTypeNm(oneData.getGoodsTypeNm());
|
|
|
- orderObj.setDelvFee(oneData.getDelvFee());
|
|
|
- orderObj.setDelvCpnDcAmt(oneData.getDelvCpnDcAmt());
|
|
|
- orderObj.setSupplyCompCd(oneData.getSupplyCompCd());
|
|
|
- orderObj.setDelvFeeCd(oneData.getDelvFeeCd());
|
|
|
- orderObj.setMinOrdAmt(oneData.getMinOrdAmt());
|
|
|
- orderObj.setOrgDelvFee(oneData.getOrgDelvFee());
|
|
|
- orderObj.setRtnDelvFee(oneData.getRtnDelvFee());
|
|
|
- orderObj.setExcDelvFee(oneData.getExcDelvFee());
|
|
|
-
|
|
|
- // 3.7 주문상세상태체크
|
|
|
- orderObj.setOrdDtlStat(oneData.getOrdDtlStat());
|
|
|
- orderObj.setOrdDtlStatNm(oneData.getOrdDtlStatNm());
|
|
|
- orderObj.setLastCanYn(oneData.getLastCanYn()); // 전체취소 여부 (기존의 취소 또는 출고, 반품, 교환 의 경우에는 전체취소 불가능)
|
|
|
- orderObj.setDelvYn(oneData.getDelvYn());
|
|
|
-
|
|
|
- cancelOrderRefundList.add(orderObj);
|
|
|
-
|
|
|
- // 3.8 배송비정책 조건으로 추가 배송비 금액 설정
|
|
|
- if (cancelDelvRefundList.get(k).getDelvFeeCd().equals(orderObj.getDelvFeeCd())) {
|
|
|
- // 공급업체 와 배송정책코드가 같으면 주문금액, 취소금액 SUM
|
|
|
- cancelDelvRefundList.get(k).setOrdAmt(cancelDelvRefundList.get(k).getOrdAmt() + orderObj.getOrdAmt());
|
|
|
- cancelDelvRefundList.get(k).setCnclRtnAmt(cancelDelvRefundList.get(k).getCnclRtnAmt() + orderObj.getCnclRtnAmt());
|
|
|
- cancelDelvRefundList.get(k).setOrgCnclRtnAmt(cancelDelvRefundList.get(k).getOrgCnclRtnAmt() + orderObj.getOrgCnclRtnAmt());
|
|
|
- cancelDelvRefundList.get(k).setRealOrdAmt(cancelDelvRefundList.get(k).getRealOrdAmt() + orderObj.getRealOrdAmt());
|
|
|
-
|
|
|
- // 2021.01.25 TB_REFUND 정보 등록을 위해서 분리 작업
|
|
|
- cancelDelvRefundList.get(k).setPntDcAmt(cancelDelvRefundList.get(k).getPntDcAmt() + orderObj.getPntDcAmt());
|
|
|
- cancelDelvRefundList.get(k).setPrePntDcAmt(cancelDelvRefundList.get(k).getPrePntDcAmt() + orderObj.getPrePntDcAmt());
|
|
|
- cancelDelvRefundList.get(k).setCpn1DcAmt(cancelDelvRefundList.get(k).getCpn1DcAmt() + orderObj.getCpn1DcAmt());
|
|
|
- cancelDelvRefundList.get(k).setGoodsCpnDcAmt(cancelDelvRefundList.get(k).getGoodsCpnDcAmt() + orderObj.getGoodsCpnDcAmt());
|
|
|
- cancelDelvRefundList.get(k).setCartCpnDcAmt(cancelDelvRefundList.get(k).getCartCpnDcAmt() + orderObj.getCartCpnDcAmt());
|
|
|
- cancelDelvRefundList.get(k).setTmtb1DcAmt(cancelDelvRefundList.get(k).getTmtb1DcAmt() + orderObj.getTmtb1DcAmt());
|
|
|
- cancelDelvRefundList.get(k).setTmtb2DcAmt(cancelDelvRefundList.get(k).getTmtb2DcAmt() + orderObj.getTmtb2DcAmt());
|
|
|
- cancelDelvRefundList.get(k).setGfcdAmt(cancelDelvRefundList.get(k).getGfcdAmt() + orderObj.getGfcdUseAmt());
|
|
|
-
|
|
|
- if ("Y".equals(orderObj.getDelvYn())) {
|
|
|
- cancelDelvRefundList.get(k).setDelvYn(orderObj.getDelvYn());
|
|
|
- }
|
|
|
-
|
|
|
- if ("N".equals(orderObj.getLastCanYn())) {
|
|
|
- cancelDelvRefundList.get(k).setLastCanYn("N");
|
|
|
- }
|
|
|
- } else {
|
|
|
- k++;
|
|
|
-
|
|
|
- delvObj = new Order();
|
|
|
-
|
|
|
- // 공급업체 와 배송정책코드가 같지안으면 주문금액, 취소금액 RESET
|
|
|
- delvObj.setOrdAmt(orderObj.getOrdAmt());
|
|
|
- delvObj.setCnclRtnAmt(orderObj.getCnclRtnAmt());
|
|
|
- delvObj.setOrgCnclRtnAmt(orderObj.getOrgCnclRtnAmt());
|
|
|
- delvObj.setRealOrdAmt(orderObj.getRealOrdAmt());
|
|
|
-
|
|
|
- // 2021.01.25 TB_REFUND 정보 등록을 위해서 분리 작업
|
|
|
- delvObj.setPntDcAmt(orderObj.getPntDcAmt());
|
|
|
- delvObj.setPrePntDcAmt(orderObj.getPrePntDcAmt());
|
|
|
- delvObj.setCpn1DcAmt(orderObj.getCpn1DcAmt());
|
|
|
- delvObj.setGoodsCpnDcAmt(orderObj.getGoodsCpnDcAmt());
|
|
|
- delvObj.setCartCpnDcAmt(orderObj.getCartCpnDcAmt());
|
|
|
- delvObj.setDelvCpnDcAmt(orderObj.getDelvCpnDcAmt());
|
|
|
- delvObj.setTmtb1DcAmt(orderObj.getTmtb1DcAmt());
|
|
|
- delvObj.setTmtb2DcAmt(orderObj.getTmtb2DcAmt());
|
|
|
- delvObj.setGfcdAmt(orderObj.getGfcdUseAmt());
|
|
|
-
|
|
|
- delvObj.setDelvFee(orderObj.getDelvFee());
|
|
|
- delvObj.setMinOrdAmt(orderObj.getMinOrdAmt());
|
|
|
- delvObj.setOrgDelvFee(orderObj.getOrgDelvFee());
|
|
|
- delvObj.setRtnDelvFee(orderObj.getRtnDelvFee());
|
|
|
- delvObj.setExcDelvFee(orderObj.getExcDelvFee());
|
|
|
- delvObj.setSupplyCompCd(orderObj.getSupplyCompCd());
|
|
|
- delvObj.setDelvFeeCd(orderObj.getDelvFeeCd());
|
|
|
- // delvObj.setAllCanYn(orderObj.getAllCanYn());
|
|
|
- delvObj.setLastCanYn(orderObj.getLastCanYn());
|
|
|
- delvObj.setDelvYn(orderObj.getDelvYn());
|
|
|
-
|
|
|
- cancelDelvRefundList.add(delvObj);
|
|
|
- }
|
|
|
-
|
|
|
- // 3.9 FRONT 화면에서 사용 하는 변수 값 설정 & 계산
|
|
|
- spanSumRealOrdAmt += oneData.getRealOrdAmt();
|
|
|
- spanPntDcAmt += orderObj.getPntDcAmt();
|
|
|
- spanPrePntDcAmt += orderObj.getPrePntDcAmt();
|
|
|
- spanCpn1DcAmt += orderObj.getCpn1DcAmt();
|
|
|
- spanGoodsCpnDcAmt += orderObj.getGoodsCpnDcAmt();
|
|
|
- spanCartCpnDcAmt += orderObj.getCartCpnDcAmt();
|
|
|
- spanTmtb1DcAmt += orderObj.getTmtb1DcAmt();
|
|
|
- spanTmtb2DcAmt += orderObj.getTmtb2DcAmt();
|
|
|
- spanGfcdUseAmt += orderObj.getGfcdUseAmt();
|
|
|
- spanRealCnclRtnAmt += orderObj.getRealOrdAmt();
|
|
|
- }
|
|
|
-
|
|
|
- // 4. 추가배송비 발생여부, 추가배송비, 배송비정책단위 전체취소 여부 체크
|
|
|
- for (int i=0 ; i<cancelDelvRefundList.size() ; i++) {
|
|
|
- Order obj = cancelDelvRefundList.get(i);
|
|
|
-
|
|
|
- // 주문금액 - 기취소 금액 - 취소요청금액
|
|
|
- int leftOrdAmt = (obj.getOrdAmt() + obj.getCpn1DcAmt()) - obj.getOrgCnclRtnAmt() - obj.getCnclRtnAmt();
|
|
|
-
|
|
|
- // 취소금액이 있을때 처리
|
|
|
- if (obj.getCnclRtnAmt() > 0) {
|
|
|
- // 4.1 무료배송비용 > (주문금액 - 취소금액)
|
|
|
- if (obj.getMinOrdAmt() > leftOrdAmt) {
|
|
|
- // 4.2 주문시 배송비가 존재하면 추가 배송비 없음
|
|
|
- if (obj.getDelvFee() > 0) {
|
|
|
- obj.setAddDelvFeeYn("N");
|
|
|
- obj.setAddDelvFee(0);
|
|
|
-
|
|
|
- // 4.2.1 전체취소시 배송비 환불
|
|
|
- if (leftOrdAmt == 0) {
|
|
|
- // if ("Y".equals(obj.getAllCanYn())) {
|
|
|
- if ("Y".equals(obj.getLastCanYn())) {
|
|
|
- sumDeliveryFee += obj.getDelvFee(); // 전체취소시 배송금액도 같이 환불
|
|
|
- spanRefundDelvCpnAmt += obj.getDelvCpnDcAmt(); // 전체취소시 배송비쿠폰 금액 제외하고 환불
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- // 4.3 주문금액 - 취소금액 == 0 이면 전체취소 이므로 배송비 발생 안함
|
|
|
- // * 2020.12.28
|
|
|
- // * case : 배송정책 기준으로 1,2 상품 주문 후 1번 출고 후 1번반품 2번취소 할 경우 전체 취소 가 아니므로 배송비 부과 있을지 모르겠음 주문업체 단위로 배송되기 때문에 발생하지 않을것 같음
|
|
|
- if (leftOrdAmt == 0) {
|
|
|
- // 2021.03.29 delvFeeCd별 기존 출고 여부 확인
|
|
|
- if("N".equals(obj.getDelvYn())) {
|
|
|
- // 전체 취소 여부
|
|
|
- // if ("N".equals(obj.getAllCanYn())) {
|
|
|
- if ("N".equals(obj.getLastCanYn())) {
|
|
|
- obj.setAddDelvFeeYn("Y");
|
|
|
- } else {
|
|
|
- obj.setAddDelvFeeYn("N");
|
|
|
- }
|
|
|
- // 취소는 주문 금액 - 취소 금액이 0이면 취소는 추가배송비 여부가 없음.
|
|
|
- obj.setAddDelvFee(0);
|
|
|
- } else {
|
|
|
- // if ("N".equals(obj.getAllCanYn())) {
|
|
|
- if ("N".equals(obj.getLastCanYn())) {
|
|
|
- obj.setAddDelvFeeYn("Y");
|
|
|
- obj.setAddDelvFee(obj.getOrgDelvFee());
|
|
|
- } else {
|
|
|
- // 4.4 전체취소의 경우에 해당
|
|
|
- obj.setAddDelvFeeYn("N");
|
|
|
- obj.setAddDelvFee(0);
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- // 4.5 추가배송비 발생 (취소신청화면에서 대부분 아래의 조건에 해당)
|
|
|
- obj.setAddDelvFeeYn("Y");
|
|
|
- obj.setAddDelvFee(obj.getOrgDelvFee());
|
|
|
- }
|
|
|
- }
|
|
|
- } else {
|
|
|
- obj.setAddDelvFeeYn("N");
|
|
|
- obj.setAddDelvFee(0);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- spanSumDeliveryFee += obj.getDelvFee();
|
|
|
- spanDelvCpnDcAmt += obj.getDelvCpnDcAmt();
|
|
|
- spanRtnSumDeliveryFee += obj.getRtnDelvFee();
|
|
|
- spanExcSumDeliveryFee += obj.getExcDelvFee();
|
|
|
- spanOrdAmt += obj.getOrdAmt();
|
|
|
- spanCnclRtnAmt += obj.getCnclRtnAmt();
|
|
|
- spanTotDeliveryFee += obj.getAddDelvFee();
|
|
|
-
|
|
|
- cancelDelvRefundList.set(i, obj);
|
|
|
- }
|
|
|
- // 5. FRONT 화면엣 필요한 금액 설정
|
|
|
- // 2020.12.30 프론트에서 필요한 부분 작업 필여
|
|
|
- // 관리자 화면에서 사용하는 환불 칼럼 정보
|
|
|
- // 환불금액표시
|
|
|
- // 2021.05.18 배송비쿠폰 사용금액 제외 후 환불금액 계산 처리
|
|
|
- spanPayAmt = spanSumRealOrdAmt + spanSumDeliveryFee - spanDelvCpnDcAmt;
|
|
|
- spanTotPntDcAmt = spanPntDcAmt + spanPrePntDcAmt;
|
|
|
- spanCpnDcAmt = spanCpn1DcAmt + spanGoodsCpnDcAmt + spanCartCpnDcAmt + spanRefundDelvCpnAmt;
|
|
|
- spanTmtbDcAmt = spanTmtb1DcAmt + spanTmtb2DcAmt;
|
|
|
- spanRefundAmt = (spanRealCnclRtnAmt + sumDeliveryFee) - spanRefundDelvCpnAmt - spanTotDeliveryFee;
|
|
|
-
|
|
|
- mav.set("cnclRtnList" , cnclRtnList); //주문 취소 신청 목록
|
|
|
- mav.set("cancelOrderRefundList" , cancelOrderRefundList); //주문 환불 금액 목록
|
|
|
- mav.set("cancelDelvRefundList" , cancelDelvRefundList); //주문 환불 배송 금액 목록
|
|
|
- mav.set("spanPayAmt" , spanPayAmt); //총 결제 금액
|
|
|
- mav.set("spanSumRealOrdAmt" , spanSumRealOrdAmt); //상품 실결제 금액
|
|
|
- mav.set("spanSumDeliveryFee" , spanSumDeliveryFee); //배송금액
|
|
|
- mav.set("spanOrdAmt" , spanOrdAmt); //주문 상품 금액
|
|
|
- mav.set("spanCnclRtnAmt" , spanCnclRtnAmt); //취소 상품 금액
|
|
|
- mav.set("spanTotPntDcAmt" , spanTotPntDcAmt); //취소 사용 포인트
|
|
|
- mav.set("spanPntDcAmt" , spanPntDcAmt); //고객 포인트
|
|
|
- mav.set("spanPrePntDcAmt" , spanPrePntDcAmt); //상품 선포인트
|
|
|
- mav.set("spanCpnDcAmt" , spanCpnDcAmt); //취소 사용 쿠폰금액
|
|
|
- mav.set("spanCpn1DcAmt" , spanCpn1DcAmt); //즉시할인쿠폰
|
|
|
- mav.set("spanGoodsCpnDcAmt" , spanGoodsCpnDcAmt); //상품쿠폰
|
|
|
- mav.set("spanCartCpnDcAmt" , spanCartCpnDcAmt); //장바구니쿠폰
|
|
|
- mav.set("spanDelvCpnDcAmt" , spanDelvCpnDcAmt); //배송비쿠폰
|
|
|
- mav.set("spanTmtbDcAmt" , spanTmtbDcAmt); //취소 다다익선 금액
|
|
|
- mav.set("spanTmtb1DcAmt" , spanTmtb1DcAmt); //수량할인
|
|
|
- mav.set("spanTmtb2DcAmt" , spanTmtb2DcAmt); //금액할인
|
|
|
- mav.set("spanGfcdUseAmt" , spanGfcdUseAmt); //취소 고객 상품권 금액
|
|
|
- mav.set("spanRealCnclRtnAmt" , spanRealCnclRtnAmt); //취소 상품 실결제 금액
|
|
|
- mav.set("sumDeliveryFee" , sumDeliveryFee); //배송비 합계 금액
|
|
|
- mav.set("spanTotDeliveryFee" , spanTotDeliveryFee); //추가 배송 금액
|
|
|
- mav.set("spanTotRtnDelvFee" , spanRtnSumDeliveryFee); //추가 반품 배송 금액
|
|
|
- mav.set("spanTotExcDelvFee" , spanExcSumDeliveryFee); //추가 교환 배송 금액
|
|
|
- mav.set("spanRefundAmt" , spanRefundAmt); //환불 금액 합계
|
|
|
-
|
|
|
- return mav;
|
|
|
- }
|
|
|
+ // public GagaMap cnclRtnRefundAmt(List<Order> cnclRtnList) {
|
|
|
+ // GagaMap mav = new GagaMap();
|
|
|
+ //
|
|
|
+ // // 1. 변수설정
|
|
|
+ // int spanPayAmt = 0; // 총 결제 금액
|
|
|
+ // int spanSumRealOrdAmt = 0; // 상품 실결제 금액
|
|
|
+ // int spanSumDeliveryFee = 0; // 배송금액
|
|
|
+ // int spanRtnSumDeliveryFee = 0; // 반품배송금액
|
|
|
+ // int spanExcSumDeliveryFee = 0; // 교환배송금액
|
|
|
+ // int spanOrdAmt = 0; // 주문 상품 금액
|
|
|
+ // int spanCnclRtnAmt = 0; // 취소 상품 금액
|
|
|
+ // int spanTotPntDcAmt = 0; // 취소 사용 포인트
|
|
|
+ // int spanPntDcAmt = 0; // 고객 포인트
|
|
|
+ // int spanPrePntDcAmt = 0; // 상품 선포인트
|
|
|
+ // int spanCpnDcAmt = 0; // 취소 사용 쿠폰금액
|
|
|
+ // int spanCpn1DcAmt = 0; // 즉시할인쿠폰
|
|
|
+ // int spanGoodsCpnDcAmt = 0; // 상품쿠폰
|
|
|
+ // int spanCartCpnDcAmt = 0; // 장바구니쿠폰
|
|
|
+ // int spanDelvCpnDcAmt = 0; // 배송비쿠폰
|
|
|
+ // int spanRefundDelvCpnAmt = 0; // 배송비쿠폰 환불 금액
|
|
|
+ // int spanTmtbDcAmt = 0; // 취소 다다익선 금액
|
|
|
+ // int spanTmtb1DcAmt = 0; // 수량할인
|
|
|
+ // int spanTmtb2DcAmt = 0; // 금액할인
|
|
|
+ // int spanGfcdUseAmt = 0; // 취소 고객 상품권 금액
|
|
|
+ // int spanRealCnclRtnAmt = 0; // 취소 상품 실결제 금액
|
|
|
+ // int spanTotDeliveryFee = 0; // 환불 배송 금액
|
|
|
+ // int spanRefundAmt = 0; // 환불 금액 합계
|
|
|
+ //
|
|
|
+ // int sumDeliveryFee = 0; // 배송금액 (전체 취소시에 배송금액도 같이 환불)
|
|
|
+ //
|
|
|
+ // int cnclRtnAmt = 0; // 기취소 처리 된 금액
|
|
|
+ //
|
|
|
+ // List<Order> cancelOrderRefundList = new ArrayList<>(); // 주문환불금액목록
|
|
|
+ // List<Order> cancelDelvRefundList = new ArrayList<>(); // 주문환불배송금액목록
|
|
|
+ //
|
|
|
+ // Order orderObj = new Order();
|
|
|
+ // Order delvObj = new Order();
|
|
|
+ // int k = 0 ;
|
|
|
+ //
|
|
|
+ // // 2. 초기 배송정보 설정
|
|
|
+ // delvObj.setOrdAmt(0);
|
|
|
+ // delvObj.setCnclRtnAmt(0);
|
|
|
+ // delvObj.setRealOrdAmt(0);
|
|
|
+ // delvObj.setDelvFee(cnclRtnList.get(k).getDelvFee());
|
|
|
+ // delvObj.setDelvCpnDcAmt(cnclRtnList.get(k).getDelvCpnDcAmt());
|
|
|
+ // delvObj.setMinOrdAmt(cnclRtnList.get(k).getMinOrdAmt());
|
|
|
+ // delvObj.setOrgDelvFee(cnclRtnList.get(k).getOrgDelvFee());
|
|
|
+ // delvObj.setRtnDelvFee(cnclRtnList.get(k).getRtnDelvFee());
|
|
|
+ // delvObj.setExcDelvFee(cnclRtnList.get(k).getExcDelvFee());
|
|
|
+ // delvObj.setSupplyCompCd(cnclRtnList.get(k).getSupplyCompCd());
|
|
|
+ // delvObj.setDelvFeeCd(cnclRtnList.get(k).getDelvFeeCd());
|
|
|
+ // delvObj.setLastCanYn(cnclRtnList.get(k).getLastCanYn());
|
|
|
+ // cancelDelvRefundList.add(delvObj);
|
|
|
+ //
|
|
|
+ // // 3. 취소신청수량 정보를 취소 환불 금액 계산
|
|
|
+ // for (Order oneData : cnclRtnList) {
|
|
|
+ // orderObj = new Order();
|
|
|
+ //
|
|
|
+ // // 3.1 주문기본정보 설정
|
|
|
+ // orderObj.setItemQty(oneData.getItemQty());
|
|
|
+ // orderObj.setOrdQty(oneData.getOrdQty());
|
|
|
+ // orderObj.setCnclRtnQty(oneData.getCnclRtnQty());
|
|
|
+ // orderObj.setOrdReqChgQty(oneData.getOrdReqChgQty());
|
|
|
+ // orderObj.setOrdCanChgQty(oneData.getOrdCanChgQty());
|
|
|
+ // orderObj.setItemPrice(oneData.getItemPrice());
|
|
|
+ // orderObj.setOptAddPrice (oneData.getOptAddPrice());
|
|
|
+ // orderObj.setOrdAmt(oneData.getOrdAmt());
|
|
|
+ //
|
|
|
+ // orderObj.setOrdNo(oneData.getOrdNo());
|
|
|
+ // orderObj.setOrdDtlNo(oneData.getOrdDtlNo());
|
|
|
+ // orderObj.setGoodsCd(oneData.getGoodsCd());
|
|
|
+ // orderObj.setGoodsNm(oneData.getGoodsNm());
|
|
|
+ // orderObj.setOrdDtlItemSq(oneData.getOrdDtlItemSq());
|
|
|
+ // orderObj.setItemCd(oneData.getItemCd());
|
|
|
+ // orderObj.setItemNm(oneData.getItemNm());
|
|
|
+ // orderObj.setOptCd1(oneData.getOptCd1());
|
|
|
+ // orderObj.setOptCd2(oneData.getOptCd2());
|
|
|
+ //
|
|
|
+ // // 3.2 주문취소수량으로 취소율 정보 설정
|
|
|
+ // int ordQty = oneData.getOrdQty();
|
|
|
+ // int itemQty = oneData.getItemQty();
|
|
|
+ // int ordCanChgQty = oneData.getOrdCanChgQty();
|
|
|
+ // int cnclRtnQty = oneData.getCnclRtnQty();
|
|
|
+ //
|
|
|
+ // float _appQty = (float)ordCanChgQty / (float)(ordQty - cnclRtnQty);
|
|
|
+ //
|
|
|
+ // // 3.3 주문취소금액 & 취소할인금액 계산
|
|
|
+ // orderObj.setOrgCnclRtnAmt(oneData.getCnclRtnAmt());
|
|
|
+ // orderObj.setCnclRtnAmt(((oneData.getItemPrice() + oneData.getOptAddPrice()) * itemQty) * ordCanChgQty);
|
|
|
+ // orderObj.setCpn1DcAmt((int)(oneData.getCpn1DcAmt() * _appQty));
|
|
|
+ // orderObj.setTmtb1DcAmt((int)(oneData.getTmtb1DcAmt() * _appQty));
|
|
|
+ // orderObj.setTmtb2DcAmt((int)(oneData.getTmtb2DcAmt() * _appQty));
|
|
|
+ // orderObj.setGoodsCpnDcAmt((int)(oneData.getGoodsCpnDcAmt() * _appQty));
|
|
|
+ // orderObj.setCartCpnDcAmt((int)(oneData.getCartCpnDcAmt() * _appQty));
|
|
|
+ // orderObj.setPntDcAmt((int)(oneData.getPntDcAmt() * _appQty));
|
|
|
+ // orderObj.setPrePntDcAmt((int)(oneData.getPrePntDcAmt() * _appQty));
|
|
|
+ // orderObj.setSavePntAmt((int)(oneData.getSavePntAmt() * _appQty));
|
|
|
+ // orderObj.setGfcdUseAmt((int)(oneData.getGfcdUseAmt() * _appQty));
|
|
|
+ //
|
|
|
+ // // 3.4 취소할인합계금액 적용
|
|
|
+ // int dcTotAmt = 0;
|
|
|
+ // dcTotAmt += orderObj.getTmtb1DcAmt();
|
|
|
+ // dcTotAmt += orderObj.getTmtb2DcAmt();
|
|
|
+ // dcTotAmt += orderObj.getGoodsCpnDcAmt();
|
|
|
+ // dcTotAmt += orderObj.getCartCpnDcAmt();
|
|
|
+ // dcTotAmt += orderObj.getPntDcAmt();
|
|
|
+ // dcTotAmt += orderObj.getPrePntDcAmt();
|
|
|
+ // dcTotAmt += orderObj.getCpn1DcAmt();
|
|
|
+ // dcTotAmt += orderObj.getGfcdUseAmt();
|
|
|
+ //
|
|
|
+ // // 3.5 주문취소환불금액 계산
|
|
|
+ // orderObj.setRealOrdAmt(orderObj.getCnclRtnAmt() - dcTotAmt);
|
|
|
+ //
|
|
|
+ // // 3.6 배송정보 관련 설정
|
|
|
+ // orderObj.setOrdDtlNo(oneData.getOrdDtlNo());
|
|
|
+ // orderObj.setGoodsTypeNm(oneData.getGoodsTypeNm());
|
|
|
+ // orderObj.setDelvFee(oneData.getDelvFee());
|
|
|
+ // orderObj.setDelvCpnDcAmt(oneData.getDelvCpnDcAmt());
|
|
|
+ // orderObj.setSupplyCompCd(oneData.getSupplyCompCd());
|
|
|
+ // orderObj.setDelvFeeCd(oneData.getDelvFeeCd());
|
|
|
+ // orderObj.setMinOrdAmt(oneData.getMinOrdAmt());
|
|
|
+ // orderObj.setOrgDelvFee(oneData.getOrgDelvFee());
|
|
|
+ // orderObj.setRtnDelvFee(oneData.getRtnDelvFee());
|
|
|
+ // orderObj.setExcDelvFee(oneData.getExcDelvFee());
|
|
|
+ //
|
|
|
+ // // 3.7 주문상세상태체크
|
|
|
+ // orderObj.setOrdDtlStat(oneData.getOrdDtlStat());
|
|
|
+ // orderObj.setOrdDtlStatNm(oneData.getOrdDtlStatNm());
|
|
|
+ // orderObj.setLastCanYn(oneData.getLastCanYn()); // 전체취소 여부 (기존의 취소 또는 출고, 반품, 교환 의 경우에는 전체취소 불가능)
|
|
|
+ // orderObj.setDelvYn(oneData.getDelvYn());
|
|
|
+ //
|
|
|
+ // cancelOrderRefundList.add(orderObj);
|
|
|
+ //
|
|
|
+ // // 3.8 배송비정책 조건으로 추가 배송비 금액 설정
|
|
|
+ // if (cancelDelvRefundList.get(k).getDelvFeeCd().equals(orderObj.getDelvFeeCd())) {
|
|
|
+ // // 공급업체 와 배송정책코드가 같으면 주문금액, 취소금액 SUM
|
|
|
+ // cancelDelvRefundList.get(k).setOrdAmt(cancelDelvRefundList.get(k).getOrdAmt() + orderObj.getOrdAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setCnclRtnAmt(cancelDelvRefundList.get(k).getCnclRtnAmt() + orderObj.getCnclRtnAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setOrgCnclRtnAmt(cancelDelvRefundList.get(k).getOrgCnclRtnAmt() + orderObj.getOrgCnclRtnAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setRealOrdAmt(cancelDelvRefundList.get(k).getRealOrdAmt() + orderObj.getRealOrdAmt());
|
|
|
+ //
|
|
|
+ // // 2021.01.25 TB_REFUND 정보 등록을 위해서 분리 작업
|
|
|
+ // cancelDelvRefundList.get(k).setPntDcAmt(cancelDelvRefundList.get(k).getPntDcAmt() + orderObj.getPntDcAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setPrePntDcAmt(cancelDelvRefundList.get(k).getPrePntDcAmt() + orderObj.getPrePntDcAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setCpn1DcAmt(cancelDelvRefundList.get(k).getCpn1DcAmt() + orderObj.getCpn1DcAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setGoodsCpnDcAmt(cancelDelvRefundList.get(k).getGoodsCpnDcAmt() + orderObj.getGoodsCpnDcAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setCartCpnDcAmt(cancelDelvRefundList.get(k).getCartCpnDcAmt() + orderObj.getCartCpnDcAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setTmtb1DcAmt(cancelDelvRefundList.get(k).getTmtb1DcAmt() + orderObj.getTmtb1DcAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setTmtb2DcAmt(cancelDelvRefundList.get(k).getTmtb2DcAmt() + orderObj.getTmtb2DcAmt());
|
|
|
+ // cancelDelvRefundList.get(k).setGfcdAmt(cancelDelvRefundList.get(k).getGfcdAmt() + orderObj.getGfcdUseAmt());
|
|
|
+ //
|
|
|
+ // if ("Y".equals(orderObj.getDelvYn())) {
|
|
|
+ // cancelDelvRefundList.get(k).setDelvYn(orderObj.getDelvYn());
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // if ("N".equals(orderObj.getLastCanYn())) {
|
|
|
+ // cancelDelvRefundList.get(k).setLastCanYn("N");
|
|
|
+ // }
|
|
|
+ // } else {
|
|
|
+ // k++;
|
|
|
+ //
|
|
|
+ // delvObj = new Order();
|
|
|
+ //
|
|
|
+ // // 공급업체 와 배송정책코드가 같지안으면 주문금액, 취소금액 RESET
|
|
|
+ // delvObj.setOrdAmt(orderObj.getOrdAmt());
|
|
|
+ // delvObj.setCnclRtnAmt(orderObj.getCnclRtnAmt());
|
|
|
+ // delvObj.setOrgCnclRtnAmt(orderObj.getOrgCnclRtnAmt());
|
|
|
+ // delvObj.setRealOrdAmt(orderObj.getRealOrdAmt());
|
|
|
+ //
|
|
|
+ // // 2021.01.25 TB_REFUND 정보 등록을 위해서 분리 작업
|
|
|
+ // delvObj.setPntDcAmt(orderObj.getPntDcAmt());
|
|
|
+ // delvObj.setPrePntDcAmt(orderObj.getPrePntDcAmt());
|
|
|
+ // delvObj.setCpn1DcAmt(orderObj.getCpn1DcAmt());
|
|
|
+ // delvObj.setGoodsCpnDcAmt(orderObj.getGoodsCpnDcAmt());
|
|
|
+ // delvObj.setCartCpnDcAmt(orderObj.getCartCpnDcAmt());
|
|
|
+ // delvObj.setDelvCpnDcAmt(orderObj.getDelvCpnDcAmt());
|
|
|
+ // delvObj.setTmtb1DcAmt(orderObj.getTmtb1DcAmt());
|
|
|
+ // delvObj.setTmtb2DcAmt(orderObj.getTmtb2DcAmt());
|
|
|
+ // delvObj.setGfcdAmt(orderObj.getGfcdUseAmt());
|
|
|
+ //
|
|
|
+ // delvObj.setDelvFee(orderObj.getDelvFee());
|
|
|
+ // delvObj.setMinOrdAmt(orderObj.getMinOrdAmt());
|
|
|
+ // delvObj.setOrgDelvFee(orderObj.getOrgDelvFee());
|
|
|
+ // delvObj.setRtnDelvFee(orderObj.getRtnDelvFee());
|
|
|
+ // delvObj.setExcDelvFee(orderObj.getExcDelvFee());
|
|
|
+ // delvObj.setSupplyCompCd(orderObj.getSupplyCompCd());
|
|
|
+ // delvObj.setDelvFeeCd(orderObj.getDelvFeeCd());
|
|
|
+ // // delvObj.setAllCanYn(orderObj.getAllCanYn());
|
|
|
+ // delvObj.setLastCanYn(orderObj.getLastCanYn());
|
|
|
+ // delvObj.setDelvYn(orderObj.getDelvYn());
|
|
|
+ //
|
|
|
+ // cancelDelvRefundList.add(delvObj);
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // // 3.9 FRONT 화면에서 사용 하는 변수 값 설정 & 계산
|
|
|
+ // spanSumRealOrdAmt += oneData.getRealOrdAmt();
|
|
|
+ // spanPntDcAmt += orderObj.getPntDcAmt();
|
|
|
+ // spanPrePntDcAmt += orderObj.getPrePntDcAmt();
|
|
|
+ // spanCpn1DcAmt += orderObj.getCpn1DcAmt();
|
|
|
+ // spanGoodsCpnDcAmt += orderObj.getGoodsCpnDcAmt();
|
|
|
+ // spanCartCpnDcAmt += orderObj.getCartCpnDcAmt();
|
|
|
+ // spanTmtb1DcAmt += orderObj.getTmtb1DcAmt();
|
|
|
+ // spanTmtb2DcAmt += orderObj.getTmtb2DcAmt();
|
|
|
+ // spanGfcdUseAmt += orderObj.getGfcdUseAmt();
|
|
|
+ // spanRealCnclRtnAmt += orderObj.getRealOrdAmt();
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // // 4. 추가배송비 발생여부, 추가배송비, 배송비정책단위 전체취소 여부 체크
|
|
|
+ // for (int i=0 ; i<cancelDelvRefundList.size() ; i++) {
|
|
|
+ // Order obj = cancelDelvRefundList.get(i);
|
|
|
+ //
|
|
|
+ // // 주문금액 - 기취소 금액 - 취소요청금액
|
|
|
+ // int leftOrdAmt = (obj.getOrdAmt() + obj.getCpn1DcAmt()) - obj.getOrgCnclRtnAmt() - obj.getCnclRtnAmt();
|
|
|
+ //
|
|
|
+ // // 취소금액이 있을때 처리
|
|
|
+ // if (obj.getCnclRtnAmt() > 0) {
|
|
|
+ // // 4.1 무료배송비용 > (주문금액 - 취소금액)
|
|
|
+ // if (obj.getMinOrdAmt() > leftOrdAmt) {
|
|
|
+ // // 4.2 주문시 배송비가 존재하면 추가 배송비 없음
|
|
|
+ // if (obj.getDelvFee() > 0) {
|
|
|
+ // obj.setAddDelvFeeYn("N");
|
|
|
+ // obj.setAddDelvFee(0);
|
|
|
+ //
|
|
|
+ // // 4.2.1 전체취소시 배송비 환불
|
|
|
+ // if (leftOrdAmt == 0) {
|
|
|
+ // // if ("Y".equals(obj.getAllCanYn())) {
|
|
|
+ // if ("Y".equals(obj.getLastCanYn())) {
|
|
|
+ // sumDeliveryFee += obj.getDelvFee(); // 전체취소시 배송금액도 같이 환불
|
|
|
+ // spanRefundDelvCpnAmt += obj.getDelvCpnDcAmt(); // 전체취소시 배송비쿠폰 금액 제외하고 환불
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // } else {
|
|
|
+ // // 4.3 주문금액 - 취소금액 == 0 이면 전체취소 이므로 배송비 발생 안함
|
|
|
+ // // * 2020.12.28
|
|
|
+ // // * case : 배송정책 기준으로 1,2 상품 주문 후 1번 출고 후 1번반품 2번취소 할 경우 전체 취소 가 아니므로 배송비 부과 있을지 모르겠음 주문업체 단위로 배송되기 때문에 발생하지 않을것 같음
|
|
|
+ // if (leftOrdAmt == 0) {
|
|
|
+ // // 2021.03.29 delvFeeCd별 기존 출고 여부 확인
|
|
|
+ // if("N".equals(obj.getDelvYn())) {
|
|
|
+ // // 전체 취소 여부
|
|
|
+ // // if ("N".equals(obj.getAllCanYn())) {
|
|
|
+ // if ("N".equals(obj.getLastCanYn())) {
|
|
|
+ // obj.setAddDelvFeeYn("Y");
|
|
|
+ // } else {
|
|
|
+ // obj.setAddDelvFeeYn("N");
|
|
|
+ // }
|
|
|
+ // // 취소는 주문 금액 - 취소 금액이 0이면 취소는 추가배송비 여부가 없음.
|
|
|
+ // obj.setAddDelvFee(0);
|
|
|
+ // } else {
|
|
|
+ // // if ("N".equals(obj.getAllCanYn())) {
|
|
|
+ // if ("N".equals(obj.getLastCanYn())) {
|
|
|
+ // obj.setAddDelvFeeYn("Y");
|
|
|
+ // obj.setAddDelvFee(obj.getOrgDelvFee());
|
|
|
+ // } else {
|
|
|
+ // // 4.4 전체취소의 경우에 해당
|
|
|
+ // obj.setAddDelvFeeYn("N");
|
|
|
+ // obj.setAddDelvFee(0);
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // } else {
|
|
|
+ // // 4.5 추가배송비 발생 (취소신청화면에서 대부분 아래의 조건에 해당)
|
|
|
+ // obj.setAddDelvFeeYn("Y");
|
|
|
+ // obj.setAddDelvFee(obj.getOrgDelvFee());
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // } else {
|
|
|
+ // obj.setAddDelvFeeYn("N");
|
|
|
+ // obj.setAddDelvFee(0);
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // spanSumDeliveryFee += obj.getDelvFee();
|
|
|
+ // spanDelvCpnDcAmt += obj.getDelvCpnDcAmt();
|
|
|
+ // spanRtnSumDeliveryFee += obj.getRtnDelvFee();
|
|
|
+ // spanExcSumDeliveryFee += obj.getExcDelvFee();
|
|
|
+ // spanOrdAmt += obj.getOrdAmt();
|
|
|
+ // spanCnclRtnAmt += obj.getCnclRtnAmt();
|
|
|
+ // spanTotDeliveryFee += obj.getAddDelvFee();
|
|
|
+ //
|
|
|
+ // cancelDelvRefundList.set(i, obj);
|
|
|
+ // }
|
|
|
+ // // 5. FRONT 화면엣 필요한 금액 설정
|
|
|
+ // // 2020.12.30 프론트에서 필요한 부분 작업 필여
|
|
|
+ // // 관리자 화면에서 사용하는 환불 칼럼 정보
|
|
|
+ // // 환불금액표시
|
|
|
+ // // 2021.05.18 배송비쿠폰 사용금액 제외 후 환불금액 계산 처리
|
|
|
+ // spanPayAmt = spanSumRealOrdAmt + spanSumDeliveryFee - spanDelvCpnDcAmt;
|
|
|
+ // spanTotPntDcAmt = spanPntDcAmt + spanPrePntDcAmt;
|
|
|
+ // spanCpnDcAmt = spanCpn1DcAmt + spanGoodsCpnDcAmt + spanCartCpnDcAmt + spanRefundDelvCpnAmt;
|
|
|
+ // spanTmtbDcAmt = spanTmtb1DcAmt + spanTmtb2DcAmt;
|
|
|
+ // spanRefundAmt = (spanRealCnclRtnAmt + sumDeliveryFee) - spanRefundDelvCpnAmt - spanTotDeliveryFee;
|
|
|
+ //
|
|
|
+ // mav.set("cnclRtnList" , cnclRtnList); //주문 취소 신청 목록
|
|
|
+ // mav.set("cancelOrderRefundList" , cancelOrderRefundList); //주문 환불 금액 목록
|
|
|
+ // mav.set("cancelDelvRefundList" , cancelDelvRefundList); //주문 환불 배송 금액 목록
|
|
|
+ // mav.set("spanPayAmt" , spanPayAmt); //총 결제 금액
|
|
|
+ // mav.set("spanSumRealOrdAmt" , spanSumRealOrdAmt); //상품 실결제 금액
|
|
|
+ // mav.set("spanSumDeliveryFee" , spanSumDeliveryFee); //배송금액
|
|
|
+ // mav.set("spanOrdAmt" , spanOrdAmt); //주문 상품 금액
|
|
|
+ // mav.set("spanCnclRtnAmt" , spanCnclRtnAmt); //취소 상품 금액
|
|
|
+ // mav.set("spanTotPntDcAmt" , spanTotPntDcAmt); //취소 사용 포인트
|
|
|
+ // mav.set("spanPntDcAmt" , spanPntDcAmt); //고객 포인트
|
|
|
+ // mav.set("spanPrePntDcAmt" , spanPrePntDcAmt); //상품 선포인트
|
|
|
+ // mav.set("spanCpnDcAmt" , spanCpnDcAmt); //취소 사용 쿠폰금액
|
|
|
+ // mav.set("spanCpn1DcAmt" , spanCpn1DcAmt); //즉시할인쿠폰
|
|
|
+ // mav.set("spanGoodsCpnDcAmt" , spanGoodsCpnDcAmt); //상품쿠폰
|
|
|
+ // mav.set("spanCartCpnDcAmt" , spanCartCpnDcAmt); //장바구니쿠폰
|
|
|
+ // mav.set("spanDelvCpnDcAmt" , spanDelvCpnDcAmt); //배송비쿠폰
|
|
|
+ // mav.set("spanTmtbDcAmt" , spanTmtbDcAmt); //취소 다다익선 금액
|
|
|
+ // mav.set("spanTmtb1DcAmt" , spanTmtb1DcAmt); //수량할인
|
|
|
+ // mav.set("spanTmtb2DcAmt" , spanTmtb2DcAmt); //금액할인
|
|
|
+ // mav.set("spanGfcdUseAmt" , spanGfcdUseAmt); //취소 고객 상품권 금액
|
|
|
+ // mav.set("spanRealCnclRtnAmt" , spanRealCnclRtnAmt); //취소 상품 실결제 금액
|
|
|
+ // mav.set("sumDeliveryFee" , sumDeliveryFee); //배송비 합계 금액
|
|
|
+ // mav.set("spanTotDeliveryFee" , spanTotDeliveryFee); //추가 배송 금액
|
|
|
+ // mav.set("spanTotRtnDelvFee" , spanRtnSumDeliveryFee); //추가 반품 배송 금액
|
|
|
+ // mav.set("spanTotExcDelvFee" , spanExcSumDeliveryFee); //추가 교환 배송 금액
|
|
|
+ // mav.set("spanRefundAmt" , spanRefundAmt); //환불 금액 합계
|
|
|
+ //
|
|
|
+ // return mav;
|
|
|
+ // }
|
|
|
|
|
|
/**
|
|
|
* 취소,반품 환불금액 계산 (admin, front) (백업) (단품단위)
|