Просмотр исходного кода

Merge branch 'master' of http://47.110.251.215:3000/web/saber into master

yangyj 2 лет назад
Родитель
Сommit
032336a153

+ 232 - 239
src/views/manager/archivetree.vue

@@ -3,246 +3,158 @@
     ref="container"
     style="height:100%;"
   >
-    <el-row
-      :gutter="20"
-      :style="{'height':heights-80+'px','overflow': 'hidden'}"
-    >
-      <el-col
-        :span="12"
-        class='marleft20'
-      >
-        <el-tabs v-model="activeName" @tab-click="handleClick">
-          <el-tab-pane label="竣工档案目录" name="first">
-            
-          </el-tab-pane>
-          <el-tab-pane label="文书档案目录" name="second">
-              
-          </el-tab-pane>
-         <div style="font-size:14px">
-                    <!-- <h2>归档目录树</h2> -->
-                    <el-input
-                      placeholder="输入关键字进行过滤"
-                      clearable
-                      v-model="filterText"
-                    >
-                    </el-input>    
-                  <div class="scrollClass" style="height:721px">
-                    <el-scrollbar style="height:100%">
-                      <el-tree
-                        style="box-sizing: border-box;"
-                        v-show="!filterText"
-                        ref="trees1"
+    <el-row class="h-100p">
+      <el-col :span="12"  class=" h-100p">
+          <div class="h-100p flex flex-d-c ov-hidden">
+            <el-tabs v-model="activeName" @tab-click="handleClick" >
+              <el-tab-pane label="竣工档案目录" name="first"  >
+              </el-tab-pane>
+              <el-tab-pane label="文书档案目录" name="second">
+              </el-tab-pane>
+             </el-tabs>
+             <div class="scrollClass " style="height:100%">
+                  <el-input
+                        placeholder="输入关键字进行过滤"
+                        clearable
+                        v-model="filterText"
+                      >
+                    </el-input>  
+                    <div  style="height:100%;overflow-y: auto;" class="scrollClass ">
+                      <el-scrollbar style="height:100%">
+                        <el-tree
+                          style="box-sizing: border-box;"
+                          v-show="!filterText"
+                          ref="trees1"
+                          :props="props"
+                          :load="loadNode"
+                          node-key="id"
+                          :default-expanded-keys="defaultExpandedKeys"
+                          :current-node-key="curreenttid"
+                          @node-click="nodeClick"
+                          lazy >
+                          <div
+                          class="custom-tree-node "
+                          style="flex: 1;width: 100%;justify-content: flex-start;"
+                          :class="data.moreShow ? 'show' : ''"
+                            slot-scope="{ node, data }"
+                            @mouseover="mouseOver(data)"
+                            @mouseleave="mouseLeave(data)"
+                              
+                          >
+                            <!-- <span style="text-overflow: ellipsis;width:101%;">{{ data.title }}</span> -->
+                            <span v-if="data.title&&data.title.length<=30">{{data.title | ellipsis}}</span>
+                    
+                              <el-tooltip v-if="data.title&&data.title.length>30" :content="data.title" raw-content placement="top-start"  effect="light">
+                                <span v-if="data.title &&data.title.length <=30">{{ data.title }}</span>
+                                <span v-if="data.title && data.title.length > 30"> {{data.title | ellipsis}}</span>
+                              </el-tooltip>
+                      
+                            <span
+                              class="marleft10"
+                              v-show="data.moreShow"
+                            >
+                            <div class="normal-black ">
+                                  <div >
+                                      <el-link :underline="false">
+                                        <i
+                                          class="el-icon-menu "
+                                          @click="showMenu($event,data, node)"
+                                          v-if="node.level != 1"
+                                        
+                                        ></i>
+                                      </el-link>
+                              
+                                  
+                                <!-- 因右键自定义菜单事件需要获取当前点击的位置,所以此处绑定动态样式来控制菜单实时跟踪鼠标右键点击位置 -->
+                                      <ul
+                                        v-show="menuvisible"
+                                        :style="{ left: menuleft + 'px', top: menutop + 'px' }"
+                                        class="contextmenu"
+                                      >
+                                        <li v-for="item in menusData" :key="item"  @click="menuClick($event,item,data,node)"> 
+                                              <i :class="item.icon"></i>
+                                              <span>{{item.label}}</span>
+                                        </li>
+                              
+                                      </ul>
+                                  </div>
+
+                                </div>
+                            </span>
+                          </div>
+                        </el-tree>
+                        
+                        <el-tree
+                        v-show="filterText"
+                        :default-expanded-keys='defaultExpanded'
                         :props="props"
-                        :load="loadNode"
+                        :data="data"
                         node-key="id"
-                        lazy >
+                        ref="trees2"
+                        :default-expand-all="true"
+                        :filter-node-method="filterNode"
+                        :current-node-key="curreenttid"
+                      >
                         <span
-                        class="custom-tree-node flexStar"
-                        :class="data.moreShow ? 'show' : ''"
-                          slot-scope="{ node, data }"
-                          @mouseover="mouseOver(data)"
-                          @mouseleave="mouseLeave(data)"
-                            
-                        >
-                          <!-- <span style="text-overflow: ellipsis;width:101%;">{{ data.title }}</span> -->
-                          <span v-if="data.title&&data.title.length<=30">{{data.title | ellipsis}}</span>
-                  
-                            <el-tooltip v-if="data.title&&data.title.length>30" :content="data.title" raw-content placement="top-start"  effect="light">
-                              <span v-if="data.title &&data.title.length <=30">{{ data.title }}</span>
-                              <span v-if="data.title && data.title.length > 30"> {{data.title | ellipsis}}</span>
-                            </el-tooltip>
-                    
-                          <span
-                            class="marleft10"
-                            v-show="data.moreShow"
+                          class="custom-tree-node flexStar"
+                          style="flex: 1;width: 100%;justify-content: flex-start;"
+                          :class="data.moreShow ? 'show' : ''"
+                            slot-scope="{ node, data }"
+                            @mouseover="mouseOver(data)"
+                            @mouseleave="mouseLeave(data)"
+                              
                           >
-                          <div class="normal-black ">
-                                <div >
-                                    <el-link :underline="false">
-                                      <i
-                                        class="el-icon-menu "
-                                        @click="showMenu($event,data, node)"
-                                        v-if="node.level != 1"
-                                      
-                                      ></i>
-                                    </el-link>
-                            
-                                
-                              <!-- 因右键自定义菜单事件需要获取当前点击的位置,所以此处绑定动态样式来控制菜单实时跟踪鼠标右键点击位置 -->
-                                    <ul
-                                      v-show="menuvisible"
-                                      :style="{ left: menuleft + 'px', top: menutop + 'px' }"
-                                      class="contextmenu"
-                                    >
-                                      <li v-for="item in menusData" :key="item"  @click="menuClick($event,item,data,node)"> 
-                                            <i :class="item.icon"></i>
-                                            <span>{{item.label}}</span>
-                                      </li>
-                            
-                                    </ul>
-                                </div>
-
-                              </div>
-                          </span>
-                        </span>
-                      </el-tree>
-                      
-                      <el-tree
-                      v-show="filterText"
-                      :default-expanded-keys='defaultExpanded'
-                      :props="props"
-                      :data="data"
-                      node-key="id"
-                      ref="trees2"
-                      :default-expand-all="true"
-                      :filter-node-method="filterNode"
-                    >
-                      <span
-                        class="custom-tree-node flexStar"
-                        :class="data.moreShow ? 'show' : ''"
-                          slot-scope="{ node, data }"
-                          @mouseover="mouseOver(data)"
-                          @mouseleave="mouseLeave(data)"
-                            
-                        >
-                          <!-- <span style="text-overflow: ellipsis;width:101%;">{{ data.title }}</span> -->
-                          <span v-if="data.title&&data.title.length<=30">{{data.title | ellipsis}}</span>
-                  
-                            <el-tooltip v-if="data.title&&data.title.length>30" :content="data.title" raw-content placement="top-start"  effect="light">
-                              <span v-if="data.title &&data.title.length <=30">{{ data.title }}</span>
-                              <span v-if="data.title && data.title.length > 30"> {{data.title | ellipsis}}</span>
-                            </el-tooltip>
-                    
-                          <span
-                            class="marleft10"
-                            v-show="data.moreShow"
-                          >
-                          <div class="normal-black ">
-                                <div >
-                                    <el-link :underline="false">
-                                      <i
-                                        class="el-icon-menu "
-                                        @click="showMenu($event,data, node)"
-                                        v-if="node.level != 1"
-                                      
-                                      ></i>
-                                    </el-link>
-                            
-                                
-                              <!-- 因右键自定义菜单事件需要获取当前点击的位置,所以此处绑定动态样式来控制菜单实时跟踪鼠标右键点击位置 -->
-                                    <ul
-                                      v-show="menuvisible"
-                                      :style="{ left: menuleft + 'px', top: menutop + 'px' }"
-                                      class="contextmenu"
-                                    >
-                                      <li v-for="item in menusData" :key="item"  @click="menuClick($event,item,data,node)"> 
-                                            <i :class="item.icon"></i>
-                                            <span>{{item.label}}</span>
-                                      </li>
-                            
-                                    </ul>
-                                </div>
-
-                              </div>
-                          </span>
-                        </span>
-                      </el-tree>
-                    </el-scrollbar>
-                  </div>
-                
-            </div>
-      </el-tabs>
-       
-      </el-col>
-      <el-col
-        :span="9"
-        style="padding-top:30px;"
-      >
-        <!-- <h3>上传文件入口显示配置</h3> -->
-<!--        
-        <div
-          class="peizhi"
-          :style="{'height':heights-210+'px','overflow': 'hidden'}"
-        >
-          <el-button type="primary"  @click="handleentrybtn">立卷规则</el-button>
-          <el-button type="info"  @click="handlerulebtn">工程文件入口配置</el-button>
-            <el-button type="warning" v-if="!isentryTree"  @click="savebtn">保存设置</el-button>
-          <div class="flexEnd"  v-if="isentryTree">
-            <i
-              @click="rightPushTree"
-              class="el-icon-plus"
-              style="backgroundColor:#2A97DF;color:#fff;fontSize:20px;cursor: pointer;"
-            ></i>
-          </div>
-              <div class="scrollClass"  v-if="isentryTree" style="height:721px">
-                 <el-scrollbar style="height:100%">
-                    <el-tree
-                    :props="Rightprops"
-                    :data="rightData"
-                    node-key="id"
-                    ref="tree"
-                    class="filter-tree"
-                   
-                  >
-                  </el-tree>
-                 </el-scrollbar>
-              </div>
-         
- 
-          <div v-if="!isentryTree" style="margin-top:20px">
-              <el-checkbox-group v-model="checkList">
-                <el-checkbox label="设置为最高并卷层级"></el-checkbox>
-                <el-checkbox label="设置为分类并卷层级"></el-checkbox>
-                <el-checkbox label="设置为单独并卷层级"></el-checkbox>
-              </el-checkbox-group>
-              <div style="margin-top:20px;border:1px solid #e5e5e5;padding:20px">
+                            <!-- <span style="text-overflow: ellipsis;width:101%;">{{ data.title }}</span> -->
+                            <span v-if="data.title&&data.title.length<=30">{{data.title | ellipsis}}</span>
                     
