fix : 관리자 결제취소, 환불 원화추가
This commit is contained in:
@@ -2291,15 +2291,18 @@ public class BOOrdrService{
|
||||
}});
|
||||
}
|
||||
|
||||
//상품 환불금액 합산
|
||||
refundVO.setRefundAmt(BigDecimal.valueOf(refundItemList.stream().mapToInt(vo -> vo.getGoodsRefundAmt().intValue()).sum()));
|
||||
refundVO.setRefundAccmlmnyAmt(BigDecimal.valueOf(refundItemList.stream().mapToInt(vo -> vo.getSnggdsAccmlMlgAmt().intValue()).sum()));
|
||||
|
||||
BigDecimal useMlg = null;
|
||||
// 구매총수량과 환불요청수량이 같은경우는 전체결제취소 또는 전체 환불신청
|
||||
if (ordrQy == canclQy) { // TODO : 구매확정 수량으로 계산해야함. *****
|
||||
// BigDecimal의 더하기 연산은 add() 메서드를 사용
|
||||
// 마일리지 합산 + 자투리 합산
|
||||
useMlg = BigDecimal.valueOf(refundItemList.stream().mapToInt(vo -> vo.getSnggdsRefundMlgAmt().intValue()).sum())
|
||||
.add(BigDecimal.valueOf(refundItemList.stream().mapToInt(vo -> vo.getSnggdsRefundMlgRmndrAmt().intValue()).sum()));
|
||||
} else {
|
||||
// 마일리지 합산
|
||||
useMlg = BigDecimal.valueOf(refundItemList.stream().mapToInt(vo -> vo.getSnggdsRefundMlgAmt().intValue()).sum());
|
||||
}
|
||||
|
||||
@@ -2426,13 +2429,15 @@ public class BOOrdrService{
|
||||
BigDecimal addPaidDlvyAmt = new BigDecimal(0); // 유료배송 도서산간 추가 배송비 합
|
||||
BigDecimal returnPaidDlvyAmt = new BigDecimal(0); // 유료배송 반품 배송비
|
||||
|
||||
|
||||
int loopCnt = 0;
|
||||
|
||||
if (!CollectionUtils.isEmpty(dlvylcItemList)) {
|
||||
log.debug("환불 상품 목록 확인 : {}", dlvylcItemList);
|
||||
// 1. 주문 금액에서 환불 금액빼는 상품별 금액 합산 변수 선언
|
||||
// 2. 반품 배송비 변수 선언
|
||||
// 3. 왕복 배송비 변수 선언
|
||||
|
||||
/* 반품/환불 신청 인경우*/
|
||||
if (param.get("returnMthCd") != null) {
|
||||
for (DataMap shippingGrouping : dlvylcItemList) {
|
||||
log.debug("환불 상품 확인 : {}", shippingGrouping);
|
||||
@@ -2453,6 +2458,13 @@ public class BOOrdrService{
|
||||
|
||||
BigDecimal subSlepric = (BigDecimal) shippingGrouping.get("subSlepric");
|
||||
|
||||
BigDecimal realDlvyAmt = (BigDecimal) shippingGrouping.get("realDlvyAmt"); // 상품별 결제 배송비
|
||||
/*환불배송비 누적*/
|
||||
if(loopCnt == 0 ){
|
||||
rlRefundDlvyAmt = rlRefundDlvyAmt.add(realDlvyAmt);
|
||||
loopCnt++;
|
||||
}
|
||||
|
||||
if (!StringUtils.isEmpty(shippingGrouping.get("refundQy"))) {
|
||||
|
||||
Integer refundQy = Integer.parseInt(String.valueOf(shippingGrouping.get("refundQy"))); // 환불 수량
|
||||
@@ -2634,10 +2646,9 @@ public class BOOrdrService{
|
||||
// 최종 반품 배송비
|
||||
refundVO.setReturnDlvyAmt(rlReturnDlvyAmt);
|
||||
|
||||
|
||||
// 최종 환불 배송비 : 전체 환불일 경우에만 산정됨.
|
||||
log.debug(" selectBOLastRefundDlvyAmtInqire 업데이트 치기 전 refundVO:: {}", refundVO);
|
||||
rlRefundDlvyAmt = mapper.selectBOLastRefundDlvyAmtInqire(refundVO);
|
||||
// rlRefundDlvyAmt = mapper.selectBOLastRefundDlvyAmtInqire(refundVO);
|
||||
log.debug(" 환불금액이랑 반품 금액 업데이트 치기 전 rlRefundDlvyAmt:: {}", rlRefundDlvyAmt);
|
||||
refundVO.setRefundDlvyAmt(rlRefundDlvyAmt);
|
||||
log.debug(" 환불금액이랑 반품 금액 업데이트 치기 전 refundVO:: {}", refundVO);
|
||||
|
||||
Reference in New Issue
Block a user