fix : 관리자 구독서비스 결제취소

This commit is contained in:
jazz
2026-03-13 11:45:58 +09:00
parent fa6371a099
commit 83024e46d0
3 changed files with 40 additions and 0 deletions

View File

@@ -999,6 +999,13 @@ public interface BOOrdrMapper {
* @param refundVO
*/
public void updateBOWonRefundAmt(BOOrdrRefundVO refundVO);
/**
* 결제취소 시 구독서비스 환불금액 조회
* 계산식 : 전체결제금액 - 전체배송비 - 발송및취소된(35~85)상품금액
* @param refundVO
*/
public Integer selectSubsvcRefundAmt(BOOrdrRefundVO refundVO);
}

View File

@@ -2292,9 +2292,15 @@ 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()));
Integer subsvcRefundAmt = mapper.selectSubsvcRefundAmt(refundVO);
if(subsvcRefundAmt != null){
refundVO.setRefundAmt(BigDecimal.valueOf(subsvcRefundAmt.longValue()));
}
BigDecimal useMlg = null;
// 구매총수량과 환불요청수량이 같은경우는 전체결제취소 또는 전체 환불신청
if (ordrQy == canclQy) { // TODO : 구매확정 수량으로 계산해야함. *****