구독서비스 결제 화면 적용

This commit is contained in:
이대환
2026-02-26 11:07:19 +09:00
parent 0ca70094c9
commit 43508a858b
5 changed files with 280 additions and 145 deletions

View File

@@ -3821,50 +3821,6 @@ public class BOOrdrService{
return content;
}
/**
* 사용자 > 구독상품 > 구매/결제 > 구독서비스 결제 > 결제 예정금액
* @param param
* @return Map<String, Object>
*/
public Map<String, Object> selectSubsvcSetleExpectAmt(DataMap param) throws Exception {
Map<String, Object> content = new HashMap<>();
log.debug("selectSetleExpectAmt-param : {}", param);
LinkedHashMap setleExpectAmtMap = new LinkedHashMap() {{
put("goodsAmt", 0);
put("dlvyAmt", 0);
put("evtDscntAmt", 0);
put("goodsCouponDscntAmt", 0);
put("dlvyCouponDscntAmt", 0);
put("cartCouponDscntAmt", 0);
put("useMlgAmt", 0);
put("useCashMlgAmt", 0);
put("dscntAmt", 0);
put("setleAmt", 0);
put("accmlMlgAmt", 0);
}};
BigDecimal goodsAmt = new BigDecimal(0);
List<LinkedHashMap> goodsList = (List<LinkedHashMap>) param.get("goodsList");
log.debug("goodsList : {}", goodsList);
BOSubsvcVO subsvcVO = new BOSubsvcVO();
subsvcVO.setSubsvcInnb((String) param.get("subsvcInnb"));
subsvcVO.setSopmalCd((String) param.get("sopmalCd"));
DataMap subsvcDetail = subsvcService.selectBOSubsvcDetail(subsvcVO);
goodsAmt = (BigDecimal) subsvcDetail.get("subsvcCt");
// ############################################## 결제 예정 금액 적용 ##############################################
setleExpectAmtMap.put("goodsAmt", goodsAmt.intValue());
content.put("setleExpectAmt", setleExpectAmtMap);
content.put("goodsList", goodsList);
return content;
}
/**
* 사용자 > 상품 > 구매/결제 > 회원구매하기 > 구매 정보 등록
* @param param
@@ -6186,6 +6142,119 @@ public class BOOrdrService{
사용자 > 상품 > 구매/결제 > 비회원구매하기 종료
#################################### */
/* ####################################
사용자 > 구독상품 > 구매/결제 > 구독서비스 결제 시작
#################################### */
/**
* 사용자 > 구독상품 > 구매/결제 > 구독서비스 결제 > 구독서비스 결제 화면 정보 조회
* @param ordrVO
* @return Map<String, Object>
*/
public Map<String, Object> selectSubsvcPurchs(BOOrdrVO ordrVO) {
Map<String, Object> content = new HashMap<>();
//구독서비스 조회
BOSubsvcVO subsvcVO = new BOSubsvcVO();
subsvcVO.setSopmalCd(ordrVO.getSopmalCd());
subsvcVO.setSubsvcInnb(ordrVO.getSubsvcInnb());
DataMap subsvcOne = subsvcService.selectBOSubsvcDetail(subsvcVO);
BOPurchsrVO purchsrVO = new BOPurchsrVO();
purchsrVO.setSopmalCd(ordrVO.getSopmalCd());
purchsrVO.setMbrDvCd(ordrVO.getMbrDvCd());
purchsrVO.setMbrInnb(String.valueOf(ordrVO.getMbrInnb()));
purchsrVO.setMbrId(ordrVO.getMbrId());
BOCashVO cashVO = new BOCashVO();
cashVO.setSopmalCd(ordrVO.getSopmalCd());
cashVO.setMbrDvCd(ordrVO.getMbrDvCd());
cashVO.setMbrInnb(String.valueOf(ordrVO.getMbrInnb()));
//구매자조회
DataMap purchsrMap = purchsService.selectPurchsr(purchsrVO);
if (!CollectionUtils.isEmpty(purchsrMap)) {
BOMlgVO mlgVo = new BOMlgVO();
mlgVo.setMbrDvCd((String) purchsrMap.get("mbrDvCd"));
mlgVo.setMbrInnb(purchsrMap.get("mbrInnb").toString());
// 마일리지 잔액 총액
BigDecimal blceSum = mlgService.selectBOMlgBlceSum(mlgVo);
// 충전형 마일리지 잔액 총액
BigDecimal cashBlceSum = mlgService.selectBOCashBlce(cashVO);
purchsrMap.put("sopmalCd", ordrVO.getSopmalCd());
purchsrMap.put("dftDlvylc", purchsService.selectDftDlvylc(purchsrVO));
purchsrMap.put("ableMlgAmt", blceSum.intValue());
purchsrMap.put("ableCashMlgAmt", cashBlceSum.intValue());
}
DataMap paramMap = new DataMap(){{
put("sopmalCd", ordrVO.getSopmalCd());
put("setlePltfomTyCd", ordrVO.getSetlePltfomTyCd()); // PC
}};
DataMap payInfo = purchsMapper.selectPayInfo(paramMap);
DataMap shopInfo = purchsMapper.selectOrdrShopInfo(ordrVO);
content.put("purchsr", purchsrMap);
content.put("mlgAccmlNtcList", purchsMapper.selectMlgAccmlNtcList(purchsrVO));
content.put("subsvcOne", subsvcOne);
content.put("payInfo", payInfo);
content.put("shopInfo", shopInfo);
return content;
}
/**
* 사용자 > 구독상품 > 구매/결제 > 구독서비스 결제 > 결제 예정금액
* @param param
* @return Map<String, Object>
*/
public Map<String, Object> selectSubsvcSetleExpectAmt(DataMap param) throws Exception {
Map<String, Object> content = new HashMap<>();
log.debug("selectSetleExpectAmt-param : {}", param);
LinkedHashMap setleExpectAmtMap = new LinkedHashMap() {{
put("goodsAmt", 0);
put("dlvyAmt", 0);
put("evtDscntAmt", 0);
put("goodsCouponDscntAmt", 0);
put("dlvyCouponDscntAmt", 0);
put("cartCouponDscntAmt", 0);
put("useMlgAmt", 0);
put("useCashMlgAmt", 0);
put("dscntAmt", 0);
put("setleAmt", 0);
put("accmlMlgAmt", 0);
}};
BigDecimal goodsAmt = new BigDecimal(0);
BigDecimal setleAmt = new BigDecimal(0);
LinkedHashMap subsvcOne = (LinkedHashMap) param.get("subsvcOne");
log.debug("subsvcOne : {}", subsvcOne);
goodsAmt = BigDecimal.valueOf((Integer) subsvcOne.get("selpric"));
setleAmt = BigDecimal.valueOf((Integer) subsvcOne.get("selpric"));
// ############################################## 결제 예정 금액 적용 ##############################################
setleExpectAmtMap.put("goodsAmt", goodsAmt.intValue());
setleExpectAmtMap.put("setleAmt", setleAmt.intValue());
content.put("setleExpectAmt", setleExpectAmtMap);
content.put("subsvcOne", param.get("subsvcOne"));
return content;
}
/* ####################################
사용자 > 구독상품 > 구매/결제 > 구독서비스 결제 종료
#################################### */
/* ####################################
사용자 > 상품 > 구매/결제 > 개인결제 시작
#################################### */

View File

@@ -151,6 +151,9 @@ public class BOOrdrVO extends AbstractVO {
/** 장바구니 고유번호 배열 */
private String[] cartInnbs;
/** 구독서비스 고유번호 */
private String subsvcInnb;
/** 주문배송 고유번호 */
private String ordrDlvyInnb;