Merge remote-tracking branch 'origin/master'

This commit is contained in:
jazz
2026-03-19 10:24:22 +09:00
15 changed files with 501 additions and 235 deletions

View File

@@ -419,8 +419,15 @@ public class BOMaMtngService {
//상품별 총 구매갯수 합계 //상품별 총 구매갯수 합계
Map<String, Integer> qySums = goodsList.stream() Map<String, Integer> qySums = goodsList.stream()
.collect(Collectors.groupingBy( .collect(Collectors.groupingBy(
goods -> {
// goodsInnb기준 키로 묶음 // goodsInnb기준 키로 묶음
goods -> goods.get("goodsInnb").toString(), Object key = goods.get("goodsInnb");
if(key == null) {
// subsvcInnb기준 키로 묶음
key = goods.get("subsvcInnb");
}
return key.toString();
},
// qy 값을 합산 // qy 값을 합산
Collectors.summingInt(goods -> Integer.parseInt(goods.getOrDefault("qy", "0").toString())) Collectors.summingInt(goods -> Integer.parseInt(goods.getOrDefault("qy", "0").toString()))
)); ));

View File

@@ -79,6 +79,10 @@ public class BOOrderService {
LinkedHashMap setle = (LinkedHashMap) param.get("setle"); // 결제정보 LinkedHashMap setle = (LinkedHashMap) param.get("setle"); // 결제정보
List<LinkedHashMap> prsntList = (List<LinkedHashMap>) param.get("prsnt"); // 사은품 정보 List<LinkedHashMap> prsntList = (List<LinkedHashMap>) param.get("prsnt"); // 사은품 정보
if(param.containsKey("subsvcInnb")) {
setle.put("subsvcInnb", param.get("subsvcInnb"));
}
log.debug("구매자정보 => {} ", new Gson().toJson(purchsr)); log.debug("구매자정보 => {} ", new Gson().toJson(purchsr));
log.debug("상품정보 => {} ", new Gson().toJson(goodsList)); log.debug("상품정보 => {} ", new Gson().toJson(goodsList));
log.debug("배송정보 => {} ", new Gson().toJson(shipping)); log.debug("배송정보 => {} ", new Gson().toJson(shipping));
@@ -498,7 +502,7 @@ public class BOOrderService {
} }
List<LinkedHashMap> itempPrsntList = new ArrayList<>(); List<LinkedHashMap> itempPrsntList = new ArrayList<>();
if(!prsntList.isEmpty()){ if(prsntList != null && !prsntList.isEmpty()){
itempPrsntList.add(prsntList.get(i)); itempPrsntList.add(prsntList.get(i));
for (LinkedHashMap<String, Object> itemPrsntMap : itempPrsntList) { for (LinkedHashMap<String, Object> itemPrsntMap : itempPrsntList) {
if((goodsQy-j) > 1){ if((goodsQy-j) > 1){
@@ -545,7 +549,7 @@ public class BOOrderService {
} }
List<LinkedHashMap> itempPrsntList = new ArrayList<>(); List<LinkedHashMap> itempPrsntList = new ArrayList<>();
if(!prsntList.isEmpty()){ if(prsntList != null && !prsntList.isEmpty()){
itempPrsntList.add(prsntList.get(i)); itempPrsntList.add(prsntList.get(i));
for (LinkedHashMap<String, Object> itemPrsntMap : itempPrsntList) { for (LinkedHashMap<String, Object> itemPrsntMap : itempPrsntList) {
itemPrsntMap.put("qy", qy.intValue()); itemPrsntMap.put("qy", qy.intValue());
@@ -981,7 +985,7 @@ public class BOOrderService {
inputOptnVO.setOptnVal4(optns[3]); inputOptnVO.setOptnVal4(optns[3]);
} }
itemOptnVO.setOrdrGoodsOptnInnb(orderNoService.generateOrderItemOptnNo()); inputOptnVO.setOrdrGoodsOptnInnb(orderNoService.generateOrderItemOptnNo());
mapper.insertOrdrGoodsOption(inputOptnVO); // 주문 상품 입력 옵션 정보 등록 mapper.insertOrdrGoodsOption(inputOptnVO); // 주문 상품 입력 옵션 정보 등록
} }
} }
@@ -1445,7 +1449,7 @@ public class BOOrderService {
setleVO.setPgCmpnyNm(""); setleVO.setPgCmpnyNm("");
} }
if (StringUtils.hasText((String) purchsr.get("mbrId"))) { // GC머니는 회원만 적용 if (StringUtils.hasText((String) purchsr.get("mbrId")) && orderVO.getSubsvcInnb() == null) { // GC머니는 회원만 적용
// GC 머니 사용했을 경우 여부, 금액 세팅 ( 결제유형과는 무관 ) // GC 머니 사용했을 경우 여부, 금액 세팅 ( 결제유형과는 무관 )
Object useCashMlgAmt = enuri.get("useCashMlgAmt"); // 사용 GC 머니 Object useCashMlgAmt = enuri.get("useCashMlgAmt"); // 사용 GC 머니
if (useCashMlgAmt != null) { if (useCashMlgAmt != null) {
@@ -2019,6 +2023,11 @@ public class BOOrderService {
orderVO.setMngrId((String) setle.get("mngrId")); // 관리자ID orderVO.setMngrId((String) setle.get("mngrId")); // 관리자ID
orderVO.setMngrNm((String) setle.get("mngrNm")); // 관리자명 orderVO.setMngrNm((String) setle.get("mngrNm")); // 관리자명
} }
if (setle.containsKey("subsvcInnb")) { // 구독서비스 고유번호
int subsvcInnb = (Integer) setle.get("subsvcInnb");
orderVO.setSubsvcInnb(subsvcInnb);
}
} else { } else {
orderVO.setOrdrSttusCd("0"); orderVO.setOrdrSttusCd("0");
orderVO.setUseAt("Y"); orderVO.setUseAt("Y");

View File

@@ -145,4 +145,6 @@ public class BOOrderVO extends AbstractVO {
private String secretKey; private String secretKey;
private String currOrdrSttusCd; private String currOrdrSttusCd;
private Integer subsvcInnb;
} }

View File

@@ -99,4 +99,56 @@ private static final long serialVersionUID = 1L;
private String sortDv; private String sortDv;
/** 배열 구독서비스고유번호 */ /** 배열 구독서비스고유번호 */
private List<String> arrSubsvcInnb; private List<String> arrSubsvcInnb;
/** 결제정보 */
/** 회원고유번호 */
private Integer mbrInnb;
/** 회원구분코드 */
private String mbrDvCd;
/** 결제상품정보 */
/** 판매상품 고유번호 */
private Integer goodsInnb;
/** 상품옵션 고유번호 */
private Integer goodsOptnInnb;
/** 개수 */
private Integer qy;
/** 입력옵션 텍스트 */
private String inputOptn;
/** 입력옵션 텍스트 */
private String inputOptnText;
/** 배송그룹고유번호 */
private Integer dlvyGroupInnb;
/** 상품상태코드 */
private String goodsSttusCd;
/** 상품상태명 */
private String goodsSttusNm;
/** 상품명 */
private String goodsNm;
/** 상품옵션 타입 */
private String optnTy;
/** 옵션관계번호 */
private String optnRelateNb;
/** 복수할인여부 */
private String compnbDscntAt;
/** 구간할인여부 */
private String sctnDscntAt;
/** 옵션필수여부 */
private String optnEssntlAt;
/** 소비자가 합계 (형식적용) */
private String subCnsmrpricByFormat;
/** 소비자가 합계 */
private Integer subCnsmrpric;
/** 소비자가 (형식적용) */
private String cnsmrpricByFormat;
/** 판매가 합계 (형식적용) */
private String subSlepricByFormat;
/** 판매가 합계 (형식적용) */
private Integer subSlepric;
/** 판매가 합계 (형식적용) */
private String slepricByFormat;
/** 상품이미지경로 */
private String goodsImgCours;
} }

View File

@@ -9,6 +9,7 @@ import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOGoodsVO;
import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderItemOptnVO; import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderItemOptnVO;
import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderSetleVO; import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderSetleVO;
import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderVO; import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderVO;
import com.wb.domainserver.domain.gcone.goods.subsvc.vo.BOSubsvcVO;
import com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrAppnVO; import com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrAppnVO;
import com.wb.domainserver.domain.gcone.ordr.ordr.vo.*; import com.wb.domainserver.domain.gcone.ordr.ordr.vo.*;
@@ -994,6 +995,14 @@ public interface BOOrdrMapper {
*/ */
public List<DataMap> selectMbrSubsvcOrdrList(BOOrdrDlvyVO ordrDlvyVO); public List<DataMap> selectMbrSubsvcOrdrList(BOOrdrDlvyVO ordrDlvyVO);
/**
* 사용자 > 구독서비스 결제 > 구독서비스 주문 상품 목록 조회
* @param subsvcVO
* @return List<BOSubsvcVO>
*/
public List<BOSubsvcVO> selectSubsvcGoodsList(BOSubsvcVO subsvcVO);
/** /**
* 최종 한화금액이 결제금액보다 많은지 체크하여 환불금액(원화) update * 최종 한화금액이 결제금액보다 많은지 체크하여 환불금액(원화) update
* @param refundVO * @param refundVO

View File

@@ -1,5 +1,6 @@
package com.wb.domainserver.domain.gcone.ordr.ordr.service; package com.wb.domainserver.domain.gcone.ordr.ordr.service;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.nimbusds.jose.shaded.gson.Gson; import com.nimbusds.jose.shaded.gson.Gson;
import com.wb.domainserver.common.prop.PropertyService; import com.wb.domainserver.common.prop.PropertyService;
@@ -2896,7 +2897,7 @@ public class BOOrdrService{
content.put("purchsr", purchsrMap); content.put("purchsr", purchsrMap);
content.put("mlgAccmlNtcList", purchsMapper.selectMlgAccmlNtcList(purchsrVO)); content.put("mlgAccmlNtcList", purchsMapper.selectMlgAccmlNtcList(purchsrVO));
content.put("goodsList", goodsList); content.put("goodsList", goodsList);
content.put("goodsListByJson", new Gson().toJson(goodsList)); content.put("goodsListByJson", new Gson().toJson(goodsList));//subslepric
content.put("payInfo", payInfo); content.put("payInfo", payInfo);
content.put("shopInfo", shopInfo); content.put("shopInfo", shopInfo);
@@ -6187,6 +6188,10 @@ public class BOOrdrService{
subsvcVO.setSopmalCd(ordrVO.getSopmalCd()); subsvcVO.setSopmalCd(ordrVO.getSopmalCd());
subsvcVO.setSubsvcInnb(ordrVO.getSubsvcInnb()); subsvcVO.setSubsvcInnb(ordrVO.getSubsvcInnb());
//결제정보 추가
subsvcVO.setMbrInnb(ordrVO.getMbrInnb());
subsvcVO.setMbrDvCd(ordrVO.getMbrDvCd());
DataMap subsvcOne = subsvcService.selectBOSubsvcDetail(subsvcVO); DataMap subsvcOne = subsvcService.selectBOSubsvcDetail(subsvcVO);
BOPurchsrVO purchsrVO = new BOPurchsrVO(); BOPurchsrVO purchsrVO = new BOPurchsrVO();
@@ -6246,7 +6251,7 @@ public class BOOrdrService{
*/ */
public Map<String, Object> selectSubsvcSetleExpectAmt(DataMap param) throws Exception { public Map<String, Object> selectSubsvcSetleExpectAmt(DataMap param) throws Exception {
Map<String, Object> content = new HashMap<>(); Map<String, Object> content = new HashMap<>();
log.debug("selectSetleExpectAmt-param : {}", param); log.debug("selectSubsvcSetleExpectAmt-param : {}", param);
LinkedHashMap setleExpectAmtMap = new LinkedHashMap() {{ LinkedHashMap setleExpectAmtMap = new LinkedHashMap() {{
put("goodsAmt", 0); put("goodsAmt", 0);
@@ -6259,27 +6264,54 @@ public class BOOrdrService{
put("useCashMlgAmt", 0); put("useCashMlgAmt", 0);
put("dscntAmt", 0); put("dscntAmt", 0);
put("setleAmt", 0); put("setleAmt", 0);
put("setleAmtKr", 0);
put("accmlMlgAmt", 0); put("accmlMlgAmt", 0);
}}; }};
BigDecimal goodsAmt = new BigDecimal(0); BigDecimal goodsAmt = new BigDecimal(0);
BigDecimal setleAmt = new BigDecimal(0); BigDecimal setleAmt = new BigDecimal(0);
BigDecimal setleAmtKr = new BigDecimal(0);
LinkedHashMap subsvcOne = (LinkedHashMap) param.get("subsvcOne"); BigDecimal buyRate = mapper.selectBuyRate(param);
List<LinkedHashMap> subsvcList = (List<LinkedHashMap>) param.get("goodsList");
LinkedHashMap subsvcOne = subsvcList.get(0);
log.debug("subsvcOne : {}", subsvcOne); log.debug("subsvcOne : {}", subsvcOne);
goodsAmt = BigDecimal.valueOf((Integer) subsvcOne.get("selpric")); goodsAmt = BigDecimal.valueOf((Integer) subsvcOne.get("selpric"));
setleAmt = BigDecimal.valueOf((Integer) subsvcOne.get("selpric")); setleAmt = BigDecimal.valueOf((Integer) subsvcOne.get("selpric"));
log.debug("결제 예정 금액 : {}", setleAmt);
// 환율계산
setleAmtKr = setleAmt.multiply(buyRate);
setleAmtKr = setleAmtKr.setScale(0,RoundingMode.HALF_UP);
log.debug("결제 예정 금액 (환율 적용) : {}", setleAmtKr);
// ############################################## 결제 예정 금액 적용 ############################################## // ############################################## 결제 예정 금액 적용 ##############################################
setleExpectAmtMap.put("goodsAmt", goodsAmt.intValue()); setleExpectAmtMap.put("goodsAmt", goodsAmt.intValue());
setleExpectAmtMap.put("setleAmt", setleAmt.intValue()); setleExpectAmtMap.put("setleAmt", setleAmt.intValue());
setleExpectAmtMap.put("setleAmtKr", setleAmtKr.intValue());
content.put("setleExpectAmt", setleExpectAmtMap); content.put("setleExpectAmt", setleExpectAmtMap);
content.put("subsvcOne", param.get("subsvcOne")); content.put("goodsList", param.get("goodsList"));
return content; return content;
} }
/**
* 사용자 > 상품 > 장바구니 > 장바구니 조회 > 장바구니 상품 목록 조회
* @param subsvcVO
* @return Map<String, Object>
*/
public List<LinkedHashMap<String, Object>> selectSubsvcGoodsList(BOSubsvcVO subsvcVO) {
List<BOSubsvcVO> subsvcGoodsList = mapper.selectSubsvcGoodsList(subsvcVO);
ObjectMapper objectMapper = new ObjectMapper();
List<LinkedHashMap<String, Object>> goodsLinkedHashMapList =
new ObjectMapper().convertValue(subsvcGoodsList, new TypeReference<List<LinkedHashMap<String, Object>>>() {});
return goodsLinkedHashMapList;
}
/* #################################### /* ####################################
사용자 > 구독상품 > 구매/결제 > 구독서비스 결제 종료 사용자 > 구독상품 > 구매/결제 > 구독서비스 결제 종료
#################################### */ #################################### */

View File

@@ -444,7 +444,7 @@ public class OrdrController {
* @return ResponseEntity<WnbtResponse> * @return ResponseEntity<WnbtResponse>
*/ */
@Policy(AuthPolicy.RESTRICTED) @Policy(AuthPolicy.RESTRICTED)
@RequestMapping(value="/selectOrderSubsvcOne", produces = MediaType.APPLICATION_JSON_VALUE) @RequestMapping(value="/selectOrderSubsvcList", produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<WnbtResponse> selectOrderSubsvcOne(@RequestBody HashMap<String, Object> param) { public ResponseEntity<WnbtResponse> selectOrderSubsvcOne(@RequestBody HashMap<String, Object> param) {
AnonymousUser user = MemberJwtContextHolder.getMemberInfo(); AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
BOSubsvcVO subsvcVO = new BOSubsvcVO(); BOSubsvcVO subsvcVO = new BOSubsvcVO();
@@ -452,9 +452,11 @@ public class OrdrController {
if ("01".equals(user.getSysDvCd())) { if ("01".equals(user.getSysDvCd())) {
subsvcVO.setSopmalCd(user.getSopmalCd()); subsvcVO.setSopmalCd(user.getSopmalCd());
} }
subsvcVO.setMbrInnb((Integer) param.get("mbrInnb"));
subsvcVO.setSubsvcInnb(String.valueOf(param.get("subsvcInnb"))); subsvcVO.setSubsvcInnb(String.valueOf(param.get("subsvcInnb")));
DataMap content = subsvcService.selectBOSubsvcDetail(subsvcVO); List<DataMap> content = new ArrayList<>();
content.add(subsvcService.selectBOSubsvcDetail(subsvcVO));
return ResponseEntity.ok( return ResponseEntity.ok(
WnbtResponse.builder() WnbtResponse.builder()
@@ -788,6 +790,17 @@ public class OrdrController {
paramData.put(map.getKey(), map.getValue()); paramData.put(map.getKey(), map.getValue());
}); });
LinkedHashMap goodsOne = ((List<LinkedHashMap>) paramData.get("goodsList")).get(0);
if(goodsOne.containsKey("subsvcInnb")) {
BOSubsvcVO subsvcVO = new BOSubsvcVO();
subsvcVO.setSopmalCd((String) goodsOne.get("sopmalCd"));
subsvcVO.setSubsvcInnb(goodsOne.get("subsvcInnb").toString());
subsvcVO.setQy(1);
paramData.remove("goodsList");
paramData.put("goodsList", service.selectSubsvcGoodsList(subsvcVO));
}
Map<String, Object> resultMap = insertBOOrder(paramData); Map<String, Object> resultMap = insertBOOrder(paramData);
// Map<String, Object> resultMap = responseHandler.handleResponseAsMap( // Map<String, Object> resultMap = responseHandler.handleResponseAsMap(
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/insertBOOrder", param) // sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/insertBOOrder", param)
@@ -3106,6 +3119,8 @@ public class OrdrController {
List<LinkedHashMap> goodsList = (List<LinkedHashMap>) param.get("goodsList"); // 상품정보 List<LinkedHashMap> goodsList = (List<LinkedHashMap>) param.get("goodsList"); // 상품정보
LinkedHashMap enuri = null; LinkedHashMap enuri = null;
LinkedHashMap setle = null; LinkedHashMap setle = null;
// 구독서비스 여부
Boolean isSubsvc = goodsList.get(0).containsKey("subsvcInnb");
//회원일 경우에만 enuri정보 존재 //회원일 경우에만 enuri정보 존재
if(user.getUserInnb() > 0){ if(user.getUserInnb() > 0){
@@ -3151,8 +3166,7 @@ public class OrdrController {
return content; return content;
} }
if (!isSubsvc && CollectionUtils.isEmpty(enuri)) {
if (CollectionUtils.isEmpty(enuri)) {
log.info("할인 또는 결제 정보를 찾을 수 없습니다."); log.info("할인 또는 결제 정보를 찾을 수 없습니다.");
content.put("result","Y"); content.put("result","Y");
content.put("message", "할인 또는 결제 정보를 찾을 수 없습니다."); content.put("message", "할인 또는 결제 정보를 찾을 수 없습니다.");
@@ -3162,7 +3176,7 @@ public class OrdrController {
String sopmalCd = (String) param.get("sopmalCd"); String sopmalCd = (String) param.get("sopmalCd");
String ordrTyCd = (String) param.get("ordrTyCd"); String ordrTyCd = (String) param.get("ordrTyCd");
String mbrInnb = (String) goodsList.get(0).get("mbrInnb"); String mbrInnb = String.valueOf(goodsList.get(0).get("mbrInnb"));
String mbrDvCd = (String) goodsList.get(0).get("mbrDvCd"); String mbrDvCd = (String) goodsList.get(0).get("mbrDvCd");
String ordrrMbtlnb = (String) purchsr.get("mbtlnb"); String ordrrMbtlnb = (String) purchsr.get("mbtlnb");
@@ -3300,7 +3314,12 @@ public class OrdrController {
//회원/비회원 총결제금액 //회원/비회원 총결제금액
String reqSetleAmt = StringUtil.isNullToString(setle.get("rlSetleAmt")); String reqSetleAmt = StringUtil.isNullToString(setle.get("rlSetleAmt"));
//재계산된 총결제금액관련정보 //재계산된 총결제금액관련정보
Map<String, Object> resultAmt = service.selectSetleExpectAmt(param); Map<String, Object> resultAmt;
if(isSubsvc) {
resultAmt = service.selectSubsvcSetleExpectAmt(param);
} else {
resultAmt = service.selectSetleExpectAmt(param);
}
if(resultAmt.containsKey("setleExpectAmt")){ if(resultAmt.containsKey("setleExpectAmt")){
LinkedHashMap setleExpectAmt = (LinkedHashMap) resultAmt.get("setleExpectAmt"); LinkedHashMap setleExpectAmt = (LinkedHashMap) resultAmt.get("setleExpectAmt");

View File

@@ -66,6 +66,10 @@
, RCIPT_NB , RCIPT_NB
, SLE_EMPL_NM , SLE_EMPL_NM
, DWLD_COUPON_INNB , DWLD_COUPON_INNB
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(subsvcInnb)">
, SUBSVC_INNB
, SUBSVC_AT
</if>
, INDVDL_SETLE_SMS_CN , INDVDL_SETLE_SMS_CN
, INDVDL_SETLE_SMS_MBTLNB , INDVDL_SETLE_SMS_MBTLNB
, INDVDL_SETLE_SMS_AT , INDVDL_SETLE_SMS_AT
@@ -132,6 +136,10 @@
, #{rciptNb} , #{rciptNb}
, #{sleEmplNm} , #{sleEmplNm}
, #{dwldCouponInnb} , #{dwldCouponInnb}
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(subsvcInnb)">
, #{subsvcInnb}
, 'Y'
</if>
, #{indvdlSetleSmsCn} , #{indvdlSetleSmsCn}
, HEX(AES_ENCRYPT(REPLACE(#{indvdlSetleSmsMbtlnb}, '-', ''), '1df5be2f7e90ae36')) , HEX(AES_ENCRYPT(REPLACE(#{indvdlSetleSmsMbtlnb}, '-', ''), '1df5be2f7e90ae36'))
, #{indvdlSetleSmsAt} , #{indvdlSetleSmsAt}

View File

@@ -61,6 +61,15 @@
, GS.MBL_SUBSVC_DC_PC_SAME_AT /*모바일 구독서비스 설명 PC동일여부*/ , GS.MBL_SUBSVC_DC_PC_SAME_AT /*모바일 구독서비스 설명 PC동일여부*/
, GS.LAST_PROCS_ODR /*최종차수*/ , GS.LAST_PROCS_ODR /*최종차수*/
, GS.DFT_GOODS_OPTN_INNB /*기본상품옵션고유번호*/ , GS.DFT_GOODS_OPTN_INNB /*기본상품옵션고유번호*/
, 1 AS QY /*구독서비스 결제 수량*/
]]>
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(mbrInnb)">
, #{mbrInnb} AS mbrInnb /*회원 고유번호*/
</if>
<if test="@com.wb.domainserver.util.dataaccess.MybaitsUtil@isNotEmpty(mbrDvCd)">
, #{mbrDvCd} AS mbrDvCd /*회원구분코드*/
</if>
<![CDATA[
FROM GC_SUBSVC GS FROM GC_SUBSVC GS
WHERE GS.SOPMAL_CD = #{sopmalCd} WHERE GS.SOPMAL_CD = #{sopmalCd}
AND GS.SUBSVC_INNB = #{subsvcInnb} AND GS.SUBSVC_INNB = #{subsvcInnb}

View File

@@ -4241,7 +4241,7 @@
AND FC.SOPMAL_CD = #{sopmalCd} AND FC.SOPMAL_CD = #{sopmalCd}
AND FC.INPUT_OPTN_RELATE_NB = FGO.GOODS_OPTN_INNB AND FC.INPUT_OPTN_RELATE_NB = FGO.GOODS_OPTN_INNB
<if test="mbrInnb == 0 "> <if test="mbrInnb == 0 ">
AND FC.SESION_ID = #{sesionId} AND FC.SESION_ID = #{sesionId}0
</if> </if>
<if test="mbrInnb != 0 "> <if test="mbrInnb != 0 ">
AND FC.MBR_INNB = #{mbrInnb} AND FC.MBR_INNB = #{mbrInnb}
@@ -5589,6 +5589,97 @@
LIMIT #{recordCountPerPage} OFFSET #{firstIndex} LIMIT #{recordCountPerPage} OFFSET #{firstIndex}
</select> </select>
<!-- 사용자 > 구독서비스 결제 > 구독서비스 주문 상품 목록 조회 -->
<select id="selectSubsvcGoodsList" parameterType="com.wb.domainserver.domain.gcone.goods.subsvc.vo.BOSubsvcVO" resultType="com.wb.domainserver.domain.gcone.goods.subsvc.vo.BOSubsvcVO">
WITH RECURSIVE seq AS (
SELECT 1 AS n
UNION ALL
SELECT n + 1 FROM seq WHERE n <![CDATA[<]]> 24
)
SELECT GGO.SOPMAL_CD
, #{mbrInnb} AS MBR_INNB
, (
SELECT GM.MBR_DV_CD
FROM GC_MEMBER GM
INNER JOIN GC_MEMBER_GRAD_MAPPING GMGM
ON GMGM.MBR_INNB = GM.MBR_INNB
AND GMGM.MBR_DV_CD = GM.MBR_DV_CD
WHERE GM.USE_AT = 'Y'
AND GMGM.SOPMAL_CD = #{sopmalCd}
AND GMGM.MBR_INNB = #{mbrInnb}
) AS MBR_DV_CD
, GGO.GOODS_INNB
, GS.DFT_GOODS_OPTN_INNB AS GOODS_OPTN_INNB
, CAST(#{qy} AS UNSIGNED) AS QY
-- , (
-- SELECT CONCAT(
-- GS.SOPMAL_CD, ',',
-- GGO.GOODS_INNB, ',',
-- GS.DFT_GOODS_OPTN_INNB, ',',
-- GGO.OPTN_NM_1, ',',
-- ''#INPUT_OPTN_CN
-- )
-- ) AS INPUT_OPTN
-- , (
-- SELECT CONCAT(
-- GGO.OPTN_NM_1, ':',
-- ''#INPUT_OPTN_CN
-- )
-- ) AS INPUT_OPTN_TEXT
, GG.DLVY_GROUP_INNB
, GG.GOODS_STTUS_CD
, CASE WHEN GG.GOODS_STTUS_CD='03' AND GG.SEL_STPGE_CUSTOM_WORDS_AT ='Y' AND IFNULl(GG.SEL_STPGE_CUSTOM_WORDS, '')!='' THEN GG.SEL_STPGE_CUSTOM_WORDS
ELSE FN_GET_COMMCODE_NAME('GOODS_STTUS', GG.GOODS_STTUS_CD)
END AS GOODS_STTUS_NM
, GG.GOODS_NM
, GGO.OPTN_TY
, GGO.OPTN_RELATE_NB
, GGO.COMPNB_DSCNT_AT
, GGO.SCTN_DSCNT_AT
, NULLIF(GGO.OPTN_ESSNTL_AT, '') AS OPTN_ESSNTL_AT
, FORMAT(IFNULL(GGO.CNSMRPRIC, 0) * #{qy}, 0) AS SUB_CNSMRPRIC_BY_FORMAT
, IFNULL(GGO.CNSMRPRIC, 0) * #{qy} AS SUB_CNSMRPRIC
, FORMAT(IFNULL(GGO.CNSMRPRIC, 0), 0) AS CNSMRPRIC_BY_FORMAT
, IFNULL(GGO.CNSMRPRIC, 0) AS CNSMRPRIC
, FORMAT(IFNULL(GGO.SLEPRIC, 0) * #{qy}, 0) AS SUB_SLEPRIC_BY_FORMAT
, IFNULL(GGO.SLEPRIC, 0) * #{qy} AS SUB_SLEPRIC
, FORMAT(IFNULL(GGO.SLEPRIC, 0), 0) AS SLEPRIC_BY_FORMAT
, IFNULL(GGO.SLEPRIC, 0) AS SLEPRIC
, CONCAT(GGO.OPTN1, IF(GGO.OPTN2 IS NULL , '', CONCAT('/', GGO.OPTN2))
, IF(GGO.OPTN3 IS NULL , '', CONCAT('/', GGO.OPTN3))
, IF(GGO.OPTN4 IS NULL , '', CONCAT('/', GGO.OPTN4))) AS OPTN
, GGI.IMG AS GOODS_IMG_COURS
FROM GC_SUBSVC GS
INNER JOIN (
SELECT *
, CASE WHEN GGO.OPTN_NM_1 != '' AND GGO.OPTN_VAL_1 != ''
THEN CONCAT(GGO.OPTN_NM_1,':',GGO.OPTN_VAL_1)
END OPTN1
, CASE WHEN GGO.OPTN_NM_2 != '' AND GGO.OPTN_VAL_2 != ''
THEN CONCAT(GGO.OPTN_NM_2,':',GGO.OPTN_VAL_2)
END OPTN2
, CASE WHEN GGO.OPTN_NM_3 != '' AND GGO.OPTN_VAL_3 != ''
THEN CONCAT(GGO.OPTN_NM_3,':',GGO.OPTN_VAL_3)
END OPTN3
, CASE WHEN GGO.OPTN_NM_4 != '' AND GGO.OPTN_VAL_4 != ''
THEN CONCAT(GGO.OPTN_NM_4,':',GGO.OPTN_VAL_4)
END OPTN4 from GC_GOODS_OPTION GGO
)GGO
ON GGO.SOPMAL_CD = GS.SOPMAL_CD
AND GGO.GOODS_OPTN_INNB = GS.DFT_GOODS_OPTN_INNB
INNER JOIN GC_GOODS GG
ON GGO.SOPMAL_CD = GG.SOPMAL_CD
AND GGO.GOODS_INNB = GG.GOODS_INNB
JOIN seq
ON seq.n <![CDATA[<=]]> GS.SUB_PD
LEFT JOIN GC_GOODS_IMAGE GGI ON GG.SOPMAL_CD = GGI.SOPMAL_CD
AND GG.GOODS_INNB = GGI.GOODS_INNB
AND GGI.IMG_KND = '03'
AND GGI.CUT_NB = 1
WHERE GS.SOPMAL_CD = #{sopmalCd}
AND GS.SUBSVC_INNB = #{subsvcInnb}
</select>
<!-- 한화금액이 결제금액보다 많은지 체크하여 환불금액(원화) update --> <!-- 한화금액이 결제금액보다 많은지 체크하여 환불금액(원화) update -->
<update id="updateBOWonRefundAmt" parameterType="com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOOrdrRefundVO"> <update id="updateBOWonRefundAmt" parameterType="com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOOrdrRefundVO">
<![CDATA[ <![CDATA[

View File

@@ -12,6 +12,7 @@ secured:
- /sopmal/bnft/** - /sopmal/bnft/**
- /sopmal/ordr/selectSpbk - /sopmal/ordr/selectSpbk
- /sopmal/ordr/selectMbrPurchsForm - /sopmal/ordr/selectMbrPurchsForm
- /sopmal/ordr/selectSubsvcPurchsForm
admin: admin:
anonmymous: anonmymous:
# 로그인 없이 접근가능한 uri없음 # 로그인 없이 접근가능한 uri없음

View File

@@ -22,7 +22,13 @@
<script> <script>
$(document).ready(function() { $(document).ready(function() {
var urlParams = new URLSearchParams(window.location.search);
if (urlParams.has('subsvcInnb')) {
$('#subsvcInnb').val(urlParams.get("subsvcInnb"));
}
var subsvcInnb = $('#subsvcInnb').val(); var subsvcInnb = $('#subsvcInnb').val();
$('select[name="subsvcInnb"]').niceSelect('update');
fn_select_subsvcDetail(subsvcInnb); fn_select_subsvcDetail(subsvcInnb);
fn_scroll_event(); fn_scroll_event();
}); });

View File

@@ -6,7 +6,7 @@
<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui"%> <%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui"%>
<%@ taglib prefix="f" uri="/WEB-INF/tlds/f.tld"%> <%@ taglib prefix="f" uri="/WEB-INF/tlds/f.tld"%>
<spring:eval expression="@environment.getProperty('currency-unit.default')" var="curUnit"/> <spring:eval expression="@environment.getProperty('currency-unit.default')" var="curUnit"/>
<spring:eval expression="@environment.getProperty('currency-unit.KR')" var="krUnit"/>
<%-- <%--
Class Name : SubsvcPurchsC.jsp Class Name : SubsvcPurchsC.jsp
Description : 회원 구독상품 구매하기 Description : 회원 구독상품 구매하기
@@ -79,12 +79,15 @@
const mbrDvCd = $('#mbrDvCd').val(); const mbrDvCd = $('#mbrDvCd').val();
const mbrId = $('#mbrId').val(); const mbrId = $('#mbrId').val();
const sopmalCd = $('#sopmalCd').val(); const sopmalCd = $('#sopmalCd').val();
const mbrInnb = ${data.purchsr.mbrInnb};
const subsvcInnb = ${data.subsvcOne.subsvcInnb};
let param = { let param = {
'mbrDvCd':mbrDvCd, 'mbrDvCd':mbrDvCd,
'mbrId':mbrId, 'mbrId':mbrId,
'sopmalCd':sopmalCd, 'sopmalCd':sopmalCd,
'subsvcInnb':${data.subsvcOne.subsvcInnb} 'mbrInnb':mbrInnb,
'subsvcInnb':subsvcInnb
}; };
fn_get_goods_list(param, null); fn_get_goods_list(param, null);
@@ -275,12 +278,12 @@
}); });
// 마일리지 입력 글자수제한 숫자표시 // 마일리지 입력 글자수제한 숫자표시
$('input[name="btnAllUseMlgAmt"]').on("input", function () { /*$('input[name="btnAllUseMlgAmt"]').on("input", function () {
$(".inputLimit__current").text($(this).val().length); $(".inputLimit__current").text($(this).val().length);
}); });*/
/* 배송지정보 > 배송비 쿠폰 선택 이벤트 */ /* 배송지정보 > 배송비 쿠폰 선택 이벤트 */
$(document).on('change', '.dlvylcCouponList', function() { /*$(document).on('change', '.dlvylcCouponList', function() {
// fn_check_dplct_lmtt_coupon('02', $(this)); // fn_check_dplct_lmtt_coupon('02', $(this));
if (!$(this).data('fromProductCoupon')) { if (!$(this).data('fromProductCoupon')) {
fn_check_dplct_lmtt_coupon('02', $(this)); fn_check_dplct_lmtt_coupon('02', $(this));
@@ -327,10 +330,10 @@
} }
fn_get_setle_amt(); fn_get_setle_amt();
}); });*/
/* 주문 상품 > 상품 쿠폰 선택 이벤트 */ /* 주문 상품 > 상품 쿠폰 선택 이벤트 */
$(document).on('change', '.useCoupons', function() { /*$(document).on('change', '.useCoupons', function() {
$('#dlvylcCouponList').data('fromProductCoupon', true); // 플래그 설정 $('#dlvylcCouponList').data('fromProductCoupon', true); // 플래그 설정
$('#dlvylcCouponList option:first').prop('selected', true).change(); $('#dlvylcCouponList option:first').prop('selected', true).change();
@@ -428,10 +431,10 @@
fn_get_setle_amt(); fn_get_setle_amt();
}); });*/
/* 할인 정보 > 장바구니 쿠폰 선택 이벤트 */ /* 할인 정보 > 장바구니 쿠폰 선택 이벤트 */
$('#cartCouponList').on('change', function() { /*$('#cartCouponList').on('change', function() {
if (!$(this).data('fromProductCoupon')) { if (!$(this).data('fromProductCoupon')) {
fn_check_dplct_lmtt_coupon('03', $(this)); fn_check_dplct_lmtt_coupon('03', $(this));
@@ -464,10 +467,10 @@
fn_get_setle_amt(); fn_get_setle_amt();
}); });*/
/* 할인 정보 > 마일리지 할인 포커스 아웃 이벤트 */ /* 할인 정보 > 마일리지 할인 포커스 아웃 이벤트 */
$('#useMlgAmt').focusout(function() { /*$('#useMlgAmt').focusout(function() {
$('#useCashMlgAmt').val(0); $('#useCashMlgAmt').val(0);
const useMlgAmt = $(this).val(); const useMlgAmt = $(this).val();
const mlgAmt = parseInt(!fn_is_empty(useMlgAmt) ? useMlgAmt : '0'); const mlgAmt = parseInt(!fn_is_empty(useMlgAmt) ? useMlgAmt : '0');
@@ -476,10 +479,10 @@
fn_set_enuri(); fn_set_enuri();
fn_get_setle_amt(); fn_get_setle_amt();
}); });*/
/* 할인 정보 > GC 머니 할인 포커스 아웃 이벤트 */ /* 할인 정보 > GC 머니 할인 포커스 아웃 이벤트 */
$('#useCashMlgAmt').focusout(function() { /*$('#useCashMlgAmt').focusout(function() {
const useCashMlgAmt = $(this).val(); const useCashMlgAmt = $(this).val();
const cashMlgAmt = parseInt(!fn_is_empty(useCashMlgAmt) ? useCashMlgAmt : '0'); const cashMlgAmt = parseInt(!fn_is_empty(useCashMlgAmt) ? useCashMlgAmt : '0');
const ableCashMlgAmt = $(this).closest('div').find('input[name="ableCashMlgAmt"]').val(); const ableCashMlgAmt = $(this).closest('div').find('input[name="ableCashMlgAmt"]').val();
@@ -488,10 +491,10 @@
fn_get_setle_amt(); fn_get_setle_amt();
$('#pg03').click(); $('#pg03').click();
}); });*/
/* 할인 정보 > 마일리지 모두사용 버튼 선택 이벤트 */ /* 할인 정보 > 마일리지 모두사용 버튼 선택 이벤트 */
$('#btnAllUseMlgAmt').on('click', function() { /*$('#btnAllUseMlgAmt').on('click', function() {
$('#useCashMlgAmt').val(0); $('#useCashMlgAmt').val(0);
const ableMlgAmt = parseInt($(this).closest('div').find('input[name="ableMlgAmt"]').val(), 10); const ableMlgAmt = parseInt($(this).closest('div').find('input[name="ableMlgAmt"]').val(), 10);
const lmttUseMlg = parseInt($('#lmttUseMlg').val(), 10); const lmttUseMlg = parseInt($('#lmttUseMlg').val(), 10);
@@ -501,10 +504,10 @@
fn_set_enuri(); fn_set_enuri();
fn_get_setle_amt(); fn_get_setle_amt();
}); });*/
/* 할인 정보 > GC 머니 모두사용 버튼 선택 이벤트 */ /* 할인 정보 > GC 머니 모두사용 버튼 선택 이벤트 */
$('#btnAllUseCashMlgAmt').on('click', function() { /*$('#btnAllUseCashMlgAmt').on('click', function() {
const ableCashMlgAmt = parseInt($(this).closest('div').find('input[name="ableCashMlgAmt"]').val(), 10); const ableCashMlgAmt = parseInt($(this).closest('div').find('input[name="ableCashMlgAmt"]').val(), 10);
const lmttUseCashMlg = parseInt($('#lmttUseCashMlg').val(), 10); const lmttUseCashMlg = parseInt($('#lmttUseCashMlg').val(), 10);
@@ -515,7 +518,7 @@
fn_get_setle_amt(); fn_get_setle_amt();
$('#pg03').click(); $('#pg03').click();
}); });*/
/* 결제정보 결제수단 버튼 선택 이벤트 */ /* 결제정보 결제수단 버튼 선택 이벤트 */
$('input[name="pg"]').on('click', function() { $('input[name="pg"]').on('click', function() {
@@ -863,7 +866,7 @@
fn_set_multiordrdlcylc(); // 배송지별 상품 세팅 fn_set_multiordrdlcylc(); // 배송지별 상품 세팅
fn_get_dlvylc_coupon_list_multi(); // fn_get_dlvylc_coupon_list_multi();
fn_get_setle_amt(); fn_get_setle_amt();
@@ -916,7 +919,7 @@
/* 여러곳 배송 > 배송지정보 > 배송지 쿠폰 목록 조회 */ /* 여러곳 배송 > 배송지정보 > 배송지 쿠폰 목록 조회 */
const fn_get_dlvylc_coupon_list_multi = function() { /*const fn_get_dlvylc_coupon_list_multi = function() {
let dlvylcMulti = {}; let dlvylcMulti = {};
dlvylcMulti['multiOrdrDlvylc'] = JSON.parse(localStorage.getItem('multiOrdrDlvylc')); dlvylcMulti['multiOrdrDlvylc'] = JSON.parse(localStorage.getItem('multiOrdrDlvylc'));
@@ -994,10 +997,10 @@
} }
}); });
} }
} }*/
/* 여러곳 배송 > 배송지정보 > 배송지 쿠폰 목록 세팅 */ /* 여러곳 배송 > 배송지정보 > 배송지 쿠폰 목록 세팅 */
const fn_set_dlvylc_coupon_list_multi = function(data, formIndex) { /*const fn_set_dlvylc_coupon_list_multi = function(data, formIndex) {
if (!fn_is_empty(data)) { if (!fn_is_empty(data)) {
let form = $('#dlvylcForm'); let form = $('#dlvylcForm');
@@ -1037,7 +1040,7 @@
$(form).find('.dlvyAmt').val(data.dlvyAmt); $(form).find('.dlvyAmt').val(data.dlvyAmt);
} }
} }
} }*/
/* 여러곳 배송 > 배송지별 상품목록 동기화 */ /* 여러곳 배송 > 배송지별 상품목록 동기화 */
@@ -1267,7 +1270,7 @@
fn_set_multiordrdlcylc(); fn_set_multiordrdlcylc();
fn_get_dlvylc_coupon_list_multi(); // fn_get_dlvylc_coupon_list_multi();
fn_get_setle_amt(); fn_get_setle_amt();
} }
@@ -1629,7 +1632,7 @@
fn_set_multiordrdlcylc(); fn_set_multiordrdlcylc();
fn_get_dlvylc_coupon_list_multi(); // fn_get_dlvylc_coupon_list_multi();
} }
@@ -1661,7 +1664,7 @@
localStorage.removeItem('multiOrdrDlvylc'); localStorage.removeItem('multiOrdrDlvylc');
fn_get_dlvylc_coupon_list(); // fn_get_dlvylc_coupon_list();
fn_get_setle_amt(); // 결제예정금액 조회 fn_get_setle_amt(); // 결제예정금액 조회
} else if ('05' === ordrTyValue) { // 여러곳 배송 } else if ('05' === ordrTyValue) { // 여러곳 배송
@@ -1752,7 +1755,7 @@
fn_set_multiordrdlcylc(); // 배송지별 상품객체 세팅 fn_set_multiordrdlcylc(); // 배송지별 상품객체 세팅
fn_get_dlvylc_coupon_list_multi(); // fn_get_dlvylc_coupon_list_multi();
fn_get_setle_amt(); // 결제예정금액 조회 fn_get_setle_amt(); // 결제예정금액 조회
} }
@@ -1843,7 +1846,7 @@
} }
/* 배송지정보 > 배송지 쿠폰 목록 조회 */ /* 배송지정보 > 배송지 쿠폰 목록 조회 */
const fn_get_dlvylc_coupon_list = function() { /*const fn_get_dlvylc_coupon_list = function() {
let goodsList = localStorage.getItem('goodsList'); let goodsList = localStorage.getItem('goodsList');
if (!fn_is_empty(goodsList)) { if (!fn_is_empty(goodsList)) {
@@ -1883,10 +1886,10 @@
} }
}); });
} }
} }*/
/* 배송지정보 > 배송지 쿠폰 목록 세팅 */ /* 배송지정보 > 배송지 쿠폰 목록 세팅 */
const fn_set_dlvylc_coupon_list = function(data) { /*const fn_set_dlvylc_coupon_list = function(data) {
if (!fn_is_empty(data)) { if (!fn_is_empty(data)) {
const form = $('#dlvylcForm'); const form = $('#dlvylcForm');
@@ -1919,7 +1922,7 @@
$(form).find('.dlvyAmt').val(data.dlvyAmt); $(form).find('.dlvyAmt').val(data.dlvyAmt);
} }
} }
} }*/
/* 배송지정보 > 배송지 정보 조회 */ /* 배송지정보 > 배송지 정보 조회 */
const fn_get_dlvylc_data = function() { const fn_get_dlvylc_data = function() {
@@ -1950,7 +1953,7 @@
$.ajax({ $.ajax({
type: 'post', type: 'post',
contentType: 'application/json', contentType: 'application/json',
url: '<c:url value="/sopmal/ordr/selectOrderSubsvcOne"/>', url: '<c:url value="/sopmal/ordr/selectOrderSubsvcList"/>',
data: JSON.stringify(param), data: JSON.stringify(param),
// data: JSON.stringify(requestData), // data: JSON.stringify(requestData),
dataType: 'json', dataType: 'json',
@@ -1969,13 +1972,13 @@
return false; return false;
} }
localStorage.setItem('subsvcOne', JSON.stringify(result)); localStorage.setItem('goodsList', JSON.stringify(result));
fn_set_goods_list(result); fn_set_goods_list(result);
fn_set_prsnt_list(result.prsnt); // fn_set_prsnt_list(result.prsnt);
fn_get_dlvylc_coupon_list(); // fn_get_dlvylc_coupon_list();
} }
}, },
error: function (data) { error: function (data) {
@@ -1993,17 +1996,20 @@
let tr = ''; let tr = '';
if (!fn_is_empty(data)) { if (!fn_is_empty(data)) {
tr += '<tr class="ordrGoods" data-product-id="' + fn_nvl(data.subsvcInnb, '') + '">'; for (let i = 0; i < data.length; i++) {
const goods = data[i];
tr += '<tr class="ordrGoods" data-product-id="' + fn_nvl(goods.subsvcInnb, '') + '">';
tr += ' <td>'; tr += ' <td>';
tr += ' <div class="cartItem">'; tr += ' <div class="cartItem">';
tr += ' <div class="cartItem__image">'; tr += ' <div class="cartItem__image">';
tr += ' <a href="/sopmal/main/selectSubscribeForm?subsvcInnb=' + data.subsvcInnb + '">'; tr += ' <a href="/sopmal/main/selectSubscribeForm?subsvcInnb=' + goods.subsvcInnb + '">';
tr += ' <img src="' + cdnurl + data.img + '" onerror="this.src=\'<c:url value="/pc/images/image_placeholder.png"/>\'" alt="' + data.subsvcConcatNm + '">'; tr += ' <img src="' + cdnurl + goods.img + '" onerror="this.src=\'<c:url value="/pc/images/image_placeholder.png"/>\'" alt="' + goods.subsvcConcatNm + '">';
tr += ' </a>'; tr += ' </a>';
tr += ' </div>'; tr += ' </div>';
tr += ' <div class="cartItem__productInfo">'; tr += ' <div class="cartItem__productInfo">';
tr += ' <a href="javascript:void(0);" class="cartItem__productTitle">' + data.subsvcNm + '</a>'; tr += ' <a href="javascript:void(0);" class="cartItem__productTitle">' + goods.subsvcNm + '</a>';
tr += ' <span class="cartItem__productOption"><span class="option-badge">옵션</span> ' + data.subsvcGnrNm + '</span>'; tr += ' <span class="cartItem__productOption"><span class="option-badge">옵션</span> ' + goods.subsvcGnrNm + '</span>';
// if (!fn_is_empty(goods.inputOptnText)) { // if (!fn_is_empty(goods.inputOptnText)) {
// tr += ' <span class="cartItem__productOption">' + goods.inputOptnText + '</span>'; // tr += ' <span class="cartItem__productOption">' + goods.inputOptnText + '</span>';
@@ -2013,13 +2019,13 @@
tr += ' </div>' tr += ' </div>'
// tr += ' <input type="hidden" class="dplctLmttCoupon" value="' + fn_nvl(goods.dplctLmttCoupon, '') + '"/>'; // tr += ' <input type="hidden" class="dplctLmttCoupon" value="' + fn_nvl(goods.dplctLmttCoupon, '') + '"/>';
// tr += ' <input type="hidden" class="dplctLmttEvtnm" value="' + fn_nvl(goods.dplctLmttEvtnm, '') + '"/>'; // tr += ' <input type="hidden" class="dplctLmttEvtnm" value="' + fn_nvl(goods.dplctLmttEvtnm, '') + '"/>';
// tr += ' <input type="hidden" class="goodsInnb" value="' + fn_nvl(goods.goodsInnb, '') + '"/>'; tr += ' <input type="hidden" class="subsvcInnb" value="' + fn_nvl(goods.subsvcInnb, '') + '"/>';
// tr += ' <input type="hidden" class="goodsOptnInnb productGoodsOptnInnb" value="' + fn_nvl(goods.goodsOptnInnb, '') + '"/>'; // tr += ' <input type="hidden" class="goodsOptnInnb productGoodsOptnInnb" value="' + fn_nvl(goods.goodsOptnInnb, '') + '"/>';
// tr += ' <input type="hidden" class="inputOptn" value="' + fn_nvl(goods.inputOptn, '') + '"/>'; // tr += ' <input type="hidden" class="inputOptn" value="' + fn_nvl(goods.inputOptn, '') + '"/>';
// tr += ' <input type="hidden" class="inputOptnText" value="' + fn_nvl(goods.inputOptnText, '') + '"/>'; // tr += ' <input type="hidden" class="inputOptnText" value="' + fn_nvl(goods.inputOptnText, '') + '"/>';
// tr += ' <input type="hidden" class="qy productQtyInput" value="' + fn_nvl(goods.qy, '') + '"/>'; tr += ' <input type="hidden" class="qy productQtyInput" value="' + fn_nvl(goods.qy, '') + '"/>';
// tr += ' <input type="hidden" class="usedCoupons" value="' + fn_nvl(goods.usedCoupons, '') + '"/>'; // tr += ' <input type="hidden" class="usedCoupons" value="' + fn_nvl(goods.usedCoupons, '') + '"/>';
// tr += ' <input type="hidden" class="product-dlvyGroupInnb" value="' + fn_nvl(goods.dlvyGroupInnb, '') + '"/>'; tr += ' <input type="hidden" class="product-dlvyGroupInnb" value="' + fn_nvl(goods.dlvyGroupInnb, '') + '"/>';
// tr += ' <input type="hidden" class="product-slepric" value="' + fn_nvl(goods.slepric, '') + '"/>'; // tr += ' <input type="hidden" class="product-slepric" value="' + fn_nvl(goods.slepric, '') + '"/>';
// tr += ' <input type="hidden" class="product-dscntAmt" value="' + fn_nvl(goods.dscntAmt, '') + '"/>'; // tr += ' <input type="hidden" class="product-dscntAmt" value="' + fn_nvl(goods.dscntAmt, '') + '"/>';
// tr += ' <input type="hidden" class="product-mbrInnb" value="' + fn_nvl(goods.mbrInnb, '') + '"/>'; // tr += ' <input type="hidden" class="product-mbrInnb" value="' + fn_nvl(goods.mbrInnb, '') + '"/>';
@@ -2031,8 +2037,8 @@
tr += ' <span class="cartItem__discountPrice"><span class="cartItem__discountMinus">(-)</span><span class="comma product-dscntAmt-text">' + 0 + '</span><span class="priceUnit">' + curUnit + '</span></span>'; tr += ' <span class="cartItem__discountPrice"><span class="cartItem__discountMinus">(-)</span><span class="comma product-dscntAmt-text">' + 0 + '</span><span class="priceUnit">' + curUnit + '</span></span>';
tr += ' </td>'; tr += ' </td>';
tr += ' <td>'; tr += ' <td>';
tr += ' <span class="cartItem__beforePrice"><span class="comma product-subCnsmrpric">' + (data.cnsmrpric).toLocaleString() + '</span>' + curUnit + '</span>'; tr += ' <span class="cartItem__beforePrice"><span class="comma product-subCnsmrpric">' + (goods.cnsmrpric).toLocaleString() + '</span>' + curUnit + '</span>';
tr += ' <span class="cartItem__afterPrice"><span class="comma product-dscntApplyAmt">' + (data.selpric).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>'; tr += ' <span class="cartItem__afterPrice"><span class="comma product-dscntApplyAmt">' + (goods.selpric).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>';
tr += ' </td>'; tr += ' </td>';
tr += '</tr>'; tr += '</tr>';
@@ -2058,6 +2064,7 @@
// tr += ' </td>'; // tr += ' </td>';
// tr += '</tr>'; // tr += '</tr>';
// } // }
}
} else { } else {
tr += '<tr><td colSpan="100%"><spring:message code="common.nodata"/></td></tr>'; tr += '<tr><td colSpan="100%"><spring:message code="common.nodata"/></td></tr>';
} }
@@ -2067,7 +2074,7 @@
} }
/* 주문 상품 > 사은품 목록 세팅 */ /* 주문 상품 > 사은품 목록 세팅 */
const fn_set_prsnt_list = function(data) { /*const fn_set_prsnt_list = function(data) {
if (!fn_is_empty(data)) { if (!fn_is_empty(data)) {
const tbody = $('#prsntList'); const tbody = $('#prsntList');
const keys = Object.keys(data); const keys = Object.keys(data);
@@ -2123,7 +2130,7 @@
$(tbody).empty().append(tr); $(tbody).empty().append(tr);
$(tbody).closest('table').find('.select-box select').niceSelect(); $(tbody).closest('table').find('.select-box select').niceSelect();
/* 수령여부 라디오 선택 이벤트 */ /!* 수령여부 라디오 선택 이벤트 *!/
$(tbody).find('.rcvPrsnt').on('click', function () { $(tbody).find('.rcvPrsnt').on('click', function () {
const evtInnb = $(this).closest('tr').find('.evtInnb').val();// $(this).attr('evtInnb') const evtInnb = $(this).closest('tr').find('.evtInnb').val();// $(this).attr('evtInnb')
const isRcvPrsnt = $(this).val(); const isRcvPrsnt = $(this).val();
@@ -2147,10 +2154,10 @@
} else { } else {
$('#prsnt').hide(); $('#prsnt').hide();
} }
} }*/
/* 사은품 데이타 세팅 */ /* 사은품 데이타 세팅 */
const fn_get_prsnt_data = function(goodsInnb) { /*const fn_get_prsnt_data = function(goodsInnb) {
const rows = $('#prsntList').find('[class*=prsnt_]'); const rows = $('#prsntList').find('[class*=prsnt_]');
let prsnts = []; let prsnts = [];
@@ -2182,10 +2189,10 @@
} }
return prsnts; return prsnts;
} }*/
/* 할인 정보 > 장바구니 쿠폰 목록 조회 */ /* 할인 정보 > 장바구니 쿠폰 목록 조회 */
const fn_get_cart_coupon_list = function() { /*const fn_get_cart_coupon_list = function() {
let formData = fn_get_form_obj('enuriForm'); let formData = fn_get_form_obj('enuriForm');
formData.setleAmt = String(Number(formData.setleAmt) - Number(formData.dlvyAmt)); formData.setleAmt = String(Number(formData.setleAmt) - Number(formData.dlvyAmt));
@@ -2222,10 +2229,10 @@
alert('<spring:message code="error.internal-server"/>'); alert('<spring:message code="error.internal-server"/>');
} }
}); });
} }*/
/* 할인 정보 > 장바구니 쿠폰 목록 세팅 */ /* 할인 정보 > 장바구니 쿠폰 목록 세팅 */
const fn_set_cart_coupon_list = function(data) { /*const fn_set_cart_coupon_list = function(data) {
if (!fn_is_empty(data)) { if (!fn_is_empty(data)) {
const select = $('#cartCouponList'); const select = $('#cartCouponList');
const cartCouponList = data.cartCouponList; const cartCouponList = data.cartCouponList;
@@ -2251,7 +2258,7 @@
$(select).empty().append(option).niceSelect('update'); $(select).empty().append(option).niceSelect('update');
} }
} }
} }*/
/* 결제정보 > 일반결제 현금영수증 화면 세팅*/ /* 결제정보 > 일반결제 현금영수증 화면 세팅*/
const fn_set_csh_rcipt_issu = function(id) { const fn_set_csh_rcipt_issu = function(id) {
@@ -2439,7 +2446,7 @@
} }
/* 할인 정보 > 할인 정보 정보 세팅 */ /* 할인 정보 > 할인 정보 정보 세팅 */
const fn_set_enuri = function() { /*const fn_set_enuri = function() {
let enuri = fn_get_form_obj('enuriForm'); let enuri = fn_get_form_obj('enuriForm');
const cartCoupon = JSON.parse(localStorage.getItem('cartCoupon')); const cartCoupon = JSON.parse(localStorage.getItem('cartCoupon'));
@@ -2448,7 +2455,7 @@
} }
localStorage.setItem('enuri', JSON.stringify(enuri)); localStorage.setItem('enuri', JSON.stringify(enuri));
} }*/
/* 결제예정금액 > 결제금액 조회 */ /* 결제예정금액 > 결제금액 조회 */
const fn_get_setle_amt = function() { const fn_get_setle_amt = function() {
@@ -2465,8 +2472,8 @@
setle['sopmalCd'] = $('#sopmalCd').val(); setle['sopmalCd'] = $('#sopmalCd').val();
setle['dlvylc'] = JSON.parse(localStorage.getItem('dlvylc')); setle['dlvylc'] = JSON.parse(localStorage.getItem('dlvylc'));
setle['subsvcOne'] = JSON.parse(localStorage.getItem('subsvcOne')); setle['goodsList'] = JSON.parse(localStorage.getItem('goodsList'));
setle['enuri'] = JSON.parse(localStorage.getItem('enuri')); // setle['enuri'] = JSON.parse(localStorage.getItem('enuri'));
setle['dlvylcZip'] = localStorage.getItem('dlvylcZip'); setle['dlvylcZip'] = localStorage.getItem('dlvylcZip');
setle['dlvylcAreaCd'] = localStorage.getItem('dlvylcAreaCd'); setle['dlvylcAreaCd'] = localStorage.getItem('dlvylcAreaCd');
setle['prefcd'] = localStorage.getItem('prefcd'); setle['prefcd'] = localStorage.getItem('prefcd');
@@ -2487,19 +2494,19 @@
if (parseData.status === '1') { if (parseData.status === '1') {
alert(parseData.message); alert(parseData.message);
let useMilg = $('.useMilg').text().replace(/,/g, ''); // let useMilg = $('.useMilg').text().replace(/,/g, '');
if (!fn_is_empty(parseData.mlgMxmmUseAmt)) { // if (!fn_is_empty(parseData.mlgMxmmUseAmt)) {
let mlgMxmmUseAmt = parseAmount(parseData.mlgMxmmUseAmt); // let mlgMxmmUseAmt = parseAmount(parseData.mlgMxmmUseAmt);
useMilg = mlgMxmmUseAmt; // useMilg = mlgMxmmUseAmt;
} // }
$('#useMlgAmt').val(useMilg); // $('#useMlgAmt').val(useMilg);
let useCashMilg = $('.useCashMilg').text().replace(/,/g, ''); // let useCashMilg = $('.useCashMilg').text().replace(/,/g, '');
$('#useCashMlgAmt').val(useCashMilg); // $('#useCashMlgAmt').val(useCashMilg);
fn_set_enuri(); // fn_set_enuri();
fn_get_setle_amt(); fn_get_setle_amt();
} else { } else {
@@ -2514,12 +2521,12 @@
if (ordrTyCd === '05') { // 여러곳 배송 if (ordrTyCd === '05') { // 여러곳 배송
fn_set_multiordrdlcylc(); fn_set_multiordrdlcylc();
fn_get_dlvylc_coupon_list_multi(); // fn_get_dlvylc_coupon_list_multi();
} else { } else {
fn_get_dlvylc_coupon_list(); // fn_get_dlvylc_coupon_list();
} }
fn_get_cart_coupon_list(); // fn_get_cart_coupon_list();
} }
} }
@@ -2541,50 +2548,51 @@
$('#accmlMlgAmtSapn').text((data.accmlMlgAmt).toLocaleString()); $('#accmlMlgAmtSapn').text((data.accmlMlgAmt).toLocaleString());
$('#setleAmtSapn').text((data.setleAmt).toLocaleString()); $('#setleAmtSapn').text((data.setleAmt).toLocaleString());
$('#setleAmtKrSapn').text((data.setleAmtKr).toLocaleString());
let li = ''; let li = '';
if (data.evtDscntAmt > 0) { // if (data.evtDscntAmt > 0) {
li += '<li class="cartOrderBox__miscItem first">'; // li += '<li class="cartOrderBox__miscItem first">';
li += ' <span class="cartOrderBox__miscTh">이벤트</span>'; // li += ' <span class="cartOrderBox__miscTh">이벤트</span>';
li += ' <span class="cartOrderBox__miscTd"><span class="comma">' + (data.evtDscntAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>'; // li += ' <span class="cartOrderBox__miscTd"><span class="comma">' + (data.evtDscntAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>';
li += '</li>'; // li += '</li>';
} // }
if (data.goodsCouponDscntAmt > 0) { // if (data.goodsCouponDscntAmt > 0) {
li += '<li class="cartOrderBox__miscItem">'; // li += '<li class="cartOrderBox__miscItem">';
li += ' <span class="cartOrderBox__miscTh">상품 쿠폰</span>'; // li += ' <span class="cartOrderBox__miscTh">상품 쿠폰</span>';
li += ' <span class="cartOrderBox__miscTd"><span class="comma">' + (data.goodsCouponDscntAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>'; // li += ' <span class="cartOrderBox__miscTd"><span class="comma">' + (data.goodsCouponDscntAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>';
li += '</li>'; // li += '</li>';
} // }
if (data.dlvyCouponDscntAmt > 0) { // if (data.dlvyCouponDscntAmt > 0) {
li += '<li class="cartOrderBox__miscItem">'; // li += '<li class="cartOrderBox__miscItem">';
li += ' <span class="cartOrderBox__miscTh">배송비 쿠폰</span>'; // li += ' <span class="cartOrderBox__miscTh">배송비 쿠폰</span>';
li += ' <span class="cartOrderBox__miscTd"><span class="comma">' + (data.dlvyCouponDscntAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>'; // li += ' <span class="cartOrderBox__miscTd"><span class="comma">' + (data.dlvyCouponDscntAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>';
li += '</li>'; // li += '</li>';
} // }
if (data.cartCouponDscntAmt > 0) { // if (data.cartCouponDscntAmt > 0) {
li += '<li class="cartOrderBox__miscItem">'; // li += '<li class="cartOrderBox__miscItem">';
li += ' <span class="cartOrderBox__miscTh">장바구니 쿠폰</span>'; // li += ' <span class="cartOrderBox__miscTh">장바구니 쿠폰</span>';
li += ' <span class="cartOrderBox__miscTd"><span class="comma">' + (data.cartCouponDscntAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>'; // li += ' <span class="cartOrderBox__miscTd"><span class="comma">' + (data.cartCouponDscntAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>';
li += '</li>'; // li += '</li>';
} // }
if (data.useMlgAmt > 0) { // if (data.useMlgAmt > 0) {
li += '<li class="cartOrderBox__miscItem">'; // li += '<li class="cartOrderBox__miscItem">';
li += ' <span class="cartOrderBox__miscTh">마일리지 할인</span>'; // li += ' <span class="cartOrderBox__miscTh">마일리지 할인</span>';
li += ' <span class="cartOrderBox__miscTd"><span class="comma useMilg">' + (data.useMlgAmt).toLocaleString() + '</span><span class="priceUnit">점</span></span>'; // li += ' <span class="cartOrderBox__miscTd"><span class="comma useMilg">' + (data.useMlgAmt).toLocaleString() + '</span><span class="priceUnit">점</span></span>';
li += '</li>'; // li += '</li>';
} // }
if (data.useCashMlgAmt > 0) { // if (data.useCashMlgAmt > 0) {
li += '<li class="cartOrderBox__miscItem">'; // li += '<li class="cartOrderBox__miscItem">';
li += ' <span class="cartOrderBox__miscTh">GC 머니 할인</span>'; // li += ' <span class="cartOrderBox__miscTh">GC 머니 할인</span>';
li += ' <span class="cartOrderBox__miscTd"><span class="comma useCashMilg">' + (data.useCashMlgAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>'; // li += ' <span class="cartOrderBox__miscTd"><span class="comma useCashMilg">' + (data.useCashMlgAmt).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>';
li += '</li>'; // li += '</li>';
} // }
if (!fn_is_empty(data.dlvyAmtMap)) { if (!fn_is_empty(data.dlvyAmtMap)) {
const form = $('#dlvylcForm'); const form = $('#dlvylcForm');
@@ -2623,6 +2631,7 @@
$('#enuriForm').find('#stdrGoodsSetleAmt').val(data.stdrGoodsSetleAmt); $('#enuriForm').find('#stdrGoodsSetleAmt').val(data.stdrGoodsSetleAmt);
$('#enuriForm').find('#cartCoupondlvyAmt').val(data.dlvyAmt); $('#enuriForm').find('#cartCoupondlvyAmt').val(data.dlvyAmt);
$('#setleForm').find('#rlSetleAmt').val(data.setleAmt); $('#setleForm').find('#rlSetleAmt').val(data.setleAmt);
$('#setleForm').find('#wonRlSetleAmt').val(data.setleAmtKr);
} }
if (!fn_is_empty(data.lmttUseMlg)) { if (!fn_is_empty(data.lmttUseMlg)) {
@@ -2643,13 +2652,13 @@
let order = {}; let order = {};
let isValid = true; let isValid = true;
let localGoods = localStorage.getItem('goodsList'); // let localGoods = localStorage.getItem('goodsList');
let goodsLists = JSON.parse(localGoods); // let goodsLists = JSON.parse(localGoods);
const ordrTyCd = $('input[name="ordrTy"]:checked').val(); const ordrTyCd = $('input[name="ordrTy"]:checked').val();
// 상품 고유번호로 그룹화 // 상품 고유번호로 그룹화
let groupedGoods = goodsLists.reduce((groups, item) => { /*let groupedGoods = goodsLists.reduce((groups, item) => {
if (!groups[item.goodsInnb]) { if (!groups[item.goodsInnb]) {
groups[item.goodsInnb] = []; groups[item.goodsInnb] = [];
} }
@@ -2669,7 +2678,7 @@
return false; return false;
} }
}); });*/
/* 배송지 정합성 검사 시작 */ /* 배송지 정합성 검사 시작 */
@@ -2737,14 +2746,14 @@
order['dlvylcAreaCd'] = localStorage.getItem('dlvylcAreaCd'); order['dlvylcAreaCd'] = localStorage.getItem('dlvylcAreaCd');
order['prefcd'] = localStorage.getItem('prefcd'); order['prefcd'] = localStorage.getItem('prefcd');
// order['subsvcInnb'] = 0; order['subsvcInnb'] = ${data.subsvcOne.subsvcInnb};
// order['subsvcAt'] = 'N'; // order['subsvcAt'] = 'Y';
/* 여러곳 배송 > 배송지별 정합성 검사 시작 */ /* 여러곳 배송 > 배송지별 정합성 검사 시작 */
if (ordrTyCd === '05') { // 여러곳 배송 if (ordrTyCd === '05') { // 여러곳 배송
fn_set_multiordrdlcylc(); fn_set_multiordrdlcylc();
fn_get_dlvylc_coupon_list_multi(); // fn_get_dlvylc_coupon_list_multi();
// 상품 수량 채크 // 상품 수량 채크
$('.multiOrdrInnerShipping').each(function (idx) { $('.multiOrdrInnerShipping').each(function (idx) {
@@ -3049,15 +3058,15 @@
order['goodsList'] = JSON.parse(goodsList); order['goodsList'] = JSON.parse(goodsList);
} }
order['prsnt'] = fn_get_prsnt_data(); // order['prsnt'] = fn_get_prsnt_data();
/* 주문상품, 사은품 데이터 세팅 종료 */ /* 주문상품, 사은품 데이터 세팅 종료 */
/* 에누리 데이터 세팅 시작 */ /* 에누리 데이터 세팅 시작 */
const enuri = localStorage.getItem('enuri'); // const enuri = localStorage.getItem('enuri');
if (!fn_is_empty(enuri)) { // if (!fn_is_empty(enuri)) {
order['enuri'] = JSON.parse(enuri); // order['enuri'] = JSON.parse(enuri);
} // }
/* 에누리 데이터 세팅 종료 */ /* 에누리 데이터 세팅 종료 */
@@ -3067,14 +3076,14 @@
let stdrGoodsList = []; let stdrGoodsList = [];
$('#goodsList').find('.ordrGoods').each(function () { $('#goodsList').find('.ordrGoods').each(function () {
const goodsInnb = $(this).find('.goodsInnb').val(); const subsvcInnb = $(this).find('.subsvcInnb').val();
const goodsOptnInnb = $(this).find('.goodsOptnInnb').val(); // const goodsOptnInnb = $(this).find('.goodsOptnInnb').val();
const qy = $(this).find('.qy').val(); const qy = $(this).find('.qy').val();
let goods = { let goods = {
'sopmalCd': sopmalCd, 'sopmalCd': sopmalCd,
'goodsInnb': goodsInnb, 'subsvcInnb': subsvcInnb,
'goodsOptnInnb': goodsOptnInnb, // 'goodsOptnInnb': goodsOptnInnb,
'qy': qy 'qy': qy
}; };
@@ -3088,9 +3097,9 @@
storageTempGoodsList.forEach((item, index) => { storageTempGoodsList.forEach((item, index) => {
let goods = { let goods = {
'sopmalCd': sopmalCd, 'sopmalCd': sopmalCd,
'goodsInnb': item.goodsInnb.toString(), 'subsvcInnb': item.subsvcInnb.toString(),
'goodsOptnInnb': item.goodsOptnInnb.toString(), // 'goodsOptnInnb': item.goodsOptnInnb.toString(),
'qy': item.qy.toString() 'qy': item.qy.toString(),
}; };
storageGoodsList.push(goods); storageGoodsList.push(goods);
@@ -3106,12 +3115,15 @@
const setleAmtFromOrder = order['setle']['rlSetleAmt']; // 실 결제금액 const setleAmtFromOrder = order['setle']['rlSetleAmt']; // 실 결제금액
const enuriObj = JSON.parse(enuri); // const enuriObj = JSON.parse(enuri);
const setleAmtFromEnuri = enuriObj['setleAmt']; // 계산된 결제금액 // const setleAmtFromEnuri = enuriObj['setleAmt']; // 계산된 결제금액
const setleAmtFromSubsvc = order.goodsList.reduce(function(sum, item){
return sum + Number(item.selpric || 0); // 계산된 결제금액
}, 0);
if (setleAmtFromOrder !== setleAmtFromEnuri) { if (setleAmtFromOrder != setleAmtFromSubsvc) {
alert(ordrCheckMsg); alert(ordrCheckMsg);
location.reload(); // location.reload();
return false; return false;
} }
/* ********************* 실 결제금액 세팅 결제금액 비교 종료 ********************* */ /* ********************* 실 결제금액 세팅 결제금액 비교 종료 ********************* */
@@ -3172,7 +3184,7 @@
} }
/* 중복제한 쿠폰 체크 */ /* 중복제한 쿠폰 체크 */
const fn_check_dplct_lmtt_coupon = function(cpnDvCd, obj) { /*const fn_check_dplct_lmtt_coupon = function(cpnDvCd, obj) {
const objGoodsOptnInnb = obj.closest('tr').prev('tr').find('.goodsOptnInnb').val(); // 이벤트 발생 상품옵션고유번호 const objGoodsOptnInnb = obj.closest('tr').prev('tr').find('.goodsOptnInnb').val(); // 이벤트 발생 상품옵션고유번호
$('#goodsList').find('.ordrGoods').each(function () { $('#goodsList').find('.ordrGoods').each(function () {
@@ -3204,56 +3216,54 @@
}); });
return false; return false;
} }*/
/* form 정보 조회 */ /* form 정보 조회 */
const fn_get_form_obj = function(id) { const fn_get_form_obj = function(id) {
let formObj = {}; let formObj = {};
const inputs = $('#' + id).serializeArray(); const inputs = $('#' + id).serializeArray();
let cartCoupon = localStorage.getItem('cartCoupon'); // let cartCoupon = localStorage.getItem('cartCoupon');
let dscntAmt = 0; // let dscntAmt = 0;
if (cartCoupon) { // if (cartCoupon) {
let parsedCoupon = JSON.parse(cartCoupon); // let parsedCoupon = JSON.parse(cartCoupon);
if (parsedCoupon && parsedCoupon.dscntAmt) { // if (parsedCoupon && parsedCoupon.dscntAmt) {
dscntAmt = parseFloat(parsedCoupon.dscntAmt); // dscntAmt = parseFloat(parsedCoupon.dscntAmt);
} // }
} // }
let enuri = localStorage.getItem('enuri'); // let enuri = localStorage.getItem('enuri');
let useMlgAmt = 0; // let useMlgAmt = 0;
//
// if (enuri) {
// let parsedUseMlg = JSON.parse(enuri);
// if (parsedUseMlg && parsedUseMlg.useMlgAmt) {
// useMlgAmt = parseFloat(parsedUseMlg.useMlgAmt);
// }
// }
if (enuri) { // let goodsList = localStorage.getItem('goodsList');
let parsedUseMlg = JSON.parse(enuri); // let parsedGoodsList = JSON.parse(goodsList);
if (parsedUseMlg && parsedUseMlg.useMlgAmt) { // let goodsDscntDtlsList = parsedGoodsList[0].goodsDscntDtlsList;
useMlgAmt = parseFloat(parsedUseMlg.useMlgAmt);
}
}
let goodsList = localStorage.getItem('goodsList');
let parsedGoodsList = JSON.parse(goodsList);
let goodsDscntDtlsList = parsedGoodsList[0].goodsDscntDtlsList;
let totalDscntAmt = 0; let totalDscntAmt = 0;
goodsDscntDtlsList.forEach(item => { /*goodsDscntDtlsList.forEach(item => {
totalDscntAmt += item.dscntAmt; totalDscntAmt += item.dscntAmt;
}); });*/
let goodsDscntAmt = 0; let goodsDscntAmt = 0;
if (goodsList) { // if (goodsList) {
/** // let parsedGoodsList = JSON.parse(goodsList);
let parsedGoodsList = JSON.parse(goodsList); // if (parsedGoodsList && parsedGoodsList.useMlgAmt) {
if (parsedGoodsList && parsedGoodsList.useMlgAmt) { // goodsDscntAmt = parseFloat(parsedGoodsList.useMlgAmt);
goodsDscntAmt = parseFloat(parsedGoodsList.useMlgAmt); // }
} // }
*/
}
$('#cartDscntAmt').val(dscntAmt); // $('#cartDscntAmt').val(dscntAmt);
$('#milgDscntAmt').val(useMlgAmt); // $('#milgDscntAmt').val(useMlgAmt);
$('#totalGoodsDscntAmt').val(totalDscntAmt); $('#totalGoodsDscntAmt').val(totalDscntAmt);
$.each(inputs, function (i, input) { $.each(inputs, function (i, input) {
@@ -3967,6 +3977,7 @@
<form id="setleForm"> <form id="setleForm">
<input type="hidden" name="rlSetleAmt" id="rlSetleAmt" value=""> <input type="hidden" name="rlSetleAmt" id="rlSetleAmt" value="">
<input type="hidden" name="wonRlSetleAmt" id="wonRlSetleAmt" value="">
<input type="hidden" name="lmttUseMlg" id="lmttUseMlg" value=""> <input type="hidden" name="lmttUseMlg" id="lmttUseMlg" value="">
<input type="hidden" name="lmttUseCashMlg" id="lmttUseCashMlg" value=""> <input type="hidden" name="lmttUseCashMlg" id="lmttUseCashMlg" value="">
<input type="hidden" name="siteCdMid" id="siteCdMid" value="<c:out value="${payInfo.kcpMid}"/>"> <input type="hidden" name="siteCdMid" id="siteCdMid" value="<c:out value="${payInfo.kcpMid}"/>">
@@ -4339,9 +4350,13 @@
<span class="cartOrderBox__td"><span class="cartOrderBox__discountMinus">(-)</span><span id="dscntAmtSapn" class="comma">0</span><span class="priceUnit">${curUnit}</span></span> <span class="cartOrderBox__td"><span class="cartOrderBox__discountMinus">(-)</span><span id="dscntAmtSapn" class="comma">0</span><span class="priceUnit">${curUnit}</span></span>
</li> </li>
</ul> </ul>
<div class="cartOrderBox__total"> <div class="cartOrderBox__total" style="margin-bottom: 5px;">
<span class="cartOrderBox__totalTh">총 결제금액</span> <span class="cartOrderBox__totalTh">총 결제금액</span>
<span class="cartOrderBox__totalTd"><span id="setleAmtSapn" class="comma">0</span><span class="priceUnit">${curUnit}</span></span> <span class="cartOrderBox__td"><span id="setleAmtSapn" class="comma">0</span><span class="priceUnit">${curUnit}</span></span>
</div>
<div class="cartOrderBox__total" style="margin-top: 5px;">
<span class="cartOrderBox__totalTh"></span>
<span class="cartOrderBox__totalTd"><span id="setleAmtKrSapn" class="comma">0</span><span class="priceUnit">${krUnit}</span></span>
</div> </div>
<%--광고 수신 동의 여부가 null 일 시 --%> <%--광고 수신 동의 여부가 null 일 시 --%>
<c:if test="${empty purchsr.marktRecptnAgreAt}"> <c:if test="${empty purchsr.marktRecptnAgreAt}">

View File

@@ -16,6 +16,11 @@
$(document).ready(function() { $(document).ready(function() {
$(".header__title").text("구독 서비스"); $(".header__title").text("구독 서비스");
var urlParams = new URLSearchParams(window.location.search);
if (urlParams.has('subsvcInnb')) {
$('input[name="subsvcInnb"][value="' + urlParams.get("subsvcInnb") + '"]').prop('checked', true);
}
var subsvcInnb = $('[name="subsvcInnb"]:checked').val(); var subsvcInnb = $('[name="subsvcInnb"]:checked').val();
fn_select_subsvcDetail(subsvcInnb); fn_select_subsvcDetail(subsvcInnb);
}); });

View File

@@ -160,12 +160,13 @@
const mbrDvCd = $('#mbrDvCd').val(); const mbrDvCd = $('#mbrDvCd').val();
const mbrId = $('#mbrId').val(); const mbrId = $('#mbrId').val();
const sopmalCd = $('#sopmalCd').val(); const sopmalCd = $('#sopmalCd').val();
const subsvcInnb = ${data.subsvcOne.subsvcInnb};
let param = { let param = {
'mbrDvCd': mbrDvCd, 'mbrDvCd': mbrDvCd,
'mbrId': mbrId, 'mbrId': mbrId,
'sopmalCd': sopmalCd, 'sopmalCd': sopmalCd,
'subsvcInnb':${data.subsvcOne.subsvcInnb} 'subsvcInnb':subsvcInnb
}; };
fn_get_goods_list(param, null); fn_get_goods_list(param, null);