diff --git a/public/static/css/main.css b/public/static/css/main.css index 45bc6029..433743f8 100644 --- a/public/static/css/main.css +++ b/public/static/css/main.css @@ -7436,6 +7436,8 @@ h3.defualth3{ transition: 0.2s all linear; padding: 0 10px; font-weight: 400; + margin-left: 20px; + } h3.defualth3:hover{ background-color: rgb(235,235,242); diff --git a/src/views/main_web/workspace/components/file-item.vue b/src/views/main_web/workspace/components/file-item.vue index 6efb921c..646ce875 100644 --- a/src/views/main_web/workspace/components/file-item.vue +++ b/src/views/main_web/workspace/components/file-item.vue @@ -12,15 +12,17 @@
@@ -30,6 +32,7 @@
@@ -133,6 +136,7 @@ +
创建文件副本
  • 移动到回收站
  • 移动到回收站
  • +
  • 在线预览
  • +
  • 在线预览
  • @@ -179,7 +185,7 @@ v-if="isInWorkFolder && file.createUserId != currentUserId" class="yiyunwenjian_infodesc" >{{ file.createUserName }} 创建 - + list.indexOf(target) !== -1 const { DOWNLOADING, UPLOADING } = LoadingEnum; const { WORKING, NOT_WORKING } = FileWorkStatus; @@ -266,6 +277,8 @@ export default { imgExtensionList, RecExtensionList, VideoExtensionList, + office, + filePreviewList, isFileRightMenuVisible: false,//控制文件右键菜单显示与隐藏 fileRightMenuLeft: 0,//文件右键菜单位置 fileRightMenuTop: 0, @@ -348,7 +361,36 @@ export default { deleteFileClick() { this.isFileRightMenuVisible = false; this.$emit('deleteFileClick', this.file.id, this.file.createUserId, this.file.archName, this.file.ipfsCid); - } + }, + filePreview(){ + //office:1 img/txt:2 vedio:3 + let type; + if(oneOf(this.file.extension,office)){ + type = 1; + }else if(oneOf(this.file.extension,imgExtensionList) + || this.file.extension=='txt' + ||this.file.extension=='pdf'){ + type = 2; + }else if(oneOf(this.file.extension,VideoExtensionList)){ + type = 3; + }else{ + type = 0; + } + this.$emit('filePreview', this.file.ipfsCid,type); + }, + // async filePreview(file){ + // const url = await service.filePreview(sessionStorage.companyId); + // const Url="http://"+url; + // if(!this.isClient && url){ + // //const Url="http://2f9he2.natappfree.cc/ipfs/"; + // if(oneOf(file.extension,office)){ + // const officeApi="http://view.officeapps.live.com/op/view.aspx?src="; + // window.open(officeApi+Url+file.ipfsCid,''); + // }else if(oneOf(file.extension,imgExtensionList) || file.extension=='txt'||file.extension=='pdf'){ + // window.open(Url+file.ipfsCid,'') + // } + // } + // } }, watch: { isFileRightMenuVisible(value) { @@ -407,5 +449,23 @@ export default { background-color: #ecf5ff; color:rgb(167,168,183); } + .filePreview{ + position: absolute; + width: 200px; + height: 200px; + top: 0; + left: 50%; + background-color: red; + } + .gray{ + -webkit-filter: grayscale(100%); + -moz-filter: grayscale(100%); + -ms-filter: grayscale(100%); + -o-filter: grayscale(100%); + + filter: grayscale(100%); + + filter: gray; + } \ No newline at end of file diff --git a/src/views/main_web/workspace/service.js b/src/views/main_web/workspace/service.js index f72203bc..594cddc2 100644 --- a/src/views/main_web/workspace/service.js +++ b/src/views/main_web/workspace/service.js @@ -112,4 +112,13 @@ export async function addFile(file) { export async function deleteFile(fileId) { const res = await fetchApi('file/deleteFile', {fileId}); return res; -} \ No newline at end of file +} + +/** + * 预览文件 + */ + + export async function filePreview(companyId){ + const res = await fetchApi('company/queryFileOnlineUrlByCompanyId', companyId); + return res; + } \ No newline at end of file diff --git a/src/views/main_web/workspace/workspace.new.vue b/src/views/main_web/workspace/workspace.new.vue index 710a35a3..9b8c8ab8 100644 --- a/src/views/main_web/workspace/workspace.new.vue +++ b/src/views/main_web/workspace/workspace.new.vue @@ -92,6 +92,7 @@ :nodeFolder="currentNodeFolder" :currentFolder="currentFolder" :commitFile="commitFile" + @filePreview="filePreview" @dblclick.native="fileClick(file)" @openfileBtnClick="fileClick(file)" @copyFileBtnClick="copyWorkFileBtnClick(file)" @@ -179,6 +180,7 @@ :showFileMilestone="showFileMilestone" :nodeFolder="currentNodeFolder" :currentFolder="currentFolder" + @filePreview="filePreview" @dblclick.native="fileClick(file)" @oneFileRightBtnClick="oneFileRightBtnClick" :localFileHashMap="localFileHashMap" @@ -221,6 +223,19 @@
    + + +
    + +
    + +
    + \ No newline at end of file