Ver Fonte

增加树形菜单文本过滤效果

humingbo há 1 ano atrás
pai
commit
9e8118fce4
2 ficheiros alterados com 47 adições e 9 exclusões
  1. 16 6
      src/views/enforceflow/enforceflow.vue
  2. 31 3
      src/views/meeting/meeting.vue

+ 16 - 6
src/views/enforceflow/enforceflow.vue

@@ -68,9 +68,9 @@
       </el-table-column>
       <el-table-column prop="status1" label="当前实施状态" width="120" align="center">
         <template slot-scope="scope">
-          <span style="color: green">{{ scope.row.act.taskName }}</span>
           <span style="color: green" v-if="scope.row.status===2">运行维护</span>
           <span style="color: green" v-if="scope.row.status===0">待启动</span>
+          <span style="color: green" v-if="scope.row.status===1">{{ scope.row.stepName }}</span>
         </template>
       </el-table-column>
       <el-table-column prop="status" label="状态" width="80" align="center">
@@ -235,9 +235,10 @@
       </div>
     </el-dialog>
 
-    <el-dialog title="选择人员" :visible.sync="usersVisble" width="30%" @click="closeUserDialog"
-               :close-on-click-modal="false">
-      <el-tree ref="dept" :data="userList" node-key="id" :props="{label:'name'}" :default-expand-all="false">
+    <el-dialog title="选择人员" :visible.sync="usersVisble" width="30%" @click="closeUserDialog" :close-on-click-modal="false">
+      <el-input placeholder="输入关键字进行过滤" v-model="filterText1">
+      </el-input>
+      <el-tree ref="dept" :data="userList" node-key="id" :props="{label:'name'}" :default-expand-all="false" :filter-node-method="filterNode1">
       </el-tree>
       <div slot="footer" class="dialog-footer">
         <el-button size="mini" @click="closeUserDialog">取消</el-button>
@@ -660,11 +661,14 @@ export default {
     filterText(val) {
       this.$refs.dept1.filter(val);
     },
-    immediate: true
+    filterText1(val) {
+      this.$refs.dept.filter(val);
+    },
   },
   data() {
     return {
       filterText: '',
+      filterText1:null,
       editEnforceRecord: {
         id: null,
         enforceType: '',
@@ -1399,7 +1403,13 @@ export default {
         }
       });
       this.editEnforceFormVisible1 = true
-    }
+    },
+    filterNode1(value, data) {
+      if (!value) {
+        return true
+      }
+      return data.name.indexOf(value) !== -1;
+    },
   }
 
 }

+ 31 - 3
src/views/meeting/meeting.vue

@@ -252,12 +252,15 @@
 
     <el-dialog title="选择人员" :visible.sync="usersVisble" width="30%" @click="closeUserDialog"
                :close-on-click-modal="false">
+      <el-input placeholder="输入关键字进行过滤" v-model="filterText">
+      </el-input>
       <el-tree
         ref="dept"
         :data="userList"
         node-key="id"
         show-checkbox
-        :props="{label:'name'}" :default-expand-all="false">
+        :props="{label:'name'}" :default-expand-all="false"
+        :filter-node-method="filterNode">
       </el-tree>
       <div slot="footer" class="dialog-footer">
         <el-button size="mini" @click="closeUserDialog">取消</el-button>
@@ -267,11 +270,14 @@
 
     <el-dialog title="选择人员" :visible.sync="users1Visble" width="30%" @click="closeUser1Dialog"
                :close-on-click-modal="false">
+      <el-input placeholder="输入关键字进行过滤" v-model="filterText1">
+      </el-input>
       <el-tree
         ref="dept1"
         :data="userList"
         node-key="id"
-        :props="{label:'name'}" :default-expand-all="false">
+        :props="{label:'name'}" :default-expand-all="false"
+        :filter-node-method="filterNode1">
       </el-tree>
       <div slot="footer" class="dialog-footer">
         <el-button size="mini" @click="closeUser1Dialog">取消</el-button>
@@ -438,8 +444,18 @@ import { getProjects } from '@/api/meeting/work'
 
 export default {
   name: 'Meeting',
+  watch: {
+    filterText(val) {
+      this.$refs.dept.filter(val);
+    },
+    filterText1(val) {
+      this.$refs.dept1.filter(val);
+    },
+  },
   data() {
     return {
+      filterText:null,
+      filterText1:null,
       projectMeetingDetailVisble: false,
       otherMeetingDetailVisble: false,
       tableData: [],
@@ -1075,7 +1091,19 @@ export default {
       editMeetingContent(data).then(res=>{
        // this.$message.success("操作成功!")
       });
-    }
+    },
+    filterNode(value, data) {
+      if (!value) {
+        return true
+      }
+      return data.name.indexOf(value) !== -1;
+    },
+    filterNode1(value, data) {
+      if (!value) {
+        return true
+      }
+      return data.name.indexOf(value) !== -1;
+    },
   }
 
 }