$().ready(function () { var $fromDialog = $('#form-dialog'); var $popForm = $("#popFeedBack"); var hasLoad53Js = 0; var _53code1; var _53code2; // 表单验证 $popForm.validate({ rules: { customerName: { required: true }, mobile: { required: true, mobile: true } }, submitHandler: function (form) { $(form).ajaxSubmit({ mySuccess: function () { $.bootstrapGrowl("提交成功,稍后商家会联系您", { type: "success" }); setTimeout(function () { $fromDialog.removeClass('show').addClass('hide'); window.location.reload(); }, 3000); } }); } }) var worker_id; $("._53").on('click', function () { //console.log("开始加载53客服挂码") worker_id = $(this).attr('data-adminworkerid-id'); var kfStatus = $(this).attr('data-kfstatus'); //console.log("商户客服ID:" + worker_id) if (hasLoad53Js != 0) { window.$53 = undefined; $('#hz6d_send_acc').remove() $('#ivt_script').remove() } //console.log("开始加载第一个js:" + formatDate(new Date().getTime())); if (kfStatus == 1) { //console.log("尝试获取所有商家客服列表"); loadFirstJs(); } else { loadSecondJs(); } // $fromDialog.removeClass('hide').addClass('flex'); }) $('.mask').on('click', '.close-btn', function () { $(this).closest('.mask').addClass('hide').removeClass('flex'); }); //预发:"https://master.71baomu.com/code/code/c3609f3afccaaf1ab10a6fdcc4e07f951/1" //线上:"https://customer.zhaosw.com/code/code/89d02285f4f467a8f382357f75a98fd38/1" if (isProd === 1) { _53code1 = "https://customer.zhaosw.com/code/code/89d02285f4f467a8f382357f75a98fd38/1"; } else { _53code1 = "https://master.71baomu.com/code/code/c3609f3afccaaf1ab10a6fdcc4e07f951/1"; } //预发:"https://master.71baomu.com/code/code/b1b34e58864e549c95172ecc866a784d2/1" //线上:"https://customer.zhaosw.com/code/code/b3e3dab90bddd692c265fff34fc1d8c75/1" if (isProd === 1) { _53code2 = "https://customer.zhaosw.com/code/code/b3e3dab90bddd692c265fff34fc1d8c75/1"; } else { _53code2 = "https://master.71baomu.com/code/code/b1b34e58864e549c95172ecc866a784d2/1"; } function loadFirstJs() { var timer = null; if (window.$53 === undefined) { loadScript(_53code1, function () { if (window.$53) { loadFirstWorkId() } else { timer = setInterval(function () { if (window.$53) { loadFirstWorkId() clearInterval(timer) } }, 500) } }); } else { setTimeout(function (e) { //console.log("正在尝试加载第一段js") loadFirstWorkId() }, 500) } } function loadFirstWorkId() { hasLoad53Js = 1; var api = $53.createApi(); api.push('cmd', 'workerlist'); var result = api.query(); if (result.info.length > 0) { //console.log("成功获取所有商家客服列表"); //console.log(result); var hasOnlineWorker = false; for (var i = 0, len = result.info.length; i < len; i++) { if (worker_id == result.info[i].worker_id && result.info[i].state == 1) { hasOnlineWorker = true; } } if (hasOnlineWorker) { //console.log("商家客服在线") push53Info(); } else { window.$53 = undefined; $('#hz6d_send_acc').remove() $('#ivt_script').remove() //console.log("商家客服不在线"); loadSecondJs(); } } else { setTimeout(function (e) { //console.log("正在尝试加载") loadFirstWorkId() }, 500) } } function loadSecondJs() { hasLoad53Js = 2; //console.log("获取商机客服列表"); if (window.$53 === undefined) { loadScript(_53code2, function () { if (window.$53) { loadSecondWorkId() } else { timer = setInterval(function () { if (window.$53) { loadSecondWorkId() } }, 300) } }); } else { setTimeout(function (e) { //console.log("正在尝试加载") loadSecondWorkId() }, 500) } } function loadSecondWorkId() { var api = $53.createApi(); api.push('cmd', 'workerlist'); var result = api.query(); if (result.info.length > 0) { //console.log("成功获取所有商机客服列表"); //console.log(result); var hasOnlineWorker = setOnlineWorkerId(result.info); if (hasOnlineWorker) { ////console.log("商机客服在线"); ////console.log("商机客服工号ID" + worker_id); push53Info() } else { ////console.log("商机客服不在线"); $fromDialog.removeClass('hide').addClass('flex'); } } else { setTimeout(function (e) { ////console.log("正在尝试加载") loadSecondWorkId() }, 500) } } function setOnlineWorkerId(arr) { var onlineWorkerlist = []; for (var i = 0, len = arr.length; i < len; i++) { if (arr[i].state == 1) { onlineWorkerlist.push(arr[i].worker_id); } } if (onlineWorkerlist.length == 0) { return false; } //console.log(onlineWorkerlist); worker_id = onlineWorkerlist[Math.floor(Math.random() * onlineWorkerlist.length)]; //console.log(worker_id); return true; } function loadScript(url, callback) { console.log(url) $('._53js').nextAll('script').remove() $('._53js').remove() var script = document.createElement("script") script.type = "text/javascript"; script.className = '_53js' if (script.readyState) { //IE script.onreadystatechange = function () { if (script.readyState == "loaded" || script.readyState == "complete") { script.onreadystatechange = null; callback(); } }; } else { //Others script.onload = function () { callback(); }; } script.src = url; document.getElementsByTagName("head")[0].appendChild(script); } function formatDate(date) { var date = new Date(date); var YY = date.getFullYear() + '-'; var MM = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; var DD = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate()); var hh = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':'; var mm = (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + ':'; var ss = (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds()); return YY + MM + DD + " " + hh + mm + ss; } function push53Info() { //客服唤起记录(产品落地页) var comeUrl = window.location.href; var urlFragment1 = '/product/yxc/'; var urlFragment2 = '/product/detail/'; if (comeUrl.indexOf(urlFragment1) >= 0 || comeUrl.indexOf(urlFragment2) >= 0) { var remark = { 'productId': $('input[name="remark"]').val(), 'adminWorkerId': worker_id } $.ajax({ type: 'post', url: '/yxcOnlineInquiry/save', data: { 'dtype': 1, 'remark': JSON.stringify(remark), 'visitPageUrl': comeUrl, 'visitPageType': 0, } }) } var api = $53.createApi(); //指定客服 api.push('cmd', 'kfclient'); api.push('type', 'new'); api.push('worker_id', worker_id); var result1 = api.query(); //console.log(result1); //推送客户信息给客服 api.push('cmd', 'member'); api.push('id', "/"); api.push('name', "/"); api.push('email', "/"); api.push('qq', "/"); api.push('phone', "/"); api.push('company', "/"); api.push('notes', "/"); var result2 = api.query(); } })