diff --git a/src/api/ai/chat/message/index.ts b/src/api/ai/chat/message/index.ts index edc28a6d..d3564164 100644 --- a/src/api/ai/chat/message/index.ts +++ b/src/api/ai/chat/message/index.ts @@ -60,8 +60,14 @@ export const ChatMessageApi = { }) }, - // 发送 send 消息 + // 删除消息 delete: async (id: string) => { return await request.delete({ url: `/ai/chat/message/delete?id=${id}` }) + }, + + // 删除消息 - 对话所有消息 + deleteByConversationId: async (conversationId: string) => { + return await request.delete({ url: `/ai/chat/message/delete-by-conversation-id?conversationId=${conversationId}` }) } + } diff --git a/src/assets/ai/clear.svg b/src/assets/ai/clear.svg new file mode 100644 index 00000000..e75a4e8a --- /dev/null +++ b/src/assets/ai/clear.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/views/ai/chat/index.vue b/src/views/ai/chat/index.vue index c4f9aade..c07afa27 100644 --- a/src/views/ai/chat/index.vue +++ b/src/views/ai/chat/index.vue @@ -19,7 +19,9 @@ - + + + @@ -93,7 +95,7 @@ import {ChatMessageApi, ChatMessageVO} from '@/api/ai/chat/message' import {ChatConversationApi, ChatConversationVO} from '@/api/ai/chat/conversation' import {useClipboard} from '@vueuse/core' import ChatConversationUpdateForm from "@/views/ai/chat/components/ChatConversationUpdateForm.vue"; -import {Download, Top, User} from "@element-plus/icons-vue"; +import {Download, Top} from "@element-plus/icons-vue"; const route = useRoute() // 路由 const message = useMessage() // 消息弹窗 @@ -488,6 +490,22 @@ const handlerGoTop = async () => { await messageRef.value.handlerGoTop() } +/** + * message 清除 + */ +const handlerMessageClear = async () => { + if (!activeConversationId.value) { + return + } + // 确认提示 + await message.delConfirm("确认清空对话消息?") + // 清空对话 + await ChatMessageApi.deleteByConversationId(activeConversationId.value as string) + // 刷新 message 列表 + await getMessageList() +} + + /** 初始化 **/ onMounted(async () => {