diff --git a/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/mapper/BOSubsvcMapper.java b/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/mapper/BOSubsvcMapper.java
index 19c27272..bf357ec2 100644
--- a/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/mapper/BOSubsvcMapper.java
+++ b/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/mapper/BOSubsvcMapper.java
@@ -33,6 +33,8 @@ public interface BOSubsvcMapper {
/** 구독서비스 주문에 따른 판매재고수량 수정*/
public void updateSubsvcOrdrUsefulInvntryQy(BOSubsvcVO vo);
+ /** 구독서비스 환불에 따른 판매재고수량 수정*/
+ public void updateSubsvcRefundUsefulInvntryQy(BOSubsvcVO vo);
/** 판매재고수량 변경에 따른 구독서비스 상태 수정*/
public void updateInvntryPolicySubsvcSttusChng(BOSubsvcVO vo);
}
diff --git a/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/service/BOSubsvcService.java b/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/service/BOSubsvcService.java
index dff61f5d..e4705ead 100644
--- a/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/service/BOSubsvcService.java
+++ b/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/service/BOSubsvcService.java
@@ -1,9 +1,8 @@
package com.wb.domainserver.domain.gcone.goods.subsvc.service;
-import com.wb.domainserver.domain.comm.vo.AbstractVO;
-import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderVO;
import com.wb.domainserver.domain.gcone.goods.subsvc.mapper.BOSubsvcMapper;
import com.wb.domainserver.domain.gcone.goods.subsvc.vo.BOSubsvcVO;
+import com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOOrdrVO;
import com.wb.domainserver.util.dataaccess.DataMap;
import io.micrometer.common.util.StringUtils;
import lombok.extern.slf4j.Slf4j;
@@ -142,18 +141,33 @@ public class BOSubsvcService {
/**
* 주문에 따른 판매재고수량 수정
- * @param orderVO
+ * @param ordrVO
* @return
*/
@Transactional
- public void updateSubsvcOrdrUsefulInvntryQy(BOOrderVO orderVO) throws Exception {
+ public void updateSubsvcOrdrUsefulInvntryQy(BOOrdrVO ordrVO) throws Exception {
BOSubsvcVO subsvcVO = new BOSubsvcVO();
- BeanUtils.copyProperties(orderVO, subsvcVO);
- subsvcVO.setSubsvcInnb(orderVO.getSubsvcInnb().toString());
+ BeanUtils.copyProperties(ordrVO, subsvcVO);
//판매수량 수정
mapper.updateSubsvcOrdrUsefulInvntryQy(subsvcVO);
//구독서비스 상태 수정
mapper.updateInvntryPolicySubsvcSttusChng(subsvcVO);
}
+
+ /**
+ * 환불에 따른 판매재고수량 수정
+ * @param ordrVO
+ * @return
+ */
+ @Transactional
+ public void updateSubsvcRefundUsefulInvntryQy(BOOrdrVO ordrVO) throws Exception {
+ BOSubsvcVO subsvcVO = new BOSubsvcVO();
+ BeanUtils.copyProperties(ordrVO, subsvcVO);
+
+ //판매수량 수정
+ mapper.updateSubsvcRefundUsefulInvntryQy(subsvcVO);
+ //구독서비스 상태 수정
+ mapper.updateInvntryPolicySubsvcSttusChng(subsvcVO);
+ }
}
diff --git a/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/vo/BOSubsvcVO.java b/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/vo/BOSubsvcVO.java
index 05efc6d1..22cf2d1e 100644
--- a/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/vo/BOSubsvcVO.java
+++ b/src/main/java/com/wb/domainserver/domain/gcone/goods/subsvc/vo/BOSubsvcVO.java
@@ -110,7 +110,7 @@ private static final long serialVersionUID = 1L;
/** 회원구분코드 */
private String mbrDvCd;
/** 주문고유번호 */
- private BigInteger ordrInnb;
+ private String ordrInnb;
/** 결제상품정보 */
diff --git a/src/main/java/com/wb/domainserver/domain/gcone/ordr/rtngudrefnd/service/BORtngudrefndService.java b/src/main/java/com/wb/domainserver/domain/gcone/ordr/rtngudrefnd/service/BORtngudrefndService.java
index 5f81a768..76e7eda1 100644
--- a/src/main/java/com/wb/domainserver/domain/gcone/ordr/rtngudrefnd/service/BORtngudrefndService.java
+++ b/src/main/java/com/wb/domainserver/domain/gcone/ordr/rtngudrefnd/service/BORtngudrefndService.java
@@ -1,53 +1,45 @@
package com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.service;
-import java.math.BigDecimal;
-import java.math.BigInteger;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
import com.fasterxml.jackson.databind.ObjectMapper;
import com.wb.domainserver.domain.gcone.goods.goods.service.BOGoodsService;
import com.wb.domainserver.domain.gcone.goods.purchs.mapper.BOPurchsMapper;
import com.wb.domainserver.domain.gcone.goods.purchs.service.BOOrderService;
import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderLogVO;
+import com.wb.domainserver.domain.gcone.goods.subsvc.service.BOSubsvcService;
import com.wb.domainserver.domain.gcone.mbr.mlg.service.BOMlgService;
import com.wb.domainserver.domain.gcone.mbr.mlg.vo.BOCashVO;
import com.wb.domainserver.domain.gcone.mbr.mlg.vo.BOMlgVO;
import com.wb.domainserver.domain.gcone.ntcn.mssage.service.BOMssageService;
import com.wb.domainserver.domain.gcone.ordr.ordr.mapper.BOOrdrMapper;
-import com.wb.domainserver.domain.gcone.ordr.ordr.service.BOOrdrService;
-import com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOOrdrDlvyVO;
import com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOOrdrRefundVO;
+import com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOOrdrVO;
import com.wb.domainserver.domain.gcone.ordr.pay.service.BOPayService;
import com.wb.domainserver.domain.gcone.ordr.pay.vo.BOPayVO;
+import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.mapper.BORtngudrefndMapper;
import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.vo.BOOrderReItemVO;
import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.vo.BORefundSetleVO;
+import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.vo.BORtngudrefndSrchVO;
+import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.vo.BORtngudrefndVO;
import com.wb.domainserver.domain.gcone.ordr.selngpruf.service.BOSelngprufService;
import com.wb.domainserver.domain.gcone.ordr.selngpruf.vo.BOSelngprufVO;
import com.wb.domainserver.domain.gcone.promtn.coupon.service.BOCouponService;
import com.wb.domainserver.domain.gcone.promtn.coupon.vo.BODwldCouponVO;
import com.wb.domainserver.domain.gcone.setup.site.mapper.BOSiteMapper;
-import com.wb.domainserver.domain.gcone.setup.site.vo.BOSetupContentsItemVO;
import com.wb.domainserver.exception.WnbtRestException;
+import com.wb.domainserver.util.dataaccess.DataMap;
import com.wb.domainserver.util.string.StringUtil;
-import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-
-import com.wb.domainserver.domain.admin.sys.comncd.service.BOMaComncdService;
-import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.mapper.BORtngudrefndMapper;
-import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.vo.BORtngudrefndSrchVO;
-import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.vo.BORtngudrefndVO;
-import com.wb.domainserver.util.dataaccess.DataMap;
-
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
-import org.springframework.web.bind.support.WebExchangeBindException;
+
+import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.text.SimpleDateFormat;
+import java.util.*;
/**
*
@@ -87,6 +79,9 @@ public class BORtngudrefndService {
@Autowired
private BOOrderService orderService;
+ @Autowired
+ private BOSubsvcService subsvcService;
+
@Autowired
private BORtngudrefndMapper mapper;
@@ -1375,7 +1370,18 @@ public class BORtngudrefndService {
if ("0".equals(message.get("status"))) {
// ########################################### 상품 재고 ###########################################
- boGoodsService.updateRefundUsefulInvntryQy(refundVO);
+ BOOrdrVO ordrVO = new BOOrdrVO();
+ ordrVO.setOrdrInnb(refundVO.getOrdrInnb());
+ ordrVO.setSopmalCd(refundVO.getSopmalCd());
+
+ DataMap ordrDtl = ordrMapper.selectOrdrDtl(ordrVO);
+ boolean subsvcAt = "Y".equals(ordrDtl.get("subsvcAt"));
+ if(subsvcAt) {
+ ordrVO.setSubsvcInnb(ordrDtl.get("subsvcInnb").toString());
+ subsvcService.updateSubsvcRefundUsefulInvntryQy(ordrVO);
+ } else {
+ boGoodsService.updateRefundUsefulInvntryQy(refundVO);
+ }
// ########################################### 쿠폰 복원 ###########################################
diff --git a/src/main/java/com/wb/domainserver/domain/sopmal/ordr/controller/OrdrController.java b/src/main/java/com/wb/domainserver/domain/sopmal/ordr/controller/OrdrController.java
index 1e9ce6b7..4c13d99d 100644
--- a/src/main/java/com/wb/domainserver/domain/sopmal/ordr/controller/OrdrController.java
+++ b/src/main/java/com/wb/domainserver/domain/sopmal/ordr/controller/OrdrController.java
@@ -2920,8 +2920,8 @@ public class OrdrController {
DataMap ordrDtl = (DataMap) service.selectOrdrDtlInqire(ordrVO).get("dtl");
boolean subsvcAt = "Y".equals(ordrDtl.get("subsvcAt"));
if(subsvcAt) {
- orderVO.setSubsvcInnb(((Number) ordrDtl.get("subsvcInnb")).intValue());
- subsvcService.updateSubsvcOrdrUsefulInvntryQy(orderVO);
+ ordrVO.setSubsvcInnb(ordrDtl.get("subsvcInnb").toString());
+ subsvcService.updateSubsvcOrdrUsefulInvntryQy(ordrVO);
} else {
boGoodsService.updateOrdrUsefulInvntryQy(orderVO);
}
diff --git a/src/main/resources/mybatis/xml/mapper/gcone/goods/subsvc/BOSubsvcMapper.xml b/src/main/resources/mybatis/xml/mapper/gcone/goods/subsvc/BOSubsvcMapper.xml
index 81ff7759..832ba32f 100644
--- a/src/main/resources/mybatis/xml/mapper/gcone/goods/subsvc/BOSubsvcMapper.xml
+++ b/src/main/resources/mybatis/xml/mapper/gcone/goods/subsvc/BOSubsvcMapper.xml
@@ -334,6 +334,28 @@
]]>
+
+
+
+
+