-                      <div style="display: flex;justify-content: space-between;">
-                         <el-select v-model="publictreevalue" clearable placeholder="请选择公有质检化分树" style="    width:45%;">
-                            <el-option
-                              v-for="item in publictreeoptions"
-                              :key="item.value"
-                              :label="item.label"
-                              :value="item.value">
-                            </el-option>
-                        </el-select>
-                        <el-select v-model="testtreevalue" clearable placeholder="请选择公有试验化分树"   style="    width: 45%;">
-                            <el-option
-                              v-for="item in testtreeoptions"
-                              :key="item.value"
-                              :label="item.label"
-                              :value="item.value">
-                            </el-option>
-                        </el-select>
-                      </div>
-                   <el-input
-                            placeholder="输入关键字进行过滤"
-                            v-model="rulefilterText"
-                            style="margin-top:20px"
+                              <el-tooltip v-if="data.title&&data.title.length>30" :content="data.title" raw-content placement="top-start"  effect="light">
+                                <span v-if="data.title &&data.title.length <=30">{{ data.title }}</span>
+                                <span v-if="data.title && data.title.length > 30"> {{data.title | ellipsis}}</span>
+                              </el-tooltip>
+                      
+                            <span
+                              class="marleft10"
+                              v-show="data.moreShow"
                             >
-                    </el-input>
-                  <div  class="scrollClass"  style="height:521px ;">
-                      <el-scrollbar style="height:100%">
-                          <el-tree
-                         
-                            class="filter-tree"
-                            :data="rightData"
-                            :props="Rightprops"
-                            default-expand-all
-                            :filter-node-method="rulefilterNode"
-                             
-                            ref="ruletree">
-                          </el-tree>
+                            <div class="normal-black ">
+                                  <div >
+                                      <el-link :underline="false">
+                                        <i
+                                          class="el-icon-menu "
+                                          @click="showMenu($event,data, node)"
+                                          v-if="node.level != 1"
+                                        
+                                        ></i>
+                                      </el-link>
+                              
+                                  
+                                <!-- 因右键自定义菜单事件需要获取当前点击的位置,所以此处绑定动态样式来控制菜单实时跟踪鼠标右键点击位置 -->
+                                      <ul
+                                        v-show="menuvisible"
+                                        :style="{ left: menuleft + 'px', top: menutop + 'px' }"
+                                        class="contextmenu"
+                                      >
+                                        <li v-for="item in menusData" :key="item"  @click="menuClick($event,item,data,node)"> 
+                                              <i :class="item.icon"></i>
+                                              <span>{{item.label}}</span>
+                                        </li>
+                              
+                                      </ul>
+                                  </div>
 
+                                </div>
+                            </span>
+                          </span>
+                        </el-tree>
                       </el-scrollbar>
-                  </div>
+                    </div>
               </div>
-          
-           
-            
+
           </div>
-        </div> -->
-         <div class="peizhi" :style="{'height':heights-150+'px','overflow': 'hidden'}" v-loading="rightTreeLoading">
+      </el-col>
+      <el-col :span="12" class="h-100p">
+        <basic-container  class=" h-100p ">
+          <div class="peizhi h-100p ov-hidden"  v-loading="rightTreeLoading">
             <el-tabs v-model="activetabName" @tab-click="handletabClick">
                 <el-tab-pane label="立卷规则" name="second">
                    <el-row style="margin-bottom:15px">
@@ -272,7 +184,7 @@
                 <el-tab-pane label="工程文件入口配置" name="first"></el-tab-pane>
           </el-tabs>
 
-          <div class="scrollClass"  v-if="activetabName==='second'" style="height:721px">
+          <div class="scrollClass "  v-if="activetabName==='second'" style="height:100%">
                  <el-scrollbar style="height:100%">
                     <el-tree
                     :props="Rightprops"
@@ -282,8 +194,10 @@
                     class="filter-tree"
                     show-checkbox :check-strictly="true"
                     @check="handleCheckChange"
+                    :default-expanded-keys="defaultExpandedKeys1"
+                    :current-node-key="curreenttid1"
                   >
-                   <div class="custom-tree-node" slot-scope="{ node, data }"   @mouseover="mouseOver(data)"
+                   <div class="custom-tree-node" slot-scope="{ node, data }"   @mouseover="mouseOver(data)"    style="flex: 1;width: 100%;justify-content: flex-start;"
                     @mouseleave="mouseLeave(data)">
                        <!-- <span>{{ node.label }}</span> -->
                          <span v-if="node.label&&node.label.length<=25">{{node.label | ellipsis1}}</span>
@@ -294,10 +208,13 @@
                           </el-tooltip>
                        <span  class="marleft10"
                               v-show="data.moreShow">
+                              <div class="config_type" v-if="data.archiveAutoType == 1&&data.archiveAutoGroupSelect == 1">最</div>
+                              <div class="config_type" v-if="data.archiveAutoType == 2&&data.archiveAutoGroupSelect == 1">分</div>
+                              <div  class="config_type" v-if="data.archiveAutoType == 3&&data.archiveAutoGroupSelect == 1">独</div>
                           <el-button
                             type="text"
                             size="mini"
-                            @click.stop="() => viewConfig(data)">
+                            @click.stop="() => viewConfig(data,node)">
                             查看配置
                           </el-button>
                           <el-link @click.stop="removeArchive(data)" type="danger" :underline="false" class="marleft10"><i class="el-icon-delete"></i></el-link>
@@ -306,14 +223,14 @@
                   </el-tree>
                  </el-scrollbar>
           </div>
-          <div class="flexEnd"  v-if="isentryTree&&activetabName==='first'"">
+          <div class="flexEnd"  v-if="isentryTree&&activetabName==='first'">
             <i
               @click="rightPushTree"
               class="el-icon-plus"
               style="backgroundColor:#2A97DF;color:#fff;fontSize:20px;cursor: pointer;"
             ></i>
           </div>
-              <div class="scrollClass"  v-if="isentryTree&&activetabName==='first'" style="height:721px">
+              <div class="scrollClass "  v-if="isentryTree&&activetabName==='first'" style="height:100%">
                  <el-scrollbar style="height:100%">
                     <el-tree
                     :props="Rightprops"
@@ -337,9 +254,13 @@
                   </el-tree>
                  </el-scrollbar>
               </div>
-         </div>
+        </div>
+        </basic-container>
+      
       </el-col>
     </el-row>
+
+
     <!-- 新增编辑 -->
     <el-dialog
       :title="form.id?'编辑':'新增'"
@@ -372,6 +293,7 @@
               v-model="form.postType"
               placeholder="请选择岗位"
               style="width:400px;"
+              disabled
             >
               <el-option
                 v-for="item in JobTypeList"
@@ -384,6 +306,7 @@
           <el-form-item
             label="节点类型"
             prop="nodeType"
+         
           >
             <el-select
             
@@ -745,8 +668,9 @@
           >确认修改配置</el-button>
         </span>
       </el-dialog>
+</basic-container>
+
 
-  </basic-container>
 </template>
 
 <script>
@@ -756,6 +680,7 @@ import {getWbsList} from "@/api/manager/wbsinfo";
 import { getToken } from '@/util/auth';
 import { roletree } from "@/api/system/role.js";
 import logoVue from '../../page/index/logo.vue';
