liyangzheng 2 年之前
父節點
當前提交
2e7bc0e766

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

@@ -74,11 +74,11 @@
                             <div style="margin-left: 5px;">
                                 <el-icon
                                     style="background-color: #7084B4;width: 24px;height: 24px;border-radius: 50%;color: white;"
-                                    @click="createNewMenu">
+                                    @click="createNewMenu(0)">
                                     <Plus />
                                 </el-icon>
                             </div>
-                            <div style="margin-left: 5px;" @click="createNewMenu">
+                            <div style="margin-left: 5px;" @click="createNewMenu(0)">
                                 <span style="font-size: 14px;">新建</span>
                             </div>
                         </div>
@@ -111,7 +111,7 @@
                             <!-- 前进后退 -->
                             <div style="display: flex;justify-content: space-around;align-items: center;">
                                 <img style="display:block;width: 11px;height: 11px;" :src="blueLeft" alt=""
-                                    @click="getAllTop()">
+                                    @click="getAllTop">
                                 <img style="display:block;width: 16px;height: 16px;" :src="grayRight" alt="">
                             </div>
                             <!-- 面包屑 -->
@@ -178,7 +178,7 @@
                     <el-collapse v-model="files" accordion class="collapse" style="height: 200px;">
                         <el-collapse-item title="文件" name="2" class="">
                             <el-table :data="fileList" style="width: 100%" @row-contextmenu="handleRowClick"
-                                @selection-change="handleSelectionChange">
+                                @selection-change="handleSelectionChange" @row-click="mouseClick">
                                 <el-table-column type="selection" width="55" />
                                 <el-table-column label="名称" width="200">
                                     <template #default="scope">
@@ -259,21 +259,14 @@
             </div>
             <!-- 新增文件夹弹窗 -->
             <div>
-                <el-dialog v-model="addBoser" title="新建文件夹" width="30%">
-                    <el-form :model="boserForm" label-width="120px">
-                        <el-form-item label="目录名称">
-                            <el-input v-model="boserForm.dirName" />
-                        </el-form-item>
-                    </el-form>
-                    <template #footer>
-                        <span class="dialog-footer">
-                            <el-button @click="addBoser = false">取消</el-button>
-                            <el-button type="primary" @click="sureAddBoser">
-                                确认
-                            </el-button>
-                        </span>
-                    </template>
-                </el-dialog>
+                <CreateFloder v-if="folderCase" :folderCase="folderCase" @getChildrenC="getChildrenC" :oneOrTwo="oneOrTwo"
+                    :impDirId="impDirId"
+                    :impSpaceId="impSpaceId"
+                    :newDirId="newDirId"
+                    :newSpaceId="newSpaceId"
+                    :getAllTop="getAllTop"
+                    >
+                </CreateFloder>
             </div>
             <!-- 废弃的顶层目录新增 -->
             <div>
@@ -417,6 +410,7 @@ import FileTree from './components/FileTree.vue'
 import BreadMenu from './components/BreadMenu.vue'
 import FileEdit from './components/FileEdit.vue'
 import TransferModal from './modalComponebts/Transfer.vue'
+import CreateFloder from './modalComponebts/CreateFloder.vue'
 import ImgFile from "./jsComponents/ImgFile"
 import { Search } from '@element-plus/icons-vue'
 import blueLeft from '../../assets/images/blueLeft.png'
