|
|
|
@ -21,9 +21,9 @@ |
|
|
|
<i class="iconfont icon-changgui" /> |
|
|
|
<span>常规</span> |
|
|
|
</template> |
|
|
|
<!-- <el-menu-item-group class="collect-submenu-group"> |
|
|
|
<el-menu-item index="1-3">删除</el-menu-item> |
|
|
|
</el-menu-item-group> --> |
|
|
|
<el-menu-item-group class="collect-submenu-group"> |
|
|
|
<el-menu-item index="1-3" @click="toDelete">删除</el-menu-item> |
|
|
|
</el-menu-item-group> |
|
|
|
<el-menu-item-group class="collect-submenu-group submenu-tree"> |
|
|
|
<template slot="title">原文上传</template> |
|
|
|
<!-- <el-menu-item index="1-5" @click="fileUpload(0)">普通上传</el-menu-item> --> |
|
|
|
@ -100,17 +100,6 @@ |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
<!--分页组件--> |
|
|
|
<!-- <el-pagination |
|
|
|
v-if="fileData.length !== 0" |
|
|
|
:current-page="currentPage" |
|
|
|
:total="page.total" |
|
|
|
:page-size="page.size" |
|
|
|
:pager-count="5" |
|
|
|
layout="total, prev, pager, next, sizes" |
|
|
|
@size-change="handleSizeChange" |
|
|
|
@current-change="handleCurrentPage" |
|
|
|
/> --> |
|
|
|
</div> |
|
|
|
<PreUpload ref="uploadBigRef" is-pre-file="true" :arc-id="parentInfo &&parentInfo.id" :selected-document="selectedDocument" @onUploadSuccess="handleSuccessResource" @onUploadError="handleErrorResource" /> |
|
|
|
</el-drawer> |
|
|
|
@ -123,7 +112,7 @@ |
|
|
|
import { header, form } from '@crud/crud' |
|
|
|
import { mapGetters } from 'vuex' |
|
|
|
import { downloadFile } from '@/utils/index' |
|
|
|
import { FetchFileListByDocumentId } from '@/api/prearchiveLibrary/prearchiveLibrary' |
|
|
|
import { FetchFileListByDocumentId, FetchDeleteDocumentFile } from '@/api/prearchiveLibrary/prearchiveLibrary' |
|
|
|
import { getToken } from '@/utils/auth' |
|
|
|
import PreUpload from '@/views/components/category/preUpload' |
|
|
|
|
|
|
|
@ -230,9 +219,31 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
getFileSize(fileSize) { |
|
|
|
const fileSizeInKB = (fileSize / 1024).toFixed(2) + ' KB' |
|
|
|
const fileSizeInB = fileSize + 'B' |
|
|
|
return (fileSize / 1024) <= 0.01 ? fileSizeInB : fileSizeInKB |
|
|
|
// 1. 先将接口返回的KB值转为数字,处理非数字/空值情况 |
|
|
|
const sizeInKB = Number(fileSize) |
|
|
|
if (isNaN(sizeInKB) || sizeInKB < 0) { |
|
|
|
return '0 KB' // 异常值默认显示0 KB |
|
|
|
} |
|
|
|
|
|
|
|
// 2. 定义单位换算关系(1 MB = 1024 KB,1 GB = 1024 MB) |
|
|
|
const KB = 1 |
|
|
|
const MB = 1024 * KB |
|
|
|
const GB = 1024 * MB |
|
|
|
|
|
|
|
// 3. 根据大小自动选择单位并格式化 |
|
|
|
if (sizeInKB >= GB) { |
|
|
|
// 大于等于1GB,显示GB(保留2位小数) |
|
|
|
return (sizeInKB / GB).toFixed(2) + ' GB' |
|
|
|
} else if (sizeInKB >= MB) { |
|
|
|
// 大于等于1MB且小于1GB,显示MB(保留2位小数) |
|
|
|
return (sizeInKB / MB).toFixed(2) + ' MB' |
|
|
|
} else if (sizeInKB < 1) { |
|
|
|
// 不足1KB,统一显示1 KB(保持你之前的需求) |
|
|
|
return '1 KB' |
|
|
|
} else { |
|
|
|
// 1KB到1MB之间,显示KB(保留2位小数) |
|
|
|
return sizeInKB + ' KB' |
|
|
|
} |
|
|
|
}, |
|
|
|
getFile() { |
|
|
|
this.getTableDisplayFieldsLoading = true |
|
|
|
@ -281,18 +292,49 @@ export default { |
|
|
|
handleCurrentChange(selection, row) { |
|
|
|
this.selections = selection |
|
|
|
}, |
|
|
|
handleSizeChange(size) { |
|
|
|
this.currentPage = 1 |
|
|
|
this.page.size = size |
|
|
|
this.page.page = 0 |
|
|
|
}, |
|
|
|
handleCurrentPage(pageVal) { |
|
|
|
this.currentPage = pageVal |
|
|
|
this.page.page = pageVal - 1 |
|
|
|
}, |
|
|
|
handleClose(done) { |
|
|
|
done() |
|
|
|
}, |
|
|
|
toDelete() { |
|
|
|
if (this.selections.length === 0) { |
|
|
|
this.$message({ message: '您还未勾选需要操作的条目,请先确认!', offset: 8 }) |
|
|
|
return false |
|
|
|
} |
|
|
|
|
|
|
|
this.$confirm( |
|
|
|
'此删除将把所选条目彻底删除<span>你是否还要继续?</span>', |
|
|
|
'提示', |
|
|
|
{ |
|
|
|
confirmButtonText: '继续', |
|
|
|
cancelButtonText: '取消', |
|
|
|
type: 'warning', |
|
|
|
dangerouslyUseHTMLString: true |
|
|
|
} |
|
|
|
).then(() => { |
|
|
|
const params = this.selections.map(val => { |
|
|
|
return { |
|
|
|
'documentId': this.selectedDocument.id, |
|
|
|
'documentFileId': val.id, |
|
|
|
'archivesId': this.parentInfo.id |
|
|
|
} |
|
|
|
}) |
|
|
|
|
|
|
|
// 4. 调用删除接口并处理结果 |
|
|
|
FetchDeleteDocumentFile(params).then((res) => { |
|
|
|
if (res.code !== 500) { |
|
|
|
this.$message({ message: '删除成功' || '删除成功', type: 'success', offset: 8 }) |
|
|
|
this.getFile() |
|
|
|
} else { |
|
|
|
this.$message({ message: '删除所选电子原文失败', type: 'error', offset: 8 }) |
|
|
|
} |
|
|
|
}).catch(err => { |
|
|
|
console.error('删除接口调用失败:', err) |
|
|
|
this.$message({ message: '网络异常,删除失败', type: 'error', offset: 8 }) |
|
|
|
}) |
|
|
|
}).catch(() => { |
|
|
|
this.$message({ message: '已取消删除', type: 'info', offset: 8 }) |
|
|
|
}) |
|
|
|
}, |
|
|
|
toPreview(row) { |
|
|
|
const routeData = this.$router.resolve({ |
|
|
|
path: '/preview', |
|
|
|
|