Merge branch 'master' into 5102_친구톡_발송속도_개선
This commit is contained in:
commit
dfc2ad11d5
@ -126,8 +126,13 @@ public class KakaoSentDAO extends EgovAbstractDAO {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//발송 관리 문자발송 내용 상세보기 팝업[그룹]
|
//발송 관리 문자발송 내용 상세보기 팝업[그룹]
|
||||||
public MjonKakaoATVO selectKakaoSentDetailViewPhoneAjax(MjonKakaoATVO KakaoSentVO) throws Exception{
|
public MjonKakaoATVO selectKakaoSentDetailViewPhoneAjax(MjonKakaoATVO KakaoSentVO) throws Exception{
|
||||||
return (MjonKakaoATVO) select("KakaoSentDAO.selectKakaoSentDetailViewPhoneAjax", KakaoSentVO);
|
return (MjonKakaoATVO) select("KakaoSentDAO.selectKakaoSentDetailViewPhoneAjax", KakaoSentVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
public List<KakaoSentVO> selectAllKakaoSentListExcel_advc(KakaoSentVO kakaoSentVO) throws Exception{
|
||||||
|
return (List<KakaoSentVO>) list("KakaoSentDAO.selectAllKakaoSentListExcel_advc",kakaoSentVO);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -302,10 +302,14 @@ public class KakaoSentServiceImpl extends EgovAbstractServiceImpl implements Ka
|
|||||||
result.setKakaoResendSuccCount(eachCnt.getKakaoResendSuccCount());
|
result.setKakaoResendSuccCount(eachCnt.getKakaoResendSuccCount());
|
||||||
result.setKakaoResendFailCount(eachCnt.getKakaoResendFailCount());
|
result.setKakaoResendFailCount(eachCnt.getKakaoResendFailCount());
|
||||||
|
|
||||||
|
result.setMsgGroupCnt(
|
||||||
|
Integer.valueOf(result.getSuccessCount() + result.getWaitCount() + result.getFailCount()).toString()
|
||||||
|
);
|
||||||
|
|
||||||
//완료상태 시작
|
//완료상태 시작
|
||||||
result = this.codeProc(result);
|
result = this.codeProc(result);
|
||||||
|
|
||||||
|
|
||||||
//완료상태 끝
|
//완료상태 끝
|
||||||
//=======================================================
|
//=======================================================
|
||||||
|
|
||||||
@ -470,7 +474,7 @@ public class KakaoSentServiceImpl extends EgovAbstractServiceImpl implements Ka
|
|||||||
}
|
}
|
||||||
|
|
||||||
//예약 관리 리스트 불러오기
|
//예약 관리 리스트 불러오기
|
||||||
List<KakaoSentVO> resultList = kakaoSentDAO.selectAllKakaoSentList_advc(kakaoSentVO);
|
List<KakaoSentVO> resultList = kakaoSentDAO.selectAllKakaoSentListExcel_advc(kakaoSentVO);
|
||||||
|
|
||||||
// long startTime = System.nanoTime(); // 시작 시간 측정
|
// long startTime = System.nanoTime(); // 시작 시간 측정
|
||||||
// resultAllSentList = makeDetailFunction(resultAllSentList);
|
// resultAllSentList = makeDetailFunction(resultAllSentList);
|
||||||
|
|||||||
@ -211,7 +211,7 @@ public class MjonMsgCampainDataController {
|
|||||||
|
|
||||||
// 외부에서 선거발송 페이지로 들어오는걸 막음
|
// 외부에서 선거발송 페이지로 들어오는걸 막음
|
||||||
// 20250102 이호영
|
// 20250102 이호영
|
||||||
if (!"localhost".equals(hostName)) {
|
if (!"localhost".equals(hostName) && !"119.193.215.98".equals(hostName)) {
|
||||||
return "redirect:/web/mjon/msgdata/selectMsgDataView.do";
|
return "redirect:/web/mjon/msgdata/selectMsgDataView.do";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1357,6 +1357,111 @@
|
|||||||
|
|
||||||
<!-- 전체 발송결과 조회 (그룹별)-->
|
<!-- 전체 발송결과 조회 (그룹별)-->
|
||||||
<select id="KakaoSentDAO.selectAllKakaoSentList_advc" parameterClass="kakaoSentVO" resultClass="kakaoSentVO">
|
<select id="KakaoSentDAO.selectAllKakaoSentList_advc" parameterClass="kakaoSentVO" resultClass="kakaoSentVO">
|
||||||
|
/* KakaoSentDAO.selectAllKakaoSentList_advc */
|
||||||
|
|
||||||
|
SELECT COUNT(B.USER_ID) OVER () AS totMsgCnt,
|
||||||
|
B.USER_ID AS userId,
|
||||||
|
B.MSG_GROUP_ID AS msgGroupId,
|
||||||
|
B.SMS_TXT AS smsTxt,
|
||||||
|
B.SUBJECT AS subject,
|
||||||
|
B.SUBJECT_CHK_YN AS subjectChkYn,
|
||||||
|
B.REGDATE AS regDate,
|
||||||
|
B.REQ_DATE AS reqDate,
|
||||||
|
CASE
|
||||||
|
WHEN B.DELAY_YN = 'Y' AND B.DELAY_COMPLETE_YN = 'N'
|
||||||
|
THEN DATE_ADD(B.REQ_DATE, INTERVAL -30 MINUTE)
|
||||||
|
ELSE B.REQ_DATE
|
||||||
|
END AS delayOrgTime,
|
||||||
|
B.CALL_FROM AS callFrom,
|
||||||
|
B.TOT_PRICE AS totPrice,
|
||||||
|
B.EACH_PRICE AS eachPrice,
|
||||||
|
B.MSG_TYPE AS msgType,
|
||||||
|
B.FILE_CNT AS fileCnt,
|
||||||
|
B.AGENT_CODE AS agentCode,
|
||||||
|
B.CANCELDATE AS canceldate,
|
||||||
|
B.DEL_FLAG AS delFlag,
|
||||||
|
B.SEND_KIND AS sendKind,
|
||||||
|
B.MSG_KIND AS msgKind,
|
||||||
|
B.DELAY_YN AS delayYn,
|
||||||
|
B.DELAY_COMPLETE_YN AS delayCompleteYn,
|
||||||
|
B.RESERVE_YN AS reserveYn,
|
||||||
|
B.RESERVE_C_YN AS reserveCYn,
|
||||||
|
TIMESTAMPDIFF(
|
||||||
|
MINUTE,
|
||||||
|
CAST(DATE_FORMAT(B.REQ_DATE, '%Y-%m-%d %H:%i') AS CHAR),
|
||||||
|
DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i')
|
||||||
|
) AS diffMin,
|
||||||
|
B.AT_DELAY_YN AS atDelayYn,
|
||||||
|
B.AT_DELAY_COMPLETE_YN AS atDelayCompleteYn,
|
||||||
|
A.MSG_NOTICETALK_SENDER_KEY AS msgNoticetalkSenderKey,
|
||||||
|
A.BIZ_KAKAO_RESEND_YN AS bizKakaoResendYn,
|
||||||
|
CASE
|
||||||
|
WHEN B.AT_DELAY_YN = 'Y' AND B.AT_DELAY_COMPLETE_YN = 'N'
|
||||||
|
THEN DATE_ADD(B.REQ_DATE, INTERVAL -30 MINUTE)
|
||||||
|
ELSE B.REQ_DATE
|
||||||
|
END AS atDelayOrgTime,
|
||||||
|
C.YELLOW_ID AS yellowId
|
||||||
|
FROM MJ_MSG_GROUP_DATA B
|
||||||
|
INNER JOIN (
|
||||||
|
select MSG_GROUP_ID, MSG_TYPE, DEL_FLAG, MSG_NOTICETALK_SENDER_KEY, BIZ_KAKAO_RESEND_YN
|
||||||
|
from MJ_MSG_DATA
|
||||||
|
where DEL_FLAG = 'N'
|
||||||
|
<isNotEmpty property="tabType">
|
||||||
|
<isEqual property="tabType" compareValue="at">
|
||||||
|
AND MSG_TYPE = '8'
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="tabType" compareValue="ft">
|
||||||
|
AND MSG_TYPE = '9'
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="tabType" compareValue="all">
|
||||||
|
AND MSG_TYPE IN ('8','9')
|
||||||
|
</isEqual>
|
||||||
|
</isNotEmpty>
|
||||||
|
<isEmpty property="tabType">
|
||||||
|
AND MSG_TYPE IN ('8','9')
|
||||||
|
</isEmpty>
|
||||||
|
group by MSG_GROUP_ID) A
|
||||||
|
ON A.MSG_GROUP_ID = B.MSG_GROUP_ID
|
||||||
|
LEFT JOIN MJ_KAKAO_PROFILE_INFO C
|
||||||
|
ON A.MSG_NOTICETALK_SENDER_KEY = C.SENDER_KEY
|
||||||
|
WHERE (
|
||||||
|
B.DEL_FLAG = 'N' OR B.DEL_FLAG IS NULL
|
||||||
|
)
|
||||||
|
AND B.USER_ID = #userId#
|
||||||
|
<isNotEmpty property="startDate">
|
||||||
|
AND DATE_FORMAT(B.REGDATE, '%Y-%m-%d') <![CDATA[ >= ]]> DATE_FORMAT(#startDate#, '%Y-%m-%d')
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="endDate">
|
||||||
|
AND DATE_FORMAT(B.REGDATE, '%Y-%m-%d') <![CDATA[ <= ]]> DATE_FORMAT(#endDate#, '%Y-%m-%d')
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="stateType">
|
||||||
|
<isEqual property="stateType" compareValue="Y">
|
||||||
|
AND B.RESERVE_YN = 'Y'
|
||||||
|
</isEqual>
|
||||||
|
<isEqual property="stateType" compareValue="N">
|
||||||
|
AND B.RESERVE_YN = 'N'
|
||||||
|
</isEqual>
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchKeyword">
|
||||||
|
<isEqual property="searchCondition" compareValue="3">
|
||||||
|
AND B.SMS_TXT like CONCAT('%', #searchKeyword#, '%')
|
||||||
|
</isEqual>
|
||||||
|
</isNotEmpty>
|
||||||
|
GROUP BY B.MSG_GROUP_ID
|
||||||
|
ORDER BY 1=1
|
||||||
|
<isNotEmpty property="searchSortCnd">
|
||||||
|
,$searchSortCnd$
|
||||||
|
</isNotEmpty>
|
||||||
|
<isNotEmpty property="searchSortOrd">
|
||||||
|
$searchSortOrd$
|
||||||
|
</isNotEmpty>
|
||||||
|
LIMIT #recordCountPerPage#
|
||||||
|
OFFSET #firstIndex#
|
||||||
|
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<!-- 전체 발송결과 조회 (그룹별)-->
|
||||||
|
<select id="KakaoSentDAO.selectAllKakaoSentListExcel_advc" parameterClass="kakaoSentVO" resultClass="kakaoSentVO">
|
||||||
/* KakaoSentDAO.selectAllKakaoSentList_advc */
|
/* KakaoSentDAO.selectAllKakaoSentList_advc */
|
||||||
SELECT t1.totMsgCnt,
|
SELECT t1.totMsgCnt,
|
||||||
t1.userId,
|
t1.userId,
|
||||||
@ -1612,7 +1717,7 @@
|
|||||||
WHEN COUNT(DISTINCT t1.REQ_DATE) > 1 THEN 'Y'
|
WHEN COUNT(DISTINCT t1.REQ_DATE) > 1 THEN 'Y'
|
||||||
ELSE 'N'
|
ELSE 'N'
|
||||||
END AS divideYN
|
END AS divideYN
|
||||||
FROM mj_msg_data t1
|
FROM mj_msg_data t1 FORCE INDEX (idx_msgdata_groupid_delfalg_msgtype_curstate)
|
||||||
LEFT OUTER JOIN BIZ_LOG BL1 ON t1.BIZ_UMID = BL1.CMID
|
LEFT OUTER JOIN BIZ_LOG BL1 ON t1.BIZ_UMID = BL1.CMID
|
||||||
WHERE
|
WHERE
|
||||||
t1.DEL_FLAG = 'N'
|
t1.DEL_FLAG = 'N'
|
||||||
|
|||||||
@ -970,7 +970,7 @@ function fnByteString(contents){
|
|||||||
var denyTxtLeng = conByteLeng('무료 거부 080-880-0858');
|
var denyTxtLeng = conByteLeng('무료 거부 080-880-0858');
|
||||||
|
|
||||||
var campFrtTxtLeng = conByteLeng('(선거운동정보)');
|
var campFrtTxtLeng = conByteLeng('(선거운동정보)');
|
||||||
var campLstTxtLeng = conByteLeng('후보자전화번호 불법수집정보 신고번호 118번 무료 거부 080-880-0858');
|
var campLstTxtLeng = conByteLeng('후보자전화번호 불법수집정보 신고번호 : 선거관리위원회 ☎1390 무료 거부 080-880-0858');
|
||||||
|
|
||||||
//일반문자, 광고문자에 따른 문자 길이 변경해주기
|
//일반문자, 광고문자에 따른 문자 길이 변경해주기
|
||||||
if(msgKind == "N"){
|
if(msgKind == "N"){
|
||||||
@ -4595,7 +4595,8 @@ function fnInputSmsTxt(){
|
|||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${not empty mjonMsgDelaySentList.regDate}">
|
<c:when test="${not empty mjonMsgDelaySentList.regDate}">
|
||||||
<fmt:formatDate value="${mjonMsgDelaySentList.regDate}" pattern="yyyy-MM-dd HH:mm"/>
|
<%-- <fmt:formatDate value="${mjonMsgDelaySentList.regDate}" pattern="yyyy-MM-dd HH:mm"/> --%>
|
||||||
|
<c:out value="${mjonMsgDelaySentList.regDate}" />
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
@ -4613,7 +4614,8 @@ function fnInputSmsTxt(){
|
|||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
<c:when test="${mjonMsgDelaySentList.delayYn eq 'Y'}">
|
<c:when test="${mjonMsgDelaySentList.delayYn eq 'Y'}">
|
||||||
[스미싱의심] <fmt:formatDate value="${mjonMsgDelaySentList.reqDate}" pattern="yyyy-MM-dd HH:mm"/>
|
[스미싱의심] <c:out value="${mjonMsgDelaySentList.regDate}" />
|
||||||
|
<%-- [스미싱의심] <fmt:formatDate value="${mjonMsgDelaySentList.reqDate}" pattern="yyyy-MM-dd HH:mm"/> --%>
|
||||||
</c:when>
|
</c:when>
|
||||||
<c:otherwise>
|
<c:otherwise>
|
||||||
-
|
-
|
||||||
|
|||||||
@ -903,6 +903,8 @@ function previewPhone(){
|
|||||||
<input type="hidden" name="searchCondition" value="<c:out value='${searchVO.searchCondition }' />" />
|
<input type="hidden" name="searchCondition" value="<c:out value='${searchVO.searchCondition }' />" />
|
||||||
<input type="hidden" name="searchKeyword" value="<c:out value='${searchVO.searchKeyword }' />" />
|
<input type="hidden" name="searchKeyword" value="<c:out value='${searchVO.searchKeyword }' />" />
|
||||||
<input type="hidden" name="pageUnit" value="<c:out value='${searchVO.pageUnit }' />" />
|
<input type="hidden" name="pageUnit" value="<c:out value='${searchVO.pageUnit }' />" />
|
||||||
|
<input type="hidden" name="tabType" value="<c:out value='${searchVO.tabType }' />" />
|
||||||
|
<input type="hidden" name="stateType" value="<c:out value='${searchVO.stateType }' />" />
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<!-- 예약 취소 -->
|
<!-- 예약 취소 -->
|
||||||
|
|||||||
@ -16,8 +16,83 @@ var thisfuledtlday = ""; //당원 마지막일
|
|||||||
var threefulstday = ""; //3개월전 시작일
|
var threefulstday = ""; //3개월전 시작일
|
||||||
var threefuledday = ""; //3개월전 마지막일
|
var threefuledday = ""; //3개월전 마지막일
|
||||||
|
|
||||||
|
function firstLodingSet(){
|
||||||
|
var html = "";
|
||||||
|
html += '<div class="list_info">';
|
||||||
|
html += ' <p>총 발송건수 <span class="c_e40000">0</span>건</p>';
|
||||||
|
html += ' <div>';
|
||||||
|
html += ' <p class="cf_text c_e40000">※ 예약 발송취소는 예약 발송시간 기준 5분 전까지만 가능</p>';
|
||||||
|
html += ' <label for="pageUnit" class="label">줄보기 선택</label>';
|
||||||
|
html += ' <select id="pageUnit" name="pageUnit" class="selType2">';
|
||||||
|
html += ' <option value="10" selected>10개보기</option>';
|
||||||
|
html += ' </select>';
|
||||||
|
html += ' </div>';
|
||||||
|
html += '</div>';
|
||||||
|
html += '<div class="tb_wrap">';
|
||||||
|
html += ' <table class="tType4">';
|
||||||
|
html += ' <colgroup>';
|
||||||
|
html += ' <col style="width: 45px;">';
|
||||||
|
html += ' <col style="width: 12%;">';
|
||||||
|
html += ' <col style="width: 7%;">';
|
||||||
|
html += ' <col style="width: auto;">';
|
||||||
|
html += ' <col style="width: 7%;">';
|
||||||
|
html += ' <col style="width: 6%;">';
|
||||||
|
html += ' <col style="width: 6%;">';
|
||||||
|
html += ' <col style="width: 6%;">';
|
||||||
|
html += ' <col style="width: 6%;">';
|
||||||
|
html += ' <col style="width: 6%;">';
|
||||||
|
html += ' <col style="width: 8%;">';
|
||||||
|
html += ' <col style="width: 8%;">';
|
||||||
|
html += ' </colgroup>';
|
||||||
|
html += ' <thead>';
|
||||||
|
html += ' <tr>';
|
||||||
|
html += ' <th rowspan="2">';
|
||||||
|
html += ' <label for="" class="label">전체 선택</label>';
|
||||||
|
html += ' <input type="checkbox" id="allCheck" name="allCheck">';
|
||||||
|
html += ' </th>';
|
||||||
|
html += ' <th rowspan="2">발송일시';
|
||||||
|
html += ' <div class="sort_wrap">';
|
||||||
|
html += ' <input type="button" class="sort sortBtn" id="sort_reqdate">';
|
||||||
|
html += ' </div>';
|
||||||
|
html += ' </th>';
|
||||||
|
html += ' <th rowspan="2">형태';
|
||||||
|
html += ' <div class="sort_wrap">';
|
||||||
|
html += ' <input type="button" class="sort sortBtn" id="sort_orderByCode">';
|
||||||
|
html += ' </div>';
|
||||||
|
html += ' </th>';
|
||||||
|
html += ' <th rowspan="2">내용</th>';
|
||||||
|
html += ' <th rowspan="2">발송건수';
|
||||||
|
html += ' <div class="sort_wrap">';
|
||||||
|
html += ' <input type="button" class="sort sortBtn" id="sort_msgGroupCnt">';
|
||||||
|
html += ' </div>';
|
||||||
|
html += ' </th>';
|
||||||
|
html += ' <th rowspan="2">대기</th>';
|
||||||
|
html += ' <th colspan="2">카카오톡결과</th>';
|
||||||
|
html += ' <th colspan="2">대체문자결과</th>';
|
||||||
|
html += ' <th rowspan="2">금액(원)</th>';
|
||||||
|
html += ' <th rowspan="2">진행상황</th>';
|
||||||
|
html += ' </tr>';
|
||||||
|
html += ' <tr>';
|
||||||
|
html += ' <th>성공</th>';
|
||||||
|
html += ' <th>실패</th>';
|
||||||
|
html += ' <th>성공</th>';
|
||||||
|
html += ' <th>실패</th>';
|
||||||
|
html += ' </tr>';
|
||||||
|
html += ' </thead>';
|
||||||
|
html += ' <tbody>';
|
||||||
|
html += ' <tr><td colspan="12">LOADING...</td></tr>';
|
||||||
|
html += ' </tbody>';
|
||||||
|
html += ' </table>';
|
||||||
|
html += '</div>';
|
||||||
|
|
||||||
|
$(".msgSentAllLoad").html(html);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
|
|
||||||
|
firstLodingSet();
|
||||||
|
|
||||||
//초기 전체 리스트 페이지 보여주기
|
//초기 전체 리스트 페이지 보여주기
|
||||||
var form = document.searchForm;
|
var form = document.searchForm;
|
||||||
form.listType.value = "groupList";
|
form.listType.value = "groupList";
|
||||||
@ -417,8 +492,10 @@ function fn_sentDetailView(msgGroupId) {
|
|||||||
<input type="hidden" id="msgGroupIdList" name="msgGroupIdList" value=""/>
|
<input type="hidden" id="msgGroupIdList" name="msgGroupIdList" value=""/>
|
||||||
<input type="hidden" name="searchSortCnd" value="<c:out value="${searchVO.searchSortCnd}" />" />
|
<input type="hidden" name="searchSortCnd" value="<c:out value="${searchVO.searchSortCnd}" />" />
|
||||||
<input type="hidden" name="searchSortOrd" value="<c:out value="${searchVO.searchSortOrd}" />" />
|
<input type="hidden" name="searchSortOrd" value="<c:out value="${searchVO.searchSortOrd}" />" />
|
||||||
<input type="hidden" id="tabType" name="tabType" value="all"/><!-- 탭 종류 -->
|
<!-- <input type="hidden" id="tabType" name="tabType" value="all"/>탭 종류 -->
|
||||||
<input type="hidden" id="stateType" name="stateType" value="all"/><!-- 발송상태 종류 -->
|
<input type="hidden" id="tabType" name="tabType" value="${searchVO.tabType}"/><!-- 탭 종류 -->
|
||||||
|
<!-- <input type="hidden" id="stateType" name="stateType" value="all"/>발송상태 종류 -->
|
||||||
|
<input type="hidden" id="stateType" name="stateType" value="${searchVO.stateType}"/><!-- 발송상태 종류 -->
|
||||||
<input type="hidden" id="listType" name="listType" value="groupList"/><!-- 리스트 종류 -->
|
<input type="hidden" id="listType" name="listType" value="groupList"/><!-- 리스트 종류 -->
|
||||||
<input type="hidden" id="addrGrpNm" name="addrGrpNm" value=""/><!-- 주소록 그룹 이름 -->
|
<input type="hidden" id="addrGrpNm" name="addrGrpNm" value=""/><!-- 주소록 그룹 이름 -->
|
||||||
<input type="hidden" id="mberId" name="mberId" value="${LoginVO.id}"/><!-- 주소록 그룹 이름 -->
|
<input type="hidden" id="mberId" name="mberId" value="${LoginVO.id}"/><!-- 주소록 그룹 이름 -->
|
||||||
@ -584,7 +661,7 @@ function fn_sentDetailView(msgGroupId) {
|
|||||||
<!-- <div class="on_active">받는사람(전송건별)</div> -->
|
<!-- <div class="on_active">받는사람(전송건별)</div> -->
|
||||||
<!-- </div> -->
|
<!-- </div> -->
|
||||||
<ul>
|
<ul>
|
||||||
<li class="tab active">
|
<li class="tab <c:if test="${searchVO.stateType eq 'all' || searchVO.stateType eq '' || empty searchVO.stateType}">active</c:if>">
|
||||||
<button type="button" onclick="fnListLoad('all','0'); return false;">전체</button>
|
<button type="button" onclick="fnListLoad('all','0'); return false;">전체</button>
|
||||||
</li>
|
</li>
|
||||||
<!-- <li class="tab">
|
<!-- <li class="tab">
|
||||||
@ -596,10 +673,10 @@ function fn_sentDetailView(msgGroupId) {
|
|||||||
<li class="tab">
|
<li class="tab">
|
||||||
<button type="button" onclick="fnListLoad('fail','3'); return false;">수신오류</button>
|
<button type="button" onclick="fnListLoad('fail','3'); return false;">수신오류</button>
|
||||||
</li> -->
|
</li> -->
|
||||||
<li class="tab">
|
<li class="tab <c:if test="${searchVO.stateType eq 'N'}">active</c:if>">
|
||||||
<button type="button" onclick="fnListLoad('N','1'); return false;">즉시</button>
|
<button type="button" onclick="fnListLoad('N','1'); return false;">즉시</button>
|
||||||
</li>
|
</li>
|
||||||
<li class="tab">
|
<li class="tab" <c:if test="${searchVO.stateType eq 'Y'}">active</c:if>>
|
||||||
<button type="button" onclick="fnListLoad('Y','2'); return false;">예약</button>
|
<button type="button" onclick="fnListLoad('Y','2'); return false;">예약</button>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|||||||
@ -2475,10 +2475,10 @@ function advMsgInsert(){
|
|||||||
var callFrom = $("#callFromList option:selected").val();
|
var callFrom = $("#callFromList option:selected").val();
|
||||||
|
|
||||||
var advStr = '<div class="ad_txt"><p>(선거운동정보)</p></div>';
|
var advStr = '<div class="ad_txt"><p>(선거운동정보)</p></div>';
|
||||||
var advDenyStr = '<div class="deny_txt">후보자전화번호 ' + callFrom + '<br/>불법수집정보 신고번호 118번<br/>무료거부 0808800858</div>';
|
var advDenyStr = '<div class="deny_txt">후보자전화번호 ' + callFrom + '<br/>불법수집정보 신고번호 : 선거관리위원회 ☎1390<br/>무료거부 0808800858</div>';
|
||||||
|
|
||||||
var preAdvStr = '<p class="ad_tit">(선거운동정보)</p>';
|
var preAdvStr = '<p class="ad_tit">(선거운동정보)</p>';
|
||||||
var preAdvDenyStr = '<p class="deny_receipt">후보자전화번호 ' + callFrom + '<br>불법수집정보 신고번호 118번<br>무료거부 0808800858</p>';
|
var preAdvDenyStr = '<p class="deny_receipt">후보자전화번호 ' + callFrom + '<br>불법수집정보 신고번호 : 선거관리위원회 ☎1390<br>무료거부 0808800858</p>';
|
||||||
|
|
||||||
//광고 및 무료수신거부 텍스트 추가
|
//광고 및 무료수신거부 텍스트 추가
|
||||||
if ($("#send_adYnY").val() == 'Y'){
|
if ($("#send_adYnY").val() == 'Y'){
|
||||||
|
|||||||
@ -2755,10 +2755,10 @@ function advMsgInsert(){
|
|||||||
var callFrom = $("#callFromList option:selected").val();
|
var callFrom = $("#callFromList option:selected").val();
|
||||||
|
|
||||||
var advStr = '<div class="ad_txt"><p>(선거운동정보)</p></div>';
|
var advStr = '<div class="ad_txt"><p>(선거운동정보)</p></div>';
|
||||||
var advDenyStr = '<div class="deny_txt">후보자전화번호 ' + callFrom + '<br/>불법수집정보 신고번호 118번<br/>무료거부 0808800858</div>';
|
var advDenyStr = '<div class="deny_txt">후보자전화번호 ' + callFrom + '<br/>불법수집정보 신고번호 : 선거관리위원회 ☎1390<br/>무료거부 0808800858</div>';
|
||||||
|
|
||||||
var preAdvStr = '<p class="ad_tit">(선거운동정보)</p>';
|
var preAdvStr = '<p class="ad_tit">(선거운동정보)</p>';
|
||||||
var preAdvDenyStr = '<p class="deny_receipt">후보자전화번호 ' + callFrom + '<br>불법수집정보 신고번호 118번<br>무료거부 0808800858</p>';
|
var preAdvDenyStr = '<p class="deny_receipt">후보자전화번호 ' + callFrom + '<br>불법수집정보 신고번호 : 선거관리위원회 ☎1390<br>무료거부 0808800858</p>';
|
||||||
|
|
||||||
//선거 및 무료수신거부 텍스트 추가
|
//선거 및 무료수신거부 텍스트 추가
|
||||||
if ($('input[name=send_adYn]:checked').val() == 'Y'){
|
if ($('input[name=send_adYn]:checked').val() == 'Y'){
|
||||||
|
|||||||
@ -3102,10 +3102,10 @@ function advMsgInsert(){
|
|||||||
var callFrom = $("#callFromList option:selected").val();
|
var callFrom = $("#callFromList option:selected").val();
|
||||||
|
|
||||||
var advStr = '<div class="ad_txt"><p>(선거운동정보)</p></div>';
|
var advStr = '<div class="ad_txt"><p>(선거운동정보)</p></div>';
|
||||||
var advDenyStr = '<div class="deny_txt">후보자전화번호 ' + callFrom + '<br/>불법수집정보 신고번호 118번<br/>무료거부 0808800858</div>';
|
var advDenyStr = '<div class="deny_txt">후보자전화번호 ' + callFrom + '<br/>불법수집정보 신고번호 : 선거관리위원회 ☎1390<br/>무료거부 0808800858</div>';
|
||||||
|
|
||||||
var preAdvStr = '<p class="ad_tit">(선거운동정보)</p>';
|
var preAdvStr = '<p class="ad_tit">(선거운동정보)</p>';
|
||||||
var preAdvDenyStr = '<p class="deny_receipt">후보자전화번호 ' + callFrom + '<br>불법수집정보 신고번호 118번<br>무료거부 0808800858</p>';
|
var preAdvDenyStr = '<p class="deny_receipt">후보자전화번호 ' + callFrom + '<br>불법수집정보 신고번호 : 선거관리위원회 ☎1390<br>무료거부 0808800858</p>';
|
||||||
|
|
||||||
//광고 및 무료수신거부 텍스트 추가
|
//광고 및 무료수신거부 텍스트 추가
|
||||||
if ($('input[name=send_adYn]:checked').val() == 'Y'){
|
if ($('input[name=send_adYn]:checked').val() == 'Y'){
|
||||||
|
|||||||
@ -3365,10 +3365,10 @@ function advMsgInsert(){
|
|||||||
var callFrom = $("#callFromList option:selected").val();
|
var callFrom = $("#callFromList option:selected").val();
|
||||||
|
|
||||||
var advStr = '<div class="ad_txt"><p>(선거운동정보)</p></div>';
|
var advStr = '<div class="ad_txt"><p>(선거운동정보)</p></div>';
|
||||||
var advDenyStr = '<div class="deny_txt">후보자전화번호 ' + callFrom + '<br/>불법수집정보 신고번호 118번<br/>무료거부 0808800858</div>';
|
var advDenyStr = '<div class="deny_txt">후보자전화번호 ' + callFrom + '<br/>불법수집정보 신고번호 : 선거관리위원회 ☎1390<br/>무료거부 0808800858</div>';
|
||||||
|
|
||||||
var preAdvStr = '<p class="ad_tit">(선거운동정보)</p>';
|
var preAdvStr = '<p class="ad_tit">(선거운동정보)</p>';
|
||||||
var preAdvDenyStr = '<p class="deny_receipt">후보자전화번호 ' + callFrom + '<br>불법수집정보 신고번호 118번<br>무료거부 0808800858</p>';
|
var preAdvDenyStr = '<p class="deny_receipt">후보자전화번호 ' + callFrom + '<br>불법수집정보 신고번호 : 선거관리위원회 ☎1390<br>무료거부 0808800858</p>';
|
||||||
|
|
||||||
//광고 및 무료수신거부 텍스트 추가
|
//광고 및 무료수신거부 텍스트 추가
|
||||||
if (!advMsgSts){//선거문자 필수문구 추가해주기
|
if (!advMsgSts){//선거문자 필수문구 추가해주기
|
||||||
|
|||||||
@ -198,7 +198,8 @@ function fnRevDetailPop(msgGroupId, msgId, fileCnt){
|
|||||||
</c:if>
|
</c:if>
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<fmt:formatDate pattern = "yyyy-MM-dd HH:mm" value = "${result.reqdate}" />
|
<%-- <fmt:formatDate pattern = "yyyy-MM-dd HH:mm" value = "${result.reqDate}" /> --%>
|
||||||
|
<c:out value="${result.reqDate}" />
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<c:choose>
|
<c:choose>
|
||||||
|
|||||||
@ -296,7 +296,7 @@
|
|||||||
.histroy_trans ul {background-color: #f5f5f5; padding: 0 20px; border: 1px solid #dadada; border-radius: 0 0 5px 5px; margin-top: -3px;}
|
.histroy_trans ul {background-color: #f5f5f5; padding: 0 20px; border: 1px solid #dadada; border-radius: 0 0 5px 5px; margin-top: -3px;}
|
||||||
.histroy_trans ul li {position: relative; height: 30px; line-height: 30px; border-bottom: 1px solid #e8e8e8;}
|
.histroy_trans ul li {position: relative; height: 30px; line-height: 30px; border-bottom: 1px solid #e8e8e8;}
|
||||||
.histroy_trans ul li:only-child {border-bottom: 0;}
|
.histroy_trans ul li:only-child {border-bottom: 0;}
|
||||||
.histroy_trans ul li p {display: inline-block; width: 100%; color: #666; font-size: 14px; font-weight: 300; letter-spacing: 0.5px; text-align:center;}
|
.histroy_trans ul li p {display: inline-block; color: #666; font-size: 14px; font-weight: 300; letter-spacing: 0.5px; text-align:center;}
|
||||||
.histroy_trans ul li button {position: absolute; right: 0; top: 50%; transform: translateY(-50%);}
|
.histroy_trans ul li button {position: absolute; right: 0; top: 50%; transform: translateY(-50%);}
|
||||||
.popup_btn_wrap2.hisroy_btn {width: 178px;}
|
.popup_btn_wrap2.hisroy_btn {width: 178px;}
|
||||||
.popup_btn_wrap2.hisroy_btn button {width: calc(100%/2 - 2.5px); height: 32px; font-size: 14px;}
|
.popup_btn_wrap2.hisroy_btn button {width: calc(100%/2 - 2.5px); height: 32px; font-size: 14px;}
|
||||||
|
|||||||
31
src/main/webapp/publish/maintenance.html
Normal file
31
src/main/webapp/publish/maintenance.html
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="ko">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>문자온 시스템 점검 안내</title>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
body {background-color: #EEE;display:flex; justify-content: center; font-family: 'Noto Sans KR', sans-serif; }
|
||||||
|
.textbox {margin:100px 0 0 0; width:480px; border:15px solid #d8d8d8; padding:25px 40px 50px 40px; background-color: #fff;}
|
||||||
|
.textbox h1 {color:#222; font-size:24px; text-align: center; border-bottom:1px solid #a8a8a8; padding:0 0 20px 0; font-weight: 600;}
|
||||||
|
.textbox h3 {color:#333; font-size:16px; font-weight: 400; text-align: center; padding: 12px 0 14px 0; background-color: #f8f8f8; margin:20px 0 20px 0; border:1px solid #ededed; }
|
||||||
|
.textbox h3 strong {font-size:17px; font-weight:500px;}
|
||||||
|
.textbox p {text-align: center; margin: 8px 0 0 0; font-size:16px; font-weight: 400; color:#555; line-height: 26px; }
|
||||||
|
.textbox p span {color:#333;font-weight: 500; }
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="textbox">
|
||||||
|
<h1>문자온 시스템 점검중입니다.</h1>
|
||||||
|
<h3>· 점검일시 : <strong>2025년 4월 28일(월) 08:30 ~ 08:35</strong> (약 5분간)</h3>
|
||||||
|
<p>현재 홈페이지 인증서 교체 작업을 위한 시스템 점검중에 있습니다.</p>
|
||||||
|
<p><span>(기)예약 설정 건은 정상 발송되며, <br>작업 이전 '발송대기'건은 작업 완료 후 발송 시도됩니다.</span></p>
|
||||||
|
<p>항상 더 나은 서비스 제공을 위해 노력하겠습니다.<br>
|
||||||
|
감사합니다.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
Loading…
Reference in New Issue
Block a user