From 3c9c72848f83d244fe14ab0af1ea9b0b3d0dcb75 Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Thu, 3 Jul 2025 16:25:39 +0900 Subject: [PATCH] =?UTF-8?q?=EC=B9=9C=EA=B5=AC=ED=86=A1=20=EC=A7=84?= =?UTF-8?q?=ED=96=89=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../let/kakao/kakaoComm/KakaoSendUtil.java | 30 ++- .../impl/KakaoFriendsTalkServiceImpl.java | 8 +- .../let/sym/site/service/JoinSettingVO.java | 202 ++---------------- .../sqlmap/let/msg/MjonMsgData_SQL_mysql.xml | 4 + src/main/webapp/js/kakao/ft/ftPriceClclt.js | 2 +- src/main/webapp/js/kakao/ft/ftTabulator.js | 3 + 6 files changed, 51 insertions(+), 198 deletions(-) diff --git a/src/main/java/itn/let/kakao/kakaoComm/KakaoSendUtil.java b/src/main/java/itn/let/kakao/kakaoComm/KakaoSendUtil.java index 6bf9d267..551a1e66 100644 --- a/src/main/java/itn/let/kakao/kakaoComm/KakaoSendUtil.java +++ b/src/main/java/itn/let/kakao/kakaoComm/KakaoSendUtil.java @@ -326,12 +326,11 @@ public class KakaoSendUtil { } - - - // 시스템 기본 단가 정보 불러오기 - JoinSettingVO sysJoinSetVO = mjonMsgDataService.selectJoinSettingInfo(); + // 사용자 개인 단가 정보 불러오기 MberManageVO mberManageVO = mjonMsgDataService.selectMberManageInfo(kakaoVO.getUserId()); + // 시스템 기본 단가 정보 불러오기 + JoinSettingVO sysJoinSetVO = mjonMsgDataService.selectJoinSettingInfo(); // 치환 문구가 있는지 확인 @@ -349,15 +348,31 @@ public class KakaoSendUtil { placeholders.put("[*2*]", MjonFTSendVO::getRep2); placeholders.put("[*3*]", MjonFTSendVO::getRep3); placeholders.put("[*4*]", MjonFTSendVO::getRep4); - + String imageType = kakaoVO.getImageType(); + // 개인단가 + Float kakaoMemberFtPrice = + imageType == null ? mberManageVO.getKakaoFtPrice() : + "I".equals(imageType) ? mberManageVO.getKakaoFtImgPrice() : + "W".equals(imageType) ? mberManageVO.getKakaoFtWideImgPrice() : + mberManageVO.getKakaoFtPrice(); + + // 시스템단가 + Float kakaoSysJoinFtPrice = + imageType == null ? sysJoinSetVO.getKakaoFtPrice() : + "I".equals(imageType) ? sysJoinSetVO.getKakaoFtImgPrice() : + "W".equals(imageType) ? sysJoinSetVO.getKakaoFtWideImgPrice() : + sysJoinSetVO.getKakaoFtPrice(); + + Float kakaoFtPrice = + getValidPrice(kakaoMemberFtPrice, kakaoSysJoinFtPrice); + +// imageType // 친구통 금액 - Float kakaoFtPrice = mberManageVO.getKakaoFtPrice(); // 대체문자가 있을경우 사용 float shortPrice = getValidPrice(mberManageVO.getShortPrice(), sysJoinSetVO.getShortPrice()); float longPrice = getValidPrice(mberManageVO.getLongPrice(), sysJoinSetVO.getLongPrice()); - String shortPStr = Float.toString(shortPrice); String mmsPStr = Float.toString(longPrice); @@ -439,7 +454,6 @@ public class KakaoSendUtil { boolean isMms = "MMS".equals(sendType); sendVO.setEachPrice(isMms ? mmsPStr : shortPStr); }else { - kakaoFtPrice = getValidPrice(mberManageVO.getKakaoAtPrice(), sysJoinSetVO.getKakaoAtPrice()); sendVO.setEachPrice( Float.toString(kakaoFtPrice) ); } diff --git a/src/main/java/itn/let/kakao/user/kakaoFt/service/impl/KakaoFriendsTalkServiceImpl.java b/src/main/java/itn/let/kakao/user/kakaoFt/service/impl/KakaoFriendsTalkServiceImpl.java index 0d28cd6e..671f38cf 100644 --- a/src/main/java/itn/let/kakao/user/kakaoFt/service/impl/KakaoFriendsTalkServiceImpl.java +++ b/src/main/java/itn/let/kakao/user/kakaoFt/service/impl/KakaoFriendsTalkServiceImpl.java @@ -70,9 +70,9 @@ public class KakaoFriendsTalkServiceImpl extends EgovAbstractServiceImpl implem public StatusResponse insertKakaoFtSandAjax_advc(KakaoVO kakaoVO, HttpServletRequest request) throws Exception { StatusResponse statusResponse = new StatusResponse(); -// log.info(" + kakaoVO.toString() :: [{}]", kakaoVO.toString()); + log.info(" + kakaoVO.toString() :: [{}]", kakaoVO.toString()); -// log.info(" + kakaoVO.toString() :: [{}]", kakaoVO.ftToString()); + log.info(" + kakaoVO.toString() :: [{}]", kakaoVO.ftToString()); @@ -101,7 +101,7 @@ public class KakaoFriendsTalkServiceImpl extends EgovAbstractServiceImpl implem request.getSession().invalidate(); // UNAUTHORIZED : 인증되지 않은 사용자가 접근하려고 할 때 return new StatusResponse(HttpStatus.UNAUTHORIZED, - "현재 고객님께서는 문자온 서비스 이용이 정지된 상태로 알림톡을 발송하실 수 없습니다. 이용정지 해제를 원하시면 고객센터로 연락주시기 바랍니다."); + "현재 고객님께서는 문자온 서비스 이용이 정지된 상태로 친구톡을 발송하실 수 없습니다. 이용정지 해제를 원하시면 고객센터로 연락주시기 바랍니다."); } @@ -177,7 +177,7 @@ public class KakaoFriendsTalkServiceImpl extends EgovAbstractServiceImpl implem /** @biz_kakao_price에 insert (대체문자 환불관련 테이블)*/ kakaoVO.setMsgGroupId(sendVO.getMsgGroupId()); - kakaoVO.setKakaoAtPrice(Float.parseFloat(sendVO.getEachPrice())); + kakaoVO.setKakaoFtPrice(Float.parseFloat(sendVO.getEachPrice())); kakaoVO.setSmsPrice(Float.parseFloat(sendVO.getSmsPrice())); kakaoVO.setMmsPrice(Float.parseFloat(sendVO.getMmsPrice())); diff --git a/src/main/java/itn/let/sym/site/service/JoinSettingVO.java b/src/main/java/itn/let/sym/site/service/JoinSettingVO.java index a76eca53..f64ba44f 100644 --- a/src/main/java/itn/let/sym/site/service/JoinSettingVO.java +++ b/src/main/java/itn/let/sym/site/service/JoinSettingVO.java @@ -1,5 +1,12 @@ package itn.let.sym.site.service; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; +import lombok.ToString; + /** * 로그인정책에 대한 VO 클래스를 정의한다. * 로그인정책정보의 목록 항목을 관리한다. @@ -18,13 +25,18 @@ package itn.let.sym.site.service; * * */ + +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +@Builder +@ToString public class JoinSettingVO { /** * serialVersionUID */ - @SuppressWarnings("unused") - private static final long serialVersionUID = 1L; private float shortPrice; // 단문 단가 private float longPrice; //장문 단가 @@ -37,6 +49,9 @@ public class JoinSettingVO { private float customTextPrice; // 텍스트 단순수정 private float kakaoAtPrice; // 카카오 알림톡 단가 private float kakaoFtPrice; // 카카오 친구톡 단가 + private float kakaoFtImgPrice; // 카카오 친구톡 이미지 단가 + private float kakaoFtWideImgPrice; // 카카오 친구톡 와이드 단가 + private float faxPrice; // 팩스 단가 private float refundPer; //환불 비율 @@ -51,188 +66,5 @@ public class JoinSettingVO { private String smishingNoti; //첫결제(카드제외) 스미싱의심 알림 여부 private String holiSmishingNoti; //야간 스미싱알림 여부 - public String getSmishingNoti() { - return smishingNoti; - } - - public void setSmishingNoti(String smishingNoti) { - this.smishingNoti = smishingNoti; - } - - public float getShortPrice() { - return shortPrice; - } - - public void setShortPrice(float shortPrice) { - this.shortPrice = shortPrice; - } - - public float getLongPrice() { - return longPrice; - } - - public void setLongPrice(float longPrice) { - this.longPrice = longPrice; - } - - public float getPicturePrice() { - return picturePrice; - } - - public void setPicturePrice(float picturePrice) { - this.picturePrice = picturePrice; - } - - public float getPicture2Price() { - return picture2Price; - } - - public void setPicture2Price(float picture2Price) { - this.picture2Price = picture2Price; - } - - public float getPicture3Price() { - return picture3Price; - } - - public void setPicture3Price(float picture3Price) { - this.picture3Price = picture3Price; - } - - public float getCustomSamplePrice() { - return customSamplePrice; - } - - public void setCustomSamplePrice(float customSamplePrice) { - this.customSamplePrice = customSamplePrice; - } - - public float getCustomEditPrice() { - return customEditPrice; - } - - public void setCustomEditPrice(float customEditPrice) { - this.customEditPrice = customEditPrice; - } - - public float getCustomEdit3Price() { - return customEdit3Price; - } - - public void setCustomEdit3Price(float customEdit3Price) { - this.customEdit3Price = customEdit3Price; - } - - public float getCustomTextPrice() { - return customTextPrice; - } - - public void setCustomTextPrice(float customTextPrice) { - this.customTextPrice = customTextPrice; - } - - public float getRefundPer() { - return refundPer; - } - - public void setRefundPer(float refundPer) { - this.refundPer = refundPer; - } - - public float getJoinCash() { - return joinCash; - } - - public void setJoinCash(float joinCash) { - this.joinCash = joinCash; - } - - public float getPointPer() { - return pointPer; - } - - public void setPointPer(float pointPer) { - this.pointPer = pointPer; - } - - public String getLasUpdusrId() { - return lasUpdusrId; - } - - public void setLasUpdusrId(String lasUpdusrId) { - this.lasUpdusrId = lasUpdusrId; - } - - public String getLastUpdtPnttm() { - return lastUpdtPnttm; - } - - public void setLastUpdtPnttm(String lastUpdtPnttm) { - this.lastUpdtPnttm = lastUpdtPnttm; - } - - public String getJoinCertType() { - return joinCertType; - } - - public void setJoinCertType(String joinCertType) { - this.joinCertType = joinCertType; - } - - public String getSmsNoti() { - return smsNoti; - } - - public void setSmsNoti(String smsNoti) { - this.smsNoti = smsNoti; - } - - public String getEmailNoti() { - return emailNoti; - } - - public void setEmailNoti(String emailNoti) { - this.emailNoti = emailNoti; - } - - public String getSlackNoti() { - return slackNoti; - } - - public void setSlackNoti(String slackNoti) { - this.slackNoti = slackNoti; - } - - public float getKakaoAtPrice() { - return kakaoAtPrice; - } - - public void setKakaoAtPrice(float kakaoAtPrice) { - this.kakaoAtPrice = kakaoAtPrice; - } - - public float getKakaoFtPrice() { - return kakaoFtPrice; - } - - public void setKakaoFtPrice(float kakaoFtPrice) { - this.kakaoFtPrice = kakaoFtPrice; - } - - public float getFaxPrice() { - return faxPrice; - } - - public void setFaxPrice(float faxPrice) { - this.faxPrice = faxPrice; - } - - public String getHoliSmishingNoti() { - return holiSmishingNoti; - } - - public void setHoliSmishingNoti(String holiSmishingNoti) { - this.holiSmishingNoti = holiSmishingNoti; - } } diff --git a/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml b/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml index e924647a..dabc5761 100644 --- a/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/msg/MjonMsgData_SQL_mysql.xml @@ -2151,6 +2151,8 @@ , POINT_PER AS pointPer , KAKAO_AT_PRICE AS kakaoAtPrice , KAKAO_FT_PRICE AS kakaoFtPrice + , KAKAO_FT_IMG_PRICE AS kakaoFtImgPrice + , KAKAO_FT_WIDE_IMG_PRICE AS kakaoFtWideImgPrice , FAX_PRICE AS faxPrice FROM MJ_MBER_SETTING @@ -2169,6 +2171,8 @@ , PICTURE3_PRICE AS picture3Price , KAKAO_AT_PRICE AS kakaoAtPrice , KAKAO_FT_PRICE AS kakaoFtPrice + , KAKAO_FT_IMG_PRICE AS kakaoFtImgPrice + , KAKAO_FT_WIDE_IMG_PRICE AS kakaoFtWideImgPrice , FAX_PRICE AS faxPrice , USER_MONEY AS userMoney , USER_POINT AS userPoint diff --git a/src/main/webapp/js/kakao/ft/ftPriceClclt.js b/src/main/webapp/js/kakao/ft/ftPriceClclt.js index 889e12d0..c15d7130 100644 --- a/src/main/webapp/js/kakao/ft/ftPriceClclt.js +++ b/src/main/webapp/js/kakao/ft/ftPriceClclt.js @@ -200,7 +200,7 @@ function fn_sendFailUnChecked(phoneSu){ // fn_writePriceText() 첫 파라미터가 null이면 카카오 전송으로 인식 fn_writePriceText('', phoneSu); // $('#totalPriceTxt').text((KAKAO_AT_PRICE * phoneSu).toFixed(1)); - fn_priceText('알림톡', phoneSu); + fn_priceText('친구톡', phoneSu); } /** diff --git a/src/main/webapp/js/kakao/ft/ftTabulator.js b/src/main/webapp/js/kakao/ft/ftTabulator.js index 7e35e719..0552351a 100644 --- a/src/main/webapp/js/kakao/ft/ftTabulator.js +++ b/src/main/webapp/js/kakao/ft/ftTabulator.js @@ -241,6 +241,9 @@ $(document).ready(function (){ addPhoneInfo(tabledata); $('#callTo').val(""); + + + fn_priceText('친구톡', tableL.getDataCount()); }