/** * 首页js * */ var $storages = window.localStorage; var taskRealInfoTimer = null; var isTaskTimerOn = false; //定时器是否开启 let callType = '' //录音的路径 var recordpath = ''; $(document).ready(function() { if(/mobile/i.test(navigator.userAgent) || /android/i.test(navigator.userAgent)) { $(".title-box").hide(); } // 判断大屏按钮 console.log($storages.getItem('roleCode')) if($storages.getItem('roleCode') == "CJGL") { $('#bgview').show() } else { $('#bgview').hide() } if(window.localStorage.getItem('token') == null) { window.location.href = "./login.html"; } //获取当前用户的信息 getUserInfo(); //加载左侧导航菜单 loadMenu(); //话务相关 $("#top-search li").click(function(event) { event.stopPropagation(); if($(this).find("i").hasClass("active")) { if(!window.localStorage.getItem('extno')) { layer.confirm('分机号不存在,请重新登录...', { icon: 7, closeBtn: 0, btn: ['确定'], //按钮 yes: function() { window.location.href = "login.html"; } }); return; } //坐席工号 if(window.localStorage.getItem('userCode')) { var fun = $(this).attr("datafun"); console.log(fun) switch(fun) { case "Login": //签入 scoketDatas = { "Type": fun, "AgentID": window.localStorage.getItem('userCode'), "AgentExten": window.localStorage.getItem("extno"), "AgentGroup": window.localStorage.getItem('group'), //坐席组id "AgentType": "0", "DisposeTime": "0", //话后处理时长设置,0代表一致话后处理,除非发送置闲 (按照历史习惯,字符串形式) }; // getChartT() getExtno() Send(); break; case "MakeCall": //外呼 // callType = 'MakeCall' $(".hidCallID").val(""); $("#hidwhtype").val(fun); whtp("MakeCall"); break; case "Meeting": //多方通话 callType = 'Meeting' $("#hidwhtype").val(fun); whtp("Meeting"); break; case "Transfer": //转移 callType = 'Transfer' $("#hidwhtype").val(fun); whtp("Transfer"); break; case "Consult": //协商呼叫 $("#hidwhtype").val(fun); whtp(); break; case "Logout": //协商呼叫 scoketDatas = { "Type": fun, "AgentID": window.localStorage.getItem('userCode'), "AgentExten": window.localStorage.getItem("extno"), }; Send(); // getChartF() break; default: scoketDatas = { "Type": fun, "AgentID": window.localStorage.getItem('userCode'), "AgentExten": window.localStorage.getItem("extno"), }; Send(); break; } } } }); //关闭外呼弹屏 $(".closes").click(function() { $(".WH").removeClass("fadeInDown").addClass("fadeOutUp"); $(".WH").addClass("hidens"); }); //外呼呼出 $(".CallOut").click(function(event) { // 813811115503 // debugger console.log("号码", $("#hidwhtype").val()) event.stopPropagation(); if($("#Result").val()) { $.ajax({ type: "get", url: huayi.config.call_url + "CallOutOpt/GetCallOutprefix", async: true, dataType: 'json', data: { phone: $("#Result").val() }, success: function(result) { //result = $.parseJSON(result); if(result.state.toLowerCase() == "success") { switch($("#hidwhtype").val()) { case "MakeCall": scoketDatas = { "Type": $("#hidwhtype").val(), "AgentID": window.localStorage.getItem('userCode'), "AgentExten": window.localStorage.getItem("extno"), "Header": result.data.fix, //号码前缀 用于截断前缀得到真实号码 "DestinationNumber": result.data.phone, // }; break; case "Meeting": scoketDatas = { "Type": $("#hidwhtype").val(), "AgentID": window.localStorage.getItem('userCode'), "AgentExten": window.localStorage.getItem("extno"), "DestinationNumber": result.data.phone, //会议目标号码 }; break; case "Transfer": scoketDatas = { "Type": $("#hidwhtype").val(), "AgentID": window.localStorage.getItem('userCode'), "AgentExten": window.localStorage.getItem("extno"), "DestinationNumber": result.data.phone, //转移目标号码 }; break; case "Consult": //协商呼叫 scoketDatas = { "Type": $("#hidwhtype").val(), "AgentID": window.localStorage.getItem('userCode'), "AgentExten": window.localStorage.getItem("extno"), "Callee": result.data.phone, //对方号码 "Caller": window.localStorage.getItem("extno") //自己的号码(分机号) }; break; default: break; } Send(); $(".closes").trigger('click'); //关闭弹屏 } } }); } else { layer.confirm('请输入外呼号码', { icon: 7, closeBtn: 0, btn: ['确定'] //按钮 }) } }) //外呼弹屏数字键盘点击样式 $(".Num_ul .dNum").mousedown(function() { $(this).addClass("actives"); $(".img").removeClass("hidens"); }).mouseup(function() { $(this).removeClass("actives"); }); //外呼弹屏数字键盘号码输入 $(".Num_ul li .dNum").click(function() { var rt = $("#Result").val() + ""; if(rt.length < 17) { rt = rt + $(this).find("a").text(); $("#Result").val(rt); } else { layer.msg('号码长度不能超过16位!'); } }); //外呼弹屏数字键盘号码截取(删除) $(".img").click(function() { var Result = $("#Result").val() + ""; Result = Result.substr(0, Result.length - 1); $("#Result").val(Result); if(Result.length == 0) { $(".img").addClass("hidens"); } }); //外呼电话列表 $(".bg_title li").click(function() { $(this).addClass("lactive").siblings().removeClass("lactive"); console.log(callType) loadWH(callType); }); //搜索 $(".sc_btns").click(function() { loadWH(callType); }); }); //获取1002的坐席工号 function getExtno() { if(window.localStorage.getItem("extno") === '1002') { $.ajax({ type: "get", url: huayi.config.call_url + "CallOutOpt/Update", dataType: 'json', async: true, data: { F_CalledNo: window.localStorage.getItem("extno"), F_userCode: window.localStorage.getItem("userCode") }, success: function(res) {} }) } } //改变客服在线状态 function getChartT() { $.ajax({ type: "get", url: huayi.config.callcenter_url + 'testusertypeapi/api/TestUserType/upfpzxinfos', async: true, dataType: 'json', data: { usercode: window.localStorage.getItem("userCode"), loginstate: '1', token: $.cookie("token") }, success: function(data) { if(data.state.toLowerCase() == 'success') {} } }); } //改变客服在线状态 function getChartF() { $.ajax({ type: "get", url: huayi.config.callcenter_url + 'testusertypeapi/api/TestUserType/upfpzxinfos', async: true, dataType: 'json', data: { usercode: window.localStorage.getItem("userCode"), loginstate: '0', token: $.cookie("token") }, success: function(data) { if(data.state.toLowerCase() == 'success') {} } }); } //验证拨号长度 function regTelNums() { var rt = $("#Result").val() + ""; if(rt.length === 0) { $(".img").addClass("hidens"); } else { $(".img").removeClass("hidens"); if(rt.length < 17) { $("#Result").val(rt); } else { $("#Result").val(rt.substring(0, 16)); layer.msg('号码长度不能超过16位!'); } } } //菜单数字 workcount() //setInterval(function() { // workcount(); //}, huayi.config.menuworktime); function workcount() { $.post(huayi.config.callcenter_url + "equipmentapi/api/worepairbase/Getinfotx", { "token": $.cookie("token") }, function(result) { result = JSON.parse(result); if(result.state.toLowerCase() == "success") { if(result.data.total) { $(".bxgd").text(result.data.total) } } }) } //外呼弹屏 function whtp(type) { $("#Result").val(""); if($(".WH").hasClass("fadeOutUp")) { $(".WH").removeClass("fadeOutUp").addClass("fadeInDown"); } $(".WH").removeClass("hidens"); $('.first').removeClass('first'); $('.WH').addClass('first'); //键盘事件外呼 document.onkeydown = function(e) { var theEvent = window.event || e; var code = theEvent.keyCode || theEvent.which; if(code == 13) { $(".CallOut").click(); } } loadWH(type); } //加载外呼电话列表 function loadWH(type) { var loadWHindex = $('.bg_title').find('.lactive').attr('itemid'); $(".phonediv").eq(loadWHindex).addClass('show_phonediv').siblings().removeClass('show_phonediv'); var table = $(".phonediv").eq(loadWHindex).find(".phonelist"); switch(loadWHindex) { case '0': //先销毁表格 table.bootstrapTable('destroy'); //初始化表格,动态从服务器加载数据 table.bootstrapTable({ method: "get", //使用get请求到服务器获取数据 url: huayi.config.callcenter_url + "callcenterapi/api/CallRecords/getlistbypage", //获取数据的Servlet地址 contentType: 'application/x-www-form-urlencoded', striped: true, //表格显示条纹 pagination: true, //启动分页 pageSize: 10, //每页显示的记录数 pageNumber: 1, //当前第几页 pageList: [10, 20, 50, 100], //记录数可选列表 search: false, //是,//否启用查询 showColumns: false, //显示下拉框勾选要显示的列 showRefresh: false, //显示刷新按钮 sidePagination: "server", //表示服务端请求 //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder //设置为limit可以获取limit, offset, search, sort, order queryParamsType: "undefined", queryParams: function queryParams(params) { //设置查询参数 var param = { pageindex: params.pageNumber, //否 string 当前页 pagesize: params.pageSize, //否 string 每页记录数 keyword: $('#sc_tel').val(), // 否 string 模糊查询(呼叫号码) // stime: $("#old_scTime").val() && $("#old_scTime").val().split(' ~ ')[0], //否 string 工单起止时间 // etime: $("#old_scTime").val() && $("#old_scTime").val().split(' ~ ')[1], //否 string 工单起止时间 }; return param; }, onLoadSuccess: function(res) { //加载成功时执行 //layer.msg("加载成功"); if(res.state.toLowerCase() === "success") { var newData = {}; res.data.rows.forEach(function(v, n) { v.type = type; }) newData.state = res.state; newData.message = res.message; newData.rows = res.data.rows; newData.total = res.data.total; recordpath = res.data.recordpath; console.log(newData) table.bootstrapTable('load', newData); } }, onLoadError: function() { //加载失败时执行 //layer.msg("加载数据失败", { time: 1500, icon: 2 }); } }); break; case '1': break; case '2': table.bootstrapTable('destroy'); //初始化表格,动态从服务器加载数据 table.bootstrapTable({ method: "get", //使用get请求到服务器获取数据 url: huayi.config.callcenter_url + "testusertypeapi/api/TestUserType/GetYytxluinfo", //获取数据的Servlet地址 contentType: 'application/x-www-form-urlencoded', striped: true, //表格显示条纹 pagination: true, //启动分页 pageSize: 10, //每页显示的记录数 pageNumber: 1, //当前第几页 pageList: [10, 20, 50, 100], //记录数可选列表 search: false, //是,//否启用查询 showColumns: false, //显示下拉框勾选要显示的列 showRefresh: false, //显示刷新按钮 sidePagination: "server", //表示服务端请求 //设置为undefined可以获取pageNumber,pageSize,searchText,sortName,sortOrder //设置为limit可以获取limit, offset, search, sort, order queryParamsType: "undefined", queryParams: function queryParams(params) { //设置查询参数 var param = { PageIndex: params.pageNumber, PageSize: params.pageSize, deptname: $("#department").val(), doctorname: $("#docName").val() }; return param; }, // responseHandler: function(res) { // return { // "rows": res.data.rows, //数据 // "total": res.data.total // }; // }, onLoadSuccess: function(res) { //加载成功时执行 if(res.state.toLowerCase() === "success") { var newData = {}; res.data.rows.forEach(function(v, n) { v.type = type; }) newData.state = res.state; newData.message = res.message; newData.rows = res.data.rows; newData.total = res.data.total; recordpath = res.data.recordpath; console.log(newData) table.bootstrapTable('load', newData); } }, onLoadError: function() { //加载失败时执行 //layer.msg("加载数据失败", { time: 1500, icon: 2 }); } }); break; } } function callout(val, row) { if(val == '') { var str = '
' +
'