瀏覽代碼

目录树显示更改

duy 2 年之前
父節點
當前提交
d71d0dca75
共有 1 個文件被更改,包括 47 次插入5 次删除
  1. 47 5
      src/views/using/query.vue

+ 47 - 5
src/views/using/query.vue

@@ -230,15 +230,18 @@
 
             <el-collapse class="hc-node-tree-collapse" v-model="activeName" accordion @change="collapseChange"    v-loading="nodeTreeArrLoad">
                 <template v-for="(item) in nodeTreeArr">
-                    <el-collapse-item :name="item.id.toString()">
+                    <el-collapse-item :name="item.id.toString()" :disabled="item.notExsitChild===true">
                         <template #title>
                             <div class="hc-collapse-item-title">
+                                <el-checkbox v-model="item.checkColId"  style="font-size: 24px;"  @change="changeCheckColId(item)" ></el-checkbox>
+                                <HcIcon name="file" fill class="icon" v-if="item.notExsitChild===true"/>
                                 <HcIcon name="folder-3" fill class="icon"/>
                                 <span class="title">{{item.nodeName}}</span>
                             </div>
                         </template>
                         <!-- <HcNodeTree :projectId="projectId" :contractId="contractId"/> -->
                         <el-tree 
+                        class="col_tree"
                         node-key="id"
                         ref="nodetreeEl" 
                         :props="defaultProps" 
@@ -247,7 +250,15 @@
                         lazy  
                         :load="loadNode" 
                         :data="Nodetreedata" 
-                     />
+                     >
+                        <template #default="{ node, data }">
+                            <span class="custom-tree-node">
+                                <HcIcon name="file" fill class="icon"  style="color: #FFAF2D;" v-if="data.notExsitChild===true"/>
+                                <HcIcon name="folder-3" fill class="icon" style="color: #FFAF2D;" v-else/><span>{{ node.label }}</span>
+                            </span>
+                        </template>
+                    </el-tree>
+
                     </el-collapse-item>
                 </template>
             </el-collapse>
@@ -768,6 +779,32 @@ const nodeTabChange = (item) => {
     getnodeTabData()
 }
 //获取目录树getArchiveTreeByNodeType
+const checkColId=ref(false)
+
+const changeCheckColId=(item)=>{
+  if(!activeName.value){
+    item.checkColId=false
+    window.$message.warning('请先点击文件夹展开下一级')
+  }else{
+    let idsarr=[]
+    if(item.checkColId===false){
+       nextTick(()=>{
+        nodetreeEl?.value[treeIndex.value].setCheckedKeys([],false);
+       })
+    }else{
+        nextTick(()=>{
+            Nodetreedata?.value.forEach((item)=>{
+                idsarr.push(item.id)
+            })
+            nodetreeEl?.value[treeIndex.value].setCheckedKeys(idsarr,true);
+        })
+    }
+
+  }
+  
+ 
+
+}
 const nodeTreeArrLoad=ref(false)
 const getnodeTabData=async()=>{
     nodeTreeArrLoad.value=true
@@ -780,6 +817,9 @@ const getnodeTabData=async()=>{
     if (!error && code === 200) {
         console.log(data,'mulushu');
         nodeTreeArr.value = getArrValue(data)
+        nodeTreeArr.value.forEach((item)=>{
+            item.checkColId=false
+        })
         nodeTreeArrLoad.value=false
     
     } else {
@@ -800,6 +840,7 @@ const nodeTreeArr = ref([])
 const checkNodeid=ref('')
 const treeIndex=ref(0)
 const collapseChange = (key) => {
+
     treeIndex.value=nodeTreeArr.value.findIndex(item=>{return item.id===key})
 
     checkNodeid.value=key
@@ -814,10 +855,8 @@ const getNodetreedata=async()=>{
     })
     nodetreeElloading.value=false
     if (!error && code === 200) {
-   
         Nodetreedata.value = getArrValue(data)
-     
-    
+
     } else {
         Nodetreedata.value = [] 
     }
@@ -839,4 +878,7 @@ const loadNode=(tree, resolve)=>{
 
 <style lang="scss">
 @import '~style/using/query.scss';
+.col_tree{
+    font-size: 16px;
+}
 </style>