mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2025-12-23 10:00:08 +08:00
fix: group message resend (#6106)
This commit is contained in:
parent
6bbfa287e4
commit
e51a37cc74
@ -805,21 +805,19 @@ export const deleteMessageGroupThunk =
|
||||
const currentState = getState()
|
||||
const topicMessageIds = currentState.messages.messageIdsByTopic[topicId] || []
|
||||
const messagesToDelete: Message[] = []
|
||||
const idsToDelete: string[] = []
|
||||
|
||||
topicMessageIds.forEach((id) => {
|
||||
const msg = currentState.messages.entities[id]
|
||||
if (msg && msg.askId === askId) {
|
||||
messagesToDelete.push(msg)
|
||||
idsToDelete.push(id)
|
||||
}
|
||||
})
|
||||
|
||||
const userQuery = currentState.messages.entities[askId]
|
||||
if (userQuery && userQuery.topicId === topicId && !idsToDelete.includes(askId)) {
|
||||
messagesToDelete.push(userQuery)
|
||||
idsToDelete.push(askId)
|
||||
}
|
||||
// const userQuery = currentState.messages.entities[askId]
|
||||
// if (userQuery && userQuery.topicId === topicId && !idsToDelete.includes(askId)) {
|
||||
// messagesToDelete.push(userQuery)
|
||||
// idsToDelete.push(askId)
|
||||
// }
|
||||
|
||||
if (messagesToDelete.length === 0) {
|
||||
console.warn(`[deleteMessageGroup] No messages found with askId ${askId} in topic ${topicId}.`)
|
||||
@ -894,13 +892,29 @@ export const resendMessageThunk =
|
||||
const resetDataList: Message[] = []
|
||||
|
||||
if (assistantMessagesToReset.length === 0) {
|
||||
// 没有用户消息,就创建一个
|
||||
const assistantMessage = createAssistantMessage(assistant.id, topicId, {
|
||||
askId: userMessageToResend.id,
|
||||
model: assistant.model
|
||||
// 没有用户消息,就创建一个或多个
|
||||
|
||||
if (userMessageToResend?.mentions?.length) {
|
||||
console.log('userMessageToResend.mentions', userMessageToResend.mentions)
|
||||
for (const mention of userMessageToResend.mentions) {
|
||||
const assistantMessage = createAssistantMessage(assistant.id, topicId, {
|
||||
askId: userMessageToResend.id,
|
||||
model: mention,
|
||||
modelId: mention.id
|
||||
})
|
||||
resetDataList.push(assistantMessage)
|
||||
}
|
||||
} else {
|
||||
const assistantMessage = createAssistantMessage(assistant.id, topicId, {
|
||||
askId: userMessageToResend.id,
|
||||
model: assistant.model
|
||||
})
|
||||
resetDataList.push(assistantMessage)
|
||||
}
|
||||
|
||||
resetDataList.forEach((message) => {
|
||||
dispatch(newMessagesActions.addMessage({ topicId, message }))
|
||||
})
|
||||
resetDataList.push(assistantMessage)
|
||||
dispatch(newMessagesActions.addMessage({ topicId, message: assistantMessage }))
|
||||
}
|
||||
|
||||
const allBlockIdsToDelete: string[] = []
|
||||
|
||||
Loading…
Reference in New Issue
Block a user