This commit is contained in:
hehihoho3@gmail.com 2024-10-11 16:00:22 +09:00
commit c2c68f6113
5 changed files with 2190 additions and 3334 deletions

View File

@ -232,7 +232,7 @@ public class MjonMsgCampainDataController {
model.addAttribute("addrVO", searchVO);
}
//주소록에서 선택시 넘어오는 파라미터
//주소록에서 전체전송 넘어오는 파라미터
if("Y".equals(searchVO.getMoveAddrAllFlag())) {
AddrVO addrVO = new AddrVO();

View File

@ -1,302 +1,313 @@
<%--
Class Name : EgovNoticeInqire.jsp
Description : (사용자)게시물 조회 화면
Modification Information
수정일 수정자 수정내용
---------- -------- ---------------------------
2009.03.23 이삼섭 최초 생성
2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
2011.08.31 JJY 경량환경 버전 생성
2013.05.23 이기하 상세보기 오류수정
author : 공통서비스 개발팀 이삼섭
since : 2009.03.23
--%>
<%@ 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 uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%pageContext.setAttribute("crlf", "\r\n"); %>
<head>
<script src="/publish/js/content.js"></script>
<script type="text/javascript">
$(document).ready(function(){
});
var listPage = $(location).attr('href').split($(location).attr('host'))[1].split('Detail.do')[0]+'List.do'+'?bbsId=${brdMstrVO.bbsId}' ;
var detailPage = $(location).attr('href').split($(location).attr('host'))[1].split('?')[0] ;
function fn_egov_select_noticeList(pageNo) {
/* document.searchForm.action = listPage ;
document.searchForm.submit(); */
//nttId가 쿼리스트링으로 넘어가는 이유로 인한 listForm 사용.
document.listFullForm.action = listPage ;
document.listFullForm.submit();
}
function fn_egov_select_detail(bbsId , nttId) { //이전/다음글 상세
if(listPage.indexOf("contentBbsList.do") > 0){ //컨텐츠 bbs 페이지경우
location.href=detailPage+"?bbsId="+bbsId + "&nttId="+nttId+"&menuNo="+$('#menuNo').val() ;
return
}
//location.href=detailPage+"?bbsId="+bbsId + "&nttId="+nttId ;
document.listFullForm.bbsId.value = bbsId;
document.listFullForm.nttId.value = nttId;
document.listFullForm.seCmmnCdId.value = bbsId;
document.listFullForm.method = "get";
document.listFullForm.action = detailPage;
document.listFullForm.submit();
}
function fn_egov_delete_notice() {
if (confirm('<spring:message code="common.delete.msg" />')) {
document.searchForm.action = "<c:url value='/web/cop/bbs/deleteBoardArticle.do'/>";
document.searchForm.submit();
}
}
function fn_egov_moveUpdt_notice(){
document.searchForm.action = "<c:url value='/web/cop/bbs/forUpdateBoardArticle.do'/>";
document.searchForm.method = "get";
document.searchForm.submit();
}
</script>
<!-- 댓글 작성 스크립트 -->
<c:if test="${brdMstrVO.addYn == 'Y'}">
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="articleComment" staticJavascript="false" xhtml="true" cdata="false" />
<script type="text/javascript">
// 댓글 등록
function fn_egov_insert_commentList() {
var form = document.getElementById("articleCommentVO");
if (!validateArticleComment(form)){
return;
}
if (confirm('<spring:message code="common.regist.msg" />')) {
form.submit();
}
}
// 댓글 수정
function fn_egov_updt_commentList() {
var form = document.getElementById("articleCommentVO");
if (!validateArticleComment(form)){
return;
}
if (confirm('<spring:message code="common.update.msg" />')) {
form.modified.value = "true";
form.action = "<c:url value='/${siteId}/web/cop/cmt/updateArticleComment.do'/>";
form.submit();
}
}
// 댓글 수정 화면
function fn_egov_selectCommentForupdt(commentNo) {
var form = document.getElementById("articleCommentVO");
//form.subPageIndex.value = pageNo;
form.commentNo.value = commentNo;
form.action = "<c:url value='/web/cop/bbsWeb/selectBoardArticle.do'/>";
form.submit();
}
// 댓글 삭제
function fn_egov_deleteCommentList(commentNo) {
var form = document.getElementById("articleCommentVO");
if (confirm('<spring:message code="common.delete.msg" />')) {
form.modified.value = "true";
form.commentNo.value = commentNo;
form.action = "<c:url value='/${siteId}/web/cop/cmt/deleteArticleComment.do'/>";
form.submit();
}
}
/* 댓글페이징 */
function fn_egov_select_commentList(pageNo) {
var form = document.getElementById("articleCommentVO");
// form.subPageIndex.value = pageNo;
form.commentNo.value = '';
form.action = "<c:url value='/${siteId}/web/cop/bbsWeb/selectBoardArticle.do'/>";
form.submit();
}
</script>
</c:if>
<style type="text/css">
.view_wrap .view_cont {padding-bottom:0;border-bottom:0 none;}
</style>
</head>
<body>
<!-- contents 영역 -->
<form:form commandName="searchForm" name="searchForm" method="get" action="<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>">
<input type="hidden" name="seCmmnCdId" value="${searchVO.seCmmnCdId}">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input name="searchCnd" type="hidden" value="<c:out value='${searchVO.searchCnd}'/>"/>
<input name="searchWrd" type="hidden" value="<c:out value='${searchVO.searchWrd}'/>"/>
<input name="bbsId" type="hidden" value="<c:out value='${result.bbsId}'/>" />
<input name="nttId" type="hidden" value="<c:out value='${result.nttId}'/>" />
<input type="hidden" id= "ntcrNm" name="ntcrNm" value=""/>
<input type="hidden" id= "menuNo" name="menuNo" value="<c:out value='${masterVO.menuNo}'/>" />
</form:form>
<form:form commandName="listForm" name="listForm" method="get" action="<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>">
<input type="hidden" name="seCmmnCdId" value="${searchVO.seCmmnCdId}">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input name="searchCnd" type="hidden" value="<c:out value='${searchVO.searchCnd}'/>"/>
<input name="searchWrd" type="hidden" value="<c:out value='${searchVO.searchWrd}'/>"/>
<input name="bbsId" type="hidden" value="<c:out value='${searchVO.bbsId}'/>" />
</form:form>
<form:form commandName="listFullForm" name="listFullForm" method="get" action="<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>">
<input name="bbsId" type="hidden" value="<c:out value='${searchVO.bbsId}'/>" />
<input name="nttId" type="hidden" value="<c:out value='${searchVO.nttId}'/>" />
<input type="hidden" name="seCmmnCdId" value="${searchVO.seCmmnCdId}">
<input type="hidden" name="frstRegisterId" value="${searchVO.frstRegisterId}"/>
<input type="hidden" name="viewsYn" value="">
<input type="hidden" name="menuNo" value="">
<input type="hidden" name="searchBgnDe" value="${searchVO.searchBgnDe}">
<input type="hidden" name="searchEndDe" value="${searchVO.searchEndDe}">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input type="hidden" name="searchSortCnd" value="${searchVO.searchSortCnd}" />
<input type="hidden" name="searchSortOrd" value="${searchVO.searchSortOrd}" />
<input name="searchCnd" type="hidden" value="<c:out value='${searchVO.searchCnd}'/>"/>
<input name="searchWrd" type="hidden" value="<c:out value='${searchVO.searchWrd}'/>"/>
<input type="hidden" name="pageUnit" value="${searchVO.pageUnit}" />
</form:form>
<div class="inner">
<!-- send top -->
<div class="send_top">
<!-- tab button -->
<ul class="tabType4">
<li class="tab"><button type="button" onclick="TabType5(this,'1');location.href='/web/cop/bbs/NoticeList.do'">공지사항</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'2');location.href='/web/cop/bbs/TermsList.do'">이용약관</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'3');location.href='/web/cop/bbs/FaqList.do'">자주하는 질문</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'4');location.href='/web/cop/bbs/QnaList.do'">1:1 문의</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'5');location.href='/web/cop/bbs/SuggestList.do'">불편신고</button></li>
<li class="tab active"><button type="button" onclick="TabType5(this,'6');location.href='/web/cop/bbs/EventList.do'">이벤트</button></li>
</ul><!--// tab button -->
<!-- 고객센터 - 상세페이지 -->
<div class="serv_content current" id="tab5_1">
<div class="heading">
<h2>${brdMstrVO.bbsNm}</h2>
</div>
<div class="list_cont" id="listTab_1">
<div class="view_wrap">
<div class="view_head">
<div class="title"><p><c:out value="${result.nttSj}" /></p></div>
<ul class="ext_info">
<li><i></i><c:out value="${result.frstRegisterPnttm}" /></li>
<li><i></i>운영자<%-- <c:out value="${result.frstRegisterNm}" /> --%></li>
</ul>
</div>
<div class="view_cont">
<div class="cont_in">
<%-- <div class="img_cont">
<c:if test="${not empty fileList}">
<c:forEach var="result" items="${fileList}" varStatus="status">
<img src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>' alt="<c:out value='${nttSj}' />_<c:out value='${status.index+1}' />">
</c:forEach>
</c:if>
</div> --%>
<c:out value="${result.nttCn}" escapeXml="false" />
</div>
<%-- <div class="attachedFile2">
<c:if test="${result.atchFileCnt > 0}">
<ul class="attach">
<li><c:import url="/cmm/fms/selectBBSFileInfsMjon.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${result.atchFileId}" />
</c:import>
</li>
</ul>
</c:if>
<!-- <div class="attachedFile_in">
<a href="#none"><i></i>2021년 인증서 교체작업 서비스 이용 제한 안내.pdf</a>
</div>
<div class="attachedFile_in">
<a href="#none"><i></i>2021년 인증서 교체작업 서비스 이용 제한 안내.hwp</a>
</div> -->
</div> --%>
</div>
<c:if test="${resultCnt > 0 and resultList[0].commentCn != ''}">
<div class="view_answer">
<div class="view_asnwer_head">
<ul class="ext_info">
<li><i></i><c:out value="${resultList[0].frstRegisterPnttm}" /></li>
<li><i></i><c:out value="${resultList[0].frstRegisterNm}" /></li>
</ul>
</div>
<div class="view_asnwer_body">
<div class="answer_title"><i></i></div>
<div class="answer_cont">
<c:out value="${resultList[0].commentCn}" />
</div>
</div>
</div>
</c:if>
</div>
<div class="view_btnWrap">
<c:if test="${'9997200' eq brdMstrVO.menuNo && empty answerList && 'T' ne result.secretAt}">
<button type="button" class="btnType btnType1" onclick="javascript:fn_egov_moveUpdt_notice(); return false;">수정</button>
<button type="button" class="btnType btnType2" onclick="javascript:fn_egov_delete_notice('1'); return false;">삭제</button>
</c:if>
<button type="button" class="btnType" onclick="javascript:fn_egov_select_noticeList(); return false;">목록</button>
</div>
<ul class="list_prev-next">
<li class="list_prev">
<div><span>이전글<i></i></span></div>
<div>
<c:choose>
<c:when test="${empty prevNttIdNSj}">
이전글이 없습니다.
</c:when>
<c:otherwise>
<c:set var="prevNttId" value="${fn:split(prevNttIdNSj, '|')[0]}" />
<c:set var="prevNttSj" value="${fn:split(prevNttIdNSj, '|')[1]}" />
<c:set var="prevNttDate" value="${fn:split(prevNttIdNSj, '|')[2]}" />
<a href="#" onclick="fn_egov_select_detail('<c:out value='${result.bbsId}'/>' , '<c:out value='${prevNttId}'/>'); return false;" title="현재창 이전글이동">
<c:out value="${prevNttSj}" />
</a>
<span class="nb_date"><c:out value="${prevNttDate}" /></span>
</c:otherwise>
</c:choose>
<!-- <a href="#none">[공지] 세금계산서 발행 안내</a> -->
</div>
</li>
<li class="list_next">
<div><span>다음글<i></i></span></div>
<div>
<c:choose>
<c:when test="${empty nextNttIdNSj}">
다음글이 없습니다.
</c:when>
<c:otherwise>
<c:set var="nextNttId" value="${fn:split(nextNttIdNSj, '|')[0]}" />
<c:set var="nextNttSj" value="${fn:split(nextNttIdNSj, '|')[1]}" />
<c:set var="nextNttDate" value="${fn:split(nextNttIdNSj, '|')[2]}" />
<a href="#" onclick="fn_egov_select_detail('<c:out value='${result.bbsId}'/>' , '<c:out value='${nextNttId}'/>'); return false;" title="현재창 다음글이동">
<c:out value="${nextNttSj}" />
</a>
<span class="nb_date"><c:out value="${nextNttDate}" /></span>
</c:otherwise>
</c:choose>
<!-- <a href="#none">[공지] 문자온 6월 30일 정식 서비스 오픈 안내</a> -->
<div>
</li>
</ul>
</div>
</div>
</div><!-- 고객센터 - 상세페이지 -->
</div><!--// send top -->
</body>
<%--
Class Name : EgovNoticeInqire.jsp
Description : (사용자)게시물 조회 화면
Modification Information
수정일 수정자 수정내용
---------- -------- ---------------------------
2009.03.23 이삼섭 최초 생성
2009.06.26 한성곤 2단계 기능 추가 (댓글관리, 만족도조사)
2011.08.31 JJY 경량환경 버전 생성
2013.05.23 이기하 상세보기 오류수정
author : 공통서비스 개발팀 이삼섭
since : 2009.03.23
--%>
<%@ 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 uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%pageContext.setAttribute("crlf", "\r\n"); %>
<%pageContext.setAttribute("ltChar", "&lt;"); %>
<%pageContext.setAttribute("gtChar", "&gt;"); %>
<head>
<script src="/publish/js/content.js"></script>
<script type="text/javascript">
var gPageIndex = "<c:out value='${searchVO.pageIndex}'/>";
var gSearchCnd = "<c:out value='${searchVO.searchCnd}'/>";
var gSearchWrd = "<c:out value='${searchVO.searchWrd}'/>";
$(document).ready(function(){
});
var listPage = $(location).attr('href').split($(location).attr('host'))[1].split('Detail.do')[0]+'List.do'+'?bbsId=${brdMstrVO.bbsId}' ;
var detailPage = $(location).attr('href').split($(location).attr('host'))[1].split('?')[0] ;
function fn_egov_select_noticeList(pageNo) {
/* document.searchForm.action = listPage ;
document.searchForm.submit(); */
//nttId가 쿼리스트링으로 넘어가는 이유로 인한 listForm 사용.
document.listFullForm.action = listPage ;
document.listFullForm.submit();
}
function fn_egov_select_detail(bbsId , nttId) { //이전/다음글 상세
if(listPage.indexOf("contentBbsList.do") > 0){ //컨텐츠 bbs 페이지경우
location.href=detailPage+"?bbsId="+bbsId + "&nttId="+nttId+"&menuNo="+$('#menuNo').val() ;
return
}
//location.href=detailPage+"?bbsId="+bbsId + "&nttId="+nttId ;
document.listFullForm.bbsId.value = bbsId;
document.listFullForm.nttId.value = nttId;
document.listFullForm.seCmmnCdId.value = bbsId;
document.listFullForm.method = "get";
document.listFullForm.action = detailPage;
document.listFullForm.submit();
}
function fn_egov_delete_notice() {
if (confirm('<spring:message code="common.delete.msg" />')) {
document.searchForm.action = "<c:url value='/web/cop/bbs/deleteBoardArticle.do'/>";
document.searchForm.submit();
}
}
function fn_egov_moveUpdt_notice(){
document.searchForm.action = "<c:url value='/web/cop/bbs/forUpdateBoardArticle.do'/>";
document.searchForm.method = "get";
document.searchForm.submit();
}
</script>
<!-- 댓글 작성 스크립트 -->
<c:if test="${brdMstrVO.addYn == 'Y'}">
<script type="text/javascript" src="<c:url value="/validator.do"/>"></script>
<validator:javascript formName="articleComment" staticJavascript="false" xhtml="true" cdata="false" />
<script type="text/javascript">
// 댓글 등록
function fn_egov_insert_commentList() {
var form = document.getElementById("articleCommentVO");
if (!validateArticleComment(form)){
return;
}
if (confirm('<spring:message code="common.regist.msg" />')) {
form.submit();
}
}
// 댓글 수정
function fn_egov_updt_commentList() {
var form = document.getElementById("articleCommentVO");
if (!validateArticleComment(form)){
return;
}
if (confirm('<spring:message code="common.update.msg" />')) {
form.modified.value = "true";
form.action = "<c:url value='/${siteId}/web/cop/cmt/updateArticleComment.do'/>";
form.submit();
}
}
// 댓글 수정 화면
function fn_egov_selectCommentForupdt(commentNo) {
var form = document.getElementById("articleCommentVO");
//form.subPageIndex.value = pageNo;
form.commentNo.value = commentNo;
form.action = "<c:url value='/web/cop/bbsWeb/selectBoardArticle.do'/>";
form.submit();
}
// 댓글 삭제
function fn_egov_deleteCommentList(commentNo) {
var form = document.getElementById("articleCommentVO");
if (confirm('<spring:message code="common.delete.msg" />')) {
form.modified.value = "true";
form.commentNo.value = commentNo;
form.action = "<c:url value='/${siteId}/web/cop/cmt/deleteArticleComment.do'/>";
form.submit();
}
}
/* 댓글페이징 */
function fn_egov_select_commentList(pageNo) {
var form = document.getElementById("articleCommentVO");
// form.subPageIndex.value = pageNo;
form.commentNo.value = '';
form.action = "<c:url value='/${siteId}/web/cop/bbsWeb/selectBoardArticle.do'/>";
form.submit();
}
</script>
</c:if>
<style type="text/css">
.view_wrap .view_cont {padding-bottom:0;border-bottom:0 none;}
</style>
</head>
<body>
<!-- contents 영역 -->
<form:form commandName="searchForm" name="searchForm" method="get" action="<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>">
<input type="hidden" name="seCmmnCdId" value="${searchVO.seCmmnCdId}">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input name="searchCnd" type="hidden" value="<c:out value='${searchVO.searchCnd}'/>"/>
<input name="searchWrd" type="hidden" value="<c:out value='${searchVO.searchWrd}'/>"/>
<input name="bbsId" type="hidden" value="<c:out value='${result.bbsId}'/>" />
<input name="nttId" type="hidden" value="<c:out value='${result.nttId}'/>" />
<input type="hidden" id= "ntcrNm" name="ntcrNm" value=""/>
<input type="hidden" id= "menuNo" name="menuNo" value="<c:out value='${masterVO.menuNo}'/>" />
</form:form>
<form:form commandName="listForm" name="listForm" method="get" action="<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>">
<input type="hidden" name="seCmmnCdId" value="${searchVO.seCmmnCdId}">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input name="searchCnd" type="hidden" value="<c:out value='${searchVO.searchCnd}'/>"/>
<input name="searchWrd" type="hidden" value="<c:out value='${searchVO.searchWrd}'/>"/>
<input name="bbsId" type="hidden" value="<c:out value='${searchVO.bbsId}'/>" />
</form:form>
<form:form commandName="listFullForm" name="listFullForm" method="get" action="<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>">
<input name="bbsId" type="hidden" value="<c:out value='${searchVO.bbsId}'/>" />
<input name="nttId" type="hidden" value="<c:out value='${searchVO.nttId}'/>" />
<input type="hidden" name="seCmmnCdId" value="${searchVO.seCmmnCdId}">
<input type="hidden" name="frstRegisterId" value="${searchVO.frstRegisterId}"/>
<input type="hidden" name="viewsYn" value="">
<input type="hidden" name="menuNo" value="">
<input type="hidden" name="searchBgnDe" value="${searchVO.searchBgnDe}">
<input type="hidden" name="searchEndDe" value="${searchVO.searchEndDe}">
<input name="pageIndex" type="hidden" value="<c:out value='${searchVO.pageIndex}'/>"/>
<input type="hidden" name="searchSortCnd" value="${searchVO.searchSortCnd}" />
<input type="hidden" name="searchSortOrd" value="${searchVO.searchSortOrd}" />
<input name="searchCnd" type="hidden" value="<c:out value='${searchVO.searchCnd}'/>"/>
<input name="searchWrd" type="hidden" value="<c:out value='${searchVO.searchWrd}'/>"/>
<input type="hidden" name="pageUnit" value="${searchVO.pageUnit}" />
</form:form>
<div class="inner">
<!-- send top -->
<div class="send_top">
<!-- tab button -->
<ul class="tabType4">
<li class="tab"><button type="button" onclick="TabType5(this,'1');location.href='/web/cop/bbs/NoticeList.do'">공지사항</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'2');location.href='/web/cop/bbs/TermsList.do'">이용약관</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'3');location.href='/web/cop/bbs/FaqList.do'">자주하는 질문</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'4');location.href='/web/cop/bbs/QnaList.do'">1:1 문의</button></li>
<li class="tab"><button type="button" onclick="TabType5(this,'5');location.href='/web/cop/bbs/SuggestList.do'">불편신고</button></li>
<li class="tab active"><button type="button" onclick="TabType5(this,'6');location.href='/web/cop/bbs/EventList.do'">이벤트</button></li>
</ul><!--// tab button -->
<!-- 고객센터 - 상세페이지 -->
<div class="serv_content current" id="tab5_1">
<div class="heading">
<h2>${brdMstrVO.bbsNm}</h2>
</div>
<div class="list_cont" id="listTab_1">
<div class="view_wrap">
<div class="view_head">
<div class="title"><p><c:out value="${result.nttSj}" /></p></div>
<ul class="ext_info">
<li><i></i><c:out value="${result.frstRegisterPnttm}" /></li>
<li><i></i>운영자<%-- <c:out value="${result.frstRegisterNm}" /> --%></li>
</ul>
</div>
<div class="view_cont">
<div class="cont_in" style="word-break:break-all;">
<%-- <div class="img_cont">
<c:if test="${not empty fileList}">
<c:forEach var="result" items="${fileList}" varStatus="status">
<img src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>' alt="<c:out value='${nttSj}' />_<c:out value='${status.index+1}' />">
</c:forEach>
</c:if>
</div> --%>
<!-- 엔터적용 -->
<c:set var="nttCn1" value="${fn:replace(result.nttCn , crlf , '<br/>')}" />
<c:set var="nttCn2" value="${fn:replace(nttCn1 , ltChar , '<')}" />
<c:set var="nttCn3" value="${fn:replace(nttCn2 , gtChar , '>')}" />
<c:out value="${nttCn3}" escapeXml="false" />
<%-- <c:out value="${result.nttCn}" escapeXml="false" /> --%>
</div>
<%-- <div class="attachedFile2">
<c:if test="${result.atchFileCnt > 0}">
<ul class="attach">
<li><c:import url="/cmm/fms/selectBBSFileInfsMjon.do" charEncoding="utf-8">
<c:param name="param_atchFileId" value="${result.atchFileId}" />
</c:import>
</li>
</ul>
</c:if>
<!-- <div class="attachedFile_in">
<a href="#none"><i></i>2021년 인증서 교체작업 서비스 이용 제한 안내.pdf</a>
</div>
<div class="attachedFile_in">
<a href="#none"><i></i>2021년 인증서 교체작업 서비스 이용 제한 안내.hwp</a>
</div> -->
</div> --%>
</div>
<c:if test="${resultCnt > 0 and resultList[0].commentCn != ''}">
<div class="view_answer">
<div class="view_asnwer_head">
<ul class="ext_info">
<li><i></i><c:out value="${resultList[0].frstRegisterPnttm}" /></li>
<li><i></i><c:out value="${resultList[0].frstRegisterNm}" /></li>
</ul>
</div>
<div class="view_asnwer_body">
<div class="answer_title"><i></i></div>
<div class="answer_cont">
<c:out value="${resultList[0].commentCn}" />
</div>
</div>
</div>
</c:if>
</div>
<div class="view_btnWrap">
<c:if test="${'9997200' eq brdMstrVO.menuNo && empty answerList && 'T' ne result.secretAt}">
<button type="button" class="btnType btnType1" onclick="javascript:fn_egov_moveUpdt_notice(); return false;">수정</button>
<button type="button" class="btnType btnType2" onclick="javascript:fn_egov_delete_notice('1'); return false;">삭제</button>
</c:if>
<button type="button" class="btnType" onclick="javascript:fn_egov_select_noticeList(); return false;">목록</button>
</div>
<ul class="list_prev-next">
<li class="list_prev">
<div><span>이전글<i></i></span></div>
<div>
<c:choose>
<c:when test="${empty prevNttIdNSj}">
이전글이 없습니다.
</c:when>
<c:otherwise>
<c:set var="prevNttId" value="${fn:split(prevNttIdNSj, '|')[0]}" />
<c:set var="prevNttSj" value="${fn:split(prevNttIdNSj, '|')[1]}" />
<c:set var="prevNttDate" value="${fn:split(prevNttIdNSj, '|')[2]}" />
<a href="#" onclick="fn_egov_select_detail('<c:out value='${result.bbsId}'/>' , '<c:out value='${prevNttId}'/>'); return false;" title="현재창 이전글이동">
<c:out value="${prevNttSj}" />
</a>
<span class="nb_date"><c:out value="${prevNttDate}" /></span>
</c:otherwise>
</c:choose>
<!-- <a href="#none">[공지] 세금계산서 발행 안내</a> -->
</div>
</li>
<li class="list_next">
<div><span>다음글<i></i></span></div>
<div>
<c:choose>
<c:when test="${empty nextNttIdNSj}">
다음글이 없습니다.
</c:when>
<c:otherwise>
<c:set var="nextNttId" value="${fn:split(nextNttIdNSj, '|')[0]}" />
<c:set var="nextNttSj" value="${fn:split(nextNttIdNSj, '|')[1]}" />
<c:set var="nextNttDate" value="${fn:split(nextNttIdNSj, '|')[2]}" />
<a href="#" onclick="fn_egov_select_detail('<c:out value='${result.bbsId}'/>' , '<c:out value='${nextNttId}'/>'); return false;" title="현재창 다음글이동">
<c:out value="${nextNttSj}" />
</a>
<span class="nb_date"><c:out value="${nextNttDate}" /></span>
</c:otherwise>
</c:choose>
<!-- <a href="#none">[공지] 문자온 6월 30일 정식 서비스 오픈 안내</a> -->
<div>
</li>
</ul>
</div>
</div>
</div><!-- 고객센터 - 상세페이지 -->
</div><!--// send top -->
</body>

