From d1392e4b83d1e226e1cbbb103834eed8490555bb Mon Sep 17 00:00:00 2001 From: qiuhongwu Date: Mon, 26 Feb 2024 10:16:11 +0800 Subject: [PATCH] =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/heli/storage/StorageForm.vue | 53 +++++++++---------- 1 file changed, 24 insertions(+), 29 deletions(-) diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageForm.vue index 121e5863..c9cd7f6a 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageForm.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/storage/StorageForm.vue @@ -186,7 +186,7 @@ + }" name="files" :show-file-list="false" :auto-upload="false" :data="matUploadData" :on-change="matUploadChange" :on-error="handleError" :on-success="handleSuccess" :before-upload="before" class="upload-file-uploader"> 上传 @@ -372,7 +372,7 @@ const handleStatus = async (num) => { query.id = formData.value.id query.type = 'update' - // reload() + reload() } // 根据入库类型显示上游单号 @@ -394,17 +394,20 @@ const matUploadData = ref({ businessId: formData.value.id, businessFileType: 'MATERIAL' }) +const matUploadChange = (file, files) => { + matUploadFiles.value = files + refreshAttachments(files, 'MATERIAL') +} // 记录待上传、成功上传及失败上传的文件数量 const sumbefore = ref(0) const successfulUploadsCount = ref(0) const failedUploadsCount = ref(0) - // 处理单个文件上传成功的情况 const handleSuccess = (response: any, file: UploadUserFile) => { successfulUploadsCount.value++ // 更新附件信息等其他逻辑... - console.log('successfulUploadsCount.value', successfulUploadsCount.value) + console.log('上传成功数量', successfulUploadsCount.value) } // 处理单个文件上传失败的情况 @@ -415,20 +418,14 @@ const handleError = (error: Error, file: UploadUserFile) => { // 将失败的附件添加到failedAttachments.value数组中 failedAttachments.value.push(file) failedAttachmentsName.value = failedAttachments.value.map((value) => value.name) - console.log(failedAttachmentsName.value) } - console.log('failedUploadsCount.value', failedUploadsCount.value) + console.log('上传失败数量', failedUploadsCount.value) } // 文件上传前的钩子 const before = (rawFile) => { sumbefore.value++ } -// 当文件列表发生变化时,更新待上传文件数量 添加文件、上传成功和上传失败时都会被调用 -const matUploadChange = (file: any, files: UploadUserFile[]) => { - matUploadFiles.value = files - refreshAttachments(files, 'MATERIAL') -} const failedAttachments = ref([]) const failedAttachmentsName = ref() @@ -451,23 +448,24 @@ const refreshAttachments = (files, type) => { // 排序 formData.value.attachments.sort((v1, v2) => v1.createTime - v2.createTime) - // 提示用户上传失败文件 - ElMessageBox.alert( - // 使用错误信息作为提示内容 - `文件名为:${failedAttachmentsName.value.join(' / ')}上传失败`, - `文件格式不正确或网络问题 请您稍后再试`, - { - dangerouslyUseHTMLString: false, - confirmButtonText: '知道了', - center: true - } - ) // 文件上传一遍 上传总数等于要上传文件时 刷新页面 const sum = successfulUploadsCount.value + failedUploadsCount.value - console.log('sum', sum) + console.log('上传总数', sum) console.log('要上传文件数量', sumbefore.value) if (sum == sumbefore.value && sumbefore.value > 0 && sum > 0) { - console.log('刷新页面') + console.log('要上传文件数量等于上传总数 刷新页面并给出提示') + if (failedUploadsCount.value > 0) { + ElMessageBox.alert( + // 使用错误信息作为提示内容 + `文件名为:${failedAttachmentsName.value.join(' / ')}上传失败`, + `文件格式不正确或网络问题 请您稍后再试`, + { + dangerouslyUseHTMLString: false, // 由于我们不是使用HTML字符串,所以这里设置为false + confirmButtonText: '知道了', + center: true + } + ) + } reload() } } @@ -530,14 +528,11 @@ const saveFormData = async () => { await initStatus(formData.value.status) //formData.value = await StorageApi.getStorage(formData.value.id) - // message.success(t(commonResult)) + message.success(t(commonResult)) } finally { formLoading.value = false } } - -// 当前正在上传的文件数量 -let currentUploadingFiles = 0 const submitForm = async () => { // 校验表单 await formRef.value.validate() @@ -562,7 +557,7 @@ const submitForm = async () => { query.id = formData.value.id query.type = 'update' //页面重新加载 - // reload() + reload() } var matCount = 1