+import { getStore, setStore } from "@/util/store";
 export default {
   components: {
     ManualSorting,
@@ -1032,6 +957,11 @@ export default {
       menuvisible:false,
       menuleft:20,
       menutop:0,
+      defaultExpandedKeys:[],
+      defaultExpandedKeys1:[],
+      expandName: this.$route.fullPath,
+      curreenttid:'',
+      curreenttid1:''
      
     }
   },
@@ -1117,8 +1047,10 @@ export default {
       return true;
     },
 
-    async viewConfig(data){
+    async viewConfig(data,node){
        console.log(data,'查看配置');
+       //获取节点展开路径
+       this.getExpandedKeys1(node);
        this.configInfo = null;
        const { data: res } = await  getArchiveAutoRule({
         nodeId:data.id,//归档树节点的id 或者 挂载wbs节点的ID(具体哪个ID待定)
@@ -1258,9 +1190,48 @@ export default {
       }
     },
     mouseOver (data) {
+      console.log(1111111);
       if (!data.moreShow) {
         this.$set(data, 'moreShow', true)
       }
+    },
+      //获取节点展开路径
+    getExpandedKeys(node) {
+      //console.log(node)
+      let expandedKeys = [];
+      while (node.parent) {
+        expandedKeys.push(node.data.id);
+        node = node.parent;
+      }
+      setStore({
+        name: this.expandName,
+        content: expandedKeys,
+        type: true, //sessionStorage
+      });
+      //console.log(expandedKeys)
+    },
+    getExpandedKeys1(node) {
+      //console.log(node)
+      let expandedKeys = [];
+      while (node.parent) {
+        expandedKeys.push(node.data.id);
+        node = node.parent;
+      }
+      setStore({
+        name: 'configkey',
+        content: expandedKeys,
+        type: true, //sessionStorage
+      });
+      //console.log(expandedKeys)
+    },
+    nodeClick(data,node){
+       //获取节点展开路径
+       this.getExpandedKeys(node);
+       setStore({
+        name: 'curreenttid',
+        content: data.id,
+        type: true, //sessionStorage
+      });
     },
     addtree (data, node) {//添加树
       console.log(data);
@@ -1274,6 +1245,7 @@ export default {
         this.display_hierarchy()//显示层级
       }
       this.form.postType = data.postType
+
       this.form.id = ''
       this.form.parentId = data.id
       if (this.filterText) {
@@ -1309,6 +1281,7 @@ export default {
           console.log(1111111);
           this.remove(node.id).then(()=>{
             _that.$refs.trees1.remove(node) //删除界面上的节点
+            this.archiveTreetree4()//全加载左侧树
           }).catch(()=>{
 
           })
@@ -1723,6 +1696,7 @@ export default {
           type: 'success',
           message: '设置成功'
         })
+        this.treeIdChange(this.treeSelectId)
         this.highVisible = false;
       }
     },
@@ -1803,6 +1777,8 @@ export default {
 
     },
     menuClick(e,item,data,node){
+       //获取节点展开路径
+       this.getExpandedKeys(node);
        this.menuKey=''
         e.preventDefault();
         if(item.key==='add'){
@@ -1847,6 +1823,11 @@ export default {
       nodeType: 2,
       projectId:0
     })
+    this.defaultExpandedKeys = getStore({ name: this.expandName });
+    this.defaultExpandedKeys1 = getStore({ name: 'configkey' });
+    this.curreenttid1= getStore({ name:'curreenttid1' });
+    this.curreenttid= getStore({ name:'curreenttid' });
+    console.log( this.curreenttid,' this.curreenttid');
     this.archiveTreetree4()//全加载左侧树
 
     this.getWbsList();
@@ -1876,7 +1857,7 @@ export default {
 
 <style lang="scss" scoped>
 .peizhi {
-  border: 1px solid #e5e5e5;
+  // border: 1px solid #e5e5e5;
   border-radius: 5px;
   padding: 15px 10px;
 }
@@ -1928,4 +1909,16 @@ cursor: pointer;
 .contextmenu li:hover {
 background: #eee;
 }
+.config_type{
+  display: inline-block;
+  background: rgb(254, 110, 34);
+    color: #fff;
+    width: 16px;
+    height: 16px;
+    border-radius: 50%;
+    text-align: center;
+    line-height: 20px;
+    margin-right: 8px;
+    font-size: 12px;
+}
 </style>

+ 0 - 1032
src/views/manager/archivetree1.vue

@@ -1,1032 +0,0 @@
-<template>
-  <basic-container
-    ref="container"
-    style="height:100%;"
-  >
-    <el-row
-      :gutter="20"
-      :style="{'height':heights-80+'px','overflow': 'hidden'}"
-    >
-      <el-col
-        :span="12"
-        class='marleft20'
-      >
-        <div>
-          <h2>归档目录树</h2>
-          <el-input
-            placeholder="输入关键字进行过滤"
-            clearable
-            v-model="filterText"
-          >
-          </el-input>
-          <div  class="scrollClass" style="height:658px ;">
-             <el-scrollbar style="height:100%">
-             <el-tree
-            v-show="!filterText"
-            ref="trees1"
-            :props="props"
-            :load="loadNode"
-            node-key="id"
-            lazy
-          >
-            <span
-              class=" flexStar"
-              slot-scope="{ node, data }"
-              @mouseover="mouseOver(data)"
-              @mouseleave="mouseLeave(data)"
-              style="box-sizing: border-box;width:100%;"
-            >
-              <span>{{ data.title }}</span>
-                 <!--知识点过长处理,鼠标悬浮文字弹框显示全部内容-->
-            <!-- <span  class="custom-tree-node">
-                      <el-tooltip class="item" effect="light" :content="data.title" placement="top-start">
-                        <span > {{ data.title | ellipsis(25) }} </span>
-                      </el-tooltip>
-                  <div>
-                  </div>
-             </span> -->
-
-              <span
-                class="marleft10"
-                v-show="data.moreShow"
-              >
-                <i
-                  @click.stop='addtree(data,node)'
-                  class="el-icon-circle-plus-outline"
-                  style="fontSize:18px;"
-                  v-if="data.isStorageNode!=1"
-                ></i>
-                <i
-                  @click.stop='edittree(data,node)'
-                  class="el-icon-edit-outline marleft5"
-                  style="fontSize:18px;"
-                  v-if="node.level!=1"
-                ></i>
-                <i
-                  @click.stop='deletetree(node)'
-                  class="el-icon-delete marleft5"
-                  style="fontSize:18px;"
-                  v-if="node.level!=1"
-                ></i>
-                <i
-                  @click.stop='paixuMD(data)'
-                  class="el-icon-sort marleft5"
-                  style="fontSize:18px;"
-                  v-if="node.level!=1"
-                ></i>
-              </span>
-            </span>
-          </el-tree>
-          </el-scrollbar>
-          </div>
-         
-         
-          <el-tree
-            v-show="filterText"
-            :default-expanded-keys='defaultExpanded'
-            :props="props"
-            :data="data"
-            node-key="id"
-            ref="trees2"
-            :default-expand-all="true"
-            :filter-node-method="filterNode"
-          >
-            <span
-              class=" flexStar"
-              slot-scope="{ node, data }"
-              @mouseover="mouseOver(data)"
-              @mouseleave="mouseLeave(data)"
-              style="box-sizing: border-box;width:100%;"
-            >
-              <span>{{ data.title }}</span>
-              <span
-                class="marleft10"
-                v-show="data.moreShow"
-              >
-                <i
-                  @click.stop='addtree(data,node)'
-                  class="el-icon-circle-plus-outline"
-                  style="fontSize:18px;"
-                  v-if="data.isStorageNode!=1"
-                ></i>
-                <i
-                  @click.stop='edittree(data,node)'
-                  class="el-icon-edit-outline marleft5"
-                  style="fontSize:18px;"
-                  v-if="node.level!=1"
-                ></i>
-                <i
-                  @click.stop='deletetree(node)'
-                  class="el-icon-delete marleft5"
-                  style="fontSize:18px;"
-                  v-if="node.level!=1"
-                ></i>
-                <i
-                  @click.stop='paixuMD(data)'
-                  class="el-icon-sort marleft5"
-                  style="fontSize:18px;"
-                  v-if="node.level!=1"
-                ></i>
-              </span>
-            </span>
-          </el-tree>
-        </div>
-      </el-col>
-      <el-col
-        :span="9"
-        style="padding-top:30px;"
-      >
-        <h3>上传文件入口显示配置</h3>
-        <div
-          class="peizhi"
-          :style="{'height':heights-210+'px','overflow': 'hidden'}"
-        >
-          <div class="flexEnd">
-            <i
-              @click="rightPushTree"
-              class="el-icon-plus"
-              style="backgroundColor:#2A97DF;color:#fff;fontSize:20px;cursor: pointer;"
-            ></i>
-          </div>
-          <el-tree
-            :props="Rightprops"
-            :data="rightData"
-            node-key="id"
-            accordion
-            ref="tree"
-            class="filter-tree"
-          >
-          </el-tree>
-        </div>
-      </el-col>
-    </el-row>
-    <!-- 新增编辑 -->
-    <el-dialog
-      :title="form.id?'编辑':'新增'"
-      :visible.sync="treeTap"
-      width="700px"
-      :modal-append-to-body="false"
-      @close="treeClose"
-    >
-      <div>
-        <el-form
-          ref="form"
-          :model="form"
-          label-width="120px"
-          :rules="rules"
-        >
-          <el-form-item
-            label="节点名称"
-            prop="nodeName"
-          >
-            <el-input
-              v-model="form.nodeName"
-              style="width:400px;"
-            ></el-input>
-          </el-form-item>
-          <el-form-item
-            label="岗位类型"
-            prop="postType"
-          >
-            <el-select
-              v-model="form.postType"
-              placeholder="请选择岗位"
-              style="width:400px;"
-            >
-              <el-option
-                v-for="item in JobTypeList"
-                :key="item.id"
-                :label="item.title"
-                :value="item.id"
-              ></el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item
-            label="节点类型"
-            prop="nodeType"
-          >
-            <el-select
-              :disabled='form.id!=""'
-              v-model="form.nodeType"
-              placeholder="请选择节点"
-              style="width:400px;"
-            >
-              <el-option
-                v-for="item in nodeTypeList"
-                :key="item.value"
-                :label="item.label"
-                :value="item.value"
-              ></el-option>
-            </el-select>
-          </el-form-item>
-          <template v-if="form.nodeType==2">
-            <el-form-item
-              label="是否存储节点"
-              prop="isStorageNode"
-            >
-              <el-select
-                :disabled='form.id!=""'
-                v-model="form.isStorageNode"
-                style="width:400px;"
-              >
-                <el-option
-                  v-for="item in storageNodeList"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-            <template v-if="form.isStorageNode==1">
-              <el-form-item
-                label="是否竣工图"
-                prop="isBuiltDrawing"
-              >
-                <el-select
-                  v-model="form.isBuiltDrawing"
-                  style="width:400px;"
-                >
-                  <el-option
-                    v-for="item in builtDrawingList"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  ></el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item
-                label="是否接口节点"
-                prop="isInterfaceNode"
-              >
-                <el-select
-                  v-model="form.isInterfaceNode"
-                  style="width:400px;"
-                >
-                  <el-option
-                    v-for="item in interfaceNodeList"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  ></el-option>
-                </el-select>
-              </el-form-item>
-              <template v-if="form.isInterfaceNode==1">
-                <el-form-item label="选择接口类型">
-                  <el-select
-                    v-model="form.interfaceType"
-                    style="width:400px;"
-                  >
-                    <el-option
-                      v-for="item in interfaceTypeList"
-                      :key="item.value"
-                      :label="item.label"
-                      :value="item.value"
-                    ></el-option>
-                  </el-select>
-                </el-form-item>
-              </template>
-            </template>
-          </template>
-          <!-- 数字化文件上传 -->
-          <template v-if="form.nodeType==1">
-            <el-form-item
-              label="关联类型"
-              prop="associationType"
-            >
-              <el-select
-                v-model="form.associationType"
-                style="width:400px;"
-                placeholder="请选择"
-              >
-                <el-option
-                  v-for="item in associationTypeList"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-            <template v-if="form.associationType==1">
-              <el-form-item
-                label="业内资料类型"
-                prop="majorDataType"
-              >
-                <el-checkbox-group v-model="form.majorDataType">
-                  <el-checkbox
-                    v-for="item in majorDataTypeList"
-                    :key="item.dictKey"
-                    :label="item.dictKey"
-                    name="type"
-                  >{{item.dictValue}}</el-checkbox>
-                </el-checkbox-group>
-              </el-form-item>
-              <el-form-item
-                label="显示层级"
-                prop="displayHierarchy"
-              >
-                <el-select
-                  v-model="form.displayHierarchy"
-                  style="width:400px;"
-                  placeholder="请选择"
-                >
-                  <el-option
-                    v-for="item in displayHierarchyList"
-                    :key="item.dictKey"
-                    :label="item.dictValue"
-                    :value="item.dictKey"
-                  ></el-option>
-                </el-select>
-              </el-form-item>
-            </template>
-          </template>
-        </el-form>
-      </div>
-      <span
-        slot="footer"
-        class="dialog-footer"
-      >
-        <el-button @click="treeTap=false">取 消</el-button>
-        <el-button
-          type="primary"
-          @click="saveTree"
-        >保 存</el-button>
-      </span>
-    </el-dialog>
-
-    <!-- 右侧树 -->
-    <el-dialog
-      title="上传文件入口显示配置"
-      :visible.sync="pushfileTap"
-      :modal-append-to-body='false'
-      width="800px"
-      @close="pushFileClose"
-    >
-      <div>
-        <el-tree
-          :props="dialogProps"
-          show-checkbox
-          :data="dialogData"
-          node-key="id"
-          accordion
-          ref="trees"
-          class="filter-tree"
-        >
-        </el-tree>
-      </div>
-      <span
-        slot="footer"
-        class="dialog-footer"
-      >
-        <el-button @click="pushfileTap = false">取 消</el-button>
-        <el-button
-          type="primary"
-          @click="saveFile"
-        >确 定</el-button>
-      </span>
-    </el-dialog>
-
-    <!-- wbs树排序弹框 -->
-    <el-dialog
-      title="调整排序"
-      :visible="sortTag"
-      width="50%"
-      append-to-body
-    >
-      <ManualSorting
-        v-if="sortTag2"
-        @bianhua='bianhua()'
-        :sort='sort'
-      />
-      <span
-        slot="footer"
-        class="dialog-footer"
-      >
-        <el-button @click="sortTag=false,sortTag2=false">取 消</el-button>
-        <el-button
-          type="primary"
-          @click="editSort()"
-        >确 定</el-button>
-      </span>
-    </el-dialog>
-
-  </basic-container>
-</template>
-
-<script>
-import ManualSorting from '@/components/WbsTree/ManualSorting'
-import { archiveTreeInit, lazyTree, dictionary, remove, archiveTreeSave, archiveTreeUpdate, archiveTreeDetail, archiveTreetree, submitDisplayConfigTree, getSameGradeNode, submitArchiveTreeSort } from "@/api/manager/archivetree";
-import { getToken } from '@/util/auth';
-import { roletree } from "@/api/system/role.js";
-export default {
-  components: {
-    ManualSorting,
-  },
-  data () {
-    return {
-      //#region 左侧树
-      defaultExpanded: [],//默认选中的节点
-      filterText: '',//筛选条件
-      treeNode: {},
-      nodeNames: '',
-      token: '',
-      props: {
-        label: 'title',
-        children: 'children',
-        isLeaf: 'hasChildren'
-      },
-      data: [],//树节点枚举值
-      //#endregion
-
-      //#region 新增编辑节点弹框
-      treeTap: false,
-      form: {
-        id: '',//新增还是编辑
-        parentId: '',  //上级节点id
-        nodeName: "",  //节点名称
-        nodeType: '',  // 节点类型  2 = 数字化上传文件
-        postType: '',  //岗位类型
-        isStorageNode: '',  //是否为存储节点
-        isBuiltDrawing: '',  //竣工图
-        isInterfaceNode: '',  //是否接口节点
-        interfaceType: '',  //选择接口类型
-        associationType: '',  //关联类型
-        majorDataType: [],  //内业资料类型
-        displayHierarchy: ''  //显示层级
-      },
-      rules: {
-        nodeName: [{ required: true, message: '请输入节点名称', trigger: 'blur' }],
-        postType: [{ required: true, message: '请选择岗位类型', trigger: 'change' }],
-        nodeType: [{ required: true, message: '请选择节点类型', trigger: 'change' }],
-        isStorageNode: [{ required: true, message: '请选择存储节点', trigger: 'change' }],
-        isBuiltDrawing: [{ required: true, message: '请选择竣工图', trigger: 'change' }],
-        isInterfaceNode: [{ required: true, message: '请选择接口节点', trigger: 'change' }],
-        interfaceType: [{ required: true, message: '请选择接口类型', trigger: 'change' }],
-        associationType: [{ required: true, message: '请选择关联类型', trigger: 'change' }],
-        majorDataType: [{ required: true, message: '请选择业内资料类型', trigger: 'change' }],
-        displayHierarchy: [{ required: true, message: '请选择显示层级', trigger: 'change' }],
-      },
-      JobTypeList: [],//岗位类型枚举
-      nodeTypeList: [
-        {
-          label: '关联电子原生文件',
-          value: 1
-        }, {
-          label: '数字化上传文件',
-          value: 2
-        },
-      ],//节点类型枚举
-      storageNodeList: [{
-        label: '是',
-        value: 1
-      }, {
-        label: '否',
-        value: 2
-      },],//存储节点枚举
-      builtDrawingList: [{
-        label: '是',
-        value: 1
-      }, {
-        label: '否',
-        value: 2
-      },],//竣工图枚举
-      interfaceNodeList: [{
-        label: '是',
-        value: 1
-      }, {
-        label: '否',
-        value: 2
-      },],//接口节点枚举
-      interfaceTypeList: [
-        {
-          label: '试验接口',
-          value: 1
-        }, {
-          label: '计量接口',
-          value: 2
-        },
-      ],//选择接口类型枚举
-      associationTypeList: [{
-        label: '质检资料',
-        value: 1
-      },
-      {
-        label: '试验资料',
-        value: 2
-      },
-      {
-        label: '影像资料',
-        value: 3
-      },
-      {
-        label: '台账资料',
-        value: 4
-      }],//
-      majorDataTypeList: [],//
-      displayHierarchyList: [],//
-      //#endregion
-
-      //#region 右侧树节点
-      pushfileTap: false,//开关
-      Rightprops: {
-        label: 'title'
-      },
-      rightData: [],
-      //#endregion
-
-      //#region 右侧树弹框
-      dialogProps: {
-        label: 'title'
-      },
-      dialogData: [],
-      checkXuan: [],
-      //#endregion
-      heights: '',
-
-      sortTag2: false,
-      sortTag: false,
-      sort: [],
-    }
-  },
-  methods: {
-    paixuMD (data) {
-      this.sortTag = true
-      this.sortTag2 = true
-      this.curTreeData = data;
-      this.findWbsTreeSameLevel(data.id)
-    },
-    async findWbsTreeSameLevel (parentId) {//查询当前节点的同级节点
-      const { data: res } = await getSameGradeNode({ id: parentId })
-      //console.log(res);
-      if (res.code === 200) {
-        this.sort = res.data
-      }
-    },
-    bianhua () {
-      this.sortTag2 = false
-      this.$nextTick(() => {
-        this.sortTag2 = true
-      })
-    },
-    editSort () {//修改排序
-      let sortArr = this.sort, newArr = []
-      for (let i = 0; i < sortArr.length; i++) {
-        newArr.push({
-          id: sortArr[i].id,
-          nodeName: sortArr[i].nodeName
-        })
-      }
-      this.wbsTreeSort(newArr)
-    },
-    async wbsTreeSort (newArr) {//修改排序
-      const { data: res } = await submitArchiveTreeSort(newArr)
-      //console.log(res);
-      if (res.code == 200) {
-        this.sortTag = false
-        this.sortTag2 = false
-        //刷新页面
-        window.location.reload()
-      }
-    },
-    //#region 左侧树方法
-    async loadNode (node, resolve) {
-      console.log(node);
-      if (node.level === 0) {
-        let ks = await this.lazyTree(0)
-        if (ks.length) {
-          resolve(ks)
-        } else {
-          this.archiveTreeInit()
-        }
-      } else {
-        resolve(await this.lazyTree(node.data.id))
-      }
-    },
-    async archiveTreeInit () {//添加根节点
-      const { data: res } = await archiveTreeInit()
-      console.log(res);
-      if (res.code == 200 && res.msg == '操作成功') {
-        res.data.forEach(val => {
-          val.hasChildren = !val.hasChildren
-        });
-        return res.data
-      } else if (res.code == 200 && res.msg == "未查询到信息") {
-        return []
-      }
-    },
-    async lazyTree (parentId) {//树节点懒加载
-      const { data: res } = await lazyTree({
-        parentId,
-        token: this.token
-      })
-      console.log(res);
-      if (res.code == 200 && res.msg == '操作成功') {
-        res.data.forEach(val => {
-          val.hasChildren = !val.hasChildren
-        });
-        return res.data
-      } else if (res.code == 200 && res.msg == "未查询到信息") {
-        return []
-      }
-    },
-    mouseLeave (data) {
-      if (data.moreShow) {
-        this.$set(data, 'moreShow', false)
-      }
-    },
-    mouseOver (data) {
-      if (!data.moreShow) {
-        this.$set(data, 'moreShow', true)
-      }
-    },
-    addtree (data, node) {//添加树
-      console.log(data);
-      if (this.JobTypeList.length == 0) {
-        this.roletree()
-      }
-      if (this.majorDataTypeList.length == 0) {
-        this.major_data_type()//内业资料类型
-      }
-      if (this.displayHierarchyList.length == 0) {
-        this.display_hierarchy()//显示层级
-      }
-      this.form.postType = data.postType
-      this.form.id = ''
-      this.form.parentId = data.id
-      if (this.filterText) {
-        this.defaultExpanded = [data.id]
-      }
-      this.treeTap = true
-    },
-    async edittree (data) {//编辑树
-      if (this.JobTypeList.length == 0) {
-        this.roletree()
-      }
-      if (this.majorDataTypeList.length == 0) {
-        this.major_data_type()//内业资料类型
-      }
-      if (this.displayHierarchyList.length == 0) {
-        this.display_hierarchy()//显示层级
-      }
-      await this.archiveTreeDetail(data)
-      this.form.id = data.id
-      this.form.parentId = ''
-      this.treeNode = data
-      this.treeTap = true
-    },
-    deletetree (node) {//删除树
-      console.log(node);
-      let _that = this
-      this.$confirm('是否删除此数据', '提示', {
-        distinguishCancelAndClose: true,
-        confirmButtonText: '确认',
-        cancelButtonText: '取消'
-      })
-        .then(() => {
-          this.remove(node.data.id).then(()=>{
-            _that.$refs.trees1.remove(node) //删除界面上的节点
-          }).catch(()=>{
-
-          })
-
-        })
-        .catch(() => {
-
-        });
-    },
-    async remove (id) {//删除接口
-      const { data: res } = await remove({ id })
-      console.log(res);
-      if (res.code == 200) {
-        this.$message({
-          type: 'success',
-          message: '删除成功'
-        })
-      }
-    },
-    async archiveTreeDetail (data) {//详情接口
-      console.log(data);
-      const { data: res } = await archiveTreeDetail({ id: data.id })
-      console.log(res);
-      if (res.code == 200) {
-        this.form.nodeName = res.data.fullName  //节点名称
-        this.form.nodeType = res.data.nodeType   // 节点类型  2 = 数字化上传文件
-        this.form.postType = res.data.postType   //岗位类型
-        this.form.isStorageNode = res.data.isStorageNode   //是否为存储节点
-        this.form.isBuiltDrawing = res.data.isBuiltDrawing   //竣工图
-        this.form.isInterfaceNode = res.data.isInterfaceNode   //是否接口节点
-        this.form.interfaceType = res.data.interfaceType   //选择接口类型
-        this.form.associationType = res.data.associationType   //关联类型
-        this.form.majorDataType = res.data.majorDataType   //内业资料类型
-        this.form.displayHierarchy = res.data.displayHierarchy   //显示层级
-      }
-    },
-    async archiveTreetree4 () {//全加载左侧树
-      const { data: res } = await archiveTreetree({
-        token: this.token
-      })
-      console.log(res);
-      if (res.code == 200 && res.msg == "操作成功") {
-        this.data = res.data
-      }
-    },
-    filterNode (value,data,node) {//筛选条件
-      // 如果什么都没填就直接返回
-      if(!value){
-          return true;
-      }
-
-      let _array = [];//这里使用数组存储 只是为了存储值。
-      this.getReturnNode(node,_array,value);
-      let result = false;
-
-      _array.forEach((item)=>{
-          result = result || item;
-      });
-      return result;
-    },
-    //判断节点是否匹配
-    getReturnNode(node,_array,value){
-      let isPass = node.data &&  node.data.title && node.data.title.indexOf(value) !== -1;
-      isPass?_array.push(isPass):'';
-
-      //判断节点是否是父节点
-      if(!isPass && node.level!=1 && node.parent){
-          this.getReturnNode(node.parent,_array,value);
-      }
-    },
-
-    //#endregion
-
-    //#region 新增编辑节点弹框
-    treeClose () {//弹框关闭事件
-      this.form = {
-        parentId: '',  //上级节点id
-        nodeName: "",  //节点名称
-        nodeType: '',  // 节点类型  2 = 数字化上传文件
-        postType: '',  //岗位类型
-        isStorageNode: '',  //是否为存储节点
-        isBuiltDrawing: '',  //竣工图
-        isInterfaceNode: '',  //是否接口节点
-        interfaceType: '',  //选择接口类型
-        associationType: '',  //关联类型
-        majorDataType: [],  //内业资料类型
-        displayHierarchy: ''  //显示层级
-      }
-      this.$refs.form.resetFields();
-      this.form.id = ''
-      this.treeTap = false
-    },
-    async roletree () {//岗位类型枚举
-      const { data: res } = await roletree()
-      console.log(res);
-      if (res.code == 200) {
-        this.JobTypeList = res.data
-      }
-    },
-    async major_data_type () {//内业资料类型
-      const { data: res } = await dictionary({ code: 'major_data_type' })
-      console.log(res);
-      if (res.code == 200) {
-        this.majorDataTypeList = res.data
-      }
-    },
-    async display_hierarchy () {//显示层级
-      const { data: res } = await dictionary({ code: 'display_hierarchy' })
-      console.log(res);
-      if (res.code == 200) {
-        this.displayHierarchyList = res.data
-      }
-    },
-    saveTree () {//保存按钮
-      this.$refs.form.validate(val => {
-        if (val) {
-          if (this.form.nodeType == 2) {
-            if (this.form.isStorageNode == 1) {
-              if (this.form.isInterfaceNode == 1) {
-                this.baocun({
-                  id: this.form.id,
-                  parentId: this.form.parentId, //上级节点id
-                  nodeName: this.form.nodeName,  //节点名称
-                  nodeType: this.form.nodeType,  // 节点类型
-                  postType: this.form.postType,  //岗位类型
-                  isStorageNode: this.form.isStorageNode,  //是否为存储节点
-                  isBuiltDrawing: this.form.isBuiltDrawing,  //竣工图
-                  isInterfaceNode: this.form.isInterfaceNode,  //是否接口节点
-                  interfaceType: this.form.interfaceType,  //选择接口类型
-                })
-              } else {
-                this.baocun({
-                  id: this.form.id,
-                  parentId: this.form.parentId, //上级节点id
-                  nodeName: this.form.nodeName,  //节点名称
-                  nodeType: this.form.nodeType,  // 节点类型
-                  postType: this.form.postType,  //岗位类型
-                  isStorageNode: this.form.isStorageNode,  //是否为存储节点
-                  isBuiltDrawing: this.form.isBuiltDrawing,  //竣工图
-                  isInterfaceNode: this.form.isInterfaceNode,  //是否接口节点
-                })
-              }
-            } else {
-              this.baocun({
-                id: this.form.id,
-                parentId: this.form.parentId, //上级节点id
-                nodeName: this.form.nodeName,  //节点名称
-                nodeType: this.form.nodeType,  // 节点类型
-                postType: this.form.postType,  //岗位类型
-                isStorageNode: this.form.isStorageNode,  //是否为存储节点
-              })
-            }
-          } else if (this.form.nodeType == 1) {
-            if (this.form.associationType == 1) {
-              this.baocun({
-                id: this.form.id,
-                parentId: this.form.parentId, //上级节点id
-                nodeName: this.form.nodeName,  //节点名称
-                nodeType: this.form.nodeType,  // 节点类型
-                associationType: this.form.associationType,  //关联类型
-                majorDataType: this.form.majorDataType, //内业资料类型
-                displayHierarchy: this.form.displayHierarchy,  //显示层级
-              })
-            } else {
-              this.baocun({
-                id: this.form.id,
-                parentId: this.form.parentId, //上级节点id
-                nodeName: this.form.nodeName,  //节点名称
-                nodeType: this.form.nodeType,  // 节点类型
-                associationType: this.form.associationType,  //关联类型
-              })
-            }
-          }
-        }
-      })
-    },
-    async baocun (da) {
-      if (da.majorDataType) {
-        if (da.majorDataType.length > 0) {
-          let das = ''
-          da.majorDataType.forEach((val, key) => {
-            das += val
-            if (da.majorDataType.length - 1 != key) {
-              das += ','
-            }
-          })
-          da.majorDataType = das
-        }
-      }
-      if (this.form.id) {
-        await this.archiveTreeUpdate(da)
-      } else {
-        await this.archiveTreeSave(da)
-      }
-      if (this.filterText) {
-        this.archiveTreetree4()
-      }
-    },
-    async archiveTreeSave (da) {//新增
-      console.log(da);
-      const { data: res } = await archiveTreeSave(da)
-      console.log(res);
-      if (res.code == 200) {
-        this.$message({
-          type: 'success',
-          message: '新增成功'
-        })
-        this.treeTap = false
-        let das = await this.lazyTree(da.parentId)
-        this.$refs.trees1.updateKeyChildren(da.parentId, das)
-        let node = this.$refs.trees1.getNode(da.parentId);
-        node.isLeaf = false;
-        node.isLeafByUser = false;
-      }
-    },
-    async archiveTreeUpdate (da) {//编辑
-      const { data: res } = await archiveTreeUpdate(da)
-      console.log(res);
-      if (res.code == 200) {
-        this.$message({
-          type: 'success',
-          message: '编辑成功'
-        })
-        this.treeTap = false
-        this.treeNode.title = da.nodeName
-        this.treeNode.postType = da.postType
-      }
-    },
-    //#endregion
-
-    //#region 右侧树节点
-    async rightPushTree () {//右侧节点树
-      this.checkXuan = []
-      await this.archiveTreetree2({
-        token: this.token,
-        nodeType: 2,
-      })
-      this.pushfileTap = true
-      await this.saixuan(this.dialogData)
-      console.log(this.checkXuan);
-      this.$refs.trees.setCheckedKeys(this.checkXuan);
-    },
-    // 赛选
-    saixuan (da) {//赛选
-      if (da.length > 0) {
-        let tag = true
-        da.forEach(val => {
-          if (val.isDisplayTree == 1 && val.hasChildren) {
-            let ks = this.saixuan(val.children)
-            if (ks) {
-              this.checkXuan.push(val.id)
-            }
-          } else if (val.isDisplayTree == 1 && !val.hasChildren) {
-            this.checkXuan.push(val.id)
-          } else {
-            tag = false
-          }
-        })
-        return tag
-      }
-    },
-    pushFileClose () {//弹框关闭事件
-      this.checkXuan = []
-    },
-    async archiveTreetree (da) {//右侧树全加载接口
-      const { data: res } = await archiveTreetree(da)
-      console.log(res);
-      if (res.code == 200 && res.msg == "操作成功") {
-        this.rightData = res.data
-      }
-    },
-    //#endregion
-
-    //#region 右侧树弹框
-    async submitDisplayConfigTree (ids) {//保存接口
-      const { data: res } = await submitDisplayConfigTree({ ids })
-      console.log(res);
-      if (res.code == 200) {
-        this.$message({
-          type: 'success',
-          message: '设置成功'
-        })
-        this.archiveTreetree({
-          token: this.token,
-          disPlayTree: 1,
-          nodeType: 2,
-        })
-        this.pushfileTap = false
-      }
-    },
-    async archiveTreetree2 (da) {//右侧树全加载接口
-      const { data: res } = await archiveTreetree(da)
-      console.log(res);
-      if (res.code == 200 && res.msg == "操作成功") {
-        this.dialogData = res.data
-      }
-    },
-    saveFile () {//保存按钮
-      let zi = this.$refs.trees.getCheckedKeys() //返回选中子节点的key
-      let fu = this.$refs.trees.getHalfCheckedKeys()//返回选中子节点的父节点的key
-      let arr = [...zi, ...fu]
-      if (arr.length > 0) {
-        let ids = ''
-        arr.forEach((val, key) => {
-          ids += val
-          if (key != arr.length - 1) {
-            ids += ','
-          }
-        })
-        this.submitDisplayConfigTree(ids)
-      } else {
-        this.$message({
-          type: 'error',
-          message: '请先设置配置文件'
-        })
-      }
-    },
-    //#endregion
-  },
-  watch: {
-    filterText (val) {
-      this.$refs.trees2.filter(val);
-    }
-  },
-  created () {
-    this.token = 'bearer ' + getToken()
-    this.archiveTreetree({
-      token: this.token,
-      disPlayTree: 1,
-      nodeType: 2,
-    })
-    this.archiveTreetree4()//全加载左侧树
-  },
-  mounted () {
-    this.heights = this.$refs.container.$el.offsetHeight
-  }
-}
-</script>
-
-<style lang="scss" scoped>
-.peizhi {
-  border: 1px solid #e5e5e5;
-  border-radius: 5px;
-  padding: 15px 10px;
-}
-</style>

+ 131 - 130
src/views/manager/projectinfo/archivetreeRule.vue

@@ -3,20 +3,17 @@
     ref="container"
     style="height:100%;"
   >
-    <el-row
-      :gutter="20"
-      :style="{'height':heights-80+'px','overflow': 'hidden'}"
-    >
-      <el-col
-        :span="12"
-        class='marleft20'
-      >
-        <el-tabs v-model="activeName" @tab-click="handleClick">
-          <el-tab-pane label="竣工档案目录" name="first">
-          </el-tab-pane>
-          <el-tab-pane label="文书档案目录" name="second">
-          </el-tab-pane>
-          <div>
+  <el-row class="h-100p">
+    <el-col :span="12"  class=" h-100p">
+     
+        <div class="h-100p flex flex-d-c ov-hidden">
+          <el-tabs v-model="activeName" @tab-click="handleClick">
+            <el-tab-pane label="竣工档案目录" name="first">
+            </el-tab-pane>
+            <el-tab-pane label="文书档案目录" name="second">
+            </el-tab-pane>
+          </el-tabs>
+          <div class="scrollClass " style="height:100%">
                     <!-- <h2>归档目录树</h2> -->
                     <el-input
                       placeholder="输入关键字进行过滤"
@@ -24,8 +21,8 @@
                       v-model="filterText"
                     >
                     </el-input>
-                  <div class="treeBox" >
-                   
+                  <div  style="height:100%;overflow-y: auto;" class="scrollClass ">
+                    <el-scrollbar style="height:100%">
                       <el-tree
                         style="box-sizing: border-box;"
                         v-show="!filterText"
@@ -33,9 +30,13 @@
                         :props="props"
                         :load="loadNode"
                         node-key="id"
+                        :default-expanded-keys="defaultExpandedKeys"
+                        :current-node-key="curreenttid"
+                        @node-click="nodeClick"
                         lazy >
                         <span
                         class="custom-tree-node flexStar"
+                        style="flex: 1;width: 100%;justify-content: flex-start;"
                         :class="data.moreShow ? 'show' : ''"
                           slot-scope="{ node, data }"
                           @mouseover="mouseOver(data)"
@@ -43,11 +44,11 @@
 
                         >
                    
-                           <div v-if="data.title&&data.title.length<=30">{{data.title | ellipsis}}</div>
+                           <div v-if="data.title&&data.title.length<=25">{{data.title | ellipsis}}</div>
                   
-                            <el-tooltip v-if="data.title&&data.title.length>30" :content="data.title" raw-content placement="top-start"  effect="light">
-                              <span v-if="data.title &&data.title.length <=30">{{ data.title }}</span>
-                              <span v-if="data.title && data.title.length > 30"> {{data.title | ellipsis}}</span>
+                            <el-tooltip v-if="data.title&&data.title.length>25" :content="data.title" raw-content placement="top-start"  effect="light">
+                              <span v-if="data.title &&data.title.length <=25">{{ data.title }}</span>
+                              <span v-if="data.title && data.title.length > 25"> {{data.title | ellipsis}}</span>
                             </el-tooltip>
                     
 
@@ -98,28 +99,31 @@
 
                       <el-tree
                       v-show="filterText"
-                      :default-expanded-keys='defaultExpanded'
                       :props="props"
                       :data="data"
                       node-key="id"
                       ref="trees2"
                       :default-expand-all="true"
                       :filter-node-method="filterNode"
+                      :default-expanded-keys="defaultExpandedKeys"
+                      :current-node-key="curreenttid"
+                       @node-click="nodeClick"
                     >
                     
                          <span
                          class="custom-tree-node flexStar"
+                         style="flex: 1;width: 100%;justify-content: flex-start;"
                         :class="data.moreShow ? 'show' : ''"
                           slot-scope="{ node, data }"
                           @mouseover="mouseOver(data)"
                           @mouseleave="mouseLeave(data)"
 
                         >
-                           <div v-if="data.title&&data.title.length<=30">{{data.title | ellipsis}}</div>
+                           <div v-if="data.title&&data.title.length<=25">{{data.title | ellipsis}}</div>
                   
-                            <el-tooltip v-if="data.title&&data.title.length>30" :content="data.title" raw-content placement="top-start"  effect="light">
-                              <span v-if="data.title &&data.title.length <=30">{{ data.title }}</span>
-                              <span v-if="data.title && data.title.length > 30"> {{data.title | ellipsis}}</span>
+                            <el-tooltip v-if="data.title&&data.title.length>25" :content="data.title" raw-content placement="top-start"  effect="light">
+                              <span v-if="data.title &&data.title.length <=25">{{ data.title }}</span>
+                              <span v-if="data.title && data.title.length > 25"> {{data.title | ellipsis}}</span>
                             </el-tooltip>
                     
 
@@ -161,102 +165,16 @@
                           </span>
                         </span>
                       </el-tree>
-                  
-                  </div>
-
-            </div>
-      </el-tabs>
-
-      </el-col>
-      <el-col
-        :span="9"
-        style="padding-top:30px;"
-      >
-        <!-- <h3>上传文件入口显示配置</h3> -->
-<!--
-        <div
-          class="peizhi"
-          :style="{'height':heights-210+'px','overflow': 'hidden'}"
-        >
-          <el-button type="primary"  @click="handleentrybtn">立卷规则</el-button>
-          <el-button type="info"  @click="handlerulebtn">工程文件入口配置</el-button>
-            <el-button type="warning" v-if="!isentryTree"  @click="savebtn">保存设置</el-button>
-          <div class="flexEnd"  v-if="isentryTree">
-            <i
-              @click="rightPushTree"
-              class="el-icon-plus"
-              style="backgroundColor:#2A97DF;color:#fff;fontSize:20px;cursor: pointer;"
-            ></i>
-          </div>
-              <div class="scrollClass"  v-if="isentryTree" style="height:721px">
-                 <el-scrollbar style="height:100%">
-                    <el-tree
-                    :props="Rightprops"
-                    :data="rightData"
-                    node-key="id"
-                    ref="tree"
-                    class="filter-tree"
-
-                  >
-                  </el-tree>
-                 </el-scrollbar>
-              </div>
-
-
-          <div v-if="!isentryTree" style="margin-top:20px">
-              <el-checkbox-group v-model="checkList">
-                <el-checkbox label="设置为最高并卷层级"></el-checkbox>
-                <el-checkbox label="设置为分类并卷层级"></el-checkbox>
-                <el-checkbox label="设置为单独并卷层级"></el-checkbox>
-              </el-checkbox-group>
-              <div style="margin-top:20px;border:1px solid #e5e5e5;padding:20px">
-
-                      <div style="display: flex;justify-content: space-between;">
-                         <el-select v-model="publictreevalue" clearable placeholder="请选择公有质检化分树" style="    width:45%;">
-                            <el-option
-                              v-for="item in publictreeoptions"
-                              :key="item.value"
-                              :label="item.label"
-                              :value="item.value">
-                            </el-option>
-                        </el-select>
-                        <el-select v-model="testtreevalue" clearable placeholder="请选择公有试验化分树"   style="    width: 45%;">
-                            <el-option
-                              v-for="item in testtreeoptions"
-                              :key="item.value"
-                              :label="item.label"
-                              :value="item.value">
-                            </el-option>
-                        </el-select>
-                      </div>
-                   <el-input
-                            placeholder="输入关键字进行过滤"
-                            v-model="rulefilterText"
-                            style="margin-top:20px"
-                            >
-                    </el-input>
-                  <div  class="scrollClass"  style="height:521px ;">
-                      <el-scrollbar style="height:100%">
-                          <el-tree
-
-                            class="filter-tree"
-                            :data="rightData"
-                            :props="Rightprops"
-                            default-expand-all
-                            :filter-node-method="rulefilterNode"
-
-                            ref="ruletree">
-                          </el-tree>
-
-                      </el-scrollbar>
+                    </el-scrollbar >
                   </div>
-              </div>
-
-
 
           </div>
-        </div> -->
-         <div class="peizhi" :style="{'height':heights-150+'px','overflow': 'hidden'}" v-loading="rightTreeLoading">
+        </div>
+  
+    </el-col>
+    <el-col :span="12"  class=" h-100p">
+      <basic-container  class=" h-100p ">
+        <div class="peizhi h-100p ov-hidden" v-loading="rightTreeLoading">
             <el-tabs v-model="activetabName" @tab-click="handletabClick">
                 <el-tab-pane label="立卷规则" name="second">
                    <el-row style="margin-bottom:15px">
@@ -268,7 +186,7 @@
                 <el-tab-pane label="工程文件入口配置" name="first"></el-tab-pane>
           </el-tabs>
 
-          <div class="scrollClass"  v-if="activetabName==='second'" style="height:721px;">
+          <div class="scrollClass"  v-if="activetabName==='second'" style="height:100%;">
                  <el-scrollbar style="height:100%">
                     <el-tree
                     :props="Rightprops"
@@ -278,8 +196,10 @@
                     class="filter-tree"
                     show-checkbox :check-strictly="true"
                     @check="handleCheckChange"
+                    :default-expanded-keys="defaultExpandedKeys1"
+                    :current-node-key="curreenttid1"
                   >
-                   <div class="custom-tree-node" slot-scope="{ node, data }"   @mouseover="mouseOver(data)"
+                   <div class="custom-tree-node" slot-scope="{ node, data }"   @mouseover="mouseOver(data)"    style="flex: 1;width: 100%;justify-content: flex-start;" 
                     @mouseleave="mouseLeave(data)">
                        <!-- <span>{{ node.label }}</span> -->
                           <span v-if="node.label&&node.label.length<=25">{{node.label | ellipsis1}}</span>
@@ -290,10 +210,13 @@
                             </el-tooltip>
                        <span  class="marleft10"
                               v-show="data.moreShow">
+                              <div class="config_type" v-if="data.archiveAutoType == 1&&data.archiveAutoGroupSelect == 1">最</div>
+                              <div class="config_type" v-if="data.archiveAutoType == 2&&data.archiveAutoGroupSelect == 1">分</div>
+                              <div  class="config_type" v-if="data.archiveAutoType == 3&&data.archiveAutoGroupSelect == 1">独</div>
                           <el-button
                             type="text"
                             size="mini"
-                            @click.stop="() => viewConfig(data)">
+                            @click.stop="() => viewConfig(data,node)">
                             查看配置
                           </el-button>
                           <el-link @click.stop="removeArchive(data)" type="danger" :underline="false" class="marleft10"><i class="el-icon-delete"></i></el-link>
@@ -310,7 +233,7 @@
               style="backgroundColor:#2A97DF;color:#fff;fontSize:20px;cursor: pointer;"
             ></i>
           </div>
-              <div class="scrollClass"  v-if="isentryTree&&activetabName==='first'" style="height:721px">
+              <div class="scrollClass"  v-if="isentryTree&&activetabName==='first'" style="height:100%">
                  <el-scrollbar style="height:100%">
                     <el-tree
                     :props="Rightprops"
@@ -320,7 +243,7 @@
                     class="filter-tree"
 
                   >
-                   <div class="custom-tree-node" slot-scope="{ node, data }"   @mouseover="mouseOver(data)"
+                   <div class="custom-tree-node" slot-scope="{ node, data }"   @mouseover="mouseOver(data)"  style="flex: 1;width: 100%;justify-content: flex-start;"
                     @mouseleave="mouseLeave(data)">
                        <!-- <span>{{ node.label }}</span> -->
                           <span v-if="node.label&&node.label.length<=25">{{node.label | ellipsis1}}</span>
@@ -337,8 +260,9 @@
               </div>
 
         </div>
-      </el-col>
-    </el-row>
+      </basic-container>
+    </el-col>
+  </el-row>
     <!-- 新增编辑 -->
     <el-dialog
       :title="form.id?'编辑':'新增'"
@@ -371,6 +295,7 @@
               v-model="form.postType"
               placeholder="请选择岗位"
               style="width:400px;"
+              disabled
             >
               <el-option
                 v-for="item in JobTypeList"
@@ -383,6 +308,7 @@
           <el-form-item
             label="节点类型"
             prop="nodeType"
+            
           >
             <el-select
            
@@ -753,6 +679,7 @@ import {getWbsList} from "@/api/manager/wbsinfo";
 import { getToken } from '@/util/auth';
 import { roletree } from "@/api/system/role.js";
 // import logoVue from '../../page/index/logo.vue';
+import { getStore, setStore } from "@/util/store";
 export default {
   components: {
     ManualSorting,
@@ -1031,6 +958,11 @@ export default {
       menuvisible:false,
       menuleft:20,
       menutop:0,
+      defaultExpandedKeys:[],
+      defaultExpandedKeys1:[],
+      expandName: this.$route.fullPath,
+      curreenttid:'',
+      curreenttid1:''
     }
   },
   computed:{
@@ -1104,8 +1036,14 @@ export default {
       return true;
     },
 
-    async viewConfig(data){
-       console.log(data,'查看配置');
+    async viewConfig(data,node){
+         //获取节点展开路径
+         this.getExpandedKeys1(node);
+        setStore({
+        name: 'curreenttid1',
+        content: data.id,
+        type: true, //sessionStorage
+      });
        this.configInfo = null;
        const { data: res } = await  getArchiveAutoRule({
         nodeId:data.id,//归档树节点的id 或者 挂载wbs节点的ID(具体哪个ID待定)
@@ -1251,6 +1189,44 @@ export default {
       if (!data.moreShow) {
         this.$set(data, 'moreShow', true)
       }
+    },
+         //获取节点展开路径
+    getExpandedKeys(node) {
+      //console.log(node)
+      let expandedKeys = [];
+      while (node.parent) {
+        expandedKeys.push(node.data.id);
+        node = node.parent;
+      }
+      setStore({
+        name: this.expandName,
+        content: expandedKeys,
+        type: true, //sessionStorage
+      });
+      //console.log(expandedKeys)
+    },
+    getExpandedKeys1(node) {
+      //console.log(node)
+      let expandedKeys = [];
+      while (node.parent) {
+        expandedKeys.push(node.data.id);
+        node = node.parent;
+      }
+      setStore({
+        name: 'configkey',
+        content: expandedKeys,
+        type: true, //sessionStorage
+      });
+      //console.log(expandedKeys)
+    },
+    nodeClick(data,node){
+       //获取节点展开路径
+       this.getExpandedKeys(node);
+       setStore({
+        name: 'curreenttid',
+        content: data.id,
+        type: true, //sessionStorage
+      });
     },
     addtree (data, node) {//添加树
       console.log(data);
@@ -1264,6 +1240,7 @@ export default {
         this.display_hierarchy()//显示层级
       }
       this.form.postType = data.postType
+     
       this.form.id = ''
       this.form.parentId = data.id
       if (this.filterText) {
@@ -1297,6 +1274,7 @@ export default {
         .then(() => {
           this.remove(node.id).then(()=>{
             _that.$refs.trees1.remove(node) //删除界面上的节点
+            this.archiveTreetree4()//全加载左侧树
           }).catch(()=>{
 
           })
@@ -1728,6 +1706,11 @@ export default {
           type: 'success',
           message: '设置成功'
         })
+        this.archiveTreetree({
+          token: this.token,
+          //disPlayTree: 1,
+          //nodeType: 2,
+        })
         this.highVisible = false;
       }
     },
@@ -1809,6 +1792,8 @@ export default {
     },
     menuClick(e,item,data,node){
        this.menuKey=''
+         //获取节点展开路径
+         this.getExpandedKeys(node);
         e.preventDefault();
         if(item.key==='add'){
           if(data.isStorageNode!=1){
@@ -1855,6 +1840,10 @@ export default {
     this.token = 'bearer ' + getToken()
 
     this.projectId = this.$route.query.projectId;
+    this.defaultExpandedKeys = getStore({ name: this.expandName });
+    this.defaultExpandedKeys1 = getStore({ name: 'configkey' });
+    this.curreenttid= getStore({ name:'curreenttid' });
+    this.curreenttid1= getStore({ name:'curreenttid1' });
 
     this.archiveTreetree({
       token: this.token,
@@ -1871,8 +1860,8 @@ export default {
   filters:{
     ellipsis(value) {
       if (!value) return "";
-      if (value.length > 30) {
-        return value.slice(0, 30) + "...";
+      if (value.length > 25) {
+        return value.slice(0, 25) + "...";
       }
       return value;
     },
@@ -1891,7 +1880,7 @@ export default {
 
 <style lang="scss" scoped>
 .peizhi {
-  border: 1px solid #e5e5e5;
+  // border: 1px solid #e5e5e5;
   border-radius: 5px;
   padding: 15px 10px;
 }
@@ -1957,4 +1946,16 @@ cursor: pointer;
 .contextmenu li:hover {
 background: #eee;
 }
+.config_type{
+  display: inline-block;
+  background: rgb(254, 110, 34);
+    color: #fff;
+    width: 16px;
+    height: 16px;
+    border-radius: 50%;
+    text-align: center;
+    line-height: 20px;
+    margin-right: 8px;
+    font-size: 12px;
+}
 </style>

+ 9 - 5
src/views/manager/projectinfo/tree.vue

@@ -1293,7 +1293,7 @@
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="nodeInfoVisible = false">取 消</el-button>
-        <el-button type="primary" @click="nodeInfoSave()">保 存</el-button>
+        <el-button type="primary" @click="nodeInfoSave()"   :loading="nodeInfoSaveload">保 存</el-button>
       </span>
     </el-dialog>
 
@@ -1845,7 +1845,8 @@ export default {
       ],
       menuvalue: '',
       isshowSyncbtn:false,
-      projectName:''
+      projectName:'',
+      nodeInfoSaveload:false
       
     };
   },
@@ -2978,13 +2979,15 @@ export default {
           }
         });
         if (tag) {
+          this.nodeInfoSaveload=true
           await this.saveOrUpdateBatch({scopeType:10,projectId:this.projectid,nodeId:this.jiedianId,wps:this.nodeInfoTable,type:1,delIds:this.delids});
-          this.nodeInfoVisible = false;
           this.delIds=[];
           this.$message({
             type: "success",
             message: "设置参数节点成功!",
           });
+          this.nodeInfoSaveload=false
+          this.nodeInfoVisible = false;
         } else {
           this.$message({
             type: "error",
@@ -3719,8 +3722,9 @@ background: #eee;
 .titlerow{
   // float: right;
   background-color:rgba(31, 34, 41, 0.8);
-  width:104%;padding-left:10px;
-  padding-right:40px;
+  // width:104%;
+  padding-left:10px;
+  padding-right:10px;
   text-align:right;
   margin-top: -20px;
   margin-left: -20px;

+ 9 - 5
src/views/manager/wbsinfo/edit.vue

@@ -1372,6 +1372,7 @@
         <el-button
           type="primary"
           @click="nodeInfoSave()"
+          :loading="nodeInfoSaveload"
         >保 存</el-button>
       </span>
     </el-dialog>
@@ -1445,7 +1446,7 @@
         slot="footer"
         class="dialog-footer"
       >
-        <el-button @click="addParameterName()">保 存</el-button>
+        <el-button @click="addParameterName()" >保 存</el-button>
         <el-button @click="closeParameter()">关 闭</el-button>
       </span>
     </el-dialog>
@@ -1779,7 +1780,8 @@ export default {
         {icon: 'el-icon-delete', label: '删除节点', key: "del"},
       
       ],//树组件操作菜单
-      menuKey:''
+      menuKey:'',
+      nodeInfoSaveload:false
     };
   },
   computed: {
@@ -2756,13 +2758,15 @@ export default {
 
         })
         if (tag) {
+          this.nodeInfoSaveload=true
           await this.saveOrUpdateBatch({scopeType:1,projectId:this.projectid,nodeId:this.jiedianId,wps:this.nodeInfoTable,type:1,delIds:this.delids})
-          this.nodeInfoVisible = false;
           this.delIds=[]
           this.$message({
             type: "success",
             message: "设置参数节点成功!"
           })
+          this.nodeInfoSaveload=false
+          this.nodeInfoVisible = false;
         } else {
           this.$message({
             type: "error",
@@ -3296,8 +3300,8 @@ export default {
 .titlerow{
   // float: right;
   background-color:rgba(31, 34, 41, 0.8);
-  width:104%;padding-left:10px;
-  padding-right:40px;
+padding-left:10px;
+  padding-right:10px;
   text-align:right;
   margin-top: -20px;
   margin-left: -20px;

+ 19 - 4
src/views/tentative/metadata.vue

@@ -66,10 +66,12 @@
         </div>
         <el-table
           :data="MetadataformDatass"
+          :row-key="selRowKey"
           border ref="dialogtable"
           style="width: 100%;">
           <el-table-column
             type="selection"
+            reserve-selection
             width="55">
           </el-table-column>
           <el-table-column
@@ -308,6 +310,7 @@ export default {
       data: [],
       setMetadataTag:false,
       MetadataformDatass:[],
+    
 
       page2:{
         pageSize:20,
@@ -485,6 +488,9 @@ export default {
 
       }
        this.setMetadataTag=true;
+      
+  
+      
     },
 
     //新增一条数据
@@ -506,11 +512,20 @@ export default {
     },
 
     setAllocation(){
-      this.getAllocationList();
+     
       this.setMetadataTag=true;
+      this.$nextTick(()=>{
+        this.$refs.dialogtable.clearSelection();
+      })
+      this.getAllocationList();
+      this.optionvalue=''
       // this.optionvalue = this.query.fileStorageType;
     },
-
+    //为行设置独有key
+  	selRowKey(row){
+      // console.log(row);
+      return row.id
+    },
     getAllocationList(){
       getAllocationDetail(this.page2.current,this.page2.pageSize,{
         fileStorage:''
@@ -527,10 +542,9 @@ export default {
             }
           })
         }
-      
         this.$nextTick(()=>{
             checkarr.forEach((ele)=>{
-               this.$refs.dialogtable.toggleRowSelection(ele);
+               this.$refs.dialogtable.toggleRowSelection(ele,true);
             })
         })
       })
@@ -614,6 +628,7 @@ export default {
     //回显选择
     changeType(val){
       this.page2.current = 1;
+      this.$refs.dialogtable.clearSelection();
       this.getAllocationList()
  
     }