Ver Fonte

业务员账户新增部门筛选

qymljy há 1 ano atrás
pai
commit
20dac70acd
1 ficheiros alterados com 76 adições e 2 exclusões
  1. 76 2
      src/SDrpManagement/salerAccount/index.vue

+ 76 - 2
src/SDrpManagement/salerAccount/index.vue

@@ -12,6 +12,10 @@
         <exportFile :param="param" :columns="tablecols" fileName="业务员账户"></exportFile>
       </template>
       <template #custom >
+        <div class="mt-10 inline-16">
+          <label  class="search__label" >部门:</label>
+          <el-cascader ref="selectdep" size="small" v-model="depment" :options="deplist" :props="{emitPath:true,expandTrigger:'hover',checkStrictly:true,label:'label',value:'departmentid',children:'children'}"  @change="selectDep"  clearable></el-cascader>
+        </div>
         <div class="mt-10">
           <label  class="search__label">状态:</label>
           <el-select class="inline-24" v-model="status" placeholder="请选择状态" @change="selectChange" size="small" clearable>
@@ -59,7 +63,13 @@ export default {
       tablecols:[],
       param:{},
       checked:'1',
-      goID:''
+      goID:'',
+      depment:'',
+      deplist:'',
+      depmentParam:{
+        "id": 20230620102004,
+        "content": {},
+      }
     }
   },
   methods:{
@@ -77,11 +87,75 @@ export default {
           id:row.hrid,
         }
       })
-    }
+    },
+    /*获取部门数据*/
+    async departmentrtment() {
+      const res = await this.$api.requested(this.depmentParam)
+      this.deplist = this.createMenu(res.data.dep)
+    },
+    createMenu (array) {
+      var that = this
+      let arr = []
+      function convertToElementTree(node) {
+        // 新节点
+        if (node.subdep.length === 0){
+          var elNode = {
+            label: node["depname"],
+            parentid:node['parentid'],
+            parentname:node['parentname'],
+            departmentid:node["departmentid"],
+            value:node["departmentid"],
+            remarks:node["remarks"],
+            isused:node["isused"],
+            changedate:node['changedate'],
+            changeby:node['changeby'],
+            createdate:node['createdate'],
+            createby:node['createby'],
+            depno:node['depno'],
+            disabled:that.pageOnlyRead,
+          }
+        }else {
+          var elNode = {
+            label: node["depname"],
+            parentid:node['parentid'],
+            parentname:node['parentname'],
+            departmentid:node["departmentid"],
+            value:node["departmentid"],
+            remarks:node["remarks"],
+            isused:node["isused"],
+            changedate:node['changedate'],
+            changeby:node['changeby'],
+            createdate:node['createdate'],
+            createby:node['createby'],
+            depno:node['depno'],
+            disabled:that.pageOnlyRead,
+            children: []
+          }
+        }
+        if (node.subdep && node.subdep.length > 0) {
+          // 如果存在子节点
+          for (var index = 0; index < node.subdep.length; index++) {
+            // 遍历子节点, 把每个子节点看做一颗独立的树, 传入递归构造子树, 并把结果放回到新node的children中
+            elNode.children.push(convertToElementTree(node.subdep[index]));
+          }
+        }
+        return elNode;
+      }
+      array.forEach((element) => {
+        arr.push(convertToElementTree(element))
+      });
+      return arr
+    },
+    selectDep(val) {
+      this.$refs.basicLayout.param.content.where.departmentid = val[val.length -1]
+      this.param = this.$refs.basicLayout.param
+      this.$refs.basicLayout.listData()
+    },
   },
   mounted() {
     this.param = this.$refs.basicLayout.param
     this.selectChange()
+    this.departmentrtment()
   },
   created() {
     this.tablecols = this.tool.tabelCol(this.$route.name).accountTable.tablecols