Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
sdream-ai-fe
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
侯明涛
sdream-ai-fe
Commits
d397d34e
Commit
d397d34e
authored
Dec 15, 2025
by
Liu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:提问接口逻辑
parent
6bc4c016
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
16 additions
and
33 deletions
+16
-33
src/config/env.ts
+4
-4
src/pages/ChatTactics/TacticsChat.tsx
+8
-5
src/store/tacticsSlice.ts
+4
-24
No files found.
src/config/env.ts
View file @
d397d34e
export
const
envConf
=
{
dev
:
{
apiUrl
:
'/api'
,
proxyUrl
:
'http://
82.156.138.187
:19002/dev-sdream-api'
,
proxyUrl
:
'http://
43.143.240.58
:19002/dev-sdream-api'
,
},
sit
:
{
apiUrl
:
'/api'
,
proxyUrl
:
'http://
82.156.138.187
:19002/dev-sdream-api'
,
proxyUrl
:
'http://
43.143.240.58
:19002/dev-sdream-api'
,
},
prod
:
{
apiUrl
:
'http://
82.156.138.187
:19002/dev-sdream-api'
,
proxyUrl
:
'http://
82.156.138.187
:19002/dev-sdream-api'
,
apiUrl
:
'http://
43.143.240.58
:19002/dev-sdream-api'
,
proxyUrl
:
'http://
43.143.240.58
:19002/dev-sdream-api'
,
},
}
...
...
src/pages/ChatTactics/TacticsChat.tsx
View file @
d397d34e
...
...
@@ -241,7 +241,7 @@ export const TacticsChat: React.FC = () => {
question
:
string
|
undefined
,
productCode
?:
string
,
toolId
?:
string
,
extra
?:
{
busiType
?:
string
,
recordType
?:
string
,
includeQuestion
?:
boolean
},
extra
?:
{
busiType
?:
string
,
recordType
?:
string
,
includeQuestion
?:
boolean
,
includeTacticsMeta
?:
boolean
},
)
=>
{
// 优先读取缓存中的 toolId,再回退到传参
const
sessionToolId
=
sessionStorage
.
getItem
(
'currentToolId'
)
??
undefined
...
...
@@ -292,6 +292,7 @@ export const TacticsChat: React.FC = () => {
fetchUrl
=
proxy
+
fetchUrl
const
shouldSendQuestion
=
extra
?.
includeQuestion
!==
false
const
shouldIncludeTacticsMeta
=
extra
?.
includeTacticsMeta
!==
false
// 去除缓存中可能存在的 from 字段,避免作为参数传递
const
{
from
:
_omitFrom
,
...
safeTacticsMeta
}
=
tacticsMeta
||
{}
...
...
@@ -301,10 +302,12 @@ export const TacticsChat: React.FC = () => {
stream
:
true
,
productCode
,
toolId
:
resolvedToolId
,
...
safeTacticsMeta
,
...(
extra
?.
busiType
?
{
busiType
:
extra
.
busiType
}
:
{}),
...(
extra
?.
recordType
?
{
recordType
:
extra
.
recordType
}
:
{}),
}
if
(
shouldIncludeTacticsMeta
)
{
Object
.
assign
(
requestBody
,
safeTacticsMeta
)
}
if
(
shouldSendQuestion
)
{
requestBody
.
question
=
question
??
''
}
...
...
@@ -471,7 +474,7 @@ export const TacticsChat: React.FC = () => {
login
()
},
[
login
])
// 进入会话后自动触发一次提交
(不带 question)
,busiType 02 / recordType A02
// 进入会话后自动触发一次提交
,默认 question 为“策略分析”
,busiType 02 / recordType A02
const
hasAutoSubmittedRef
=
useRef
(
false
)
useEffect
(()
=>
{
if
(
id
)
{
...
...
@@ -486,7 +489,7 @@ export const TacticsChat: React.FC = () => {
'策略分析'
,
undefined
,
undefined
,
{
busiType
:
'02'
,
recordType
:
'A02'
,
includeQuestion
:
fals
e
},
{
busiType
:
'02'
,
recordType
:
'A02'
,
includeQuestion
:
true
,
includeTacticsMeta
:
tru
e
},
)
}
},
[
isLoading
,
handleSubmitQuestion
,
id
])
...
...
@@ -667,7 +670,7 @@ export const TacticsChat: React.FC = () => {
question
,
undefined
,
undefined
,
{
busiType
:
'02'
,
recordType
:
'A0
2'
,
includeQuestion
:
tru
e
},
{
busiType
:
'02'
,
recordType
:
'A0
1'
,
includeQuestion
:
true
,
includeTacticsMeta
:
fals
e
},
)
}
}
placeholders=
{
[
''
]
}
...
...
src/store/tacticsSlice.ts
View file @
d397d34e
...
...
@@ -2,7 +2,7 @@
import
type
{
PayloadAction
}
from
'@reduxjs/toolkit'
import
{
createAsyncThunk
,
createSlice
}
from
'@reduxjs/toolkit'
import
type
{
TacticsConversation
,
TacticsConversationState
}
from
'@/types/tactics'
import
{
fetchCreateTacticsConversation
,
fetchDeleteTacticsConversation
,
fetchTacticsConversationPage
}
from
'@/api/tactics'
import
{
fetchCreateTacticsConversation
,
fetchDeleteTacticsConversation
}
from
'@/api/tactics'
const
initialState
:
TacticsConversationState
=
{
conversations
:
[],
...
...
@@ -13,31 +13,11 @@ const initialState: TacticsConversationState = {
shouldSendQuestion
:
''
,
}
// 处理会话数据(简化版,可根据实际需求调整)
function
processTacticsConversationData
(
records
:
any
[]):
TacticsConversation
[]
{
return
records
.
map
(
record
=>
({
id
:
record
.
conversationId
||
record
.
id
,
title
:
record
.
title
||
record
.
conversationTitle
,
createdAt
:
record
.
createTime
||
record
.
createdAt
,
updatedAt
:
record
.
updateTime
||
record
.
updatedAt
,
}))
}
export
const
fetchTacticsConversations
=
createAsyncThunk
(
'tactics/fetchTacticsConversations'
,
async
(
_
,
{
rejectWithValue
})
=>
{
try
{
const
response
=
await
fetchTacticsConversationPage
({
pageNum
:
1
,
pageSize
:
100
,
})
const
records
=
response
.
data
?.
records
||
[]
return
processTacticsConversationData
(
records
)
}
catch
(
error
)
{
console
.
error
(
'Failed to fetch tactics conversations:'
,
error
)
return
rejectWithValue
(
'Failed to fetch tactics conversations'
)
}
async
()
=>
{
// 该页面内无需调用远程接口,保持 thunk 以兼容现有调用
return
[]
as
TacticsConversation
[]
},
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment