bhd-components 0.6.6 → 0.6.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{869a16fb.esm.es5.development.js → 12224038.esm.es5.development.js} +1 -1
- package/dist/{c220442c.esm.es5.production.js → 600075bb.esm.es5.production.js} +1 -1
- package/dist/index.esm.es5.development.css +730 -722
- package/dist/index.esm.es5.development.js +227 -152
- package/dist/index.esm.es5.production.css +1 -1
- package/dist/index.esm.es5.production.js +1 -1
- package/es2017/customerService/function.js +19 -12
- package/es2017/customerService/historyFun.js +26 -17
- package/es2017/customerService/index.js +176 -121
- package/es2017/customerService/index.module.less +6 -20
- package/es2017/customerService/index2.module.less +6 -20
- package/esm/customerService/function.js +19 -12
- package/esm/customerService/historyFun.js +26 -17
- package/esm/customerService/index.js +180 -121
- package/esm/customerService/index.module.less +6 -20
- package/esm/customerService/index2.module.less +6 -20
- package/package.json +1 -1
|
@@ -32,19 +32,26 @@ const serverUrl = ()=>{
|
|
|
32
32
|
};
|
|
33
33
|
//复制内容
|
|
34
34
|
const copyText = (text)=>{
|
|
35
|
-
// text是复制文本
|
|
36
|
-
// 创建input元素
|
|
37
|
-
const el = document.createElement("
|
|
38
|
-
// 给input元素赋值需要复制的文本
|
|
39
|
-
el.setAttribute("value", text);
|
|
40
|
-
// 将input元素插入页面
|
|
41
|
-
document.body.appendChild(el);
|
|
42
|
-
// 选中input元素的文本
|
|
43
|
-
el.select();
|
|
44
|
-
// 复制内容到剪贴板
|
|
35
|
+
// // text是复制文本
|
|
36
|
+
// // 创建input元素
|
|
37
|
+
// const el = document.createElement("textarea");
|
|
38
|
+
// // 给input元素赋值需要复制的文本
|
|
39
|
+
// el.setAttribute("value", text);
|
|
40
|
+
// // 将input元素插入页面
|
|
41
|
+
// document.body.appendChild(el);
|
|
42
|
+
// // 选中input元素的文本
|
|
43
|
+
// el.select();
|
|
44
|
+
// // 复制内容到剪贴板
|
|
45
|
+
// document.execCommand("copy");
|
|
46
|
+
// // 删除input元素
|
|
47
|
+
// document.body.removeChild(el);
|
|
48
|
+
// return true;
|
|
49
|
+
var tempInput = document.createElement("textarea");
|
|
50
|
+
document.body.appendChild(tempInput);
|
|
51
|
+
tempInput.value = text;
|
|
52
|
+
tempInput.select();
|
|
45
53
|
document.execCommand("copy");
|
|
46
|
-
|
|
47
|
-
document.body.removeChild(el);
|
|
54
|
+
document.body.removeChild(tempInput);
|
|
48
55
|
return true;
|
|
49
56
|
};
|
|
50
57
|
//获取当前时间
|
|
@@ -275,6 +275,7 @@ const HistoryFun = (props)=>{
|
|
|
275
275
|
}),
|
|
276
276
|
/*#__PURE__*/ _jsx("span", {
|
|
277
277
|
onClick: ()=>{
|
|
278
|
+
loadSpecifiedData();
|
|
278
279
|
onClose();
|
|
279
280
|
},
|
|
280
281
|
children: /*#__PURE__*/ _jsx(CustomClose, {})
|
|
@@ -346,13 +347,18 @@ const HistoryFun = (props)=>{
|
|
|
346
347
|
let span = "";
|
|
347
348
|
let time = "";
|
|
348
349
|
if (item.count == 1) {
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
}
|
|
350
|
+
let reg = /[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/im;
|
|
351
|
+
//搜索内容是否有特殊字符
|
|
352
|
+
if (reg.test(keyWordProblem)) {
|
|
353
|
+
span = item.message.replaceAll(keyWordProblem, (e)=>{
|
|
354
|
+
return `<span class=${styles.sign}>${e}</span>`;
|
|
355
|
+
});
|
|
356
|
+
} else {
|
|
357
|
+
span = item.message.replaceAll(new RegExp(keyWordProblem, "ig"), (i)=>{
|
|
358
|
+
// console.log(i,'skdcnsdjk')
|
|
359
|
+
return `<span class=${styles.sign}>${i}</span>`;
|
|
360
|
+
});
|
|
361
|
+
}
|
|
356
362
|
let currentTime = getDataTime(-1, 1); //当前时间
|
|
357
363
|
let createdAt = getDataTime(item.createdAt, 1);
|
|
358
364
|
if (currentTime == createdAt) {
|
|
@@ -434,16 +440,19 @@ const HistoryFun = (props)=>{
|
|
|
434
440
|
} else {
|
|
435
441
|
time = getDataTime(list.updatedAt);
|
|
436
442
|
}
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
443
|
+
let reg = /[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/im;
|
|
444
|
+
let span = '';
|
|
445
|
+
//搜索内容是否有特殊字符
|
|
446
|
+
if (reg.test(keyWordProblem)) {
|
|
447
|
+
span = list.message.replaceAll(keyWordProblem, (e)=>{
|
|
448
|
+
return `<span class=${styles.sign}>${e}</span>`;
|
|
449
|
+
});
|
|
450
|
+
} else {
|
|
451
|
+
span = list.message.replaceAll(new RegExp(keyWordProblem, "ig"), (i)=>{
|
|
452
|
+
// console.log(i,'skdcnsdjk')
|
|
453
|
+
return `<span class=${styles.sign}>${i}</span>`;
|
|
454
|
+
});
|
|
455
|
+
}
|
|
447
456
|
return /*#__PURE__*/ _jsxs("div", {
|
|
448
457
|
className: styles.list,
|
|
449
458
|
onClick: ()=>{
|
|
@@ -99,34 +99,32 @@ const CustomerService = (props)=>{
|
|
|
99
99
|
const clientHeight = container.clientHeight;
|
|
100
100
|
const scrollHeight = container.scrollHeight;
|
|
101
101
|
// console.log(scrollTop,clientHeight,scrollHeight,'333dfkvmdfv')
|
|
102
|
-
if (clientHeight + scrollTop + 0.5 >= scrollHeight) {
|
|
103
|
-
|
|
104
|
-
// console.log(
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
listTimer.current = setTimeout(()=>{
|
|
102
|
+
if (clientHeight + scrollTop + 0.5 >= scrollHeight && pageNumHistory > 1) {
|
|
103
|
+
// if (pageNumHistory > 1) {
|
|
104
|
+
// console.log(pageNumHistory,'pageNumpageNumpageNum')
|
|
105
|
+
let number = pageNumHistory - 1;
|
|
106
|
+
setPageNumHistory(number);
|
|
107
|
+
clearTimeout(listTimer.current);
|
|
108
|
+
listTimer.current = setTimeout(()=>{
|
|
109
|
+
if (number > 0) {
|
|
110
|
+
setBottomLoading(true);
|
|
112
111
|
getHistoryMessage(number, 4);
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
112
|
+
setLastId("");
|
|
113
|
+
} else {
|
|
114
|
+
setPageNumHistory(0);
|
|
115
|
+
}
|
|
116
|
+
}, 1000);
|
|
117
|
+
// } else {
|
|
118
|
+
// }
|
|
117
119
|
}
|
|
118
120
|
if (scrollTop == 0 && pageCount > pageNum && pageCount > 0) {
|
|
119
121
|
console.log("到顶了", pageNum);
|
|
120
|
-
// if(pageNum == 1){
|
|
121
|
-
// setFirstpage(true);//代表是否存在第一页
|
|
122
|
-
// }
|
|
123
122
|
setLoading(true);
|
|
124
123
|
let number = pageNum + 1;
|
|
125
124
|
setPageNum((pageNum)=>{
|
|
126
125
|
return pageNum + 1;
|
|
127
126
|
});
|
|
128
127
|
listTimer.current = setTimeout(()=>{
|
|
129
|
-
console.log("下拉加载下一页", number);
|
|
130
128
|
getHistoryMessage(number, 2);
|
|
131
129
|
}, 1000);
|
|
132
130
|
}
|
|
@@ -343,17 +341,19 @@ const CustomerService = (props)=>{
|
|
|
343
341
|
setCitationContent({});
|
|
344
342
|
http.post(`${urllocation}/chat-service/public/v1.0/history-messages`, obj).then((res)=>{
|
|
345
343
|
if (res.data.id) {
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
344
|
+
if (pageNumHistory <= 1) {
|
|
345
|
+
setHistoryMessageList((historyMessageList)=>{
|
|
346
|
+
let newHistoryMessageList = historyMessageList.concat(_object_spread_props(_object_spread({}, obj), {
|
|
347
|
+
id: res.data.id,
|
|
348
|
+
upvoted: false,
|
|
349
|
+
downvoted: false,
|
|
350
|
+
quotedMessage: "",
|
|
351
|
+
createdAt: getDataTime(-1),
|
|
352
|
+
extraInfo: JSON.stringify(obj.extraInfos)
|
|
353
|
+
}));
|
|
354
|
+
return newHistoryMessageList;
|
|
355
|
+
});
|
|
356
|
+
}
|
|
357
357
|
scrollToBottom();
|
|
358
358
|
if (type == 4) {
|
|
359
359
|
sendGreetingMessage(6);
|
|
@@ -460,21 +460,23 @@ const CustomerService = (props)=>{
|
|
|
460
460
|
setQuestionsList([]);
|
|
461
461
|
setCitationContent({});
|
|
462
462
|
} else if (userData.modules.some((item)=>item.short == "AIservice")) {
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
463
|
+
if (pageNumHistory <= 1) {
|
|
464
|
+
setHistoryMessageList((historyMessageList)=>{
|
|
465
|
+
let newHistoryMessageList = historyMessageList.concat({
|
|
466
|
+
roomId: roomId,
|
|
467
|
+
sender: mid,
|
|
468
|
+
recevier: "AI",
|
|
469
|
+
message: keyWord,
|
|
470
|
+
quotedMessage: citationContent.content,
|
|
471
|
+
id: "654321",
|
|
472
|
+
upvoted: false,
|
|
473
|
+
downvoted: false,
|
|
474
|
+
createdAt: getDataTime(-1),
|
|
475
|
+
extraInfo: JSON.stringify([])
|
|
476
|
+
});
|
|
477
|
+
return newHistoryMessageList;
|
|
475
478
|
});
|
|
476
|
-
|
|
477
|
-
});
|
|
479
|
+
}
|
|
478
480
|
setFinished(false);
|
|
479
481
|
aiSendQuestions(3, {
|
|
480
482
|
//相关数据
|
|
@@ -492,32 +494,36 @@ const CustomerService = (props)=>{
|
|
|
492
494
|
};
|
|
493
495
|
//向知识库发送问题 或答案 type:1 发送问题 2 接受答案
|
|
494
496
|
const sendingExistingIssues = (type, obj, questions)=>{
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
497
|
+
if (pageNumHistory <= 1) {
|
|
498
|
+
setHistoryMessageList((historyMessageList)=>{
|
|
499
|
+
let newHistoryMessageList = historyMessageList.concat(_object_spread_props(_object_spread({}, obj), {
|
|
500
|
+
id: null,
|
|
501
|
+
upvoted: false,
|
|
502
|
+
downvoted: false,
|
|
503
|
+
createdAt: getDataTime(-1),
|
|
504
|
+
extraInfo: JSON.stringify(obj.extraInfos)
|
|
505
|
+
}));
|
|
506
|
+
return newHistoryMessageList;
|
|
507
|
+
});
|
|
508
|
+
scrollToBottom();
|
|
509
|
+
}
|
|
506
510
|
http.post(`${urllocation}/chat-service/public/v1.0/history-messages`, obj).then((res)=>{
|
|
507
511
|
if (res.data.id) {
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
512
|
+
if (pageNumHistory <= 1) {
|
|
513
|
+
//更新聊天记录id
|
|
514
|
+
setHistoryMessageList((historyMessageList)=>{
|
|
515
|
+
let newHistoryMessageList = historyMessageList.map((item)=>{
|
|
516
|
+
if (item.id == null) {
|
|
517
|
+
return _object_spread_props(_object_spread({}, item), {
|
|
518
|
+
id: res.data.id
|
|
519
|
+
});
|
|
520
|
+
} else {
|
|
521
|
+
return item;
|
|
522
|
+
}
|
|
523
|
+
});
|
|
524
|
+
return newHistoryMessageList;
|
|
518
525
|
});
|
|
519
|
-
|
|
520
|
-
});
|
|
526
|
+
}
|
|
521
527
|
}
|
|
522
528
|
if (type == 1) {
|
|
523
529
|
//发送答案,调用自动回答
|
|
@@ -580,39 +586,42 @@ const CustomerService = (props)=>{
|
|
|
580
586
|
setTimeout(()=>{
|
|
581
587
|
setQuestionsList([]);
|
|
582
588
|
}, 2000);
|
|
589
|
+
// console.log(pageNumHistory,44444444444444);
|
|
583
590
|
//占位信息
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
591
|
+
if (pageNumHistory <= 1) {
|
|
592
|
+
setHistoryMessageList((historyMessageList)=>{
|
|
593
|
+
if (type == 2) {
|
|
594
|
+
return historyMessageList.map((item)=>{
|
|
595
|
+
if (item.id == id) {
|
|
596
|
+
return {
|
|
597
|
+
roomId: roomId,
|
|
598
|
+
sender: "AI",
|
|
599
|
+
recevier: mid,
|
|
600
|
+
message: "正在输入...",
|
|
601
|
+
id: "123456",
|
|
602
|
+
createdAt: getDataTime(-1),
|
|
603
|
+
extraInfo: null
|
|
604
|
+
};
|
|
605
|
+
} else {
|
|
606
|
+
return item;
|
|
607
|
+
}
|
|
608
|
+
});
|
|
609
|
+
} else {
|
|
610
|
+
return historyMessageList.concat({
|
|
611
|
+
roomId: roomId,
|
|
612
|
+
sender: "AI",
|
|
613
|
+
recevier: mid,
|
|
614
|
+
message: "正在输入...",
|
|
615
|
+
id: "123456",
|
|
616
|
+
createdAt: getDataTime(-1),
|
|
617
|
+
extraInfo: null
|
|
618
|
+
});
|
|
619
|
+
}
|
|
620
|
+
});
|
|
621
|
+
setTimeout(()=>{
|
|
622
|
+
scrollToBottom();
|
|
623
|
+
}, 10);
|
|
624
|
+
}
|
|
616
625
|
//使用fetchEventSource接收数据
|
|
617
626
|
const eventSource = fetchEventSource(`${urllocation}/chat-service/public/v1.0/chat-with-ai/messages`, {
|
|
618
627
|
method: "POST",
|
|
@@ -725,7 +734,9 @@ const CustomerService = (props)=>{
|
|
|
725
734
|
};
|
|
726
735
|
//渲染AI回答
|
|
727
736
|
const renderAiAnswer = (msg, message_id, type)=>{
|
|
737
|
+
// console.log(pageNumHistory,5555555);
|
|
728
738
|
// console.log(aiSendQuestions().abort(),'slkdsdsdsd')
|
|
739
|
+
if (pageNumHistory > 1) return;
|
|
729
740
|
let obj = msg;
|
|
730
741
|
let id = msg.messageId;
|
|
731
742
|
setHistoryMessageList((historyMessageList)=>{
|
|
@@ -777,9 +788,9 @@ const CustomerService = (props)=>{
|
|
|
777
788
|
return newHistoryMessageList2;
|
|
778
789
|
}
|
|
779
790
|
});
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
791
|
+
setTimeout(()=>{
|
|
792
|
+
scrollToBottom();
|
|
793
|
+
}, 10);
|
|
783
794
|
};
|
|
784
795
|
//问题记录到实验报告中
|
|
785
796
|
const testLabQuestion = (title, content, teachId)=>{
|
|
@@ -822,7 +833,7 @@ const CustomerService = (props)=>{
|
|
|
822
833
|
});
|
|
823
834
|
};
|
|
824
835
|
//获取历史消息 flag:1,历史记录点击定位,2,代表是上拉加载,3,存在新的消息-->老师回答等,4,下拉加载,滚动到底部时,主要用于查看历史记录
|
|
825
|
-
const getHistoryMessage = (pageNum, flag, id = "1")=>{
|
|
836
|
+
const getHistoryMessage = (pageNum, flag, id = "1", raw_data = [])=>{
|
|
826
837
|
clearTimeout(roomMessage.current);
|
|
827
838
|
// console.log(pageNum,flag,'dkfjvndfjvndfkvdf')
|
|
828
839
|
// flag == 1 时已经设置好了位置标记
|
|
@@ -839,10 +850,11 @@ const CustomerService = (props)=>{
|
|
|
839
850
|
}
|
|
840
851
|
let rid = flag == 3 ? id : roomId;
|
|
841
852
|
if (rid == "") return;
|
|
853
|
+
let page = pageNum ? pageNum : 1;
|
|
842
854
|
return http.get(`${urllocation}/chat-service/public/v1.0/history-messages`, {
|
|
843
855
|
params: {
|
|
844
856
|
roomId: rid,
|
|
845
|
-
page:
|
|
857
|
+
page: page,
|
|
846
858
|
maxPageSize: 30,
|
|
847
859
|
direction: "desc"
|
|
848
860
|
}
|
|
@@ -854,6 +866,13 @@ const CustomerService = (props)=>{
|
|
|
854
866
|
let total = res.data.total;
|
|
855
867
|
let maxPageSize = 30;
|
|
856
868
|
let dataList = res.data.messages.reverse();
|
|
869
|
+
//历史记录点击进来的,多加载一页,防止定位不准
|
|
870
|
+
if (flag == 1 && page > 1) {
|
|
871
|
+
let markPage = page - 1;
|
|
872
|
+
setPageNumHistory(markPage);
|
|
873
|
+
getHistoryMessage(page - 1, 5, '1', dataList);
|
|
874
|
+
return;
|
|
875
|
+
}
|
|
857
876
|
setPageCount(Math.ceil(total / maxPageSize));
|
|
858
877
|
let newHistoryMessageList = [];
|
|
859
878
|
setHistoryMessageList((historyMessageList)=>{
|
|
@@ -862,6 +881,9 @@ const CustomerService = (props)=>{
|
|
|
862
881
|
if (flag == 1) {
|
|
863
882
|
newHistoryMessageList = dataList;
|
|
864
883
|
}
|
|
884
|
+
if (flag == 5) {
|
|
885
|
+
newHistoryMessageList = raw_data.concat(dataList);
|
|
886
|
+
}
|
|
865
887
|
if (flag == 4) {
|
|
866
888
|
newHistoryMessageList = historyMessageList.concat(dataList); //下拉加载,向后追加内容
|
|
867
889
|
}
|
|
@@ -881,6 +903,7 @@ const CustomerService = (props)=>{
|
|
|
881
903
|
totalNumber = newHistoryMessageList.length;
|
|
882
904
|
return newHistoryMessageList;
|
|
883
905
|
});
|
|
906
|
+
// console.log(lastId,'lastIdlastId-------')
|
|
884
907
|
//如果在跟老师的聊天窗口,用于找到与老师的最新的聊天,并不在与老师对话的窗口中,并聊天窗口相同
|
|
885
908
|
try {
|
|
886
909
|
if (stepIds != undefined && stepIds != "" && (showType == 3 || showType == 4)) {
|
|
@@ -958,6 +981,7 @@ const CustomerService = (props)=>{
|
|
|
958
981
|
if (!lastId && originList != newList) {
|
|
959
982
|
setTimeout(()=>{
|
|
960
983
|
scrollToBottom();
|
|
984
|
+
readMessage(roomId, urllocation, userData, http);
|
|
961
985
|
}, 100);
|
|
962
986
|
}
|
|
963
987
|
}
|
|
@@ -1199,13 +1223,12 @@ const CustomerService = (props)=>{
|
|
|
1199
1223
|
container.scrollTop = 60;
|
|
1200
1224
|
try {
|
|
1201
1225
|
setTimeout(()=>{
|
|
1202
|
-
|
|
1226
|
+
let top = showType == 1 || showType == 3 ? $("#li_flag").offset().top - 20 : $("#chat_content_modal #li_flag").offset().top - $("#chat_content_modal").offset().top + 24;
|
|
1227
|
+
// let top =
|
|
1203
1228
|
// showType == 1 || showType == 3
|
|
1204
|
-
// ? $("#li_flag").offset().top
|
|
1229
|
+
// ? $("#li_flag").offset().top
|
|
1205
1230
|
// : $("#chat_content_modal #li_flag").offset().top -
|
|
1206
|
-
// $("#chat_content_modal").offset().top
|
|
1207
|
-
// 24;
|
|
1208
|
-
let top = showType == 1 || showType == 3 ? $("#li_flag").offset().top : $("#chat_content_modal #li_flag").offset().top - $("#chat_content_modal").offset().top;
|
|
1231
|
+
// $("#chat_content_modal").offset().top;
|
|
1209
1232
|
// console.log(top2,top,444444444444)
|
|
1210
1233
|
$(`#${showType == 1 || showType == 3 ? "chat_content" : "chat_content_modal"}`).animate({
|
|
1211
1234
|
scrollTop: top
|
|
@@ -2050,7 +2073,7 @@ const CustomerService = (props)=>{
|
|
|
2050
2073
|
let placeholder = "";
|
|
2051
2074
|
let disabled = false;
|
|
2052
2075
|
if (voiceRecordingStatus == 2) {
|
|
2053
|
-
placeholder = "
|
|
2076
|
+
placeholder = "正在录制语音,再次点击麦克风结束录制。";
|
|
2054
2077
|
} else if (voiceRecordingStatus == 1) {
|
|
2055
2078
|
placeholder = "正在语音识别文字,请稍后...";
|
|
2056
2079
|
} else if (!finished) {
|
|
@@ -2114,15 +2137,19 @@ const CustomerService = (props)=>{
|
|
|
2114
2137
|
setButtomHei(45);
|
|
2115
2138
|
return;
|
|
2116
2139
|
}
|
|
2117
|
-
}
|
|
2140
|
+
}
|
|
2118
2141
|
//跟老师对话
|
|
2119
2142
|
let roomList = contactsList;
|
|
2120
2143
|
if (roomList.length > 0 && roomList[0].roomId != roomId) {
|
|
2121
2144
|
sendToTeacher(2);
|
|
2122
2145
|
} else {
|
|
2123
|
-
|
|
2146
|
+
clearTimeout(timer.current);
|
|
2124
2147
|
setQuestionsList([]);
|
|
2148
|
+
setAnswerMode(-1);
|
|
2125
2149
|
setTeacherList([]);
|
|
2150
|
+
setHistoryMessageList((historyMessageList)=>{
|
|
2151
|
+
return historyMessageList.filter((item)=>item.id != "-1");
|
|
2152
|
+
});
|
|
2126
2153
|
sendMessage("", 0);
|
|
2127
2154
|
}
|
|
2128
2155
|
setButtomHei(45);
|
|
@@ -2219,6 +2246,13 @@ const CustomerService = (props)=>{
|
|
|
2219
2246
|
if (roomList.length > 0 && roomList[0].roomId != roomId) {
|
|
2220
2247
|
sendToTeacher(2);
|
|
2221
2248
|
} else {
|
|
2249
|
+
clearTimeout(timer.current);
|
|
2250
|
+
setQuestionsList([]);
|
|
2251
|
+
setAnswerMode(-1);
|
|
2252
|
+
setTeacherList([]);
|
|
2253
|
+
setHistoryMessageList((historyMessageList)=>{
|
|
2254
|
+
return historyMessageList.filter((item)=>item.id != "-1");
|
|
2255
|
+
});
|
|
2222
2256
|
sendMessage("", 0);
|
|
2223
2257
|
}
|
|
2224
2258
|
onEvent(serverName + serverUrl(), "click_智能问答_ Enter", "提交");
|
|
@@ -2265,9 +2299,19 @@ const CustomerService = (props)=>{
|
|
|
2265
2299
|
bottom: `${buttomHei + 14}px`
|
|
2266
2300
|
},
|
|
2267
2301
|
children: teacherList.map((item)=>{
|
|
2268
|
-
let
|
|
2269
|
-
|
|
2270
|
-
|
|
2302
|
+
let reg = /[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/im;
|
|
2303
|
+
let span = '';
|
|
2304
|
+
//搜索内容是否有特殊字符
|
|
2305
|
+
if (reg.test(keyWord)) {
|
|
2306
|
+
span = item.name.replaceAll(keyWord, (e)=>{
|
|
2307
|
+
return `<span class=${styles.sign}>${e}</span>`;
|
|
2308
|
+
});
|
|
2309
|
+
} else {
|
|
2310
|
+
span = item.name.replaceAll(new RegExp(keyWord, "ig"), (i)=>{
|
|
2311
|
+
// console.log(i,'skdcnsdjk')
|
|
2312
|
+
return `<span class=${styles.sign}>${i}</span>`;
|
|
2313
|
+
});
|
|
2314
|
+
}
|
|
2271
2315
|
return /*#__PURE__*/ _jsx("p", {
|
|
2272
2316
|
className: styles.item,
|
|
2273
2317
|
children: /*#__PURE__*/ _jsx("span", {
|
|
@@ -2288,9 +2332,19 @@ const CustomerService = (props)=>{
|
|
|
2288
2332
|
bottom: `${buttomHei + 6}px`
|
|
2289
2333
|
},
|
|
2290
2334
|
children: questionsList.map((item)=>{
|
|
2291
|
-
let
|
|
2292
|
-
|
|
2293
|
-
|
|
2335
|
+
let reg = /[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/im;
|
|
2336
|
+
let span = '';
|
|
2337
|
+
//搜索内容是否有特殊字符
|
|
2338
|
+
if (reg.test(keyWord)) {
|
|
2339
|
+
span = item.question.replaceAll(keyWord, (e)=>{
|
|
2340
|
+
return `<span class=${styles.sign}>${e}</span>`;
|
|
2341
|
+
});
|
|
2342
|
+
} else {
|
|
2343
|
+
span = item.question.replaceAll(new RegExp(keyWord, "ig"), (i)=>{
|
|
2344
|
+
// console.log(i,'skdcnsdjk')
|
|
2345
|
+
return `<span class=${styles.sign}>${i}</span>`;
|
|
2346
|
+
});
|
|
2347
|
+
}
|
|
2294
2348
|
return /*#__PURE__*/ _jsx("p", {
|
|
2295
2349
|
className: styles.item,
|
|
2296
2350
|
children: /*#__PURE__*/ _jsx("span", {
|
|
@@ -2310,25 +2364,26 @@ const CustomerService = (props)=>{
|
|
|
2310
2364
|
};
|
|
2311
2365
|
//加载指定数据,点击历史记录
|
|
2312
2366
|
const loadSpecifiedData = (renewRoomId, page, id, receiver)=>{
|
|
2367
|
+
// let renewRoomId = '4a615d7126b343f78d10dcb06dbc29b0';
|
|
2368
|
+
// let page = 1;
|
|
2369
|
+
// let id = '0e459f0a3a62438698f170b42b94d150';
|
|
2370
|
+
// let receiver = mid;
|
|
2313
2371
|
if (page != 1) {
|
|
2314
2372
|
setPageNumHistory(page);
|
|
2315
2373
|
}
|
|
2316
|
-
setPageNum(page);
|
|
2317
2374
|
setLastId(id); //用于定位
|
|
2375
|
+
setPageNum(page);
|
|
2318
2376
|
//如果是当前聊天室
|
|
2319
2377
|
if (renewRoomId == roomId) {
|
|
2320
2378
|
getHistoryMessage(page, 1);
|
|
2321
2379
|
} else {
|
|
2322
2380
|
setRoomId(renewRoomId);
|
|
2323
|
-
// if (childRef.current) {
|
|
2324
2381
|
if (receiver != mid) {
|
|
2325
2382
|
createRooms(receiver);
|
|
2326
2383
|
}
|
|
2327
2384
|
setTimeout(()=>{
|
|
2328
|
-
// childRef.current.roomsListTimer();
|
|
2329
2385
|
roomsListTimer();
|
|
2330
2386
|
}, 500);
|
|
2331
|
-
// }
|
|
2332
2387
|
}
|
|
2333
2388
|
setShowContacts(true);
|
|
2334
2389
|
};
|
|
@@ -181,12 +181,10 @@
|
|
|
181
181
|
width: 100%;
|
|
182
182
|
.main {
|
|
183
183
|
max-width: 80%;
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
// }
|
|
189
|
-
// }
|
|
184
|
+
|
|
185
|
+
.main_content_flag{
|
|
186
|
+
width: 100%;
|
|
187
|
+
}
|
|
190
188
|
.main_content_flag:hover{
|
|
191
189
|
.operate_modal {
|
|
192
190
|
// display: block;
|
|
@@ -195,21 +193,9 @@
|
|
|
195
193
|
}
|
|
196
194
|
.main_content {
|
|
197
195
|
position: relative;
|
|
198
|
-
|
|
199
|
-
// .operate_modal {
|
|
200
|
-
// // display: block;
|
|
201
|
-
// visibility: visible;
|
|
202
|
-
// }
|
|
203
|
-
// }
|
|
204
|
-
|
|
196
|
+
|
|
205
197
|
.content {
|
|
206
|
-
|
|
207
|
-
// .operate_modal {
|
|
208
|
-
// // display: block;
|
|
209
|
-
// visibility: visible;
|
|
210
|
-
// }
|
|
211
|
-
// }
|
|
212
|
-
|
|
198
|
+
|
|
213
199
|
max-width: 100%;
|
|
214
200
|
// width: 100%;
|
|
215
201
|
//以下优化ai返回的内容的样式
|