| | |
| | | </div> |
| | | <template #footer> |
| | | <template v-if="detailDemandStatus === '1' && !requesterProvider"> |
| | | <el-button color="#F2F3F5" :loading="submitting" :disabled="submitting" @click="rejectTheApplication">拒绝申请</el-button> |
| | | <el-button class="" color="#4C34FF" :loading="submitting" :disabled="submitting" @click="approvedByTheReview">审核通过</el-button> |
| | | <el-button color="#F2F3F5" :loading="submitting || uploading" :disabled="submitting || uploading" @click="rejectTheApplication">拒绝申请</el-button> |
| | | <el-button class="" color="#4C34FF" :loading="submitting || uploading" :disabled="submitting || uploading" @click="approvedByTheReview">审核通过</el-button> |
| | | </template> |
| | | <template v-if="detailDemandStatus === '2'"> |
| | | <el-button class="" color="#4C34FF" @click="downloadAllFiles">全部下载</el-button> |
| | |
| | | const uploadedFiles = ref([]) // 已上传文件列表 |
| | | const responseData = ref(null) |
| | | const submitting = ref(false) // 提交中状态 |
| | | const uploading = ref(false) // 文件上传中状态 |
| | | // 自定义上传请求函数 |
| | | const handleHttpRequest = async (options) => { |
| | | uploading.value = true |
| | | try { |
| | | // 创建FormData对象 |
| | | const formData = new FormData() |
| | |
| | | |
| | | // 调用导入的API函数 |
| | | const response = await putFileAttachApi(formData) |
| | | console.log('response',response) |
| | | if (response.data && response.data.success) { |
| | | // 调用上传成功的回调 |
| | | options.onSuccess(response) |
| | |
| | | // 调用上传失败的回调 |
| | | options.onError(error) |
| | | console.error('文件上传失败:', error) |
| | | } finally { |
| | | uploading.value = false |
| | | } |
| | | } |
| | | // 拒绝申请弹框控制 |
| | |
| | | } |
| | | |
| | | // 文件大小限制,这里限制为100MB |
| | | const maxSize = 100 * 1024 * 1024 // 100MB |
| | | if (file.size > maxSize) { |
| | | ElMessage.error('文件大小不能超过100MB') |
| | | return false |
| | | } |
| | | // const maxSize = 100 * 1024 * 1024 // 100MB |
| | | // if (file.size > maxSize) { |
| | | // ElMessage.error('文件大小不能超过100MB') |
| | | // return false |
| | | // } |
| | | |
| | | return true |
| | | } |
| | |
| | | // 添加更严格的检查,确保response不是undefined |
| | | if (response && response?.data && response?.data?.success) { |
| | | const fileData = response.data.data |
| | | console.log('成功数据', fileData) |
| | | responseData.value = fileData |
| | | // 添加到已上传文件列表 |
| | | uploadedFiles.value.push({ |
| | |
| | | } |
| | | } |
| | | |
| | | // 下载文件 |
| | | const downloadFile = file => { |
| | | if (file.link) { |
| | | // 创建一个隐藏的a标签来触发下载 |
| | | const a = document.createElement('a') |
| | | a.href = file.link |
| | | a.download = file.originalName || file.name |
| | | document.body.appendChild(a) |
| | | a.click() |
| | | document.body.removeChild(a) |
| | | } else { |
| | | ElMessage.warning('文件链接无效') |
| | | } |
| | | } |
| | | |
| | | // 从表格下载文件 |
| | | const downloadFileFromTable = file => { |
| | | if (file.fileUrl) { |
| | | // 创建一个隐藏的a标签来触发下载 |
| | | const a = document.createElement('a') |
| | | a.href = file.fileUrl |
| | | a.download = file.name || 'attachment' |
| | | a.download = file.fileOriginalName || '下载附件' |
| | | document.body.appendChild(a) |
| | | a.click() |
| | | document.body.removeChild(a) |
| | |
| | | if (file.fileUrl) { |
| | | const a = document.createElement('a') |
| | | a.href = file.fileUrl |
| | | a.download = file.name || `attachment_${index + 1}` |
| | | a.download = file.fileOriginalName || `下载附件_${index + 1}` |
| | | document.body.appendChild(a) |
| | | a.click() |
| | | document.body.removeChild(a) |
| | |
| | | :deep(.el-upload-list) { |
| | | margin-top: 10px; |
| | | } |
| | | .el-upload-list__item.is-success:focus .el-upload-list__item-status-label, .el-upload-list__item.is-success:hover .el-upload-list__item-status-label{ |
| | | display: none !important;} |
| | | |
| | | </style> |