1var domain = '' 2if (__ce.env == "local") { 3 domain = "http://" + tenant.makeDomain 4} 5var lann = tenant.language == 'hn' ? 'es' : tenant.language 6var interwords = domain + "/npublic/commonjs/language/" + lann + ".js" 7$define([ 8 'pl_util', 9 '/npublic/commonjs/emoji/emoji.js', 10 `/npublic/commonjs/cEditor/cEditor.js`, 11 'pl_toast', 12 interwords, 13 'cmsAjax', 14 '/npublic/commonjs/nouglify/marked.js', 15 '/npublic/commonjs/phoneCode/phoneCode.js', 16 'css!/npublic/commonjs/datePicker/datepicker.css', 17 '/npublic/commonjs/datePicker/datepicker.js', 18 'pl_multSelect' 19], function(u,emo,cEditor,plt,int,c,m,phoneCode,dpc,dp) { 20 class smartService { 21 constructor(option) { 22 this.res = option 23 this.settings = option.setting 24 this.automaticReply = JSON.parse(this.settings.automaticReply) 25 this.kefuHead = this.settings.headImg ? JSON.parse(this.settings.headImg).detail.watermarkUrl_symbol : "" 26 this.colorLayout = JSON.parse(this.settings.colorLayout) 27 this.color = this.colorLayout.windowColor 28 this.id = +new Date() 29 this.iconId = "smartIcon_" + this.id 30 this.conId = "smartService_" + this.id 31 this.nim = null 32 this.time = 7200 33 this.tTime=0 34 this.logout=false 35 this.tmpMsg="" 36 this.erroMsg = null 37 this.cEditor1 = null 38 this.sendBtn = null 39 this.timeLogoutEvent = null 40 41 this.greeting = null //èªå¨è¯æ¯å®æ¶ä»»å¡ 42 this.companyNoAnswerTimeout = null //ä¼ä¸æ åºç计æ¶ä»»å¡ 43 this.customreNoAnswerTimeout = null //访客æ åºç计æ¶ä»»å¡ 44 this.behaviorReportTimer = null; //䏿¥è¡ä¸ºè½¨è¿¹è®¡æ¶ä»»å¡ 45 this.memberData = null; 46 this.isLoginFlag = null //æ¯å¦ç»å½ 47 this.unreadMessageCount = 0; // æ·»å æªè¯»æ¶æ¯è®¡æ°å¨ 48 this.currentLang = '' 49 this.hasAlerted = false; 50 51 this.inviteSet = this.res?.inviteSet || {}; 52 53 console.log(this.res) 54 //夿æ¯å¦éè¦æ¾ç¤ºè¡¨å 55 if(!this.res.submitChatFormFlag && this.res.enableChatForm){ 56 this.needForm = true 57 }else{ 58 this.needForm = false 59 } 60 this.init(this.needForm) 61 62 63 const root = document.documentElement; 64 root.style.setProperty('--smt-color', this.color); 65 } 66 //渲ædom 67 init(key){ 68 if(this.res.enableAgentFlag) { 69 if(location.pathname == '/login.html') { 70 return false; 71 } 72 setTimeout(() => { 73 this.isLogin() 74 }, 1000); 75 76 // åå§å页é¢å¯¹è±¡çå¬ 30ç§æ¨èåå 77 this.initPageObjListener(); 78 } 79 if(key){//æ¾ç¤ºè¡¨å 80 $("body").append(this.getFormlog()) 81 this.renderForm() 82 }else{//æ¾ç¤ºå¯¹è¯æ¡ 83 $("body").append(this.getDialog()) 84 this.renderEvent() 85 } 86 //æ¾ç¤ºåºé¨å¾æ 87 if(this.colorLayout.entranceLocation==1){ 88 $("body").append(this.getIcon()) 89 } 90 //ç¹å»iconææé® 91 $(document).on("click","[smartService]",()=>{ 92 if($(".smartService.show").length>0){ 93 this.closeDialog() 94 }else{ 95 $(".greeting-btn").trigger('click') 96 this.showFun() 97 } 98 }) 99 //èªå¨å¼¹åº 100 let smartServiceClose = sessionStorage.getItem('smartServiceClose') 101 if(this.colorLayout.showFlag==1 && smartServiceClose!='true'){ 102 this.showFun() 103 } else { 104 if(this.res.enableAgentFlag && this.colorLayout.showFlag==2) { 105 this.createGreetingPopup(); 106 } 107 } 108 this.logNim(); 109 110 window.addEventListener('beforeunload', function() { 111 // ä¿åå½å页é¢ç URL åæ é¢å° sessionStorage 112 sessionStorage.setItem('currentPageUrl', window.location.href); 113 sessionStorage.setItem('currentPageTitle', document.title); 114 115 // å¨é¡µé¢å¸è½½åæ¸ ç宿¶å¨ 116 if (this.behaviorReportTimer) { 117 clearTimeout(this.behaviorReportTimer); 118 this.behaviorReportTimer = null; 119 } 120 }); 121 if(this.res.enableInvite) { 122 // åå§åè¡ä¸ºè½¨è¿¹ä¸æ¥ 123 this.initBehaviorReport(); 124 this.initScrollListener(); 125 this.inviteSetFn(); 126 } 127 128 if(window.ZQSensorsObj){ 129 console.log("mdæºæ §å®¢æå¤èµ·") 130 let obj = { 131 tenantId: tenant.tenantId, 132 iBusinessCode : "01", 133 iBusinessName : "æºæ §å®¢æä¸å¡çº¿", 134 iBusinessCustId : this.res.account 135 } 136 ZQSensorsObj.track('SmartServiceWakeUp',obj); 137 } 138 139 140 } 141 isLogin(){ 142 return c.cmsAjax.get('/fwebapi/member/detail/getMemberDetail').then(res => { 143 if (!res.data && (res.data.code || !res.data.user)) { 144 this.isLoginFlag = false;
145 }else{ 146 if(res.data.code == 401) { 147 // æªç»å½ 148 this.isLoginFlag = false; 149 this.bindMember() 150 } else { 151 this.isLoginFlag = true; 152 this.memberData = res; 153 } 154 } 155 return this.isLoginFlag; 156 }).catch(err => { 157 this.isLoginFlag = false; 158 return false; 159 }); 160 } 161 162 bindMember(){ 163 c.cmsAjax.postJson( 164 `${this.res.domain}/visitormanager/intelligent/front/bindMember?tenantId=${tenant.tenantId}&instance=${tenant.bossProductInstance}`, 165 { 166 "account":localStorage.getItem(`account_${tenant.tenantId}`), 167 "memberId":getCookie('_memberId'), 168 } 169 ).then(res => { 170 if (res.data && res.data.code == 0) { 171 this.createGreetingPopup 172 } 173 }).catch(err => { 174 // toLogin() 175 }) 176 } 177 //表ååå§å 178 renderForm(){ 179 $("#"+this.conId+"-form").on("click",".sm_close",()=>{//å ³éå¯¹è¯æ¡ 180 this.closeDialog() 181 }).on("input blur change valid",".msgform .p_inp",(e)=>{//è¡¨åæ ¡éª 182 this.formValid($(e.currentTarget)) 183 }).on("click",".msgform.workOrderMsgformBox .p_sub2",(e)=>{//表åæäº¤ 184 this.submitForm($(e.target),false, 'workOrder') 185 }).on("click",".msgform .p_sub",(e)=>{//表åæäº¤ 186 this.submitForm($(e.target),true) 187 }).on("click",".msgform .aggree input",(e)=>{//表åæäº¤ 188 if($(e.target).prop("checked")){ 189 $(e.target).parent().removeClass("noAggree") 190 } 191 }).on("click",".msgform .p_currentCode",(e)=>{//å½å®¶ç 192 e.stopPropagation() 193 $(e.currentTarget).next(".p_codeList").toggle() 194 }).off("click",".p_phoneCode .p_codeItem").on("click",".p_phoneCode .p_codeItem",function(e){ 195 e.stopPropagation() 196 $(e.currentTarget).addClass("p_active").siblings().removeClass("p_active") 197 let dialCode = $(e.currentTarget).find(".p_enDial").text() 198 let iso2 = $(e.currentTarget).find(".p_enCode").text() 199 let dialCodeDom = $(e.currentTarget).parents(".p_phoneCode").find(".p_currentCode span").eq(0) 200 let iso2Dom = $(e.currentTarget).parents(".p_phoneCode").find("[name='mobilePrefix']") 201 dialCodeDom.text(dialCode) 202 iso2Dom.val(dialCode+","+iso2) 203 $(e.currentTarget).parent(".p_codeList").hide() 204 }) 205 //æ¶é´åå§å 206 let dateInput = $("#"+this.conId+"-form").find(".j_date"); 207 dateInput.each((i,e)=>{ 208 let inp = $(e) 209 let subType = inp.find('.p_inp').attr('sub-type') 210 let dataP = inp.datePicker({ 211 hasShortcut: false, 212 format: subType=='allDate'?'YYYY-MM-DD HH:mm:ss':'YYYY-MM-DD', 213 hide: (type)=>{ 214 inp.find('.p_inp').trigger('change') 215 } 216 }); 217 }) 218 //䏿åå§å 219 let selectItem = $("#"+this.conId+"-form").find(".p_select"); 220 selectItem.each((i,e)=>{ 221 let inp = $(e) 222 let vinp = inp.find('.p_inp') 223 let subType = vinp.attr('sub-type') 224 let optInp = inp.find("input[name='dataItem']").val() 225 let placeholder = inp.find("input[name='dataItem']").attr('placeholder') || '' 226 if(optInp){ 227 let opts = [] 228 optInp = JSON.parse(optInp) 229 optInp.forEach(e=>{ 230 opts.push({label:e.showValue,value:e.value}) 231 }) 232 let params = { 233 mult:subType=='selMulti'?true:false,//true为å¤é,false为åé 234 option:opts, 235 placeholder:placeholder, 236 onChange:function(res){//éæ©æ¡å¼ååè¿åç»æ 237 if(subType=='selMulti'){ 238 vinp.val(res.join(",")).trigger("change"); 239 }else{ 240 vinp.val(res).trigger("change"); 241 } 242 } 243 } 244 let multSelect= inp.find(".multSelect").multSelect(params); 245 } 246 }) 247 } 248 //åå§åçªå£æ¹æ³ 249 renderEvent(){ 250 //åéæé® 251 this.sendBtn = $("#"+this.conId).find(".sm_sendBtn") 252 //é误æç¤º 253 this.erroMsg = $("#"+this.conId).find(".erroMsg") 254 //åå§åç¼è¾å¨ 255 this.cEditor1 = new cEditor({ 256 element:'.sm_editor', 257 height:50, 258 windowStyle:this.colorLayout.windowStyle, 259 voiceSwitch:this.settings.voiceSwitch, 260 onchange:(data)=>{ 261 if(data){ 262 this.sendBtn.removeClass("disabled") 263 }else{ 264 this.sendBtn.addClass("disabled") 265 } 266 }, 267 onenter:()=>{ 268 this.sendBtn.trigger('click') 269 } 270 }) 271 $("#"+this.conId).on("click",".sm_close",()=>{//å ³éå¯¹è¯æ¡ 272 this.closeDialog() 273 }).on("click",".sm_sendBtn",(e)=>{//åéæ¶æ¯ 274 if($(e.currentTarget).hasClass("disabled")){ 275 return 276 } 277 $(e.currentTarget).addClass("disabled") 278 let msg = this.handleEditorData(emo.emojiToHTML(this.cEditor1.getData())) 279 if(msg.length>5000){ 280 this.errorMsgFun(i18n.sms_tolong,'warning') 281 return 282 } 283 let regstr = msg.replace(/\ \;/g,'').replace(/\n/g,'').trim() 284 let ar = encodeURI(regstr) 285 ar = ar.replace(/\%E2\%80\%8C/g,"") 286 if(ar==''){ 287 this.errorMsgFun(i18n.sms_empty,'warning') 288 return 289 } 290 if(this.logout){ 291 this.tmpMsg = msg 292 this.logNim() 293 return 294 } 295 296 // è®°å½åéæé®ç¹å»æ¶é´ 297 this.lastSendTime = new Date().getTime(); 298 299 this.sendText(msg) 300 }).on("click",".msgbtn a,.quea a",(e)=>{//é项æé®clickï¼é®é¢å¼å¯¼click 301 let url = $(e.target).attr("data-url") 302 if(url){ 303 window.open(url,"_blank") 304 }else{ 305 let msg = $(e.target).text() 306 this.sendText(msg) 307 } 308 }).on("click",".cardInfo",(e)=>{//åçclick 309 let url = $(e.currentTarget).attr("data-url") 310 if(url){ 311 window.open(url,"_blank") 312 } 313 }).on("click",".msgform.workOrderMsgformBox .p_sub2",(e)=>{//表åæäº¤ 314 // this.submitForm($(e.target),false, 'workOrder'); 315 this.checkLoginAndSubmit($(e.target), false, 'workOrder'); 316 }).on("input blur change valid",".msgform .p_inp",(e)=>{//è¡¨åæ ¡éª 317 this.formValid($(e.target)) 318 }).on("click",".msgform .p_sub",(e)=>{//表åæäº¤ 319 this.submitForm($(e.target)) 320 }).on("click",".ktitle a",(e)=>{//ç¥è¯åºæ¢ä¸æ¢ 321 let cg = $(e.target).attr("cg") 322 let ag = $(e.target).attr("ag") 323 let p = $(e.target).parent(".ktitle").next(".faq") 324 if(ag>cg){ 325 cg++ 326 }else if(ag==cg){ 327 cg=0 328 } 329 $(e.target).attr("cg",cg) 330 p.find('.knoa').hide() 331 p.find(`.knoa[group="${cg}"]`).show() 332 }).on("click",'.knoa a',(e)=>{//ç¹å»ç¥è¯ 333 let id = $(e.target).attr("biz") 334 this.clickKnowledge(id) 335 }).on("click",".reply a",(e)=>{//æ¯å¦ 336 if($(e.target).hasClass("disabled")){ 337 return 338 } 339 let obj = { 340 accid:this.res.account, 341 progressId:$(e.target).attr("progressid"), 342 operateType:$(e.target).attr("data-id"), 343 msg:decodeURIComponent($(e.target).attr("msg")), 344 } 345 $(e.target).addClass("clicked") 346 $(e.target).parent(".reply").find("a").addClass("disabled") 347 let url = `${this.res.domain}/visitormanager/intelligent/front/contentResearch?tenantId=${tenant.tenantId}&instance=${tenant.bossProductInstance}` 348 c.cmsAjax.postJson(url,obj).then((res)=>{ 349 console.log(res) 350 }) 351 }).on("click",".msgform .p_currentCode",(e)=>{//å½å®¶ç 352 e.stopPropagation() 353 $(e.currentTarget).next(".p_codeList").toggle() 354 }).off("click",".p_phoneCode .p_codeItem").on("click",".p_phoneCode .p_codeItem",(e)=>{ 355 e.stopPropagation() 356 $(e.currentTarget).addClass("p_active").siblings().removeClass("p_active") 357 let dialCode = $(e.currentTarget).find(".p_enDial").text() 358 let iso2 = $(e.currentTarget).find(".p_enCode").text() 359 let dialCodeDom = $(e.currentTarget).parents(".p_phoneCode").find(".p_currentCode span").eq(0) 360 let iso2Dom = $(e.currentTarget).parents(".p_phoneCode").find("[name='mobilePrefix']") 361 dialCodeDom.text(dialCode) 362 iso2Dom.val(dialCode+","+iso2) 363 $(e.currentTarget).parent(".p_codeList").hide() 364 }).on("click",".sms_read",(e)=>{ 365 let _this = $(e.currentTarget) 366 let item = _this.parents(".sm_msg") 367 let content = item.find(".msgcon").text() 368 if(content){ 369 if(_this.hasClass("active")){ 370 $(".ttsAudio").remove() 371 _this.removeClass("active") 372 }else{ 373 $require(['/npublic/commonjs/nouglify/bdAudio.js'],()=>{ 374 $("#"+this.conId).find(".sms_read").removeClass("active") 375 _this.addClass("active") 376 $.bdAudio({ 377 text:content, 378 onEnd:()=>{ 379 _this.removeClass("active") 380 }, 381 onError:()=>{ 382 _this.removeClass("active") 383 } 384 }) 385 }) 386 } 387 } 388 }).on("click", ".sm_tab_link", (e) => { 389 const tabId = $(e.currentTarget).data("tab"); 390 391 // æ´æ°æ¿æ´»ç¶æ 392 $(".sm_tab_link").removeClass("active"); 393 $(e.currentTarget).addClass("active"); 394 395 // æ¾ç¤ºå¯¹åºçå 容åºå 396 $(".sm_tab_content").removeClass("active").hide(); 397 $("#" + tabId + "-tab").addClass("active").show(); 398 399 if (tabId === "member") { 400 this.loadMemberInfo(); 401 } 402 }).on("click", ".quick_label_item", (e) => { 403 // è·å data-type å data-index 404 const dataType = $(e.currentTarget).data("type"); 405 const index = $(e.currentTarget).data("index"); 406 407 // æ£æ¥æ°æ®æ¯å¦åå¨ 408 if (!this.res.quickLabel || !Array.isArray(this.res.quickLabel) || index >= this.res.quickLabel.length) { 409 return; 410 } 411 412 // è·å对åºçæ°æ® 413 const data = this.res.quickLabel[index]; 414 415 // æ ¹æ® data-type å¤çä¸åé»è¾ 416 switch (dataType) { 417 case 0: // AIæç´¢ 418 // å¨ææ¬æ¡ä¸æ·»å "#AIæç´¢ï¼" å¹¶èç¦ 419 const currentText = this.cEditor1.getData(); 420 421 // æ£æ¥æ¯å¦å·²ç»å å« "#AIæç´¢ï¼"ï¼å¦æå å«åä¸é夿·»å 422 const trimmedText = currentText.trim(); 423 if (trimmedText.startsWith(`#${i18n.aiSearch || 'AIæç´¢' }ï¼`)) { 424 // 妿已ç»å å«ï¼åç´æ¥èç¦å°ç¼è¾å¨ 425 this.cEditor1.focus(); 426 427 // å°å æ ç§»å° "#AIæç´¢ï¼" ä¹å 428 setTimeout(() => { 429 const editorElement = document.querySelector('.cEditor-area'); 430 if (editorElement) { 431 const textContent = editorElement.textContent || editorElement.innerText; 432 const aiSearchIndex = textContent.indexOf(`#${i18n.aiSearch || 'AIæç´¢' }ï¼`); 433 434 if (aiSearchIndex !== -1) { 435 const range = document.createRange(); 436 const selection = window.getSelection(); 437 438 // æ¾å° "#AIæç´¢ï¼" åé¢çä½ç½® 439 const targetPosition = aiSearchIndex + `#${i18n.aiSearch || 'AIæç´¢' }ï¼`.length; 440 441 // éåèç¹æ¾å°æ£ç¡®çä½ç½® 442 let currentCharIndex = 0; 443 let found = false;
444 445 const traverseNodes = (node) => { 446 if (found) return; 447 448 if (node.nodeType === Node.TEXT_NODE) { 449 const nodeText = node.textContent; 450 const nodeEndIndex = currentCharIndex + nodeText.length; 451 452 if (targetPosition >= currentCharIndex && targetPosition <= nodeEndIndex) { 453 // å æ åºè¯¥æ¾å¨è¿ä¸ªææ¬èç¹çç¹å®ä½ç½® 454 range.setStart(node, targetPosition - currentCharIndex); 455 range.collapse(true); // å æ æ¾å¨æå ¥ç¹ 456 selection.removeAllRanges(); 457 selection.addRange(range); 458 found = true; 459 return; 460 } 461 currentCharIndex = nodeEndIndex; 462 } else if (node.nodeType === Node.ELEMENT_NODE) { 463 for (let child of node.childNodes) { 464 if (found) break; 465 traverseNodes(child); 466 } 467 } 468 }; 469 470 traverseNodes(editorElement); 471 } 472 } 473 }, 0); 474 return; 475 } 476 477 // å¦ææ²¡æå å« "#AIæç´¢ï¼"ï¼åæ·»å å¹¶èç¦å°æ«å°¾ 478 // ä½¿ç¨æ£ç¡®çæ¹æ³è®¾ç½®ç¼è¾å¨å 容 479 if (typeof this.cEditor1.setData === 'function') { 480 this.cEditor1.setData(`#${i18n.aiSearch || 'AIæç´¢' }ï¼` + currentText); 481 } else if (typeof this.cEditor1.setValue === 'function') { 482 this.cEditor1.setValue(`#${i18n.aiSearch || 'AIæç´¢' }ï¼` + currentText); 483 } else { 484 // å¦ææ²¡æä¸é¨çè®¾ç½®æ¹æ³ï¼å°è¯ç´æ¥æä½DOM 485 const editorElement = document.querySelector('.cEditor-area'); 486 if (editorElement) { 487 editorElement.innerHTML = `#${i18n.aiSearch || 'AIæç´¢' }ï¼` + currentText; 488 } 489 } 490 this.cEditor1.focus(); 491 492 // å°å æ ç§»å°ææ¬æ«å°¾ 493 setTimeout(() => { 494 const editorElement = document.querySelector('.cEditor-area'); 495 if (editorElement) { 496 const range = document.createRange(); 497 const selection = window.getSelection(); 498 range.selectNodeContents(editorElement); 499 range.collapse(false); // å°å æ ç§»å°æ«å°¾ 500 selection.removeAllRanges(); 501 selection.addRange(range); 502 } 503 }, 0); 504 break; 505 case 1: // åéææ¬æ¶æ¯ 506 if (data.desc) { 507 this.sendText(data.desc); 508 } 509 break; 510 case 2: // æå¼é¾æ¥ 511 let url = ''; 512 let _self = ''; 513 if (data.linkUrl) { 514 if(data.linkUrl.indexOf('http')>-1) { 515 url = data.linkUrl; 516 } else { 517 url = location.origin + data.linkUrl 518 } 519 } 520 _self = data.windowType == 0 ? '_self' : '_blank' 521 window.open(url, _self); 522 break; 523 case 3: // å¤èµ·ç¬¬ä¸æ¹åºç¨ 524 if (data.threePartyTools && data.threePartyTools.account) { 525 this.launchThirdPartyApp(data.threePartyTools.type, data.threePartyTools.account, data.threePartyTools, $(e.currentTarget)); 526 } 527 break; 528 default: 529 console.warn("æªç¥ç data-type:", dataType); 530 } 531 }).on("click", ".m_tags_info_item", (e) =>{ 532 const dataTag = $(e.currentTarget).data("tag"); 533 switch (dataTag) { 534 case i18n.myProfile || 'æçèµæ': 535 window.open('/sys/information') 536 break; 537 case i18n.myOrder || 'æç订å': 538 window.open('/sys/order/list') 539 break; 540 case i18n.myFavorite || 'æçæ¶è': 541 window.open('/sys/collection') 542 break; 543 case i18n.myService || 'æçæå¡': 544 window.open('/sys/workorder/list') 545 break; 546 default: 547 console.warn("æªç¥ç data-tag:", dataTag); 548 } 549 }).on('click', '.relatedIssuesItem', (e) => { 550 let msg = $(e.currentTarget).text(); 551 this.sendText(msg) 552 }).on("click",".replys a",(e)=>{//æ¯å¦ 553 let wtText = $(e.target).parents('.sm_msg').prev().find('.msgcon').text(); 554 if($(e.target).hasClass("disabled")){ 555 return 556 } 557 let obj = { 558 accid:this.res.account, 559 operateType:$(e.target).attr("data-id"), 560 msg:decodeURIComponent(wtText), 561 } 562 $(e.target).addClass("clicked") 563 let $replys = $(e.target).closest(".replys") 564 $replys.find("a").addClass("disabled") 565 let msgTime = $replys.attr("data-time") 566 if(msgTime){ 567 localStorage.setItem('replyResearch_' + msgTime, '1') 568 } 569 let isResolved = $(e.target).attr("data-id") == "1" 570 let tipText = isResolved ? i18n.solved : i18n.ApologyReminder 571 this.handleMsg(`<p class="prompt">${tipText}</p>`) 572 let url = `${this.res.domain}/visitormanager/intelligent/front/agentContentResearch?tenantId=${tenant.tenantId}&instance=${tenant.bossProductInstance}` 573 c.cmsAjax.postJson(url,obj).then((res)=>{ 574 console.log(res) 575 }) 576 }).on('click', '.addWechat', (e) => { 577 $(e.target).parents('.cards').toggleClass('wx'); 578 }); 579 } 580 581 loadMemberInfo() { 582 const memberTab = $("#member-tab"); 583 if (memberTab.find(".memberBox").length > 0) { 584 // 妿已ç»å è½½è¿ï¼ç´æ¥æ¾ç¤º 585 return; 586 } 587 588 // æ¾ç¤ºå è½½ç¶æ 589 memberTab.find(".member-loading").show(); 590 591 // éæ°æ£æ¥ç»å½ç¶æ 592 this.isLogin().then(() => { 593 // éèå è½½ç¶æ 594 memberTab.find(".member-loading").hide(); 595 596 // éæ°çæä¼åä¸å¿å 容 597 this.renderMemberInfo(); 598 }).catch(() => { 599 // éèå è½½ç¶æ 600 memberTab.find(".member-loading").hide(); 601 602 // éæ°çæä¼åä¸å¿å 容 603 this.renderMemberInfo(); 604 }); 605 } 606 607 // 渲æä¼åä¿¡æ¯ 608 renderMemberInfo() { 609 const memberTab = $("#member-tab"); 610 const memberType = this.memberData && this.memberData.data && this.memberData.data.user && this.memberData.data.user.type || ''; 611 612 let img = $.handleDataImg(this.memberData?.data?.user?.avatar || this.kefuHead) || '/npublic/commonjs/smartService/kefu.png'; 613 614 // 卿çæä¼åæ ç¾ 615 let memberTags = ''; 616 if (this.res.memberSet && Array.isArray(this.res.memberSet)) { 617 memberTags = this.res.memberSet.map((tag, index) => { 618 switch (tag) { 619 case 'æçèµæ': 620 tag = i18n.myProfile; 621 break; 622 case 'æç订å': 623 tag = i18n.myOrder; 624 break; 625 case 'æçæå¡': 626 tag = i18n.myService; 627 break; 628 case 'æçæ¶è': 629 tag = i18n.myFavorite; 630 break; 631 default: 632 break; 633 } 634 return `<div class="m_tags_info_item" data-tag="${tag}" data-index="${index}">
635 <span class="tag-icon"></span>${tag} 636 </div>` 637 }).join(''); 638 } 639 640 let memberContent = ''; 641 let memberIcon = ''; 642 if(memberType == 1) { 643 memberIcon = '<svg t="1767579004512" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="55622" width="200" height="200"><path d="M928.914286 934.765714H103.862857c-21.942857 0-40.96-10.24-40.96-33.645714 0-23.405714 17.554286-35.108571 40.96-35.108571h23.405714v-687.542858c0-42.422857 32.182857-76.068571 73.142858-76.068571h396.434285c39.497143 0 73.142857 33.645714 73.142857 76.068571v106.788572h168.228572c39.497143 0 73.142857 33.645714 73.142857 76.068571v504.685715h20.48c21.942857 0 40.96 11.702857 40.96 35.108571-2.925714 21.942857-20.48 33.645714-43.885714 33.645714zM610.011429 340.845714V159.451429H188.708571v705.097142h421.302858V340.845714z m242.834285 0H668.525714v525.165715h182.857143V340.845714z m-512 35.108572h-70.217143c-21.942857 0-40.96-19.017143-40.96-42.422857 0-23.405714 17.554286-42.422857 40.96-42.422858h70.217143c21.942857 0 40.96 19.017143 40.96 42.422858 0 23.405714-19.017143 42.422857-40.96 42.422857z m0 156.525714h-70.217143c-21.942857 0-40.96-19.017143-40.96-42.422857 0-23.405714 17.554286-42.422857 40.96-42.422857h70.217143c21.942857 0 40.96 19.017143 40.96 42.422857 0 23.405714-19.017143 42.422857-40.96 42.422857z m0 156.525714h-70.217143c-21.942857 0-40.96-19.017143-40.96-42.422857 0-23.405714 17.554286-42.422857 40.96-42.422857h70.217143c21.942857 0 40.96 19.017143 40.96 42.422857 0 23.405714-19.017143 42.422857-40.96 42.422857z m184.32-313.051428h-70.217143c-21.942857 0-40.96-19.017143-40.96-42.422857 0-23.405714 17.554286-42.422857 40.96-42.422858h70.217143c21.942857 0 40.96 19.017143 40.96 42.422858 0 23.405714-19.017143 42.422857-40.96 42.422857z m223.817143 181.394285c-21.942857 0-40.96-19.017143-40.96-42.422857v-40.96c0-23.405714 17.554286-42.422857 40.96-42.422857 21.942857 0 40.96 19.017143 40.96 42.422857v40.96c-1.462857 23.405714-19.017143 42.422857-40.96 42.422857z m0 190.171429c-21.942857 0-40.96-19.017143-40.96-42.422857v-40.96c0-23.405714 17.554286-42.422857 40.96-42.422857 21.942857 0 40.96 19.017143 40.96 42.422857v40.96c-1.462857 23.405714-19.017143 42.422857-40.96 42.422857zM525.165714 532.48h-70.217143c-21.942857 0-40.96-19.017143-40.96-42.422857 0-23.405714 17.554286-42.422857 40.96-42.422857h70.217143c21.942857 0 40.96 19.017143 40.96 42.422857 0 23.405714-19.017143 42.422857-40.96 42.422857z m0 156.525714h-70.217143c-21.942857 0-40.96-19.017143-40.96-42.422857 0-23.405714 17.554286-42.422857 40.96-42.422857h70.217143c21.942857 0 40.96 19.017143 40.96 42.422857 0 23.405714-19.017143 42.422857-40.96 42.422857z m0 0" fill="" p-id="55623"></path></svg>' 644 } else { 645 memberIcon = '<svg t="1767579610704" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="56692" width="200" height="200"><path d="M817.75830078125 230.556640625H206.24082031250003c-48.2361328125 0-87.36767578125 38.7703125-87.36767578125 86.5775390625v389.69824218749994c0 47.82392578125 39.131542968750004 86.61181640625 87.36767578125 86.61181640625h611.5174804687499c48.251953125 0 87.36767578125-38.787890625 87.36767578125-86.61181640625v-389.69824218749994c0-47.8072265625-39.11396484375-86.5775390625-87.36767578125-86.5775390625zM354.45341796875 359.9580078125c42.08466796875 0 82.90019531249999 34.80205078125 82.90019531249999 72.30234375s-39.268652343750006 75.27392578125-82.90019531249999 75.27392578125c-42.08642578125 0-80.73808593749999-41.75947265625-80.73808593749999-79.224609375 0-37.4994140625 38.651660156249996-68.35166015625 80.73808593749999-68.35166015625zM504.43261718749994 664.0419921875H206.08613281249995v-15.33955078125c0-73.69365234374999 46.9125-128.28515625 149.46503906249998-128.28515625 102.53583984375 0 148.88144531249998 51.996972656249994 148.88144531249998 121.809375 0 2.78173828125 0.18896484375 19.032714843750004 0 21.8162109375z m313.61923828125003-54.333984375c0 5.97744140625-6.2525390624999995 10.787695312499999-14.0185546875 10.787695312499999H570.01923828125c-7.7642578124999995 0-14.034375-4.81025390625-14.034375-10.787695312499999v-21.64306640625c0-5.961621093750001 6.270996093749999-10.8228515625 14.034375-10.8228515625h234.0140625c7.766015625 0 14.0185546875 4.86123046875 14.0185546875 10.8228515625v21.64306640625z m0-87.36679687499999c0 5.97744140625-6.2525390624999995 10.8228515625-14.0185546875 10.8228515625H570.01923828125c-7.7642578124999995 0-14.034375-4.84541015625-14.034375-10.8228515625v-21.64306640625c0-5.9607421875 6.270996093749999-10.82197265625 14.034375-10.82197265625h234.0140625c7.766015625 0 14.0185546875 4.86123046875 14.0185546875 10.82197265625v21.64306640625z m0-86.16357421874999c0 5.95986328125-6.2525390624999995 10.82109375-14.0185546875 10.82109375H570.01923828125c-7.7642578124999995 0-14.034375-4.8603515625-14.034375-10.82109375v
645-21.6439453125c0-5.9958984375 6.270996093749999-10.8228515625 14.034375-10.8228515625h234.0140625c7.766015625 0 14.0185546875 4.826953124999999 14.0185546875 10.8228515625v21.6439453125z m0 0" p-id="56693" fill=""></path></svg>' 646 } 647 if(this.isLoginFlag) { 648 memberContent = ` 649 <div class="memberBox"> 650 <div class="m_cards"> 651 <div class="m_icons"> 652 ${memberIcon} 653 </div> 654 <div class="member_img"> 655 <img src="${img}" alt="${this.settings.name}" la="la" /> 656 </div> 657 <div class="member_info"> 658 <div class="member_title">${i18n.memberNum || 'ä¼åå·'}ï¼${getCookie('_memberId') || '******'}</div> 659 <div style="display: none;"><svg t="1766114967975" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="10638" width="200" height="200"><path d="M68.266667 955.733333V519.304533c0-63.488 48.196267-114.8928 107.656533-114.8928h78.848v86.152534H175.9232c-14.882133 0-26.965333 12.9024-26.965333 28.740266v350.208H273.066667V242.688C273.066667 184.046933 321.536 136.533333 381.201067 136.533333h329.864533C770.798933 136.533333 819.2 184.046933 819.2 242.688V273.066667l28.8768 0.068266C907.537067 273.066667 955.733333 324.539733 955.733333 387.959467V955.733333H68.266667z m642.798933-739.601066H381.201067a26.760533 26.760533 0 0 0-27.0336 26.624v626.756266H409.6v-65.672533C409.6 736.938667 455.4752 682.666667 512 682.666667s102.4 54.272 102.4 121.173333v65.672533h123.630933l0.068267-626.824533a26.760533 26.760533 0 0 0-27.0336-26.555733z m137.0112 143.086933H819.2v510.293333h55.773867V387.959467a28.330667 28.330667 0 0 0-21.435734-28.125867l-5.461333-0.6144zM512 768c-16.725333 0-30.242133 16.042667-30.242133 35.84l-0.068267 65.672533h60.552533v-65.672533c0-19.797333-13.5168-35.84-30.242133-35.84zM637.815467 477.866667c24.7808 0 44.8512 15.291733 44.8512 34.133333s-20.0704 34.133333-44.8512 34.133333H454.4512C429.6704 546.133333 409.6 530.8416 409.6 512s20.0704-34.133333 44.8512-34.133333h183.364267z m0-136.533334c24.7808 0 44.8512 15.291733 44.8512 34.133334s-20.0704 34.133333-44.8512 34.133333H454.4512C429.6704 409.6 409.6 394.308267 409.6 375.466667s20.0704-34.133333 44.8512-34.133334h183.364267z" fill="#FFFFFF" p-id="10639"></path></svg>xxxå ¬å¸</div> 660 </div> 661 <div class="m_mark"></div> 662 </div> 663 <div class="${memberTags == '' ? 'hideDom' : ''}"> 664 <div class="m_tags_title"><svg t="1766114780148" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="10493" width="200" height="200"><path d="M519.68 27.136c25.984 5.632 46.528 25.6 53.12 51.392l75.264 295.168a25.6 25.6 0 0 0 19.2 18.624l276.928 62.336a70.4 70.4 0 0 1-4.608 138.24l-268.8 41.856a25.6 25.6 0 0 0-21.184 20.416l-58.24 297.152a70.4 70.4 0 0 1-137.984 0.64l-61.44-297.792a25.6 25.6 0 0 0-21.248-20.16L88.32 592.32a70.4 70.4 0 0 1-5.12-138.24l269.376-61.312a25.6 25.6 0 0 0 19.328-19.456l63.936-292.48a70.4 70.4 0 0 1 83.84-53.76zM169.984 732.16a118.4 118.4 0 1 1 0 236.8 118.4 118.4 0 0 1 0-236.8zM504.96 123.584l-58.112 266.112a102.4 102.4 0 0 1-77.312 77.952l-236.416 53.76 248.96 37.696a102.4 102.4 0 0 1 82.752 71.68l2.24 8.896 54.976 266.432 52.096-265.728a102.4 102.4 0 0 1 75.776-79.68l8.96-1.856 235.52-36.672-244.096-54.912a102.4 102.4 0 0 1-73.984-65.472l-2.752-9.152L504.96 123.584z m-334.976 685.44a41.6 41.6 0 1 0 0 83.2 41.6 41.6 0 0 0 0-83.2zM850.816 32.832a38.4 38.4 0 0 1 38.4 38.4v60.48l64 0.384a38.4 38.4 0 0 1-0.448 76.8l-63.552-0.384v59.2a38.4 38.4 0 0 1-76.8 0v-59.584l-50.88-0.256a38.4 38.4 0 0 1 0.384-76.8l50.496 0.256v-60.096a38.4 38.4 0 0 1 38.4-38.4z" fill="#165DFC" p-id="10494"></path></svg>${i18n.quickOperation || 'å¿«æ·æä½'}</div> 665 <div class="m_tags_info"> 666 ${memberTags} 667 </div> 668 </div> 669 </div> 670 ` 671 } else { 672 memberContent = `<div class="memberBox"> 673 <div class="member_info"> 674 <div class="member_title toLogin"> 675 <svg t="1775179815896" class="member_svg icon" viewB
675ox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="25331" width="200" height="200"><path d="M527.36 272.384a169.984 169.984 0 1 0 169.984 169.984 169.984 169.984 0 0 0-169.984-169.984z m0 256A84.992 84.992 0 1 1 614.4 442.368a84.992 84.992 0 0 1-87.04 84.992z m0-424.96a424.96 424.96 0 1 0 425.472 424.96A424.96 424.96 0 0 0 527.36 102.4z m0 764.928a339.456 339.456 0 0 1-162.816-41.472 127.488 127.488 0 0 1 120.32-86.016h106.496a107.008 107.008 0 0 1 102.4 83.456 340.48 340.48 0 0 1-166.4 43.008zM768 768a190.976 190.976 0 0 0-175.104-114.176H484.864a212.48 212.48 0 0 0-190.976 119.296A340.48 340.48 0 1 1 768 768z" p-id="25332" data-spm-anchor-id="a313x.search_index.0.i0.243e3a81EgyJdc" class="selected"></path></svg> 676 <p>${i18n.loginMore || 'ç»å½åäº«åæ´å¤ä¼åæå¡'}</p> 677 <a href="/login.html" target="_blank"><svg t="1775180776389" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="27197" width="200" height="200"><path d="M0 0h1024v1024H0z" fill="#ffffff" fill-opacity="0" p-id="27198"></path><path d="M885.333333 298.666667v426.666666A202.922667 202.922667 0 0 1 682.666667 928h-170.666667a32 32 0 1 1 0-64h170.666667A138.837333 138.837333 0 0 0 821.333333 725.333333V298.666667A138.837333 138.837333 0 0 0 682.666667 160h-170.666667a32 32 0 1 1 0-64h170.666667A202.922667 202.922667 0 0 1 885.333333 298.666667z m-265.386666 190.72l-170.666667-170.666667a32 32 0 1 0-45.269333 45.269333l116.053333 116.053334H170.666667a32 32 0 1 0 0 64h349.397333l-116.053333 116.053333a32 32 0 1 0 45.226666 45.269333l170.666667-170.666666a32.042667 32.042667 0 0 0 0.042667-45.312z" fill="#ffffff" p-id="27199"></path></svg>${i18n.toLogin || 'å»ç»å½'}</a> 678 </div> 679 </div> 680 </div>` 681 } 682 683 memberTab.html(memberContent); 684 685 // éæ°ç»å®ä¼åæ ç¾ç¹å»äºä»¶ 686 memberTab.off("click", ".m_tags_info_item").on("click", ".m_tags_info_item", (e) => { 687 const dataTag = $(e.currentTarget).data("tag"); 688 switch (dataTag) { 689 case i18n.myProfile || 'æçèµæ': 690 window.open('/sys/information') 691 break; 692 case i18n.myOrder || 'æç订å': 693 window.open('/sys/order/list') 694 break; 695 case i18n.myFavorite || 'æçæ¶è': 696 window.open('/sys/collection') 697 break; 698 case i18n.myService || 'æçæå¡': 699 window.open('/sys/workorder/list') 700 break; 701 default: 702 console.warn("æªç¥ç data-tag:", dataTag); 703 } 704 }); 705 } 706 // å¤èµ·ä¸æ¹åºç¨ 707 launchThirdPartyApp(type, account, dataThreePartyTools, item) { 708 switch (type) { 709 case 1: // QQä¼ä¸ç 710 window.location.href = `tencent://message/?uin=${account}`; 711 break; 712 case 2: // é¿éæºæº 713 // window.location.href = `wangwang://sendmsg?uid=${account}`; 714 break; 715 case 3: // é¿éæºæºE客æ 716 window.location.href = `http://amos.alicdn.com/getcid.aw?v=2&uid=${account}&site=cntaobao&s=2&groupid=0&charset=utf-8`; 717 break; 718 case 4: // Skype 719 window.location.href = `skype:${account}?chat`; 720 break; 721 case 5: // WhatsApp 722 window.location.href = `https://api.whatsapp.com/send?phone=${account}&text=Hello`; 723 break; 724 case 6: // 微信 725 // 微信éå¸¸æ æ³ç´æ¥éè¿é¾æ¥å¤èµ·ï¼å¯ä»¥æç¤ºç¨æ·å¤å¶å¾®ä¿¡å· 726 console.log(`微信ï¼${account}`, dataThreePartyTools); 727 this.showWeChatPrompt(dataThreePartyTools, item) 728 break; 729 case 7: // 微信 730 // 微信éå¸¸æ æ³ç´æ¥éè¿é¾æ¥å¤èµ·ï¼å¯ä»¥æç¤ºç¨æ·å¤å¶å¾®ä¿¡å· 731 console.log(`åçï¼${account}`, dataThreePartyTools); 732 this.showWeChatPrompt(dataThreePartyTools, item) 733 break; 734 case 8: // é®ä»¶ 735 window.location.href = `mailto:${account}`; 736 break; 737 case 9: // çµè¯ 738 window.location.href = `tel:${account}`; 739 break; 740 case 10: // 龿¥ 741 window.location.href = `tel:${link}`; 742 break; 743 case 11: // èªå®ä¹ 744 window.location.href = `tel:${link}`; 745 break; 746 case 12: // æºæ §å®¢æ 747 window.location.href = `tel:${link}`; 748 break; 749 default: 750 console.warn("䏿¯æçç¬¬ä¸æ¹åºç¨ç±»å:", type, account); 751 // alert("æä¸æ¯æè¯¥ç¬¬ä¸æ¹åºç¨çå¤èµ·åè½"); 752 } 753 } 754 // å¨ smartService ç±»ä¸æ·»å æ¾ç¤ºå¾®ä¿¡æç¤ºæ¡çæ¹æ³ 755 showWeChatPrompt(data, item) { 756 item.addClass('active') 757 if(item.siblings().hasClass('active')) { 758 $('.wechat-prompt').remove(); 759 // ç§»é¤å·²åå¨çæç¤ºæ¡ 760 item.siblings().removeClass('active'); 761 } 762 763 // å建微信æç¤ºæ¡ HTML 764 const wechatPromptHtml = ` 765 <div class="wechat-prompt"> 766 <div style="text-align: center;"> 767 <img src="${__ce.imgStaticUrl[0] + '/' + data.imageUrlArr[0].detail.watermarkUrl_symbol}" alt="微信äºç»´ç " style="width: 120px; height: 120px; margin: 0 auto; display: block;" /> 768 </div> 769 <div class="custom_close">
769<svg t="1767872926130" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="30359" width="200" height="200"><path d="M512 70.772034c-243.685892 0-441.227966 197.550776-441.227966 441.227966 0 243.685892 197.542074 441.227966 441.227966 441.227966S953.227966 755.685892 953.227966 512C953.227966 268.32281 755.685892 70.772034 512 70.772034zM713.983275 656.253462c15.919864 15.960476 15.919864 41.780941 0 57.700805-15.948873 15.960476-41.780941 15.960476-57.729813 0L512 569.712408l-144.294074 144.241858c-15.908261 15.960476-41.740329 15.960476-57.692102 0-15.908261-15.919864-15.908261-41.740329 0-57.700805l144.28247-144.241858-144.28247-144.28247c-15.908261-15.919864-15.908261-41.751932 0-57.700805 15.948873-15.919864 41.780941-15.919864 57.692102 0l144.294074 144.28247 144.253462-144.28247c15.948873-15.919864 41.780941-15.919864 57.729813 0 15.919864 15.948873 15.919864 41.780941 0 57.700805l-144.28247 144.28247L713.983275 656.253462z" p-id="30360"></path></svg></div> 770 </div> 771 `; 772 773 // è·å触åç¹å»çå ç´ ä½ç½® 774 const $triggerElement = $(event.target).closest('.quick_label_item'); 775 const offset = $triggerElement.offset(); 776 const windowWidth = $(window).width(); 777 778 // æ·»å æç¤ºæ¡å°é¡µé¢ 779 const $prompt = $(wechatPromptHtml); 780 781 $('body').append($prompt); 782 783 $prompt.css({ 784 top: offset.top - $prompt.outerHeight() - 10, 785 left: offset.left - 23 786 }); 787 788 // æ£æ¥å³ä¾§è¾¹ç 789 if (offset.left + $('.wechat-prompt').width() > windowWidth) { 790 $('.wechat-prompt').addClass('windowRight'); 791 $prompt.css({ 792 top: top, 793 left: 'auto', 794 right: 20 795 }); 796 } 797 798 $('.custom_close').on('click', function() { 799 $('.wechat-prompt').remove(); 800 item.removeClass('active') 801 }) 802 803 $(window).on('scroll', function() { 804 $('.wechat-prompt').remove(); 805 item.removeClass('active') 806 }) 807 808 $('.quick_labels').on('scroll', function() { 809 $('.wechat-prompt').remove(); 810 item.removeClass('active') 811 }) 812 } 813 //ç¹å»ç¥è¯ 814 clickKnowledge(id){ 815 this.handleReply(true) 816 let obj = { 817 accid:this.res.account, 818 bizId:id, 819 } 820 let url = `${this.res.domain}/visitormanager/intelligent/front/knowledgeTitleClick?tenantId=${tenant.tenantId}&instance=${tenant.bossProductInstance}` 821 c.cmsAjax.postJson(url,obj).then((res)=>{ 822 console.log(res) 823 }) 824 } 825 //æ£å¨åå¤ 826 handleReply(key){ 827 if(key){ 828 $(".sm_reply").remove() 829 let msg = { 830 type:"text", 831 from:"reply", 832 text:`<div class="dot-loader"><div class="dot"></div><div class="dot"></div><div class="dot"></div></div>` 833 } 834 this.handleMsg(msg) 835 }else{//æ¸ é¤åå¤ 836 $(".sm_reply").remove() 837 } 838 } 839 getFormValue(item){ 840 if(item.hasClass('p_checkbox') || item.hasClass('p_radio')){//å¤éæ¡ 841 let inp = item.find("input:checked"),tmpValue=[] 842 inp.each(function(i,e){ 843 tmpValue.push($(e).val()) 844 }) 845 return tmpValue.join(",") 846 }else{ 847 return item.val() ? item.val().trim() : "" 848 } 849 } 850 //表åé¡¹æ ¡éª 851 formValid(input){ 852 let code = input.attr("data-type") 853 let formId = input.parents(".formIt") 854 let errorMsg = formId.find(".errorMsg") 855 let v = this.getFormValue(input) 856 let required = formId.attr('required') 857 if(!v){ 858 if(required){ 859 formId.addClass("invalid")
860 errorMsg.text(i18n.sms_error2) 861 }else{ 862 formId.removeClass("invalid") 863 errorMsg.text("") 864 } 865 }else{ 866 if(code=='mobile' && !/^[0-9\+-]+$/.test(v)){ 867 formId.addClass("invalid") 868 errorMsg.text(i18n.form_invalidMobile) 869 }else if(code=='email' && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(v)){ 870 formId.addClass("invalid") 871 errorMsg.text(i18n.form_invalidEmail) 872 }else{ 873 formId.removeClass("invalid") 874 errorMsg.text("") 875 } 876 } 877 } 878 //æäº¤è¡¨å 879 submitForm(e,isForm, workOrder){ 880 let form = e.parents(".msgform") 881 form.find(".p_inp").trigger("valid") 882 let invalid = form.find(`.invalid`).length 883 if(invalid==0){ 884 let aggree = form.find(".aggree input") 885 if(aggree.length>0 && !aggree.prop("checked") && isForm){ 886 aggree.parent().addClass("noAggree") 887 return 888 }else{ 889 aggree.parent().removeClass("noAggree") 890 } 891 let obj = { 892 accid:this.res.account, 893 terminal:this.getTerminal(), 894 source:location.href 895 } 896 if(localStorage.getItem("ga4_cbo_custom_id")){ 897 obj.deviceNo = localStorage.getItem("ga4_cbo_custom_id") 898 } 899 if(!isForm){ 900 obj.progressId = form.attr("progressId") 901 } 902 form.find(".p_inp").each((i,e)=>{ 903 obj[$(e).attr("name")]=this.getFormValue($(e)) 904 }) 905 if(!isForm){ 906 this.handleReply(true) 907 } 908 let url = ``; 909 if(workOrder) { 910 url = `${this.res.domain}/visitormanager/intelligent/front/addWork?tenantId=${tenant.tenantId}&instance=${tenant.bossProductInstance}`; 911 obj.memberId = getCookie('_memberId') || ''; 912 } else { 913 url = `${this.res.domain}/visitormanager/intelligent/front/addClue?tenantId=${tenant.tenantId}&instance=${tenant.bossProductInstance}` 914 } 915 916 c.cmsAjax.postJson(url,obj).then((res)=>{ 917 console.log(res) 918 if(res.status==200 && res.data){ 919 if(res.data.code==200){ 920 if(isForm){ 921 this.needForm = false 922 this.init(false) 923 this.showFun() 924 }else{ 925 if(workOrder) { 926 form.hide().siblings('.successBox').show(); 927 } 928 this.handleReply(false) 929 this.errorMsgFun(i18n.sms_success,'success') 930 } 931 }else if(res.data.code==10004){ 932 if(isForm){ 933 $.pl_toast({msg:i18n.sms_error1}) 934 }else{ 935 this.handleReply(false) 936 this.errorMsgFun(i18n.sms_error1,'warning') 937 } 938 } 939 } 940 }) 941 } 942 } 943 //å ³éçªå£ 944 closeDialog(){ 945 //å å ¥ä¸»å¨å ³éæ è¯ 946 sessionStorage.setItem('smartServiceClose','true') 947 if(this.needForm){ 948 $("#"+this.conId+"-form").removeClass("show") 949 return 950 } 951 $("#"+this.conId).removeClass("show") 952 this.cEditor1.clear() 953 //æ¸ é¤èªå¨è¯æ¯ 954 clearInterval(this.greeting) 955 //æ¸ é¤è®¿å®¢æ åºçè®¡æ¶ 956 clearTimeout(this.customreNoAnswerTimeout) 957 //æ¸ é¤ä¼ä¸æ åºçè®¡æ¶ 958 clearTimeout(this.companyNoAnswerTimeout) 959 if(!this.logout){ 960 this.renderLogout(true) 961 } 962 this.cleanup(); 963 } 964 //ç»åºï¼æ¸²ææç¤º 965 renderLogout(k){ 966 console.log('éåº') 967 this.logout=true 968 clearInterval(this.timeLogoutEvent) 969 // this.nim.disconnect() 970 if(!k){ 971 this.handleMsg(`<p class="prompt">âââ ${i18n.sms_dk} âââ</p>`) 972 } 973 } 974 //html转symbol 975 handleEditorData(msg){ 976 //spanåè¾¹ 977 let reg1 = /<span[\w\W]*?name=("|')/g 978 let arr = msg.match(reg1) 979 if(arr){
980 arr.forEach(e=>{ 981 msg = msg.replace(new RegExp(e,'g'),'') 982 }) 983 } 984 //spanåè¾¹ 985 let reg2 = new RegExp(/\][\w\W]*?<\/span>/,'g') 986 let arr2 = msg.match(reg2) 987 if(arr2){ 988 arr2.forEach(e=>{ 989 msg = msg.replace(new RegExp(e,'g'),']') 990 }) 991 } 992 //divåè¾¹ 993 msg = msg.replace(/<div>/g,'\n') 994 //divåè¾¹ 995 msg = msg.replace(/<\/div>/g,'') 996 //br 997 msg = msg.replace(/<br>/g,'\n') 998 //ç©ºæ ¼ 999 msg = msg.replace(/\ \;/g,' ') 1000 return msg 1001 } 1002 //é误æç¤º 1003 errorMsgFun(txt,type){ 1004 let ttype = type || "error" 1005 this.errorToast({type:ttype,msg:txt}) 1006 } 1007 //é误æç¤º-æ° 1008 errorToast(obj){ 1009 let dialog = $("#"+this.conId+" .sm_dialog") 1010 let id = "toast_"+ +new Date() 1011 let iconObj = { 1012 'success':`<svg t="1723688024929" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="1723" width="200" height="200"><path d="M511.434623 63.564711c-247.428276 0-448.010617 200.582341-448.010617 448.01164 0 247.430322 200.581318 448.01164 448.010617 448.01164 247.432369 0 448.012663-200.581318 448.012663-448.01164C959.447287 264.147052 758.865969 63.564711 511.434623 63.564711zM773.519714 382.576325 447.871959 704.039781 245.771031 507.044128l63.996546-68.093864 138.15964 138.15964 261.086343-261.087367L773.519714 382.576325z" p-id="1724"></path></svg>`, 1013 'warning':`<svg t="1723688042921" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="1869" width="200" height="200"><path d="M511.6 64.6c-247.4 0-448 200.6-448 448s200.6 448 448 448 448-200.6 448-448-200.6-448-448-448z m-0.1 717.9c-29.8 0-54-24.2-54-54s24.2-54 54-54 54 24.2 54 54c-0.1 29.9-24.2 54-54 54z m51.4-216.1c-1.5 27.9-24.1 50.1-51 53 2 0.2 3.7 1.1 5.7 1.1h-11.2c1.9 0 3.7-0.9 5.6-1.1-27-2.9-49.1-24.6-50.4-53l-12.4-269.7c-1.4-29.9 22-54.2 51.9-54.2H526c30 0 53.1 23.7 51.4 54.2l-14.5 269.7z" p-id="1870"></path></svg>`, 1014 'error':`<svg t="1723686236199" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="1577" width="200" height="200"><path d="M827.392 195.584q65.536 65.536 97.792 147.456t32.256 167.936-32.256 167.936-97.792 147.456-147.456 98.304-167.936 32.768-168.448-32.768-147.968-98.304-98.304-147.456-32.768-167.936 32.768-167.936 98.304-147.456 147.968-97.792 168.448-32.256 167.936 32.256 147.456 97.792zM720.896 715.776q21.504-21.504 18.944-49.152t-24.064-49.152l-107.52-107.52 107.52-107.52q21.504-21.504 24.064-49.152t-18.944-49.152-51.712-21.504-51.712 21.504l-107.52 106.496-104.448-104.448q-21.504-20.48-49.152-23.04t-49.152 17.92q-21.504 21.504-21.504 52.224t21.504 52.224l104.448 104.448-104.448 104.448q-21.504 21.504-21.504 51.712t21.504 51.712 49.152 18.944 49.152-24.064l104.448-104.448 107.52 107.52q21.504 21.504 51.712 21.504t51.712-21.504z" p-id="1578"></path></svg>` 1015 } 1016 dialog.append(` 1017 <div class="errorCon"> 1018 <div class="errorToast ${obj.type}" id="${id}"> 1019 ${iconObj[obj.type]||iconObj.error}<span>${obj.msg}</span> 1020 </div> 1021 </div> 1022 `) 1023 var st = setTimeout(()=>{ 1024 $("#"+id).remove() 1025 },2000) 1026 } 1027 //åéæ¶æ¯ 1028 sendText(msg){ 1029 this.sensitiveFun(msg,(words)=>{ 1030 if(words.length>0){ 1031 this.errorToast({type:'error',msg:window.i18n.form_mgc+":"+words.join(",")}) 1032 return 1033 } 1034 var tms = this.nim.sendText({ 1035 scene: 'p2p', 1036 to: this.settings.account, 1037 text: msg, 1038 done: (error, msg)=>{ 1039 if(error){ 1040 this.errorMsgFun(i18n.sms_fail,'error') 1041 return 1042 } 1043 console.log('åéæ¶æ¯' ,msg); 1044 this.handleMsg(msg) 1045 this.handleReply(true) 1046 this.cEditor1.clear() 1047 this.cEditor1.focus() 1048 if(!this.res.enableSmartCustomer){ 1049 //å¯å¨ä¼ä¸æ åºçè®¡æ¶ 1050 this.companyNoAnswerFun() 1051 //æ¸ é¤èªå¨è¯æ¯ 1052 clearInterval(this.greeting) 1053 //æ¸ é¤è®¿å®¢æ åºçè®¡æ¶ 1054 clearTimeout(this.customreNoAnswerTimeout) 1055 } 1056 } 1057 }); 1058 }) 1059 1060 } 1061 //ææè¯è¿æ»¤ 1062 sensitiveFun(v,callback){ 1063 let url = "/fwebapi/cms/sensitive/findContentContainWords" 1064 c.cmsAjax.postJson(url,{content:v,type:1}).then((res)=>{ 1065 try{ 1066 callback(res.data.result) 1067 }catch(e){ 1068 callback([]) 1069 } 1070 }).catch((err)=>{ 1071 callback([]) 1072 }) 1073 } 1074 //ç»å½nim 1075 logNim(){ 1076 $require(['/npublic/commonjs/smartService/NIM_Web_SDK_v9.6.4.js'],()=>{ 1077 this.tTime=0 1078 this.timeLogout() 1079 if(this.nim){ 1080 this.nim.connect() 1081 return 1082 } 1083 this.nim = SDK.NIM.getInstance({ 1084 debug: false, // æ¯å¦å¼å¯æ¥å¿ï¼å°å ¶æå°å°consoleãéæå¼åé¶æ®µå»ºè®®æå¼ã 1085 appKey: this.res.appKey, 1086 account: this.res.account, 1087 token: this.res.token, 1088 db:false, //è¥ä¸è¦å¼å¯æ°æ®åºè¯·è®¾ç½®falseãSDKé»è®¤ä¸ºtrueã 1089 onconnect: ()=> { 1090 console.log('è¿æ¥æå'); 1091 this.logout=false 1092 if(this.tmpMsg){ 1093 this.sendText(this.tmpMsg) 1094 this.tmpMsg="" 1095 } 1096 1097 // è¿æ¥æååéè loading æ¶æ¯ 1098 this.hideLoadingMessage(); 1099 1100 if(!this.res.enableSmartCustomer){ 1101 console.log('å¯å¨é»è®¤è¯æ¯',this.automaticReply) 1102 //å¯å¨é»è®¤è¯æ¯ 1103 this.greetingFun() 1104 } 1105 // $("#"+this.conId+" .cEditor-area").focus() 1106 this.unreadMessageCount = this.getUnreadCountFromStorage(); // æ·»å æªè¯»æ¶æ¯è®¡æ°å¨ 1107 this.updateUnreadBadge(); // æ´æ°æªè¯»æ¶æ¯è§æ 1108 }, 1109 onwillreconnect: (obj)=> { 1110 // æ¤æ¶è¯´æ SDK å·²ç»æå¼è¿æ¥, 请å¼åè å¨çé¢ä¸æç¤ºç¨æ·è¿æ¥å·²æå¼, è䏿£å¨éæ°å»ºç«è¿æ¥ 1111 console.log('å³å°éè¿',obj.retryCount,obj.duration); 1112 }, 1113 ondisconnect: (error)=> { 1114 // æ¤æ¶è¯´æ SDK å¤äºæå¼ç¶æ, å¼åè æ¤æ¶åºè¯¥æ ¹æ®éè¯¯ç æç¤ºç¸åºçé误信æ¯, å¹¶ä¸è·³è½¬å°ç»å½é¡µé¢ 1115 console.log('ä¸¢å¤±è¿æ¥',error); 1116 }, 1117 onerror: (error)=> { 1118 console.log('åçé误',error); 1119 }, 1120 onroamingmsgs: (obj)=> { 1121 console.log('æ¶å°æ¼«æ¸¸æ¶æ¯', obj);
1122 obj.msgs.forEach(e=>{ 1123 this.handleMsg(e) 1124 }) 1125 }, 1126 onofflinemsgs: (obj)=> { 1127 console.log('æ¶å°ç¦»çº¿æ¶æ¯', obj); 1128 obj.msgs.forEach(e=>{ 1129 this.handleMsg(e) 1130 }) 1131 }, 1132 onmsg: (msg)=> { 1133 console.log('æ¶å°æ¶æ¯', msg); 1134 this.handleReply(false) 1135 // æ¶å°æ¶æ¯æ¶ä¹éè loading æ¶æ¯ 1136 this.hideLoadingMessage(); 1137 1138 // æ£æµçªå£æ¯å¦æ¾ç¤º 1139 const isWindowVisible = $(".smartService.show").length > 0; 1140 1141 if (!isWindowVisible) { 1142 // çªå£éèç¶æä¸æ¶å°æ¶æ¯ï¼å¢å æªè¯»è®¡æ° 1143 this.unreadMessageCount++; 1144 } 1145 1146 this.handleMsg(msg,true) 1147 1148 // æ´æ°æªè¯»è§æ 1149 this.updateUnreadBadge(); 1150 1151 // è·é©¬ç¯ï¼ä» å¨çªå£æªæå¼ä¸æ¯å®¢ææ¶æ¯æ¶è§¦å 1152 if (!isWindowVisible && msg.from == this.settings.account) { 1153 let invitationType = this.inviteSet && this.inviteSet.invitation && this.inviteSet.invitation.invitationType 1154 if (invitationType == 1 || invitationType == 3) { 1155 let hasStrategyType = false 1156 if (msg.type === 'custom') { 1157 try { 1158 let msgObject = JSON.parse(msg.content) 1159 hasStrategyType = !!(msgObject.aiAgent && msgObject.aiAgent.strategyType) 1160 } catch(e) {} 1161 } 1162 if (hasStrategyType) { 1163 this.showMarquee(msg) 1164 } 1165 } 1166 } 1167 1168 if(!this.res.enableSmartCustomer){ 1169 //å¯å¨è®¿å®¢æ åºçè®¡æ¶ 1170 this.noAnswerFun() 1171 //æ¸ é¤ä¼ä¸æ åºçä»»å¡ 1172 clearTimeout(this.companyNoAnswerTimeout) 1173 } 1174 } 1175 }); 1176 }) 1177 } 1178 //ä¼ä¸æ åºçè¯æ¯ 1179 companyNoAnswerFun(){ 1180 console.log('ä¼ä¸æ åºçå¼å§è®¡æ¶') 1181 let time = this.automaticReply.companyNoAnswerInterval 1182 let unit = this.automaticReply.companyNoAnswerIntervalUnit == 'm' ? 60 : 1 1183 this.companyNoAnswerTimeout = setTimeout(()=>{ 1184 let msg = { 1185 type:"text", 1186 from:this.settings.account, 1187 text:this.automaticReply.companyNoAnswerSpeech 1188 } 1189 this.handleMsg(msg) 1190 clearTimeout(this.companyNoAnswerTimeout) 1191 },time*unit*1000) 1192 } 1193 //访客æ åºçè¯æ¯ 1194 noAnswerFun(){ 1195 console.log('访客æ åºçå¼å§è®¡æ¶') 1196 let time = this.automaticReply.noAnswerInterval 1197 let unit = this.automaticReply.noAnswerIntervalUnit == 'm' ? 60 : 1 1198 this.customreNoAnswerTimeout = setTimeout(()=>{ 1199 let msg = { 1200 type:"text", 1201 from:this.settings.account, 1202 text:this.automaticReply.noAnswerSpeech 1203 } 1204 this.handleMsg(msg) 1205 clearTimeout(this.customreNoAnswerTimeout) 1206 },time*unit*1000) 1207 } 1208 //é»è®¤èªå¨è¯æ¯ 1209 greetingFun(){ 1210 let msgList = [] 1211 for(var i = 0; i<this.automaticReply.greetingRotationNum; i++){ 1212 if(this.automaticReply.greeting1){ 1213 msgList.push({ 1214 type:"text", 1215 from:this.settings.account, 1216 text:this.automaticReply.greeting1 1217 }) 1218 } 1219 if(this.automaticReply.greeting2){ 1220 msgList.push({ 1221 type:"text", 1222 from:this.settings.account, 1223 text:this.automaticReply.greeting2 1224 }) 1225 } 1226 if(this.automaticReply.greeting3){ 1227 msgList.push({ 1228 type:"text", 1229 from:this.settings.account, 1230 text:this.automaticReply.greeting3 1231 }) 1232 } 1233 } 1234 console.log(msgList) 1235 var i = 0 1236 this.handleMsg(msgList[i]) 1237 this.greeting = setInterval(()=>{ 1238 i++ 1239 if(i>=msgList.length){ 1240 i = 0 1241 clearInterval(this.greeting) 1242 return 1243 } 1244 this.handleMsg(msgList[i]) 1245 },this.automaticReply.speechContentInterval*1000) 1246 } 1247 //宿¶éåºä»»å¡ 1248 timeLogout(){ 1249 this.timeLogoutEvent = setInterval(()=>{ 1250 this.tTime++ 1251 // console.log(this.tTime,this.time) 1252 if(this.tTime>=this.time){ 1253 this.renderLogout() 1254 } 1255 },1000) 1256 } 1257 //æ¸²ææ¶æ¯ 1258 handleMsg(msg,k){ 1259 if(msg.from == this.settings.account){ 1260 if(!msg.time){ 1261 msg.time = +new Date() 1262 } 1263 $('.sm_output').append(this.adminHtml(msg,k)) 1264 }else if(msg.from == this.res.account){ 1265 if(!msg.time){ 1266 msg.time = +new Date() 1267 } 1268 $('.sm_output').append(this.customerHtml(msg)) 1269 }else if(msg.from == 'reply'){ 1270 if(!msg.time){ 1271 msg.time = +new Date() 1272 } 1273 $('.sm_output').append(this.adminHtml(msg)) 1274 }else{ 1275 $('.sm_output').append(msg) 1276 } 1277 1278 // åªæ¾ç¤ºæåä¸ä¸ª aiAgent_reply 1279 const $allReplies = $('.sm_output .aiAgent_reply') 1280 $allReplies.hide() 1281 $allReplies.last().show() 1282 $allReplies.each(function() { 1283 if($(this).find('a.clicked').length) { 1284 $(this).show() 1285 } 1286 }) 1287 // adminHtml æ§è¡å®åï¼sm_msg 䏿å¯è§ç aiAgent_reply åç» msgcon å mb20ï¼å¦åç§»é¤ 1288 $('.sm_output .sm_msg').each(function() { 1289 const $aiAgentReply = $(this).find('.aiAgent_reply') 1290 $(this).find('.msgcon').toggleClass('mb20', $aiAgentReply.length > 0 && $aiAgentReply.is(':visible')) 1291 }) 1292 1293 // å¦æç¨æ·æªç»å½ï¼æ£æ¥æ¯å¦éè¦æ·»å ç»å½æç¤ºå°å½å¤©ç¬¬ä¸æ¡æ¶æ¯ 1294 if (this.res.memberFlag) { 1295 // æ£æ¥æ¯å¦å·²ç¡®è®¤æªç»å½ 1296 if (this.isLoginFlag === false) { 1297 // å»¶è¿æ§è¡ï¼ç¡®ä¿DOM已渲æ 1298 setTimeout(() => { 1299 this.addLoginPromptToFirstMessage(); 1300 }, 0); 1301 } else if (this.isLoginFlag === null) {
1302 // 妿尿ªç¡®å®ç»å½ç¶æï¼å è·åç¶æåå³å® 1303 // this.isLogin().then(() => { 1304 // if (this.isLoginFlag === false) { 1305 // setTimeout(() => { 1306 // this.addLoginPromptToFirstMessage(); 1307 // }, 0); 1308 // } 1309 // }); 1310 } 1311 } 1312 1313 1314 $('.sm_output').scrollTop(99999999) 1315 $('.sm_output a[href!="javascript:;"]').attr("target","_blank") 1316 $('.sm_output a[href^="mailto:"],.sm_output a[href^="tel:"]').attr("rel","nofollow") 1317 setTimeout(()=>{ 1318 $('.sm_output').scrollTop(99999) 1319 },1000) 1320 1321 this.tTime=0; 1322 1323 // æ£æ¥æ¯å¦æ¯æ¼«æ¸¸æ¶æ¯å¹¶ä¸çªå£å·²ç»æ¾ç¤º 1324 const isRoamingMsg = (msg.from == this.settings.account || msg.from == this.res.account || msg.from == 'reply') && 1325 !k; // k åæ°ä¸º false æ undefined æ¶è¡¨ç¤ºæ¯æ¼«æ¸¸æ¶æ¯ 1326 const isWindowVisible = $(".smartService.show").length > 0; 1327 if (isRoamingMsg && isWindowVisible && this.lastSendTime) { 1328 // å¦ææ¯æ¼«æ¸¸æ¶æ¯ä¸çªå£å·²æ¾ç¤ºï¼ä¸ä¹åç¹å»è¿åéæé® 1329 const msgTime = msg.time || +new Date(); 1330 if (msgTime > this.lastSendTime) { 1331 // å¦ææ¶æ¯æ¶é´å¨ç¹å»åéæé®ä¹åï¼æ·»å æç¤º 1332 this.addCurrentSessionTipIfNeeded(); 1333 // æ¸ é¤åéæ¶é´è®°å½ï¼é¿å é夿·»å æç¤º 1334 // this.lastSendTime = null; 1335 } 1336 } else { 1337 if (!this.lastSendTime && this.res.enableAgentFlag) { 1338 this.manageMessagesDisplay(); 1339 } 1340 } 1341 1342 // æ¾ç¤ºæåä¸ä¸ª .sm_msg.ad ä¸ç .aiAgent_relatedIssues 1343 this.showLastRelatedIssues(); 1344 } 1345 // æ·»å ç»å½æç¤ºå°æ¶æ¯å å®¹ä¸ 1346 addLoginPromptToFirstMessage() { 1347 // ææ¶åªæä¸¤ç§è¯è¨ 1348 const langArr = [ 1349 { "zh_CN": "ç»å½ä¼å,å¯äº«åæ´å¤ä¸å±æå¡å伿 " }, 1350 { "en": "Logged-in members, can enjoy more exclusive services and discounts" }, 1351 // { "de": "Angemeldete Mitglieder, können mehr exklusive Dienste und Rabatte genieÃen" }, 1352 // { "fr": "Les membres connectés, peuvent profiter de plus de services exclusifs et de réductions" }, 1353 // { "ru": "ÐвÑоÑизованнÑе ÑÑаÑÑники, могÑÑ Ð½Ð°ÑлаждаÑÑÑÑ Ð±Ð¾Ð»ÑÑим колиÑеÑÑвом ÑкÑклÑзивнÑÑ ÑÑлÑг и Ñкидок" }, 1354 // { "pt": "Membros conectados, podem desfrutar de mais serviços exclusivos e descontos" }, 1355 // { "ko": "ë¡ê·¸ì¸í íì, ë ë§ì ë ì ìë¹ì¤ì í ì¸ ííì ë릴 ì ììµëë¤" }, 1356 // { "ja": "ãã°ã¤ã³ä¼å¡, ããå¤ãã®å°ç¨ãµã¼ãã¹ã¨å²å¼ããæ¥½ãã¿ããã ãã¾ã" }, 1357 // { "es": "Los miembros conectados, pueden disfrutar de más servicios exclusivos y descuentos" }, 1358 // { "ar": "Ø§ÙØ£Ø¹Ø¶Ø§Ø¡ اÙ٠سجÙÙÙ, ÙÙ ÙÙÙÙ Ø§ÙØ§Ø³ØªÙ تاع Ø¨Ù Ø²ÙØ¯ Ù Ù Ø§ÙØ®Ø¯Ù ات ÙØ§ÙØØ³Ù٠ات Ø§ÙØØµØ±ÙØ©" }, 1359 // { "it": "I membri connessi, possono godere di più servizi esclusivi e sconti" }, 1360 // { "bn": "লà¦à¦à¦¨ à¦à¦°à¦¾ সদসà§à¦¯, à¦à¦°à¦ বিশà§à¦· সà§à¦¬à¦¾ à¦à¦¬à¦ à¦à¦¾à¦¡à¦¼ à¦à¦ªà¦à§à¦ à¦à¦°à¦¤à§ পারà§à¦¨" }, 1361 // { "da": "Loggede medlemmer, kan nyde flere eksklusive tjenester og rabatte" }, 1362 // { "idn": "Anggota yang masuk, dapat menikmati lebih banyak layanan eksklusif dan diskon" }, 1363 // { "th": "สมาà¸à¸´à¸à¸à¸µà¹à¸¥à¹à¸à¸à¸à¸´à¸, สามารà¸à¹à¸à¹à¸à¸£à¸´à¸à¸²à¸£à¹à¸¥à¸°à¸ªà¸´à¸à¸à¸´à¸à¸´à¹à¸¨à¸©à¹à¸à¸´à¹à¸¡à¹à¸à¸´à¸¡à¹à¸à¹" }, 1364 // { "vi": "Thà nh viên Äã ÄÄng nháºp, có thá» táºn hưá»ng nhiá»u dá»ch vụ và ưu Äãi Äá»c quyá»n hÆ¡n" }, 1365 // { "tr": "GiriÅ yapmıŠüyeler, daha fazla özel hizmet ve indirimden yararlanabilir" }, 1366 // { "nl": "Ingelogde leden, kunnen genieten van meer exclusieve services en kortingen" }, 1367 // { "pl": "Zalogowani czÅonkowie, mogÄ korzystaÄ z wiÄcej wyÅÄ cznych usÅug i rabatów" }, 1368 // { "zh_HN": "ç»éæå¡,å¯äº«åæ´å¤å°å±¬æåååªæ " }, 1369 // { "cs": "PÅihlášenà Älenové, mohou užÃvat vÃce exkluzivnÃch služeb a slev" }, 1370 // { "ee": "Sisse logitud liikmed, saavad nautida rohkem eksklusiivseid teenuseid ja soodustusi" }, 1371 // { "fi": "Kirjautuneet jäsenet, voivat nauttia enemmän yksityiskohtaisia palveluita ja alennuksia" }, 1372 // { "el": "Îι ÏÏ Î½Î´ÎµÎ´ÎµÎ¼Îνοι μÎλη, μÏοÏοÏν να αÏολαÏÏÎ¿Ï Î½ ÏεÏιÏÏÏÏεÏÎµÏ Î±ÏοκλειÏÏικÎÏ Ï ÏηÏεÏÎ¯ÎµÏ ÎºÎ±Î¹ ÏÏοÏÏοÏÎÏ" },
1373 // { "hu": "A bejelentkezett tagok, élvezhetik a további kizárólagos szolgáltatásokat és kedvezményeket" }, 1374 // { "gg": "ÐÑ Ñд здÑйÑнивÑÑ ÑленÑв, можÑÑÑ ÑкоÑиÑÑаÑиÑÑ Ð´Ð¾Ð´Ð°Ñковими екÑклÑзивними поÑлÑгами Ñа знижками" }, 1375 // { "hr": "Prijavljeni Älanovi, mogu uživati viÅ¡e ekskluzivnih usluga i popusta" }, 1376 // { "ga": "Is féidir le baill logáilte isteach, tairbhe a bhaint as nÃos mó seirbhÃsà agus lascainnà eisiacha" }, 1377 // { "ro": "Membrii conectaÈi, pot beneficia de mai multe servicii Èi reduceri exclusive" }, 1378 // { "lv": "PierakstÄ«juÅ¡ies biedri, var izmantot vairÄk ekskluzÄ«vu pakalpojumu un atlaidi" }, 1379 // { "mt": "Il-membri logÄ¡ati, jistgħu jgawdu aktar servizzi u sconti eksklużivi" }, 1380 // { "sk": "Prihlásenà Älenovia, môžu užÃvaÅ¥ viac exkluzÃvnych služieb a zľav" }, 1381 // { "si": "à¶´à·âà¶»à·à·à· à¶à¶» à¶à¶à· à·à°à±à°¯à±à°², à·à·à¶©à· à¶´à·âරමà·à¶«à¶ºà¶ à·à·à·à·à· à·à·à·à· à·à· à·ÐºÐ¸Ð´ දà·à¶¸à· ලබ෠à¶à¶ à·à·à¶à·à¶º" }, 1382 // { "sv": "Inloggade medlemmar, kan njuta av fler exklusiva tjänster och rabatter" }, 1383 // { "lt": "PrisijungÄ nariai, gali naudotis daugiau iÅ¡skirtinių paslaugų ir nuolaidų" }, 1384 // { "ml": "à´²àµà´à´¿àµ» à´àµà´¯àµà´¤ à´ à´à´à´àµà´àµ¾, à´àµà´àµà´¤àµ½ à´ªàµà´°à´¤àµà´¯àµà´ à´¸àµà´µà´¨à´àµà´à´³àµà´ à´à´¿à´´à´¿à´µàµà´à´³àµà´ à´²à´à´¿à´àµà´àµà´" }, 1385 // { "bur": "áááºáá±á¬ááºáá¬á¸áá±á¬á¡áá½á²á·áááºáá»á¬á¸, ááá¯ááá¯á¡áá°á¸áááºáá¾ááºáá¬á¸áá±á¬áááºáá±á¬ááºáá¾á¯áá»á¬á¸áá¾áá·áºáá»á¾á±á¬á·á á»á±á¸áá»á¬á¸ááá¯áá¯á¶á¸á á½á²ááá¯ááºáááº" }, 1386 // { "kh": "ááá¶áá·áááááá¶áá á¼ááááá¸, á¢á¶á ááá½ááá¶ááááá¶áááá áá·ááá¶ááááá á»áááááááá·áááááááááááá" }, 1387 // { "la": "Membri qui sunt logati, pot profita de mai multe servicii si reduceri exclusive" }, 1388 // { "ph": "Ang mga miyembrong nakalog-in, ay maaaring mag-enjoy ng higit pang mga eksklusibong serbisyo at diskwento" }, 1389 // { "fa": "Ø§Ø¹Ø¶Ø§Û ÙØ§Ø±Ø¯ شدÙ, Ù ÛâØªÙØ§ÙÙØ¯ از خد٠ات ٠تخÙÛÙâÙØ§Û Ø§ÙØØµØ§Ø±Û Ø¨ÛØ´ØªØ±Û ÙØ°Øª Ø¨Ø¨Ø±ÙØ¯" }, 1390 // { "uk": "УвÑйÑовÑÑ Ñлени, можÑÑÑ ÑкоÑиÑÑаÑиÑÑ Ð´Ð¾Ð´Ð°Ñковими екÑклÑзивними поÑлÑгами Ñа знижками" }, 1391 // { "ta": "à®à®³à¯à®¨à¯à®´à¯à®¨à¯à®¤ à®à®±à¯à®ªà¯à®ªà®¿à®©à®°à¯à®à®³à¯, à®®à¯à®²à¯à®®à¯ à®à®¿à®±à®ªà¯à®ªà¯ à®à¯à®µà¯à®à®³à¯ மறà¯à®±à¯à®®à¯ தளà¯à®³à¯à®ªà®à®¿à®à®³à¯ à®à®¿à®à¯à®à¯à®à¯à®®à¯" }, 1392 // { "mn": "ÐÑвÑÑÑÑÑн гиÑүүд, илүү дÑÐ»Ñ Ð¸Ð¹Ð´ÑÑ ÑилдÑг үйлÑилгÑÑ Ð±Ð¾Ð»Ð¾Ð½ Ñ ÑмдÑал Ð°Ð²Ð°Ñ Ð±Ð¾Ð»Ð¾Ð¼Ð¶Ñой" }, 1393 // { "kk": "ÐÑÑÑÑÑ Ð¼Ò¯ÑелеÑ, көбÑÑек еÑклÑзивÑÑ ÒÑзмеÑÑÐµÑ Ð¼ÐµÐ½ жеңÑлдÑкÑÐµÑ Ð±ÐµÑÑледÑ" }, 1394 // { "hi": "लà¥à¤ à¤à¤¨ à¤à¤¿à¤ à¤à¤ सदसà¥à¤¯, ठधिठविशà¥à¤· सà¥à¤µà¤¾à¤à¤ à¤à¤° à¤à¥à¤à¥à¤ à¤à¤¾ à¤à¤¨à¤à¤¦ लॠसà¤à¤¤à¥ हà¥à¤" } 1395 ] 1396 let lang = this.currentLang || 'zh_CN'; 1397 console.log('å½å使ç¨è¯è¨', lang); 1398 let custText = langArr.filter(item => item[lang])[0][lang] 1399 const $output = $('.sm_output'); 1400 const $messages = $output.find('.sm_msg'); 1401 1402 // è·åä»å¤©çæ¥æï¼æ¶é´æ³ï¼ 1403 const today = new Date(); 1404 today.setHours(0, 0, 0, 0); 1405 const todayTimestamp = today.getTime(); 1406 1407 // æ¾å°ä»å¤©çç¬¬ä¸æ¡æ¶æ¯ 1408 let firstTodayMessage = null; 1409 $messages.each(function() { 1410 const msgTime = parseInt($(this).attr('data-time')) || 0; 1411 if (msgTime >= todayTimestamp) { 1412 firstTodayMessage = $(this); 1413 return false; // è·³åºå¾ªç¯ 1414 } 1415 }); 1416 1417 // 妿æ¾å°äºä»å¤©çç¬¬ä¸æ¡æ¶æ¯ï¼å¹¶ä¸è¿æ²¡ææ·»å ç»å½æç¤ºï¼åæ·»å 1418 if (firstTodayMessage && !firstTodayMessage.find('.login-prompt').length) { 1419 const $msgCon = firstTodayMessage.find('.msgcon .cItem').last(); 1420 if ($msgCon.length > 0) { 1421 // å¨msgcon䏿·»å ç»å½æç¤º 1422 const loginPrompt = $(`<div class="cItem login-prompt" style="font-weight: 600;"><a href="/login.html" target="_blank">
1422${custText.split(',')[0] || i18n.loginMember || 'ç»å½ä¼å'}</a>${custText.split(',')[1] || i18n.loginMore2 || 'å¯äº«åæ´å¤ä¸å±æå¡å伿 '}</div>`); 1423 $msgCon.after(loginPrompt); 1424 } else { 1425 // å¦ææ²¡æmsgconï¼æ·»å å°æ¶æ¯ä¸»ä½ä¸ 1426 // const loginPrompt = $(`<div class="cItem login-prompt" style="font-weight: 600;"><a href="/login.html">${custText.split(',')[0] || i18n.loginMember || 'ç»å½ä¼å'}</a>${custText.split(',')[1] || i18n.loginMore2 || 'å¯äº«åæ´å¤ä¸å±æå¡å伿 '}</div>`); 1427 // firstTodayMessage.after(loginPrompt); 1428 } 1429 } 1430 } 1431 addCurrentSessionTipIfNeeded() { 1432 const $output = $('.sm_output'); 1433 const $messages = $output.find('.sm_msg'); 1434 1435 // æ£æ¥æ¯å¦å·²åå¨æç¤º 1436 if ($output.find('.current-session-tip').length > 0) { 1437 return; // å·²åå¨æç¤ºï¼æ é忬¡æ·»å 1438 } 1439 1440 // åªæå¨ææ¶æ¯æ¶æ·»å æç¤º 1441 if ($messages.length > 0 && this.lastSendTime) { 1442 let firstNewMessage = null; 1443 1444 // éåæææ¶æ¯ï¼æ¾å°ç¬¬ä¸æ¡æ¶é´å¤§äº lastSendTime çæ¶æ¯ 1445 $messages.each(function() { 1446 const msgTime = $(this).data('time') || +new Date($(this).find('.time').text()); 1447 if (msgTime > this.lastSendTime) { 1448 firstNewMessage = $(this); 1449 return false; // è·³åºå¾ªç¯ 1450 } 1451 }.bind(this)); 1452 1453 // 妿æ¾å°äºç¬¬ä¸æ¡æ°æ¶æ¯ï¼å¨å®å颿·»å æç¤º 1454 if (firstNewMessage) { 1455 const tipElement = $(`<div class="current-session-tip" style="text-align: center; padding: 5px; color: #666; font-size: 12px;display:none">以䏿¯å½åä¼è¯</div>`); 1456 firstNewMessage.before(tipElement); 1457 } else { 1458 // å¦ææ²¡æ¾å°ï¼è¯´ææææ¶æ¯é½æ¯æ§çï¼å¨æåæ·»å æç¤º 1459 const tipElement = $(`<div class="current-session-tip" style="display: block; overflow: hidden; text-align: center; padding: 20px 5px; color: #666; font-size: 12px;display:none">以䏿¯å½åä¼è¯</div>`); 1460 $messages.last().before(tipElement); 1461 } 1462 } 1463 } 1464 //å®¢ææ¶æ¯ 1465 adminHtml(obj,k){ 1466 // mock æ°æ® 1467 // aiAgentèªå®ä¹æ¶æ¯&ç¸å ³å 容 1468 // obj.content = '{"aiAgent":{"msg":"å ¬å¸ç详ç»å°åä¿¡æ¯å¦ä¸ï¼\\n\\n- **å ¬å¸åç§°**ï¼å京å¸****ç§æè¡ä»½æéå ¬å¸\\n- **åå ¬å°ç¹**ï¼å京å¸å¤§å ´åºäº¦åºç»æµå¼ååº\\n- **èç³»æ¹å¼**ï¼\\n - 客æçµè¯ï¼400-000-0000\\n - æ»æºçµè¯ï¼+86-(0)000-8800880\\n - é®ç®±ï¼[email protected]\\n\\n以ä¸ä¿¡æ¯æä¾äºè¯¥å ¬å¸çåºæ¬èç³»æ¸ éåå°åï¼æ¹ä¾¿æ¨è¿è¡è¿ä¸æ¥çæ²éåèç³»ã","source":[{"http://1292842294.xuoumaill.cn/leader/1866749757845753856.html":"UUååæç« æä»¶æ¥çç¼è¾å
1468å²ä¹¦ç¾å·¥å ·çªå£å¸®å©ä¸å¿ååå24892iworiowirâ¦â¦&#â¦â¦&ï¿¥â¦â¦uwirä¼å µç²ç½ä¸orio"},{"http://1292842294.xuoumaill.cn/leader/1866749757845753856.html":"UUååæç« æä»¶æ¥çç¼è¾åå²ä¹¦ç¾å·¥å ·çªå£å¸®å©ä¸å¿ååå24892iworiowirâ¦â¦&#â¦â¦&ï¿¥â¦â¦uwirä¼å µç²ç½ä¸orio"},{"http://1292842294.xuoumaill.cn/leader/1866749757845753856.html":"UUååæç« æä»¶æ¥çç¼è¾åå²ä¹¦ç¾å·¥å ·çªå£å¸®å©ä¸å¿ååå24892iworiowirâ¦â¦&#â¦â¦&ï¿¥â¦â¦uwirä¼å µç²ç½ä¸orio"}],"relatedIssues":["ä½ çåè½å主è¦ç¨éæ¯ä»ä¹ï¼","æå¯ä»¥å¦ä½æ´å¥½å°ä½¿ç¨ä½ æ¥è§£å³æçé®é¢ï¼","ä½ ä¸å ¶ä»äººæºè½å©æç¸æ¯æä»ä¹ç¹è²æä¼å¿ï¼"]},"AIFlag":"æºå¨äºº","lang":"zh_CN","paramSort":["aiAgent"]}' 1469 // {"msg":"{\"AIFlag\":\"æºå¨äºº\",\"title\":\"æ¨å¥½ï¼æ¬¢è¿è®¿é®ä¸ä¼å¨åç§æè¡ä»½æéå ¬å¸ï¼ææ¯å®ç½æºè½å®¢æï¼å¾é«å ´ä¸ºæ¨æå¡ï¼åäº¬å¤§å ´çæ¨åæ¬¡æ¥è®¿ï¼ä¸ºæ¨ä»ç»ä¸ï¼æä»¬æå»ºç«ãSEOçæå¡ï¼è¯·é®æä»ä¹å¯ä»¥å¸®æ¨ï¼\",\"lang\":\"zh_CN\",\"paramSort\":[\"title\"]}"} 1470 // workOrderç±»å 1471 // obj.content = '{"workOrder":{"button":"æäº¤","input":[{"dataItem":[{"name":"æµè¯","value":"2223e09c89354279a30de70432403fea"},{"name":"ç¹ æ® å 符","value":"bb0f933e46024a4e8155df363ee6df67"}],"code":"woClassifyId","dataType":"select","dataSubType":"redio","name":"å·¥åç±»å","required":1},{"code":"custDesc","dataType":"multiTxt","dataSubType":"","name":"å·¥åæè¿°","required":0},{"code":"custLinkName","dataType":"text","dataSubType":"singleText","name":"è系人","required":1},{"code":"custLinkMobile","dataType":"mobile","dataSubType":"","name":"èç³»äººææº","required":1},{"code":"custLinkEmail","dataType":"email","dataSubType":"","name":"è系人é®ç®±","required":0}],"method":"post","title":"å建工å","url":"/visitormanager/intelligent/front/addWork?instance=DEMO_d7b32a226a134f7a9daf2e2e8720249f&tenantId=311227"},"AIFlag":"æºå¨äºº","paramSort":["workOrder"]}' 1472 // thirdTool 1473 // obj.content = '{"thirdTool":{"name":"fddfdfdf","type":1,"account":"233445","threePartyTools":{"name":"","type":1,"account":""}},"AIFlag":"æºå¨äºº","paramSort":["thirdTool"]}' 1474 // obj.content = { 1475 // "AIFlag": "æºå¨äºº", 1476 // "internationalEntry": "æ£å¨ä¸ºæ¨è½¬æ¥ä¸...", 1477 // "paramSort": [ 1478 // "internationalEntry" 1479 // ] 1480 // } 1481 1482 let msg = [] 1483 let msg2 = [] 1484 let w100 = '' 1485 let reply = `` 1486 let mb20 = '' 1487 // console.log(obj, this.res.replyResearch, k, 'adasdasdasdobj'); 1488 if(obj.content) { 1489 try { 1490 let contentObj = JSON.parse(obj.content) 1491 if(contentObj.aiAgent && contentObj.aiAgent.relatedIssues) { 1492 if(this.res.replyResearch && k) { 1493 const _isClicked = localStorage.getItem('replyResearch_' + obj.time) 1494 const _dc = _isClicked ? ' disabled' : '' 1495 reply = `<div class="replys aiAgent_reply" data-time="${obj.time}"> 1496 <a href="javascript:;" class="replyBtn replyY${_dc}" data-id="1" msg="${encodeURIComponent(contentObj.aiAgent.msg)}"><svg t="1727148138116" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="957" width="200" height="200"><path d="M881.504 356.352l-200.864 0.576c11.2-20.32 66.432-127.488 51.808-242.144-6.144-48.16-37.568-85.376-88.576-104.768-19.936-7.552-117.6-20.928-147.168 6.336-20.512 20.224-18.944 47.552-17.088 79.232 0.864 15.264 1.888 32.576 1.056 50.592-4.992 52.032-11.936 79.744-25.696 102.272-41.6 68.288-112 105.536-127.04 107.968H35.648c-19.68 0-35.648 15.36-35.648 34.336v447.552c0 18.976 15.968 34.336 35.648 34.336l299.776-0.192 0.896 0.736c26.592 21.248 97.28 77.664 214.24 77.664h234.752c65.28 0 117.984-34.496 137.504-90.016l0.64-1.984c2.4-8.576 9.152-27.872 16.96-50.24 31.296-89.6 83.68-239.552 83.68-321.088 0-84.576-50.624-131.168-142.592-131.168zM71.264 804h112.8V425.056H71.264v378.944z m801.6-17.28c-8.48 24.384-14.72 42.24-17.824 52.928-14.048 38.4-53.344 42.56-69.728 42.56h-234.752c-91.296 0-145.6-43.36-168.768-61.888-11.52-9.216-20.672-16.512-35.328-16.512H255.296V425.056h72.64c40.64 0 136.48-56.576 188.48-141.824 22.4-36.736 30.08-77.248 35.296-132.288a534.4 534.4 0 0 0-0.96-59.2c-0.448-7.616-0.96-16.384-0.96-22.976 20.416-1.184 57.28 1.216 67.968 5.12 27.04 10.272 40.992 25.92 43.968 49.28 12.256 96.192-38.176 191.008-43.968 201.504l-1.152 2.176a66.848 66.848 0 0 0 4.864 66.464 72.64 72.64 0 0 0 60.8 31.68h199.232c59.68 0 71.36 22.944 71.36 62.528 0 70.304-52.032 219.2-80 299.2z" p-id="958"></path></svg>${i18n.sms_resolved}</a><a href="javascript:;" class="replyBtn replyN${_dc}" data-id="0" msg="${encodeURIComponent(contentObj.aiAgent.msg)}">
1496<svg t="1727148138116" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="957" width="200" height="200"><path d="M881.504 356.352l-200.864 0.576c11.2-20.32 66.432-127.488 51.808-242.144-6.144-48.16-37.568-85.376-88.576-104.768-19.936-7.552-117.6-20.928-147.168 6.336-20.512 20.224-18.944 47.552-17.088 79.232 0.864 15.264 1.888 32.576 1.056 50.592-4.992 52.032-11.936 79.744-25.696 102.272-41.6 68.288-112 105.536-127.04 107.968H35.648c-19.68 0-35.648 15.36-35.648 34.336v447.552c0 18.976 15.968 34.336 35.648 34.336l299.776-0.192 0.896 0.736c26.592 21.248 97.28 77.664 214.24 77.664h234.752c65.28 0 117.984-34.496 137.504-90.016l0.64-1.984c2.4-8.576 9.152-27.872 16.96-50.24 31.296-89.6 83.68-239.552 83.68-321.088 0-84.576-50.624-131.168-142.592-131.168zM71.264 804h112.8V425.056H71.264v378.944z m801.6-17.28c-8.48 24.384-14.72 42.24-17.824 52.928-14.048 38.4-53.344 42.56-69.728 42.56h-234.752c-91.296 0-145.6-43.36-168.768-61.888-11.52-9.216-20.672-16.512-35.328-16.512H255.296V425.056h72.64c40.64 0 136.48-56.576 188.48-141.824 22.4-36.736 30.08-77.248 35.296-132.288a534.4 534.4 0 0 0-0.96-59.2c-0.448-7.616-0.96-16.384-0.96-22.976 20.416-1.184 57.28 1.216 67.968 5.12 27.04 10.272 40.992 25.92 43.968 49.28 12.256 96.192-38.176 191.008-43.968 201.504l-1.152 2.176a66.848 66.848 0 0 0 4.864 66.464 72.64 72.64 0 0 0 60.8 31.68h199.232c59.68 0 71.36 22.944 71.36 62.528 0 70.304-52.032 219.2-80 299.2z" p-id="958"></path></svg>${i18n.sms_unresolved}</a> 1497 </div>` 1498 } 1499 } 1500 } catch(e) {} 1501 } 1502 if(obj.type=="text"){ 1503 msg.push(this.getMsg(obj.text,"text")) 1504 }else if(obj.type=="custom"){ 1505 try{ 1506 let msgObject = JSON.parse(obj.content) 1507 if(msgObject.lang) { 1508 this.currentLang = msgObject.lang; 1509 } 1510 for(var i in msgObject.paramSort){ 1511 let key = msgObject.paramSort[i] 1512 let msgDom = this.getMsg(msgObject[key],key,k) 1513 if(key!="card" && key!="form" && key!="knowledge"){ 1514 if(msgDom){ 1515 msg.push(msgDom) 1516 } 1517 if(key=='questionTip'){ 1518 w100 = 'w100' 1519 } 1520 if(key=='aiAgent') { 1521 mb20 = 'mb20' 1522 msg.push(reply) 1523 } 1524 }else{ 1525 msg2.push(msgDom) 1526 } 1527 } 1528 }catch(e){} 1529 } 1530 let msgdom = `` 1531 if(msg.length>0){ 1532 msgdom = `<div class="msgcon ${w100} ${mb20}">${msg.join("")}</div>` 1533 } 1534 let readdom = `` 1535 if(this.settings.voiceSwitch==1){ 1536 readdom = `<a href="javascript:;" class="sms_read"><svg t="1758765065638" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="19162" width="128" height="128"><path d="M534.002 120.373c-9.072 0-18.606 3.172-26.314 9.534L280.869 325.875H121.643c-34.475 0-62.154 27.679-62.154 61.702l-0.452 268.551c0 34.023 28.131 62.145 62.606 62.145h161.494l223.648 176.016c8.159 6.805 17.241 9.517 26.313 9.517 21.761 0 41.73-16.782 41.73-41.271l0.904-700.873c0.462-24.508-19.951-41.289-41.73-41.289z m-20.873 699.968L321.244 669.276c-10.889-8.612-24.498-13.148-38.107-13.148H120.73l0.913-268.108 159.226-0.442c14.973 0 29.034-5.458 40.375-14.974L514.04 206.121l-0.911 614.22zM696.409 308.633c-14.07-9.516-33.58-5.44-42.652 8.63-9.517 14.052-5.44 33.562 8.629 42.635 48.075 32.215 77.119 85.288 77.119 141.992 0 54.879-27.219 106.605-72.582 138.803-14.07 9.994-17.242 29.044-7.266 43.096 5.901 8.63 15.417 13.166 25.41 13.166 6.344 0 12.688-1.824 17.686-5.9 61.702-44 98.436-114.775 98.436-189.625-0.001-77.118-39.002-149.241-104.78-192.797z" p-id="19163"></path>
1536<path d="M827.503 195.684c-12.705-11.341-32.215-10.438-43.557 2.268-11.34 12.705-10.419 32.198 2.269 43.539 74.407 66.699 117.043 161.502 117.043 260.399 0 96.629-39.003 186.435-109.777 253.134-12.244 11.784-13.148 31.294-1.364 43.539 5.9 6.361 14.07 9.533 22.682 9.533 7.708 0 15.435-2.729 21.318-8.63C919.135 720.541 964.96 614.839 964.96 501.43c0.442-115.678-49.458-227.263-137.457-305.746z" p-id="19164"></path></svg></svg></a>` 1537 } 1538 if(msg.length>0 || msg2.length>0){ 1539 return ` 1540 <div class="sm_msg ad ${obj.from=='reply'?'sm_reply':''}" data-time="${obj.time}"> 1541 <div class="msgtitle"> 1542 <span class="name">${this.settings.name}</span> 1543 <span class="time">${$.formatDate(new Date(obj.time),'yyyy-MM-dd hh:mm')}</span> 1544 ${readdom} 1545 </div> 1546 ${msgdom} 1547 ${msg2.join("")} 1548 </div> 1549 ` 1550 }else{ 1551 return `` 1552 } 1553 } 1554 isArray(it){ 1555 return Object.prototype.toString.call(it) === "[object Array]" 1556 } 1557 //æ¶æ¯æç±»åè¿åç»æ 1558 getMsg(value,type,k){ 1559 if(!value || value.length==0 || (value.input && value.input.length==0)){ 1560 return `` 1561 } 1562 switch(type){ 1563 case 'text': 1564 case 'title': 1565 return `<div class="cItem">${marked.parse(emo.symbolToHtml(value))}</div>`; 1566 case 'image': 1567 return `<div class="cItem"><img src="${$.handleDataImg(value)}" alt="img" la="la" /></div>`; 1568 case 'button': 1569 let arr = [] 1570 value.forEach(e=>{ 1571 arr.push(`<a href="javascript:;" data-url="${e.url}" >${e.name}</a>`) 1572 }) 1573 return `<div class="cItem msgbtn">${arr.join("")}</div>`; 1574 case 'questionTip': 1575 let tips = [] 1576 value.forEach((e,i)=>{ 1577 tips.push(`<div class="quea"><a href="javascript:;" data-url="${e.url}">${e.name}</a></div>`) 1578 }) 1579 return `<div class="cItem msgquestion">${tips.join("")}</div>`; 1580 case 'knowledge': 1581 return this.getKnowledge(value,type,k) 1582 case 'card': 1583 return `<div class="cardInfo" data-url="${value.url}"> 1584 <div class="cardmark"><span>${i18n.sms_card}</span><img src="/npublic/commonjs/smartService/zs.png" alt="zs" la="la" /></div> 1585 <div class="cinfo"> 1586 <div class="cardImg"><img src="${$.handleDataImg(value.headImg)}" alt="head" la="la" /></div> 1587 <div class="cardName"> 1588 <p class="name">${value.name}</p> 1589 <p class="label">${value.role}</p> 1590 </div> 1591 </div> 1592 </div>`; 1593 case 'form': 1594 let formItems = [] 1595 console.log(value.input,12345) 1596 value.input.forEach(e=>{ 1597 let item = `` 1598 if(e.fixed==1){ 1599 if(e.ishide===false || e.showName || e.note){ 1600 item = this.getFixedFormItem(e) 1601 }else if(e.ishide===undefined){ 1602 let k = e.noRequired ? false : true 1603 item = this.getFixedFormItem(e,k) 1604 } 1605 }else if(e.fixed==0 && !e.ishide){ 1606 item = this.getFormItem(e) 1607 }else if(e.fixed == undefined){ 1608 item = this.getFixedFormItem(e,true) 1609 } 1610 if(item){ 1611 formItems.push(item) 1612 } 1613 }) 1614 let aggree = `` 1615 let icon = `` 1616 if(value.msgAuthFlag){ 1617 aggree = `<div class="formIt aggree"> 1618 <input type="checkbox" name="as" id="as" /> 1619 <label class="formItLabel" for="as">${value.msgAuth}</label> 1620 </div>` 1621 icon = `<svg t="1723621189390" class="icon" viewB
1621ox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="1223" width="200" height="200"><path d="M417.1264 947.4048L315.392 621.568l442.368-293.6832-476.928 233.8304L50.0736 311.552a45.568 45.568 0 0 1 30.7712-76.3904l841.6256-50.4832a45.568 45.568 0 0 1 40.7552 70.6048L498.688 958.9248a45.568 45.568 0 0 1-81.5104-11.52z" p-id="1224"></path></svg>` 1622 } 1623 return `<div class="msgcon msgform" progressId="${value.progressId}"> 1624 ${formItems.join("")} 1625 ${aggree} 1626 <div class="formIt"><a href="javascript:;" class="p_sub">${icon}${i18n.sms_submit}</a></div> 1627 </div>`; 1628 case "thirdTool": 1629 let thirdItems = this.isArray(value) ? value : [value]; 1630 let links = thirdItems.map(item => { 1631 let itemLink = ''; 1632 switch (item.type) { 1633 1634 case 1: // QQä¼ä¸ç 1635 itemLink = `<a href="tencent://message/?uin=${item.account}" data-name="${item.name}" class="thirdToolMedia"><svg t="1766971256390" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="77662" width="200" height="200"><path d="M499.073251 971.1616c-6.8096-4.096-16.384-10.8544-23.9616-10.8544-5.9392 0-13.7216 5.7344-20.48 9.3696a71.0144 71.0144 0 0 1-20.48 5.12l3.1744-17.3568 25.2416-17.3568h47.5648l5.6832 34.4064a43.52 43.52 0 0 1-16.896-3.4304z m-193.9456 50.1248c-96.2048 4.5056-176.0256-28.16-178.2784-72.96s73.9328-84.736 170.1376-89.0368 176.0256 28.16 178.2784 72.96-73.9328 84.5312-170.1376 89.0368z m340.0704 0c-96.1536-4.5056-172.288-44.4416-170.0352-89.2416s81.92-77.4656 178.1248-72.96 172.288 44.4416 170.0352 89.2416-81.92 77.4656-178.1248 72.96z m0 0" fill="#F2B624" p-id="77663"></path><path d="M474.702051 961.6896c-198.2976 0-359.8848-131.072-359.8848-338.6368 0-203.7248 160.768-368.64 359.0656-368.64s359.0656 165.1712 359.0656 368.64c0 206.336-159.9488 338.6368-358.4 338.6368z m421.8368-162.2016c-25.088 51.6096-167.3728-145.92-98.6624-348.16 0 0 174.08 174.4896 98.6624 348.16z m-841.2672 0.0512c-78.1824-170.3424 92.7744-349.8496 92.7744-349.8496 70.0416 200.8064-67.6864 401.1008-92.7744 349.8496z m0 0" fill="#191919" p-id="77664"></path><path d="M198.631651 644.2496c0 164.9152 109.312 296.192 276.7872 296.192s275.6096-131.2768 275.6096-296.192c0-157.2864-119.3984-277.0432-276.224-277.0432s-276.1728 119.552-276.1728 277.0432z m0 0" fill="#FAFAFB" p-id="77665"></path><path d="M790.708451 390.8608c10.24 0 18.6368 4.0448 18.6368 9.0624s-7.0656 29.7472-17.3568 29.7472-19.9168-24.7808-19.9168-29.7472 8.3456-9.0624 18.6368-9.0624z m-632.064 1.3312c10.24 0 18.3296 4.5056 18.3296 10.24s-8.0896 30.72-18.176 30.72-18.432-24.9856-18.432-30.72 8.192-10.24 18.3296-10.24z m0 0" fill="#D32F19" p-id="77666"></path><path d="M801.562851 343.1424c-5.12 183.808-56.32 230.0928-327.68 230.0928s-327.68-44.032-327.68-227.9424C146.049251 144.5888 292.583651 0 473.268451 0s333.312 163.0208 328.2432 343.04z m0 0" fill="#191919" p-id="77667"></path><path d="M352.231651 777.0112c-26.5728 0.7168-88.6784-7.2192-104.704-24.9344-6.7584-7.424-8.0384-12.032-8.0384-29.0304a655.36 655.36 0 0 1 20.1728-165.8368c64.6656-72.8064 112.64 32.4608 112.64 32.4608v167.2192a19.7632 19.7632 0 0 1-20.0704 20.1216z m122.88-134.2464c-165.5808 0-323.328-82.4832-364.3392-144.9472 1.7408-3.84 21.4016-73.1648 29.4912-97.536 16.9472 35.84 112.64 144.1792 334.7968 144.1792s321.792-119.7568 333.7728-148.48c12.1856 35.84 26.6752 94.4128 28.4672 101.632-64.512 84.7872-216.064 144.9472-362.2912 144.9472z m0 0" fill="#D32F19" p-id="77668"></path><path d="M331.751651 252.5184c-1.8944-48.0768 24.1152-88.2176 58.0608-89.5488s62.976 35.84 64.8192 84.1728S430.465251 335.36 396.519651 337.0496 333.492451 300.544 331.751651 252.5184z m163.84-2.56c0-48.0768 27.5456-87.04 61.44-87.04s61.44 38.9632 61.44 87.04-27.5456 87.04-61.44 87.04-61.44-38.9632-61.44-87.04z m0 0" fill="#FFFFFF" p-id="77669"></path><path d="M622.311651 461.3632c-71.68 37.376-90.624 59.0336-148.48 59.0848-56.32 0-76.4928-21.7088-148.48-59.0848-112.9984-58.7264-62.5664-63.6416 9.4208-85.0944 42.6496-12.6976 101.3248-18.7392 139.1616-18.7392s96.4608 6.1952 139.1616 18.8928c71.936 21.4016 122.368 26.368 9.2672 85.0944z m0 0" fill="#EFB024" p-id="77670"></path><path d="M649.191651 408.7296s-22.272 31.4368-82.944 53.6576c-31.744 11.6224-45.056 39.1168-91.3408 39.1168s-59.392-27.3408-91.0848-39.1168c-59.6992-22.4768-82.7904-53.6576-82.7904-53.6576 13.4656 9.9328 67.072 49.6128 174.08 49.6128s160.8192-39.8848 174.08-49.6128z m0 0" fill="#8A3322" p-id="77671"></path><path d="M579.252451 275.6096a8.1408 8.1408 0 0 1-8.3968-7.8336v-1.792c0-20.48-8.2944-36.3008-18.944-36.3008s-18.944 15.9232-18.944 36.3008v1.792a8.448 8.448 0 0 1-16.7936 0v-1.792c0-30.72 14.7456-51.968 35.84-51.968s35.84 21.3504 35.84 51.968v1.792a8.1408 8.1408 0 0 1-8.6016 7.8336z m-145.1008-24.4736c1.792 22.6304-10.5472 42.7008-27.5456 44.9024
1635s-32.2048-14.336-33.9968-36.9664 10.3424-42.7008 27.4944-44.9024 32.256 14.336 34.048 36.9664z m0 0" fill="#191919" p-id="77672"></path><path d="M423.911651 249.088c0 8.448-4.096 15.7184-9.7792 16.1792s-10.24-5.9904-10.6496-14.4896 4.1472-15.7184 9.7792-16.2304 10.24 6.0416 10.6496 14.5408z m0 0" fill="#FFFFFF" p-id="77673"></path></svg>${item.name}</a>`; 1636 break; 1637 case 2: // é¿éæºæº 1638 // itemLink = `wangwang://sendmsg?uid=${item.account}`; 1639 itemLink = `<a href="http://amos.alicdn.com/getcid.aw?v=2&uid=${item.account}&site=cntaobao&s=2&groupid=0&charset=utf-8" data-name="${item.name}"><svg t="1766971781975" class="icon" viewBox="0 0 1097 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="78267" width="200" height="200"><path d="M597.15072 121.12384c-86.82496-68.02432-246.528-120.17152-246.528-120.17152s39.92576 66.85184 47.36 141.97248c-179.63008 59.54048-308.74624 222.208-308.74624 413.84448 0 241.88416 205.8752 438.05184 459.77088 438.05184S1008.64 798.64832 1008.64 556.69248c0-226.45248-180.224-412.60032-411.42272-435.56352l-0.06656-0.00512z" fill="#33C9F2" p-id="78268"></path><path d="M580.75648 384.14848c-38.76352 9.87648-56.39168 22.08768-91.86816 29.25568 39.35232 22.16448 70.72768 98.37568 29.84448 171.008 37.15584 0 59.24352-1.82784 92.96384-1.82784 24.64768-39.49568 25.52832-152.86784-31.01184-198.43584h0.07168z m245.53984-28.38016c-38.62016 9.94816-56.24832 22.16448-91.79648 29.25568 39.424 22.08768 70.72768 98.37568 29.98784 171.008 37.08416 0 59.17184-1.82784 92.96384-1.82784 24.576-39.49568 25.45664-152.72448-31.1552-198.43584z" fill="" p-id="78269"></path><path d="M217.53856 594.7136c-10.368 19.59936-39.34208 16.91648-45.3888-4.41344-14.70976-51.84-27.25376-131.5584 1.93024-206.15168 63.09888-161.28 258.92864-222.0544 258.92864-222.0544s-22.59456-105.37984-51.90144-122.12736C476.19072 65.5872 548.50048 139.8272 548.50048 139.8272s93.30688 0.80384 186.79296 47.96928c21.62688 10.91072 15.56992 43.38176-8.48896 46.16704-165.91872 19.23072-391.0656 137.2928-509.26592 360.75008z" fill="#78DBF6" p-id="78270"></path><path d="M386.6368 39.96672s55.8848 70.90176 52.224 108.44672l-19.5072 7.7568s4.05504-57.40032-32.7168-116.20352zM401.92 164.1472s-312.32 90.88-261.12 404.48c6.4 35.84 15.62112 39.34208 15.62112 39.34208s-17.7152-163.93728 45.81888-267.18208 199.68-176.64 199.68-176.64z" fill="#FFFFFF" p-id="78271"></path></svg>${item.name}</a>`; 1640 break; 1641 case 3: // é¿éæºæºE客æ 1642 itemLink = `<a href="http://amos.alicdn.com/getcid.aw?v=2&uid=${item.account}&site=cntaobao&s=2&groupid=0&charset=utf-8" data-name="${item.name}"><svg t="1766971781975" class="icon" viewBox="0 0 1097 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="78267" width="200" height="200"><path d="M597.15072 121.12384c-86.82496-68.02432-246.528-120.17152-246.528-120.17152s39.92576 66.85184 47.36 141.97248c-179.63008 59.54048-308.74624 222.208-308.74624 413.84448 0 241.88416 205.8752 438.05184 459.77088 438.05184S1008.64 798.64832 1008.64 556.69248c0-226.45248-180.224-412.60032-411.42272-435.56352l-0.06656-0.00512z" fill="#33C9F2" p-id="78268"></path><path d="M580.75648 384.14848c-38.76352 9.87648-56.39168 22.08768-91.86816 29.25568 39.35232 22.16448 70.72768 98.37568 29.84448 171.008 37.15584 0 59.24352-1.82784 92.96384-1.82784 24.64768-39.49568 25.52832-152.86784-31.01184-198.43584h0.07168z m245.53984-28.38016c-38.62016 9.94816-56.24832 22.16448-91.79648 29.25568 39.424 22.08768 70.72768 98.37568 29.98784 171.008 37.08416 0 59.17184-1.82784 92.96384-1.82784 24.576-39.49568 25.45664-152.72448-31.1552-198.43584z" fill="" p-id="78269"></path><path d="M217.53856 594.7136c-10.368 19.59936-39.34208 16.91648-45.3888-4.41344-14.70976-51.84-27.25376-131.5584 1.93024-206.15168 63.09888-161.28 258.92864-222.0544 258.92864-222.0544s-22.59456-105.37984-51.90144-122.12736C476.19072 65.5872 548.50048 139.8272 548.50048 139.8272s93.30688 0.80384 186.79296 47.96928c21.62688 10.91072 15.56992 43.38176-8.48896 46.16704-165.91872 19.23072-391.0656 137.2928-509.26592 360.75008z" fill="#78DBF6" p-id="78270"></path><path d="M386.6368 39.96672s55.8848 70.90176 52.224 108.44672l-19.5072 7.7568s4.05504-57.40032-32.7168-116.20352zM401.92 164.1472s-312.32 90.88-261.12 404.48c6.4 35.84 15.62112 39.34208
164215.62112 39.34208s-17.7152-163.93728 45.81888-267.18208 199.68-176.64 199.68-176.64z" fill="#FFFFFF" p-id="78271"></path></svg>${item.name}</a>`; 1643 break; 1644 case 4: // Skype 1645 itemLink = `<a href="skype:${item.account}?chat" data-name="${item.name}"><svg t="1766971736736" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="78116" width="200" height="200"><path d="M36.865067 421.013333c-0.32 1.749333-0.554667 3.52-0.853334 5.269334 0.896 1.621333 1.706667 3.264 2.624 4.864l-1.770666-10.133334zM986.881067 602.688c0.341333-1.792 0.554667-3.626667 0.874666-5.418667-0.896-1.621333-1.685333-3.285333-2.624-4.906666l1.728 10.325333zM592.043733 982.976c1.642667 0.96 3.306667 1.770667 4.906667 2.688 1.834667-0.32 3.626667-0.533333 5.418667-0.874667l-10.325334-1.813333z" fill="#444444" p-id="78117"></path><path d="M987.755733 597.269333c-0.32 1.792-0.533333 3.626667-0.896 5.418667l-1.728-10.304c0.938667 1.6 1.728 3.264 2.624 4.885333 5.290667-28.757333 8.064-58.218667 8.064-87.637333 0-65.28-12.8-128.618667-38.037333-188.224a481.28 481.28 0 0 0-103.637333-153.706667 481.664 481.664 0 0 0-341.866667-141.589333c-30.762667 0-61.568 2.88-91.562667 8.64-0.064 0-0.149333 0-0.213333 0.042667 1.664 0.874667 3.392 1.664 5.034667 2.602666l-10.176-1.6 5.12-1.002666A286.570667 286.570667 0 0 0 286.273067 1.237333a284.309333 284.309333 0 0 0-202.410667 83.84A284.437333 284.437333 0 0 0 0.001067 287.509333c0 48.64 12.501333 96.490667 36.010666 138.773334 0.298667-1.749333 0.533333-3.52 0.853334-5.269334l1.770666 10.133334c-0.917333-1.6-1.706667-3.242667-2.624-4.864a486.997333 486.997333 0 0 0-7.274666 83.349333c0 65.28 12.778667 128.597333 38.016 188.202667a481.216 481.216 0 0 0 103.594666 153.706666 481.002667 481.002667 0 0 0 153.728 103.594667 479.402667 479.402667 0 0 0 188.202667 38.037333c28.416 0 56.896-2.56 84.693333-7.509333-1.621333-0.917333-3.285333-1.728-4.928-2.688l10.325334 1.813333c-1.792 0.341333-3.584 0.554667-5.397334 0.874667a285.973333 285.973333 0 0 0 140.8 37.12 284.16 284.16 0 0 0 202.389334-83.84A284.224 284.224 0 0 0 1024.001067 736.533333c0-48.832-12.586667-96.832-36.245334-139.264z" fill="#00AEF3" p-id="78118"></path><path d="M514.219733 805.76c-171.797333 0-248.64-84.458667-248.64-147.754667 0-32.469333 23.957333-55.232 57.002667-55.232 73.514667 0 54.464 105.578667 191.637333 105.578667 70.186667 0 108.992-38.144 108.992-77.162667 0-23.466667-11.584-49.472-57.813333-60.864l-152.810667-38.144c-123.050667-30.848-145.365333-97.386667-145.365333-159.914666 0-129.834667 122.24-178.56 237.034667-178.56 105.749333 0 230.4 58.410667 230.4 136.32 0 33.365333-28.885333 52.778667-61.909334 52.778666-62.741333 0-51.2-86.826667-177.557333-86.826666-62.72 0-97.472 28.373333-97.472 69.034666 0 40.533333 49.536 53.504 92.544 63.296l113.109333 25.109334c123.861333 27.584 155.264 99.925333 155.264 168.042666 0 105.514667-80.96 184.298667-244.416 184.298667z" fill="#FFFFFF" p-id="78119"></path></svg>${item.name}</a>`; 1646 break; 1647 case 5: // WhatsApp 1648 itemLink = `<a href="https://api.whatsapp.com/send?phone=${item.account}&text=Hello" data-name="${item.name}"><svg t="1766971676789" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="77967" width="200" height="200"><path d="M511.88787529 62h0.225C760.250375 62 962.00037529 263.86250029 962.00037529 512s-201.78749971 450-449.8875 450c-91.50000029 0-176.4-27.26250029-247.5-74.32499971L91.62537471 942.94999971l56.06250029-167.21249942A446.69999971 446.69999971 0 0 1 62.00037529 512C62.00037529 263.86250029 263.787875 62 511.88787529 62zM383.150375 309.34999971c-8.58750029-20.51250029-15.11250029-21.30000029-28.125-21.825A250.94999971 250.94999971 0 0 0 340.175375 287c-16.94999971 0-34.65 4.95-45.37500029 15.8625C281.86287471 316.09999971 249.500375 347.00000029 249.500375 410.48749971c0 63.41249971 46.38750029 124.7625 52.61249971 133.35000029 6.525 8.55 90.45 140.625 220.68750058 194.43750029 101.88749971 42.11250029 132.11250029 38.21249971 155.32499971 33.26249971 33.8625-7.27499971 76.31250029-32.24999971 87.00000029-62.3
16486250029 10.6875-30.18750029 10.6875-55.9125 7.57499942-61.38749971-3.15-5.43750029-11.73750029-8.55-24.75-15.075-13.05-6.48749971-76.34999971-37.6875-88.34999942-41.85-11.73750029-4.3875-22.91249971-2.85000029-31.76250029 9.63749971-12.52500029 17.39999971-24.75 35.1-34.68750029 45.75000058-7.80000029 8.325-20.5875 9.37500029-31.23749971 4.95-14.32500029-6.00000029-54.45-20.025-103.98750029-63.97500058-38.28750029-34.04999971-64.35-76.42500029-71.8875-89.13749942-7.57500029-13.01249971-0.7875-20.54999971 5.21250029-27.5625 6.48749971-8.06249971 12.75000029-13.76250029 19.27500029-21.30000029 6.525-7.5375 10.125-11.43749971 14.32499942-20.28750029 4.42500029-8.58750029 1.31249971-17.4375-1.83749942-23.92499971-3.11249971-6.48749971-29.17500029-69.93749971-39.86250029-95.625z" fill="#25D366" p-id="77968"></path></svg>${item.name}</a>`; 1649 break; 1650 case 6: // 微信 1651 // 微信éå¸¸æ æ³ç´æ¥éè¿é¾æ¥å¤èµ·ï¼å¯ä»¥æç¤ºç¨æ·å¤å¶å¾®ä¿¡å· 注éç±»å wx 1652 itemLink = `<div class="cards wx"><span data-name="${item.name}"><svg t="1767598764099" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="18714" width="200" height="200"><path d="M670.48 368.94c10.19 0 20.38 0.94 30.52 1.83-27.27-126.56-164.08-221.12-319.93-221.12C206.8 150.26 64 268.04 64 417.61c0 86.22 47.6 157.34 126.67 212.4l-31.92 94.45 110.99-55c39.76 7.78 71.68 15.56 110.94 15.56 10.19 0 19.88-0.44 29.57-1.34a240.59 240.59 0 0 1-9.69-66.11C401.01 480.45 519.84 369 670.54 369l-0.06-0.06zM499.9 283.71c24.08 0 39.76 15.56 39.76 39.44 0 23.34-15.68 39.45-39.76 39.45-23.58 0-47.6-15.61-47.6-39.45 0-23.88 24.03-39.44 47.6-39.44zM277.97 362.6c-23.52 0-47.6-15.61-47.6-39.45 0-23.89 24.08-39.44 47.6-39.44 23.58 0 39.76 15.56 39.76 39.44 0.01 23.34-15.67 39.45-39.76 39.45zM960 614.28c0-125.67-126.67-228.4-269.59-228.4-150.69 0-269.53 102.73-269.53 228.4 0 126.12 118.83 228.46 269.53 228.46 31.47 0 63.39-7.78 95.26-15.61l86.91 47.22-24.02-78.45C912.4 747.79 960 684.9 960 614.28z m-356.95-39.45c-15.68 0-31.92-15.56-31.92-31.67 0-15.56 16.24-31.67 31.92-31.67 24.08 0 39.76 15.61 39.76 31.67 0.01 16.12-15.68 31.67-39.76 31.67z m174.33 0c-15.74 0-31.47-15.56-31.47-31.67 0-15.56 15.68-31.67 31.47-31.67 24.02 0 39.76 15.61 39.76 31.67 0 16.12-15.73 31.67-39.76 31.67z" fill="#09BB07" p-id="18715"></path></svg>${item.name}<i class="addWechat">æ·»å 微信客æ</i></span> 1653 <div class="card-imgs"><img src="${__ce.imgStaticUrl[0] + '/' + item.imageUrlArr[0].detail.watermarkUrl_symbol}" /></div></div>`; 1654 break; 1655 case 7: // æ°ååç 1656 itemLink = `<div class="cards"><span data-name="${item.name}"><svg t="1767599127009" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="18864" width="200" height="200"><path d="M870.4512 204.8c26.2144 0 47.9232 19.8144 50.8416 45.2608l0.3584 5.9392v563.2c0 26.2144-19.8144 47.872-45.2096 50.8416L870.4 870.4h-128a12.8512 12.8512 0 0 1-12.4416-9.8816l-0.3584-2.9184v-9.5744a3.2256 3.2256 0 0 0-1.5872-2.7648l-1.6384-0.4608h-121.6a3.2256 3.2256 0 0 0-2.7648 1.5872l-0.4096 1.6384v9.5744a12.8 12.8 0 0 1-9.8816 12.4416L588.8 870.4H434.432a12.8512 12.8512 0 0 1-12.4928-9.8816l-0.3072-2.9184v-9.5744a3.2256 3.2256 0 0 0-1.5872-2.7648l-1.6384-0.4608h-120.832a3.2256 3.2256 0 0 0-2.7136 1.5872l-0.4608 1.6384v9.5744a12.8 12.8 0 0 1-9.8816 12.4416L281.6 870.4H153.6c-26.2144 0-47.872-19.8144-50.8416-45.2096L102.4 819.2V256c0-26.2144 19.8144-47.872 45.2608-50.8416L153.6 204.8h716.8512z m-12.8 51.2h-691.2a12.8512 12.8512 0 0 0-12.4928 9.8816L153.6 268.8v537.6c0 6.0416 4.2496 11.1104 9.8816 12.4416L166.4 819.2h73.6256a3.2256 3.2256 0 0 0 2.7648-1.5872l0.4096-1.5872v-9.6256a12.8 12.8 0 0 1 9.8816-12.4416L256 793.6h204.8a12.8 12.8 0 0 1 12.4928 9.8816l0.3584 2.9184v9.6256c0 1.1264 0.6144 2.2016 1.536 2.7136l1.6384 0.4608h70.4a3.2256 3.2256 0 0 0 2.7648-1.5872l0.4608-1.5872v-9.6256a12.8 12.8 0 0 1 9.8816-12.4416L563.2 793.6h204.8a12.8 12.8 0 0 1 12.4416 9.8816l0.3584 2.9184v9.6256c0 1.1264 0.6144 2.2016 1.5872 2.7136l1.6384 0.4608h73.5744a12.8512 12.8512 0 0 0 12.4416-9.8816l0.3584-2.9184V268.8a12.8 12.8 0 0 0-12.8-12.8zM343.3984 320a128.4096 128.4096 0 0 1 129.5872 125.952 127.744 127.744 0 0 1-42.9568 97.74
165608 6.4512 6.4512 0 0 0 0.4096 9.984 140.6976 140.6976 0 0 1 55.4496 112.0256 25.6 25.6 0 0 1-20.992 25.1904l-4.608 0.4096h-230.4a25.6 25.6 0 0 1-25.6-25.6c0-45.7216 21.7088-86.272 55.3984-112.0256a6.4512 6.4512 0 0 0 0.4096-9.9328 128 128 0 0 1 83.3024-223.744z m469.4528 281.6c3.5328 0 6.4 2.8672 6.4 6.4v38.4a6.4 6.4 0 0 1-6.4 6.4h-243.2a6.4 6.4 0 0 1-6.4-6.4v-38.4c0-3.5328 2.8672-6.4 6.4-6.4h243.2z m-467.968-25.6c-23.9104 0-46.3872 9.2672-63.3344 26.2656-8.3968 8.3968-14.8992 18.2272-19.3536 28.8768a6.4 6.4 0 0 0 3.7376 8.4992l2.1504 0.3584h153.6c4.6592 0 7.68-4.608 5.9392-8.8576a88.9856 88.9856 0 0 0-19.3536-28.8768 88.9856 88.9856 0 0 0-63.3856-26.2656z m467.968-76.8c3.5328 0 6.4 2.8672 6.4 6.4v38.4a6.4 6.4 0 0 1-6.4 6.4h-243.2a6.4 6.4 0 0 1-6.4-6.4v-38.4c0-3.5328 2.8672-6.4 6.4-6.4h243.2z m-467.8656-128c-42.3424 0-76.8 34.4576-76.8 76.8s34.4576 76.8 76.8 76.8c42.2912 0 76.8-34.4576 76.8-76.8s-34.5088-76.8-76.8-76.8z m467.8656 25.6c3.5328 0 6.4 2.8672 6.4 6.4v38.4a6.4 6.4 0 0 1-6.4 6.4h-243.2A6.4 6.4 0 0 1 563.2 441.6v-38.4c0-3.5328 2.8672-6.4 6.4-6.4h243.2z" p-id="18865" fill="#09BB07"></path></svg>${item.name}</span><div class="card-imgs"><img src="${__ce.imgStaticUrl[0] + '/' + item.imageUrlArr[0].detail.watermarkUrl_symbol}" /></div></div>`; 1657 break; 1658 case 8: // é®ä»¶ 1659 itemLink = `<a href="mailto:${item.account} data-name="${item.name}"><svg t="1766971919508" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="88756" width="200" height="200"><path d="M512 0C229.224296 0 0 229.224296 0 512c0 282.775704 229.224296 512 512 512 282.775704 0 512-229.224296 512-512C1024 229.224296 794.775704 0 512 0zM798.72 311.296l-285.847704 298.287407-288.559407-298.287407L798.72 311.296zM204.8 354.702222l159.706074 162.721185L204.8 677.072593 204.8 354.702222zM224.881778 720.896l169.870222-176.82963 117.475556 119.694222 115.730963-119.694222 171.595852 176.82963L224.881778 720.896zM819.2 677.072593l-164.067556-160.085333 164.067556-164.67437L819.2 677.072593z" fill="#FFB600" p-id="88757"></path></svg>${item.name}</a>`; 1660 break; 1661 case 9: // çµè¯ 1662 itemLink = `<a href="tel:${item.account}" data-name="${item.name}"><svg t="1766971966478" class="icon" viewBox="0 0 1029 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="90728" width="200" height="200"><path d="M512.024292 0A512 512 0 1 1 0.024292 512 512 512 0 0 1 512.024292 0z m-108.783323 205.251553a104.98617 104.98617 0 0 0-77.27721 25.04069l-9.23632 5.747043-8.312688 5.233915c-63.730607 39.921427-36.842654 202.070154 67.117258 354.05893s247.635999 239.939066 310.442974 201.043896c4.002405-2.463019 19.498898-11.391461 21.346162-12.520344a106.012427 106.012427 0 0 0 49.978753-48.028864 82.100621 82.100621 0 0 0-24.835438-85.692524c-44.334336-51.312888-77.790339-63.935859-115.65925-46.592102a149.012628 149.012628 0 0 0-17.343756 9.338946l-16.728002 10.262577c-12.725596 7.799559-51.312888-29.453598-98.212868-97.391862s-65.783123-115.65925-54.18641-123.150932c1.128884-0.821006 13.341351-8.107436 16.728001-10.262578 47.61836-29.966727 55.828423-63.012227 18.780517-132.592503a92.363199 92.363199 0 0 0-62.601723-55.110042z" fill="#FF5E34" p-id="90729"></path></svg>${item.name}</a>`; 1663 break; 1664 case 10: // 龿¥ 1665 itemLink = `<a href="tel:${item.account}" data-name="${item.name}"><svg t="1766972007995" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="93464" width="200" height="200"><path d="M512 1024C229.228 1024 0 794.772 0 512S229.228 0 512 0s512 229.228 512 512-229.228 512-512 512z m54.545-565.02l-1.798-1.764a102.207 102.207 0 0 0-11.002-9.523l-35.453 35.442c4.176 2.446 8.078 5.393 11.605 8.92l1.866 1.763a58.277 58.277 0 0 1 0 82.341l-96.904 96.882a58.334 58.334 0 0 1-82.341 0l-1.832-1.798a58.243 58.243 0 0 1 0-82.306l43.816-43.828a149.675 149.675 0 0 1-10.866-58.732l-67.812 67.72c-41.836 41.825-41.836 110.251 0 152.053l1.787 1.798c41.836 41.79 110.228 41.79 152.052 0l96.882-96.916c41.757-41.825 41.757-110.25 0-152.052z m141.38-141.37l-1.82-1.797c-41.802-41.825-110.228-41.825-152.053 0l-96.882 96.916c-41.824 41.79-41.824 110.216 0 152.053l1.798 1.763c3.505 3.425 7.225 6.576 11.002 9.523l35.454-35.476a57.845 57.845 0 0 1-11.583-8.92l-1.798-1.763a58.311 58.311 0 0 1 0-82.375l96.905-96.882a58.197 58.197 0 0 1 82.284 0l1.798 1.797a58.277 58.277 0 0 1 0 82.341l-43.76 43.828c7.612 18.796 11.196 38.81 10.844 58.766l67.789-67.755c41.824-41.79 41.824-110.216 0.022-152.007z" p-id="93465" fill="#f8aeae"></path></svg>${item.name}</a>`; 1666 break; 1667 case 11: // èªå®ä¹ 1668 itemLink = `<a href="tel:${item.account}" data-name="${item.name}">
1668<svg t="1766972117295" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="96446" width="200" height="200"><path d="M682.507372 400.939555c-6.304589-23.760147-14.045901-46.267766-22.691815-67.686588-80.645738 17.824971-106.931405-52.202942-73.087599-101.162004-12.589736-18.912745-30.946826-32.406061-56.166207-39.059598-33.843806 51.834552-126.175701 25.733081-117.8992-45.014216-26.466792 0-52.922327 0-79.023798 0 6.65763 75.797313-84.609003 91.816149-123.481336 45.014216-19.10001 12.589736-45.201481 17.990746-50.768267 44.811602 37.069267 44.460608 3.225461 113.954355-73.087599 95.411023-8.276501 21.419845-16.387225 43.926442-22.319331 67.686588 63.905472 10.082636 63.905472 108.000759 0 118.083395 5.933129 23.575952 14.042831 46.083571 22.319331 67.502393 80.645738-17.824971 107.650789 52.202942 73.087599 101.180424 12.773931 19.078521 30.949896 32.756031 56.516178 39.226397 33.843806-51.834552 126.009925-25.733081 117.733425 45.198411 26.101471 0 52.555983 0 79.023798 0-6.838755-76.148307 84.609003-92.000344 123.668601-45.198411 19.081591-12.589736 45.364187-18.359137 50.396807-44.995797-36.719296-44.645826-2.87549-113.77016 73.087599-95.411023 8.644891-21.419845 16.387225-43.926442 22.691815-67.502393C615.889115 502.635725 615.889115 417.142585 682.507372 400.939555zM373.23354 577.161069c-64.792679 0-117.177769-52.552913-117.177769-117.179816 0-64.811098 52.384068-117.179816 117.177769-117.179816 64.442708 0 117.198236 52.368718 117.198236 117.179816C490.432799 524.608156 437.676248 577.161069 373.23354 577.161069z" fill="#2B629D" p-id="96447"></path><path d="M960.610274 695.982268c-2.157129-12.958126-4.497431-25.38311-7.90811-37.087687-43.739177 4.313236-53.824883-34.562167-32.220842-58.138118-6.119371-10.986215-14.765285-19.262716-27.723412-24.313755-20.884656 25.216311-68.771293 6.119371-59.594283-31.134091-13.861706-1.806135-27.723412-3.243881-41.936111-4.866844-0.719384 40.331567-50.231031 43.392276-67.871807 15.85306-11.336186 5.750981-25.197892 7.188726-29.693276 20.866237 16.734126 25.935696-5.40408 60.497862-44.833091 46.083571-5.750981 10.80202-11.336186 22.156626-16.018835 34.212196 33.124422 9.364275 27.005051 61.567217-7.188726 62.820768 1.787716 13.143345 4.313236 25.197892 7.557116 36.903491 43.926442-4.313236 53.640688 34.562167 32.756031 58.323337 5.40101 10.80202 14.045901 19.078521 26.820855 24.12956 21.419845-25.197892 68.590168-5.7694 59.761082 31.668257 14.230096 1.27197 28.27702 2.89391 41.769312 4.681626 1.25355-40.682561 50.765197-43.558052 68.409043-16.553001 10.983145-5.585205 25.010627-6.65456 29.693276-20.516266-16.553001-25.935696 5.40101-60.497862 44.645826-46.267766 5.585205-10.80202 11.17041-22.138206 16.018835-34.028001C919.042553 745.659691 924.078243 700.479699 960.610274 695.982268zM785.644357 770.139222c-34.381042-3.963265-58.676377-35.097356-54.897308-69.475328 4.497431-34.028001 34.912138-58.691727 69.291133-54.544267 34.212196 3.963265 59.225893 34.727942 54.547337 69.291133C851.17177 749.622956 820.019259 774.102487 785.644357 770.139222z" fill="#2B629D" p-id="96448"></path></svg>${item.name}</a>`; 1669 break; 1670 case 12: // æºæ §å®¢æ 1671 itemLink = `<a href="tel:${item.account}" data-name="${item.name}"><svg t="1766972055705" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="94508" width="200" height="200"><path d="M516.426808 807.930831c5.168874 0 10.440102-0.307062 15.71133-0.870008 50.716378-5.885352 93.807387-40.173922 109.672247-87.410266a7.164776 7.164776 0 0 0-4.04298-8.853616 7.676546 7.676546 0 0 0-9.570094 2.968265c-0.204708 0.255885-20.368434 31.729722-98.771553 41.965115-11.770703 1.535309-23.183168 2.354141-34.032685 2.354141-54.964066 0-79.477835-20.061372-79.682543-20.26608a7.727723 7.727723 0 0 0-9.825978-0.102354 7.164776 7.164776 0 0 0-1.535309 9.416562 133.827778 133.827778 0 0 0 112.077565 60.798241z m421.851767-470.009296c-0.716478 0-1.330601 0.153531-1.995902 0.153531-45.956919-192.425409-221.596282-335.925633-432.189515-335.925633-216.376231 0-396.109751 151.483832-435.925433 351.790494C29.477935 360.695287 0 393.602079 0 433.366585v159.262732c0 44.626318 37.00095 80.808436 82.753161 80.808436 25.793193 0 48.515768-11.770703 63.664151-29.836174 36.591534 93.551502 111.054026 168.935179 205.322005 208.750862a42.988655 42.988655 0 0 1 4.196512-6.499475c1.484132-1.842371 3.121795-3.37768 4.55475-3.37768a7.164776 7.164776 0 0 1 3.991804 1.279424c-21.801389-15.660153-100.613924-96.366235-117.707032-209.006747-7.471838-49.590484 30.962067-98.259783 75.690739-106.294567 71.801289-12.896597 143.24434-27.635564 215.04563-40.327453 45.649858-8.034784 76.867809-32.241491 95.956819-72.568944 4.452396-9.416563 10.900695-28.454396 13.868959-55.936428a8.802439 8.802439 0 0 1 8.700085-7.215953c2.968264 0 5.475936 1.432955 7.164776 3.582388l1.944725-1.228247c28.300865 39.764506 84.442001 127.686541 92.527962 220.470388 9.211855 106.038683 4.094158 178.607627-79.887251 252.916587a6.499475 6.499475 0 0 0-2.200609 4.861813c0 2.302964 1.228247 4.247689 3.070618 5.424758l2.047079 0.921186c0.614124 0.153531 1.125893 0.307062 1.68884 0.307062 0.614124 0 1.074716-0.153531 1.586486-0.307062l3.480034-1.893548c84.953771-45.240442 150.050877-120.77765 180.142936-211.565595 12.231296 17.502524 31.269129 30.092059 53.428757 34.493278-35.516817 156.243291-179.73352 254.093658-358.341147 268.934979a73.183068 73.183068 0 0 0-68.06537-43.909841c-40.37863
16710-73.183068 30.91089-73.183068 69.08891 0 38.126843 32.804438 69.037733 73.183068 69.037733 32.650907 0 59.928232-20.214903 69.395971-48.055175 206.75496-16.2231 372.568344-135.056025 407.163977-319.651357 30.552651-12.384827 52.046979-41.350992 52.046978-75.230146V419.548803c0-45.035734-38.024489-81.576091-84.95377-81.576091z m-76.253686 46.315158c-53.940527-141.248438-193.704833-242.118247-358.136439-242.118246-163.715128 0-302.967665 100.050977-357.419961 240.327053-2.661202-3.172972-5.885352-5.936529-8.95597-8.700085 30.808536-170.982258 183.008846-300.971763 366.580639-300.971763 182.701784 0 334.390324 128.71008 366.2224 298.515268-3.121795 4.094158-6.038883 8.341846-8.341846 12.947773z m-510.183218 468.115748c-0.153531 0.255885-0.153531 0.307062 0 0z" fill="#ffafaf" p-id="94509"></path></svg>${item.name}</a>`; 1672 break; 1673 default: 1674 break; 1675 } 1676 return itemLink; 1677 }).join('') 1678 return `<div class="thirdTool"> 1679 <div class="linksBtn"> 1680 <div>${i18n.transfered || 'ç®å人工åå¸ç¹å¿ï¼æ¨ä¹å¯ä»¥æä»¥ä¸æ¹å¼ç´æ¥èç³»ã'}</div> 1681 ${links} 1682 </div> 1683 </div>`; 1684 case "workOrder": 1685 let workOrderformItems = [] 1686 value.input.forEach((e,i)=>{ 1687 if(i==0) { 1688 e.fixed = 0; 1689 } 1690 let item = `` 1691 if(e.fixed==1){ 1692 if(e.ishide===false || e.showName || e.note){ 1693 item = this.getFixedFormItem(e) 1694 }else if(e.ishide===undefined){ 1695 let k = e.noRequired ? false : true 1696 item = this.getFixedFormItem(e,k) 1697 } 1698 }else if(e.fixed==0 && !e.ishide){ 1699 item = this.getFormItem(e) 1700 }else if(e.fixed == undefined){ 1701 item = this.getFixedFormItem(e,e.required == 0 ? false : true) 1702 } 1703 if(item){ 1704 workOrderformItems.push(item) 1705 } 1706 }) 1707 let workOrderaggree = `` 1708 let workOrdericon = `` 1709 if(value.msgAuthFlag){ 1710 workOrderaggree = `<div class="formIt aggree"> 1711 <input type="checkbox" name="as" id="as" /> 1712 <label class="formItLabel" for="as">${value.msgAuth}</label> 1713 </div>` 1714 workOrdericon = `<svg t="1723621189390" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="1223" width="200" height="200"><path d="M417.1264 947.4048L315.392 621.568l442.368-293.6832-476.928 233.8304L50.0736 311.552a45.568 45.568 0 0 1 30.7712-76.3904l841.6256-50.4832a45.568 45.568 0 0 1 40.7552 70.6048L498.688 958.9248a45.568 45.568 0 0 1-81.5104-11.52z" p-id="1224"></path></svg>` 1715 } 1716 return ` 1717 <div class="msgcon msgform workOrderMsgformBox" progressId="${value.progressId}"> 1718 ${workOrderformItems.join("")} 1719 ${workOrderaggree} 1720 <div class="formIt workOrderMsgform"><a href="javascript:;" class="p_sub2">${workOrdericon}${i18n.sms_submit}</a></div> 1721 </div> 1722 ` 1723 1724 // <div class="successBox"> 1725 // <div>å·¥åå·²æäº¤æåï¼æä»¬ä¼å°½å¿«èç³»æ¨ï¼</div> 1726 // <a>ç¹å»æ¥ç</a> 1727 // </div> 1728 ; 1729 case "aiAgent": 1730 let msg = value.msg; 1731 let source = value.source; 1732 let relatedIssues = value.relatedIssues; 1733 let sourceHtml = ''; 1734 let relatedIssuesHtml = ''; 1735 1736 if (Array.isArray(source) && source.length > 0) { 1737 // å° source æ°ç»è½¬æ¢ä¸ºé¾æ¥å表 1738 let links = []; 1739 source.forEach(item => { 1740 if (typeof item === 'object' && item !== null) { 1741 for (let key in item) { 1742 if (item.hasOwnProperty(key) && item[key]) { 1743 links.push(`<div class="sourceItem"><a href="${key}" target="_blank">${item[key]}</a></div>`); 1744 } 1745 } 1746 } 1747 }); 1748 1749 if (links.length > 0) { 1750 sourceHtml = `<div class="aiAgent_source">${links.join('')}</div>`; 1751 } 1752 } else if (typeof source === 'string') { 1753 // 妿 source æ¯å个å符串 1754 sourceHtml = `<div class="aiAgent_source"><a href="${source}" target="_blank">${source}</a></div>`; 1755 } 1756 1757 // relatedIssues 1758 if (Array.isArray(relatedIssues) && relatedIssues.length > 0) { 1759 // å° relatedIssues æ°ç»è½¬æ¢ä¸ºé¾æ¥å表 1760 let links = [];
1761 relatedIssues.forEach(item => { 1762 links.push(`<li class="relatedIssuesItem"><svg t="1767492010358" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="19529" width="200" height="200"><path d="M995.765248 550.5024a679.8336 679.8336 0 0 0-445.2352 445.2352 40.3456 40.3456 0 0 1-76.9024 0A679.7312 679.7312 0 0 0 28.392448 550.5024a40.3456 40.3456 0 0 1 0-77.0048A679.7312 679.7312 0 0 0 473.627648 28.2624a40.3456 40.3456 0 0 1 76.9024 0 679.8336 679.8336 0 0 0 445.2352 445.2352 40.3456 40.3456 0 0 1 0 77.0048z" fill="#9812FA" p-id="19530"></path></svg><p class="related_text">${item}<p></li>`); 1763 }); 1764 if (links.length > 0) { 1765 // åªæ·»å ç±»åï¼ä¸è®¾ç½®æ¾ç¤ºï¼åç»éè¿CSSæ§å¶ 1766 relatedIssuesHtml = `<div><ul class="aiAgent_relatedIssues hidden"><div class="related_title">${i18n.relatedQuestions || 'ç¸å ³é®é¢'}:</div>${links.join('')}</ul></div>`; 1767 } 1768 } else if (typeof relatedIssues === 'string') { 1769 // 妿 source æ¯å个å符串 1770 relatedIssuesHtml = `<div><div class="related_title">${i18n.related || 'ç¸å ³é®é¢'}:</div><div class="aiAgent_relatedIssues hidden">${relatedIssues}</div></div>`; 1771 } 1772 1773 return ` 1774 <div class="aiAgent"> 1775 <div class="aiAgent_msg">${marked.parse(msg)}</div> 1776 ${sourceHtml} 1777 ${relatedIssuesHtml} 1778 </div> 1779 `; 1780 case "internationalEntry": 1781 if(value == 'æ£å¨ä¸ºæ¨è½¬æ¥ä¸...') { 1782 return `<div class="internationalEntry">${i18n.transfering || value || 'æ£å¨ä¸ºæ¨è½¬æ¥ä¸...'}</div>` 1783 } else { 1784 return `<div class="internationalEntry">${i18n.humanAgents || value || 'ç®å人工åå¸ç¹å¿ï¼è¯·ç䏿¨çèç³»æ¹å¼ï¼æä»¬å°ç¬¬ä¸æ¶é´èç³»æ¨ã'}</div>` 1785 } 1786 default: 1787 return ``; 1788 } 1789 } 1790 1791 // 卿¸²ææ¶æ¯åè°ç¨æ¤æ¹æ³ï¼ç¡®ä¿åªææåä¸ä¸ª .sm_msg.ad ç .aiAgent_relatedIssues æ¾ç¤º 1792 showLastRelatedIssues() { 1793 // é¦å éèææ aiAgent_relatedIssues 1794 $('.aiAgent_relatedIssues').addClass('hidden'); 1795 1796 // æ¾ç¤ºæåä¸ä¸ª .sm_msg.ad ä¸ç .aiAgent_relatedIssues 1797 const $lastAdMsg = $('.sm_msg.ad').last(); 1798 if ($lastAdMsg.length > 0) { 1799 const $lastRelatedIssues = $lastAdMsg.find('.aiAgent_relatedIssues'); 1800 if ($lastRelatedIssues.length > 0) { 1801 $lastRelatedIssues.removeClass('hidden').show(); 1802 } 1803 } 1804 } 1805 //åºå®è¡¨å项 1806 getFixedFormItem(e,k){ 1807 let nameObj = { 1808 mobile:i18n.sms_mobil, 1809 email:i18n.sms_email, 1810 nickname:i18n.sms_nickname, 1811 name:i18n.sms_name, 1812 address:i18n.sms_address 1813 } 1814 let label = e.showName || nameObj[e.code] ||e.name 1815 let input = `<input class="p_inp" placeholder="${!k&&e.ishide!==undefined?e.tooltip:''}" data-type="${e.dataType}" type="text" name="${e.code}" /><div class="errorMsg"></div>` 1816 if(e.code == 'address'){ 1817 input = `<textarea class="p_inp" placeholder="${!k&&e.ishide!==undefined?e.tooltip:''}" data-type="${e.dataType}" name="${e.code}"></textarea><div class="errorMsg"></div>` 1818 }else if(e.code == 'mobile' || e.code == 'custLinkMobile'){ 1819 input = this.mobileItem(e,k) 1820 } 1821 return `<div class="formIt" ${e.switchFlag||k?'required':''}> 1822 <label class="formItLabel">${label}</label> 1823 ${input} 1824 </div>` 1825 } 1826 mobileItem(e,k){ 1827 let countryCode = '' 1828 let countries = this.arraySort(phoneCode.countries,'iso2') 1829 let defaultCode = countries.find(n=>n.iso2=="CN") || {} 1830 let tmpArr = [] 1831 tmpArr.push(` 1832 <li class="p_codeItem p_active">
1833 <span class="p_enDial">+86</span> 1834 <span class="p_enCode">CN</span> 1835 </li> 1836 `) 1837 countries.forEach(e=>{ 1838 let active = e.iso2=="CN" ? "p_active" : "" 1839 tmpArr.push(`<li class="p_codeItem ${active}"><span class="p_enDial">${e.dialCode}</span><span class="p_enCode">${e.iso2}</span></li>`) 1840 }) 1841 countryCode = `<div class="input-group-prepend p_mobilePre"> 1842 <div class="p_phoneCode"> 1843 <div class="form-control p_currentCode"> 1844 <span>${defaultCode.dialCode}</span> 1845 <span class="p_arrow"> 1846 <svg t="1655693452891" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="4805" width="200" height="200"><path d="M297.69350383 346.29910124L512 560.6055974 726.30649617 346.29910124a55.0126984 55.0126984 0 1 1 77.87942242 77.87942241L550.66354348 677.70089876a55.0126984 55.0126984 0 0 1-77.87942242 0L219.26174595 424.17852365c-10.49439069-10.49439069-16.01775312-24.30279805-16.01775442-38.66354347s6.07569919-28.72148955 16.01775442-39.21587894c21.54111683-20.98878007 56.89064234-21.54111683 78.43175788 0z" p-id="4806"></path></svg> 1847 </span> 1848 </div> 1849 <ul class="p_codeList"> 1850 ${tmpArr.join("")} 1851 </ul> 1852 <input type="hidden" name="mobilePrefix" class="p_inp" value="${defaultCode.dialCode},${defaultCode.iso2}" /> 1853 </div> 1854 </div>` 1855 return `<div class="input-group p_mobilegroup"> 1856 ${countryCode} 1857 <input class="p_inp" placeholder="${!k&&e.ishide!==undefined?e.tooltip:''}" data-type="${e.dataType}" type="text" name="${e.code}" > 1858 <div class="errorMsg"></div> 1859 </div>` 1860 } 1861 //表å项 1862 getFormItem(obj){ 1863 let input = `` 1864 if(obj.dataType=='txt'){ 1865 switch(obj.dataSubType){ 1866 case 'text': 1867 case 'email': 1868 input = `<input class="p_inp" placeholder="${obj.tooltip}" data-type="${obj.dataType}" sub-type="${obj.dataSubType}" type="text" name="${obj.code}" /><div class="errorMsg"></div>` 1869 break; 1870 case 'numberic': 1871 input = `<input class="p_inp" placeholder="${obj.tooltip}" data-type="${obj.dataType}" sub-type="${obj.dataSubType}" type="number" name="${obj.code}" /><div class="errorMsg"></div>` 1872 break; 1873 case 'mobile': 1874 case 'phone': 1875 input = this.mobileItem(obj) 1876 break; 1877 case 'simpleDate': 1878 case 'allDate': 1879 input = `<div class="j_date"><input class="p_inp" placeholder="${obj.tooltip}" data-type="${obj.dataType}" sub-type="${obj.dataSubType}" type="text" name="${obj.code}" /></div><div class="errorMsg"></div>` 1880 break; 1881 } 1882 }else if(obj.dataType=='multiTxt'){ 1883 input = `<textarea class="p_inp" placeholder="${obj.tooltip}" data-type="${obj.dataType}" name="${obj.code}"></textarea><div class="errorMsg"></div>` 1884 }else if(obj.dataType=='select'){ 1885 let arr = [] 1886 switch(obj.dataSubType){ 1887 case 'redio': 1888 obj.dataItem.forEach((e,i)=>{ 1889 arr.push(`<div class="p_radioItem"> 1890 <input type="radio" data-type="${obj.dataType}" sub-type="${obj.dataSubType}" name="${obj.code}" id="${e.key || e.value}" value="${e.value}"> 1891 <label for="${e.key || e.value}">${e.showValue || e.name}</label> 1892 </div>`) 1893 }) 1894 input = `<div class="p_inp p_radio" name="${obj.code}">${arr.join('')}</div><div class="errorMsg"></div>` 1895 break; 1896 case'checkbox': 1897 obj.dataItem.forEach((e,i)=>{ 1898 arr.push(`<div class="p_radioItem"> 1899 <input data-type="${obj.dataType}" sub-type="${obj.dataSubType}" type="checkbox" name="${obj.code}" id="${e.key}" value="${e.value}"> 1900 <label for="${e.key}">${e.showValue}</label> 1901 </div>`) 1902 }) 1903 input = `<div class="p_inp p_checkbox" name="${obj.code}">${arr.join('')}</div><div class="errorMsg"></div>` 1904 break; 1905 case'selSigle': 1906 input = `<div class="p_select selSigle"> 1907 <div class="multSelect p_input"></div> 1908 <div class="invalid-feedback"></div> 1909 <input type="hidden" name="dataItem" placeholder="${obj.tooltip}" value='${JSON.stringify(obj.dataItem)}'> 1910 <input class="p_inp" type="hidden" data-type="${obj.dataType}" sub-type="${obj.dataSubType}" name="${obj.code}"> 1911 </div>` 1912 break; 1913 case'selMulti': 1914 input = `<div class="p_select selMulti"> 1915 <div class="multSelect p_input"></div> 1916 <div class="invalid-feedback"></div> 1917 <input type="hidden" name="dataItem" placeholder="${obj.tooltip}" value='${JSON.stringify(obj.dataItem)}'> 1918 <input class="p_inp" type="hidden" data-type="${obj.dataType}" sub-type="${obj.dataSubType}" name="${obj.code}"> 1919 </div>` 1920 break; 1921 } 1922 } 1923 // æ°å¢ obj.required å®¢ææ¶æ¯å¿ å¡«æ è¯ 0-éå¿ å¡« 1-å¿ å¡« 1924 return `<div class="formIt" ${(obj.switchFlag || obj.required > 0)?'required':''}> 1925 <label class="formItLabel">${obj.showName||obj.name}</label> 1926 ${input} 1927 </div>` 1928 } 1929 getKnowledge(value,type,k){ 1930 let content = `` 1931 let change = `` 1932 let reply = `` 1933 if(value.aiReplySurvey && k){ 1934 reply = `<div class="reply"> 1935 <a href="javascript:;" class="replyBtn replyY" progressId="${value.progressId}" data-id="1" msg="${encodeURIComponent(value.msg)}">
1935<svg t="1727148138116" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="957" width="200" height="200"><path d="M881.504 356.352l-200.864 0.576c11.2-20.32 66.432-127.488 51.808-242.144-6.144-48.16-37.568-85.376-88.576-104.768-19.936-7.552-117.6-20.928-147.168 6.336-20.512 20.224-18.944 47.552-17.088 79.232 0.864 15.264 1.888 32.576 1.056 50.592-4.992 52.032-11.936 79.744-25.696 102.272-41.6 68.288-112 105.536-127.04 107.968H35.648c-19.68 0-35.648 15.36-35.648 34.336v447.552c0 18.976 15.968 34.336 35.648 34.336l299.776-0.192 0.896 0.736c26.592 21.248 97.28 77.664 214.24 77.664h234.752c65.28 0 117.984-34.496 137.504-90.016l0.64-1.984c2.4-8.576 9.152-27.872 16.96-50.24 31.296-89.6 83.68-239.552 83.68-321.088 0-84.576-50.624-131.168-142.592-131.168zM71.264 804h112.8V425.056H71.264v378.944z m801.6-17.28c-8.48 24.384-14.72 42.24-17.824 52.928-14.048 38.4-53.344 42.56-69.728 42.56h-234.752c-91.296 0-145.6-43.36-168.768-61.888-11.52-9.216-20.672-16.512-35.328-16.512H255.296V425.056h72.64c40.64 0 136.48-56.576 188.48-141.824 22.4-36.736 30.08-77.248 35.296-132.288a534.4 534.4 0 0 0-0.96-59.2c-0.448-7.616-0.96-16.384-0.96-22.976 20.416-1.184 57.28 1.216 67.968 5.12 27.04 10.272 40.992 25.92 43.968 49.28 12.256 96.192-38.176 191.008-43.968 201.504l-1.152 2.176a66.848 66.848 0 0 0 4.864 66.464 72.64 72.64 0 0 0 60.8 31.68h199.232c59.68 0 71.36 22.944 71.36 62.528 0 70.304-52.032 219.2-80 299.2z" p-id="958"></path></svg>${i18n.sms_resolved}</a><a href="javascript:;" class="replyBtn replyN" progressId="${value.progressId}" data-id="0" msg="${encodeURIComponent(value.msg)}"><svg t="1727148138116" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="957" width="200" height="200"><path d="M881.504 356.352l-200.864 0.576c11.2-20.32 66.432-127.488 51.808-242.144-6.144-48.16-37.568-85.376-88.576-104.768-19.936-7.552-117.6-20.928-147.168 6.336-20.512 20.224-18.944 47.552-17.088 79.232 0.864 15.264 1.888 32.576 1.056 50.592-4.992 52.032-11.936 79.744-25.696 102.272-41.6 68.288-112 105.536-127.04 107.968H35.648c-19.68 0-35.648 15.36-35.648 34.336v447.552c0 18.976 15.968 34.336 35.648 34.336l299.776-0.192 0.896 0.736c26.592 21.248 97.28 77.664 214.24 77.664h234.752c65.28 0 117.984-34.496 137.504-90.016l0.64-1.984c2.4-8.576 9.152-27.872 16.96-50.24 31.296-89.6 83.68-239.552 83.68-321.088 0-84.576-50.624-131.168-142.592-131.168zM71.264 804h112.8V425.056H71.264v378.944z m801.6-17.28c-8.48 24.384-14.72 42.24-17.824 52.928-14.048 38.4-53.344 42.56-69.728 42.56h-234.752c-91.296 0-145.6-43.36-168.768-61.888-11.52-9.216-20.672-16.512-35.328-16.512H255.296V425.056h72.64c40.64 0 136.48-56.576 188.48-141.824 22.4-36.736 30.08-77.248 35.296-132.288a534.4 534.4 0 0 0-0.96-59.2c-0.448-7.616-0.96-16.384-0.96-22.976 20.416-1.184 57.28 1.216 67.968 5.12 27.04 10.272 40.992 25.92 43.968 49.28 12.256 96.192-38.176 191.008-43.968 201.504l-1.152 2.176a66.848 66.848 0 0 0 4.864 66.464 72.64 72.64 0 0 0 60.8 31.68h199.232c59.68 0 71.36 22.944 71.36 62.528 0 70.304-52.032 219.2-80 299.2z" p-id="958"></path></svg>${i18n.sms_unresolved}</a> 1936 </div>` 1937 } 1938 if(typeof value.content == 'object'){ 1939 if(this.isArray(value.content)){ 1940 let kno = [] 1941 value.content.forEach((e,i)=>{ 1942 let group = Math.floor(i/3) 1943 kno.push(`<div class="knoa" group="${group}"><a href="javascript:;" biz="${e.bizId}">${e.title}</a></div>`) 1944 }) 1945 if(value.content.length>3){ 1946 change = `<a href="javascript:;" cg="0" ag="${Math.ceil(value.content.length/3)-1}"><svg t="1727143795984" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="9434" width="200" height="200"><path d="M118.869333 503.096889c1.137778-49.948444 11.406222-98.417778 30.72-144.014222A392.277333 392.277333 0 0 1 233.841778 234.097778a391.111111 391.111111 0 0 1 278.044444-115.2c53.134222 0 104.561778 10.382222 152.917334 30.833778 46.734222 19.740444 89.144889 48.384 124.928 84.366222 11.292444 11.292444 21.902222 23.324444 31.772444 35.868444l-68.835556 53.731556a9.102222 9.102222 0 0 0 3.441778 16.099555l200.817778 49.152c5.688889 1.365333 11.292444-2.986667 11.292444-8.817777l0.910223-206.734223a9.102222 9.102222 0 0 0-14.734223-7.196444l-64.455111 50.403555c-87.893333-112.469333-224.568889-184.576-378.168889-184.576-261.831111 0-474.851556 209.834667-479.772444 470.641778a9.130667 9.130667 0 0 0 9.159111 9.358222h68.551111a9.102222 9.102222 0 0 0 9.159111-8.903111zM982.869333 512h-68.579555a9.102222 9.102222 0 0 0-9.159111 8.903111 390.4 390.4 0 0 1-30.72 144.014222 391.054222 391.054222 0 0 1-84.224 125.013334 391.367111 391.367111 0 0 1-278.072889 115.2 391.139556 391.139556 0 0 1-27
19467.930667-115.2c-11.320889-11.292444-21.959111-23.324444-31.772444-35.868445l68.778666-53.731555a9.130667 9.130667 0 0 0-3.413333-16.099556l-200.817778-49.152a9.187556 9.187556 0 0 0-11.292444 8.817778l-0.796445 206.848c0 7.68 8.789333 12.003556 14.734223 7.196444l64.455111-50.403555c87.893333 112.355556 224.568889 184.462222 378.168889 184.462222 261.973333 0 474.851556-209.92 479.772444-470.641778a9.102222 9.102222 0 0 0-9.130667-9.358222z" p-id="9435"></path></svg>${i18n.sms_change}</a>` 1947 } 1948 content = `<p class="ktitle"><span>${i18n.sms_recommend}ï¼</span>${change}</p><div class="faq">${kno.join("")}</div>` 1949 }else{ 1950 let source = [] 1951 let sourceDom = `` 1952 // value.content.source = ["http://www.baidu.com","http://300.cn","http://asdjdj.3121kasd.cjdad.cchttp://asdjdj.3121kasd.cjdad.cc"] 1953 if(value.content.source && value.content.source.length>0){ 1954 value.content.source.forEach(e=>{ 1955 if(typeof e == 'string'){ 1956 source.push(`<li class="sourceItem"><a href="${e}" target="_blank">${e}</a></li>`) 1957 }else if(typeof e == 'object'){ 1958 for(let i in e){ 1959 if(e[i] && i && i!='null' && e[i]!='null'){ 1960 source.push(`<li class="sourceItem"><a href="${i}" target="_blank">${e[i]}</a></li>`) 1961 } 1962 } 1963 } 1964 }) 1965 if(source.length>0){ 1966 sourceDom = `<div class="source"> 1967 <p>${i18n.sms_resource}ï¼</p> 1968 <ul>${source.join('')}</ul> 1969 </div>` 1970 } 1971 } 1972 content = `<div class="markCon">${marked.parse(value.content.answer)}</div>${sourceDom}` 1973 } 1974 }else if(typeof value.content == 'string'){ 1975 content = `<div class="markCon">${marked.parse(value.content)}</div>` 1976 } 1977 return `<div class="msgcon msgknowledge">${content}</div>${reply}`; 1978 } 1979 //å®¢æ·æ¶æ¯ 1980 customerHtml(obj){ 1981 return ` 1982 <div class="sm_msg cus" data-time="${obj.time}"> 1983 <div class="msgtitle"> 1984 <span class="time">${$.formatDate(new Date(obj.time),'yyyy-MM-dd hh:mm')}</span> 1985 </div> 1986 <div class="msgcon"> 1987 ${this.escapeHtml(emo.symbolToHtml(obj.text))} 1988 </div> 1989 </div> 1990 ` 1991 } 1992 //htmlè½¬ä¹ 1993 escapeHtml(str) { 1994 let dom = str.match(new RegExp(/<[^>]+>/g)) 1995 if(dom && dom.length>0){ 1996 dom = [...new Set(dom)]; 1997 dom.forEach(e=>{ 1998 if(!/^<span/.test(e) && !/span>$/.test(e) && !/^<br/.test(e)){ 1999 let ne = e.replace(/</g,'<').replace(/>/g,'>') 2000 let re = e 2001 if(e.indexOf("(")>-1){ 2002 re = e.replace(/\(/g,'\\(').replace(/\)/g,'\\)') 2003 } 2004 str = str.replace(new RegExp(re,'g'),ne) 2005 } 2006 }) 2007 } 2008 return str 2009 } 2010 //徿 2011 getIcon(){ 2012 let prompt = `` 2013 if(this.colorLayout.showFlag!=1 && this.colorLayout.tipText){ 2014 prompt = `<span class="smtIconPrompt ${this.colorLayout.windowLocation=='left'?'leftPrompt':''}">${this.colorLayout.tipText}</span>` 2015 if(this.res.enableAgentFlag) { 2016 prompt = `<span class="smtIconPrompt_"></span>` 2017 } 2018 } 2019 let icons = ''; 2020 if(this.res.aiAgentImg) { 2021 icons = `<a href="javascript:;" id="${this.iconId}" smartService class="smartIcon aiAgentImg ${this.colorLayout.windowLocation=='left'?'leftIcon':''}"><img src="${this.res.aiAgentImg}" class="aiAgentImg" /></a>` 2022 }else{ 2023 icons = ` 2024 <a href="javascript:;" id="${this.iconId}" smartService class="smartIcon ${this.colorLayout.windowLocation=='left'?'leftIcon':''}"> 2025 <svg t="1691993598192" class="icon" viewB
2025ox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="814" width="200" height="200"><path d="M508.30872719 128.08273435c200.36824869 0 362.83837999 164.57253407 362.83837996 367.57335931 0 203.01910646-162.45184851 367.59164208-362.83837996 367.59164209v-55.13783256c170.33129377 0 308.41353791-139.89213981 308.41353633-312.43552832 0-172.57995248-138.08224413-312.45380951-308.41353633-312.45380952s-308.41353791 139.89213981-308.41353791 312.43552831c0 5.48453223 0.12797313 10.93250049 0.40219903 16.34390634H145.81770106c-0.23766351-5.41140585-0.36563506-10.8593741-0.36563663-16.34390634C145.45206443 292.65526841 307.94047692 128.08273435 508.32700838 128.08273435z" p-id="815"></path><path d="M508.30872719 240.40595711c139.16086813 0 251.95941786 114.27937278 251.95941629 255.25013655 0 140.98904501-112.79854975 255.26841777-251.95941629 255.26841777-36.65495788 0-71.46345612-7.91600767-102.87154529-22.1757924l-65.81438835 34.62568148c-9.89044049 5.19202354-22.06610207 1.27972351-27.18499926-8.72040577a20.65840542 20.65840542 0 0 1-2.01099519-12.76067896l12.10253519-73.76696156a256.18250777 256.18250777 0 0 1-66.18002497-172.47026056c0-140.97076381 112.79854975-255.25013657 251.95941787-255.25013655zM381.28695667 446.66093709c-24.4975775 0-44.33330364 20.10995203-44.33330366 44.91832098 0 24.80836739 19.85400733 44.91831942 44.33330366 44.91831943 24.4975775 0 44.35158484-20.10995203 44.35158486-44.91831943 0-24.80836739-19.85400733-44.91831942-44.35158486-44.91832098z m127.00348775 0c-24.4975775 0-44.35158484 20.10995203-44.35158488 44.91832098 0 24.80836739 19.85400733 44.91831942 44.35158488 44.91831943s44.33330364-20.10995203 44.33330363-44.91831943c0-24.80836739-19.85400733-44.91831942-44.33330363-44.91832098z m126.98520652 0c-24.4975775 0-44.35158484 20.10995203-44.35158484 44.91832098 0 24.80836739 19.85400733 44.91831942 44.35158484 44.91831943s44.35158484-20.10995203 44.35158484-44.91831943c0-24.80836739-19.85400733-44.91831942-44.35158484-44.91832098zM183.47815657 388.70771279l43.82141265 251.79488075a34.91819015 34.91819015 0 0 1-27.33125199 40.36615843l-0.65814374 0.10969033c-62.21287819 11.11531881-121.53723669-30.96932612-132.50630275-93.9866024L56.71233074 529.00205007c-10.96906446-63.03555904 30.5671271-123.12775168 92.79828807-134.24307046l33.96753776-6.06954959zM840.52513489 388.70771279L790.707299 674.89061152l33.98581895 6.06954959c62.21287819 11.11531881 121.53723669-30.96932612 132.50630273-93.98660398l10.09153845-57.97150706c10.96906446-63.03555904-30.5671271-123.12775168-92.7982881-134.24307046l-33.96753614-6.06954959zM464.96263993 808.10990319h86.6738933c23.94912413 0 43.32780605 19.65290783 43.32780446 43.89454063 0 24.25991557-19.37868034 43.91282183-43.32780446 43.91282183h-86.6556121c-23.94912413 0-43.36437003-19.65290783-43.36437003-43.91282183 0-24.2416328 19.41524431-43.89454063 43.34608883-43.89454063z" p-id="816"></path></svg> 2026 </a>${prompt}` 2027 } 2028 return icons 2029 } 2030 //å¯¹è¯æ¡ 2031 getDialog() { 2032 let c = this.colorLayout 2033 let img = $.handleDataImg(this.kefuHead) || '/npublic/commonjs/smartService/kefu.png' 2034 let className = `smartService ${c.windowLocation=='right'?'rightWindow':'leftWindow'} ${c.windowStyle==1?'bigWindow':'smallWindow'} ${c.entranceLocation!=1?'near':''}` 2035 let sendIcon = `<svg t="1691993635353" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="953" width="200" height="200"><path d="M512 512m-421.875 0a421.875 421.875 0 1 0 843.75 0 421.875 421.875 0 1 0-843.75 0Z" p-id="954"></path><path d="M322.37828973 688.38815811L358.3486846 528.43092136l255.34539404-15.98684272-255.34539404-17.31907864L322.42269702 335.63404636A22.20394702 22.20394702 0 0 1 353.99671026 310.89884851l362.52384934 181.25082285a22.20394702 22.20394702 0 0 1 0 39.70065728L353.97450662 713.12335513A22.20394702 22.20394702 0 0 1 322.37828973 688.38815811z" fill="#ffffff" p-id="955"></path></svg>` 2036 if(this.colorLayout.modelType==2){ 2037 sendIcon = i18n.sms_send 2038 } 2039 let title = i18n.sms_title 2040 if(this.settings.titleFlag==1){ 2041 title = this.settings.title 2042 } 2043 2044 // æ£æ¥ memberFlag æ¯å¦å¼å¯ä¼åä¸å¿ 2045 console.log('æ¯å¦å¼å¯ä¼åä¸å¿', this.res.memberFlag); 2046 const isDebugMode = this.res.memberFlag; 2047 2048 // 卿çæå¿«éæ ç¾ 2049 let quickLabels = ''; 2050 2051 if (this.res.quickLabel && Array.isArray(this.res.quickLabel)) { 2052 quickLabels = this.res.quickLabel 2053 .filter(label => label.status == true) // åªæstatus为1æ¶ææ¾ç¤º 2054 .filter(label => label.name == 'AIæç´¢' ? label.name = i18n.aiSearch : label.name) 2055 .map((label, index) => 2056 `<div class="quick_label_item" data-type="${label.type ? label.type : '0'}" data-index="${index}">${label.svg || ''}${label.name}</div>` 2057 ) 2058 .join(''); 2059 } 2060 2061 // å¿«éæ ç¾åºå 2062 const quickLabelsSection = quickLabels ? ` 2063 <div class="quick_labels"> 2064 ${quickLabels} 2065 </div> 2066 ` : ''; 2067 2068 // åªæå¨è°è¯æ¨¡å¼ä¸ææ¾ç¤º tabsNav 2069 const tabsNav = isDebugMode ? ` 2070 <div class="sm_tabs_nav"> 2071 <a href="javascript:;" class="sm_tab_link active" data-tab="chat">
2071<svg t="1766115077573" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="1426" width="200" height="200"><path d="M505.6 48a464 464 0 1 1-214.72 875.456c7.104 3.712 2.752 4.096-5.504 6.464l-4.352 1.28c-11.648 3.584-24.576 8.384-52.16 19.2l-1.28 0.448c-34.88 13.632-51.52 19.648-69.824 24.448-36.224 9.408-62.976 9.472-86.144-12.416-36.544-34.56-31.744-63.04 0-164.352l0.512-1.536c14.848-47.36 20.288-73.6 20.864-72.448A464 464 0 0 1 505.6 48z m0 96a368 368 0 0 0-327.296 536.512c17.664 34.24 12.672 58.176-14.592 145.216l-0.512 1.536c-6.976 22.272-11.264 36.672-14.08 48l-0.64 2.56 4.928-1.6c7.808-2.688 17.216-6.208 29.44-10.944l9.856-3.84 1.28-0.448c89.216-34.88 107.776-40.192 141.376-22.656A368 368 0 1 0 505.6 144z" fill="" p-id="1427"></path></svg>${i18n.sms_title || '客æå¯¹è¯'}</a> 2072 <a href="javascript:;" class="sm_tab_link" data-tab="member"><svg t="1766115111667" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="1571" width="200" height="200"><path d="M0 0h1024v1024H0z" fill="" fill-opacity="0" p-id="1572"></path><path d="M510.912 38.72a464 464 0 1 1 0 928 464 464 0 0 1 0-928z m149.888 736.512h-290.56a16.064 16.064 0 0 0-16 16.384l-0.256 44.16c47.616 22.4 100.8 34.944 156.928 34.944 59.712 0 116.096-14.208 165.952-39.424v-40.064a16 16 0 0 0-16-16zM510.912 134.72a368 368 0 0 0-250.944 637.184 112 112 0 0 1 110.336-92.672h290.56a112 112 0 0 1 108.736 85.12 368 368 0 0 0-258.688-629.632z m1.536 126.528a176 176 0 1 1 0 352 176 176 0 0 1 0-352z m0 96a80 80 0 1 0 0 160 80 80 0 0 0 0-160z" fill="" p-id="1573"></path></svg>${i18n.memberCenter || 'ä¼åä¸å¿'}</a> 2073 </div> 2074 ` : ''; 2075 2076 // 客æå¯¹è¯å 容åºå 2077 const chatTabContent = isDebugMode ? ` 2078 <div class="sm_tab_content active" id="chat-tab"> 2079 <div class="sm_output clearfix"></div> 2080 <div class="sm_quickLabel clearfix">${quickLabelsSection}</div> 2081 <div class="sm_input clearfix"> 2082 <div class="sm_editor"></div> 2083 <div class="sm_send"> 2084 <div class="erroMsg"></div> 2085 <a href="javascript:;" class="sm_sendBtn disabled"> 2086 ${sendIcon} 2087 </a> 2088 </div> 2089 </div> 2090 </div> 2091 ` : ` 2092 <div class="sm_output clearfix"></div> 2093 <div class="sm_quickLabel clearfix">${quickLabelsSection}</div> 2094 <div class="sm_input clearfix"> 2095 <div class="sm_editor"></div> 2096 <div class="sm_send"> 2097 <div class="erroMsg"></div> 2098 <a href="javascript:;" class="sm_sendBtn disabled"> 2099 ${sendIcon} 2100 </a> 2101 </div> 2102 </div> 2103 `; 2104 2105 // ä¼åä¸å¿å 容åºå - åå§ä¸ºç©ºï¼ç¹å»æ¶åå è½½ 2106 const memberTabContent = isDebugMode ? ` 2107 <div class="sm_tab_content" id="member-tab" style="display:none;"> 2108 <!-- ä¼åä¸å¿å 容å°å¨ç¹å»tabæ¶å¨æå è½½ --> 2109 <div class="member-loading"></div> 2110 </div> 2111 ` : ''; 2112 2113 // ä¸»å¯¹è¯æ¡ç»æ 2114 const dialogContent = isDebugMode ? ` 2115 ${tabsNav} 2116 ${chatTabContent} 2117 ${memberTabContent} 2118 ` : ` 2119 ${chatTabContent} 2120 `; 2121 2122 return ` 2123 <div class="${className}" id="${this.conId}"> 2124 <div class="sm_title"> 2125 <span class="sm_mark"> 2126 <svg t="1691993598192" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="814" width="200" height="200"><path d="M508.30872719 128.08273435c200.36824869 0 362.83837999 164.57253407 362.83837996 367.57335931 0 203.01910646-162.45184851 367.59164208-362.83837996 367.59164209v-55.13783256c170.33129377 0 308.41353791-139.89213981 308.41353633-312.43552832 0-172.57995248-138.08224413-312.45380951-308.41353633-312.45380952s-308.41353791 139.89213981-308.41353791 312.43552831c0 5.48453223 0.12797313 10.93250049 0.40219903
212616.34390634H145.81770106c-0.23766351-5.41140585-0.36563506-10.8593741-0.36563663-16.34390634C145.45206443 292.65526841 307.94047692 128.08273435 508.32700838 128.08273435z" p-id="815"></path><path d="M508.30872719 240.40595711c139.16086813 0 251.95941786 114.27937278 251.95941629 255.25013655 0 140.98904501-112.79854975 255.26841777-251.95941629 255.26841777-36.65495788 0-71.46345612-7.91600767-102.87154529-22.1757924l-65.81438835 34.62568148c-9.89044049 5.19202354-22.06610207 1.27972351-27.18499926-8.72040577a20.65840542 20.65840542 0 0 1-2.01099519-12.76067896l12.10253519-73.76696156a256.18250777 256.18250777 0 0 1-66.18002497-172.47026056c0-140.97076381 112.79854975-255.25013657 251.95941787-255.25013655zM381.28695667 446.66093709c-24.4975775 0-44.33330364 20.10995203-44.33330366 44.91832098 0 24.80836739 19.85400733 44.91831942 44.33330366 44.91831943 24.4975775 0 44.35158484-20.10995203 44.35158486-44.91831943 0-24.80836739-19.85400733-44.91831942-44.35158486-44.91832098z m127.00348775 0c-24.4975775 0-44.35158484 20.10995203-44.35158488 44.91832098 0 24.80836739 19.85400733 44.91831942 44.35158488 44.91831943s44.33330364-20.10995203 44.33330363-44.91831943c0-24.80836739-19.85400733-44.91831942-44.33330363-44.91832098z m126.98520652 0c-24.4975775 0-44.35158484 20.10995203-44.35158484 44.91832098 0 24.80836739 19.85400733 44.91831942 44.35158484 44.91831943s44.35158484-20.10995203 44.35158484-44.91831943c0-24.80836739-19.85400733-44.91831942-44.35158484-44.91832098zM183.47815657 388.70771279l43.82141265 251.79488075a34.91819015 34.91819015 0 0 1-27.33125199 40.36615843l-0.65814374 0.10969033c-62.21287819 11.11531881-121.53723669-30.96932612-132.50630275-93.9866024L56.71233074 529.00205007c-10.96906446-63.03555904 30.5671271-123.12775168 92.79828807-134.24307046l33.96753776-6.06954959zM840.52513489 388.70771279L790.707299 674.89061152l33.98581895 6.06954959c62.21287819 11.11531881 121.53723669-30.96932612 132.50630273-93.98660398l10.09153845-57.97150706c10.96906446-63.03555904-30.5671271-123.12775168-92.7982881-134.24307046l-33.96753614-6.06954959zM464.96263993 808.10990319h86.6738933c23.94912413 0 43.32780605 19.65290783 43.32780446 43.89454063 0 24.25991557-19.37868034 43.91282183-43.32780446 43.91282183h-86.6556121c-23.94912413 0-43.36437003-19.65290783-43.36437003-43.91282183 0-24.2416328 19.41524431-43.89454063 43.34608883-43.89454063z" p-id="816"></path></svg> 2127 </span> 2128 <a href="javascript:;" class="sm_close"> 2129 <svg t="1691998498613" class="icon" style="display:none;" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="2026" width="200" height="200"><path d="M630.271841 512.828421l364.879547-365.730081A85.053507 85.053507 0 1 0 874.970782 26.83268l-364.879546 365.730082-364.879547-365.730082A85.053507 85.053507 0 0 0 25.031084 147.09834L389.91063 512.828421l-364.879546 365.730082a85.053507 85.053507 0 0 0 0 120.350712 85.053507 85.053507 0 0 0 120.180605 0l364.879547-365.730081 364.879546 365.730081a85.053507 85.053507 0 0 0 120.180606 0 85.053507 85.053507 0 0 0 0-120.350712z" p-id="2027"></path></svg> 2130 <svg t="1766710772080" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="59118" width="200" height="200"><path d="M512 62c-248.52 0-450 201.48-450 450s201.48 450 450 450 450-201.48 450-450c0-248.52-201.48-450-450-450zM752 542h-480v-60h480v60z" p-id="59119"></path></svg> 2131 </a> 2132 <div class="sm_admin"> 2133 <img src="${img}" alt="${this.settings.name}" la="la" /> 2134 <p>${title}</p> 2135 </div> 2136 </div> 2137 <div class="sm_dialog"> 2138 ${dialogContent} 2139 </div> 2140 </div> 2141 ` 2142 } 2143 getFormlog(){ 2144 let c = this.colorLayout 2145 let className = `smartService ${c.windowLocation=='right'?'rightWindow':'leftWindow'} ${c.windowStyle==1?'bigWindow':'smallWindow'} ${c.entranceLocation!=1?'near':''} smsForm` 2146 let formSet = JSON.parse(this.res.setting.moreSetting) 2147 return ` 2148 <div class="${className}" id="${this.conId}-form" > 2149 <div class="sm_title"> 2150 <a href="javascript:;" class="sm_close"> 2151 <svg t="1747379471975" class="icon" viewB
2151ox="0 0 1024 1024" version="1.1" xmlns="https://www.w3.org/2000/svg" p-id="4982" width="128" height="128"><path d="M297.69350383 346.29910124L512 560.6055974 726.30649617 346.29910124a55.0126984 55.0126984 0 1 1 77.87942242 77.87942241L550.66354348 677.70089876a55.0126984 55.0126984 0 0 1-77.87942242 0L219.26174595 424.17852365c-10.49439069-10.49439069-16.01775312-24.30279805-16.01775442-38.66354347s6.07569919-28.72148955 16.01775442-39.21587894c21.54111683-20.98878007 56.89064234-21.54111683 78.43175788 0z" p-id="4983"></path></svg> 2152 </a> 2153 <div class="sm_formTitle">${formSet.chatSurveyForm.title}</div> 2154 <img src="/npublic/commonjs/smartService/formbg.png" alt="form" la="la" /> 2155 </div> 2156 ${this.getMsg(formSet.chatSurveyForm,'form')} 2157 </div> 2158 ` 2159 } 2160 //æ¾ç¤ºå®¢æçªå£ 2161 showFun(){ 2162 console.log('æ¯å¦ç»å½', this.isLoginFlag); 2163 if(this.nim){ 2164 this.nim.disconnect(); 2165 } 2166 if(this.needForm){ 2167 $("#"+this.conId+"-form").addClass("show") 2168 return 2169 } 2170 $("#"+this.conId+"-form").remove() 2171 $("#"+this.conId).addClass("show") 2172 $(".smtIconPrompt").hide() 2173 this.handleReply(false) 2174 2175 // å¨éæ°æå¼çªå£æ¶ï¼æ¸ 餿ªè¯»æ¶æ¯è®¡æ°åæ¬å°åå¨ 2176 this.unreadMessageCount = 0; 2177 this.clearUnreadCountFromStorage(); 2178 this.updateUnreadBadge(); // æ´æ°è§æ æ¾ç¤ºï¼å®é ä¸ä¼ç§»é¤è§æ ï¼ 2179 2180 // å¨éæ°æå¼çªå£æ¶ï¼æ£æ¥æ¯å¦éè¦æ¾ç¤º loading ç¶æ 2181 setTimeout(() => { 2182 const $output = $('.sm_output'); 2183 // æ£æ¥æ¯å¦ææ¶æ¯ï¼å¦ææ²¡æåæ¾ç¤º loading 2184 if ($output.find('.sm_msg').length === 0) { 2185 // æ·»å loading ç¬ç½ 2186 this.showLoadingMessage(); 2187 } 2188 if(this.res.enableAgentFlag) { 2189 this.manageMessagesDisplay(); 2190 } 2191 }, 100); 2192 2193 this.logNim() 2194 2195 2196 } 2197 //äºç»´æ°ç»æåº 2198 arraySort(data, key, order) { 2199 let nData = data 2200 let reg = /^([+]\d+[.]\d+|[-]\d+[.]\d+|\d+[.]\d+|[+]\d+|[-]\d+|\d+)$/ 2201 if(order == 'desc'){ 2202 nData = data.sort((a, b) => { 2203 if (reg.test(a[key])) { 2204 return b[key] - a[key] 2205 } else { 2206 return b[key].localeCompare(a[key]) 2207 } 2208 }) 2209 }else{ 2210 nData = data.sort((a, b) => { 2211 if (reg.test(a[key])) { 2212 return a[key] - b[key] 2213 } else { 2214 return a[key].localeCompare(b[key]) 2215 } 2216 }) 2217 } 2218 return nData 2219 } 2220 //ç»ç«¯ 2221 getTerminal(){ 2222 //夿æ¯å¦moç¯å¢ 2223 var isMo = function() { 2224 return Boolean(navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i)) || $(window).width()<=768 2225 } 2226 // æ¸ éï¼å°ç¨åº-1ãå ¬ä¼å·-2ãPC-3ãH5-4 2227 return this.isWxMini()?1:this.isWechat()?2:isMo()?4:3 2228 } 2229 //å¤æå¾®ä¿¡ 2230 isWechat(){ 2231 return navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger' 2232 } 2233 //夿å°ç¨åº 2234 isWxMini(){ 2235 return window.__wxjs_environment === 'miniprogram' || navigator.userAgent.toLowerCase().match(/miniprogram/i) =='miniprogram' 2236 } 2237 2238 // å建ææå¼å¼¹çª 2239 createGreetingPopup() { 2240 if (!this.shouldShowGreetingPopup()) { 2241 return; // 妿ä»å¤©å·²ç»å ³éè¿ï¼å䏿¾ç¤º 2242 } 2243 // ç¡®ä¿åªåå»ºä¸æ¬¡ 2244 if ($("#greetingPopup").length > 0) return; 2245 let img = $.handleDataImg(this.kefuHead) || '/npublic/commonjs/smartService/kefu.png' 2246 2247 // è°ç¨æ¥å£è·åææå¼å 容 2248 let title = this.colorLayout.tipTitle || i18n.AICustomerService || 'æ¨å¥½ï¼ææ¯AIæºè½å®¢æ'; 2249 let content = this.colorLayout.tipText || i18n.AICustomerServiceInfo || 'æå¯ä»¥å¸®æ¨è§£çé®é¢ãæ¨è产åï¼éæ¶ä¸ºæ¨æå¡!'; 2250 let tagsArr = this.colorLayout.tipLabels && this.colorLayout.tipLabels.length ? this.colorLayout.tipLabels : []; 2251 // å建弹çªDOM 2252 const popupHtml = `
2253 <div id="greetingPopup" class="greeting-popup ${this.colorLayout.windowLocation=='left'?'greeting-popup-left':''}"> 2254 <div class="greeting-content"> 2255 <span class="greeting-close">×</span> 2256 <div class="greeting-info"> 2257 <div class="greeting-img"> 2258 <img src="${img}" alt="${this.settings.name}" la="la" /> 2259 </div> 2260 <div class="greeting-infoBox"> 2261 <div class="greeting-header"> 2262 <div class="greeting-title"></div> 2263 </div> 2264 <div class="greeting-body"> 2265 <div class="greeting-text"></div> 2266 <div class="greeting-tags"></div> 2267 </div> 2268 </div> 2269 </div> 2270 <div class="greeting-btn-box"> 2271 <button class="greeting-close-btn greeting-btn-close">${i18n.close || 'å ³é'}</button> 2272 <button class="greeting-btn">${i18n.quickConsult || 'ç«å³å¨è¯¢'}</button> 2273 </div> 2274 </div> 2275 </div> 2276 `; 2277 2278 // æ·»å å°é¡µé¢ 2279 $("body").append(popupHtml); 2280 2281 // ç»å®äºä»¶ 2282 const popup = $("#greetingPopup"); 2283 popup.find(".greeting-close").on("click", () => { 2284 // popup.remove(); 2285 this.closeGreetingPopup(); 2286 }); 2287 2288 popup.find(".greeting-close-btn").on("click", () => { 2289 this.closeGreetingPopup(); 2290 }); 2291 2292 popup.find(".greeting-btn").on("click", () => { 2293 popup.remove(); 2294 $(document).off("click.greetingPopup"); 2295 this.showFun(); // æå¼çæ£ç客æçªå£ 2296 }); 2297 2298 // 设置æ é¢ 2299 if (title) { 2300 popup.find(".greeting-title").text(title); 2301 } 2302 2303 // 设置å 容 2304 if (content) { 2305 popup.find(".greeting-text").text(content || 'ææå¼'); 2306 } 2307 2308 // 设置æ ç¾ 2309 if (tagsArr && Array.isArray(tagsArr)) { 2310 const colorsClass = ['colors1', 'colors2', 'colors3', 'colors4']; 2311 const tagsHtml = tagsArr.map((tag, index) => { 2312 const color = colorsClass[index % colorsClass.length]; 2313 return `<span class="greeting-tag ${color}">${tag}</span>` 2314 }).join(''); 2315 popup.find(".greeting-tags").html(tagsHtml); 2316 } 2317 2318 // 1ç§åæ¾ç¤ºå¼¹çªï¼å¹¶æ³¨åç¹å»å¤é¨å ³é 2319 setTimeout(() => { 2320 popup.addClass("show"); 2321 setTimeout(() => { 2322 $(document).on("click.greetingPopup", (e) => { 2323 if (!$(e.target).closest("#greetingPopup .greeting-content").length && 2324 !$(e.target).closest(".smartIcon").length) { 2325 this.closeGreetingPopup(); 2326 $(document).off("click.greetingPopup"); 2327 } 2328 }); 2329 }, 300); 2330 }, 1000); 2331 } 2332 2333 // æ£æ¥æ¯å¦åºè¯¥æ¾ç¤ºé®åå¼¹çª 2334 shouldShowGreetingPopup() { 2335 const closedDate = sessionStorage.getItem('greetingPopupClosedDate'); 2336 2337 if (!closedDate) { 2338 return true; 2339 } 2340 2341 const today = new Date(); 2342 const todayKey = `${today.getFullYear()}-${today.getMonth() + 1}-${today.getDate()}`; 2343 2344 return closedDate !== todayKey; 2345 } 2346 2347 // å ³éé®åå¼¹çª 2348 closeGreetingPopup() { 2349 const today = new Date(); 2350 const dateKey = `${today.getFullYear()}-${today.getMonth() + 1}-${today.getDate()}`; 2351 2352 sessionStorage.setItem('greetingPopupClosedDate', dateKey);
2353 $(document).off("click.greetingPopup"); 2354 2355 // éèå¼¹çª 2356 $(`#greetingPopup`).fadeOut(300); 2357 2358 // 妿éè¦ï¼ä¹å¯ä»¥ç§»é¤DOMå ç´ 2359 // $(`.greeting-popup`).remove(); 2360 } 2361 2362 // æ¾ç¤ºè·é©¬ç¯ 2363 showMarquee(msg) { 2364 $("#marqueePopup").remove() 2365 let img = $.handleDataImg(this.kefuHead) || '/npublic/commonjs/smartService/kefu.png' 2366 let isLeft = this.colorLayout.windowLocation === 'left' 2367 2368 // æåæ¶æ¯çº¯ææ¬ 2369 let text = '' 2370 if (msg.type === 'text') { 2371 text = msg.text || '' 2372 } else if (msg.type === 'custom') { 2373 try { 2374 let msgObject = JSON.parse(msg.content) 2375 if (msgObject.aiAgent && msgObject.aiAgent.msg) { 2376 text = msgObject.aiAgent.msg 2377 } else { 2378 for (let key of (msgObject.paramSort || [])) { 2379 if ((key === 'text' || key === 'title') && msgObject[key]) { 2380 text = msgObject[key]; break 2381 } 2382 } 2383 } 2384 } catch(e) {} 2385 } 2386 // å»é¤ markdown 符å·ï¼åªä¿ççº¯ææ¬ 2387 text = text.replace(/[#*_`>\[\]!]/g, '').replace(/\n/g, ' ').trim() 2388 if (!text) return 2389 2390 const popupHtml = ` 2391 <div id="marqueePopup" class="greeting-popup ${isLeft ? 'greeting-popup-left' : ''}" style="min-width: 382px;"> 2392 <div class="greeting-content"> 2393 <span class="marquee-close greeting-close" style="display: none;">×</span> 2394 <div class="greeting-info"> 2395 <div class="greeting-img" style="display: none;"> 2396 <img src="${img}" alt="${this.settings.name}" la="la" /> 2397 </div> 2398 <div class="greeting-infoBox"> 2399 <div class="greeting-header" style="display: none;"> 2400 <div class="greeting-title">${this.settings.name}</div> 2401 </div> 2402 <div class="greeting-body"> 2403 <div class="marquee-text-wrap"> 2404 <span class="marquee-text">${text}</span> 2405 </div> 2406 </div> 2407 </div> 2408 </div> 2409 <div class="greeting-btn-box"> 2410 <button class="greeting-btn marquee-reply-btn">${i18n.quickConsult || 'åå¤'}</button> 2411 <button class="greeting-btn-close">${i18n.close || 'å ³é'}</button> 2412 </div> 2413 </div> 2414 </div> 2415 ` 2416 if ($("#greetingPopup").length > 0) { 2417 $("#greetingPopup").remove(); 2418 this.closeGreetingPopup(); 2419 } 2420 $("body").append(popupHtml) 2421 const $popup = $("#marqueePopup") 2422 $popup.find(".marquee-close").on("click", () => { $popup.remove(); $(document).off("click.marqueePopup") }) 2423 $popup.find(".marquee-reply-btn").on("click", () => { $popup.remove(); $(document).off("click.marqueePopup"); this.showFun() }) 2424 $popup.find(".greeting-btn-close").on("click", () => { $popup.remove(); $(document).off("click.marqueePopup"); $("#greetingPopup").length && $("#greetingPopup").show() }) 2425 setTimeout(() => { 2426 $popup.addClass("show"); 2427 setTimeout(() => { 2428 $(document).on("click.marqueePopup", (e) => { 2429 if (!$(e.target).closest("#marqueePopup .greeting-content").length && 2430 !$(e.target).closest(".smartIcon").length) { 2431 $popup.remove();
2432 $(document).off("click.marqueePopup"); 2433 } 2434 }); 2435 }, 300); 2436 }, 100) 2437 } 2438 2439 // éèè·é©¬ç¯ 2440 hideMarquee() { 2441 $("#marqueePopup").remove() 2442 } 2443 2444 // æ¾ç¤º loading ç¶æ 2445 showLoadingMessage() { 2446 const $output = $('.sm_output'); 2447 2448 // æ£æ¥æ¯å¦å·²ç»åå¨ loading æ¶æ¯ 2449 if ($output.find('.loading-message').length === 0) { 2450 // åå»ºè·³å¨ææ¬ææ 2451 const loadingText = "......"; // ä½ å¯ä»¥èªå®ä¹è¿ä¸ªææ¬ 2452 const bounceText = loadingText.split('').map((char, index) => 2453 `<span style="animation-delay: ${index * 0.1}s">${char}</span>` 2454 ).join(''); 2455 2456 $output.append(` 2457 <div class="loading-message bounce-text" style="min-height:${$('.sm_output').height()}px">${bounceText}</div> 2458 `); 2459 // ç¡®ä¿æ»å¨å°åºé¨ 2460 $output.scrollTop(99999999); 2461 } 2462 } 2463 2464 // éè loading ç¶æ 2465 hideLoadingMessage() { 2466 $('.sm_output .loading-message').remove(); 2467 } 2468 2469 // æ°å¢ï¼ç®¡çæ¶æ¯æ¾ç¤ºçæ¹æ³ 2470 manageMessagesDisplay() { 2471 const $output = $('.sm_output'); 2472 const $messages = $output.find('.sm_msg'); 2473 2474 // è·åä»å¤©çæ¥æï¼æ¶é´æ³ï¼ 2475 const today = new Date(); 2476 today.setHours(0, 0, 0, 0); 2477 const todayTimestamp = today.getTime(); 2478 2479 // çéåºä»å¤©ä¹åçæ¶æ¯ 2480 const $oldMessages = $messages.filter(function() { 2481 const msgTime = parseInt($(this).attr('data-time')) || 0; 2482 return msgTime < todayTimestamp; 2483 }); 2484 2485 // çéåºä»å¤©åä¹åçæ¶æ¯ 2486 const $todayMessages = $messages.filter(function() { 2487 const msgTime = parseInt($(this).attr('data-time')) || 0; 2488 return msgTime >= todayTimestamp; 2489 }); 2490 2491 // ç§»é¤å¯è½åå¨ç"以䏿¯å½åä¼è¯"æç¤º 2492 $output.find('.current-session-tip').remove(); 2493 2494 // éèä»å¤©ä¹åçæ¶æ¯ 2495 $oldMessages.hide(); 2496 2497 // æ¾ç¤ºä»å¤©åä¹åçæ¶æ¯ 2498 $todayMessages.show(); 2499 2500 // 妿æä»å¤©ä¹åçæ§æ¶æ¯ï¼åæ·»å "æ¥çæ´å¤"æé® 2501 if ($oldMessages.length > 0) { 2502 // å¦æè¿æ²¡æ"æ¥çæ´å¤"æé®ï¼åæ·»å ä¸ä¸ª 2503 if (!$output.find('.load-more-messages').length) {
2504 const loadMoreButton = $(` 2505 <div class="load-more-messages"> 2506 <a href="javascript:;">${i18n.viewHistory || 'æ¥çåå²ä¼è¯'}</a> 2507 </div> 2508 `); 2509 2510 // å°æé®æå ¥å°ç¬¬ä¸æ¡ä»å¤©çæ¶æ¯ä¹å 2511 if ($todayMessages.first().length) { 2512 $todayMessages.first().before(loadMoreButton); 2513 } else { 2514 $output.append(loadMoreButton); 2515 } 2516 2517 // ç»å®ç¹å»äºä»¶ 2518 loadMoreButton.on('click', () => { 2519 this.loadMoreMessages(); 2520 }); 2521 } 2522 } else { 2523 // å¦ææ²¡ææ§æ¶æ¯ï¼ç§»é¤"æ¥çæ´å¤"æé® 2524 $output.find('.load-more-messages').remove(); 2525 } 2526 } 2527 2528 // å è½½å岿¶æ¯ 2529 loadMoreMessages() { 2530 const $output = $('.sm_output'); 2531 const $messages = $output.find('.sm_msg'); 2532 2533 // è·åä»å¤©çæ¥æï¼æ¶é´æ³ï¼ 2534 const today = new Date(); 2535 today.setHours(0, 0, 0, 0); 2536 const todayTimestamp = today.getTime(); 2537 2538 // çéåºä»å¤©ä¹åçæ¶æ¯ 2539 const $oldMessages = $messages.filter(function() { 2540 const msgTime = parseInt($(this).attr('data-time')) || 0; 2541 return msgTime < todayTimestamp; 2542 }); 2543 2544 // çéåºå½åéèçæ§æ¶æ¯ 2545 const $hiddenOldMessages = $oldMessages.filter(':hidden'); 2546 2547 // æ¯æ¬¡æ¾ç¤ºæå¤10æ¡æ§æ¶æ¯ 2548 const messagesToShow = Math.min(10, $hiddenOldMessages.length); 2549 2550 // æ¾ç¤ºæ¥ä¸æ¥ç10æ¡æ§æ¶æ¯ 2551 if ($hiddenOldMessages.length > 0) { 2552 $hiddenOldMessages.slice(0, messagesToShow).show(); 2553 } 2554 2555 // è·å"æ¥çæ´å¤"æé® 2556 const $loadMoreButton = $output.find('.load-more-messages'); 2557 2558 // å°"æ¥çæ´å¤"æé®ç§»å¨å°å½åæ¾ç¤ºçæå䏿¡å岿¶æ¯ä¹å 2559 if ($oldMessages.filter(':visible').length > 0) { 2560 const $lastVisibleOldMessage = $oldMessages.filter(':visible').last(); 2561 $lastVisibleOldMessage.after($loadMoreButton); 2562 } 2563 2564 // å¦ææ²¡ææ´å¤éèçæ§æ¶æ¯äºï¼ç§»é¤"æ¥çæ´å¤"æé® 2565 if ($hiddenOldMessages.length <= messagesToShow) { 2566 $loadMoreButton.remove(); 2567 } 2568 } 2569 2570 // æ·»å 页é¢å¯¹è±¡ç嬿¹æ³(30ç§æ¨èåå<ææ¶ä¸éè¦>) 2571 initPageObjListener() { 2572 if(!this.res.enableAgentFlag) return; 2573 // 宿¶æ£æ¥ window.pageObj 2574 this.pageObjInterval = setInterval(() => { 2575 this.checkPageObj(); 2576 }, 1000); // æ¯ç§æ£æ¥ä¸æ¬¡ 2577 2578 // åæ¶ä¹çå¬å¯è½ç pageObj åå 2579 this.checkPageObj(); 2580 } 2581 2582 // æ£æ¥ pageObj æ¡ä»¶ 2583 checkPageObj() { 2584 let stayDuration = Number(this.inviteSet?.behavior?.stayDuration) * 1000 || 30000; 2585 if (window.pageObj && 2586 window.pageObj.appId === '143150160001' && 2587 window.pageObj.pageType === '3') { 2588 2589 // 妿æ¡ä»¶æ»¡è¶³ï¼è®¾ç½®ä¸ä¸ª30ç§è°ç¨æ¥å£ç宿¶å¨ 2590 if (!this.pageMatchTimer) { 2591 this.pageMatchTimer = setTimeout(() => { 2592 this.callBrowseReportApi(); 2593 }, stayDuration ); // 30ç§è°ç¨æ¥å£ 2594 } 2595 } else { 2596 // 妿æ¡ä»¶ä¸æ»¡è¶³ï¼æ¸ é¤ä¹åç宿¶å¨ 2597 if (this.pageMatchTimer) { 2598 clearTimeout(this.pageMatchTimer); 2599 this.pageMatchTimer = null; 2600 } 2601 } 2602 } 2603 2604 // è°ç¨æµè§æ¥åæ¥å£ 2605 callBrowseReportApi() { 2606 // æ£æ¥æ¯å¦å·²ç»è°ç¨è¿ï¼é¿å éå¤è°ç¨ 2607 if (this.hasCalledBrowseReport) { 2608 return; 2609 } 2610 this.behaviorReport('detail'); 2611 // const url = `${this.res.domain}/visitormanager/intelligent/front/browseReport?tenantId=${tenant.tenantId}&instance=${tenant.bossProductInstance}`; 2612 2613 // c.cmsAjax.postJson(url, { 2614 // appCode: window.pageObj.appId, 2615 // dsId: 'product', 2616 // title: document.title, 2617 // pageType: window.pageObj.pageType, 2618 // accid: this.res.account, 2619 // timestamp: Date.now() 2620 // }).then((res) => { 2621 // this.hasCalledBrowseReport = true; // æ è®°å·²è°ç¨ï¼é¿å éå¤è°ç¨ 2622 // }).catch((err) => {}); 2623 } 2624 2625 // å¨ç±»çéæ¯æ¹æ³ä¸æ¸ ç宿¶å¨ï¼å¦ææçè¯ï¼
2626 // ä¾å¦å¨ closeDialog æå ¶ä»éå½çä½ç½®è°ç¨ 2627 cleanup() { 2628 if (this.pageObjInterval) { 2629 clearInterval(this.pageObjInterval); 2630 this.pageObjInterval = null; 2631 } 2632 2633 if (this.pageMatchTimer) { 2634 clearTimeout(this.pageMatchTimer); 2635 this.pageMatchTimer = null; 2636 } 2637 } 2638 2639 // æ´æ°æªè¯»æ¶æ¯è§æ 2640 updateUnreadBadge() { 2641 // ä¿å计æ°å°æ¬å°åå¨ 2642 this.saveUnreadCountToStorage(); 2643 2644 // invitationType 3ï¼ä» æ¾ç¤ºè·é©¬ç¯ï¼ä¸æ¾ç¤ºæªè¯»è§æ 2645 let invitationType = this.inviteSet && this.inviteSet.invitation && this.inviteSet.invitation.invitationType || 1; 2646 if (invitationType == 3) return 2647 2648 const $icon = $("#" + this.iconId); 2649 const $badge = $icon.find('.unread-badge'); 2650 2651 if (this.unreadMessageCount > 0) { 2652 if ($badge.length > 0) { 2653 // å¦æè§æ å·²åå¨ï¼æ´æ°æ°å 2654 $badge.text(this.unreadMessageCount); 2655 } else { 2656 // å¦æè§æ ä¸åå¨ï¼å建æ°çè§æ 2657 const badgeHtml = `<span class="unread-badge">${this.unreadMessageCount}</span>`; 2658 $icon.append(badgeHtml); 2659 } 2660 } else { 2661 // å¦ææ²¡ææªè¯»æ¶æ¯ï¼ç§»é¤è§æ 2662 $badge.remove(); 2663 } 2664 } 2665 2666 // ä¿åæªè¯»æ¶æ¯è®¡æ°å°æ¬å°åå¨ 2667 saveUnreadCountToStorage() { 2668 localStorage.setItem(`smartService_unreadCount`, this.unreadMessageCount.toString()); 2669 } 2670 2671 // 仿¬å°åå¨è·åæªè¯»æ¶æ¯è®¡æ° 2672 getUnreadCountFromStorage() { 2673 const count = localStorage.getItem(`smartService_unreadCount`); 2674 return count ? parseInt(count) : 0; 2675 } 2676 2677 // æ¸ é¤æ¬å°åå¨ä¸çæªè¯»æ¶æ¯è®¡æ° 2678 clearUnreadCountFromStorage() { 2679 localStorage.removeItem(`smartService_unreadCount`); 2680 } 2681 2682 // æ·»å æ£æ¥ç»å½ç¶æå¹¶æäº¤çæ¹æ³ 2683 checkLoginAndSubmit($target, isForm, type) { 2684 // æ£æ¥æ¯å¦å·²ç»å½ 2685 this.isLogin().then(isLoggedIn => { 2686 if (isLoggedIn) { 2687 // å·²ç»å½ï¼ç´æ¥æäº¤è¡¨å 2688 this.submitForm($target, isForm, type); 2689 } else { 2690 // æªç»å½ï¼æ¾ç¤ºç»å½å¼¹çª 2691 this.showLoginPopup(() => { 2692 // ç»å½æååçåè° 2693 this.submitForm($target, isForm, type); 2694 }); 2695 } 2696 }); 2697 } 2698 2699 // æ¾ç¤ºç»å½å¼¹çª 2700 showLoginPopup(callback) { 2701 // æ£æ¥æ¯å¦å·²ç»åå¨ç»å½å¼¹çª 2702 if ($("#loginPopup").length > 0) return; 2703 2704 const loginUrl = '/login.html'; // æ ¹æ®å®é æ åµè°æ´ç»å½é¡µé¢è·¯å¾ 2705 2706 // å建é®ç½©å± 2707 const overlayHtml = '<div id="loginPopupOverlay" class="login-popup-overlay" style="position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.5); z-index: 99998;"></div>'; 2708 2709 const popupHtml = ` 2710 <div id="loginPopup" class="greeting-popup"> 2711 <div class="greeting-content"> 2712 <div style="padding: 20px;"> 2713 <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px;"> 2714 <h3 style="margin: 0;">ç»å½</h3> 2715 <span id="loginPopupClose" class="greeting-close" style="font-size: 24px; cursor: pointer;">×</span> 2716 </div> 2717 <div style="height: 600px;"> 2718 <iframe 2719 id="loginFrame" 2720 src="${loginUrl}" 2721 width="100%" 2722 height="100%" 2723 frameborder="0" 2724 style="border-radius: 8px;"> 2725 </iframe> 2726 </div> 2727 </div> 2728 </div> 2729 </div> 2730 `; 2731 2732 // æ·»å é®ç½©å±åå¼¹çªå°é¡µé¢ 2733 $("body").append(overlayHtml).append(popupHtml); 2734 2735 const $popup = $("#loginPopup");
2736 const $overlay = $("#loginPopupOverlay"); 2737 const $loginPrompt = $('.login-prompt'); 2738 2739 // ç»å®å ³éäºä»¶ 2740 $popup.find("#loginPopupClose").on("click", () => { 2741 $popup.remove(); 2742 $overlay.remove(); 2743 clearInterval(loginCheckTimer); 2744 }); 2745 2746 // ç¹å»é®ç½©å±å ³éå¼¹çª 2747 $overlay.on("click", () => { 2748 $popup.remove(); 2749 $overlay.remove(); 2750 }); 2751 2752 // ç»å®iframeçloadäºä»¶æ¥æ£æµç»å½ç¶æ 2753 const $loginFrame = $popup.find("#loginFrame"); 2754 let loginCheckTimer = null; 2755 2756 $loginFrame.on('load', () => { 2757 // è®¾ç½®å®æ¶å¨å®ææ£æ¥ç»å½ç¶æ 2758 loginCheckTimer = setInterval(() => { 2759 try { 2760 // æ£æ¥iframeä¸çç»å½ç¶æï¼éè¦ååæè½è®¿é® 2761 const iframeDoc = $loginFrame[0].contentDocument || $loginFrame[0].contentWindow.document; 2762 const loginStatus = iframeDoc.querySelector('.login-success') || 2763 iframeDoc.querySelector('#loginSuccess') || 2764 iframeDoc.querySelector('.user-logged-in'); 2765 2766 // if (loginStatus) { 2767 // æ£æµå°ç»å½æå 2768 this.isLogin().then(isLoggedIn => { 2769 if (isLoggedIn) { 2770 clearInterval(loginCheckTimer); 2771 $popup.remove(); 2772 $overlay.remove(); 2773 $loginPrompt.remove(); 2774 if (callback && typeof callback === 'function') { 2775 callback(); 2776 } 2777 } 2778 }); 2779 // } 2780 } catch (e) { 2781 // è·¨åè®¿é®æ¶ä¼æ¥éï¼éè¦ä½¿ç¨å ¶ä»æ¹å¼æ£æµç»å½ç¶æ 2782 console.log('æ æ³ç´æ¥è®¿é®iframeå 容ï¼ä½¿ç¨å ¶ä»æ¹å¼æ£æµç»å½'); 2783 } 2784 }, 2000); // æ¯ç§æ£æ¥ä¸æ¬¡ 2785 }); 2786 2787 // æ¾ç¤ºå¼¹çª 2788 setTimeout(() => { 2789 $popup.addClass("show"); 2790 }, 100); 2791 } 2792 2793 getScrollPercent() { 2794 // æ»å¨é«åº¦ 2795 const scrollTop = document.documentElement.scrollTop || window.pageYOffset; 2796 // 页颿»é«åº¦ 2797 const scrollHeight = document.documentElement.scrollHeight; 2798 // å¯è§çªå£é«åº¦ 2799 const clientHeight = document.documentElement.clientHeight; 2800 2801 // 坿»å¨çæ»è·ç¦» 2802 const totalHeight = scrollHeight - clientHeight; 2803 2804 if (totalHeight <= 0) return 0; 2805 2806 // 计ç®ç¾åæ¯ 2807 const percent = (scrollTop / totalHeight) * 100; 2808 2809 // ä¿ç两ä½å°æ°ï¼å¯å»æ toFixedï¼ 2810 return parseInt(percent); 2811 } 2812 2813 // è¡ä¸ºè½¨è¿¹ä¸æ¥ 2814 behaviorReport(pageTypes) { 2815 const url = `/fwebapi/behavior/trace/report?tenantId=${tenant.tenantId}&instance=${tenant.bossProductInstance}`; 2816 2817 const previousPageUrl = sessionStorage.getItem('currentPageUrl') || ''; 2818 const previousPageTitle = sessionStorage.getItem('currentPageTitle') || ''; 2819 // æ»å¨æ·±åº¦ 2820 const percent = this.getScrollPercent(); 2821 2822 let reportData = {}; 2823 2824 reportData = { 2825 "visitorId": this.res.account, //客æ account 2826 "sessionId": sessionStorage.getItem('sdkSessionId') || '', //sdkSessionId 2827 "jsonData": { 2828 "source": this.getSensorsdata2015().refferUrl || 'ç´æ¥è®¿é®', //夿latestreffer ï¼åºåç¾åº¦ï¼è°·æç
2829 "lp": this.getSensorsdata2015().landUrl || '', //ålatest landpage 2830 "vp": location.href || '', //å½å页é¢url 2831 "vpt": document.title || '', //å½å页title 2832 "pp": previousPageUrl, //åä¸é¡µ æå¨åä¸ä¸ï¼è¿å ¥é¡µé¢æ¶åsessionstorageï¼{url,title} 2833 "ppt": previousPageTitle, //åä¸é¡µtitle 2834 "pn": window.pageObj ? pageObj.name : '', // pageObj.name 2835 "appCode": window.pageObj ? pageObj.appId : "", // pageObj.appId 2836 "tid": window.pageObj ? pageObj.contentType : '', //pageObj.contentType 2837 "pageType":window.pageObj ? pageObj.pageType : '', //pageObj.pageType 1,2,3综åï¼å表ï¼è¯¦æ 2838 // "visitorId": this.res.account, //客æ account 2839 pageId: window.pageObj ? pageObj.pageId : "", 2840 } 2841 } 2842 if(pageTypes == 'isScroll') { 2843 reportData.jsonData.scrollDepth = percent; 2844 } else { 2845 if(reportData.jsonData.scrollDepth) delete reportData.jsonData.scrollDepth; 2846 } 2847 2848 c.cmsAjax.postJson(url, reportData).then((res) => {}).catch((e) => {}); 2849 if(pageTypes == 'detail') this.hasCalledBrowseReport = true; 2850 } 2851 // åå§åè¡ä¸ºè½¨è¿¹ä¸æ¥ - 馿¬¡å è½½è°ç¨ä¸æ¬¡ï¼60ç§ååè°ç¨ä¸æ¬¡ï¼æ»å ±è°ç¨ä¸¤æ¬¡ 2852 initBehaviorReport() { 2853 console.log("æ¯å¦ç¬¦å䏿¥è¦æ±ï¼", this.res.enableAgentFlag) 2854 let totalBrowseTime = Number(this.inviteSet?.behavior?.totalBrowseTime) * 1000 || 60000; 2855 if(this.res.enableAgentFlag) { 2856 // 馿¬¡å è½½ç«å³è°ç¨ 2857 this.behaviorReport(); 2858 2859 // 设置60ç§åè°ç¨ç¬¬äºæ¬¡ 2860 this.behaviorReportTimer = setTimeout(() => { 2861 this.behaviorReport(); 2862 // è°ç¨å®æåæ¸ ç宿¶å¨å¼ç¨ 2863 if (this.behaviorReportTimer) { 2864 clearTimeout(this.behaviorReportTimer); 2865 this.behaviorReportTimer = null; 2866 } 2867 }, totalBrowseTime); // 60ç§ = 60000æ¯«ç§ 2868 } 2869 } 2870 2871 // è·åç¥çæ°æ® 2872 2873 getSensorsdata2015 (){ 2874 let cookie = getCookie('sensorsdata2015jssdkcrossZQSensorsObj'); 2875 if(cookie){ 2876 cookie = JSON.parse(decodeURIComponent(cookie)); 2877 let landUrl = decodeURI(decodeURIComponent(escape(cookie.props.$latest_landing_page)), "UTF-8"); 2878 let refferUrl = decodeURI(decodeURIComponent(escape(cookie.props.$latest_referrer)), "UTF-8"); 2879 if(refferUrl && refferUrl != 'undefined' && refferUrl != 'null'){ 2880 refferUrl = refferUrl.split("#")[0] 2881 refferUrl = refferUrl.split("?")[0] 2882 refferUrl = refferUrl.split("//")[1] 2883 refferUrl = refferUrl.split("/")[0] 2884 let relist = [ 2885 { 2886 name:"baidu", 2887 key:['m.baidu.com','www.baidu.com','baidu.com'] 2888 }, 2889 { 2890 name:"google", 2891 key:["www.google.co.jp","www.google.la","www.google.co.id","www.google.kg","www.google.ae","www.google.com.lb","www.google.com.tr","www.google.az","www.google.no","www.google.ie","www.google.be","www.google.li","www.google.ad","www.google.com.mt","www.google.com.ua","www.google.hr","www.google.me","www.google.dz","www.google.sn","www.google.ci","www.google.tg","www.google.com.ng","www.google.cm","www.google.td","www.google.co.ke","www.google.mg","www.google.co.zm","www.google.nr","www.google.co.ck","www.google.co.ve","www.google.com.br","www.google.hn","www.google.com.ni","www.google.com.jm","www.google.co.kr","www.google.com.vn","www.google.com.kh","www.google.com.sg","www.google.tm","www.google.com.af","www.google.co.in","www.google.com.bd","www.google.am","www.google.se","www.google.fi","www.google.ee","
2891www.google.lv","www.google.lt","www.google.co.uk","www.google.gg","www.google.fr","www.google.de","www.google.cz","www.google.hu","www.google.ba","www.google.mk","www.google.gm","www.google.ml","www.google.com.gh","www.google.ne","www.google.cf","www.google.it.ao","www.google.mu","www.google.com.na","www.google.co.za","www.google.com.nf","www.google.com.sb","www.google.fm","www.google.ws","www.google.gy","www.google.com.pe","www.google.com.ar","www.google.cl","www.google.com","www.google.com.gt","www.google.com.bz","www.google.com.sv","www.google.bs","www.google.com.tw","www.google.com.tj","www.google.com.np","www.google.lk","www.google.com.kw","www.google.com.bh","www.google.com.om","www.google.jo","www.google.co.il","www.google.nl","www.google.at","www.google.ch","www.google.gr","www.google.com.by","www.google.pl","www.google.sk","www.google.rs","www.google.ro","www.google.md","www.google.com.ly","www.google.com.sl","www.google.bj","www.google.sh","www.google.com.et","www.google.dj","www.google.co.ug","www.google.rw","www.google.bi","www.google.mw","www.google.co.mz","www.google.sc","www.google.com.au","www.google.ki","www.google.com.do","www.google.com.mx","www.google.com.pa","www.google.cn","www.google.mn","www.google.co.th","www.google.com.my","www.google.com.bn","www.google.com.ph","www.google.tp","www.google.kz","www.google.co.uz","www.google.com.pk","www.google.mv","www.google.com.sa","www.google.co.ls","www.google.is","www.google.dk","www.google.je","www.google.im","www.google.lu","www.google.pt","www.google.es","www.google.com.gi","www.google.it","www.google.sm","www.google.ru","www.google.si","www.google.bg","www.google.com.eg","www.google.co.ma","www.google.bf","www.google.ga","www.google.cg","www.google.cd","www.google.co.tz","www.google.co.zw","www.google.co.bw","www.google.co.nz","www.google.com.fj","www.google.tk","www.google.as","www.google.to","www.google.nu","www.google.tt","www.google.com.co","www.google.com.ec","www.google.com.bo","www.google.com.py","www.google.com.uy","www.google.gl","www.google.co.cr","www.google.com.cu","www.google.ht","www.google.com.hk"] 2892 }, 2893 { 2894 name:"sougou", 2895 key:["sogou.com","www.sogou.com","m.sogou.com","wap.sogou.com"] 2896 }, 2897 { 2898 name:"bing", 2899 key:["bing.com","cn.bing.com","www.bing.com"] 2900 }, 2901 { 2902 name:"360", 2903 key:["www.so.com","so.com","m.so.com"] 2904 }, 2905 { 2906 name:"yandex", 2907 key:["www.yandex.com","yandex.com","yandex.ru","www.yandex.ru","yandex.ua","yandex.kz","yandex.com.tr","yandex.by","yandex.az","yandex.com.ge","yandex.uz","yandex.md","yandex.ee","yandex.lt","yandex.lv","yandex.ro","yandex.pl","yandex.es","yandex.it","yandex.de","yandex.dk","yandex.no","yandex.pt","yandex.rs","yandex.sk","yandex.tj","www.yandex.ua","www.yandex.kz","www.yandex.com.tr","www.yandex.by","www.yandex.az","www.yandex.com.ge","www.yandex.uz","www.yandex.md","www.yandex.ee","www.yandex.lt","www.yandex.lv","www.yandex.ro","www.yandex.pl","www.yandex.es","www.yandex.it","www.yandex.de","www.yandex.dk","www.yandex.no","www.yandex.pt","www.yandex.rs","www.yandex.sk","www.yandex.tj"] 2908 }, 2909 { 2910 name:"other", 2911 key:['www.aol.com','duckduckgo.com','www.fresheye.com','www.sputtr.com','searcn.yahoo.com','www.search.aol.com','fresheye.com','www.seznam.com','www.duckduckgo.com','search.aol.com','m.ask.com','www.lycos.com','search.naver.com','www.soso.com','www.youdao.com','www.ask.com','www.ceek.jp','www.hotbot.com','www.naver.com','www.search.com','m.sm.cn','www.altavista.com'] 2912 }, 2913 ] 2914 relist.forEach(e=>{ 2915 let rtmp = e.key.find(n=>refferUrl==n) 2916 if(rtmp){ 2917 refferUrl = e.name 2918 } 2919 }) 2920 } 2921 return { 2922 landUrl, 2923 refferUrl 2924 } 2925 }else{ 2926 return ''; 2927 } 2928 } 2929 2930 initScrollListener() {
2931 $(window).on('scroll.scrollListener', () => { 2932 // è·åæ»å¨æ¡å½åä½ç½® 2933 const scrollTop = $(window).scrollTop(); 2934 // è·å页é¢å¯æ»å¨æ»é«åº¦ 2935 const scrollHeight = $(document).height() - $(window).height(); 2936 2937 // é¿å é¤ä»¥ 0 2938 if (scrollHeight <= 0) { 2939 return; 2940 } 2941 2942 // è®¡ç®æ»å¨ç¾åæ¯ 2943 const scrollPercent = scrollTop / scrollHeight; 2944 2945 // è¶ è¿ 80% 䏿ªå¼¹çªè¿æ¶è§¦å 2946 let scrollDepth = (this.inviteSet?.behavior?.scrollDepth || 80) / 100 2947 if (scrollPercent >= scrollDepth && !this.hasAlerted) { 2948 this.hasAlerted = true; // 使ç¨ç±»å±æ§æ è®° 2949 // alert(123); 2950 this.behaviorReport('isScroll'); 2951 } 2952 }); 2953 } 2954 2955 // ä¼è¯é请é ç½® inviteSet 对象 2956 inviteSetFn() { 2957 // è·åinviteSetå¯¹è±¡æ°æ®è¿è¡é ç½® 2958 // 详æ é¡µé¡µæ° 2959 let totalPageCount = this.inviteSet?.behavior?.pageCount || 3; 2960 // 详æ 页访é®è®¡æ°ï¼å½å页æ¯è¯¦æ 页æ¶ç´¯å ï¼è¾¾å° pageCount æ¶ä¸æ¥ 2961 let isDetailPage = window.pageObj && 2962 window.pageObj.appId === '143150160001' && 2963 window.pageObj.pageType === '3' 2964 if (isDetailPage) { 2965 let visitedCount = parseInt(sessionStorage.getItem('sm_detail_page_count') || '0') + 1 2966 sessionStorage.setItem('sm_detail_page_count', visitedCount) 2967 if (visitedCount === totalPageCount) { 2968 this.callBrowseReportApi() 2969 } 2970 } 2971 // æå®é¡µé¢ 2972 let currentPages = this.inviteSet?.behavior?.pages; 2973 if (Array.isArray(currentPages) && window.pageObj && window.pageObj.pageId) { 2974 let matched = currentPages.some(page => page.pageId == window.pageObj.pageId) 2975 if (matched) { 2976 this.behaviorReport() 2977 } 2978 } 2979 } 2980 2981 }; 2982 return smartService 2983})
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.