fix : 구독서비스 - 결제 처리 전 정합성 검사

This commit is contained in:
이대환
2026-04-06 16:24:01 +09:00
parent 9f7916d913
commit 18a08fc439
11 changed files with 186 additions and 49 deletions

View File

@@ -52,6 +52,9 @@ public interface BOMaMtngMapper {
/** 주문 전 쿠폰정보 재확인*/
public List<String> selectBOPreOrderValidationCouponList(BOPreOrderValidVO goods);
/** 구독서비스 주문 전 주문정보 재확인*/
public List<DataMap> selectBOSubsvcPreOrderValidation(BOPreOrderValidVO goods);
/*쇼핑몰 구매요청 재검증 확인 여부*/
public String selectPurchsValidUseAt(String sopmalCd);
}

View File

@@ -306,8 +306,12 @@ public class BOMaMtngService {
}
for(BOPreOrderValidVO goods : goodsList) {
List<DataMap> resultValid = mapper.selectBOPreOrderValidation(goods);
List<DataMap> resultValid = new ArrayList<>();
if(goods.getSubsvcInnb() != "") {
resultValid = mapper.selectBOSubsvcPreOrderValidation(goods);
} else {
resultValid = mapper.selectBOPreOrderValidation(goods);
}
//구매정보 변경대상 필터링
// 값이 1인 항목 == 변경항목
@@ -473,12 +477,14 @@ public class BOMaMtngService {
goodsList.forEach(goods -> {
String goodsInnb = StringUtil.isNullToString(goods.get("goodsInnb"));
String subsvcInnb = StringUtil.isNullToString(goods.get("subsvcInnb"));
//상품별 수량합계
int goodsTotalQy = 0;
if(qySums.containsKey(goodsInnb)){
goodsTotalQy = qySums.getOrDefault(goodsInnb, 0);
} else if (qySums.containsKey(subsvcInnb)) {
goodsTotalQy = qySums.getOrDefault(subsvcInnb, 0);
}
@@ -514,6 +520,7 @@ public class BOMaMtngService {
.sopmalCd(StringUtil.isNullToString(goods.get("sopmalCd")))
.goodsInnb(StringUtil.isNullToString(goods.get("goodsInnb")))
.goodsOptnInnb(StringUtil.isNullToString(goods.get("goodsOptnInnb")))
.subsvcInnb(StringUtil.isNullToString(goods.get("subsvcInnb")))
.mbrInnb(StringUtil.isNullToString(goods.get("mbrInnb")))
.mbrDvCd(StringUtil.isNullToString(goods.get("mbrDvCd")))
.qy(StringUtil.isNullToString(goods.get("qy")))

View File

@@ -24,6 +24,9 @@ public class BOPreOrderValidVO {
/*상품옵션고유번호*/
private String goodsOptnInnb;
/*구독서비스고유번호*/
private String subsvcInnb;
/*회원고유번호*/
private String mbrInnb;

View File

@@ -6017,8 +6017,8 @@ public class BOOrdrService{
LinkedHashMap subsvcOne = subsvcList.get(0);
log.debug("subsvcOne : {}", subsvcOne);
goodsAmt = BigDecimal.valueOf((Integer) subsvcOne.get("selpric"));
setleAmt = BigDecimal.valueOf((Integer) subsvcOne.get("selpric"));
goodsAmt = BigDecimal.valueOf((Integer) subsvcOne.get("slepric"));
setleAmt = BigDecimal.valueOf((Integer) subsvcOne.get("slepric"));
log.debug("결제 예정 금액 : {}", setleAmt);
// 환율계산