'
+ '' + data[i].rownum + ' | '
+ '' + data[i].telNo.substr(0, 3) + '-' + data[i].telNo.substr(3, 4).replaceAll(data[i].telNo.substr(3, 4), '****') + '-' + data[i].telNo.substr(7, 4) + ' | '
+ '' + data[i].dnisNo + ' | '
+ '' + data[i].callTime + ' | '
+ '' + data[i].callInitDate + ' | '
+ ''
}
$('#callDataArea').html(html);
$("#testTb2").dataTable({
"autoWidth": false,
"paging": true,
"pagingType": "full_numbers",
"ordering": true,
"info": false,
"filter": false,
"lengthChange": true,
"dom": 'rt<"bottom"fip><"clear">',
});
$("#testTb2").dataTable();
}
})
});
},
// 관리자(봇) 채팅 append
appendAdminMsg: function(obj) {
var chkRecFileBool = true;
// const regExp1 = /https?:\/\/[\w\-\.]+[:|0-9/_a-zA-Z]+.wav/;
const regExp1 = /recordfile\/[0-9]{8}\/[:|0-9\/_a-zA-Z]+.wav/;
const filePathValidation = regExp1.test(obj.recFilePath);
if($.utils.isBlank(obj.recFilePath) || !filePathValidation) {
chkRecFileBool = false;
}
var chkCnt = 0;
var html = '';
chkCnt = parseInt(obj.COUNT);
html += ''
+ '
'
+ '

'
+ '
'
+ '
'
+ '
' + obj.CHAT_TEXT + '
'
+ '
'
+ '
'
if (chkRecFileBool) {
html += "녹취 듣기"
+ "녹취 다운로드"
}
if (chkCnt > 0) {
html += "대화 책갈피 제거"
}
else {
html += "대화 책갈피 추가"
}
html += ''
+ '
'
$("#detailTalk").append(html);
},
// 사용자 채팅 append
appendUserMsg: function(obj) {
var chkRecFileBool = true;
// const regExp1 = /https?:\/\/[\w\-\.]+[:|0-9/_a-zA-Z]+.wav/;
const regExp1 = /recordfile\/[0-9]{8}\/[:|0-9\/_a-zA-Z]+.wav/;
const filePathValidation = regExp1.test(obj.recFilePath);
if($.utils.isBlank(obj.recFilePath) || !filePathValidation) {
chkRecFileBool = false;
}
var chkCnt = 0;
var html = '';
chkCnt = parseInt(obj.COUNT);
html += ''
+ '
'
+ '
' + obj.CHAT_TEXT + '
'
+ '
'
+ '
'
+ '

'
+ '
'
+ '
'
if (chkRecFileBool) {
html += "녹취 듣기"
+ "녹취 다운로드"
}
if (chkCnt > 0) {
html += "대화 책갈피 제거"
}
else {
html += "대화 책갈피 추가"
}
html += ''
+ '
'
$("#detailTalk").append(html);
},
setBookmarkModal: function(obj) {
multiModalUi();
$('#bookmarkText').text($(obj).data('text'));
this.setBookmarkErrCd();
$('#addOprMngCode').val($(obj).data('opr'));
Outscenario.logTypeVal = $(obj).data('logType');
$('#tokenVal').val($(obj).data('token'));
Outscenario.talkSeqVal = $(obj).data('talkSeq');
},
setRemoveBookmarkModal: function(obj) {
$('#measureInfo').val('');
multiModalUi();
$('#removeBookmarkText').val($(obj).data('text'));
this.setMeasureTypeCd();
$('#removeOprMngCode').val($(obj).data('opr'));
$('#seqVal').val($(obj).data('seq'));
Outscenario.logTypeVal = $(obj).data('logType');
$('#tokenVal').val($(obj).data('token'));
Outscenario.talkSeqVal = $(obj).data('talkSeq');
},
setBookmarkErrCd: function() {
var arr = $('#oprMngCode').val().split('_');
var param = {
oprMngCode: $('#oprMngCode').val(),
custCode: arr[0],
custCodeList: Outscenario.custCodeList,
oprMngCodeUpper: arr[0] + '_RCP_' + $('#oprMngCode').find(':selected').data('sg-upper'),
oprMngCodeUpperList: Outscenario.oprMngCodeUpperList,
majorCode: 'BOOKMARK_ERR_CODE'
}
$.ajax({
type: "POST",
async: false,
datatype: "JSON",
contentType : "application/json; charset=utf-8",
url: "/admin/rcp/statistics/monitoring/consulting/commonCodeSelectList.do",
data: JSON.stringify(param),
success: (function(data) {
var bookmarkErrHtml = '';
$('#bookmarkErr').html('');
for(var i=0; i' + data[i].description + '';
}
$('#bookmarkErr').html(bookmarkErrHtml);
$('#bookmarkErr').niceSelect('update');
})
});
},
setMeasureTypeCd: function() {
var arr = $('#oprMngCode').val().split('_');
var param = {
oprMngCode: $('#oprMngCode').val(),
custCode: arr[0],
custCodeList: Outscenario.custCodeList,
oprMngCodeUpper: arr[0] + '_RCP_' + $('#oprMngCode').find(':selected').data('sg-upper'),
oprMngCodeUpperList: Outscenario.oprMngCodeUpperList,
majorCode: 'MEASURE_TYPE'
}
$.ajax({
type: "POST",
async: false,
datatype: "JSON",
contentType : "application/json; charset=utf-8",
url: "/admin/rcp/statistics/monitoring/consulting/commonCodeSelectList.do",
data: JSON.stringify(param),
success: (function(data) {
var html = '';
$('#measureType').html('');
for(var i=0; i' + data[i].description + '';
}
$('#measureType').html(html);
$('#measureType').niceSelect('update');
})
});
},
addBookmark: function(obj) {
if (obj.bookmarkErrCode == null || obj.bookmarkErrCode == '') {
$.utils.warning('책갈피 유형을 선택해주세요.');
return;
}
var param = {
logType: obj.logType,
token: obj.token,
talkSeq: obj.talkSeq,
talkText: obj.talkText,
bookmarkErrCode: obj.bookmarkErrCode,
menuVal: menuVal,
oprMngCode: obj.oprMngCode.split('_')[2]
}
$.ajax({
type: "POST",
async: false,
datatype: "JSON",
contentType : "application/json; charset=utf-8",
url: "/admin/rcp/statistics/monitoring/conversationMark/insert.do",
data: JSON.stringify(param),
success: (function(data) {
if (data == 1) {
$.utils.success('저장되었습니다.');
}
$('#addedBookmark').fadeOut(250);
removeDimMulti();
// $('#addBookmarkBtn').off('click');
$('#addedBookmark').attr('class', 'modal multi');
var isVisible = $('#addedBookmark').is(':visible');
var modalLength = $('.modal.multi:visible').length;
if (isVisible) {
if (modalLength > 1) {
$('#addedBookmark').fadeOut(250);
} else {
$('.dim-multi').fadeOut(250);
}
}
Outscenario.resetAddIcon(obj);
})
});
},
resetAddIcon: function(obj) {
var param = {
logType: obj.logType,
token: obj.token,
talkSeq: obj.talkSeq
}
$.ajax({
type: "POST",
async: false,
datatype: "JSON",
contentType : "application/json; charset=utf-8",
url: "/admin/rcp/statistics/monitoring/conversationMark/checkbookmark.do",
data: JSON.stringify(param),
success: (function(data) {
var logType = Outscenario.logTypeVal;
var talkSeq = Outscenario.talkSeqVal;
var fncLtTs = 'fnc';
if (logType != null && logType != '' && talkSeq != null && talkSeq != '') {
fncLtTs += logType;
fncLtTs += talkSeq;
var $fncLtTs = $('#' + fncLtTs);
$fncLtTs.find('.addedIco').attr('rel', 'removeBookmark');
$fncLtTs.find('.addedIco').attr('data-seq', data.SEQ);
$fncLtTs.find('.addedIco').addClass('removeIco');
$fncLtTs.find('.addedIco').removeClass('addedIco');
}
})
});
},
removeBookmark: function(obj) {
if (obj.measureType == null || obj.measureType == '') {
$.utils.warning('조치 유형을 선택해주세요.');
return;
}
if (obj.measureInfo == null || obj.measureInfo == '') {
$.utils.warning('조치 내용을 입력해주세요.');
return;
}
var param = {
measureType: obj.measureType,
seq: obj.seq,
menuVal: menuVal,
oprMngCode: obj.oprMngCode.split('_')[2],
measureInfo: obj.measureInfo
}
$.ajax({
type: "POST",
async: false,
datatype: "JSON",
contentType : "application/json; charset=utf-8",
url: "/admin/rcp/statistics/monitoring/conversationMark/update.do",
data: JSON.stringify(param),
success: (function(data) {
if (data == 1) {
$.utils.success('삭제되었습니다.');
}
$('#removeBookmark').fadeOut(250);
removeDimMulti();
// $('#removeBookmarkBtn').off('click');
$('#removeBookmark').attr('class', 'modal multi');
var isVisible = $('#removeBookmark').is(':visible');
var modalLength = $('.modal.multi:visible').length;
if (isVisible) {
if (modalLength > 1) {
$('#removeBookmark').fadeOut(250);
} else {
$('.dim-multi').fadeOut(250);
}
}
Outscenario.resetRemoveIcon(obj);
})
});
},
resetRemoveIcon: function(obj) {
var param = {
logType: obj.logType,
token: obj.token,
talkSeq: obj.talkSeq
}
$.ajax({
type: "POST",
async: false,
datatype: "JSON",
contentType : "application/json; charset=utf-8",
url: "/admin/rcp/statistics/monitoring/conversationMark/checkbookmark.do",
data: JSON.stringify(param),
success: (function(data) {
var logType = Outscenario.logTypeVal;
var talkSeq = Outscenario.talkSeqVal;
var fncLtTs = 'fnc';
if (logType != null && logType != '' && talkSeq != null && talkSeq != '') {
fncLtTs += logType;
fncLtTs += talkSeq;
var $fncLtTs = $('#' + fncLtTs);
$fncLtTs.find('.removeIco').attr('rel', 'addedBookmark');
$fncLtTs.find('.removeIco').addClass('addedIco');
$fncLtTs.find('.removeIco').removeClass('removeIco');
}
})
});
}
}
$(document).ready(function () {
Outscenario.init();
$('#oprMngCode').on('change', function() {
Outscenario.setScenarioNameList();
// Outscenario.resetMoreOpenBtn(0);
});
$('#addBookmarkBtn').on('click', function() {
var param = {
oprMngCode: $('#addOprMngCode').val(),
logType: Outscenario.logTypeVal,
token: $('#tokenVal').val(),
talkSeq: Outscenario.talkSeqVal,
talkText: $('#bookmarkText').text(),
bookmarkErrCode: $('#bookmarkErr').val()
}
Outscenario.addBookmark(param);
});
$('#removeBookmarkBtn').on('click', function() {
var param = {
oprMngCode: $('#removeOprMngCode').val(),
measureType: $('#measureType').val(),
seq: $('#seqVal').val(),
measureInfo: $('#measureInfo').val()
}
Outscenario.removeBookmark(param);
});
});
$(document).on("click", ".addedIco", function() {
Outscenario.setBookmarkModal(this);
});
$(document).on("click", ".removeIco", function() {
Outscenario.setRemoveBookmarkModal(this);
});
$(document).on("click", ".stopBtnIco", function() {
var audio = $(".audio-box audio")[0];
audio.pause();
$(this).removeClass('stopBtnIco');
$(this).addClass('listeningIco');
});
$(document).on("click", ".listeningIco", function() {
var varThis = this;
var audio = $(".audio-box audio")[0];
$('a.stopBtnIco').each(function(index,item){
$(this).removeClass('stopBtnIco');
$(this).addClass('listeningIco');
});
$(this).removeClass('listeningIco');
$(this).addClass('stopBtnIco');
var param = {
fileName: $(this).data("file-path"),
menuVal: menuVal,
oprMngCode: $(this).data("opr").split('_')[2]
}
$.ajax({
type: "POST",
async: false,
datatype: "JSON",
contentType : "application/json; charset=utf-8",
url: "/admin/rcp/statistics/monitoring/consulting/play.do",
data: JSON.stringify(param),
success: (function(data) {
if (audio.src == data) {
audio.play();
}
else {
audio.pause();
audio.src = data;
audio.play();
}
})
});
audio.onended = function() {
$(varThis).removeClass('stopBtnIco');
$(varThis).addClass('listeningIco');
};
});
$(document).on("click", ".downloaderIco", function() {
const req = new XMLHttpRequest();
const formData = new FormData();
formData.append("fileName", $(this).data("file-path"));
formData.append("menuVal", menuVal);
formData.append("oprMngCode", $(this).data("opr").split('_')[2]);
req.open("POST", '/admin/rcp/statistics/monitoring/consulting/downloadRecordFile.do', true);
req.responseType = "arraybuffer";
req.onload = function() {
const arrayBuffer = req.response;
if (arrayBuffer) {
var blob = new Blob([arrayBuffer], { type: "application/octetstream" });
var link=document.createElement('a');
link.href=window.URL.createObjectURL(blob);
link.download="녹취파일.wav";
link.click();
}
};
req.send(formData);
});
$(document).on("click", ".scenarioChkBox", function() {
if ($(this).find('input').attr('name') == 'all') {
$("input:checkbox[name='checkbox']").prop("checked", false);
if ($('#chk').is(':checked')) {
Outscenario.resetMoreOpenBtn($("input:checkbox[name=checkbox]").length);
}
else {
Outscenario.resetMoreOpenBtn(0);
}
}
else {
Outscenario.fncScenarioChk();
}
});
$(document).on("click", "tr.detailTalk", function() {
$("#detailTalk").html('');
var param = {
token: $(this).data('token')
}
$.ajax({
type: "POST",
async: false,
datatype: "JSON",
contentType : "application/json; charset=utf-8",
url: "/admin/rcp/statistics/monitoring/consulting/recordCallList.do",
data: JSON.stringify(param),
success: (function(data) {
if(data.length > 0) {
for(var i in data) {
var item = data[i];
if(item.TYPE == "B") {
Outscenario.appendAdminMsg(item);
} else {
Outscenario.appendUserMsg(item);
}
}
}
modalUi();
multiModalUi();
})
});
});
$(document).on("dblclick", "tr.modalLoad", function() {
Outscenario.setModal(this);
});
function multiModalUi() {
$('.multiModalLoad').on('click', function () {
var $self = $(this);
var $thisrel = $self.attr('rel');
var $target = $('#' + $thisrel);
// open and focusin
$target.attr('tabindex', '0').fadeIn(250).focus();
$target.css({ display: 'table' });
$target.attr('class', 'modal multi open');
// create sizing
var layerHeight = $target.outerHeight();
var layerWidth = $target.outerWidth();
$target.css({
marginLeft: -layerWidth / 2,
marginTop: -layerHeight / 2
});
// create background
createDimMulti();
// close and focusout
$target.find(".close").on('click', function (e) {
e.preventDefault();
$target.fadeOut(250);
removeDimMulti();
$(this).off('click');
$target.attr('class', 'modal multi');
var isVisible = $target.is(':visible');
var modalLength = $('.modal.multi:visible').length;
if (isVisible) {
if (modalLength > 1) {
$target.fadeOut(250);
} else {
$('.dim-multi').fadeOut(250);
}
}
});
});
}
function createDimMulti() {
if (!$('.dim-multi').length) {
$('body').append('');
}
$('.dim-multi').fadeIn(250);
$('body').css({
overflow: 'hidden'
}).bind('touchmove', function (e) {
e.preventDefault();
});
}
function removeDimMulti() {
$('.dim-multi').fadeOut(250);
$('body').css({
overflow: 'inherit'
}).unbind('touchmove');
}