From 16523bba0a5edf440040dca3be5fec0ac5ea238d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9D=B4=EB=8C=80=ED=99=98?= Date: Thu, 16 Apr 2026 11:58:15 +0900 Subject: [PATCH] =?UTF-8?q?fix=20:=20=EC=83=81=EC=A0=90=EA=B4=80=EB=A6=AC?= =?UTF-8?q?=20>=20=EC=87=BC=ED=95=91=EB=AA=B0=EA=B4=80=EB=A6=AC=20>=20?= =?UTF-8?q?=EC=87=BC=ED=95=91=EB=AA=B0=20=EB=93=B1=EB=A1=9D/=EC=88=98?= =?UTF-8?q?=EC=A0=95=20-=20=EA=B5=AC=EB=8F=85=EC=84=9C=EB=B9=84=EC=8A=A4?= =?UTF-8?q?=20=EA=B2=B0=EC=A0=9C=EC=88=98=EB=8B=A8=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sopmal/service/BOMaSopmalService.java | 57 +- .../admin/store/sopmal/vo/BOMaSopmalVO.java | 12 + .../views/admin/store/sopmal/maSopmalC.jsp | 754 +++++++++------- .../views/admin/store/sopmal/maSopmalU.jsp | 807 +++++++++++------- 4 files changed, 952 insertions(+), 678 deletions(-) diff --git a/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/service/BOMaSopmalService.java b/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/service/BOMaSopmalService.java index b005f962..87093ec9 100644 --- a/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/service/BOMaSopmalService.java +++ b/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/service/BOMaSopmalService.java @@ -437,39 +437,12 @@ public class BOMaSopmalService { log.debug("masopmal {}", vo); // update payLink mapper.updateBOShopPayLink(vo); - // PC 결제 정보 - String pcSetleType = vo.getPcSetleTypeList(); - String[] pcSetleTypeArr = null; - DataMap pcSetleInfoDm = new DataMap(); - if (!StringUtil.isEmpty(pcSetleType)) { - pcSetleTypeArr = StringUtil.split(pcSetleType, "$"); - pcSetleInfoDm = ynSetParam(pcSetleTypeArr); - pcSetleInfoDm.put("updusr", vo.getUpdusr()); - pcSetleInfoDm.put("setleInfoInnb", vo.getPcSetleInfoInnb()); - mapper.updateBOShopPayInfo(pcSetleInfoDm); - } else { - pcSetleInfoDm = ynSetParam(pcSetleTypeArr); - pcSetleInfoDm.put("updusr", vo.getUpdusr()); - pcSetleInfoDm.put("setleInfoInnb", vo.getPcSetleInfoInnb()); - mapper.updateBOShopPayInfo(pcSetleInfoDm); - } - // MOBILE 결제 정보 - String mobileSetleType = vo.getMobileSetleTypeList(); - String[] mobileSetleTypeArr = null; - DataMap mobileSetleInfoDm = new DataMap(); - if (!StringUtil.isEmpty(mobileSetleType)) { - mobileSetleTypeArr = StringUtil.split(mobileSetleType, "$"); - mobileSetleInfoDm = ynSetParam(mobileSetleTypeArr); - mobileSetleInfoDm.put("updusr", vo.getUpdusr()); - mobileSetleInfoDm.put("setleInfoInnb", vo.getMobileSetleInfoInnb()); - mapper.updateBOShopPayInfo(mobileSetleInfoDm); - } else { - mobileSetleInfoDm = ynSetParam(mobileSetleTypeArr); - mobileSetleInfoDm.put("updusr", vo.getUpdusr()); - mobileSetleInfoDm.put("setleInfoInnb", vo.getMobileSetleInfoInnb()); - mapper.updateBOShopPayInfo(mobileSetleInfoDm); - } + // 결제 정보 업데이트 + updateSetleInfo(vo.getPcSetleTypeList(), vo.getPcSetleInfoInnb(), vo.getUpdusr()); // PC + updateSetleInfo(vo.getMobileSetleTypeList(), vo.getMobileSetleInfoInnb(), vo.getUpdusr()); // MOBILE + updateSetleInfo(vo.getPcSubsvcSetleTypeList(), vo.getPcSubsvcSetleInfoInnb(), vo.getUpdusr()); // 구독서비스 PC + updateSetleInfo(vo.getMobileSubsvcSetleTypeList(), vo.getMobileSubsvcSetleInfoInnb(), vo.getUpdusr()); // 구독서비스 MOBILE if (!ObjectUtils.isEmpty(vo.getFamilySiteNmArr())) { String[] siteNm = vo.getFamilySiteNmArr(); @@ -523,6 +496,26 @@ public class BOMaSopmalService { return message; } + /** + * 결제정보 업데이트 + * @param setleType 결제정보 List + * @param setleInfoInnb 결제정보 고유번호 + * @param updusr 수정자 고유번호 + */ + private void updateSetleInfo(String setleType, String setleInfoInnb, int updusr) { + String[] setleTypeArr = null; + + if (!StringUtil.isEmpty(setleType)) { + setleTypeArr = StringUtil.split(setleType, "$"); + } + + DataMap dm = ynSetParam(setleTypeArr); + dm.put("updusr", updusr); + dm.put("setleInfoInnb", setleInfoInnb); + + mapper.updateBOShopPayInfo(dm); + } + private void setBOMaSopmalVO(BOMaSopmalVO vo) { if(!StringUtil.isEmpty(vo.getSmsAtmcSndngLmttBgntme())) diff --git a/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/vo/BOMaSopmalVO.java b/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/vo/BOMaSopmalVO.java index 4bf36696..3bfb7f6a 100644 --- a/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/vo/BOMaSopmalVO.java +++ b/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/vo/BOMaSopmalVO.java @@ -483,12 +483,24 @@ public class BOMaSopmalVO extends AbstractVO { /** mobile 결제정보 List */ private String mobileSetleTypeList; + /** 구독서비스 pc 결제정보 List */ + private String pcSubsvcSetleTypeList; + + /** 구독서비스 mobile 결제정보 List */ + private String mobileSubsvcSetleTypeList; + /** pc 결제정보 Innb */ private String pcSetleInfoInnb; /** mobile 결제정보 Innb */ private String mobileSetleInfoInnb; + /** 구독서비스 pc 결제정보 Innb */ + private String pcSubsvcSetleInfoInnb; + + /** 구독서비스 mobile 결제정보 Innb */ + private String mobileSubsvcSetleInfoInnb; + /** 회원가입 안내 타이틀 */ private String joinGuidanceSj; diff --git a/src/main/webapp/WEB-INF/views/admin/store/sopmal/maSopmalC.jsp b/src/main/webapp/WEB-INF/views/admin/store/sopmal/maSopmalC.jsp index d714fee1..b0841533 100644 --- a/src/main/webapp/WEB-INF/views/admin/store/sopmal/maSopmalC.jsp +++ b/src/main/webapp/WEB-INF/views/admin/store/sopmal/maSopmalC.jsp @@ -271,34 +271,18 @@ } /* ******************************************************** - * PC 결제정보 합치기 + * 결제정보 합치기 ******************************************************** */ - const fn_make_pc_setleTyCds = function() { - var pcSetleTypeList = ''; + const fn_make_setleTyCds = function(setleTyName) { + var setleTypeList = ''; - $('[name=pc-setle-type]:checked').each(function() { - pcSetleTypeList += '$' + $(this).val(); + $('[name='+setleTyName+']:checked').each(function() { + setleTypeList += '$' + $(this).val(); }); - pcSetleTypeList = pcSetleTypeList.substring(1); - - return pcSetleTypeList; + setleTypeList = setleTypeList.substring(1); + return setleTypeList; } - /* ******************************************************** - * MOBILE 결제정보 합치기 - ******************************************************** */ - const fn_make_mobile_setleTyCds = function() { - var mobileSetleTypeList = ''; - - $('[name=mobile-setle-type]:checked').each(function() { - mobileSetleTypeList += '$' + $(this).val(); - }); - mobileSetleTypeList = mobileSetleTypeList.substring(1); - - return mobileSetleTypeList; - } - - /* ******************************************************** * 입력창 추가 ******************************************************** */ @@ -492,8 +476,10 @@ fn_make_externalLinkages(); fn_make_eamil(); - var pcSetleTypeList = fn_make_pc_setleTyCds(); - var mobileSetleTypeList = fn_make_mobile_setleTyCds(); + var pcSetleTypeList = fn_make_setleTyCds('pc-setle-type'); + var mobileSetleTypeList = fn_make_setleTyCds('mobile-setle-type'); + var pcSubsvcSetleTypeList = fn_make_setleTyCds('pc-subsvc-setle-type'); + var mobileSubsvcSetleTypeList = fn_make_setleTyCds('mobile-subsvc-setle-type'); let regForm = $('#regForm'); regForm.find("#joinGuidanceSj").val(fn_get_editor_data('#joinGuidanceSj')); @@ -517,6 +503,8 @@ params += "&pcSetleTypeList="+pcSetleTypeList; params += "&mobileSetleTypeList="+mobileSetleTypeList; + params += "&pcSubsvcSetleTypeList="+pcSubsvcSetleTypeList; + params += "&mobileSubsvcSetleTypeList="+mobileSubsvcSetleTypeList; $.ajax({ @@ -1025,296 +1013,296 @@ - - PG사 - -
-
- + + PG사 + +
+
+ +
+
- -
- - 입금기한 - -
- -
- - - - KCP결제 상점ID - -
- -
- * KCP와 계약된 사이트코드 - - - - KCP결제 인증서 - -
- -
- - * 결제 승인, 거래취소, 거래등록 시 사용 - - - KCP결제 개인키 인증서 - -
- -
- - * 결제 거래취소 시 사용되는 서명데이터 생성 시 필요한 인증서 (파일로 존재하므로 파일 경로 지정) - - - KCP결제 개인키 비밀번호 - -
- -
- * 서명데이터 생성 시 필요한 인증서 비밀번호 - - - - KCP수기결제 상점ID - -
- -
- - - - KCP수기결제 인증서 - -
- -
- - - - KCP수기결제 개인키 인증서 - -
- -
- - - - KCP수기결제 개인키 비밀번호 - -
- -
- - - - 토스/토스페이 결제 상점ID - -
- -
- * 토스페이먼츠와 계약된 상점아이디(MID) - - - - 토스/토스페이 결제 클라이언트 KEY - -
- -
- * 결제 SDK를 초기화(결제창 연동시 사용)할 때 사용 - - - - 토스/토스페이 결제 시크릿 KEY - -
- -
- * 클라이언트 키로 생성한 결제를 승인, 취소, 조회하고 싶을 때 사용 - - - - 토스/토스페이 머트 키 - -
- -
- *구 모듈(XPay)로 연동한 상점에서 배송정보 전송시 사용 - - - - 토스수기결제 상점ID - -
- -
- - - - 토스수기결제 클라이언트 KEY - -
- -
- - - - 토스수기결제 시크릿 KEY - -
- -
- - - - 토스수기결제 머트 키 - -
- -
- - - - GCPAY 상점ID - -
- -
- - - - GCPAY 클라이언트 KEY - -
- -
- - - - GCPAY 시크릿 KEY - -
- -
- - - - GCPAY 머트 키 - -
- -
- - - - EASYPAY 상점ID
(네이버/카카오) - -
- -
- - - - EASYPAY 클라이언트 KEY
(네이버/카카오) - -
- -
- - - - EASYPAY 시크릿 KEY
(네이버/카카오) - -
- -
- - - - EASYPAY 머트 키
(네이버/카카오) - -
- -
- - - - 토스/토스페이 결제 상점ID(OLD) - -
- -
- - - - 토스/토스페이 결제 클라이언트 KEY(OLD) - -
- -
- - - - 토스/토스페이 결제 시크릿 KEY(OLD) - -
- -
- - - - 토스/토스페이 결제 머트 키(OLD) - -
- -
- - + + 입금기한 + +
+ +
+ + + + KCP결제 상점ID + +
+ +
+ * KCP와 계약된 사이트코드 + + + + KCP결제 인증서 + +
+ +
+ + * 결제 승인, 거래취소, 거래등록 시 사용 + + + KCP결제 개인키 인증서 + +
+ +
+ + * 결제 거래취소 시 사용되는 서명데이터 생성 시 필요한 인증서 (파일로 존재하므로 파일 경로 지정) + + + KCP결제 개인키 비밀번호 + +
+ +
+ * 서명데이터 생성 시 필요한 인증서 비밀번호 + + + + KCP수기결제 상점ID + +
+ +
+ + + + KCP수기결제 인증서 + +
+ +
+ + + + KCP수기결제 개인키 인증서 + +
+ +
+ + + + KCP수기결제 개인키 비밀번호 + +
+ +
+ + + + 토스/토스페이 결제 상점ID + +
+ +
+ * 토스페이먼츠와 계약된 상점아이디(MID) + + + + 토스/토스페이 결제 클라이언트 KEY + +
+ +
+ * 결제 SDK를 초기화(결제창 연동시 사용)할 때 사용 + + + + 토스/토스페이 결제 시크릿 KEY + +
+ +
+ * 클라이언트 키로 생성한 결제를 승인, 취소, 조회하고 싶을 때 사용 + + + + 토스/토스페이 머트 키 + +
+ +
+ *구 모듈(XPay)로 연동한 상점에서 배송정보 전송시 사용 + + + + 토스수기결제 상점ID + +
+ +
+ + + + 토스수기결제 클라이언트 KEY + +
+ +
+ + + + 토스수기결제 시크릿 KEY + +
+ +
+ + + + 토스수기결제 머트 키 + +
+ +
+ + + + GCPAY 상점ID + +
+ +
+ + + + GCPAY 클라이언트 KEY + +
+ +
+ + + + GCPAY 시크릿 KEY + +
+ +
+ + + + GCPAY 머트 키 + +
+ +
+ + + + EASYPAY 상점ID
(네이버/카카오) + +
+ +
+ + + + EASYPAY 클라이언트 KEY
(네이버/카카오) + +
+ +
+ + + + EASYPAY 시크릿 KEY
(네이버/카카오) + +
+ +
+ + + + EASYPAY 머트 키
(네이버/카카오) + +
+ +
+ + + + 토스/토스페이 결제 상점ID(OLD) + +
+ +
+ + + + 토스/토스페이 결제 클라이언트 KEY(OLD) + +
+ +
+ + + + 토스/토스페이 결제 시크릿 KEY(OLD) + +
+ +
+ + + + 토스/토스페이 결제 머트 키(OLD) + +
+ +
+ + PC 결제수단 @@ -1453,6 +1441,144 @@
+ + 구독서비스 PC 결제수단 + +
+
+ + + + + + + + + + + + +
+
+ + + + 구독서비스 MOBILE 결제수단 + +
+
+ + + + + + + + + + + + +
+
+ + diff --git a/src/main/webapp/WEB-INF/views/admin/store/sopmal/maSopmalU.jsp b/src/main/webapp/WEB-INF/views/admin/store/sopmal/maSopmalU.jsp index e3660330..418180fb 100644 --- a/src/main/webapp/WEB-INF/views/admin/store/sopmal/maSopmalU.jsp +++ b/src/main/webapp/WEB-INF/views/admin/store/sopmal/maSopmalU.jsp @@ -265,29 +265,16 @@ } /* ******************************************************** - * PC 결제정보 합치기 + * 결제정보 합치기 ******************************************************** */ - const fn_make_pc_setleTyCds = function() { - var pcSetleTypeList = ''; + const fn_make_setleTyCds = function(setleTyName) { + var setleTypeList = ''; - $('[name=pc-setle-type]:checked').each(function() { - pcSetleTypeList += '$' + $(this).val(); + $('[name='+setleTyName+']:checked').each(function() { + setleTypeList += '$' + $(this).val(); }); - pcSetleTypeList = pcSetleTypeList.substring(1); - return pcSetleTypeList; - } - - /* ******************************************************** - * MOBILE 결제정보 합치기 - ******************************************************** */ - const fn_make_mobile_setleTyCds = function() { - var mobileSetleTypeList = ''; - - $('[name=mobile-setle-type]:checked').each(function() { - mobileSetleTypeList += '$' + $(this).val(); - }); - mobileSetleTypeList = mobileSetleTypeList.substring(1); - return mobileSetleTypeList; + setleTypeList = setleTypeList.substring(1); + return setleTypeList; } /* ******************************************************** @@ -691,8 +678,10 @@ fn_make_externalLinkages(); fn_make_eamil(); - var pcSetleTypeList = fn_make_pc_setleTyCds(); - var mobileSetleTypeList = fn_make_mobile_setleTyCds(); + var pcSetleTypeList = fn_make_setleTyCds('pc-setle-type'); + var mobileSetleTypeList = fn_make_setleTyCds('mobile-setle-type'); + var pcSubsvcSetleTypeList = fn_make_setleTyCds('pc-subsvc-setle-type'); + var mobileSubsvcSetleTypeList = fn_make_setleTyCds('mobile-subsvc-setle-type'); let updForm = $('#updForm'); updForm.find("#joinGuidanceSj").val(fn_get_editor_data('#joinGuidanceSj')); @@ -710,6 +699,8 @@ params += "&pcSetleTypeList="+pcSetleTypeList; params += "&mobileSetleTypeList="+mobileSetleTypeList; + params += "&pcSubsvcSetleTypeList="+pcSubsvcSetleTypeList; + params += "&mobileSubsvcSetleTypeList="+mobileSubsvcSetleTypeList; $.ajax({ type: 'post', @@ -1126,317 +1117,317 @@ - - PG사 - -
-
- + + PG사 + +
+
+ +
+
- -
- - 입금기한 - -
- -
- - - - KCP결제 상점ID - -
- -
- * KCP와 계약된 사이트코드 - - - - KCP결제 인증서 - -
- -
- * 결제 승인, 거래취소, 거래등록 시 사용 - - - - KCP결제 개인키 인증서 - -
- -
- * 결제 거래취소 시 사용되는 서명데이터 생성 시 필요한 인증서 (파일로 존재하므로 파일 경로 지정) - - - - KCP결제 개인키 비밀번호 - -
- -
- * 서명데이터 생성 시 필요한 인증서 비밀번호 - - - - KCP수기결제 상점ID - -
- -
- - - - KCP수기결제 인증서 - -
- -
- - - - KCP수기결제 개인키 인증서 - -
- -
- - - - KCP수기결제 개인키 비밀번호 - -
- -
- - - - 토스/토스페이 결제 상점ID - -
- -
- * 토스페이먼츠와 계약된 상점아이디(MID) - - - - 토스/토스페이 결제 클라이언트 KEY - -
- -
- * 결제 SDK를 초기화(결제창 연동시 사용)할 때 사용 - - - - 토스/토스페이 결제 시크릿 KEY - -
- -
- * 클라이언트 키로 생성한 결제를 승인, 취소, 조회하고 싶을 때 사용 - - - - 토스/토스페이 결제 머트 키 - -
- -
- *구 모듈(XPay)로 연동한 상점에서 배송정보 전송시 사용 - - - - 토스수기결제 상점ID - -
- -
- - - - 토스수기결제 클라이언트 KEY - -
- -
- - - - 토스수기결제 시크릿 KEY - -
- -
- - - - 토스수기결제 머트 키 - -
- -
- - - - GCPAY 상점ID - -
- -
- - - - GCPAY 클라이언트 KEY - -
- -
- - - - GCPAY 시크릿 KEY - -
- -
- - - - GCPAY 머트 키 - -
- -
- - - - EASYPAY 상점ID
(네이버/카카오) - -
- -
- - - - EASYPAY 클라이언트 KEY
(네이버/카카오) - -
- -
- - - - EASYPAY 시크릿 KEY
(네이버/카카오) - -
- -
- - - - EASYPAY 머트 키
(네이버/카카오) - -
- -
- - - - 토스/토스페이 결제 상점ID(OLD) - -
- -
- - - - 토스/토스페이 결제 클라이언트 KEY(OLD) - -
- -
- - - - 토스/토스페이 결제 시크릿 KEY(OLD) - -
- -
- - - - 토스/토스페이 결제 머트 키(OLD) - -
- -
- - + + 입금기한 + +
+ +
+ + + + KCP결제 상점ID + +
+ +
+ * KCP와 계약된 사이트코드 + + + + KCP결제 인증서 + +
+ +
+ * 결제 승인, 거래취소, 거래등록 시 사용 + + + + KCP결제 개인키 인증서 + +
+ +
+ * 결제 거래취소 시 사용되는 서명데이터 생성 시 필요한 인증서 (파일로 존재하므로 파일 경로 지정) + + + + KCP결제 개인키 비밀번호 + +
+ +
+ * 서명데이터 생성 시 필요한 인증서 비밀번호 + + + + KCP수기결제 상점ID + +
+ +
+ + + + KCP수기결제 인증서 + +
+ +
+ + + + KCP수기결제 개인키 인증서 + +
+ +
+ + + + KCP수기결제 개인키 비밀번호 + +
+ +
+ + + + 토스/토스페이 결제 상점ID + +
+ +
+ * 토스페이먼츠와 계약된 상점아이디(MID) + + + + 토스/토스페이 결제 클라이언트 KEY + +
+ +
+ * 결제 SDK를 초기화(결제창 연동시 사용)할 때 사용 + + + + 토스/토스페이 결제 시크릿 KEY + +
+ +
+ * 클라이언트 키로 생성한 결제를 승인, 취소, 조회하고 싶을 때 사용 + + + + 토스/토스페이 결제 머트 키 + +
+ +
+ *구 모듈(XPay)로 연동한 상점에서 배송정보 전송시 사용 + + + + 토스수기결제 상점ID + +
+ +
+ + + + 토스수기결제 클라이언트 KEY + +
+ +
+ + + + 토스수기결제 시크릿 KEY + +
+ +
+ + + + 토스수기결제 머트 키 + +
+ +
+ + + + GCPAY 상점ID + +
+ +
+ + + + GCPAY 클라이언트 KEY + +
+ +
+ + + + GCPAY 시크릿 KEY + +
+ +
+ + + + GCPAY 머트 키 + +
+ +
+ + + + EASYPAY 상점ID
(네이버/카카오) + +
+ +
+ + + + EASYPAY 클라이언트 KEY
(네이버/카카오) + +
+ +
+ + + + EASYPAY 시크릿 KEY
(네이버/카카오) + +
+ +
+ + + + EASYPAY 머트 키
(네이버/카카오) + +
+ +
+ + + + 토스/토스페이 결제 상점ID(OLD) + +
+ +
+ + + + 토스/토스페이 결제 클라이언트 KEY(OLD) + +
+ +
+ + + + 토스/토스페이 결제 시크릿 KEY(OLD) + +
+ +
+ + + + 토스/토스페이 결제 머트 키(OLD) + +
+ +
+ + PC 결제수단 @@ -1589,6 +1580,158 @@
+ + 구독서비스 PC 결제수단 + +
+
+ + + + + + + + + + + + + + + + + + + +
+
+ + + + 구독서비스 MOBILE 결제수단 + +
+
+ + + + + + + + + + + + + + + + + + + +
+
+ +