From 31a48e3a3c7d4e37a05ef43fa4b65c84989cc353 Mon Sep 17 00:00:00 2001
From: yinbangzhong <zhongbangyin@126.com>
Date: 星期四, 29 八月 2024 09:26:25 +0800
Subject: [PATCH] select role
---
src/views/sessionManager/components/historySession.vue | 146 +++++++++++++++++++++++++++++-------------------
1 files changed, 87 insertions(+), 59 deletions(-)
diff --git a/src/views/sessionManager/components/historySession.vue b/src/views/sessionManager/components/historySession.vue
index 24ef4e3..f74ed54 100644
--- a/src/views/sessionManager/components/historySession.vue
+++ b/src/views/sessionManager/components/historySession.vue
@@ -22,9 +22,11 @@
class="left-list"
style="
height: calc(100vh - 160px);
- overflow-y: auto;
+ overflow-y: scroll;
overflow-x: hidden;
"
+ v-if="isReached"
+ @scroll="handleScroll"
>
<div class="historyTitle___F_iam">鍘嗗彶浼氳瘽</div>
@@ -116,6 +118,15 @@
const scrollRef = ref(null);
const httpUrl = localStorage.getItem('httpUrl');
const imgSrc = ref(logo);
+let scrollTopVal = ref(0);
+let queryPage = reactive({
+ page: 1,
+ page_size: 50
+})
+let total = ref(0);
+let sessionScrollList = ref([]);
+let isReached = ref(true);
+
const DialogList = async () => {
const { code, data } = await getDialogListApi();
if (code === 200) {
@@ -167,8 +178,7 @@
const querySessionList = async (id) => {
const { code, data } = await sessionListApiPage({
dialog_id: id,
- page: 1,
- page_size: 100
+ ...queryPage
});
if (code === 200) {
sessionList.value = data.map((item) => {
@@ -177,7 +187,11 @@
showtype: 1
}
});
-
+ isReached.value = false;
+ setTimeout(()=>{
+ isReached.value = true;
+ },100)
+ // total.value = sessionList.value.length;
} else {
@@ -206,34 +220,25 @@
const querySessionDetail = async (session) => {
console.log(session, 'session');
-
-
- // 鏌ヨ鍘嗗彶璁板綍
- if (session.base == 'agent') {
- // agent瀵硅薄鏁版嵁灏佽
- // const { code, data } = await getAgentSessionDetailsApi(session.app_id);
- // if (code == 0) {
- // console.log(data,'浼氳瘽璇︽儏');
- // let sessionObj = {
- // id: session.app_id,
- // dsl: data.dsl,
- // title: session.name,
- // }
- //
- // }
- EventBus.emit("queryAgentSessionDetail",{
- ...sessionObj,
- id: session.app_id,
- });
- emit('changeAgentType','2');
- } else {
+ // 鏌ヨ鍘嗗彶璁板綍 app_type 1:鏅鸿兘浣� 2:agent
+ if (!session.base) {
// 鐢熸垚鏅鸿兘浣撴柊鐨勫璇�
emit('changeAgentType','1');
emit('querySessionDetail',session);
+ } else if (session.base == 'agent'){
+ // agent瀵硅薄鏁版嵁灏佽
+ // const { code, data } = await getAgentSessionDetailsApi(session.dialog_id);
+ // if (code == 0) {
+ // console.log(data,'浼氳瘽璇︽儏');
+ // // let sessionObj = {
+ // // id: session.app_id,
+ // // dsl: data.dsl,
+ // // title: session.name,
+ // // }
+ // }
+ EventBus.emit("queryAgentSessionDetail",session);
+ emit('changeAgentType','2');
}
-
-
-
}
@@ -247,25 +252,53 @@
const handleScroll = async (e: any) => {
- // scrollTopVal.value = e.target.scrollTop
- // let offsetHeight = e.target.offsetHeight
- // let scrollHeight = e.target.scrollHeight
- //
- // if (scrollTopVal.value + offsetHeight >= scrollHeight) {
- // //婊氬姩鏉″埌杈惧簳閮�
- // if (cardData.value.length < total.value) {
- // //鏁版嵁涓哄姞杞藉畬锛岀户缁祴鍊�
- // serarchData.pageNum++
- //
- //
- //
- // }
- // }
-}
+ scrollTopVal.value = e.target.scrollTop;
+ let offsetHeight = e.target.offsetHeight;
+ let scrollHeight = e.target.scrollHeight;
-const loading: any = computed(() => {
- // cardData.value.length >= total.value
-})
+ if (scrollTopVal.value + offsetHeight >= scrollHeight-1) {
+ console.log(scrollTopVal.value);
+ // console.log(offsetHeight);
+ // console.log(scrollHeight);
+ //婊氬姩鏉″埌杈惧簳閮�
+ // if (sessionList.value.length < total.value) {
+ // //鏁版嵁涓哄姞杞藉畬锛岀户缁祴鍊�
+ // // queryPage.page++
+ //
+ //
+ //
+ // }
+ queryPage.page++
+ const { code, data } = await sessionListApiPage({
+ dialog_id: '',
+ ...queryPage
+ });
+ if (code === 200) {
+ sessionScrollList.value = data.map((item) => {
+ return {
+ ...item,
+ showtype: 1
+ }
+ });
+ // total.value = sessionList.value.length;
+ sessionList.value = [...sessionList.value,...sessionScrollList.value];
+ isReached.value = false;
+ setTimeout(()=>{
+ isReached.value = true;
+ nextTick(()=>{
+ scrollRef.value.scrollTop(scrollTopVal.value);
+ // console.log(scrollRef.value.$el.scrollTop,'scrollTopVal');
+ // console.log(scrollTopVal.value,'scrollTopVal');
+ })
+ },100)
+
+
+ } else {
+ Message.warning("鏌ヨ澶辫触");
+ }
+
+ }
+}
@@ -275,26 +308,21 @@
})
onMounted(() => {
+ console.log(httpUrl,'褰撳墠鍦板潃');
EventBus.on("history", () => {
emit('changeAgentType','3');
// DialogList()
+ queryPage.page = 1;
querySessionList('');
});
+ // 娣诲姞婊氬姩浜嬩欢鐩戝惉鍣�
+ scrollRef.value.$el.addEventListener('scroll', handleScroll);
-// 缁欏厓绱犳坊鍔犳粴鍔ㄤ簨浠剁洃鍚�
-// if (scrollRef.value) {
-// // 缁欏厓绱犳坊鍔犳粴鍔ㄧ洃鍚櫒
-//
-// scrollRef.value.addEventListener('scroll', handleScroll, true)
-//
-// // 濡傛灉浣犻渶瑕佸湪缁勪欢鍗歌浇鏃剁Щ闄ょ洃鍚櫒锛屽彲浠ヨ繑鍥炰竴涓竻鐞嗗嚱鏁�
-// return () => {
-// scrollRef.value.removeEventListener('scroll', handleScroll, true)
-// }
-// }
-
-
+ // 娓呯悊鍑芥暟
+ return () => {
+ scrollRef.value.$el.removeEventListener('scroll', handleScroll);
+ };
--
Gitblit v1.8.0