|
|
@@ -252,6 +252,7 @@ public class TscOrderChangeService {
|
|
|
|
|
|
// 3. 주문변경정보, 주문정보, 환불정보 (배송정책코드 별)
|
|
|
List<Payment> pgList = new ArrayList<>();
|
|
|
+ List<GiftCard> cashReceiptsList = new ArrayList<>();
|
|
|
for (Order obj : cancelDelvRefundList) {
|
|
|
// 취소금액 있을 시 처리
|
|
|
if (obj.getCnclRtnAmt() > 0) {
|
|
|
@@ -365,7 +366,18 @@ public class TscOrderChangeService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- // 3-2-7. 주문변경상세정보 및 이력 등록
|
|
|
+ // 3-2-7. 상품권 현금영수증 PG 취소 정보 설정
|
|
|
+ GiftCard giftCardCashReceipts = orderDao.getGiftCardReceiptInfo(ordNo);
|
|
|
+
|
|
|
+ if (StringUtils.isNotBlank(giftCardCashReceipts.getTradeNo())) {
|
|
|
+ giftCardCashReceipts.setModType("STPC");
|
|
|
+ giftCardCashReceipts.setCashReceiptsGb("giftCard");
|
|
|
+ giftCardCashReceipts.setUsGfcdAmt(gfcdUseAmt);
|
|
|
+
|
|
|
+ cashReceiptsList.add(giftCardCashReceipts);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 3-2-8. 주문변경상세정보 및 이력 등록
|
|
|
OrderChange changeDetailPo = new OrderChange();
|
|
|
changeDetailPo.setOrdChgSq(orderChange.getOrdChgSq());
|
|
|
changeDetailPo.setOrdDtlNo(vo.getOrdDtlNo());
|
|
|
@@ -493,6 +505,16 @@ public class TscOrderChangeService {
|
|
|
|
|
|
orderChangeDao.createDeliveryFee(delvFeeOrder);
|
|
|
}
|
|
|
+
|
|
|
+ // 3-7. 주문 현금영수증 취소 정보 설정 (무통장입금 결제완료, 실시간계좌이체)
|
|
|
+ GiftCard orderCashReceipts = orderDao.getOrderCashReceiptsInfo(ordNo);
|
|
|
+ if (StringUtils.isNotBlank(orderCashReceipts.getTradeNo())) {
|
|
|
+ orderCashReceipts.setModType("STPC");
|
|
|
+ orderCashReceipts.setCashReceiptsGb("payment");
|
|
|
+ orderCashReceipts.setUsGfcdAmt(pg.getPartCancelAmt());
|
|
|
+
|
|
|
+ cashReceiptsList.add(orderCashReceipts);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -561,16 +583,11 @@ public class TscOrderChangeService {
|
|
|
refundOrder.setUpdNo(userNo);
|
|
|
|
|
|
orderChangeDao.updateRefundInfo(refundOrder);
|
|
|
-
|
|
|
- // 8. 현금영수증 취소 처리 (무통장입금 결제완료, 실시간계좌이체)
|
|
|
- if (StringUtils.isNotBlank(cashAuthNo)) {
|
|
|
- GiftCard cashReceipts = new GiftCard();
|
|
|
- cashReceipts.setModType("STPC");
|
|
|
- cashReceipts.setOrdNo(ordNo);
|
|
|
- cashReceipts.setGfcdAmt(pg.getPartCancelAmt());
|
|
|
-
|
|
|
- kcpService.kcpCashReceiptCancel(cashReceipts);
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 7. 현금영수증 취소 처리
|
|
|
+ for (GiftCard cashReceipts : cashReceiptsList) {
|
|
|
+ kcpService.kcpCashReceiptCancel(cashReceipts);
|
|
|
}
|
|
|
|
|
|
return map;
|
|
|
@@ -2203,6 +2220,7 @@ public class TscOrderChangeService {
|
|
|
}
|
|
|
|
|
|
// 1. 주문변경 및 변경상세 정보 설정
|
|
|
+ List<GiftCard> cashReceiptsList = new ArrayList<>();
|
|
|
OrderChange orderChangeDetail = new OrderChange();
|
|
|
orderChangeDetail.setOrdNo(ordNo);
|
|
|
orderChangeDetail.setChgGb(chgGb);
|
|
|
@@ -2286,7 +2304,18 @@ public class TscOrderChangeService {
|
|
|
orderChangeDao.updateCustGiftCardRollback(giftCard);
|
|
|
}
|
|
|
|
|
|
- // 5. 상품재고원복 (품절취소가 아닐 경우)
|
|
|
+ // 5. 상품권 현금영수증 PG 취소 정보 설정
|
|
|
+ GiftCard giftCardCashReceipts = orderDao.getGiftCardReceiptInfo(ordNo);
|
|
|
+
|
|
|
+ if (StringUtils.isNotBlank(giftCardCashReceipts.getTradeNo())) {
|
|
|
+ giftCardCashReceipts.setModType("STSC");
|
|
|
+ giftCardCashReceipts.setCashReceiptsGb("giftCard");
|
|
|
+ giftCardCashReceipts.setUsGfcdAmt(giftCardCashReceipts.getAmt());
|
|
|
+
|
|
|
+ cashReceiptsList.add(giftCardCashReceipts);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 6. 상품재고원복 (품절취소가 아닐 경우)
|
|
|
if(!TscConstants.OrderCancelReason.SOLDOUT_CANCEL.value().equals(chgReason)) {
|
|
|
OrderChange sellQty = new OrderChange();
|
|
|
sellQty.setOrdChgSq(orderChangeDetail.getOrdChgSq());
|
|
|
@@ -2295,7 +2324,7 @@ public class TscOrderChangeService {
|
|
|
orderChangeDao.createSellQty(sellQty);
|
|
|
}
|
|
|
|
|
|
- // 6. 쿠폰 원복처리
|
|
|
+ // 7. 쿠폰 원복처리
|
|
|
Order coupon = new Order();
|
|
|
coupon.setOrdNo(ordNo);
|
|
|
coupon.setUpdNo(updNo);
|
|
|
@@ -2303,13 +2332,13 @@ public class TscOrderChangeService {
|
|
|
orderChangeDao.updateCartCpnRollback(coupon);
|
|
|
orderChangeDao.updateDeliveryCpnRollback(coupon);
|
|
|
|
|
|
- // 7. 사은품 전체 취소 (전체취소시 적용) 추후 사은품 관련 취소 로직 개발 예정
|
|
|
+ // 8. 사은품 전체 취소 (전체취소시 적용) 추후 사은품 관련 취소 로직 개발 예정
|
|
|
Order freegiftOrder = new Order();
|
|
|
freegiftOrder.setOrdNo(ordNo);
|
|
|
freegiftOrder.setUpdNo(updNo);
|
|
|
orderChangeDao.updateOrdFreegiftDel(freegiftOrder);
|
|
|
|
|
|
- // 8. 주문상세 및 주문상세단품 정보 설정
|
|
|
+ // 9. 주문상세 및 주문상세단품 정보 설정
|
|
|
OrderChange orderDetail = new OrderChange();
|
|
|
orderDetail.setOrdNo(ordNo);
|
|
|
orderDetail.setOrdDtlStat(ordDtlStat);
|
|
|
@@ -2324,7 +2353,7 @@ public class TscOrderChangeService {
|
|
|
orderChangeDao.updateOrderDetailItemForAllCancel(orderDetail);
|
|
|
orderChangeDao.createOrderDetailItemHstForAllCancel(orderDetail);
|
|
|
|
|
|
- // 9. WMS 취소 처리
|
|
|
+ // 10. WMS 취소 처리
|
|
|
List<Order> wmsList = new ArrayList<>();
|
|
|
if(orderChange.getOrdDtlNoArr() != null && orderChange.getOrdDtlNoArr().length > 0) {
|
|
|
for (int i = 0; i < orderChange.getOrdDtlNoArr().length; i++) {
|
|
|
@@ -2341,7 +2370,7 @@ public class TscOrderChangeService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- // 10. 환불금액 등록
|
|
|
+ // 11. 환불금액 등록
|
|
|
Order refundOrder = orderChangeDao.getRefundInfoForAllCancel(vo);
|
|
|
refundOrder.setOrdNo(ordNo);
|
|
|
refundOrder.setPaySq(0);
|
|
|
@@ -2355,7 +2384,18 @@ public class TscOrderChangeService {
|
|
|
|
|
|
orderChangeDao.createRefund(refundOrder);
|
|
|
|
|
|
- // 11. PG 연동
|
|
|
+ // 12. 주문 현금영수증 취소 정보 설정 (무통장입금 결제완료, 실시간계좌이체)
|
|
|
+ GiftCard orderCashReceipts = orderDao.getOrderCashReceiptsInfo(ordNo);
|
|
|
+
|
|
|
+ if (StringUtils.isNotBlank(orderCashReceipts.getTradeNo())) {
|
|
|
+ orderCashReceipts.setModType("STSC");
|
|
|
+ orderCashReceipts.setCashReceiptsGb("payment");
|
|
|
+ orderCashReceipts.setUsGfcdAmt(orderCashReceipts.getAmt());
|
|
|
+
|
|
|
+ cashReceiptsList.add(orderCashReceipts);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 13. PG 연동
|
|
|
Payment pg = new Payment();
|
|
|
pg.setOrdNo(ordNo);
|
|
|
pg.setPayGb("O");
|
|
|
@@ -2398,7 +2438,7 @@ public class TscOrderChangeService {
|
|
|
orderChangeDao.updateRefundInfo(refundOrder);
|
|
|
}
|
|
|
|
|
|
- // 12. 보증보험 취소 처리 (무통장입금 전 전체취소 시 처리)
|
|
|
+ // 14. 보증보험 취소 처리 (무통장입금 전 전체취소 시 처리)
|
|
|
if (TscConstants.OrderChangeStat.PAYMENT_BEFORE_CANCEL.value().equals(chgStat)) {
|
|
|
Order guarantee = new Order();
|
|
|
guarantee.setOrdNo(ordNo);
|
|
|
@@ -2406,12 +2446,8 @@ public class TscOrderChangeService {
|
|
|
orderService.uSafeGuaranteePayedBeforeCancel(guarantee);
|
|
|
}
|
|
|
|
|
|
- // 13. 현금영수증 취소 처리 (무통장입금 결제완료, 실시간계좌이체)
|
|
|
- if (StringUtils.isNotBlank(payment.getCashAuthNo())) {
|
|
|
- GiftCard cashReceipts = new GiftCard();
|
|
|
- cashReceipts.setModType("STSQ");
|
|
|
- cashReceipts.setOrdNo(ordNo);
|
|
|
-
|
|
|
+ // 15. 현금영수증 취소 처리
|
|
|
+ for (GiftCard cashReceipts : cashReceiptsList) {
|
|
|
kcpService.kcpCashReceiptCancel(cashReceipts);
|
|
|
}
|
|
|
}
|