구독서비스 결제 적용

This commit is contained in:
이대환
2026-03-19 10:09:51 +09:00
parent 3e77f9bf31
commit bcc7371b7a
15 changed files with 501 additions and 235 deletions

View File

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

View File

@@ -6,7 +6,7 @@
<%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui"%>
<%@ 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.KR')" var="krUnit"/>
<%--
Class Name : SubsvcPurchsC.jsp
Description : 회원 구독상품 구매하기
@@ -79,12 +79,15 @@
const mbrDvCd = $('#mbrDvCd').val();
const mbrId = $('#mbrId').val();
const sopmalCd = $('#sopmalCd').val();
const mbrInnb = ${data.purchsr.mbrInnb};
const subsvcInnb = ${data.subsvcOne.subsvcInnb};
let param = {
'mbrDvCd':mbrDvCd,
'mbrId':mbrId,
'sopmalCd':sopmalCd,
'subsvcInnb':${data.subsvcOne.subsvcInnb}
'mbrInnb':mbrInnb,
'subsvcInnb':subsvcInnb
};
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);
});
});*/
/* 배송지정보 > 배송비 쿠폰 선택 이벤트 */
$(document).on('change', '.dlvylcCouponList', function() {
/*$(document).on('change', '.dlvylcCouponList', function() {
// fn_check_dplct_lmtt_coupon('02', $(this));
if (!$(this).data('fromProductCoupon')) {
fn_check_dplct_lmtt_coupon('02', $(this));
@@ -327,10 +330,10 @@
}
fn_get_setle_amt();
});
});*/
/* 주문 상품 > 상품 쿠폰 선택 이벤트 */
$(document).on('change', '.useCoupons', function() {
/*$(document).on('change', '.useCoupons', function() {
$('#dlvylcCouponList').data('fromProductCoupon', true); // 플래그 설정
$('#dlvylcCouponList option:first').prop('selected', true).change();
@@ -428,10 +431,10 @@
fn_get_setle_amt();
});
});*/
/* 할인 정보 > 장바구니 쿠폰 선택 이벤트 */
$('#cartCouponList').on('change', function() {
/*$('#cartCouponList').on('change', function() {
if (!$(this).data('fromProductCoupon')) {
fn_check_dplct_lmtt_coupon('03', $(this));
@@ -464,10 +467,10 @@
fn_get_setle_amt();
});
});*/
/* 할인 정보 > 마일리지 할인 포커스 아웃 이벤트 */
$('#useMlgAmt').focusout(function() {
/*$('#useMlgAmt').focusout(function() {
$('#useCashMlgAmt').val(0);
const useMlgAmt = $(this).val();
const mlgAmt = parseInt(!fn_is_empty(useMlgAmt) ? useMlgAmt : '0');
@@ -476,10 +479,10 @@
fn_set_enuri();
fn_get_setle_amt();
});
});*/
/* 할인 정보 > GC 머니 할인 포커스 아웃 이벤트 */
$('#useCashMlgAmt').focusout(function() {
/*$('#useCashMlgAmt').focusout(function() {
const useCashMlgAmt = $(this).val();
const cashMlgAmt = parseInt(!fn_is_empty(useCashMlgAmt) ? useCashMlgAmt : '0');
const ableCashMlgAmt = $(this).closest('div').find('input[name="ableCashMlgAmt"]').val();
@@ -488,10 +491,10 @@
fn_get_setle_amt();
$('#pg03').click();
});
});*/
/* 할인 정보 > 마일리지 모두사용 버튼 선택 이벤트 */
$('#btnAllUseMlgAmt').on('click', function() {
/*$('#btnAllUseMlgAmt').on('click', function() {
$('#useCashMlgAmt').val(0);
const ableMlgAmt = parseInt($(this).closest('div').find('input[name="ableMlgAmt"]').val(), 10);
const lmttUseMlg = parseInt($('#lmttUseMlg').val(), 10);
@@ -501,10 +504,10 @@
fn_set_enuri();
fn_get_setle_amt();
});
});*/
/* 할인 정보 > GC 머니 모두사용 버튼 선택 이벤트 */
$('#btnAllUseCashMlgAmt').on('click', function() {
/*$('#btnAllUseCashMlgAmt').on('click', function() {
const ableCashMlgAmt = parseInt($(this).closest('div').find('input[name="ableCashMlgAmt"]').val(), 10);
const lmttUseCashMlg = parseInt($('#lmttUseCashMlg').val(), 10);
@@ -515,7 +518,7 @@
fn_get_setle_amt();
$('#pg03').click();
});
});*/
/* 결제정보 결제수단 버튼 선택 이벤트 */
$('input[name="pg"]').on('click', function() {
@@ -863,7 +866,7 @@
fn_set_multiordrdlcylc(); // 배송지별 상품 세팅
fn_get_dlvylc_coupon_list_multi();
// fn_get_dlvylc_coupon_list_multi();
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 = {};
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)) {
let form = $('#dlvylcForm');
@@ -1037,7 +1040,7 @@
$(form).find('.dlvyAmt').val(data.dlvyAmt);
}
}
}
}*/
/* 여러곳 배송 > 배송지별 상품목록 동기화 */
@@ -1267,7 +1270,7 @@
fn_set_multiordrdlcylc();
fn_get_dlvylc_coupon_list_multi();
// fn_get_dlvylc_coupon_list_multi();
fn_get_setle_amt();
}
@@ -1629,7 +1632,7 @@
fn_set_multiordrdlcylc();
fn_get_dlvylc_coupon_list_multi();
// fn_get_dlvylc_coupon_list_multi();
}
@@ -1661,7 +1664,7 @@
localStorage.removeItem('multiOrdrDlvylc');
fn_get_dlvylc_coupon_list();
// fn_get_dlvylc_coupon_list();
fn_get_setle_amt(); // 결제예정금액 조회
} else if ('05' === ordrTyValue) { // 여러곳 배송
@@ -1752,7 +1755,7 @@
fn_set_multiordrdlcylc(); // 배송지별 상품객체 세팅
fn_get_dlvylc_coupon_list_multi();
// fn_get_dlvylc_coupon_list_multi();
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');
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)) {
const form = $('#dlvylcForm');
@@ -1919,7 +1922,7 @@
$(form).find('.dlvyAmt').val(data.dlvyAmt);
}
}
}
}*/
/* 배송지정보 > 배송지 정보 조회 */
const fn_get_dlvylc_data = function() {
@@ -1950,7 +1953,7 @@
$.ajax({
type: 'post',
contentType: 'application/json',
url: '<c:url value="/sopmal/ordr/selectOrderSubsvcOne"/>',
url: '<c:url value="/sopmal/ordr/selectOrderSubsvcList"/>',
data: JSON.stringify(param),
// data: JSON.stringify(requestData),
dataType: 'json',
@@ -1969,13 +1972,13 @@
return false;
}
localStorage.setItem('subsvcOne', JSON.stringify(result));
localStorage.setItem('goodsList', JSON.stringify(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) {
@@ -1993,71 +1996,75 @@
let tr = '';
if (!fn_is_empty(data)) {
tr += '<tr class="ordrGoods" data-product-id="' + fn_nvl(data.subsvcInnb, '') + '">';
tr += ' <td>';
tr += ' <div class="cartItem">';
tr += ' <div class="cartItem__image">';
tr += ' <a href="/sopmal/main/selectSubscribeForm?subsvcInnb=' + data.subsvcInnb + '">';
tr += ' <img src="' + cdnurl + data.img + '" onerror="this.src=\'<c:url value="/pc/images/image_placeholder.png"/>\'" alt="' + data.subsvcConcatNm + '">';
tr += ' </a>';
tr += ' </div>';
tr += ' <div class="cartItem__productInfo">';
tr += ' <a href="javascript:void(0);" class="cartItem__productTitle">' + data.subsvcNm + '</a>';
tr += ' <span class="cartItem__productOption"><span class="option-badge">옵션</span> ' + data.subsvcGnrNm + '</span>';
for (let i = 0; i < data.length; i++) {
const goods = data[i];
// if (!fn_is_empty(goods.inputOptnText)) {
// tr += ' <span class="cartItem__productOption">' + goods.inputOptnText + '</span>';
// }
tr += '<tr class="ordrGoods" data-product-id="' + fn_nvl(goods.subsvcInnb, '') + '">';
tr += ' <td>';
tr += ' <div class="cartItem">';
tr += ' <div class="cartItem__image">';
tr += ' <a href="/sopmal/main/selectSubscribeForm?subsvcInnb=' + goods.subsvcInnb + '">';
tr += ' <img src="' + cdnurl + goods.img + '" onerror="this.src=\'<c:url value="/pc/images/image_placeholder.png"/>\'" alt="' + goods.subsvcConcatNm + '">';
tr += ' </a>';
tr += ' </div>';
tr += ' <div class="cartItem__productInfo">';
tr += ' <a href="javascript:void(0);" class="cartItem__productTitle">' + goods.subsvcNm + '</a>';
tr += ' <span class="cartItem__productOption"><span class="option-badge">옵션</span> ' + goods.subsvcGnrNm + '</span>';
tr += ' </div>';
tr += ' </div>'
// 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="goodsInnb" value="' + fn_nvl(goods.goodsInnb, '') + '"/>';
// 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="inputOptnText" value="' + fn_nvl(goods.inputOptnText, '') + '"/>';
// 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="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-dscntAmt" value="' + fn_nvl(goods.dscntAmt, '') + '"/>';
// tr += ' <input type="hidden" class="product-mbrInnb" value="' + fn_nvl(goods.mbrInnb, '') + '"/>';
tr += ' </td>';
tr += ' <td class="qyTd">';
tr += ' <span>' + 1 + '</span>';
tr += ' </td>';
tr += ' <td>';
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 += ' <span class="cartItem__beforePrice"><span class="comma product-subCnsmrpric">' + (data.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 += ' </td>';
tr += '</tr>';
// if (!fn_is_empty(goods.inputOptnText)) {
// tr += ' <span class="cartItem__productOption">' + goods.inputOptnText + '</span>';
// }
// if (!fn_is_empty(goods.goodsCouponList)) {
// tr += '<tr>';
// tr += ' <td>';
// tr += ' <div class="cartItem__footer">';
// tr += ' <div class="select-box">';
// tr += ' <select class="useCoupons lg" title="상품쿠폰">';
// tr += ' <option value="0" selected>선택</option>';
//
// for (let j = 0; j < goods.goodsCouponList.length; j++) {
// const coupon = goods.goodsCouponList[j];
//
// tr += ' <option value="' + coupon.dwldCouponInnb + '" coupon-innb="' + coupon.couponInnb + '" dplct-dscnt-at="' + coupon.dplctDscntAt + '" otr-coupon-smtm_use-at="' + coupon.otrCouponSmtmUseAt + '" ' + ('Y' == coupon.isUse ? 'selected' : '') + '/>';
// tr += ' ' + ('Y' === coupon.otrCouponSmtmUseAt ? '' : '') + coupon.coupNm;
// tr += ' </option>';
// }
//
// tr += ' </select>';
// tr += ' </div>';
// tr += ' </div>';
// tr += ' </td>';
// tr += '</tr>';
// }
tr += ' </div>';
tr += ' </div>'
// 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="subsvcInnb" value="' + fn_nvl(goods.subsvcInnb, '') + '"/>';
// 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="inputOptnText" value="' + fn_nvl(goods.inputOptnText, '') + '"/>';
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="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-dscntAmt" value="' + fn_nvl(goods.dscntAmt, '') + '"/>';
// tr += ' <input type="hidden" class="product-mbrInnb" value="' + fn_nvl(goods.mbrInnb, '') + '"/>';
tr += ' </td>';
tr += ' <td class="qyTd">';
tr += ' <span>' + 1 + '</span>';
tr += ' </td>';
tr += ' <td>';
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 += ' <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">' + (goods.selpric).toLocaleString() + '</span><span class="priceUnit">' + curUnit + '</span></span>';
tr += ' </td>';
tr += '</tr>';
// if (!fn_is_empty(goods.goodsCouponList)) {
// tr += '<tr>';
// tr += ' <td>';
// tr += ' <div class="cartItem__footer">';
// tr += ' <div class="select-box">';
// tr += ' <select class="useCoupons lg" title="상품쿠폰">';
// tr += ' <option value="0" selected>선택</option>';
//
// for (let j = 0; j < goods.goodsCouponList.length; j++) {
// const coupon = goods.goodsCouponList[j];
//
// tr += ' <option value="' + coupon.dwldCouponInnb + '" coupon-innb="' + coupon.couponInnb + '" dplct-dscnt-at="' + coupon.dplctDscntAt + '" otr-coupon-smtm_use-at="' + coupon.otrCouponSmtmUseAt + '" ' + ('Y' == coupon.isUse ? 'selected' : '') + '/>';
// tr += ' ' + ('Y' === coupon.otrCouponSmtmUseAt ? '' : '') + coupon.coupNm;
// tr += ' </option>';
// }
//
// tr += ' </select>';
// tr += ' </div>';
// tr += ' </div>';
// tr += ' </td>';
// tr += '</tr>';
// }
}
} else {
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)) {
const tbody = $('#prsntList');
const keys = Object.keys(data);
@@ -2123,7 +2130,7 @@
$(tbody).empty().append(tr);
$(tbody).closest('table').find('.select-box select').niceSelect();
/* 수령여부 라디오 선택 이벤트 */
/!* 수령여부 라디오 선택 이벤트 *!/
$(tbody).find('.rcvPrsnt').on('click', function () {
const evtInnb = $(this).closest('tr').find('.evtInnb').val();// $(this).attr('evtInnb')
const isRcvPrsnt = $(this).val();
@@ -2147,10 +2154,10 @@
} else {
$('#prsnt').hide();
}
}
}*/
/* 사은품 데이타 세팅 */
const fn_get_prsnt_data = function(goodsInnb) {
/*const fn_get_prsnt_data = function(goodsInnb) {
const rows = $('#prsntList').find('[class*=prsnt_]');
let prsnts = [];
@@ -2182,10 +2189,10 @@
}
return prsnts;
}
}*/
/* 할인 정보 > 장바구니 쿠폰 목록 조회 */
const fn_get_cart_coupon_list = function() {
/*const fn_get_cart_coupon_list = function() {
let formData = fn_get_form_obj('enuriForm');
formData.setleAmt = String(Number(formData.setleAmt) - Number(formData.dlvyAmt));
@@ -2222,10 +2229,10 @@
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)) {
const select = $('#cartCouponList');
const cartCouponList = data.cartCouponList;
@@ -2251,7 +2258,7 @@
$(select).empty().append(option).niceSelect('update');
}
}
}
}*/
/* 결제정보 > 일반결제 현금영수증 화면 세팅*/
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');
const cartCoupon = JSON.parse(localStorage.getItem('cartCoupon'));
@@ -2448,7 +2455,7 @@
}
localStorage.setItem('enuri', JSON.stringify(enuri));
}
}*/
/* 결제예정금액 > 결제금액 조회 */
const fn_get_setle_amt = function() {
@@ -2465,8 +2472,8 @@
setle['sopmalCd'] = $('#sopmalCd').val();
setle['dlvylc'] = JSON.parse(localStorage.getItem('dlvylc'));
setle['subsvcOne'] = JSON.parse(localStorage.getItem('subsvcOne'));
setle['enuri'] = JSON.parse(localStorage.getItem('enuri'));
setle['goodsList'] = JSON.parse(localStorage.getItem('goodsList'));
// setle['enuri'] = JSON.parse(localStorage.getItem('enuri'));
setle['dlvylcZip'] = localStorage.getItem('dlvylcZip');
setle['dlvylcAreaCd'] = localStorage.getItem('dlvylcAreaCd');
setle['prefcd'] = localStorage.getItem('prefcd');
@@ -2487,19 +2494,19 @@
if (parseData.status === '1') {
alert(parseData.message);
let useMilg = $('.useMilg').text().replace(/,/g, '');
if (!fn_is_empty(parseData.mlgMxmmUseAmt)) {
let mlgMxmmUseAmt = parseAmount(parseData.mlgMxmmUseAmt);
useMilg = mlgMxmmUseAmt;
}
// let useMilg = $('.useMilg').text().replace(/,/g, '');
// if (!fn_is_empty(parseData.mlgMxmmUseAmt)) {
// let mlgMxmmUseAmt = parseAmount(parseData.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();
} else {
@@ -2514,12 +2521,12 @@
if (ordrTyCd === '05') { // 여러곳 배송
fn_set_multiordrdlcylc();
fn_get_dlvylc_coupon_list_multi();
// fn_get_dlvylc_coupon_list_multi();
} 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());
$('#setleAmtSapn').text((data.setleAmt).toLocaleString());
$('#setleAmtKrSapn').text((data.setleAmtKr).toLocaleString());
let li = '';
if (data.evtDscntAmt > 0) {
li += '<li class="cartOrderBox__miscItem first">';
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 += '</li>';
}
// if (data.evtDscntAmt > 0) {
// li += '<li class="cartOrderBox__miscItem first">';
// 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 += '</li>';
// }
if (data.goodsCouponDscntAmt > 0) {
li += '<li class="cartOrderBox__miscItem">';
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 += '</li>';
}
// if (data.goodsCouponDscntAmt > 0) {
// li += '<li class="cartOrderBox__miscItem">';
// 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 += '</li>';
// }
if (data.dlvyCouponDscntAmt > 0) {
li += '<li class="cartOrderBox__miscItem">';
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 += '</li>';
}
// if (data.dlvyCouponDscntAmt > 0) {
// li += '<li class="cartOrderBox__miscItem">';
// 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 += '</li>';
// }
if (data.cartCouponDscntAmt > 0) {
li += '<li class="cartOrderBox__miscItem">';
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 += '</li>';
}
// if (data.cartCouponDscntAmt > 0) {
// li += '<li class="cartOrderBox__miscItem">';
// 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 += '</li>';
// }
if (data.useMlgAmt > 0) {
li += '<li class="cartOrderBox__miscItem">';
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 += '</li>';
}
// if (data.useMlgAmt > 0) {
// li += '<li class="cartOrderBox__miscItem">';
// 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 += '</li>';
// }
if (data.useCashMlgAmt > 0) {
li += '<li class="cartOrderBox__miscItem">';
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 += '</li>';
}
// if (data.useCashMlgAmt > 0) {
// li += '<li class="cartOrderBox__miscItem">';
// 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 += '</li>';
// }
if (!fn_is_empty(data.dlvyAmtMap)) {
const form = $('#dlvylcForm');
@@ -2623,6 +2631,7 @@
$('#enuriForm').find('#stdrGoodsSetleAmt').val(data.stdrGoodsSetleAmt);
$('#enuriForm').find('#cartCoupondlvyAmt').val(data.dlvyAmt);
$('#setleForm').find('#rlSetleAmt').val(data.setleAmt);
$('#setleForm').find('#wonRlSetleAmt').val(data.setleAmtKr);
}
if (!fn_is_empty(data.lmttUseMlg)) {
@@ -2643,13 +2652,13 @@
let order = {};
let isValid = true;
let localGoods = localStorage.getItem('goodsList');
let goodsLists = JSON.parse(localGoods);
// let localGoods = localStorage.getItem('goodsList');
// let goodsLists = JSON.parse(localGoods);
const ordrTyCd = $('input[name="ordrTy"]:checked').val();
// 상품 고유번호로 그룹화
let groupedGoods = goodsLists.reduce((groups, item) => {
/*let groupedGoods = goodsLists.reduce((groups, item) => {
if (!groups[item.goodsInnb]) {
groups[item.goodsInnb] = [];
}
@@ -2669,7 +2678,7 @@
return false;
}
});
});*/
/* 배송지 정합성 검사 시작 */
@@ -2737,14 +2746,14 @@
order['dlvylcAreaCd'] = localStorage.getItem('dlvylcAreaCd');
order['prefcd'] = localStorage.getItem('prefcd');
// order['subsvcInnb'] = 0;
// order['subsvcAt'] = 'N';
order['subsvcInnb'] = ${data.subsvcOne.subsvcInnb};
// order['subsvcAt'] = 'Y';
/* 여러곳 배송 > 배송지별 정합성 검사 시작 */
if (ordrTyCd === '05') { // 여러곳 배송
fn_set_multiordrdlcylc();
fn_get_dlvylc_coupon_list_multi();
// fn_get_dlvylc_coupon_list_multi();
// 상품 수량 채크
$('.multiOrdrInnerShipping').each(function (idx) {
@@ -3049,15 +3058,15 @@
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)) {
order['enuri'] = JSON.parse(enuri);
}
// if (!fn_is_empty(enuri)) {
// order['enuri'] = JSON.parse(enuri);
// }
/* 에누리 데이터 세팅 종료 */
@@ -3067,14 +3076,14 @@
let stdrGoodsList = [];
$('#goodsList').find('.ordrGoods').each(function () {
const goodsInnb = $(this).find('.goodsInnb').val();
const goodsOptnInnb = $(this).find('.goodsOptnInnb').val();
const subsvcInnb = $(this).find('.subsvcInnb').val();
// const goodsOptnInnb = $(this).find('.goodsOptnInnb').val();
const qy = $(this).find('.qy').val();
let goods = {
'sopmalCd': sopmalCd,
'goodsInnb': goodsInnb,
'goodsOptnInnb': goodsOptnInnb,
'subsvcInnb': subsvcInnb,
// 'goodsOptnInnb': goodsOptnInnb,
'qy': qy
};
@@ -3088,9 +3097,9 @@
storageTempGoodsList.forEach((item, index) => {
let goods = {
'sopmalCd': sopmalCd,
'goodsInnb': item.goodsInnb.toString(),
'goodsOptnInnb': item.goodsOptnInnb.toString(),
'qy': item.qy.toString()
'subsvcInnb': item.subsvcInnb.toString(),
// 'goodsOptnInnb': item.goodsOptnInnb.toString(),
'qy': item.qy.toString(),
};
storageGoodsList.push(goods);
@@ -3106,12 +3115,15 @@
const setleAmtFromOrder = order['setle']['rlSetleAmt']; // 실 결제금액
const enuriObj = JSON.parse(enuri);
const setleAmtFromEnuri = enuriObj['setleAmt']; // 계산된 결제금액
// const enuriObj = JSON.parse(enuri);
// 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);
location.reload();
// location.reload();
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(); // 이벤트 발생 상품옵션고유번호
$('#goodsList').find('.ordrGoods').each(function () {
@@ -3204,56 +3216,54 @@
});
return false;
}
}*/
/* form 정보 조회 */
const fn_get_form_obj = function(id) {
let formObj = {};
const inputs = $('#' + id).serializeArray();
let cartCoupon = localStorage.getItem('cartCoupon');
let dscntAmt = 0;
// let cartCoupon = localStorage.getItem('cartCoupon');
// let dscntAmt = 0;
if (cartCoupon) {
let parsedCoupon = JSON.parse(cartCoupon);
if (parsedCoupon && parsedCoupon.dscntAmt) {
dscntAmt = parseFloat(parsedCoupon.dscntAmt);
}
}
// if (cartCoupon) {
// let parsedCoupon = JSON.parse(cartCoupon);
// if (parsedCoupon && parsedCoupon.dscntAmt) {
// dscntAmt = parseFloat(parsedCoupon.dscntAmt);
// }
// }
let enuri = localStorage.getItem('enuri');
let useMlgAmt = 0;
// let enuri = localStorage.getItem('enuri');
// let useMlgAmt = 0;
//
// if (enuri) {
// let parsedUseMlg = JSON.parse(enuri);
// if (parsedUseMlg && parsedUseMlg.useMlgAmt) {
// useMlgAmt = parseFloat(parsedUseMlg.useMlgAmt);
// }
// }
if (enuri) {
let parsedUseMlg = JSON.parse(enuri);
if (parsedUseMlg && parsedUseMlg.useMlgAmt) {
useMlgAmt = parseFloat(parsedUseMlg.useMlgAmt);
}
}
let goodsList = localStorage.getItem('goodsList');
let parsedGoodsList = JSON.parse(goodsList);
let goodsDscntDtlsList = parsedGoodsList[0].goodsDscntDtlsList;
// let goodsList = localStorage.getItem('goodsList');
// let parsedGoodsList = JSON.parse(goodsList);
// let goodsDscntDtlsList = parsedGoodsList[0].goodsDscntDtlsList;
let totalDscntAmt = 0;
goodsDscntDtlsList.forEach(item => {
/*goodsDscntDtlsList.forEach(item => {
totalDscntAmt += item.dscntAmt;
});
});*/
let goodsDscntAmt = 0;
if (goodsList) {
/**
let parsedGoodsList = JSON.parse(goodsList);
if (parsedGoodsList && parsedGoodsList.useMlgAmt) {
goodsDscntAmt = parseFloat(parsedGoodsList.useMlgAmt);
}
*/
}
// if (goodsList) {
// let parsedGoodsList = JSON.parse(goodsList);
// if (parsedGoodsList && parsedGoodsList.useMlgAmt) {
// goodsDscntAmt = parseFloat(parsedGoodsList.useMlgAmt);
// }
// }
$('#cartDscntAmt').val(dscntAmt);
$('#milgDscntAmt').val(useMlgAmt);
// $('#cartDscntAmt').val(dscntAmt);
// $('#milgDscntAmt').val(useMlgAmt);
$('#totalGoodsDscntAmt').val(totalDscntAmt);
$.each(inputs, function (i, input) {
@@ -3967,6 +3977,7 @@
<form id="setleForm">
<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="lmttUseCashMlg" id="lmttUseCashMlg" value="">
<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>
</li>
</ul>
<div class="cartOrderBox__total">
<div class="cartOrderBox__total" style="margin-bottom: 5px;">
<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>
<%--광고 수신 동의 여부가 null 일 시 --%>
<c:if test="${empty purchsr.marktRecptnAgreAt}">

View File

@@ -16,6 +16,11 @@
$(document).ready(function() {
$(".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();
fn_select_subsvcDetail(subsvcInnb);
});

View File

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