|
@@ -1,252 +1,161 @@
|
|
|
<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'
|
|
|
- >
|
|
|
- <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"
|
|
|
- :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"
|
|
|
- :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>
|
|
|
-
|
|
|
+ <div style="height: 100%;">
|
|
|
+ <el-row class="h-100p">
|
|
|
+ <el-col :span="12" class=" h-100p">
|
|
|
+ <basic-container 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 >
|
|
|
<span
|
|
|
- class="marleft10"
|
|
|
- v-show="data.moreShow"
|
|
|
+ class="custom-tree-node flexStar"
|
|
|
+ :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"
|
|
|
- :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 style="text-overflow: ellipsis;width:101%;">{{ data.title }}</span> -->
|
|
|
+ <span v-if="data.title&&data.title.length<=30">{{data.title | ellipsis}}</span>
|
|
|
|
|
|
- <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>
|
|
|
+ <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>
|
|
|
+ </div>
|
|
|
+ </span>
|
|
|
</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">
|
|
|
+ </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"
|
|
|
+ :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>
|
|
|
|
|
|
- <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">
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ </basic-container>
|
|
|
+ </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">
|
|
@@ -276,7 +185,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"
|
|
@@ -313,14 +222,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"
|
|
@@ -344,9 +253,13 @@
|
|
|
</el-tree>
|
|
|
</el-scrollbar>
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
+ </basic-container>
|
|
|
+
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
+
|
|
|
+
|
|
|
<!-- 新增编辑 -->
|
|
|
<el-dialog
|
|
|
:title="form.id?'编辑':'新增'"
|
|
@@ -754,8 +667,9 @@
|
|
|
>确认修改配置</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
+</div>
|
|
|
+
|
|
|
|
|
|
- </basic-container>
|
|
|
</template>
|
|
|
|
|
|
<script>
|