272 lines
7.5 KiB
Plaintext
272 lines
7.5 KiB
Plaintext
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
|
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
|
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
|
|
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
|
|
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="ko">
|
|
<head>
|
|
|
|
<script src="/publish/js/jquery-3.5.0.js"></script>
|
|
<script src="/publish/js/common.js"></script>
|
|
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
|
|
<script type="text/javascript" src="<c:url value='/js/EgovCmmUtl.js'/>" ></script>
|
|
<script src="/js/ncms_common.js"></script>
|
|
<script src="/js/txtByteChk.js"></script>
|
|
<script src="/js/MJUtill.js"></script>
|
|
|
|
<meta charset="UTF-8">
|
|
<title>전송사별 테스트 문자발송</title>
|
|
<script type="text/javascript">
|
|
|
|
$(document).ready(function(){
|
|
|
|
//문자 내용 입력시 바이트수 계산하기
|
|
$('#smsTxt').keyup(function(e){
|
|
|
|
var contents = $(this).val();
|
|
|
|
fnByteString(contents);
|
|
|
|
});//문자 바이트수 계산하기 끝
|
|
|
|
});
|
|
|
|
//문자 바이트수 계산하기 함수
|
|
function fnByteString(contents){
|
|
var totalByte = 0;
|
|
|
|
$('#msgLeng').html("");
|
|
$('#limitLeng').html("");
|
|
var conLeng = conByteLeng(contents); // 내용 문자 입력 바이트 수 계산하기
|
|
var msgKind = $("#msgKind").val();
|
|
|
|
//일반문자, 광고문자에 따른 문자 길이 변경해주기
|
|
if(msgKind == "N"){
|
|
$('#msgLeng').text(conLeng);
|
|
|
|
//문자 길이 변수에 저장해주기
|
|
$('#smsLen').val(conLeng);
|
|
}
|
|
|
|
if(conLeng > 90){
|
|
$('#msgLeng').html(conLeng + " / ");
|
|
$('#limitLeng').html("2000");
|
|
$('.msg_com').html("장문");
|
|
$('#msgType').val("6"); // 메세지 타입 설정
|
|
}else{
|
|
$('#msgLeng').html(conLeng + " / ");
|
|
$('#limitLeng').html("90");
|
|
$('.msg_com').html("단문");
|
|
$('#msgType').val("4"); // 메세지 타입 설정
|
|
}
|
|
|
|
// 2000byte 초과시 메세지 알림
|
|
if(conLeng > 2000){
|
|
alert("문자 내용은 2000byte를 넘을 수 없습니다.");
|
|
return false;
|
|
}
|
|
|
|
}
|
|
|
|
function fn_sendMsgData(){
|
|
var callToNum = $('#callTo').val();
|
|
var callFromNum = $('#callFrom').val();
|
|
var agentCode = $("#agentCode option:selected").val();
|
|
var smsTxt = $('#smsTxt').val();
|
|
|
|
if(agentCode == ''){
|
|
alert("전송사를 선택해 주세요.");
|
|
return false;
|
|
}
|
|
|
|
if(callFromNum == ''){
|
|
alert("발신번호를 입력해 주세요.");
|
|
return false;
|
|
}
|
|
|
|
if(callToNum == ''){
|
|
alert("수신번호를 입력해 주세요.");
|
|
return false;
|
|
}
|
|
|
|
//핸드폰 번호 체크
|
|
if(!checkHpNum(callToNum)){
|
|
alert("정확한 수신자 번호를 입력해 주세요.");
|
|
return false;
|
|
}
|
|
|
|
// 그림문자가 아닐경우 문자내용 체크
|
|
if ($("#atchMsgFile").val() == "") {
|
|
if(smsTxt == ''){
|
|
alert("문자내용을 입력헤 주세요.");
|
|
return false;
|
|
}
|
|
}
|
|
|
|
url = "/uss/ion/msg/insertAdminToMemberSendMsgData2Ajax.do";
|
|
|
|
var data = new FormData(document.msgForm);
|
|
|
|
var fileValue = $("#atchMsgFile").val().split("\\");
|
|
var fileName = fileValue[fileValue.length-1];
|
|
|
|
var fileExt = fileName.split('.').pop().toLowerCase();
|
|
|
|
var atchFileSts = true; //첨부파일 확장자 상태용 변수
|
|
|
|
if(fileExt.length > 0){
|
|
|
|
if($.inArray(fileExt, ['exec','exe']) > -1) {
|
|
|
|
atchFileSts = false;
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(!atchFileSts){
|
|
|
|
alert("첨부할 수 없는 파일형식입니다.");
|
|
return false;
|
|
|
|
}
|
|
|
|
if(confirm("문자를 발송하시겠습니까?")){
|
|
|
|
$.ajax({
|
|
type: "POST",
|
|
url: url,
|
|
data: data,
|
|
dataType:'json',
|
|
async: false,
|
|
processData: false,
|
|
contentType: false,
|
|
cache: false,
|
|
success: function (returnData, status) {
|
|
if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
|
|
if("fail"==returnData.result){
|
|
alert(returnData.message);
|
|
return false;
|
|
}else if("LoginFail"==returnData.result){
|
|
alert(returnData.message);
|
|
return false;
|
|
}else{ //문자발송 성공시 처리
|
|
var sendCnt = returnData.resultSts;
|
|
alert(sendCnt + " 건의 문자 전송이 완료 되었습니다.");
|
|
|
|
// Clear
|
|
setClear();
|
|
}
|
|
|
|
} else if(status== 'fail'){
|
|
alert(returnData.message);
|
|
}
|
|
},
|
|
error: function (e) {
|
|
//alert("문자 전송에 실패하였습니다.");
|
|
alert("ERROR : " + JSON.stringify(e));
|
|
console.log("ERROR : ", e);
|
|
}
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// Clear
|
|
function setClear() {
|
|
var agent = navigator.userAgent.toLowerCase();
|
|
|
|
// 문자내용 초기화
|
|
$('#smsTxt').val("");
|
|
$('#msgLeng').html("0 /");
|
|
|
|
//파일초기화
|
|
if ( (navigator.appName == 'Netscape' && navigator.userAgent.search('Trident') != -1) || (agent.indexOf("msie") != -1) ) {
|
|
$("#atchMsgFile").replaceWith($("#atchMsgFile").clone(true));
|
|
}else{
|
|
$("#atchMsgFile").val("");
|
|
}
|
|
}
|
|
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div class="contWrap">
|
|
<div class="pageTitle">
|
|
<div class="pageIcon"><img src="/pb/img/pageTitIcon4.png" alt=""></div>
|
|
<h2 class="titType1 c_222222 fwBold">전송사별 테스트문자 발송</h2>
|
|
<p class="tType6 c_999999">전송사별 테스트 문자발송 페이지 입니다.</p>
|
|
</div>
|
|
<div class="pageCont">
|
|
<form id="msgForm" name="msgForm" method="post">
|
|
<input type="hidden" id="msgType" name="msgType" value="4"/>
|
|
<input type="hidden" id="msgKind" name="msgKind" value="N"/>
|
|
<div class="tableWrap">
|
|
<table class="tbType2">
|
|
<colgroup>
|
|
<col width="20%">
|
|
<col width="*">
|
|
</colgroup>
|
|
<tbody>
|
|
<tr>
|
|
<th><span class="reqArea">전송사</span></th>
|
|
<td>
|
|
<select id="agentCode" name="agentCode" style="width: 180px;">
|
|
<option value="">전송사 선택</option>
|
|
<option value="00">대표 전송사</option>
|
|
<option value="01">아이하트(01)</option>
|
|
<option value="02">현대퓨처넷(02)</option>
|
|
<option value="03">아이엠오(03)</option>
|
|
<option value="04">다우기술(04)</option>
|
|
<option value="05">제이제이(05)</option>
|
|
<option value="07">인비토(07)</option>
|
|
<option value="08">제이제이 B01(08)</option>
|
|
<option value="09">제이제이 B02(09)</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th><span class="reqArea">발신번호</span></th>
|
|
<td>
|
|
<input type="text" name="callFrom" id="callFrom" value="01084329333" maxlength="11" oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');"/>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th><span class="reqArea">수신번호</span></th>
|
|
<td>
|
|
<input type="text" name="callTo" id="callTo" value="" maxlength="11" oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');"/>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th><span class="reqArea">문자내용</span></th>
|
|
<td>
|
|
<textarea name="smsTxt" id="smsTxt" style="width: 400px;; height: 150px;"></textarea>
|
|
<br /><br />
|
|
<span class="fwMd" id="msgLeng">0 /</span>
|
|
<span id="limitLeng">90</span>byte
|
|
<span class="msg_com">단문</span>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th>이미지 첨부</th>
|
|
<td>
|
|
<input type="file" name="atchMsgFile" id="atchMsgFile" />
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</form>
|
|
<div class="btnWrap">
|
|
<input type="button" class="btnType1" value="문자전송" onclick="fn_sendMsgData();">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
</body>
|
|
</html>
|