diff --git a/datacenter/app/agents/[agentId]/page.tsx b/datacenter/app/chat/page.tsx similarity index 100% rename from datacenter/app/agents/[agentId]/page.tsx rename to datacenter/app/chat/page.tsx diff --git a/datacenter/app/page.tsx b/datacenter/app/page.tsx index 7a767b063..e1d3bbea5 100644 --- a/datacenter/app/page.tsx +++ b/datacenter/app/page.tsx @@ -28,7 +28,7 @@ export default function Home() { chat_mode: 'chat_normal' }); if (res?.success && res?.data?.conv_uid) { - router.push(`/agents/${res?.data?.conv_uid}?initMessage=${query}`); + router.push(`/chat?id=${res?.data?.conv_uid}&initMessage=${query}`); } } catch (err) { } finally { @@ -66,7 +66,7 @@ export default function Home() { chat_mode: scene['chat_scene'] }); if (res?.success && res?.data?.conv_uid) { - router.push(`/agents/${res?.data?.conv_uid}?scene=${scene['chat_scene']}`); + router.push(`/chat?id=${res?.data?.conv_uid}&scene=${scene['chat_scene']}`); } }} > diff --git a/datacenter/components/agentPage.tsx b/datacenter/components/agentPage.tsx index d47b961a0..ac2541e58 100644 --- a/datacenter/components/agentPage.tsx +++ b/datacenter/components/agentPage.tsx @@ -6,10 +6,8 @@ import ChatBoxComp from '@/components/chatBoxTemp'; import { useDialogueContext } from '@/app/context/dialogue'; const AgentPage = (props: { - params: { - agentId?: string; - }, searchParams: { + id?: string; scene?: string; initMessage?: string; } @@ -17,19 +15,21 @@ const AgentPage = (props: { const { refreshDialogList } = useDialogueContext(); const { data: historyList } = useRequest(async () => await sendGetRequest('/v1/chat/dialogue/messages/history', { - con_uid: props.params?.agentId + con_uid: props.searchParams?.id }), { - ready: !!props.params?.agentId + ready: !!props.searchParams?.id, + refreshDeps: [props.searchParams?.id] }); const { data: paramsList } = useRequest(async () => await sendPostRequest(`/v1/chat/mode/params/list?chat_mode=${props.searchParams?.scene}`), { - ready: !!props.searchParams?.scene + ready: !!props.searchParams?.scene, + refreshDeps: [props.searchParams?.scene] }); const { history, handleChatSubmit } = useAgentChat({ queryAgentURL: `/v1/chat/completions`, queryBody: { - conv_uid: props.params?.agentId, + conv_uid: props.searchParams?.id, chat_mode: props.searchParams?.scene || 'chat_normal', }, initHistory: historyList?.data diff --git a/datacenter/components/leftSider.tsx b/datacenter/components/leftSider.tsx index 9dcccb3b4..0dc412907 100644 --- a/datacenter/components/leftSider.tsx +++ b/datacenter/components/leftSider.tsx @@ -1,6 +1,6 @@ "use client"; import React, { useEffect, useMemo } from 'react'; -import { usePathname, useRouter } from 'next/navigation'; +import { usePathname, useRouter, useSearchParams } from 'next/navigation'; import Link from 'next/link'; import { Modal } from 'antd'; import { Box, List, ListItem, ListItemButton, ListItemDecorator, ListItemContent, Typography, Button, useColorScheme, IconButton } from '@/lib/mui'; @@ -15,6 +15,7 @@ import { sendPostRequest } from '@/utils/request'; const LeftSider = () => { const pathname = usePathname(); + const searchParams = useSearchParams(); const router = useRouter(); const { dialogueList, queryDialogueList, refreshDialogList } = useDialogueContext(); const { mode, setMode } = useColorScheme(); @@ -114,7 +115,7 @@ const LeftSider = () => { }} > {dialogueList?.data?.map((each) => { - const isSelect = pathname === `/agents/${each.conv_uid}`; + const isSelect = pathname === `/chat` && searchParams.get('id') === each.conv_uid; return ( { }} > - + {each?.user_name || each?.user_input || 'undefined'} @@ -147,7 +148,7 @@ const LeftSider = () => { async onOk() { await sendPostRequest(`v1/chat/dialogue/delete?con_uid=${each.conv_uid}`); await refreshDialogList(); - if (pathname === `/agents/${each.conv_uid}`) { + if (pathname === `/chat` && searchParams.get('id') === each.conv_uid) { router.push('/'); } }