浏览代码

Merge branch 'v3' of http://94.191.59.107:3000/houwenfeng/cloudfile-ui into v3

“yueshang” 2 年之前
父节点
当前提交
96cfdb316e

+ 3 - 4
index.html

@@ -9,10 +9,9 @@
 		<link rel="icon" href="/favicon.ico">
 		<title>聚合智慧文档管理系统</title>
 		<!--引入onlyoffice组件-->
-		<!-- <script type="text/javascript" src="https://doc.jujutong.cloud:19443/web-apps/apps/api/documents/api.js" charset="utf-8" async></script> -->
-		<!-- <script type="text/javascript" src="http://192.168.1.28:19531/web-apps/apps/api/documents/api.js" charset="utf-8" async></script> -->
-		<!-- <script type="text/javascript" src="http://8.142.173.95:19531/web-apps/apps/api/documents/api.js" charset="utf-8" async></script> -->
-		<script type="text/javascript" src="https://192.168.1.28:19443/web-apps/apps/api/documents/api.js" charset="utf-8" async></script>
+		 <script type="text/javascript" src="http://192.168.1.28:19531/web-apps/apps/api/documents/api.js" charset="utf-8" async></script>
+		<!-- <script type="text/javascript" src="http://http://8.142.173.95:19531/web-apps/apps/api/documents/api.js" charset="utf-8" async></script> -->
+<!--		<script type="text/javascript" src="http://192.168.188.88:19531/web-apps/apps/api/documents/api.js" charset="utf-8" async></script>-->
 		<!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
 		<style>
 			html,

+ 8 - 2
src/layout/indexCommon.vue

