|
@@ -102,7 +102,7 @@
|
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
|
<el-button
|
|
<el-button
|
|
|
size="mini"
|
|
size="mini"
|
|
|
- @click="cache(scope.row)"
|
|
|
|
|
|
|
+ @click="getDetail(scope.row.fileId)"
|
|
|
>详情</el-button>
|
|
>详情</el-button>
|
|
|
<el-button
|
|
<el-button
|
|
|
size="mini"
|
|
size="mini"
|
|
@@ -155,14 +155,42 @@
|
|
|
</el-form-item>
|
|
</el-form-item>
|
|
|
</el-form>
|
|
</el-form>
|
|
|
</el-dialog>
|
|
</el-dialog>
|
|
|
|
|
+ <!--文件预览弹窗-->
|
|
|
|
|
+ <el-dialog
|
|
|
|
|
+ title="预览文件"
|
|
|
|
|
+ append-to-body
|
|
|
|
|
+ :visible.sync="previewFileDialog"
|
|
|
|
|
+ width="70%"
|
|
|
|
|
+ center
|
|
|
|
|
+ >
|
|
|
|
|
+ <div v-if="fileDetail !== null">
|
|
|
|
|
+ <div v-if="fileDetail.fileType === 1001">
|
|
|
|
|
+ <el-image :src="fileDetail.originalUrl" />
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div v-else-if="fileDetail.fileType === 1002">
|
|
|
|
|
+ <video-preview-player :video-prop.sync="videoProp" />
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div v-else-if="fileDetail.fileType === 1003">
|
|
|
|
|
+ <span>音频文件</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div v-else-if="fileDetail.fileType === 1004">
|
|
|
|
|
+ <span>文本文件</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div v-else>
|
|
|
|
|
+ <span>文件没有预览</span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </el-dialog>
|
|
|
</el-row>
|
|
</el-row>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
-import { getFileList, deleteDiskFile, addDiskFolder } from '@/api/disk'
|
|
|
|
|
|
|
+import VideoPreviewPlayer from 'components/VideoPreviewPlayer'
|
|
|
|
|
+import { getFileList, deleteDiskFile, addDiskFolder, getFileDetail, getFileUrl } from '@/api/disk'
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|
|
|
name: 'FileList',
|
|
name: 'FileList',
|
|
|
|
|
+ components: { VideoPreviewPlayer },
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
// 屏幕宽度, 为了控制分页条的大小
|
|
// 屏幕宽度, 为了控制分页条的大小
|
|
@@ -183,7 +211,9 @@ export default {
|
|
|
createFolderForm: {
|
|
createFolderForm: {
|
|
|
parent: null,
|
|
parent: null,
|
|
|
folderName: null
|
|
folderName: null
|
|
|
- }
|
|
|
|
|
|
|
+ },
|
|
|
|
|
+ previewFileDialog: false,
|
|
|
|
|
+ fileDetail: null
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
created() {
|
|
created() {
|
|
@@ -221,6 +251,13 @@ export default {
|
|
|
})
|
|
})
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
|
|
+ getDetail(fileId) {
|
|
|
|
|
+ getFileDetail(fileId).then(resp => {
|
|
|
|
|
+ if (resp.code === 0) {
|
|
|
|
|
+ console.log(resp.data)
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
cache(row) {
|
|
cache(row) {
|
|
|
},
|
|
},
|
|
|
search() {
|
|
search() {
|
|
@@ -300,9 +337,17 @@ export default {
|
|
|
console.log(filename)
|
|
console.log(filename)
|
|
|
} else {
|
|
} else {
|
|
|
const fileId = item.fileId
|
|
const fileId = item.fileId
|
|
|
- console.log(fileId)
|
|
|
|
|
|
|
+ this.previewFile(fileType, fileId)
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
+ previewFile(fileType, fileId) {
|
|
|
|
|
+ this.previewFileDialog = true
|
|
|
|
|
+ getFileUrl(fileType, fileId).then(resp => {
|
|
|
|
|
+ if (resp.code === 0) {
|
|
|
|
|
+ this.fileDetail = resp.data
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
createNewFolder() {
|
|
createNewFolder() {
|
|
|
this.createFolderDialog = true
|
|
this.createFolderDialog = true
|
|
|
},
|
|
},
|