{"remainingRequest":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\cssc-fvue\\src\\components\\common\\FilePreview.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\cssc-fvue\\src\\components\\common\\FilePreview.vue","mtime":1667804638649},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nimport { mapState } from 'vuex'\r\nimport req from '@/request.js'\r\nimport Pdf from '@/components/common/pdf.vue'\r\nimport IframeSrc from '@/components/common/iframeSrc.vue'\r\nimport FileTree from '@/components/common/fileTree.vue'\r\nimport VideoPlayer from '@/components/common/HtVideoPlayer.vue'\r\nimport Loading from '@/components/common/Loading.vue'\r\nimport FillPage from '@/components/common/FillPage.vue'\r\n\r\nexport default {\r\n components: { Pdf, IframeSrc, FileTree, VideoPlayer, FileTree, Loading, FillPage },\r\n props: {\r\n closeable: {\r\n type: Boolean,\r\n default: true\r\n }\r\n },\r\n data() {\r\n return {\r\n dialogVisible: false,\r\n fileRow: '',\r\n iframeSrc: '',\r\n src: '',\r\n fileTree: '',\r\n loading: false,\r\n errorMessage: null\r\n }\r\n },\r\n computed: mapState({\r\n header: state => {\r\n return { Authorization: `Bearer ${state.login.currentUser.token}` }\r\n },\r\n actionUrl: function () {\r\n return window.context.portal + '/file/v1/upload'\r\n }\r\n }),\r\n methods: {\r\n async preview(row) {\r\n const this_ = this;\r\n this.loading = true;\r\n this.errorMessage = null;\r\n this.fileRow = \"\";\r\n this.dialogVisible = true;\r\n await this.$store\r\n .dispatch('menu/onlinePreview', row.id)\r\n .then(data => {\r\n const loadError = \"加载要预览的附件时出错\";\r\n if (!data) {\r\n this.errorMessage = \"要预览的附件不存在\";\r\n }else if(data.result == \"fileNotSupported\"){\r\n this.errorMessage = \"当前附件格式不支持预览\";\r\n }else if ((typeof data == \"object\" && data.hasOwnProperty(\"state\")) && (!data.state || !data.result)) {\r\n this.errorMessage = data.message || loadError;\r\n }\r\n else if (typeof data == \"object\" && data.hasOwnProperty(\"result\") && data.result === \"error\") {\r\n this.errorMessage = loadError;\r\n }else {\r\n this.fileRow = row;\r\n this.src = null;\r\n this.iframeSrc = null;\r\n switch (data.result) {\r\n case 'html':\r\n this.iframeSrc = window.context.portal + data.pdfUrl;\r\n this.$refs.iframeSrcSearch.handleOpen();\r\n break;\r\n case 'txt':\r\n this.iframeSrc = window.context.portal + data.TxtUrl;\r\n this.$refs.iframeSrcSearch.handleOpen();\r\n break;\r\n case 'picture':\r\n this.iframeSrc = window.context.portal + data.currentUrl;\r\n this.$refs.iframeSrcSearch.handleOpen();\r\n break;\r\n case 'compress':\r\n this_.download(row.id);\r\n // this.fileTree = JSON.parse(data.fileTree).childList;\r\n // this.$refs.fileTreeSearch.handleOpen();\r\n this.errorMessage = \"不支持压缩文件的在线预览\";\r\n break;\r\n case 'media':\r\n this_.download(row.id);\r\n // this.$refs.videoPlayer.show();\r\n this.errorMessage = \"不支持视频的在线播放\";\r\n break;\r\n default:\r\n this.src = window.context.portal + data.pdfUrl;\r\n this.$refs.pdfSearch.handleOpen();\r\n break;\r\n }\r\n }\r\n })\r\n .finally(() => { this.loading = false })\r\n },\r\n //下载附件\r\n download(id) {\r\n this.$store.dispatch(\"menu/downloadFile\", id);\r\n },\r\n },\r\n}\r\n",null]}