Commit 4a0bef4a by Liu

fix:工单创建会话参数值

parent 0a39d2a1
......@@ -12,7 +12,7 @@ export function fetchTacticsConversationPage<T>(data: T) {
* 创建问答功能会话
*/
export function fetchCreateTacticsConversation<T>(data: T) {
return http.post('/conversation/api/conversation/mobile/v1/create_conversation', data)
return http.post('/conversation/api/conversation/mobile/v1/get_user_conversation_session', data)
}
/**
......@@ -30,12 +30,3 @@ export function fetchDeleteTacticsConversation(conversationIdList: string[]) {
conversationIdList,
})
}
/**
* 清空记录 接口
* @params
* conversationIdList: 会话id (只传一个)
*/
// export function deleteUserConversation(data: any) {
// return http.post('/api/conversation/mobile/v1/delete_user_conversation', data)
// }
......@@ -266,6 +266,7 @@ const ChatEditorBase: React.FC<ChatEditorProps & WithAuthProps> = ({ checkAuth,
const conversationId = res.data.conversationId
// 使用获取到的会话ID调用历史会话
const qaRes = await fetchUserQaRecordPage(conversationId, tool.toolId)
console.log('qaRes chatEditor11111', qaRes)
// 通过自定义事件将历史记录数据传递给父组件进行渲染
window.dispatchEvent(new CustomEvent('toolHistoryLoaded', {
detail: {
......
......@@ -103,7 +103,7 @@ export const Chat: React.FC = () => {
useEffect(() => {
if (!debugInfo.href && !debugInfo.sessionToolId)
return
// eslint-disable-next-line no-console
console.debug('[Chat] 当前链接 / 缓存 toolId:', debugInfo)
}, [debugInfo])
......@@ -264,9 +264,8 @@ export const Chat: React.FC = () => {
// 正常的stream数据
if (msg?.type === 'DATA' && msg?.content?.code === '00000000') {
// eslint-disable-next-line no-console
console.log('========================流式输出====================', msg)
// eslint-disable-next-line no-console
console.log('========================流式输出字符串====================', msg.content?.data)
handleStreamMesageData(msg, question)
}
......@@ -293,6 +292,7 @@ export const Chat: React.FC = () => {
// 检测是否从收藏页返回
const fromCollect = location.state?.fromCollect
const res = await fetchUserQaRecordPage(conversationId, toolId || '')
console.log('qaRes chatEditor2222222', res)
const qaRecords = res.data || []
const messages = [{ role: 'system' } as ChatRecord, ...processApiResponse(qaRecords)]
// 处理历史记录中的参考文档标记
......
......@@ -23,13 +23,13 @@ import ScrollBtoIcon from '@/assets/svg/scrollBto.svg?react'
import { setIsAsking } from '@/store/chatSlice'
import SdreamLoading from '@/components/SdreamLoading'
import useToast from '@/hooks/useToast'
import { safeLocalStorageGetItem } from '@/lib/utils'
export const TacticsChat: React.FC = () => {
const { id } = useParams<{ id: string }>()
const location = useLocation()
const navigate = useNavigate()
const logFullUrl = useCallback((reason?: string) => {
// eslint-disable-next-line no-console
console.log('[TacticsChat] full url snapshot', {
reason,
href: window.location.href,
......@@ -121,9 +121,23 @@ export const TacticsChat: React.FC = () => {
// 仅用于创建会话的额外参数(create_conversation)
const getConversationExtra = useCallback(() => {
if (orderMeta) {
// 从 localStorage 读取 userName
const userNameFromStorage = safeLocalStorageGetItem('__USER_NAME__')
let userName = ''
if (userNameFromStorage) {
try {
// useLocalStorageState 会将值序列化为 JSON,需要解析
const parsed = JSON.parse(userNameFromStorage)
userName = parsed || userNameFromStorage
}
catch {
// 如果不是 JSON 格式,直接使用原始值
userName = userNameFromStorage
}
}
return {
busiType: '02',
// from=order 场景下,不传 busiId
busiId: userName, // 如果 userName 不存在,使用默认值 '8'
} as Partial<any>
}
if (userMeta?.place === 'user') {
......@@ -200,7 +214,7 @@ export const TacticsChat: React.FC = () => {
break
}
}
// eslint-disable-next-line no-console
console.log('[TacticsChat] handleStreamMesageData', {
lastAiIndex,
itemsLength: newItems.length,
......@@ -233,7 +247,7 @@ export const TacticsChat: React.FC = () => {
},
],
}
// eslint-disable-next-line no-console
console.log('[TacticsChat] handleStreamMesageData:updated', {
filteredAnswer,
answerList: newItems[lastAiIndex].answerList,
......@@ -436,7 +450,6 @@ export const TacticsChat: React.FC = () => {
fetchUrl,
requestBody,
(msg) => {
// eslint-disable-next-line no-console
console.log('[TacticsChat] handleSubmitQuestion:onMessage', msg)
// 检查是否已被取消
if (abortControllerRef.current?.signal.aborted) {
......@@ -457,9 +470,8 @@ export const TacticsChat: React.FC = () => {
// 正常的stream数据
if (msg?.type === 'DATA' && msg?.content?.code === '00000000') {
// eslint-disable-next-line no-console
console.log('========================流式输出====================', msg)
// eslint-disable-next-line no-console
console.log('========================流式输出字符串====================', msg.content?.data)
handleStreamMesageData(msg, question || '')
}
......@@ -593,7 +605,6 @@ export const TacticsChat: React.FC = () => {
const handleReanalyze = useCallback(async () => {
// 正在回答或尚未就绪时不触发重新分析
if (!currentIdRef.current || isLoading || isAsking) {
// eslint-disable-next-line no-console
console.log('[TacticsChat] handleReanalyze blocked', {
currentId: currentIdRef.current,
isLoading,
......@@ -790,7 +801,6 @@ export const TacticsChat: React.FC = () => {
// 处理shouldSendQuestion的变化 - 自动发送问题
useEffect(() => {
// eslint-disable-next-line no-console
console.log('[TacticsChat] autoSend check', {
shouldSendQuestion,
currentId: currentIdRef.current,
......@@ -1034,7 +1044,6 @@ export const TacticsChat: React.FC = () => {
</div>
<TacticsChatEditor
onSubmit={(question) => {
// eslint-disable-next-line no-console
console.log('[TacticsChat] onSubmit wrapper', {
question,
currentId: currentIdRef.current,
......
......@@ -63,6 +63,10 @@ export const Home: React.FC = () => {
defaultValue: '',
})
const [_userName, setUserName] = useLocalStorageState<string | undefined>('__USER_NAME__', {
defaultValue: '',
})
const _initConversation = async () => {
const fromCollect = location.state?.fromCollect
// 只有在访问首页时才处理会话,如果已经在聊天页面则不处理
......@@ -128,6 +132,7 @@ export const Home: React.FC = () => {
// 获取历史记录
await fetchUserQaRecordPage(conversationId, toolId || undefined)
console.log('qaRes homeNew333333', res)
// 历史记录会在 Chat 页面自动渲染,这里只负责获取
}
}
......@@ -283,7 +288,9 @@ export const Home: React.FC = () => {
window.history.replaceState({}, '', currentUrl.toString())
}
setToken(res.data.token)
// 主动触发 storage 事件,确保其他组件能监听到变化
if (res.data.userName) {
setUserName(res.data.userName)
}
window.dispatchEvent(
new StorageEvent('storage', {
key: '__TOKEN__',
......@@ -335,6 +342,9 @@ export const Home: React.FC = () => {
window.history.replaceState({}, '', currentUrl.toString())
}
setToken(res.data.token)
if (res.data.userName) {
setUserName(res.data.userName)
}
// 主动触发 storage 事件,确保其他组件能监听到变化
window.dispatchEvent(
new StorageEvent('storage', {
......@@ -354,7 +364,7 @@ export const Home: React.FC = () => {
}
}
}
}, [setToken, dispatch])
}, [setToken, setUserName, dispatch])
// 监听路由参数变化,提取 userRoles(确保路由参数被正确解析)
useEffect(() => {
......@@ -363,7 +373,7 @@ export const Home: React.FC = () => {
useEffect(() => {
login()
// eslint-disable-next-line no-console
console.log('login useEffect11111', token)
}, []) // 依赖数组为空,只在组件挂载时执行一次
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment