diff --git a/api/request.js b/api/request.js index f37ceee..47c253c 100644 --- a/api/request.js +++ b/api/request.js @@ -287,4 +287,11 @@ export function setRead(meetingId) { method: 'get', url: `/meet/comment/read?meetingId=${meetingId}&platform=dingTalk` }) +} + +export function previewOssFile(fileId) { + return $http({ + method: 'get', + url: `meet/fileDetail?objectName=${fileId}` + }) } \ No newline at end of file diff --git a/components/fileList/fileList.js b/components/fileList/fileList.js index cc1f8d9..0b8885e 100644 --- a/components/fileList/fileList.js +++ b/components/fileList/fileList.js @@ -2,7 +2,8 @@ import create from 'dd-store'; import { renderSize } from "../../utils/utils" import pageStore from '../../pages/meetingDetail/store'; -import { uploadPermissions } from '../../api/request.js' +import { uploadPermissions, previewOssFile } from '../../api/request.js' +import openLink from "dingtalk-jsapi/api/biz/util/openLink"; create.Component({ store: pageStore, @@ -57,24 +58,46 @@ create.Component({ if (!this.props.isPreview) { return } + const file = e.target.dataset.file console.log(file) - let data = { - ddUserId: getApp().globalData.userid, - type: 'download', - projectName: 'MING_MEETING', - fileIds: file.fileId - } - uploadPermissions(data).then(res => { - dd.previewFileInDingTalk({ - corpId: dd.corpId, - spaceId: res.data.data, - fileId: file.fileId, - fileName: file.name, - fileSize: file.size, - fileType: file.mimeType, + if (file.platform === 'oss') { + if (file.webUrl) { + dd.previewImage({ + current: 0, + urls: [ + file.webUrl + ], + }); + } else { + // 预览文件 + previewOssFile(file.fileId).then(res => { + openLink({ + url: res.data.webUrl + }); + }) + } + } else { + let data = { + ddUserId: getApp().globalData.userid, + type: 'download', + projectName: 'MING_MEETING', + fileIds: file.fileId + } + uploadPermissions(data).then(res => { + dd.previewFileInDingTalk({ + corpId: dd.corpId, + spaceId: res.data.data, + fileId: file.fileId, + fileName: file.name, + fileSize: file.size, + fileType: file.mimeType, + }) }) - }) + + } + + }, //显示操作框 showOperate(e) {