| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div v-if="detailDemandStatus === '2'"> |
| | | <div class="label">数据详情 </div> |
| | | <el-table :data="tableData" border style="width: 100%"> |
| | | <el-table-column prop="name" label="文件名称" /> |
| | | <el-table-column prop="fileSize" label="文件大小" /> |
| | | <el-table-column fixed="right" label="操作" min-width="100"> |
| | | <template #default="scope"> |
| | | <el-button link type="text" @click="downloadFileFromTable(scope.row)">下载</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <template #footer> |
| | |
| | | gdSupplyDemandDetailApi, |
| | | putFileAttachApi, |
| | | gdSupplyDemandAuditPassApi, |
| | | gdSupplyDemandAuditRejectApi |
| | | gdSupplyDemandAuditRejectApi, |
| | | gdSupplyDemandAuditAttachmentListApi |
| | | } from '@/views/orderView/orderDataManage/supplyAdd/supplyAddApi' |
| | | import { ElMessage } from 'element-plus' |
| | | import reasonForRejectionDialog from '@/views/orderView/orderDataManage/supplyAdd/reasonForRejectionDialog.vue' |
| | |
| | | const responseData = ref([]) |
| | | // 拒绝申请弹框控制 |
| | | const rejectionDialogVisible = ref(false) // 拒绝申请弹框显隐 |
| | | |
| | | const tableData = ref([]) // 附件表格数据 |
| | | // 文件选择变化 |
| | | const handleFileChange = (file, fileList) => { |
| | | if (fileList.length > 0) { |
| | |
| | | } |
| | | } |
| | | |
| | | // 从表格下载文件 |
| | | const downloadFileFromTable = file => { |
| | | if (file.fileUrl) { |
| | | // 创建一个隐藏的a标签来触发下载 |
| | | const a = document.createElement('a') |
| | | a.href = file.fileUrl |
| | | a.download = file.name || 'attachment' |
| | | document.body.appendChild(a) |
| | | a.click() |
| | | document.body.removeChild(a) |
| | | } else { |
| | | ElMessage.warning('文件链接无效') |
| | | } |
| | | } |
| | | |
| | | // 根据部门ID获取部门名称 |
| | | function getDeptNameById(deptId, deptList) { |
| | | // 处理类型转换,确保比较的是相同类型 |
| | |
| | | data.responsibleDeptName = getDeptNameById(data.responsibleDeptId, deptTree.value) |
| | | } |
| | | formData.value = data |
| | | |
| | | // 加载附件数据 |
| | | await loadAttachments(id) |
| | | } |
| | | |
| | | // 加载附件数据 |
| | | async function loadAttachments(demandId) { |
| | | try { |
| | | const res = await gdSupplyDemandAuditAttachmentListApi({ demandId:demandId }) |
| | | const attachments = res?.data?.data ?? [] |
| | | |
| | | // 格式化附件数据以匹配表格结构 |
| | | tableData.value = attachments.map(attachment => ({ |
| | | name: attachment.attachId ? `附件ID: ${attachment.attachId}` : '未知附件', |
| | | fileSize: attachment.fileSize ? `${attachment.fileSize}M` : '未知大小', |
| | | fileUrl: attachment.fileUrl, |
| | | id: attachment.id |
| | | })) |
| | | } catch (error) { |
| | | console.error('加载附件数据失败:', error) |
| | | ElMessage.error('加载附件数据失败,请重试') |
| | | tableData.value = [] |
| | | } |
| | | } |
| | | |
| | | // 拒绝申请 |