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 () => {