카카오 친구톡 발송화면 Tabulator 적용중

This commit is contained in:
rosewiper 2024-01-12 09:04:49 +09:00
parent 91c22a826b
commit a94a7529cd
8 changed files with 367 additions and 129 deletions

View File

@ -76,9 +76,11 @@ public class KakaoFriendsTalkSendController {
String author = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getAuthority());
String userId = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getId());
if(userId == "") {
/*if(userId == "") {
return "redirect:/web/user/login/login.do";
}
}*/
model.addAttribute("loginVO", loginVO);
try {

View File

@ -651,6 +651,11 @@ public class KakaoFriendsTalkTemplateController {
paginationInfo.setTotalRecordCount(kakaoTemplateInfoList.size() > 0 ? ((KakaoVO)kakaoTemplateInfoList.get(0)).getTotCnt() : 0);
model.addAttribute("paginationInfo", paginationInfo);
//사용자 등록 발신프로필 정보 조회해오기
searchVO.setUserId(userId);
List<KakaoVO> resultProfileList = kakaoApiService.selectKakaoProfileList(searchVO);
model.addAttribute("resultProfileList", resultProfileList);
} catch (Exception e) {
System.out.println("selectKakaoFriendsTemplateListAjax Controller Error !!! " + e);
}

View File

@ -1,7 +1,6 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ page import="itn.com.cmm.LoginVO" %>
<script type="text/javascript">

View File

@ -6,16 +6,19 @@
<script src="/js/kakao/templateComm.js"></script>
<script type="text/javascript" src="<c:out value='/js/kakao/at/tabulator.js' />"></script>
<script type="text/javascript" src="<c:out value='/js/MJUtill.js' />"></script>
<script type="text/javascript" src="<c:out value='/js/kakao/ft/ftTabulator.js' />"></script>
<script type="text/javascript" src="<c:out value='/js/kakao/at/addr.js' />"></script>
<script type="text/javascript" src="<c:out value='/js/common/popup.js' />"></script>
<script type="text/javascript" src="<c:out value='/js/kakao/ft/friendstalkExcel.js' />"></script>
<script type="text/javascript">
/* 파일등록 */
var _fileIdx = 0;
var _fileForm2 = new Array();
var fileExt = ""; // 첨부파일 확장자
var excelAddr = []; //엑셀 불러오기에서 내용 저장하는 배열 변수
$(document).ready(function (){
@ -46,6 +49,27 @@ $(document).ready(function (){
setContentsLengForFriends(contents);
});
$("#excelAdd").click(function(){
if(excelAddr.length > 0){
//첨부파일로 불러온 데이터를 받는사람 목록에 추가해 준다.
addPhoneInfo(excelAddr);
//첨부파일 초기화 시켜주기
$("#excelFile").val("");
$("#excelNm").val("");
}else{
alert("추가 엑셀 데이터가 없습니다.");
return false;
}
});
});
function initFormChk(){
@ -87,9 +111,11 @@ function initFormChk(){
//미리보기에 이미지 표시해주기
var imgUrl = '${resultTemplateVO.templateImageUrl}';
$('.kakao_image').css("display", "block");
$("#kakaoImg").attr("src", imgUrl);
if(imgUrl != ''){
$('.kakao_image').css("display", "block");
$("#kakaoImg").attr("src", imgUrl);
}
//초기 템플릿 내용 글자수 처리해주기
var tmpContents = $('#inputTemplateContent').val();
@ -585,6 +611,13 @@ $('.popupAddr').click(function(){
});
function fnEmptyId(){
alert("로그인 후 이용이 가능합니다.");
return false;
}
</script>
<!-- 로딩바 -->
@ -636,7 +669,7 @@ $('.popupAddr').click(function(){
<tr>
<th>채널ID</th>
<td>
<label for="" class="채널ID 선택"></label>
<label for="selectAgentCode" class="채널ID 선택"></label>
<select class="select_gray_type" name="selectAgentCode" id="selectAgentCode" onchange="javascript:fnAgentCodeChg();">
<option value="">채널ID 선택</option>
<c:forEach var="kakaoProfileInfo" items="${resultProfileList}" varStatus="status">
@ -842,10 +875,25 @@ $('.popupAddr').click(function(){
</div>
</div>
<div class="btn_popup_wrap template_call_wrap">
<button type="button" class="btnType btnType8" onclick="window.open('/web/mjon/kakao/template/selectKakaoFriendsTemplateListPopupAjax.do','_blank','width=930, height=780, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbars=yes')">템플릿 불러오기</button>
<c:choose>
<c:when test="${not empty loginVO.id}">
<button type="button" class="btnType btnType8" onclick="window.open('/web/mjon/kakao/template/selectKakaoFriendsTemplateListPopupAjax.do','_blank','width=930, height=780, top=100, left=100, fullscreen=no, menubar=no, status=no, toolbar=no, titlebar=yes, location=no, scrollbars=yes')">템플릿 불러오기</button>
</c:when>
<c:otherwise>
<button type="button" class="btnType btnType8" onclick="javascript:fnEmptyId();">템플릿 불러오기</button>
</c:otherwise>
</c:choose>
</div>
<div class="send_btnWrap">
<button type="button" class="btnType btn_text_save" onclick="javascript:myTemplateSave();">내용 저장하기</button>
<c:choose>
<c:when test="${not empty loginVO.id}">
<button type="button" class="btnType btn_text_save" onclick="javascript:myTemplateSave();">내용 저장하기</button>
</c:when>
<c:otherwise>
<button type="button" class="btnType btn_text_save" onclick="javascript:fnEmptyId();">내용 저장하기</button>
</c:otherwise>
</c:choose>
<button type="button" class="btnType btnType9" onclick="javascript:fnContentsReset();">초기화</button>
</div>
</div>
@ -854,7 +902,7 @@ $('.popupAddr').click(function(){
<tr>
<th>버튼</th>
<td class="template_button">
<select name="" id="" class="select_gray_type template_button_select">
<select name="tmpBtnSelect" id="tmpBtnSelect" class="select_gray_type template_button_select">
<option value="button_type_0">버튼타입 선택</option>
<option value="button_type_1">배송조회</option>
<option value="button_type_2">웹링크</option>
@ -999,16 +1047,16 @@ $('.popupAddr').click(function(){
<td class="putText">
<div class="clearfix receipt_num">
<div class="receipt_num_top">
<label for="" class="label">받는 번호입력</label>
<input type="text" placeholder="번호를 입력하세요" onfocus="this.placeholder=''" onblur="this.placeholder='번호를 입력하세요'" style="width:340px;">
<button type="button" class="btnType btnType6">번호추가</button>
<label for="callTo" class="label">받는 번호입력</label>
<input type="text" placeholder="번호를 입력하세요" id="callTo" name="callTo" onfocus="this.placeholder=''" onblur="this.placeholder='번호를 입력하세요'" style="width:340px;">
<button type="button" class="btnType btnType6 addCallToF">번호추가</button>
<span><span class="vMiddle">*</span> 중복번호는 한번만 발송됩니다.</span>
</div>
<div class="receipt_num_midde">
<div class="listType list01 callList_box" id="callList_box">
<div class="list_table list_head">
<div class="cb_wrap">
<label for="" class="label"></label>
<label for="select_all" class="label"></label>
<input type="checkbox" id="select_all">
</div>
<div class="list_table_num">
@ -1091,7 +1139,8 @@ $('.popupAddr').click(function(){
<tr>
<th colspan="2" class="replace_send_th">
<div class="title_th"><p>대체문자</p>
<input type="checkbox" id="send_fail_check" class="send_fail_check"><label for="send_fail_check">친구톡 전송 실패 시 문자 전송</label>
<input type="checkbox" id="send_fail_check" class="send_fail_check">
<label for="send_fail_check">친구톡 전송 실패 시 문자 전송</label>
</div>
<div class="replace_send_wrap">
<table class="tType1">
@ -1103,7 +1152,7 @@ $('.popupAddr').click(function(){
<tr>
<th>발신번호</th>
<td>
<label for="callFrom" class="label"></label>
<label for="callFromList" class="label"></label>
<select id="callFromList" name="callFromList" class="sel_number">
<c:choose>
<c:when test="${not empty resultPhonList}">
@ -1210,7 +1259,7 @@ $('.popupAddr').click(function(){
<input type="text" class="startDate2 inp resDate calendar picker__input picker__input--active" title="검색 시작일" id="startDate2" name="startDate2" value="" data-datecontrol="true" readonly="" aria-haspopup="true" aria-expanded="true" aria-readonly="false" aria-owns="startDate2_root">
</div>
<div class="selBox">
<label for="" class="label">시 선택</label>
<label for="msgResHour" class="label">시 선택</label>
<select class="selType1" id="msgResHour" name="msgResHour">
<c:forEach var="hour" begin="0" end="23" step="1" varStatus="status">
<c:choose>
@ -1223,7 +1272,7 @@ $('.popupAddr').click(function(){
</c:choose>
</c:forEach>
</select>
<label for="" class="label">분 선택</label>
<label for="msgResMin" class="label">분 선택</label>
<select class="selType1" id="msgResMin" name="msgResMin">
<c:forEach var="min" begin="0" end="55" step="5">
<c:choose>
@ -1240,7 +1289,7 @@ $('.popupAddr').click(function(){
</div>
<div class="rev_bottom">
<input type="checkbox" id="inputDivideChk" name="inputDivideChk">
<label for="">분할전송</label>
<label for="inputDivideChk">분할전송</label>
<select class="selType1" id="divideCnt" name="divideCnt">
<option value="2">2</option>
<option value="10">10</option>
@ -1288,7 +1337,7 @@ $('.popupAddr').click(function(){
<input type="hidden" name="searchCondition" id="searchCondition" value="0" />
<div class="adr_pop_left">
<div class="adr_left_search">
<label for="searchKeyword" class="label">그룹명 검색</label>
<label for="searchGrpKeyword" class="label">그룹명 검색</label>
<input type="text" name="searchGrpKeyword" id="searchGrpKeyword" placeholder="그룹명 검색" onfocus="this.placeholder=''" onblur="this.placeholder='그룹명 검색'" class="inputLight">
<button type="button" onClick="javascrit:fnAddrGrpSearch(); return false;"><img src="/publish/images/popup/search.png" alt="검색"></button>
</div>
@ -1353,7 +1402,7 @@ $('.popupAddr').click(function(){
<button type="button" class="excel_btn" onclick="location.href='/download/msg/엑셀주소록_등록양식.xlsx'"><i class="downroad"></i>샘플파일 다운로드</button>
</div>
<div class="attachedFile">
<label for="" class="attachedFile_label">첨부파일</label>
<label for="excelNm" class="attachedFile_label">첨부파일</label>
<input type="text" id="excelNm" value="" readonly>
<input type="file" id="excelFile" accept=".xls, .xlsx" onchange="excelExport(event); return false;" style="display:none"/>
<button type="button" class="btnType btnType6 c1">찾아보기</button>
@ -1362,7 +1411,7 @@ $('.popupAddr').click(function(){
</div>
</div><!--// 엑셀파일 불러오기 -->
<div class="popup_btn_wrap2">
<button type="button" class="tooltip-close" data-focus="popup02-close" data-focus-next="popup02" onclick="excelAdd()">추가</button>
<button type="button" class="tooltip-close" data-focus="popup02-close" data-focus-next="popup02" id="excelAdd">추가</button>
<button type="button" class="tooltip-close" data-focus="popup02-close" data-focus-next="popup02">닫기</button>
</div>
</div>

View File

@ -426,7 +426,7 @@ function fnGoSampleTemplate(){
</c:forEach>
</select>
<div class="search">
<label for="id" class="label"></label>
<label for="inputSearchKeyword" class="label"></label>
<input type="text" class="search_input" id="inputSearchKeyword" name="inputSearchKeyword" value="<c:out value=""/>" placeholder="템플릿명을 입력하세요." onfocus="this.placeholder=''" onblur="this.placeholder='검색어를 입력하세요.'">
<button type="button" class="btnType btnType2" onclick="selectTemplateListLoad('1');">검색</button>
</div>

View File

@ -106,7 +106,8 @@
function selectTemplateListLoad(page){
var form = document.listForm;
form.searchKeyword.value = $("#inputSearchKeyword").val();
form.senderKey.value = $("select[name='selectAgentCode_select']").val();
form.pageIndex.value = page;
form.action = "/web/mjon/kakao/template/selectKakaoFriendsTemplateListPopupAjax.do";
form.submit();
@ -123,9 +124,11 @@
</script>
<body>
<form id="listForm" name="listForm" method="post">
<input type="hidden" id="pageIndex" name="pageIndex" value="1"/>
<input type="hidden" id="searchKeyword" name="searchKeyword" value=""/>
<input type="hidden" id="senderKey" name="senderKey" value=""/>
</form>
<div class="info_popup ad_layer template_choice_popup adpopup01" style="width:930px;">
<div class="popup_heading">
@ -133,21 +136,22 @@
</div>
<div class="layer_in">
<div class="popup_search_wrap type2 grayborder grayfill">
<select name="" id="" class="popup_select_type template_type">
<option value="">전체메시지</option>
<select name="selectAgentCode_select" id="selectAgentCode_select" class="selType2">
<option value="">채널ID 선택</option>
<c:forEach var="kakaoProfileInfo" items="${resultProfileList}" varStatus="status">
<option value="${kakaoProfileInfo.senderKey}" <c:if test="${searchVO.senderKey eq kakaoProfileInfo.senderKey}">selected</c:if> ><c:out value='${kakaoProfileInfo.yellowId}'/></option>
</c:forEach>
</select>
<select name="" id="" class="popup_select_type emphasis_type">
<option value="">정렬방법</option>
</select>
<input type="text" placeholder="템플릿명을 입력해주세요." class="inputType template_name">
<button type="button" class="popup_button_type bluefill">검색</button>
<label for="searchKeyword" class="label"></label>
<input type="text" class="search_input" id="inputSearchKeyword" name="inputSearchKeyword" value="<c:out value="${searchVO.searchKeyword}"/>" placeholder="템플릿명을 입력하세요." onfocus="this.placeholder=''" onblur="this.placeholder='검색어를 입력하세요.'">
<button type="button" class="btnType btnType2" onclick="selectTemplateListLoad('1');">검색</button>
</div>
<div class="template_list">
<ul class="kakao_template_list thumbnail_list">
<c:choose>
<c:when test="${not empty kakaoTemplateInfoList}">
<c:forEach var="templatInfoList" items="${kakaoTemplateInfoList}" varStatus="status">
<li>
<li onClick="fnTemplateDetail('<c:out value="${templatInfoList.friendId}"/>'); return false;" style="cursor:pointer;">
<div class="kakao_template_wrap">
<div class="template_cont">
<div class="title">
@ -177,10 +181,10 @@
<p class="cf_text">수신거부 홈 > 채널차단</p>
</c:if>
</div>
<div class="btn_wrap">
<%-- <div class="btn_wrap">
<button type="button" class="btnType btnType3 btn_template_use" onClick="fnTemplateDetail('<c:out value="${templatInfoList.friendId}"/>'); return false;">템플릿 사용하기</button>
</div>
<%-- <div class="kakao_template_info">
</div> --%>
<div class="kakao_template_info">
<dl>
<dt>템플릿명</dt>
<dd>
@ -191,7 +195,7 @@
<dt>등록일</dt>
<dd><c:out value="${templatInfoList.frstRegistPnttm}"/></dd>
</dl>
</div> --%>
</div>
</li>
</c:forEach>
</c:when>

View File

@ -29,6 +29,130 @@ $(document).ready(function(){
//엑셀 파일 불러오기
function excelExport(event){
var data = new FormData(document.excelForm);
data.append("file0", $('#excelFile').prop('files')[0]);
var fileValue = $("#excelFile").val().split("\\");
var fileName = fileValue[fileValue.length-1];
var fileExt = fileName.split('.').pop().toLowerCase();
if(fileExt.length > 0){
if($.inArray(fileExt, ['txt','xls','xlsx']) == -1) {
alert('txt, xls, xlsx 파일만 업로드 할수 있습니다.');
return false;
}
var url = "";
if(fileExt == "xls" || fileExt == "xlsx"){
url = "/web/mjon/msgdata/sendExelFilePhoneNumAjax.do";
}else if(fileExt = "txt"){
url = "/web/mjon/msgdata/sendTxtFilePhoneNumAjax.do";
}else{
alert('txt, xls, xlsx 파일만 업로드 할수 있습니다.');
return;
}
//엑셀 데이터 변수에 자료가 있으면 지워준다.
if(excelAddr.length > 0){
excelAddr = [];
}
$.ajax({
type: "POST",
enctype: 'multipart/form-data',
url: url,
data: data,
dataType:'json',
async: true,
processData: false,
contentType: false,
cache: false,
//timeout: 600000,
success: function (returnData, status) {
if(status == 'success'){ // status 확인 필요한가. 석세스 안뜨면 에러 가지 않나
if(returnData.success){
var data = returnData.data;
var message = returnData.message;
if(message != '' ){
alert(returnData.message);
}
if(data != null){
$.each(data, function(i, item){
if(checkHpNum(item.phone)){
excelAddr.push({phone: item.phone, name: item.name, rep1: item.replace1, rep2: item.replace2, rep3: item.replace3, rep4: item.replace4});
console.log(item.phone);
}/* else{
alert("엑셀 파일 데이터의 형식이 맞지 않는 부분이 있습니다.");
excelAddr = []; //엑셀 데이터 저장 변수 초기화
$("#excelFile").val(""); //첨부파일 input 초기화
$("#excelNm").val(""); // 첨부파일 명 초기화
fileName = "";
return;
} */
});
}
}else{
alert(returnData.message);
// alert("첨부파일 불러오는 중 오류가 발생하였습니다.");
excelAddr = []; //엑셀 데이터 저장 변수 초기화
$("#excelFile").val(""); //첨부파일 input 초기화
$("#excelNm").val(""); // 첨부파일 명 초기화
fileName = "";
return;
}
} else if(status== 'fail'){
alert("첨부파일 불러오는 중 오류가 발생하였습니다.");
console.log("status : fail ~");
}
},
error: function (e) {
alert("첨부파일 불러오는 중 오류가 발생하였습니다.");
console.log("ERROR : ", e);
},
beforeSend : function(xmlHttpRequest) {
//로딩창 show
$('.loading_layer').addClass('active');
},
complete : function(xhr, textStatus) {
//로딩창 hide
$('.loading_layer').removeClass('active');
}
});
$("#excelFile").val("");
$("#excelNm").val(fileName);
}
}
/*function excelExport(event){
var fileValue = $("#excelFile").val().split("\\");
var fileName = fileValue[fileValue.length-1];
@ -48,7 +172,7 @@ function excelExport(event){
}
}
}*/
//엑셀파일 자료 데이터베이스에 입력해주기

View File

@ -3,7 +3,7 @@
* @author : 우영두
* @fileName : ftTabulator.js
* @date : 2024.01.09
* @description : tabulator 관련 js
* @description : 받는사람 목록 tabulator 관련 js
* ===========================================================
* DATE AUTHOR NOTE
* ----------------------------------------------------------- *
@ -14,7 +14,7 @@
*/
$(document).ready(function (){
/**
//받는사람 연락처 내용 처리
//Tabulator AJAX Data Loading
tableL = new Tabulator(".callList_box", {
@ -88,7 +88,7 @@ $(document).ready(function (){
});
*/
//주소록 불러오기 팝업 내용
//Tabulator AJAX Data Loading
tableAddr = new Tabulator(".callAddr_box", {
@ -147,38 +147,57 @@ $(document).ready(function (){
//핸드폰 번호에 '-' 문자 제거하기
callToNum = removeDash(callToNum);
var dpCnt = 0;
$(".phoneArea p").each(function(index, item){
if(this.textContent == callToNum){
dpCnt++;
alert("받는사람 리스트에 동일한 연락처가 있습니다.");
$('#callTo').val("");
return false;
}
});
//기존 받는사람 연락처 모두 불러오기
var data = tableL.getRows();
var tableData = [];
var dpCnt = 0;
for(var i=0; i < tableL.getRows().length; i++){
if(callToNum == data[i].getData().phone){
dpCnt++;
}
}
if(dpCnt > 0){
alert("받는사람 리스트에 동일한 연락처가 있습니다.");
$('#callTo').val("");
return false;
}else{
tabledata = [{phone: callToNum},];
//빈 row 데이터 삭제하기
var befData = tableL.getRows();
var totLen = tableL.getRows().length;
for(var i=0; i < totLen; i++){
tableData.push({phone: data[i].getData().phone.trim(), name: data[i].getData().name});
}
//연락처 추가해 주기
addPhoneInfo(tabledata);
//tableL.addData(tabledata);
//전체 데이터 갯수 구하기
//totRows = tableL.getRows().length;
//updateTotCnt(totRows);
//결제 금액 구하기
totalPriceSum(totRows);
$('#callTo').val("");
}
if(dpCnt > 0){
alert("받는사람 리스트에 동일한 연락처가 있습니다.");
$('#callTo').val("");
return false;
}else{
// fn_displayJsonToHtmlTable 재사용을 위한
// 파라미터 형변환
var data =[];
data.push({ phone: callToNum, name: ''});
fn_displayJsonToHtmlTable(data);
/*
* 토탈 카운트 화면에 노출
*/
updateTotCnt();
// 번호 추가란 초기화
$('#callTo').val('');
}
});
@ -449,68 +468,104 @@ function updateTotCnt(){
}
//주소록 불러오기에서 수신자 리스트 화면에 추가해주기
function addPhoneInfo(taData){
function addPhoneInfo(data){
if(taData == null){
if(data == null){
alert("연락처 정보가 없습니다.");
return;
}else{
var idx = 0;
var newData = data;//중복 연락처는 하나만 남기고 모두 제거
var recTableData = tableL.getRows(); // 받는사람 리스트의 전체 목록을 저장
var tableData = [];
//기존 받는사람 리스트를 배열에 미리 담아둔다.
if(recTableData.length > 0){
for(var j=0; j < recTableData.length; j++){
tableData.push({phone: removeDash(recTableData[j].getData().phone) , name: recTableData[j].getData().name, rep1: recTableData[j].getData().rep1, rep2: recTableData[j].getData().rep2, rep3: recTableData[j].getData().rep3, rep4: recTableData[j].getData().rep4});
}
}
//받는사람 리스트를 담아둔 배열에 신규 추가 데이터를 추가해 준다.
for(var i=0; i < newData.length; i++){
tableData.push({phone: removeDash(newData[i].phone) , name: newData[i].name, rep1: newData[i].rep1, rep2: newData[i].rep2, rep3: newData[i].rep3, rep4: newData[i].rep4});
}
var temp = tableData.length;
//기존 수신 리스트를 지워준 후 신규 전체 리스트를 추가해준다.
tableL.clearData(); //기존 받는사람 목록을 삭제.
tableL.addData(dupliPhoneData(tableData)); // 받는사람 목록에 주소 정보 입력하기
_fileForm2 = []; //form file data 초기화
_fileIdx = 0; //form file idx 초기화
totRows = tableL.getRows().length;
updateTotCnt(totRows); //전체 데이터 갯수 구하기
var smsTxtArea = $('#smsTxtArea').val();
//일괄변환 문구 결제금액 처리
if(smsTxtArea.indexOf("[*이름*]") > -1
|| smsTxtArea.indexOf("[*1*]") > -1
|| smsTxtArea.indexOf("[*2*]") > -1
|| smsTxtArea.indexOf("[*3*]") > -1
|| smsTxtArea.indexOf("[*4*]") > -1){
fnReplCell();
}else{
//결제 금액 구하기
totalPriceSum(totRows);
}
}
/*
* 주소록 데이터 화면에 추가
*/
this.fn_displayJsonToHtmlTable(taData);
}
/*
* 토탈 카운트 화면에 노출
*/
this.updateTotCnt();
function addrToList(){
var selectedData = tableAddr.getSelectedRows();
var tableData = [];
if(selectedData == "" || selectedData == null){
alert("주소록을 선택해 주세요.");
return false;
}else{ // 선택한 Row 데이터 저장해주기
for(var i=0; i < selectedData.length; i++){
//좌측 받는사람 리스트를 담아둔 배열에 데이터를 추가해 준다.
tableData.push({phone: removeDash(selectedData[i].getData().addrPhone),
name: selectedData[i].getData().addrName,
rep1: selectedData[i].getData().addrRep1,
rep2: selectedData[i].getData().addrRep2,
rep3: selectedData[i].getData().addrRep3,
rep4: selectedData[i].getData().addrRep4}
);
}
//선택한 데이터 받는사람 리스트에 추가해 주기
addPhoneInfo(tableData);
$(".closeAddr").trigger("click");
//주소록 레이어 팝업의 Tabulator 데이터 지워주기
tableAddr.clearData();
}
}
/*
* 주소록 데이터 화면에 추가
*/
function fn_displayJsonToHtmlTable(taData){
// fn_viewDataInit01();
// 치환문자가 있으면 데이터 초기화
var $htmlBody = $('#wrap01_body');
var addHtml = '<div class="list_table list_body excelBody01">'
+'\t<div class="cb_wrap">'
+'\t\t<label for="" class="label"></label>'
+'\t\t<input type="checkbox" class="wrap01C">'
+'\t</div>'
+'\t<div class="list_table_num phoneArea">'
+'\t\t<p>$PHONE$</p>'
+'\t</div>'
/*23.04.06 이름제거 요청으로인한 화면 이름 제거*/
/*+'\t<div class="list_table_name">'
+'\t\t<p>$NAME$</p>'
+'\t</div>'*/
+'</div>';
var totalDuplCnt = $('#rowDupCnt').text();
var itemPhone;
var itemName;
$.each(taData, function(index, item){
itemPhone = item.phone;
itemName = item.name;
// == null ? '': item.name;
if(!phoneDupl(itemPhone))
/*23.04.06 이름제거 요청으로인한 화면 이름 제거*/
// $htmlBody.append(addHtml.replace('$PHONE$', itemPhone).replace('$NAME$', itemName ??= ''));
$htmlBody.append(addHtml.replace('$PHONE$', itemPhone));
else
totalDuplCnt++;
});
$('#rowDupCnt').text(totalDuplCnt);
}