From 88e5392abfba200898c93e0d1d24f7454baaf921 Mon Sep 17 00:00:00 2001 From: liudong <liudong> Date: 星期五, 16 八月 2024 13:54:17 +0800 Subject: [PATCH] 新版UI对话页面开发 --- src/views/sessionManager/components/agentSession.vue | 93 ++++++++++++++++++++++++++-------------------- 1 files changed, 53 insertions(+), 40 deletions(-) diff --git a/src/views/sessionManager/components/agentSession.vue b/src/views/sessionManager/components/agentSession.vue index 53aaf45..54e2ddc 100644 --- a/src/views/sessionManager/components/agentSession.vue +++ b/src/views/sessionManager/components/agentSession.vue @@ -2,7 +2,7 @@ <!-- 鍐呭--> <a-scrollbar ref="scrollbar" - id="home" + id="agentHome" class="chat-list" style=" width: 90%; @@ -105,6 +105,7 @@ import { getAuthorization } from "@/utils/auth"; import { EventSourceParserStream } from 'eventsource-parser/stream'; import { agentResetApi, agentSetApi, getAgentSessionDetailsApi } from "@/api/agentSession"; +import EventBus from '@/utils/EventBus'; const props = defineProps({ modalObj: Object, }); @@ -146,6 +147,15 @@ queryAgentSessionDetail(agentObj.id); }; +const createNewAgent = async (session) => { + Object.assign(agentObj, session); + initPage(); + + +} + + + // 璋冪敤set鏂规硶 const agentSet = async () => { const res = await agentSetApi({ @@ -153,7 +163,9 @@ title: agentObj.title, dsl: agentObj.dsl, }); - if (res.code === 200) { + console.log(res,'agentSet'); + if (res.code == 0) { + // sessionDetailList.value = res.data.dsl.messages; // Message.success('淇敼鎴愬姛'); } } @@ -187,30 +199,30 @@ .pipeThrough(new EventSourceParserStream()) .getReader(); currIndex.value = 0; - while (true) { - const x = await reader?.read(); - if (x) { - const { done, value } = x; - console.log(x, 999); - try { - const val = JSON.parse(value?.data || ''); - const d = val?.data; - if (typeof d !== 'boolean') { - console.info('data:', d); - streamStr.value = d.content; - startDisplayStr(); - } - } catch (e) { - console.warn(e); - } - if (done) { - console.info('done'); - displayedText.value = ''; - queryAgentSessionDetail(agentObj.id); - break; - } - } - } + // while (true) { + // const x = await reader?.read(); + // if (x) { + // const { done, value } = x; + // console.log(x, 999); + // try { + // const val = JSON.parse(value?.data || ''); + // const d = val?.data; + // if (typeof d !== 'boolean') { + // console.info('data:', d); + // streamStr.value = d.content; + // startDisplayStr(); + // } + // } catch (e) { + // console.warn(e); + // } + // if (done) { + // console.info('done'); + // displayedText.value = ''; + // queryAgentSessionDetail(agentObj.id); + // break; + // } + // } + // } chatDis.value = false; loading.value = false; inputMsg.value = ''; @@ -222,7 +234,7 @@ if (code == 0) { console.log(data,'浼氳瘽璇︽儏'); sessionDetailList.value = data.dsl.messages; - // refreshScroll(); //鍒锋柊婊氬姩鏉′綅缃� + refreshScroll(); //鍒锋柊婊氬姩鏉′綅缃� } }; @@ -243,12 +255,12 @@ chatDis.value = true; loading.value = true; - if (!activeSessionId.value) { - Message.warning('璇烽�夋嫨浼氳瘽'); - chatDis.value = false; - loading.value = false; - return; - } + // if (!agentObj.id) { + // Message.warning('璇烽�夋嫨浼氳瘽'); + // chatDis.value = false; + // loading.value = false; + // return; + // } // if (displayedText.value) { // querySessionList(); @@ -270,8 +282,8 @@ 'Content-Type': 'application/json', }, body: JSON.stringify({ - conversation_id: activeSessionId.value, - messages: inputMsg.value, + id: agentObj.id, + message: inputMsg.value, }), } ); @@ -345,24 +357,25 @@ const scrollbar = ref(null); const refreshScroll = () => { nextTick(() => { - const container = document.getElementById('home'); + const container = document.getElementById('agentHome'); scrollbar.value.scrollTop(container.scrollHeight); }); }; onMounted(() => { - + EventBus.on('createAgent', (data) => { + createNewAgent(data); + }); }); watch( () => props.modalObj, (newVal, oldVal) => { - console.log(newVal,'鐩戝惉鍙樺寲'); - Object.assign(agentObj, newVal); + // Object.assign(agentObj, newVal); //璋冪敤agent鍒濆鍖栨柟娉� if(JSON.stringify(newVal) != '{}'){ - initPage(); + // initPage(); } },{ immediate: true, -- Gitblit v1.8.0