@@ -434,6 +428,7 @@ export default {
     setup() {
         let fileTrees = ref(false)//filetree父传子
         let thanks = ref(false)//transfer父传子
+        let folderCase = ref(false)
         let editOnline = ref(true)
         let searchFire = ref('')
         let selectedIndex = ref(0)
@@ -446,7 +441,6 @@ export default {
         let askTalk = ref('')
         let newTag = ref('')
         let cliCC = ref(false)
-        let addBoser = ref(false)
         let addFile = ref(false)
         let anyP = ref(false)
         let uploadModal = ref(false)
@@ -477,18 +471,11 @@ export default {
         let copyParentId = ref("")//文件夹
         let needBag = ref("")
         let copyOrMove = ref(0)//0代表复制,1代表移动
+        let oneOrTwo = ref(0)//0代表二级,1代表一级
         let sortNum = ref(0)
         const openForwardFile = ref(false)   //历史版本展示
         const historyPrew = ref(false)
         const fileUserTreeData = reactive({ data: {} });
-        let boserForm = ref({
-            spaceId: "",//空间id
-            dirName: "",
-            dirPower: "",
-            dirType: "",
-            parentId: "",
-            remark: ""//备注
-        })
         let fileForm = ref({
             spaceType: '',
             spaceName: "",
@@ -724,6 +711,8 @@ export default {
         function handleRowClick(row, col, e) {
             e.preventDefault();
             e.stopPropagation();
+            leftList.value = e.pageX
+            rightList.value = e.pageY
             copyRow.value = row
             clickRowId.value = row.docId
             copyDirId.value = row.dirId
@@ -737,11 +726,6 @@ export default {
             } else {
                 cliCC.value = true
             }
-            fileShare.getSharePeople(row.docId).then(res => {
-                console.log(res, 'res');
-            }).catch(err => {
-                console.log(err, 'err');
-            })
         }
         // 申请扩容
         function askApply() {
@@ -834,46 +818,8 @@ export default {
             anyP.value = false
         }
         function createNewMenu(num) {
-            impNum.value = num
-            addBoser.value = true
-        }
-        // 新建文件夹
-        function sureAddBoser() {
-            if (impNum.value === 1) {
-                documents.addDocument(
-                    {
-                        "dirName": boserForm.value.dirName,
-                        "parentId": impDirId.value - 0,
-                        "spaceId": impSpaceId.value - 0,
-                    }
-                ).then(res => {
-                    if (res.code === 200) {
-                        ElMessage({
-                            message: '添加一级目录成功',
-                            type: 'success',
-                        })
-                    }
-                    addBoser.value = false
-                    getAllTop()
-                })
-            } else {
-                documents.addDocument(
-                    {
-                        "dirName": boserForm.value.dirName,
-                        "parentId": newDirId.value - 0,
-                        "spaceId": newSpaceId.value - 0,
-                    }
-                ).then(res => {
-                    if (res.code === 200) {
-                        ElMessage({
-                            message: '添加成功',
-                            type: 'success',
-                        })
-                    }
-                    addBoser.value = false
-                    getAllTop()
-                })
-            }
+            oneOrTwo.value = num
+            folderCase.value = true
         }
 
         function createNewFile() {
@@ -1146,6 +1092,9 @@ export default {
         function getCback(data) {
             thanks.value = data
         }
+        function getChildrenC(data) {
+            folderCase.value = data
+        }
         //历史版本
         const forwardTreeData = reactive({ data: {} });
         const historycopyRow = ref({})
@@ -1239,10 +1188,7 @@ export default {
             anyP,
             chooseSet1,
             fileMenu,
-            addBoser,
-            boserForm,
             createNewMenu,
-            sureAddBoser,
             // delBoser,
             clickRowId,
             addFile,
@@ -1338,6 +1284,9 @@ export default {
             getCback,
             mouseClick,
             workOrEdit,
+            folderCase,//新建文件夹传值
+            getChildrenC,
+            oneOrTwo,//父传子判断
         }
 
     },
@@ -1350,6 +1299,7 @@ export default {
         FileTree,
         historyList,
         TransferModal,
+        CreateFloder,
     },
 }
 
@@ -1370,7 +1320,7 @@ p {
 }
 
 .settingBox {
-    width: 20vw;
+    width: 25vw;
     height: 92vh;
     border: 1px solid black;
     border-radius: 4px;

+ 133 - 0
src/views/myfile/modalComponebts/CreateFloder.vue

@@ -0,0 +1,133 @@
+<template>
+    <div>
+        <div>
+            <el-dialog v-model="addBoser" title="新建文件夹" width="30%" @close="diClose">
+                <el-form :model="boserForm" label-width="120px">
+                    <el-form-item label="目录名称">
+                        <el-input v-model="boserForm.dirName" />
+                    </el-form-item>
+                </el-form>
+                <template #footer>
+                    <span class="dialog-footer">
+                        <el-button @click="addBack">取消</el-button>
+                        <el-button type="primary" @click="sureAddBoser">
+                            确认
+                        </el-button>
+                    </span>
+                </template>
+            </el-dialog>
+        </div>
+    </div>
+</template>
+
+<script>
+import { ref, onMounted, toRef } from 'vue';
+import documents from '../../../api/document/document';
+import { ElMessage } from 'element-plus';
+export default {
+    props: {
+        folderCase: {
+            type: Boolean,
+            required: true
+        },
+        oneOrTwo: {
+            type: Number,
+            required: true
+        },
+        impDirId:{
+            type:Number,
+            required:true
+        },
+        impSpaceId:{
+            type:Number,
+            required:true
+        },
+        newDirId:{
+            type:Number,
+            required:true
+        },
+        newSpaceId:{
+            type:Number,
+            required:true
+        },
+        getAllTop:Function,
+    },
+    setup(props, { emit }) {
+        let { addBack, sureAddBoser,diClose } = toRef(props)
+        let result = props.folderCase
+        let free = props.oneOrTwo
+        let spId = props.impSpaceId
+        let drId = props.impDirId
+        let newspid=props.newSpaceId
+        let newdrid = props.newDirId
+        let addBoser = ref(false)
+        let boserForm = ref({
+            dirName: "",
+        })
+        function inital() {
+            console.log(free,'free');
+            addBoser.value = result
+        }
+        function backTo() {
+            addBoser.value = false
+            emit("getChildrenC", addBoser.value)
+        }
+        function addFloder() {
+            if (free === 1) {
+                documents.addDocument(
+                    {
+                        "dirName": boserForm.value.dirName,
+                        "parentId": drId - 0,
+                        "spaceId": spId - 0,
+                    }
+                ).then(res => {
+                    if (res.code === 200) {
+                        ElMessage({
+                            message: '添加一级目录成功',
+                            type: 'success',
+                        })
+                    }
+                    addBoser.value = false
+                    emit("getChildrenC", addBoser.value)
+                    props.getAllTop()
+                })
+            } else {
+                documents.addDocument(
+                    {
+                        "dirName": boserForm.value.dirName,
+                        "parentId": newdrid - 0,
+                        "spaceId": newspid - 0,
+                    }
+                ).then(res => {
+                    if (res.code === 200) {
+                        ElMessage({
+                            message: '添加成功',
+                            type: 'success',
+                        })
+                    }
+                    addBoser.value = false
+                    emit("getChildrenC", addBoser.value)
+                    props.getAllTop()
+                })
+            }
+        }
+        onMounted(() => {
+            inital()
+        })
+        return {
+            addBoser,
+            boserForm,
+            inital,
+            addBack: backTo,
+            sureAddBoser:addFloder,
+            diClose:backTo,
+            spId,
+            drId,
+            newdrid,
+            newspid,
+        }
+    }
+}
+</script>
+
+<style lang="scss" scoped></style>

+ 0 - 1
src/views/myfile/modalComponebts/Transfer.vue

@@ -44,7 +44,6 @@ import { ref, onMounted, toRef } from 'vue';
 import userTree from '../../../api/user/userTree';
 import fileShare from '../../../api/fileShare/fileShare';
 import { ElMessage } from 'element-plus'
-import { Loading } from '@element-plus/icons-vue';
 export default {
     props: {
         thanks: {