From 1c180d70f0445fa804b40df106e1fdbb50508c55 Mon Sep 17 00:00:00 2001 From: yinbangzhong <zhongbangyin@126.com> Date: 星期一, 02 九月 2024 09:22:33 +0800 Subject: [PATCH] 单文档 --- src/views/sessionManager/components/uploadFile.vue | 65 +++++++++++++++++++++++++------- 1 files changed, 50 insertions(+), 15 deletions(-) diff --git a/src/views/sessionManager/components/uploadFile.vue b/src/views/sessionManager/components/uploadFile.vue index 4005b66..15e9921 100644 --- a/src/views/sessionManager/components/uploadFile.vue +++ b/src/views/sessionManager/components/uploadFile.vue @@ -29,6 +29,7 @@ import { uploadAndParse } from '@/api/session'; import { useUserStore } from '@/store'; import { Message } from '@arco-design/web-vue'; + import EventBus from '@/utils/EventBus'; const userStore = useUserStore(); const props = defineProps({ @@ -36,6 +37,7 @@ type: Number, default: 6, }, + typeXLse: Boolean, sessionId: String, action: String, // 涓婁紶鐨勬湇鍔″櫒鍦板潃 url: String, //鍥炴樉鐨勬枃浠跺湴鍧� @@ -78,33 +80,73 @@ url: item, })); } + EventBus.on('queryAgent', (eventData) => { + // 鏇存柊缁勪欢鐨勬暟鎹� + if (eventData) { + if (fileList.value.length == 1) { + fileList.value = []; + } else { + fileList.value.forEach((item) => { + if (item.name != eventData.name) { + fileList.value = []; + fileList.value.push(item); + } + }); + } + } else { + fileList.value = []; + } + }); }); - // console.log(urls.value, 8988); const beforeRemove = (file) => { emit('handleRemove'); fileList.value = []; }; const handleChange = (fileList) => { - const formData = new FormData(); - for (let i = 0; i < fileList.length; i++) { - formData.append('file', fileList[i].file); - formData.append('conversation_id', props.sessionId); - } + const dataFile = compareArr(uploaditemList.value, fileList).uniqueToSecond; uploaditemList.value = fileList.map((item, index) => { return { index: index, name: item.name, size: (item.file.size / 1024).toFixed(2) + 'K', + onFileSelectedLoading: false, + textName: '', }; }); - filesData.value = fileList; - emit('selectFileCallback', uploaditemList.value, fileList); + filesData.value = fileList; + emit('selectFileCallback', uploaditemList.value, dataFile); + fileList.value = []; }; + //鏁扮粍姣旇緝 + const compareArr = (arr1, arr2) => { + const uniqueToFirst = arr1.filter( + (item1) => !arr2.some((item2) => item1.name == item2.name) + ); + + const uniqueToSecond = arr2.filter( + (item2) => !arr1.some((item1) => item1.name == item2.name) + ); + + return { + uniqueToFirst, + uniqueToSecond, + }; + }; + + const typeXLse = computed(() => { + return props.type; + }); + function beforeUpload(resolve) { + if (typeXLse) { + return new Promise((resolve) => { + resolve(true); + }); + } let name = ['xlsx', 'xls']; let fileName = resolve.name.split('.'); let fileExt = fileName[fileName.length - 1]; @@ -116,12 +158,5 @@ resolve(true); }); } - // if (form.value.maininformation.length > 4) { - // Message.error('鏂囦欢涓嶈兘瓒呰繃5涓�'); - // } else { - // return new Promise((resolve) => { - // resolve(true); - // }); - // } } </script> -- Gitblit v1.8.0