|
@@ -283,16 +283,37 @@
|
|
|
v-model="drawer"
|
|
|
:title="`${currentitem.ecode} 文件列表查看`"
|
|
|
:direction="'rtl'"
|
|
|
- :before-close="handleClose"
|
|
|
+ :before-close="handleClose" size="50%"
|
|
|
>
|
|
|
+ <div style="position: absolute;right: 20px;bottom: 20px;">
|
|
|
+ <el-button type="primary" icon="UploadFilled" >上传文件</el-button>
|
|
|
+ </div>
|
|
|
+
|
|
|
<el-table style="width: 100%;" :data="filelist">
|
|
|
- <el-table-column prop="date" label="文件名称" width="80">
|
|
|
+ <el-table-column prop="originalName" label="文件名称" width="300">
|
|
|
+ <template #default="scope">
|
|
|
+ <div style="display: flex;">
|
|
|
+ <img style="width: 25px;height:25px" :src="gettypeicon(scope.row.fileSuffix)"/>
|
|
|
+ <div>{{ scope.row.originalName }}</div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="date" label="文件大小" width="80">
|
|
|
+ <el-table-column prop="size" label="文件大小" width="180">
|
|
|
+ <template #default="scope">
|
|
|
+ {{ scope.row.size >1024 ? scope.row.size>1024*1024?(scope.row.size / 1024/1024).toFixed(2) + ' MB' :(scope.row.size / 1024).toFixed(2) + ' KB' : scope.row.size + ' B' }}
|
|
|
+ </template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="date" label="上传时间" width="180">
|
|
|
+ <el-table-column prop="createTime" label="上传时间" width="180">
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="date" label="操作" >
|
|
|
+ <template #default="scope">
|
|
|
+ <div style="display: flex;gap:5px">
|
|
|
+ <div> <el-button type="text" >删除</el-button></div>
|
|
|
+ <div> <el-button type="text" >预览</el-button></div>
|
|
|
+ <div> <el-button type="text" >下载</el-button></div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ </template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
</el-drawer>
|
|
@@ -306,6 +327,7 @@ import {
|
|
|
addArchives,
|
|
|
updateArchives,
|
|
|
delArchives,
|
|
|
+ getArchive_files
|
|
|
} from "@/api/archives/index";
|
|
|
import _ from "lodash";
|
|
|
|
|
@@ -445,7 +467,6 @@ const shproject = (item) => {
|
|
|
};
|
|
|
|
|
|
const tableRowClassName = ({ row, rowIndex }: { row: any; rowIndex: number }) => {
|
|
|
- console.log(row);
|
|
|
if (row.status == "2") {
|
|
|
return "warning-row";
|
|
|
} else if (row.status == "3") {
|
|
@@ -466,6 +487,10 @@ const deleteitem = (id: any) => {
|
|
|
const lookfiles = (item) => {
|
|
|
currentitem.value = item;
|
|
|
drawer.value = true;
|
|
|
+
|
|
|
+ getArchive_files(item.id).then((res) => {
|
|
|
+ filelist.value = res.data
|
|
|
+ });
|
|
|
};
|
|
|
const handleClose = (done) => {
|
|
|
ElMessageBox.confirm('确定关闭文件查看?')
|
|
@@ -477,6 +502,43 @@ const handleClose = (done) => {
|
|
|
})
|
|
|
};
|
|
|
|
|
|
+import txticon from '@/assets/icons/svg/txt.svg'
|
|
|
+import picicon from '@/assets/icons/svg/pic.svg'
|
|
|
+import pdficon from '@/assets/icons/svg/pdf1.svg'
|
|
|
+import docicon from '@/assets/icons/svg/doc.svg'
|
|
|
+import xlsicon from '@/assets/icons/svg/xls.svg'
|
|
|
+import ppticon from '@/assets/icons/svg/ppt.svg'
|
|
|
+import mp4icon from '@/assets/icons/svg/mp4.svg'
|
|
|
+import cadicon from '@/assets/icons/svg/cad.svg'
|
|
|
+import unknownicon from '@/assets/icons/svg/unknown.svg'
|
|
|
+
|
|
|
+const gettypeicon = (type) => {
|
|
|
+ if (type.indexOf('png') != -1 || type.indexOf('jp') != -1) {
|
|
|
+ return picicon;
|
|
|
+ }
|
|
|
+ if (type.indexOf('ppt') != -1 ) {
|
|
|
+ return ppticon;
|
|
|
+ }
|
|
|
+ if (type.indexOf('xl') != -1 ) {
|
|
|
+ return xlsicon;
|
|
|
+ }
|
|
|
+ if (type.indexOf('doc') != -1 ) {
|
|
|
+ return docicon;
|
|
|
+ }
|
|
|
+ if (type.indexOf('txt') != -1 ) {
|
|
|
+ return txticon;
|
|
|
+ }
|
|
|
+ if (type.indexOf('ca') != -1 ) {
|
|
|
+ return cadicon;
|
|
|
+ }
|
|
|
+ if (type.indexOf('mp4') != -1 ) {
|
|
|
+ return mp4icon;
|
|
|
+ }
|
|
|
+ if (type.indexOf('pdf') != -1 ) {
|
|
|
+ return pdficon;
|
|
|
+ }
|
|
|
+ return unknownicon
|
|
|
+}
|
|
|
|
|
|
</script>
|
|
|
|