diff --git a/src/components/ShowFile/ShowFile.vue b/src/components/ShowFile/ShowFile.vue
index f4d0358..65af0aa 100644
--- a/src/components/ShowFile/ShowFile.vue
+++ b/src/components/ShowFile/ShowFile.vue
@@ -3156,7 +3156,7 @@ export default {
this.openCompressionVisible = true
return
}
- if (row.contentType.indexOf('office') > -1 || row.suffix === 'csv' || row.suffix === 'pdf') {
+ if (row.contentType.indexOf('office') > -1 || ['pdf','csv','drawio'].includes(row.suffix)) {
// office文件
this.officePreviewVisible = true
this.officePreviewRow = row
diff --git a/src/components/office/Drawio.vue b/src/components/office/Drawio.vue
new file mode 100644
index 0000000..7385800
--- /dev/null
+++ b/src/components/office/Drawio.vue
@@ -0,0 +1,199 @@
+
+
+
+
+
+
diff --git a/src/components/preview/OfficePreview.vue b/src/components/preview/OfficePreview.vue
index 4cb2be7..98f89c6 100644
--- a/src/components/preview/OfficePreview.vue
+++ b/src/components/preview/OfficePreview.vue
@@ -16,7 +16,8 @@
@@ -31,10 +32,11 @@ import MessageDialog from "@/components/message/MessageDialog";
import Bus from "@/assets/js/bus";
import fileConfig from "@/utils/file-config";
import PdfPreview from "@/components/office/PdfPreview";
+import Drawio from "@/components/office/Drawio";
export default {
name: 'OfficePreview',
- components: {PdfPreview, MessageDialog, OnlyOfficeEditor},
+ components: {Drawio, PdfPreview, MessageDialog, OnlyOfficeEditor},
props: {
id: {
type: String,
@@ -93,6 +95,7 @@ export default {
this.$nextTick(() => {
this.previewDocument = document.querySelector('.preview-block')
})
+
this.checkReadOnly(this.file.userId)
// 3秒后还没加载出来视为加载失败
let that = this
@@ -108,6 +111,8 @@ export default {
methods: {
getType(suffix) {
switch (suffix) {
+ case 'drawio':
+ return 'drawio'
case 'pdf':
return 'pdf'
default:
diff --git a/src/icons/svg/file-drawio.svg b/src/icons/svg/file-drawio.svg
new file mode 100644
index 0000000..d35c24b
--- /dev/null
+++ b/src/icons/svg/file-drawio.svg
@@ -0,0 +1,9 @@
+
+
+
diff --git a/src/utils/file-type.js b/src/utils/file-type.js
index af2d3f1..89723da 100644
--- a/src/utils/file-type.js
+++ b/src/utils/file-type.js
@@ -58,6 +58,7 @@ iconClass.set('docx','file-word')
iconClass.set('docxf','file-docxf')
iconClass.set('ppt','file-ppt')
iconClass.set('pptx','file-ppt')
+iconClass.set('drawio','file-drawio')
iconClass.set('csv','file-csv')
iconClass.set('pdf','file-pdf')
iconClass.set('zip','zip')
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index d9408e9..eba40dd 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -35,6 +35,7 @@ export default {
{ divider: true, operation: 'divider' },
{ label: '新建', operation: 'create' ,child: [
{ label: '文本', operation: 'createTextFile', iconClass: 'file-txt'},
+ { label: '流程图', operation: 'createDrawioFile', iconClass: 'file-drawio'},
{ label: 'Word', operation: 'createWordFile', iconClass: 'file-word'},
{ label: 'Excel', operation: 'createExcelFile', iconClass: 'file-excel'},
{ label: 'PPT', operation: 'createPPTFile', iconClass: 'file-ppt'},