카카오 속도개선 진행중
This commit is contained in:
parent
e2a3d281a6
commit
7b7b76b99f
@ -24,7 +24,9 @@ public class KakaoSendAdvcVO implements Serializable {
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = 343099046833205405L;
|
private static final long serialVersionUID = 343099046833205405L;
|
||||||
|
|
||||||
|
// =====
|
||||||
|
// Insert 데이터
|
||||||
private String msgId; // 문자ID
|
private String msgId; // 문자ID
|
||||||
private String msgGroupId; // 전송그룹ID
|
private String msgGroupId; // 전송그룹ID
|
||||||
private String userId; // 사용자ID
|
private String userId; // 사용자ID
|
||||||
@ -41,6 +43,16 @@ public class KakaoSendAdvcVO implements Serializable {
|
|||||||
private String subMsgType; // 대체문자 타입
|
private String subMsgType; // 대체문자 타입
|
||||||
private String bizJsonName; // JSON 파일명
|
private String bizJsonName; // JSON 파일명
|
||||||
private String reqDate; // 예약일시
|
private String reqDate; // 예약일시
|
||||||
|
|
||||||
|
// =====
|
||||||
|
// =====
|
||||||
|
|
||||||
|
private float smsPrice; // sms 단가
|
||||||
|
private float mmsPrice; // mms 단가
|
||||||
|
private float kakaoAtPrice; // 카카오 알림톡 단가
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
@ -61,6 +73,11 @@ public class KakaoSendAdvcVO implements Serializable {
|
|||||||
"\n , subMsgType=[" + subMsgType + "]" +
|
"\n , subMsgType=[" + subMsgType + "]" +
|
||||||
"\n , bizJsonName=[" + bizJsonName + "]" +
|
"\n , bizJsonName=[" + bizJsonName + "]" +
|
||||||
"\n , reqDate=[" + reqDate + "]" +
|
"\n , reqDate=[" + reqDate + "]" +
|
||||||
|
"\n , ==== MJ_MSG_DATA INSERT DATA END =======" +
|
||||||
|
"\n " +
|
||||||
|
"\n , smsPrice=[" + smsPrice + "]" +
|
||||||
|
"\n , mmsPrice=[" + mmsPrice + "]" +
|
||||||
|
"\n , kakaoAtPrice=[" + kakaoAtPrice + "]" +
|
||||||
"\n ]";
|
"\n ]";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -9,18 +9,22 @@ import java.util.Map;
|
|||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import itn.com.cmm.util.StringUtil;
|
import itn.com.cmm.util.StringUtil;
|
||||||
import itn.let.kakao.kakaoComm.kakaoApi.KakaoApiJsonSave;
|
import itn.let.kakao.kakaoComm.kakaoApi.KakaoApiJsonSave;
|
||||||
import itn.let.mail.service.StatusResponse;
|
import itn.let.mail.service.StatusResponse;
|
||||||
|
import itn.let.mjo.mjocommon.MjonCommon;
|
||||||
import itn.let.mjo.msg.service.MjonMsgVO;
|
import itn.let.mjo.msg.service.MjonMsgVO;
|
||||||
import itn.let.mjo.msgdata.service.MjonMsgDataService;
|
import itn.let.mjo.msgdata.service.MjonMsgDataService;
|
||||||
import itn.let.mjo.spammsg.web.ComGetSpamStringParser;
|
import itn.let.mjo.spammsg.web.ComGetSpamStringParser;
|
||||||
import itn.let.module.base.PriceAndPoint;
|
import itn.let.module.base.PriceAndPoint;
|
||||||
import itn.let.sym.site.service.JoinSettingVO;
|
import itn.let.sym.site.service.JoinSettingVO;
|
||||||
import itn.let.uss.umt.service.MberManageVO;
|
import itn.let.uss.umt.service.MberManageVO;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
public class KakaoSendUtil {
|
public class KakaoSendUtil {
|
||||||
|
|
||||||
@ -32,6 +36,16 @@ public class KakaoSendUtil {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private PriceAndPoint priceAndPoint;
|
private PriceAndPoint priceAndPoint;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private MjonCommon mjonCommon;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 단문 메세지 타입
|
||||||
|
public static final String SHORT_MSG_TYPE = "SMS";
|
||||||
|
// 장문 메세지 타입
|
||||||
|
public static final String LONG_MSG_TYPE = "MMS";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @methodName : kakaoSendPrice_advc
|
* @methodName : kakaoSendPrice_advc
|
||||||
@ -45,126 +59,178 @@ public class KakaoSendUtil {
|
|||||||
* @throws Exception
|
* @throws Exception
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public KakaoVO populateSendLists(KakaoVO kakaoVO, StatusResponse statusResponse) throws Exception {
|
public List<KakaoSendAdvcVO> populateSendLists(KakaoVO kakaoVO, StatusResponse statusResponse) throws Exception {
|
||||||
|
|
||||||
//사용자 현재 보유 금액 불러오기(문자 발송 금액 차감 이전 금액)
|
//사용자 현재 보유 금액 불러오기(문자 발송 금액 차감 이전 금액)
|
||||||
// String befCash = kakaoVO.getBefCash();
|
// String befCash = kakaoVO.getBefCash();
|
||||||
|
|
||||||
MjonMsgVO mjonMsgVO = new MjonMsgVO();
|
|
||||||
mjonMsgVO.setUserId(kakaoVO.getUserId());
|
|
||||||
String userMoney = priceAndPoint.getBefCash(kakaoVO.getUserId());
|
|
||||||
String userPoint = priceAndPoint.getBefPoint(kakaoVO.getUserId());
|
|
||||||
|
|
||||||
//1.시스템 기본 단가 정보 불러오기
|
|
||||||
JoinSettingVO sysJoinSetVO = mjonMsgDataService.selectJoinSettingInfo();
|
|
||||||
|
|
||||||
//2.사용자 개인 단가 정보 불러오기
|
|
||||||
MberManageVO mberManageVO = mjonMsgDataService.selectMberManageInfo(kakaoVO.getUserId());
|
|
||||||
Float kakaoAtPrice = mberManageVO.getKakaoAtPrice();
|
|
||||||
|
|
||||||
/** 대체문자 여부 체크(있으면 대체문자 가격으로 없으면 카카오톡 가격으로) */
|
log.info(" +kakaoVO.getVarListMap().size() :: [{}]", kakaoVO.getVarListMap().size());
|
||||||
//대체문자 발송 여부 확인
|
|
||||||
if("Y".equals(kakaoVO.getSubMsgSendYn())) {
|
List<KakaoSendAdvcVO> kakaoSendAdvcListVO = new ArrayList<>();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Map에 총 갯수가 수신자 갯수와 동일함
|
||||||
|
for(Map<String, String> variables : kakaoVO.getVarListMap()) {
|
||||||
|
|
||||||
// MsgSendUtils.getSmsTxtBytes
|
KakaoSendAdvcVO kakaoSendAdvcVO = new KakaoSendAdvcVO();
|
||||||
|
|
||||||
|
|
||||||
String charset = "euc-kr"; //문자 바이트 계산에 필요한 캐릭터 셋 : 한글 2Byte로 계산
|
|
||||||
int callToCnt = kakaoVO.getCallToList().length;
|
// step1
|
||||||
String sendType = "";
|
// Step 1-1: 값 치환 및 수신번호 셋팅
|
||||||
|
String templateContent = kakaoVO.getTemplateContent(); // 알림톡 템플릿
|
||||||
|
|
||||||
for(int count =0; count < callToCnt; count++) {
|
// Step 1-2: 수신자 정보 설정 (callToList는 항상 설정).
|
||||||
|
if (variables.containsKey("callToList")) {
|
||||||
|
kakaoSendAdvcVO.setCallTo(variables.get("callToList"));
|
||||||
String tempSubMagTxt = kakaoVO.getSubMsgTxt().replace("\r\n", "\n");
|
variables.remove("callToList"); // 사용 후 제거.
|
||||||
|
}
|
||||||
|
|
||||||
if(kakaoVO.getSubMsgTxtReplYn().equals("Y")) {
|
// Step 1-3: 템플릿 치환데이터 설정
|
||||||
tempSubMagTxt = kakaoSubMagTxtRepl(tempSubMagTxt, kakaoVO, count);
|
// TxtReplYn이 "Y"일 때만 치환 수행
|
||||||
|
if ("Y".equals(kakaoVO.getTxtReplYn())) {
|
||||||
|
templateContent = replaceTemplateVariables(templateContent, variables);
|
||||||
|
}
|
||||||
|
kakaoSendAdvcVO.setTemplateContent(templateContent);
|
||||||
|
|
||||||
|
|
||||||
|
// Step 1-4: 실패 대체 문자 치환데이터 설정
|
||||||
|
if("Y".equals(kakaoVO.getSubMsgSendYn())) {
|
||||||
|
String subMsgTxt = kakaoVO.getSubMsgTxt(); // 실패 대체 치환 문자
|
||||||
|
// TxtReplYn이 "Y"일 때만 치환 수행
|
||||||
|
if ("Y".equals(kakaoVO.getSubMsgTxtReplYn())) {
|
||||||
|
subMsgTxt = replaceTemplateVariables(subMsgTxt, variables);
|
||||||
}
|
}
|
||||||
int bytes = tempSubMagTxt.getBytes(charset).length;
|
kakaoSendAdvcVO.setSubMsgTxt(subMsgTxt);// 실패
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
log.info("kakaoSendAdvcVO Details: [callTo={}\n, templateContent=\n{}\n, subMsgTxt=\n{}]\n\n\n\n",
|
||||||
|
kakaoSendAdvcVO.getCallTo(),
|
||||||
|
kakaoSendAdvcVO.getTemplateContent(),
|
||||||
|
kakaoSendAdvcVO.getSubMsgTxt()
|
||||||
|
);
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
// 시스템 기본 단가 정보 불러오기
|
||||||
|
JoinSettingVO sysJoinSetVO = mjonMsgDataService.selectJoinSettingInfo();
|
||||||
|
|
||||||
|
// 사용자 개인 단가 정보 불러오기
|
||||||
|
MberManageVO mberManageVO = mjonMsgDataService.selectMberManageInfo(kakaoVO.getUserId());
|
||||||
|
Float kakaoAtPrice = mberManageVO.getKakaoAtPrice();
|
||||||
|
// 유효한 단가 계산
|
||||||
|
float shortPrice = getValidPrice(mberManageVO.getShortPrice(), sysJoinSetVO.getShortPrice());
|
||||||
|
float longPrice = getValidPrice(mberManageVO.getLongPrice(), sysJoinSetVO.getLongPrice());
|
||||||
|
|
||||||
|
// 공통 가격 설정
|
||||||
|
kakaoVO.setSmsPrice(shortPrice);
|
||||||
|
kakaoVO.setMmsPrice(longPrice);
|
||||||
|
|
||||||
|
|
||||||
|
if("Y".equals(kakaoVO.getSubMsgSendYn())) {
|
||||||
|
int smsTxtByte = mjonCommon.getSmsTxtBytes(kakaoSendAdvcVO.getSubMsgTxt());
|
||||||
|
|
||||||
if(bytes < 2000) {
|
String sendType = getMsgType(smsTxtByte);
|
||||||
if(bytes > 90) {
|
|
||||||
sendType = "MMS";
|
if ("INVALID".equals(sendType)) {
|
||||||
break;
|
statusResponseSet(statusResponse, HttpStatus.BAD_REQUEST, "전송 문자 길이를 초과하였습니다.");return kakaoSendAdvcListVO;
|
||||||
}else {
|
|
||||||
sendType = "SMS";
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
kakaoVO.setResultCode("2000");
|
|
||||||
return kakaoVO;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
boolean isMms = "MMS".equals(sendType);
|
||||||
|
kakaoAtPrice = isMms ? longPrice : shortPrice;
|
||||||
|
kakaoVO.setKakaoAtPrice(getValidPrice(mberManageVO.getKakaoAtPrice(), sysJoinSetVO.getKakaoAtPrice()));
|
||||||
|
|
||||||
|
|
||||||
|
} else {
|
||||||
|
kakaoAtPrice = getValidPrice(mberManageVO.getKakaoAtPrice(), sysJoinSetVO.getKakaoAtPrice());
|
||||||
|
kakaoVO.setKakaoAtPrice(kakaoAtPrice);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(sendType.equals("MMS")) {
|
|
||||||
//협의 단가가 없으면 시스템 단가로 지정
|
|
||||||
if(mberManageVO.getLongPrice() < 1) {
|
// step3
|
||||||
kakaoAtPrice = sysJoinSetVO.getLongPrice();
|
// 바이트 수 체크 ==> 실패 성공
|
||||||
|
|
||||||
kakaoVO.setSmsPrice(sysJoinSetVO.getShortPrice());
|
// step4
|
||||||
kakaoVO.setMmsPrice(sysJoinSetVO.getLongPrice());
|
// 예약 시간 설정 및 분할 데이터 설정
|
||||||
kakaoVO.setKakaoAtPrice(sysJoinSetVO.getKakaoAtPrice());
|
|
||||||
}else {
|
// step5
|
||||||
kakaoAtPrice = mberManageVO.getLongPrice();
|
// 전송 메세지 설정 kakaoSendMsg 참고
|
||||||
|
|
||||||
kakaoVO.setSmsPrice(mberManageVO.getShortPrice());
|
|
||||||
kakaoVO.setMmsPrice(mberManageVO.getLongPrice());
|
|
||||||
|
// kakaoSendAdvcVO.setSendType("AT");
|
||||||
if(mberManageVO.getKakaoAtPrice() < 1) {
|
kakaoSendAdvcVO.setMsgType("8");
|
||||||
kakaoVO.setKakaoAtPrice(sysJoinSetVO.getKakaoAtPrice());
|
kakaoSendAdvcVO.setUserId(kakaoVO.getUserId());
|
||||||
}else {
|
|
||||||
kakaoVO.setKakaoAtPrice(mberManageVO.getKakaoAtPrice());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
//협의 단가가 없으면 시스템 단가로 지정
|
|
||||||
if(mberManageVO.getShortPrice() < 1) {
|
|
||||||
kakaoAtPrice = sysJoinSetVO.getShortPrice();
|
|
||||||
|
|
||||||
kakaoVO.setSmsPrice(sysJoinSetVO.getShortPrice());
|
|
||||||
kakaoVO.setMmsPrice(sysJoinSetVO.getLongPrice());
|
|
||||||
kakaoVO.setKakaoAtPrice(sysJoinSetVO.getKakaoAtPrice());
|
|
||||||
}else {
|
|
||||||
kakaoAtPrice = mberManageVO.getShortPrice();
|
|
||||||
|
|
||||||
kakaoVO.setSmsPrice(mberManageVO.getShortPrice());
|
|
||||||
kakaoVO.setMmsPrice(mberManageVO.getLongPrice());
|
|
||||||
if(mberManageVO.getKakaoAtPrice() < 1) {
|
|
||||||
kakaoVO.setKakaoAtPrice(sysJoinSetVO.getKakaoAtPrice());
|
|
||||||
}else {
|
|
||||||
kakaoVO.setKakaoAtPrice(mberManageVO.getKakaoAtPrice());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
if(kakaoAtPrice < 1) { //협의 단가가 없으면 시스템 단가로 지정
|
|
||||||
kakaoAtPrice = sysJoinSetVO.getKakaoAtPrice();
|
|
||||||
|
|
||||||
kakaoVO.setSmsPrice(sysJoinSetVO.getShortPrice());
|
|
||||||
kakaoVO.setMmsPrice(sysJoinSetVO.getLongPrice());
|
|
||||||
kakaoVO.setKakaoAtPrice(sysJoinSetVO.getKakaoAtPrice());
|
|
||||||
}else {
|
|
||||||
kakaoVO.setSmsPrice(mberManageVO.getShortPrice());
|
|
||||||
kakaoVO.setMmsPrice(mberManageVO.getLongPrice());
|
|
||||||
kakaoVO.setKakaoAtPrice(mberManageVO.getKakaoAtPrice());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 전송인원 확인*/
|
|
||||||
int totCallCnt = kakaoVO.getCallToList().length;
|
|
||||||
Float kakaoTotPrice = totCallCnt * kakaoAtPrice; // 총결제 금액 = 총 전송수량 * 카카오 알림톡 단가
|
|
||||||
String totPrice = kakaoTotPrice.toString();
|
|
||||||
System.out.println("@@@@@@@ : "+kakaoTotPrice +" = "+totCallCnt+" * "+kakaoAtPrice);
|
|
||||||
|
|
||||||
kakaoVO.setEachPrice(kakaoAtPrice.toString());
|
return kakaoSendAdvcListVO;
|
||||||
kakaoVO.setBefCash(userMoney); // 고객 충전금액
|
|
||||||
kakaoVO.setBefPoint(userPoint); // 고객 충전 포인트
|
|
||||||
kakaoVO.setTotPrice(totPrice); // 총 카카오 전송 금액
|
|
||||||
|
|
||||||
return kakaoVO;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public Float getValidPrice(Float personalPrice, Float defaultPrice) {
|
||||||
|
return (personalPrice != null && personalPrice > 0) ? personalPrice : defaultPrice;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @methodName : getMsgType
|
||||||
|
* @author : 이호영
|
||||||
|
* @date : 2025. 3. 12.
|
||||||
|
* @description : 메세지 타입 구하기
|
||||||
|
* @return : String
|
||||||
|
* @param smsTxtByte
|
||||||
|
* @return
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private String getMsgType(int smsTxtByte) {
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
|
||||||
|
String msgType = SHORT_MSG_TYPE;
|
||||||
|
|
||||||
|
// 1. 2000 Byte 초과는 에러 처리
|
||||||
|
if (smsTxtByte > 2000) {
|
||||||
|
return "INVALID";
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2. 문자 길이에 따라 메시지 타입 설정 (90 Byte 초과는 장문)
|
||||||
|
if (smsTxtByte > 90) {
|
||||||
|
msgType = LONG_MSG_TYPE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return msgType;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @methodName : replaceTemplateVariables
|
||||||
|
* @author : 이호영
|
||||||
|
* @date : 2025. 3. 12.
|
||||||
|
* @description : 헬퍼 메서드: 템플릿 변수 치환
|
||||||
|
* @return : String
|
||||||
|
* @param content
|
||||||
|
* @param variables
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private String replaceTemplateVariables(String content, Map<String, String> variables) {
|
||||||
|
String result = content;
|
||||||
|
for (Map.Entry<String, String> entry : variables.entrySet()) {
|
||||||
|
String placeholder = entry.getKey();
|
||||||
|
String value = entry.getValue();
|
||||||
|
result = result.replace(placeholder, value);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Method Name : kakaoSendPrice
|
* @Method Name : kakaoSendPrice
|
||||||
* @작성일 : 2023. 2. 14.
|
* @작성일 : 2023. 2. 14.
|
||||||
@ -847,5 +913,10 @@ public class KakaoSendUtil {
|
|||||||
//}
|
//}
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void statusResponseSet (StatusResponse statusResponse, HttpStatus httpStatus, String msg ) {
|
||||||
|
statusResponse.setStatus(httpStatus);
|
||||||
|
statusResponse.setMessage(msg);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -25,6 +25,7 @@ import itn.let.kakao.kakaoComm.KakaoSendUtil;
|
|||||||
import itn.let.kakao.kakaoComm.KakaoVO;
|
import itn.let.kakao.kakaoComm.KakaoVO;
|
||||||
import itn.let.kakao.user.kakaoAt.service.KakaoAlimTalkService;
|
import itn.let.kakao.user.kakaoAt.service.KakaoAlimTalkService;
|
||||||
import itn.let.mail.service.StatusResponse;
|
import itn.let.mail.service.StatusResponse;
|
||||||
|
import itn.let.mjo.mjocommon.MjonCommon;
|
||||||
import itn.let.mjo.mjocommon.MjonHolidayApi;
|
import itn.let.mjo.mjocommon.MjonHolidayApi;
|
||||||
import itn.let.mjo.msg.service.MjonMsgVO;
|
import itn.let.mjo.msg.service.MjonMsgVO;
|
||||||
import itn.let.mjo.msg.service.impl.MjonMsgDAO;
|
import itn.let.mjo.msg.service.impl.MjonMsgDAO;
|
||||||
@ -74,10 +75,10 @@ public class KakaoAlimTalkServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
private EgovUserManageService userManageService;
|
private EgovUserManageService userManageService;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private PriceAndPoint priceAndPoint;
|
KakaoSendUtil kakaoSendUtil;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
KakaoSendUtil kakaoSendUtil;
|
private MjonCommon mjonCommon;
|
||||||
|
|
||||||
//발신프로필 상태값 변경(삭제/복구 기능)
|
//발신프로필 상태값 변경(삭제/복구 기능)
|
||||||
@Override
|
@Override
|
||||||
@ -845,7 +846,7 @@ public class KakaoAlimTalkServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
@Override
|
@Override
|
||||||
public StatusResponse insertKakaoAtSandAjax_advc(KakaoVO kakaoVO, HttpServletRequest request) throws Exception {
|
public StatusResponse insertKakaoAtSandAjax_advc(KakaoVO kakaoVO, HttpServletRequest request) throws Exception {
|
||||||
|
|
||||||
// log.info(" :: [{}]", kakaoVO.toString());
|
log.info(" :: [{}]", kakaoVO.toString());
|
||||||
|
|
||||||
// KakaoSendAdvcVO
|
// KakaoSendAdvcVO
|
||||||
|
|
||||||
@ -860,6 +861,7 @@ public class KakaoAlimTalkServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
return new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용이 가능합니다.");
|
return new StatusResponse(HttpStatus.BAD_REQUEST, "로그인 후 이용이 가능합니다.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
kakaoVO.setUserId(userId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 회원 정지된 상태이면 문자 발송이 안되도록 처리함 현재 로그인 세션도 만료 처리함
|
* 회원 정지된 상태이면 문자 발송이 안되도록 처리함 현재 로그인 세션도 만료 처리함
|
||||||
@ -877,18 +879,23 @@ public class KakaoAlimTalkServiceImpl extends EgovAbstractServiceImpl implements
|
|||||||
|
|
||||||
|
|
||||||
/** 카카오톡 전송 기본 설정 -------------------------------------------*/
|
/** 카카오톡 전송 기본 설정 -------------------------------------------*/
|
||||||
kakaoVO.setSendType("AT");
|
|
||||||
kakaoVO.setMsgType("8");
|
|
||||||
kakaoVO.setUserId(userId);
|
|
||||||
|
|
||||||
|
|
||||||
/** 전송금액 설정 --------------------------------------------------*/
|
/** 전송금액 설정 --------------------------------------------------*/
|
||||||
// KakaoVO priceSet = kakaoSendUtil.populateSendLists(kakaoVO, statusResponse);
|
List<KakaoSendAdvcVO> kakaoSendAdvcListVO = kakaoSendUtil.populateSendLists(kakaoVO, statusResponse);
|
||||||
|
if (statusResponse.getStatus() != null && !statusResponse.getStatus().equals(HttpStatus.OK)) {
|
||||||
|
log.error(" + populateSendLists 처리 중 오류 발생: {}", statusResponse.getMessage());
|
||||||
|
return statusResponse;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// step 1
|
||||||
|
// List<String> idList = mjonCommon.getNextCustomMsgCId(mjonMsgSendVOList.size());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -221,6 +221,8 @@ public class KakaoAlimTalkSendController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return "web/kakao/msgdata/at/KakaoAlimtalkMsgDataView";
|
return "web/kakao/msgdata/at/KakaoAlimtalkMsgDataView";
|
||||||
|
// return "web/kakao/msgdata/at/KakaoAlimtalkMsgDataView_advcbackup_20250310";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1127,10 +1129,6 @@ public class KakaoAlimTalkSendController {
|
|||||||
/** 전송금액 설정 --------------------------------------------------*/
|
/** 전송금액 설정 --------------------------------------------------*/
|
||||||
KakaoVO priceSet = kakaoSendUtil.kakaoSendPrice(kakaoVO);
|
KakaoVO priceSet = kakaoSendUtil.kakaoSendPrice(kakaoVO);
|
||||||
|
|
||||||
if (true) {
|
|
||||||
throw new IllegalStateException("배열 크기 초과");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if(priceSet.getResultCode() != null && priceSet.getResultCode().equals("2000")) {
|
if(priceSet.getResultCode() != null && priceSet.getResultCode().equals("2000")) {
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user