@@ -827,8 +827,14 @@ const iframeSize = (par,history) => {
   const outIframe = document.getElementById("iframe" + par.id);
   const inIframe =
     outIframe.contentDocument.getElementsByTagName("iframe")[0];
-  // console.log('outIframe', outIframe.parentElement);
-  // console.error(outIframe.parentElement);
+  if(inIframe==null){
+    setTimeout(() => {
+      iframeSize(id)
+    }, 500);
+    return
+  }
+  console.log('outIframe', outIframe.parentElement);
+  console.error(outIframe.parentElement);
   inIframe.style.height = outIframe.style.height =
     outIframe.parentElement.offsetHeight + "px";
   inIframe.style.width = outIframe.style.width =

+ 25 - 1
src/main.js

@@ -101,4 +101,28 @@ app.use(ElementPlus, {
 })
 app.mount('#app')
 window.localStorage.removeItem('noreadlist')
-window.localStorage.removeItem('inChat')
+window.localStorage.removeItem('inChat')
+//禁止复制
+document.addEventListener('copy', (event) => {
+    event.clipboardData.setData('text/plain', '')
+    event.preventDefault();
+    event.stopPropagation();
+    return;    
+});
+//禁止剪切
+document.addEventListener('cut', (event) => {
+    event.clipboardData.setData('text/plain', '')
+    event.preventDefault();
+    event.stopPropagation();
+    return;
+});
+//禁用浏览器 默认右键菜单
+document.oncontextmenu = new Function("return false;");
+//禁用F12
+document.onkeydown = document.onkeyup = document.onkeypress = function(event) {
+    var e = event || window.event || arguments.callee.caller.arguments[0];
+    if (e && e.keyCode == 123) {
+            e.returnValue = false;
+            return (false);
+    }
+}

+ 0 - 5
src/router/index.js

@@ -100,11 +100,6 @@ export const constantRoutes = [{
 		path: 'reindex',
 		component: () => import('@/views/liveChat/index.vue'),
 		name: 'reindex',
-		meta: {
-			title: '返回',
-			icon: 'dashboard',
-			affix: true
-		},
 	},
 	{
 		path: 'swagger',

+ 4 - 4
src/utils/index.js

@@ -21,7 +21,7 @@ export function formatDate(cellValue) {
  * @param {string} fileType
  */
 export const canPreviewFile = (fileType)=>{
-    const array = ['.doc', ".wps",'.docm', '.docx', '.dot', '.dotm', '.dotx', '.epub', '.fodt', '.htm', '.html', '.mht', '.odt', '.ott', '.pdf', '.rtf', '.txt', '.djvu', '.xps','.csv', '.fods', '.ods', '.ots', '.xls', '.xlsm', '.xlsx', '.xlt', '.xltm', '.xltx','.fodp', '.odp', '.otp', '.pot', '.potm', '.potx', '.pps', '.ppsm', '.ppsx', '.ppt', '.pptm', '.pptx']
+    const array = ['.doc','.dps','.et', ".wps",'.docm', '.docx', '.dot', '.dotm', '.dotx', '.epub', '.fodt', '.htm', '.html', '.mht', '.odt', '.ott', '.pdf', '.rtf', '.txt', '.djvu', '.xps','.csv', '.fods', '.ods', '.ots', '.xls', '.xlsm', '.xlsx', '.xlt', '.xltm', '.xltx','.fodp', '.odp', '.otp', '.pot', '.potm', '.potx', '.pps', '.ppsm', '.ppsx', '.ppt', '.pptm', '.pptx']
     if(array.includes(fileType)){
       return true
     }
@@ -59,9 +59,9 @@ export const rightMenuRole = (role,arr)=>{
 export const publicRightMenuRole = (role,arr)=>{
   // console.log('role',role);
   // console.log('arr',arr);
-  if(!role.some(item=>item == "download")){
-    arr = arr.filter(item => item.name !== "下载")
-  }
+  // if(!role.some(item=>item == "download")){
+  //   arr = arr.filter(item => item.name !== "下载")
+  // }
   if(!role.some(item=>item == "edit")){
     arr = arr.filter(item => item.name !== "在线编辑")
   }

+ 1 - 1
src/views/biz/level/index.vue

@@ -8,7 +8,7 @@
 			<span>内容加密:对文档本身进行私有算法加密混淆,仅本软件能解密打开</span>
 			<span>安全访问二次认证:访问文档时需要再次输入登录密码</span>
 			<span>私有安全访问码:访问文档时需要输入自定义的访问密码,创建文档时定义</span>
-			<span>内容防复制:预览状态下复制文档内容到贴板</span>
+			<span>内容防复制:预览状态下复制文档内容到贴板</span>
 			<span>防拍照:预留功能,实现难度大</span>
 		</div>
 		<el-table v-loading="loading" :data="levelList" @selection-change="handleSelectionChange">

+ 1 - 1
src/views/department/MyFile.vue

@@ -1218,7 +1218,7 @@ export default {
             }else{
                 row =thisFolder.value
             }
-            if(row.isEncrypt === "Y"){
+            if(row.isEncrypt === "Y" && row.encryptLevel){
                 getLeveldetailFn(row.encryptLevel)
             }else{
                 thisFolderRole.value = {}

+ 10 - 6
src/views/department/modalComponebts/CreateFloder.vue

@@ -96,12 +96,12 @@ export default {
         },
         thisRole: {
             type: Object,
-            required: true,
+            // required: true,
             default: ()=>{},
         },
         upFolderData: {
             type: Object,
-            required: true,
+            // required: true,
             default: ()=>{},
         },
         refreshFile: Function,
@@ -193,15 +193,17 @@ export default {
                     })
                 } else {
                     let query = {}
-                    if(FolderRole.levelCode){
+                    if(FolderRole.levelCode || thisRole.length){
                         //父级有权限自动继承 没有就用添加的值
                         query={
                             "dirName": boserForm.value.dirName,
                             "parentId": newdrid - 0,
                             "spaceId": newspid - 0,
-                            "dirType":boserForm.value.dirType,
+                            "dirType":2,
                             "isEncrypt":"Y",
-                            "encryptLevel":FolderRole.levelCode
+                            "encryptLevel":FolderRole.levelCode || boserForm.value.encryptLevel,
+                            "users":users.value,
+                            "dirRole":thisRole.length?thisRole.join(','):''
                         }
                         console.log('query',query);
                         console.log('FolderRole',FolderRole);
@@ -212,7 +214,9 @@ export default {
                             "spaceId": newspid - 0,
                             "dirType":boserForm.value.dirType,
                             "isEncrypt":boserForm.value.isEncrypt,
-                            "encryptLevel":(boserForm.value.isEncrypt == "Y" && boserForm.value.dirType == "2")?boserForm.value.encryptLevel:null
+                            "encryptLevel":(boserForm.value.isEncrypt == "Y" && boserForm.value.dirType == "2")?boserForm.value.encryptLevel:null,
+                            "users":users.value,
+                            "dirRole":thisRole.length?thisRole.join(','):''
                         }
                     }
                     if(thisRole.length){

+ 2 - 2
src/views/myfile/MyFile.vue

@@ -415,7 +415,7 @@
                 @closeImgPreview="closeImgPreview"></ImgPreview>
             <div>
                 <FileTree v-if="fileTrees" :fileTrees="fileTrees" :newSpaceId="newSpaceId" :fileId="clickRowId"
-                    @getChildren="getChildren" :copyOrMove="copyOrMove"></FileTree>
+                    @getChildren="getChildren" :copyOrMove="copyOrMove" :thisFolder="thisFolder.dirId"></FileTree>
             </div>
             <!-- 穿梭框 -->
             <div>
@@ -1827,7 +1827,7 @@ export default {
             getAllTop()
         }
         const upBefore = (file)=>{
-            // console.log('file',file.size);
+            console.log('file',file);
             const maxSize = (maxFileSize.value-0)*1024*1024
             // console.log('maxSize',maxSize);
             if(file.size>maxSize){

+ 10 - 0
src/views/myfile/components/FileTree.vue

@@ -1,6 +1,7 @@
 <template>
     <div>
         <el-dialog v-model="treeOpen" :title="options" width="30%" :close-on-click-modal="false">
+              <el-tree v-if="!changeMes" :data="thisFoder" :props="defaultProps" @node-click="handleNodeClick" />
             <el-tree :data="treeData" :props="defaultProps" @node-click="handleNodeClick" />
             <template #footer>
                 <span class="dialog-footer">
@@ -34,6 +35,10 @@ export default {
         copyOrMove: {
             type: Number,
             required: true
+        },
+        thisFolder: {
+            type: Number,
+            required: true
         }
     },
     setup(props, { emit }) {
@@ -46,6 +51,10 @@ export default {
         let treeOpen = ref(false)
         let options = ref("复制到")
         let treeData = ref([])
+        let thisFoder = ref([{
+            label:'当前文件夹',
+            id:props.thisFolder - 0,
+        }])
         let defaultProps = ref({
             label: "label",
             value: "id",
@@ -118,6 +127,7 @@ export default {
             spaceIds,
             fileIds,
             changeMes,
+            thisFoder
         }
     },
 }

+ 13 - 14
src/views/myjoin/MyJoin.vue

@@ -11,19 +11,18 @@
                         <div>
                             <el-table @row-contextmenu="handleRowClick" :data="myEjoy" style="width: 100%;cursor: pointer;" @row-click="rowJoinClickFN">
                                 <!-- <el-table-column type="selection" width="55" /> -->
-                                <el-table-column label="名称" width="200">
+                                <el-table-column label="名称" width="280">
                                     <template #default="scope">
                                         <span style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="juzhong">
-                                            <el-icon v-if="collectImg" class="juli">
-                                                <Star />
-                                            </el-icon>
-                                            <img v-else src="../../assets/images/yellowstar.png" alt="" class="juli">
                                             <img :src="getImage(scope.row.fileType)" alt="" class="juli">
-                                            <span>{{ scope.row.fileName }}</span>
+                                            <el-tooltip class="box-item" effect="dark" placement="top"
+                                            :show-after="1000" :content="scope.row.fileName">
+                                                 <span>{{ scope.row.fileName }}</span>
+                                             </el-tooltip>
                                         </span>
                                     </template>
                                 </el-table-column>
-                                <el-table-column prop="createTime" label="时间" sortable width="180" />
+                                <el-table-column prop="createTime" label="时间" sortable width="280" />
                                 <el-table-column prop="fileType" label="类型" />
                                 <el-table-column label="大小">
                                     <template #default="scope">
@@ -46,19 +45,19 @@
                     <el-tab-pane label="我参与的" name="second">
                         <el-table :data="myPack" style="width: 100%;cursor: pointer;" @row-click="rowJoinClickFN">
                             <!-- <el-table-column type="selection" width="55" /> -->
-                            <el-table-column label="名称" width="200">
+                            <el-table-column label="名称" width="280">
                                 <template #default="scope">
                                     <span style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;" class="juzhong">
-                                        <el-icon v-if="collectImg" class="juli">
-                                            <Star />
-                                        </el-icon>
-                                        <img v-else src="../../assets/images/yellowstar.png" alt="" class="juli">
                                         <img :src="getImage(scope.row.fileType)" alt="" class="juli">
-                                        <span>{{ scope.row.fileName }}</span>
+                                        
+                                        <el-tooltip class="box-item" effect="dark" placement="top"
+                                            :show-after="1000" :content="scope.row.fileName">
+                                            <span>{{ scope.row.fileName }}</span>
+                                        </el-tooltip>
                                     </span>
                                 </template>
                             </el-table-column>
-                            <el-table-column prop="createTime" label="时间" sortable width="180" />
+                            <el-table-column prop="createTime" label="时间" sortable width="280" />
                             <el-table-column prop="fileType" label="类型" />
                             <el-table-column label="大小">
                                 <template #default="scope">

+ 4 - 3
src/views/publicment/MyFile.vue

@@ -383,7 +383,7 @@
                 @closeImgPreview="closeImgPreview"></ImgPreview>
             <div>
                 <FileTree v-if="fileTrees" :fileTrees="fileTrees" :newSpaceId="newSpaceId" :fileId="clickRowId"
-                    @getChildren="getChildren" :copyOrMove="copyOrMove"></FileTree>
+                    @getChildren="getChildren" :copyOrMove="copyOrMove" :thisFolder="thisFolder.dirId"></FileTree>
             </div>
             <!-- 穿梭框 -->
             <div>
@@ -761,7 +761,7 @@ export default {
             thisFolder.value = row
             // console.log('row2',row);
             //  topPath.value = row.dirPath
-            if(row.isEncrypt === "Y"){
+            if(row.isEncrypt === "Y" && row.encryptLevel){
                 getLeveldetailFn(row.encryptLevel)
             }else{
                 thisFolderRole.value = {}
@@ -1282,7 +1282,7 @@ export default {
                         type: "success"
                     })
                     fileNameChange.value = false
-                    getAllTop()
+                    refreshFile()
                 }
             })
         }
@@ -1304,6 +1304,7 @@ export default {
         }
         function getChildren(data) {
             fileTrees.value = data
+            refreshFile()
         }
         function getCback(data) {
             thanks.value = data

+ 10 - 0
src/views/publicment/components/FileTree.vue

@@ -1,6 +1,7 @@
 <template>
     <div>
         <el-dialog v-model="treeOpen" :title="options" width="30%" :close-on-click-modal="false">
+            <el-tree v-if="!changeMes" :data="thisFoder" :props="defaultProps" @node-click="handleNodeClick" />
             <el-tree :data="treeData" :props="defaultProps" @node-click="handleNodeClick" />
             <template #footer>
                 <span class="dialog-footer">
@@ -34,6 +35,10 @@ export default {
         copyOrMove: {
             type: Number,
             required: true
+        },
+        thisFolder: {
+            type: Number,
+            required: true
         }
     },
     setup(props, { emit }) {
@@ -46,6 +51,10 @@ export default {
         let treeOpen = ref(false)
         let options = ref("复制到")
         let treeData = ref([])
+        let thisFoder = ref([{
+            label:'当前文件夹',
+            id:props.thisFolder - 0,
+        }])
         let defaultProps = ref({
             label: "label",
             value: "id",
@@ -118,6 +127,7 @@ export default {
             spaceIds,
             fileIds,
             changeMes,
+            thisFoder
         }
     },
 }

+ 10 - 6
src/views/publicment/modalComponebts/CreateFloder.vue

@@ -96,12 +96,12 @@ export default {
         },
         thisRole: {
             type: Object,
-            required: true,
+            // required: true,
             default: ()=>{},
         },
         upFolderData: {
             type: Object,
-            required: true,
+            // required: true,
             default: ()=>{},
         },
         refreshFile: Function,
@@ -192,15 +192,17 @@ export default {
                     })
                 } else {
                     let query = {}
-                    if(FolderRole.levelCode){
+                    if(FolderRole.levelCode || thisRole.length){
                         //父级有权限自动继承 没有就用添加的值
                         query={
                             "dirName": boserForm.value.dirName,
                             "parentId": newdrid - 0,
                             "spaceId": newspid - 0,
-                            "dirType":boserForm.value.dirType,
+                            "dirType":2,
                             "isEncrypt":"Y",
-                            "encryptLevel":FolderRole.levelCode
+                            "encryptLevel":FolderRole.levelCode || boserForm.value.encryptLevel,
+                            "users":users.value,
+                            "dirRole":thisRole.length?thisRole.join(','):''
                         }
                         console.log('query',query);
                         console.log('FolderRole',FolderRole);
@@ -211,7 +213,9 @@ export default {
                             "spaceId": newspid - 0,
                             "dirType":boserForm.value.dirType,
                             "isEncrypt":boserForm.value.isEncrypt,
-                            "encryptLevel":(boserForm.value.isEncrypt == "Y" && boserForm.value.dirType == "2")?boserForm.value.encryptLevel:null
+                            "encryptLevel":(boserForm.value.isEncrypt == "Y" && boserForm.value.dirType == "2")?boserForm.value.encryptLevel:null,
+                            "users":users.value,
+                            "dirRole":thisRole.length?thisRole.join(','):''
                         }
                     }
                     if(thisRole.length){