diff --git a/src/main/java/kcc/kccadr/adjreqmgr/service/AdjReqMgrVO.java b/src/main/java/kcc/kccadr/adjreqmgr/service/AdjReqMgrVO.java index 42f121e0..60e4522d 100644 --- a/src/main/java/kcc/kccadr/adjreqmgr/service/AdjReqMgrVO.java +++ b/src/main/java/kcc/kccadr/adjreqmgr/service/AdjReqMgrVO.java @@ -229,6 +229,12 @@ public class AdjReqMgrVO extends ComDefaultVO implements Serializable{ private String amtInput = ""; // 입금금액 private String accTy = ""; // 납구계좌구분 10:저작위, 20:가상계좌 + //저작위 SMS문자발송 + private String trId; // 전자조정시스템 고유 ID + private String trPhone; // 수신자 + private String sendTelNo; // 송신자 + private String sendMsg; // 송신 메세지 + public AdjReqMgrVO getAdrVO() { return adrVO; @@ -1128,6 +1134,30 @@ public class AdjReqMgrVO extends ComDefaultVO implements Serializable{ public void setApprLastUpdusrId(String apprLastUpdusrId) { this.apprLastUpdusrId = apprLastUpdusrId; } + public String getTrId() { + return trId; + } + public void setTrId(String trId) { + this.trId = trId; + } + public String getTrPhone() { + return trPhone; + } + public void setTrPhone(String trPhone) { + this.trPhone = trPhone; + } + public String getSendTelNo() { + return sendTelNo; + } + public void setSendTelNo(String sendTelNo) { + this.sendTelNo = sendTelNo; + } + public String getSendMsg() { + return sendMsg; + } + public void setSendMsg(String sendMsg) { + this.sendMsg = sendMsg; + } diff --git a/src/main/java/kcc/kccadr/cmm/service/impl/SMSOracleDAO.java b/src/main/java/kcc/kccadr/cmm/service/impl/SMSOracleDAO.java index f95370cc..42479b5d 100644 --- a/src/main/java/kcc/kccadr/cmm/service/impl/SMSOracleDAO.java +++ b/src/main/java/kcc/kccadr/cmm/service/impl/SMSOracleDAO.java @@ -53,5 +53,10 @@ public class SMSOracleDAO extends EgovAbstractDAO { insert("SMSOracleDAO.insertSmsSendTest"); } + + // SMS 작성 메세지 전송 등록 + public void insertSmsCustomSend(EgovMap egovMap) throws Exception{ + insert("SMSOracleDAO.insertSmsCustomSend", egovMap); + } } diff --git a/src/main/java/kcc/kccadr/cmm/service/impl/SMSOracleServiceImpl.java b/src/main/java/kcc/kccadr/cmm/service/impl/SMSOracleServiceImpl.java index dae0dced..4c393a0f 100644 --- a/src/main/java/kcc/kccadr/cmm/service/impl/SMSOracleServiceImpl.java +++ b/src/main/java/kcc/kccadr/cmm/service/impl/SMSOracleServiceImpl.java @@ -10,6 +10,7 @@ import java.net.HttpURLConnection; import java.net.ProtocolException; import java.net.URL; import java.net.URLEncoder; +import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; @@ -613,59 +614,51 @@ public class SMSOracleServiceImpl extends EgovAbstractServiceImpl implements SM } - // SMS 전송(저작위 SMS서버 DB등록) + // SMS 작성 메세지 전송(저작위 SMS서버 DB등록) @Override public String insertSmsCustomSend(AdjReqMgrVO adjReqMgrVO) throws Exception { String result = "fail"; - List sendMapList = getSmsSendMsg(adjReqMgrVO); // 전송 메세지 > 전자조정DB +// List sendMapList = getSmsSendMsg(adjReqMgrVO); // 전송 메세지 > 전자조정DB - if (sendMapList == null || sendMapList.isEmpty()) { - return result; - } + EgovMap sendMap = new EgovMap(); try { - for (EgovMap map : sendMapList) { + + /* + * 1. adjReqMgrVO에서 수신자(trPhone), 메시지(sendMsg)를 파라미터로 받는다. + * 2. 정해진 송신자, 시스템 구분자는 미리 정의된 globals.properties 에서 받는다. + * 3. 저작위 SMS 발송 DB로 insert + * 4. 발송 이력을 남긴다. + * + * */ - // test 수신자 번호 여현준 - //map.put("rpplPhone", "010-8532-6650"); - // test + adjReqMgrVO.setTrId(trId); // 시스템 구분자 + adjReqMgrVO.setSendTelNo(sendTelNo); // 송신자 번호 + + int bytes = adjReqMgrVO.getSendMsg().getBytes("euc-kr").length; // 발송메시지 바이트수 - map.put("sendTelNo", sendTelNo); // 송신자 번호 - map.put("trId", trId); // 시스템 구분자 +// sendMap.put("sendTelNo", sendTelNo); // 송신자 번호 +// sendMap.put("trId", trId); // 시스템 구분자 - String sendMsg = (String) map.get("sendMsg"); - int bytes = sendMsg.getBytes("euc-kr").length; +// String sendMsg = (String) sendMap.get("sendMsg"); +// int bytes = sendMsg.getBytes("euc-kr").length; - String rpplPhone = (String) map.get("rpplPhone"); - String rpplEmail = (String) map.get("rpplEmail"); - String rpplSmsYn = (String) map.get("rpplSmsYn"); - String rpplEmailYn = (String) map.get("rpplEmailYn"); - - String emailResult = "N"; - if (rpplEmailYn != null && rpplEmailYn.equals("Y") && StringUtil2.isNotEmpty(rpplEmail)) { // 메일 수신여부 -// emailResult = insertEmailSend(map); - } + String rpplPhone = (String) sendMap.get("rpplPhone"); + String rpplEmail = (String) sendMap.get("rpplEmail"); + String rpplSmsYn = (String) sendMap.get("rpplSmsYn"); + String rpplEmailYn = (String) sendMap.get("rpplEmailYn"); - map.put("emailSendResult", emailResult); - - if (rpplSmsYn != null && rpplSmsYn.equals("Y") && StringUtil2.isNotEmpty(rpplPhone)) { // 문자 수신여부 - if (bytes > 90) { - sMSOracleDAO.insertMmsSend(map); // SMS 등록 장문 > SMS DB(오라클) - adjReqMgrDAO.insertAdrMmsSend(map); // SMS 이력 등록 장문 > 전자조정 - } else { - sMSOracleDAO.insertSmsSend(map); // SMS 등록 단문 > SMS DB(오라클) - adjReqMgrDAO.insertAdrSmsSend(map); // SMS 이력 등록 단문 > 전자조정 - } - //sms 발송 관리 테이블에 저장 - msgMgrDAO.insertAdrSmsLog(map); // SMS 이력 등록 단문 > 전자조정 - } else { // 메일만 보낼시 단문테이블에라도 이력 등록 - adjReqMgrDAO.insertAdrSmsSend(map); // SMS 이력 등록 단문 > 전자조정 - //sms 발송 관리 테이블에 저장 - msgMgrDAO.insertAdrSmsLog(map); // SMS 이력 등록 단문 > 전자조정 - } + if (bytes > 90) { + sMSOracleDAO.insertMmsSend(sendMap); // SMS 등록 장문 > SMS DB(오라클) + adjReqMgrDAO.insertAdrMmsSend(sendMap); // SMS 이력 등록 장문 > 전자조정 + } else { + sMSOracleDAO.insertSmsSend(sendMap); // SMS 등록 단문 > SMS DB(오라클) + adjReqMgrDAO.insertAdrSmsSend(sendMap); // SMS 이력 등록 단문 > 전자조정 + } + //sms 발송 관리 테이블에 저장 + msgMgrDAO.insertAdrSmsLog(sendMap); // SMS 이력 등록 단문 > 전자조정 result = "succ"; - } } catch (Exception e) { System.out.println("Exception Occured!!!"); }