Bläddra i källkod

보증보험, 현금영수증 취소 처리

card007 5 år sedan
förälder
incheckning
00fd491ca7

+ 6 - 6
src/main/java/com/style24/core/biz/service/TscKcpService.java

@@ -429,7 +429,10 @@ public class TscKcpService {
 	 * param.setModType("STSQ");	// 요청 구분 (STSQ : 조회, STSC : 전체취소, STPC : 부분취소) >> 조회는 사용 안함 > result 안받음. 사용시 result 추가활것.
 	 * param.setOrdNo(100);			// 주문번호
 	 * param.setUsGfcdAmt(3000);	// 취소 요청 금액
-	 *
+	 * param.getAmt(30000);			// 잔여금액
+	 * param.getTradeNo();			// 현금영수증 거래번호
+	 * param.getTradeTime();		// 거래일시
+	 * 
 	 * @param GiftCard
 	 * @author xodud1202
 	 * @since 2021. 04. 23
@@ -486,11 +489,8 @@ public class TscKcpService {
 				result.setTradeNo(c_PayPlus.mf_get_res("cash_no"));
 				result.setAuthNo(c_PayPlus.mf_get_res("receipt_no"));
 
-				// 상품권 현금영수증 취소 시 금액 업데이트 처리
-				if ("giftCard".equals(param.getCashReceiptsGb())) {
-					// 성공시 TB_GIFTCARD_RECEIPT AMT UPDATE
-					orderDao.updateGiftCardReceipt(result);
-				}
+				// 성공시 TB_GIFTCARD_RECEIPT AMT UPDATE
+				orderDao.updateGiftCardReceipt(result);
 			}
 
 			// 성공이든 실패이든 로그성 데이터 TB_GIFTCARD_RECEIPT_API INSERT

+ 18 - 46
src/main/java/com/style24/core/biz/service/TscOrderChangeService.java

@@ -371,8 +371,7 @@ public class TscOrderChangeService {
 
 						if (StringUtils.isNotBlank(giftCardCashReceipts.getTradeNo())) {
 							giftCardCashReceipts.setModType("STPC");
-							giftCardCashReceipts.setCashReceiptsGb("giftCard");
-							giftCardCashReceipts.setUsGfcdAmt(gfcdUseAmt);
+							giftCardCashReceipts.setUsGfcdAmt(vo.getGfcdUseAmt());
 							
 							cashReceiptsList.add(giftCardCashReceipts);
 						}
@@ -505,16 +504,6 @@ 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);
-				}
 			}
 		}
 
@@ -585,7 +574,7 @@ public class TscOrderChangeService {
 			orderChangeDao.updateRefundInfo(refundOrder);
 		}
 		
-		// 7. 현금영수증 취소 처리
+		// 8. 현금영수증 취소 처리
 		for (GiftCard cashReceipts : cashReceiptsList) {
 			kcpService.kcpCashReceiptCancel(cashReceipts);
 		}
@@ -2304,18 +2293,7 @@ public class TscOrderChangeService {
 			orderChangeDao.updateCustGiftCardRollback(giftCard);
 		}
 
-		// 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. 상품재고원복 (품절취소가 아닐 경우)
+		// 5. 상품재고원복 (품절취소가 아닐 경우)
 		if(!TscConstants.OrderCancelReason.SOLDOUT_CANCEL.value().equals(chgReason)) {
 			OrderChange sellQty = new OrderChange();
 			sellQty.setOrdChgSq(orderChangeDetail.getOrdChgSq());
@@ -2324,7 +2302,7 @@ public class TscOrderChangeService {
 			orderChangeDao.createSellQty(sellQty);
 		}
 
-		// 7. 쿠폰 원복처리
+		// 6. 쿠폰 원복처리
 		Order coupon = new Order();
 		coupon.setOrdNo(ordNo);
 		coupon.setUpdNo(updNo);
@@ -2332,13 +2310,13 @@ public class TscOrderChangeService {
 		orderChangeDao.updateCartCpnRollback(coupon);
 		orderChangeDao.updateDeliveryCpnRollback(coupon);
 
-		// 8. 사은품 전체 취소 (전체취소시 적용) 추후 사은품 관련 취소 로직 개발 예정
+		// 7. 사은품 전체 취소 (전체취소시 적용) 추후 사은품 관련 취소 로직 개발 예정
 		Order freegiftOrder = new Order();
 		freegiftOrder.setOrdNo(ordNo);
 		freegiftOrder.setUpdNo(updNo);
 		orderChangeDao.updateOrdFreegiftDel(freegiftOrder);
 
-		// 9. 주문상세 및 주문상세단품 정보 설정
+		// 8. 주문상세 및 주문상세단품 정보 설정
 		OrderChange orderDetail = new OrderChange();
 		orderDetail.setOrdNo(ordNo);
 		orderDetail.setOrdDtlStat(ordDtlStat);
@@ -2353,7 +2331,7 @@ public class TscOrderChangeService {
 		orderChangeDao.updateOrderDetailItemForAllCancel(orderDetail);
 		orderChangeDao.createOrderDetailItemHstForAllCancel(orderDetail);
 		
-		// 10. WMS 취소 처리
+		// 9. WMS 취소 처리
 		List<Order> wmsList = new ArrayList<>();
 		if(orderChange.getOrdDtlNoArr() != null && orderChange.getOrdDtlNoArr().length > 0) {
 			for (int i = 0; i < orderChange.getOrdDtlNoArr().length; i++) {
@@ -2370,7 +2348,7 @@ public class TscOrderChangeService {
 			}
 		}
 
-		// 11. 환불금액 등록
+		// 10. 환불금액 등록
 		Order refundOrder = orderChangeDao.getRefundInfoForAllCancel(vo);
 		refundOrder.setOrdNo(ordNo);
 		refundOrder.setPaySq(0);
@@ -2384,18 +2362,7 @@ public class TscOrderChangeService {
 
 		orderChangeDao.createRefund(refundOrder);
 
-		// 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 연동
+		// 11. PG 연동
 		Payment pg = new Payment();
 		pg.setOrdNo(ordNo);
 		pg.setPayGb("O");
@@ -2438,7 +2405,7 @@ public class TscOrderChangeService {
 			orderChangeDao.updateRefundInfo(refundOrder);
 		}
 
-		// 14. 보증보험 취소 처리 (무통장입금 전 전체취소 시 처리)
+		// 12. 보증보험 취소 처리 (무통장입금 전 전체취소 시 처리)
 		if (TscConstants.OrderChangeStat.PAYMENT_BEFORE_CANCEL.value().equals(chgStat)) {
 			Order guarantee = new Order();
 			guarantee.setOrdNo(ordNo);
@@ -2446,9 +2413,14 @@ public class TscOrderChangeService {
 			orderService.uSafeGuaranteePayedBeforeCancel(guarantee);
 		}
 
-		// 15. 현금영수증 취소 처리
-		for (GiftCard cashReceipts : cashReceiptsList) {
-			kcpService.kcpCashReceiptCancel(cashReceipts);
+		// 13. 상품권 현금영수증 취소 처리
+		GiftCard giftCardCashReceipts = orderDao.getGiftCardReceiptInfo(ordNo);
+
+		if (giftCardCashReceipts != null && StringUtils.isNotBlank(giftCardCashReceipts.getTradeNo())) {
+			giftCardCashReceipts.setModType("STSC");
+			giftCardCashReceipts.setUsGfcdAmt(giftCardCashReceipts.getAmt());
+
+			kcpService.kcpCashReceiptCancel(giftCardCashReceipts);
 		}
 	}