Przeglądaj źródła

[ST24PRJ-539] [결함][클레임] 취소금액 오류 19930139 수정

card007 4 lat temu
rodzic
commit
78053a39c2

+ 23 - 16
src/main/java/com/style24/core/biz/service/TscOrderChangeService.java

@@ -519,21 +519,24 @@ public class TscOrderChangeService {
 					}
 
 					// 원주문 배송비 취소 처리
-					Order cancelDelvFee = new Order();
-					cancelDelvFee.setOrdNo(ordNo);
-					cancelDelvFee.setDelvFeeGb(TscConstants.DeliveryFeeGb.ORIGIN_DELIVERY_FEE.value());
-					cancelDelvFee.setDelvFeeCd(obj.getDelvFeeCd());
-					cancelDelvFee.setDelvFee(sumDeliveryFee * -1);
-					cancelDelvFee.setDelvCpnSq(0);
-					cancelDelvFee.setDelvCpnDcAmt(spanDelvCpnDcAmt);
-					cancelDelvFee.setDelvGfcdUseAmt(spanDelvGfcdUseAmt * -1);
-					cancelDelvFee.setRealDelvAmt((delvFee - spanDelvGfcdUseAmt) * -1);
-					cancelDelvFee.setOrdChgSq(orderChange.getOrdChgSq());
-					cancelDelvFee.setSupplyCompCd(obj.getSupplyCompCd());
-					cancelDelvFee.setRegNo(userNo);
-					cancelDelvFee.setUpdNo(userNo);
-
-					orderChangeDao.createDeliveryFee(cancelDelvFee);
+					// 2021.11.16 card007 출고 이력 존재 시 원주문 배송비 환불처리 X
+					if ("N".equals(obj.getDelvYn())) {
+						Order cancelDelvFee = new Order();
+						cancelDelvFee.setOrdNo(ordNo);
+						cancelDelvFee.setDelvFeeGb(TscConstants.DeliveryFeeGb.ORIGIN_DELIVERY_FEE.value());
+						cancelDelvFee.setDelvFeeCd(obj.getDelvFeeCd());
+						cancelDelvFee.setDelvFee(sumDeliveryFee * -1);
+						cancelDelvFee.setDelvCpnSq(0);
+						cancelDelvFee.setDelvCpnDcAmt(spanDelvCpnDcAmt);
+						cancelDelvFee.setDelvGfcdUseAmt(spanDelvGfcdUseAmt * -1);
+						cancelDelvFee.setRealDelvAmt((delvFee - spanDelvGfcdUseAmt) * -1);
+						cancelDelvFee.setOrdChgSq(orderChange.getOrdChgSq());
+						cancelDelvFee.setSupplyCompCd(obj.getSupplyCompCd());
+						cancelDelvFee.setRegNo(userNo);
+						cancelDelvFee.setUpdNo(userNo);
+
+						orderChangeDao.createDeliveryFee(cancelDelvFee);
+					}
 				}
 				// 5-4-2. 추가배송비 처리 (배송비허들무너짐)
 				else {
@@ -625,10 +628,14 @@ public class TscOrderChangeService {
 				pg.setPgTid(pgTid);
 				pg.setPayMeans(payMeans);
 				pg.setPartCancelAmt(refundAmt);
-				pg.setLeftAmt(payAmt);
+				// pg.setLeftAmt(payAmt);
 				pg.setRegNo(userNo);
 				pg.setUpdNo(userNo);
 
+				// 2021.07.07 payAmt 금액 TB_PAYMENT.PAY_AMT 수정
+				int leftAmt = orderChangeDao.getPaymentPayamt(pg);
+				pg.setLeftAmt(leftAmt);
+
 				log.info("pg.getPartCancelAmt() ::: {}", pg.getPartCancelAmt());
 				log.info("pg.getLeftAmt() ::: {}", pg.getLeftAmt());
 

+ 2 - 1
src/main/java/com/style24/core/biz/service/TscOrderRefundService.java

@@ -273,7 +273,8 @@ public class TscOrderRefundService {
 						
 						// 전체취소시 배송비 환불
 						if (leftOrdAmt == 0) {
-							if ("Y".equals(obj.getLastCanYn())) {
+							// 2021.11.16 card007 출고 이력 존재 시 원주문 배송비 환불처리 X
+							if ("Y".equals(obj.getLastCanYn()) && "N".equals(obj.getDelvYn())) {
 								sumDeliveryFee += obj.getDelvFee();				// 전체취소 시 배송금액도 같이 환불
 								spanRefundDelvCpnAmt += obj.getDelvCpnDcAmt();	// 전체취소 시 배송비쿠폰 금액 제외하고 환불
 								spanDelvGfcdUseAmt += obj.getDelvGfcdUseAmt();	// 전체취소 시 사용 배송비 상품권 금액 환불

+ 2 - 2
src/main/java/com/style24/persistence/mybatis/shop/TscOrderChange.xml

@@ -3047,8 +3047,8 @@
 		         , P.PAY_MEANS
 		         , P.PAY_STAT
 		         , P.CASH_AUTH_NO
-		         , CASE WHEN NULLIF(OD.INVOICE_NO, '') IS NULL THEN 'N'
-		                ELSE 'Y'
+		         , CASE WHEN (SELECT COUNT(1) FROM TB_ORDER_DETAIL_HST WHERE ORD_DTL_NO = OD.ORD_DTL_NO AND ORD_DTL_STAT = 'G013_50') > 0 THEN 'Y'
+		                ELSE 'N'
 		            END AS DELV_YN
 		      FROM TB_ORDER O
 		     INNER JOIN TB_ORDER_DETAIL OD