From 92e7200b892929281f7cf447bd22901b6c4cdbf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E9=9C=84?= Date: Mon, 21 Aug 2023 17:35:22 +0800 Subject: [PATCH] =?UTF-8?q?update=20onlyoffice=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/api_address_config.js | 4 ++++ src/common/onlyOffice/onlyOfficeEdit.js | 19 +++++++++++++++++++ src/common/onlyOffice/onlyOfficePreview.js | 19 +++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 src/common/onlyOffice/onlyOfficeEdit.js create mode 100644 src/common/onlyOffice/onlyOfficePreview.js diff --git a/public/api_address_config.js b/public/api_address_config.js index e5e3c88b..1e554c33 100644 --- a/public/api_address_config.js +++ b/public/api_address_config.js @@ -10,3 +10,7 @@ window._CONFIG.pdfDomainURL = window._CONFIG.domianURL + '/sys/common/pdf/pdfPre window._CONFIG.casPrefixUrl = 'http://cas.example.org:8443/cas' // 预览文件地址 window._CONFIG.onlinePreviewDomainURL = 'http://127.0.0.1:8012/onlinePreview' +// onlyOffice前端服务地址 +window._CONFIG.onlyOfficeUrl = 'http://127.0.0.1:8080' +// onlyOffice下载文件地址 +window._CONFIG.onlyOfficeDownloadFileUrl = 'http://localhost:8184/sys/common/download' diff --git a/src/common/onlyOffice/onlyOfficeEdit.js b/src/common/onlyOffice/onlyOfficeEdit.js new file mode 100644 index 00000000..c394e59a --- /dev/null +++ b/src/common/onlyOffice/onlyOfficeEdit.js @@ -0,0 +1,19 @@ +import store from '@/store' +import { getFileInfo } from '@api/api' + +export default (fileId, showFileName) => { + getFileInfo({ id: fileId }).then(res => { + if (res.success) { + const userId = store.getters.userInfo.id + const userName = store.getters.userInfo.username + const fileInfo = res.result || {} + const fullFilePathArr = fileInfo.url.split('/') + const fileName = fileInfo.fileName + const fileSuffix = fileName ? fileName.split('.')[fileName.split('.').length - 1] : '' + const filePath = `${fullFilePathArr[0]}/` + const fileDownloadUrl = `${window._CONFIG.onlyOfficeDownloadFileUrl}/${fileInfo.url}` + const url = `${window._CONFIG.onlyOfficeUrl}/editor?attId=${fileId}&userId=${userId}&userName=${userName}&filePath=${filePath}&fileName=${fileName}&oldFileName=${showFileName}&fileType=${fileSuffix}&key=${fileId}&fileUrl=${fileDownloadUrl}` + window.open(url, '_blank') + } + }) +} diff --git a/src/common/onlyOffice/onlyOfficePreview.js b/src/common/onlyOffice/onlyOfficePreview.js new file mode 100644 index 00000000..e903535b --- /dev/null +++ b/src/common/onlyOffice/onlyOfficePreview.js @@ -0,0 +1,19 @@ +import { getFileInfo } from '@api/api' + +export default (fileId, showFileName) => { + console.log(fileId) + getFileInfo({ id: fileId }).then(res => { + if (res.success) { + const fileInfo = res.result || {} + const fullFilePathArr = fileInfo.url.split('/') + const fileName = fileInfo.fileName + const fileSuffix = fileName ? fileName.split('.')[fileName.split('.').length - 1] : '' + const filePath = `${fullFilePathArr[0]}/` + const fileDownloadUrl = `${window._CONFIG.onlyOfficeDownloadFileUrl}/${fileInfo.url}` + console.log(fileDownloadUrl) + const nowTime = new Date().getTime() + const url = `${window._CONFIG.onlyOfficeUrl}/onlyOffice?oldFileName=${showFileName}&fileType=${fileSuffix}&attId=${fileId}&fileUrl=${fileDownloadUrl}&key=${fileId}${nowTime}&filePath=${filePath}&fileName=${fileName}` + window.open(url, '_blank') + } + }) +}