File diff suppressed because it is too large Load Diff

View File

@ -202,21 +202,20 @@ function goMsgUrlMove() {
document.location.href = "/web/mjon/msgcampain/selectMsgDataView.do";
}
// 문자
function listMsgDataView(){
var sendData = $(document.searchForm).serializeArray() ;
$(".contentArea").load("/web/mjon/msgcampain/selectMsgDataSMLViewAjax.do", sendData ,function(response, status, xhr){
//문자 재전송 처리를 위해 사용
$("#msgForm").ready(function(){ //문자 내용 폼이 로드된 후 실행
//문자 내용 폼이 로드된 후 실행
$("#msgForm").ready(function(){
var msgResendFlag = '${reSendMsgVO.msgResendFlag}';
var msgSeqList = [];
msgSeqList = '${reSendMsgVO.msgSeqList}';
if(msgSeqList.length > 0){
fnMsgResend(msgResendFlag, msgSeqList);
}
//주소록에서 주소를 전송한 경우 처리
@ -227,6 +226,7 @@ function listMsgDataView(){
fnAddrSet(moveAddrFlag, addrIdList);
}
// 문자 재전송 New
if (msgResendAllFlag == "Y") {
if (msgResendAllReplaceYn != "Y") {
@ -236,10 +236,9 @@ function listMsgDataView(){
// 문자 상세정보 => 재전송용
getMjMsgListByResend();
}
}
});
});
}).slideDown();
}
@ -379,77 +378,17 @@ function fnMsgResend(msgResendFlag, msgSeqList){
//수신자 처리 변수
var callToList = []; //수신자 처리 리스트
var tableData = []; //수신자 tabulator 처리 변수
//var subject = data.resultList[0].subject; //제목
//var smsTxt = data.resultList[0].smsTxt; //문자내용
//var fileCnt = data.resultList[0].fileCnt; //그림문자 이미지 갯수
//var filePath1 = data.resultList[0].fileType1; //이미지1 파일 경로
//var filePath2 = data.resultList[0].fileType2; //이미지2 파일 경로
//var filePath3 = data.resultList[0].fileType3; //이미지3 파일 경로
var atchFileId1 = photoInfo.atchFileId1; //이미지1 파일 번호
var atchFileId2 = photoInfo.atchFileId2; //이미지2 파일 번호
var atchFileId3 = photoInfo.atchFileId3; //이미지3 파일 번호
/* if(smsTxt != null){
$("#smsTxtArea").val(smsTxt);
fnByteString(smsTxt);
}
if(subject != null){
$("#mmsSubject").val(subject);
}
if(fileCnt > 0){ //문자 내용 이미지 처리해주기
for(var i=0; i < fileCnt; i++){
var imgId = "";
var imgSrc = "";
if(i == 0){
imgSrc = filePath1.replace("/usr/local/tomcat_mjon/webapps/mjon","");
imgId = atchFileId1;
}else if(i == 1){
imgSrc = filePath2.replace("/usr/local/tomcat_mjon/webapps/mjon","");
imgId = atchFileId2;
}else{
imgSrc = filePath3.replace("/usr/local/tomcat_mjon/webapps/mjon","");
imgId = atchFileId3;
}
myMsgImageControl(imgSrc, "edit_n", "Template", imgId);
}
} */
for(var i = 0; i < listCnt; i++){ // 수신자 리스트 Tabulator에 입력해 주기
callToList[i] = data.resultList[i].callTo;
tableData.push({phone: removeDash(callToList[i])});
}
if(tableData.length > 0){
tableL.addData(dupliPhoneData(tableData)); // 받는사람 목록에 주소 정보 입력하기
//totRows = tableL.getRows().length;
//updateTotCnt(totRows); //전체 데이터 갯수 구하기
//결제 금액 구하기
//totalPriceSum(totRows);
}
return false;
@ -462,9 +401,7 @@ function fnMsgResend(msgResendFlag, msgSeqList){
},
error: function (e) { alert("문자 재전송 번호 등록에 실패하였습니다."); console.log("ERROR : ", e); }
});
}
}
function fnLetterListAjax(index){
@ -589,43 +526,23 @@ function fnMyMsgListAjax(index){
}
function fnMyMsgSearchListAjax(index){
document.myMsgForm.pageIndex.value = index;
var sendData = $(document.myMsgForm).serializeArray();
$("#myMsgLoad").load("/web/mjon/msgcampain/selectMyMsgDataListAjax.do", sendData ,function(response, status, xhr){
/* $(".msg_cont").mCustomScrollbar({
axis: 'y',
scrollbarPosition: "inside",
theme: "dark",
autoHideScrollbar: false
}); */
});
}
// 엑셀문자텝 보기
function fnMsgExcelDataView(){
/* var sendData = $(document.searchForm).serializeArray() ;
//엑셀 문자 탭 활성화 시키기
TabType1($('.tabType1 li').eq(1), '2');
$(".contentExcelArea").load("/web/mjon/msgcampain/selectMsgExcelDataViewAjax.do", sendData ,function(response, status, xhr){
}); */
location.href="/web/mjon/msgcampain/excel/selectMsgExcelDataView.do";
}
function fnMsgTWDataView(){
location.href="/web/mjon/msgcampain/selectMsgTWDataView.do";
}
function fn_saveMyMsg(){ // 내 문자 보관함 저장
//내 문자 보관함 저장
function fn_saveMyMsg(){
var form = document.msgForm;
var myImgFileId = []; //신규 이미지 추가 파일 Id 저장 변수
@ -670,11 +587,7 @@ function fn_saveMyMsg(){ // 내 문자 보관함 저장
async: false,
success: function (returnData, status) {
if(status == 'success'){
// imgFilePath 에 배열로 담아주기(이미지 순서대로)
//console.log(imgFilePath);
//imgFilePath.push(returnData.filefullPath);
myImgFileId.push(returnData.atchFileId);
} else if(status== 'fail'){
alert(returnData.message);
}
@ -873,20 +786,6 @@ function fn_sendMsgData(){
var spamStatus = false;
var exceptSpamYn = $("#exceptSpamYn").val(); //금지어 필터링 예외 여부 - N 일 경우만 스팸 검사를 진행
/* //이벤트 진행중 회원의 경우 이벤트 잔여금액 비교 처리 필요.
var eventStatus = form.eventStatus.value;
var eventRemainCash = parseFloat(form.eventRemainCash.value);
if(eventStatus == 'Y'){
if(parseFloat(eventRemainCash) < parseFloat(totPriceOnly)){
alert("고객님의 이벤트 캐시 잔액은 " + eventRemainCash + "원으로 입력하신 수량의 문자를 전부 발송할 수 없습니다. 잔액 이하로 발송건수를 재설정하시기 바랍니다.");
return false;
}
} */
if(loginVO == "" || loginVO == null){
alert("문자발송 서비스는 로그인 후 이용 가능합니다.");
@ -894,12 +793,6 @@ function fn_sendMsgData(){
}
//MJ_MSG_GROUP_DATA 누락데이터 체크
//if (getMsgGroupDataErrorCheck() == false) {
// alert("고객님께서 발송한 최근문자가 발송결과에 표시되지않아, 문자발송이 임시로 차단되었습니다.\n문자온 고객센터에 문의해주세요.");
// return false;
//}
if(form.callFromList.value == ""){
alert("발신번호를 입력해 주세요.");
@ -941,19 +834,6 @@ function fn_sendMsgData(){
}
//문자내용 첫글자에 특수기호 포함 여부 체크
/* var strCont = form.smsTxtArea.value;
var repStr = strFirstCharCheck(strCont);
if(repStr.length > 0){
alert("문자 내용 첫 글자는 특수기호가 들어갈 수 없습니다.");
$('#smsTxtArea').val(strCont.replace(repStr, ""));
fnByteString(strCont.replace(repStr, ""));
return false;
} */
if(imgFilePath.length == 0){ // 그림문자일 경우 내용이 없어도 됨 , 장문 문자일 경우만 문자내용 체크함
if(form.smsTxtArea.value == ""){
@ -1066,11 +946,8 @@ function fn_sendMsgData(){
}
rep4List[i] = rep4.replaceAll(",","§");
}
}
}
}
var reserYn = $("input[name=reserYn]:checked").val(); // 예약 발송 여부 확인
@ -1813,15 +1690,6 @@ function fnMyMsgCheckDelete(){
var sendData = $(document.myMsgForm).serializeArray();
$("#myMsgLoad").load("/web/mjon/msgcampain/deleteMyMsgDataListAjax.do", sendData ,function(response, status, xhr){
//문자 내용 스크롤 적용
/* $(".msg_cont").mCustomScrollbar({
axis: 'y',
scrollbarPosition: "inside",
theme: "dark",
autoHideScrollbar: false
}); */
});
}else{
@ -1911,7 +1779,6 @@ function msgFailsClose(obj){
function msgSpamClose(obj){
$(obj).closest('.pop_msg_spam').attr('style','');
//location.href="/web/uat/uia/actionLogout.do";
}
function msgResultLink(){
@ -2112,12 +1979,6 @@ function popScrCloseSetting(){
<div class="bottom_content" id="tab2_2">
<div class="area_tabs">
<div class="top_tab">
<!-- <div class="tab_depth1 tDep2_mType">
<a href="#none" class="on" value="">전체</a>
<a href="#none" value="B">기업</a>
<a href="#none" class="on" value="P">개인</a>
<div class="on_active">전체</div>
</div> -->
<div class="tab_depth2 tDep2_letType">
<a href="#none" class="on" value="P">그림문자</a>
</div>
@ -2323,6 +2184,7 @@ function popScrCloseSetting(){
</div>
<!--// 맞춤제작 요청 레이어 팝업 -->
</div>
<form id="msgResendForm" name="msgResendForm" method="post">
<input name="msgResendFlag" type="hidden" value="N"/>
<input name="msgSeqList" type="hidden" value=""/>

View File

@ -69,9 +69,6 @@ $(document).ready(function(){
},
});
// 타뷸레이터 width값 변경 시 위에 select width 값 변경
var titleArray = ["No","A","B","C","D","E","F"];
@ -83,7 +80,6 @@ $(document).ready(function(){
$('.select_adr_hd>div').eq(titleIndex).css('width', column._column.width);
}else{
$('.select_adr_hd>div').eq(0).css('width', column._column.width);
}
});
@ -96,9 +92,6 @@ $(document).ready(function(){
$(".tabulator-tableholder").scrollLeft($(this).scrollLeft());
});
$("#excelFile").on("change", function(event) {
var fileInfo = event.target.files;
if(fileInfo.length > 0){
@ -108,25 +101,27 @@ $(document).ready(function(){
setTimeout(() => { $(this).val(''); }, 0); // 파일 선택 초기화
}
});
// 대량등록 팝업닫기
$(document).on('click', '#btnAddrMassClose', function() {
$('.field-selector').each(function() { $(this).val(''); });
setAddrMassClose();
});
// 대량등록 팝업닫기
$(document).on('click', '#closeBtn', function() {
// 대량등록 닫기
setAddrMassClose();
});
// excel 오류정보 테스트
$(document).on('click', '#errorExcelBtn', function() {
if($tableError.getDataCount()<1){
alert('오류 정보가 없습니다.');
return false;
}
$tableError.download("xlsx", "error_data.xlsx");
});
// 엑셀등록 닫기
// 엑셀등록 초기화 값 설정
function setAddrMassClose() {
$tableExcel.clearData();
$("#excelRowTotCnt").text(0); //총건수 수정
@ -135,6 +130,7 @@ $(document).ready(function(){
dupliPhoneDataRealList.length = 0; // 중복 휴대폰번호 초기화
addrMassDupliSaveList = null;
$('#excelFile').val(''); //첨부파일 값 초기화
// popup 영역
$tableError.clearData();
@ -144,49 +140,43 @@ $(document).ready(function(){
$("#errorPopErrorCnt").text(0);
//
$("#errorPopTotCnt").text(0);
// select 선택값 초기화
$('.field-selector').each(function() { $(this).val(''); });
}
//#############################################################################################
//파일업로드 드래그앤 드롭
//#############################################################################################
var objDragAndDrop = $(".upload_area");
$(document).on("dragenter",".upload_area",function(e){
e.stopPropagation();
e.preventDefault();
//$(this).css('border', '2px solid #0B85A1');
});
$(document).on("dragover",".upload_area",function(e){
e.stopPropagation();
e.preventDefault();
});
$(document).on("drop",".upload_area",function(e){
fn_loadAddActive();
e.preventDefault();
var files = e.originalEvent.dataTransfer.files;
excelFileChange(files[0]);
});
$(document).on('dragenter', function (e){
e.stopPropagation();
e.preventDefault();
});
$(document).on('dragover', function (e){
e.stopPropagation();
e.preventDefault();
//objDragAndDrop.css('border', '2px dotted #0B85A1');
});
$(document).on('drop', function (e){
e.stopPropagation();
e.preventDefault();
});
//파일 드래그앤드롭 종료
//#############################################################################################
//파일업로드 드래그앤 드롭
//#############################################################################################
var objDragAndDrop = $(".upload_area");
$(document).on("dragenter",".upload_area",function(e){
e.stopPropagation();
e.preventDefault();
});
$(document).on("dragover",".upload_area",function(e){
e.stopPropagation();
e.preventDefault();
});
$(document).on("drop",".upload_area",function(e){
fn_loadAddActive();
e.preventDefault();
var files = e.originalEvent.dataTransfer.files;
excelFileChange(files[0]);
});
$(document).on('dragenter', function (e){
e.stopPropagation();
e.preventDefault();
});
$(document).on('dragover', function (e){
e.stopPropagation();
e.preventDefault();
});
$(document).on('drop', function (e){
e.stopPropagation();
e.preventDefault();
});
//파일 드래그앤드롭 종료
//타이틀 select 선택 이벤트
$('.field-selector').on('change', function() {
fn_loadAddActive();
@ -215,8 +205,7 @@ $(document).ready(function(){
selectedFields.push(selectedField);
}
});
//
updateTableFields($tableExcel);
@ -228,44 +217,42 @@ $(document).ready(function(){
}, 0); // 지연 없이 즉시 실행되도록 0ms 지연을 설정
});
//받는사람 전체삭제 버튼 처리
$('#allDel').click(function(){
var data = $tableExcel.getRows();
$tableExcel.clearData();
$("#excelRowTotCnt").text(0); //총건수 수정
$("#excelRowDupCnt").text(0); //중복건수 수정
dupliPhoneDataRealList.length = 0; // 중복 휴대폰번호 초기화
// select box 초기화
$('.field-selector').each(function() { $(this).val(''); });
});
// 받는사람 선택삭제 버튼 처리해주기
$('#in_select_del').click(function(){
if($tableExcel == null || $tableExcel == ""){
alert("받는사람을 추가해 주세요.");
return false;
}
var selectedData = $tableExcel.getSelectedRows();
if(selectedData == "" || selectedData == null){
alert("삭제할 연락처를 선택해주세요.");
return false;
}else{ // 선택한 Row 데이터 삭제하기
if(confirm("선택하신 받는 사람을 삭제하시겠습니까?")){
// 선택 데이터 삭제
selectedData.forEach(row => row.delete());
totRows = $tableExcel.getRows().length;
$("#excelRowTotCnt").text(totRows);
}
}
});
// 추가버튼
@ -282,16 +269,12 @@ $(document).ready(function(){
// tableExcel 그룹의 select 요소들을 확인
// var isPhoneSelected = false;
// var isNameSelected = false;
var columns = $tableExcel.getColumns();
var isAddrPhoneNoSelected = columns.some(column => column.getField() === 'addrPhoneNo');
if (!isAddrPhoneNoSelected) {
// isPhoneSelected = true;
alert('휴대폰이 선택되지 않았습니다.');
return false;
}
var addrData = $tableExcel.getData().map((row, index) => ({
@ -303,11 +286,6 @@ $(document).ready(function(){
rep4: row.addrInfo4,
}));
// 기존 tableL의 데이터를 가져옵니다.
var existingData = tableL.getData();
// 기존 데이터와 새로운 데이터를 합칩니다.
@ -315,9 +293,6 @@ $(document).ready(function(){
// 합쳐진 데이터를 tableL에 설정합니다.
tableL.setData(combinedData);
// 미리보기 버튼 활성화
updateButtons(0);
var totRows = tableL.getRows().length;
updateTotCnt(totRows); //전체 데이터 갯수 구하기
console.log('totRows : ', totRows);
@ -334,35 +309,14 @@ $(document).ready(function(){
//결제 금액 구하기
totalPriceSum(totRows);
}
setAddrMassClose();
$('.field-selector').each(function() { $(this).val(''); });
$('#closeBtn').click();
});
//받는사람 전체삭제 버튼 처리
$('#allDel').click(function(){
var data = $tableExcel.getRows();
$tableExcel.clearData();
$("#excelRowTotCnt").text(0); //총건수 수정
$("#excelRowDupCnt").text(0); //중복건수 수정
dupliPhoneDataRealList.length = 0; // 중복 휴대폰번호 초기화
// select box 초기화
$('.field-selector').each(function() { $(this).val(''); });
});
});
function excelFileChange(file) {
if (file) {
@ -404,27 +358,21 @@ function excelFileChange(file) {
// 엑셀 데이터 처리 함수
function processExcelData(data) {
var keys = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
var tableData = [];
var totalRows = data.length - 2; // 전체 데이터 수 (1, 2행 제외)
// 3번째 행부터 입력
data.slice(0).forEach((row, index) => {
var rowData = {};
keys.forEach((key, idx) => { // index 변수명 변경 (내부와 외부에서 사용되므로 충돌 방지)
// console.log('row[idx] : ', row[idx]);
// rowData[key] = row[idx] ? row[idx].trim() : ""; // 각 컬럼에 대해 기본값을 설정
rowData[key] = (typeof row[idx] === 'string') ? row[idx].trim() : row[idx];
});
tableData.push(rowData);
});
updateTable(tableData);
var keys = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
var tableData = [];
data.slice(0).forEach((row, index) => {
var rowData = {};
keys.forEach((key, idx) => { // index 변수명 변경 (내부와 외부에서 사용되므로 충돌 방지)
rowData[key] = (typeof row[idx] === 'string') ? row[idx].trim() : row[idx];
});
tableData.push(rowData);
});
updateTable(tableData);
}
// 텍스트 데이터 처리 함수
function processTextData(text) {
var lines = text.split('\n'); // 각 줄을 배열로 분리
@ -437,6 +385,7 @@ function processTextData(text) {
keys.forEach((key, index) => {
rowData[key] = row[index] ? row[index].trim() : ""; // 각 컬럼에 대해 기본값을 설정
});
tableData.push(rowData);
});
@ -448,7 +397,7 @@ function updateTable(tableData) {
$tableExcel.setColumns([ //Define Table Columns
{formatter:"rowSelection", titleFormatter:"rowSelection",clipboard:false, headerHozAlign:"center", hozAlign:"center", headerSort:false, cellClick:function(e, cell){
cell.getRow().toggleSelect();
}
}
},
{formatter:"rownum", align:"center" ,title:"No", hozAlign:"center", headerHozAlign:"center", width:60},
{title:"A", field:"A", hozAlign:"center", headerHozAlign: "center", width:140, validator:["maxLength:100", "string"]},
@ -695,249 +644,186 @@ function popMore(e){
<div class="popup_btn_wrap2" style="margin-top: 0px;">
<button type="button" class="tooltip-close" data-focus="addrMassDupli_layer-close" data-focus-next="addrMassDupli_layer">닫기</button>
</div>
</div>
</div>
<!-- 주소록 상세 결과 팝업 data-tooltip:adr_popup14 -->
<div class="tooltip-wrap">
<div class="popup-com adr_layer adr_popup14" tabindex="0" data-tooltip-con="adr_popup14" data-focus="adr_popup14" data-focus-prev="adr_popu14-close" style="width: 450px;">
<div class="popup_heading">
<p>주소록 상세 결과</p>
<button type="button" class="tooltip-close" data-focus="adr_popup14-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button>
<div class="tooltip-wrap">
<div class="popup-com adr_layer adr_popup14" tabindex="0" data-tooltip-con="adr_popup14" data-focus="adr_popup14" data-focus-prev="adr_popu14-close" style="width: 450px;">
<div class="popup_heading">
<p>주소록 상세 결과</p>
<button type="button" class="tooltip-close" data-focus="adr_popup14-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button>
</div>
<div class="layer_in" style="padding:30px 20px;">
<div class="table_top">
<p>
총 <span class="c_e40000" id="errorPopTotCnt">0</span>건
/ 중복 <span class="c_002c9a" id="errorPopDupCnt">0</span>건
/ 오류 <span class="c_002c9a" id="errorPopErrorCnt">0</span>건</p>
<button type="button" class="excel_btn btnType" id="errorExcelBtn"><i class="downroad"></i>엑셀 다운로드</button>
</div>
<div class="layer_in" style="padding:30px 20px;">
<div class="table_top">
<p>
총 <span class="c_e40000" id="errorPopTotCnt">0</span>건
/ 중복 <span class="c_002c9a" id="errorPopDupCnt">0</span>건
/ 오류 <span class="c_002c9a" id="errorPopErrorCnt">0</span>건</p>
<button type="button" class="excel_btn btnType" id="errorExcelBtn"><i class="downroad"></i>엑셀 다운로드</button>
</div>
<div class="tb_wrap adr_list" id="tabulator_error">
<div class="tb_wrap adr_list" id="tabulator_error">
<!-- $tableError 참고 -->
</div>
<ul class="cf_text_ul">
<li>*중복번호는 하나의 번호만 등록됩니다.</li>
<li>*휴대폰 형식에 맞지 않는 데이터는 삭제 후 업로드 됩니다.</li>
<li>ex) 발송불가 특수문자, 자릿수 오류 등</li>
</ul>
<div class="popup_btn_wrap2">
<!-- <button type="button">저장</button> -->
<button type="button" class="tooltip-close" data-focus="adr_popup14-close" data-focus-next="adr_popup14">닫기</button>
</div>
</div>
<ul class="cf_text_ul">
<li>*중복번호는 하나의 번호만 등록됩니다.</li>
<li>*휴대폰 형식에 맞지 않는 데이터는 삭제 후 업로드 됩니다.</li>
<li>ex) 발송불가 특수문자, 자릿수 오류 등</li>
</ul>
<div class="popup_btn_wrap2">
<button type="button" class="tooltip-close" data-focus="adr_popup14-close" data-focus-next="adr_popup14">닫기</button>
</div>
</div>
</div>
</div>
<!--// 중복전화번호 팝업 -->
<div class="popup_heading">
<p>엑셀 불러오기</p>
<button type="button" class="tooltip-close" id="closeBtn" data-focus="popup02-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button>
</div>
<div class="layer_in" style="padding: 25px 30px;">
<!-- <div class="list_tab_wrap2"> -->
<!-- tab button -->
<!-- <ul class="list_tab" id="tbTabl"> -->
<!-- <li class="tab active" data-tabul="tableExcel"><button type="button" onclick="popupTab(this,'1'); fn_tabToggle('1');">엑셀입력</button></li> -->
<!-- <li class="tab" data-tabul="tableClip"><button type="button" onclick="popupTab(this,'2'); fn_tabToggle('2');">붙여넣기</button></li> -->
<!-- <li class="tab" data-tabul="tableSelf"><button type="button" onclick="popupTab(this,'3'); fn_tabToggle('3');">직접입력</button></li> -->
<!-- </ul>// tab button -->
<!-- </div> -->
<!-- 엑셀입력 -->
<div class="popCont current pop_more_cont" id="popCont_1">
<div class="titBox">
<p>- 주소록은 한 번에 최대 30만건까지 등록(EXCEL파일, 최대용량 20MB) 가능합니다. </p>
<p>- 엑셀 파일에 비밀번호 설정, 제한된 보기, 수식 등이 설정되어 있는 경우 업로드가 불가합니다.</p>
<p>- 구분선(|), 역슬래시(, ₩), 큰따옴표(") 등 발송불가 특수문자는 저장되지 않습니다.</p>
<p>- 이름 200byte, [*1*]~[*4*] 200byte, 메모 250byte까지 입력 가능합니다.</p>
<p>- 주소록 등록이 어려우신 경우에는 <a href="<c:url value='/web/mjon/addragency/selectAddrAgencyList.do'/>" style="font-weight: bold; color: blue;">주소록 입력대행</a> 메뉴를 이용하실 수 있습니다. </p>
</div>
<div class="pop_more_wrap">
<button type="button" class="pop_more" onclick="popMore(this);">더보기<i></i></button>
</div>
</div><!--// 엑셀입력 -->
<div class="popup_heading">
<p>엑셀 불러오기</p>
<button type="button" class="tooltip-close" id="closeBtn" data-focus="popup02-close"><img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기"></button>
</div>
<div class="layer_in" style="padding: 25px 30px;">
<!-- 공통 -->
<div>
<table class="layer_tType1">
<caption>엑셀입력 표</caption>
<colgroup>
<col style="width: 95px">
<col style="width: auto">
</colgroup>
<tbody>
<tr>
<!-- <th>그룹 선택</th>
<td>
<label for="" class="label">그룹 선택</label>
<select id="addrGrpIdInfo" name="addrGrpIdInfo">
</select>
<label for="" class="label">그룹명 입력</label>
<input type="text" id="addrGrpNm" name="addrGrpNm" placeholder="새 그룹명을 입력해주세요." onfocus="this.placeholder=''" onblur="this.placeholder='새 그룹명을 입력해주세요.'"class="inputLight" style="width: 300px;">
<input type="file" id="excelFile" accept=".xls, .xlsx, .txt" style="display:none"/>
<button type="button" class="excel_btn2 btnType c3"><i class="uproad"></i>엑셀, TXT파일 업로드</button>
</td> -->
<td colspan="2" style="padding:20px 0;">
<div class="file_upload_wrap" style="width:100%;display:flex;">
<div class="file_add upload_area">
<p><img src="/publish/images/content/file_add.png" alt="파일 붙여넣기">마우스로 엑셀, TXT파일을 여기에 끌어다 놓으세요</p>
</div>
<input type="file" id="excelFile" accept=".xls, .xlsx, .txt" style="display:none"/>
<button type="button" class="excel_btn2 btnType c3"><i class="uproad"></i>엑셀, TXT파일 업로드</button>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="excel_middle2">
<p>
총 <span class="c_e40000 fwBold" id="excelRowTotCnt">0</span>건
/ 중복 <span class="c_002c9a fwBold" id="excelRowDupCnt">0</span>건
/ 오류 <span class="c_002c9a fwBold" id="excelRowErrorCnt">0</span>건
<button type="button" class="btn_list_detail" data-tooltip="adr_popup14"><img src="/publish/images/search.png"></button>
</p>
<!-- &nbsp; -->
<!-- <button type="button" class="btnType btnType6" data-tooltip="addrMassDupli_layer" id="tableExcelDupliBtn">중복번호</button> -->
<!-- &nbsp; -->
<!-- <button type="button" class="btnType btnType6" data-tooltip="addrMassSaveDupli_layer" onclick="GetAddrMassSaveDupli()" id="btnAddrMassSaveDupli">중복번호</button> -->
</p>
<!-- <button type="button" class="btnType btnType6 addCallToF">번호추가</button> -->
</div>
<!-- 엑셀입력 -->
<div class="popCont current pop_more_cont" id="popCont_1">
<div class="titBox">
<p>- 주소록은 한 번에 최대 30만건까지 등록(EXCEL파일, 최대용량 20MB) 가능합니다. </p>
<p>- 엑셀 파일에 비밀번호 설정, 제한된 보기, 수식 등이 설정되어 있는 경우 업로드가 불가합니다.</p>
<p>- 구분선(|), 역슬래시(, ₩), 큰따옴표(") 등 발송불가 특수문자는 저장되지 않습니다.</p>
<p>- 이름 200byte, [*1*]~[*4*] 200byte, 메모 250byte까지 입력 가능합니다.</p>
<p>- 주소록 등록이 어려우신 경우에는 <a href="<c:url value='/web/mjon/addragency/selectAddrAgencyList.do'/>" style="font-weight: bold; color: blue;">주소록 입력대행</a> 메뉴를 이용하실 수 있습니다. </p>
</div>
<div class="pop_more_wrap">
<button type="button" class="pop_more" onclick="popMore(this);">더보기<i></i></button>
</div>
</div>
<!--// 엑셀입력 -->
<div class="adr_excel" style="margin-top: 13px; overflow-x:auto;">
<!-- <div class="adr_excel" style="margin-top: 13px;"> -->
<!-- thead -->
<div class="adr_hd select_adr_hd msg" data-group="tableExcel">
<div style="width: 100px;"></div>
<div style="width: 100px;"></div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
<!-- <option value="addrComment">메모</option> -->
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
<!-- <option value="addrComment">메모</option> -->
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
<!-- <option value="addrComment">메모</option> -->
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
<!-- <option value="addrComment">메모</option> -->
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
<!-- <option value="addrComment">메모</option> -->
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
<!-- <option value="addrComment">메모</option> -->
</select>
</div>
<!-- <div style="width: 125px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
<option value="addrComment">메모</option>
</select>
</div> -->
</div>
</div>
<div class="drag_drop_wrap callList_includ_box" id="tabulator_excel">
<!-- <img src="/publish/images/content/excel.jpg" style="width: 100%;"> -->
</div>
<div class="excel_middle">
<div class="select_btnWrap clearfix">
<div>
<button type="button" id="allDel"><i class="remove_img"></i>전체삭제</button>
<button type="button" id="in_select_del"><i class="remove_img"></i>선택삭제</button>
<!-- 공통 -->
<div>
<table class="layer_tType1">
<caption>엑셀입력 표</caption>
<colgroup>
<col style="width: 95px">
<col style="width: auto">
</colgroup>
<tbody>
<tr>
<td colspan="2" style="padding:20px 0;">
<div class="file_upload_wrap" style="width:100%;display:flex;">
<div class="file_add upload_area">
<p><img src="/publish/images/content/file_add.png" alt="파일 붙여넣기">마우스로 엑셀, TXT파일을 여기에 끌어다 놓으세요</p>
</div>
<input type="file" id="excelFile" accept=".xls, .xlsx, .txt" style="display:none"/>
<button type="button" class="excel_btn2 btnType c3"><i class="uproad"></i>엑셀, TXT파일 업로드</button>
</div>
</div><!--// 공통 -->
</td>
</tr>
</tbody>
</table>
</div>
<div class="excel_middle2">
<p>
총 <span class="c_e40000 fwBold" id="excelRowTotCnt">0</span>건
/ 중복 <span class="c_002c9a fwBold" id="excelRowDupCnt">0</span>건
/ 오류 <span class="c_002c9a fwBold" id="excelRowErrorCnt">0</span>건
<button type="button" class="btn_list_detail" data-tooltip="adr_popup14"><img src="/publish/images/search.png"></button>
</p>
</div>
<div class="adr_excel" style="margin-top: 13px; overflow-x:auto;">
<!-- thead -->
<div class="adr_hd select_adr_hd msg" data-group="tableExcel">
<div style="width: 100px;"></div>
<div style="width: 100px;"></div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
</select>
</div>
<div style="width: 140px;">
<label for="" class="label"></label>
<select class="field-selector">
<option value="">선택하기</option>
<option value="addrNm">이름</option>
<option value="addrPhoneNo">휴대폰</option>
<option value="addrInfo1">[*1*]</option>
<option value="addrInfo2">[*2*]</option>
<option value="addrInfo3">[*3*]</option>
<option value="addrInfo4">[*4*]</option>
</select>
</div>
</div>
</div>
<div class="drag_drop_wrap callList_includ_box" id="tabulator_excel"></div>
<div class="excel_middle">
<div class="select_btnWrap clearfix">
<div>
<button type="button" id="allDel"><i class="remove_img"></i>전체삭제</button>
<button type="button" id="in_select_del"><i class="remove_img"></i>선택삭제</button>
</div>
</div>
</div>
<!--// 공통 -->
<!-- 붙여놓기 설명 -->
<!-- <div class="req_area"> -->
<!-- <div class="text_box"> -->
<!-- - 휴대폰 번호가 입력된 txt 파일을 열어 복사(Ctrl+c) + 붙여넣기(Ctrl+v)로도 입력하실 수 있습니다.<br> -->
<!-- - 휴대폰 번호는 필수입력 항목입니다.<br> -->
<!-- - 이름,휴대폰 번호,[*1*],[*2*],[*3*],[*4*],메모 순서대로 입력해주세요.(예 : 010-1234-5678,홍길동,변수1…메모)<br> -->
<!-- - 이름은 24byte, [*1*]~[*4*] 40byte, 메모는 250byte까지 입력 가능합니다.<br> -->
<!-- - '오류 검사'를 통해 등록된 데이터에 전화번호 입력 오류를 확인하실 수 있습니다. -->
<!-- </div> -->
<!-- </div> -->
<div class="popup_btn_wrap2" style="margin: 0 auto 30px auto;">
<button type="button" id="btnAddrMassReg">추가</button>
<button type="button" id="btnAddrMassClose" class="tooltip-close" data-focus="adr_popup01-close" data-focus-next="popup02">닫기</button>
</div>
</div>
<div class="popup_btn_wrap2" style="margin: 0 auto 30px auto;">
<button type="button" id="btnAddrMassReg">추가</button>
<button type="button" id="btnAddrMassClose" class="tooltip-close" data-focus="adr_popup01-close" data-focus-next="popup02">닫기</button>
</div>
</div>