liuQiang 1 年之前
父節點
當前提交
821df33283
共有 4 個文件被更改,包括 63 次插入17 次删除
  1. 18 0
      src/layout/indexCommon.vue
  2. 10 6
      src/views/department/MyFile.vue
  3. 27 6
      src/views/myfile/MyFile.vue
  4. 8 5
      src/views/publicment/MyFile.vue

+ 18 - 0
src/layout/indexCommon.vue

@@ -847,12 +847,30 @@ const upFileData = (query)=>{
   iFrameData.value = JSON.parse(JSON.stringify(arr))
   console.log('iFrameData',iFrameData.value);
 }
+const delFolderDataFn = (row)=>{
+  // console.log('delFolderDataFn',row);
+  // console.log('router.currentRoute.value.path',router.currentRoute.value.params.dirId);
+  const nowDirId = router.currentRoute.value.params.dirId
+  const thisDirID = row.dirId
+ const newArr =  editableTabs.value.filter((item,index)=>{
+    if(item.clickRowId?.dirId != thisDirID){
+      return toRaw(item)
+    }else{
+      // 要删除的事当前的标签页
+        const nextTab = editableTabs.value[index - 1];
+        paneClick(toRaw(nextTab));
+    }
+  })
+  editableTabs.value = newArr
+  // console.log('editableTabs',editableTabs.value);
+}
 provide("addTab", addTab);
 provide("addFolderAdd", addFolderAdd);
 provide("addFileTab", addFileTab);
 provide("upFirstFolderData", upFirstFolderData);
 provide("upFileData", upFileData);
 provide("clickPath", clickPath);
+provide("delFolderDataFn", delFolderDataFn);
 // TODO 删除tab事件
 const closeTab = (item, index, e) => {
   e.preventDefault();

+ 10 - 6
src/views/department/MyFile.vue

@@ -741,6 +741,7 @@ export default {
         const addFileTab = inject("addFileTab");
         const upFileData = inject("upFileData");
         const addFolderAdd = inject("addFolderAdd");
+        const delFolderDataFn = inject("delFolderDataFn");
         const filePageNum = ref(1) //获取文件分页
         const tableBeEnd = ref(true)//控制下拉是否到底
         const tableTotal = ref(0)//表格数据总数
@@ -1388,6 +1389,9 @@ export default {
                                 message: "删除成功",
                                 type: "success"
                             })
+                            if(!thisFolder.value?.dirId){
+                                delFolderDataFn(i)
+                            }
                             // getAllTop()
                             refreshFile()
                         } else {
@@ -1416,14 +1420,13 @@ export default {
                         message: "删除成功",
                         type: "success"
                     })
-                    delFolder()
+                    delFolder(row)
                 }
             })
         }
-        const delFolder = ()=>{
-            const arrJson = sessionStorage.getItem('tabData')
-            const tableData = JSON.parse(arrJson)
-            console.log('tableData',tableData);
+        const delFolder = (row)=>{
+            delFolderDataFn(row)
+            // console.log('tableData',tableData);
         }
         // 计算百分比
         function percent() {
@@ -2530,7 +2533,8 @@ export default {
             closeTreeRMenu,
             delFolder,
             changeListSort,
-            folderBlur
+            folderBlur,
+            delFolderDataFn
         }
     },
     watch: {

+ 27 - 6
src/views/myfile/MyFile.vue

@@ -765,6 +765,7 @@ export default {
         const addFolderAdd = inject("addFolderAdd");
         const upFileData = inject("upFileData");
         const clickPath = inject("clickPath");
+        const delFolderDataFn = inject("delFolderDataFn");
         const spaceName = ref()
         const filePageNum = ref(1) //获取文件分页
         const tableBeEnd = ref(true)//控制下拉是否到底
@@ -1525,6 +1526,23 @@ export default {
                         }
                 })
                 const isFile = ref(false)
+                const folderData = delMoreFolder.value.map(item=>item.dirId)
+                // const str = folderData.join(',')
+                // documents.delDocument(str).then(res => {
+                //     if (res.code === 200) {
+                //             ElMessage({
+                //                 message: "删除成功",
+                //                 type: "success"
+                //             })
+                //             // getAllTop()
+                //             refreshFile()
+                //         } else {
+                //             ElMessage({
+                //                 message: "删除失败,目录应不为空",
+                //                 type: "error"
+                //             })
+                //         }
+                //     })
                 delMoreFolder.value.map(i => {//多选删除
                        documents.delDocument(i.dirId).then(res => {
                         if (res.code === 200) {
@@ -1532,6 +1550,9 @@ export default {
                                 message: "删除成功",
                                 type: "success"
                             })
+                            if(!thisFolder.value?.dirId){
+                                delFolderDataFn(i)
+                            }
                             // getAllTop()
                             refreshFile()
                         } else {
@@ -1576,14 +1597,13 @@ export default {
                         message: "删除成功",
                         type: "success"
                     })
-                    delFolder()
+                    delFolder(row)
                 }
             })
         }
-        const delFolder = ()=>{
-            const arrJson = sessionStorage.getItem('tabData')
-            const tableData = JSON.parse(arrJson)
-            console.log('tableData',tableData);
+        const delFolder = (row)=>{
+            delFolderDataFn(row)
+            // console.log('tableData',tableData);
         }
         // 计算百分比
         function percent() {
@@ -2688,7 +2708,8 @@ export default {
             showTreeMenu,
             closeTreeRMenu,
             delFolder,
-            changeListSort
+            changeListSort,
+            delFolderDataFn
         }
     },
     watch: {

+ 8 - 5
src/views/publicment/MyFile.vue

@@ -750,6 +750,7 @@ export default {
         const addFileTab = inject("addFileTab");
         const addFolderAdd = inject("addFolderAdd");
         const upFileData = inject("upFileData");
+        const delFolderDataFn = inject("delFolderDataFn");
         const filePageNum = ref(1) //获取文件分页
         const spaceName = ref()
         const tableBeEnd = ref(true)//控制下拉是否到底
@@ -1367,6 +1368,9 @@ export default {
                                 message: "删除成功",
                                 type: "success"
                             })
+                            if(!thisFolder.value?.dirId){
+                                delFolderDataFn(i)
+                            }
                             // getAllTop()
                             refreshFile()
                         } else {
@@ -1395,14 +1399,12 @@ export default {
                         message: "删除成功",
                         type: "success"
                     })
-                    delFolder()
+                    delFolder(row)
                 }
             })
         }
-        const delFolder = ()=>{
-            const arrJson = sessionStorage.getItem('tabData')
-            const tableData = JSON.parse(arrJson)
-            console.log('tableData',tableData);
+        const delFolder = (row)=>{
+            delFolderDataFn(row)
         }
         // 计算百分比
         function percent() {
@@ -2521,6 +2523,7 @@ export default {
             closeTreeRMenu,
             delFolder,
             changeListSort,
+            delFolderDataFn
         }
     },
     watch: {