From e7cfc9cef8209eb7143ac619128263cdce27949d Mon Sep 17 00:00:00 2001 From: junleea <354425203@qq.com> Date: Sun, 6 Apr 2025 14:00:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90ppt=E5=88=B6=E4=BD=9C?= =?UTF-8?q?=E5=89=8D=E7=AB=AF=E9=83=A8=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/system/ai-ppt.vue | 133 +++++++++++++++++++----------------- 1 file changed, 69 insertions(+), 64 deletions(-) diff --git a/src/views/system/ai-ppt.vue b/src/views/system/ai-ppt.vue index abb2ec5..40bb03c 100644 --- a/src/views/system/ai-ppt.vue +++ b/src/views/system/ai-ppt.vue @@ -103,9 +103,10 @@ {{ file.UserFileName }}{{ selectedFile.UserFileName }} @@ -161,55 +161,47 @@
- - + - - 上传文件 - -
- - - - - - - - - {{ item.UserFileName }} - - - -
- - + + 上传文件 + +
+ + + + + + + + + {{ item.UserFileName }} + + + +
+ +
-
+
([]); // 用于存储过滤后的文件列表 + const selectedFile = ref(null); // 用于存储已选文件,改为单选 const uploadFileVisible = ref(false); // 控制上传文件对话框的显示与隐藏 const baseInfo = ref({ user_id: 0, @@ -336,11 +329,12 @@ }); }; const removeFile = (index: number) => { - selectedFiles.value.splice(index, 1); + selectedFile .value = null; // 清空已选文件 }; const handleSelectFileVisible = async () => { await getFileListData(); // 获取文件列表 + ElMessage.success("制作PPT当前只支持单文件!支持docx、doc、pdf、txt、md等格式的文件"); console.log("selectedFiles:", selectedFiles.value); selectFileVisible.value = true; // 显示对话框 console.log("handleSelectFileVisible:", selectFileVisible.value); @@ -365,10 +359,11 @@ }; const handleSelectFileConfirm = () => { - // 处理选中的文件 - console.log("选中的文件:", selectedFiles.value); - // 在这里可以进行文件上传或其他操作 - selectFileVisible.value = false; // 关闭对话框 + if (selectedFile.value) { + // 处理选择文件的逻辑 + console.log("Selected file:", selectedFile.value); + selectFileVisible.value = false; + } }; const doButtonD = () => { @@ -440,19 +435,29 @@ ElMessage.warning("当前会话已结束,创建ppt请新建会话"); return; } - loading.value = true; + let req = { token: localStorage.getItem('token'), function: "spark-create-ppt", query: inputMessage.value, - fileUrl: fileUrl + selectedFiles.value[0].file_store_name, - fileName: selectedFiles.value[0].UserFileName, } + if(selectedFile.value){ + //查看文件类型是否为docx、doc、pdf、txt、md等格式的文件 + let fileType = selectedFile.value.file_store_name.split('.').pop(); + if (fileType !== "docx" && fileType !== "doc" && fileType !== "pdf" && fileType !== "txt" && fileType !== "md") { + ElMessage.warning("当前只支持docx、doc、pdf、txt、md等格式的文件"); + return; + } + + req["fileUrl"] = selectedFile.value.file_store_name; + req["fileName"] = selectedFile.value.UserFileName; + } + loading.value = true; let pMsgContent =""; - if (req.fileUrl) { + if (req["fileUrl"]) { //文件名和文件url - pMsgContent += `[${req.fileName}](${req.fileUrl})` + "\n"; + pMsgContent += `[${req["fileUrl"]}](${req["fileUrl"]})` + "\n"; pMsgContent = pMsgContent + req.query; } else { pMsgContent = req.query;