刘恒 1 год назад
Родитель
Сommit
64eb256336
3 измененных файлов с 125 добавлено и 1 удалено
  1. 119 0
      src/components/tree/userSalesTree.vue
  2. 1 1
      src/pages/business/sales.vue
  3. 5 0
      src/services/business.js

+ 119 - 0
src/components/tree/userSalesTree.vue

@@ -0,0 +1,119 @@
+<template>
+  <div class="tree">
+    <a-tree
+      v-if="treeData && treeData.length > 0"
+      :tree-data="treeData"
+      :title="'11'"
+      :replaceFields="replaceFields"
+      @select="onSelect"
+      :checkable="checkable"
+      @check="onCheck"
+      v-model="checkList"
+     
+      :expanded-keys="expandedKeys"
+      @expand="onExpand"
+      ref="tree"
+    >
+      <template slot="custom" slot-scope="item">
+        <span>{{ item }}</span>
+        <!-- <span style="color: #f50">({{ item.num }})</span> -->
+      </template>
+    </a-tree>
+  </div>
+</template>
+    
+    <script>
+// import mixin from "../../minins/mixin";
+import { mapState } from "vuex";
+export default {
+  name: "FormRow",
+  //   mixins: [mixin],
+  props: {
+    checkable: {
+      default: false,
+    },
+    managementSource: {
+      default: "",
+    },
+    // defaultCheckList: {
+    //   default: [],
+    // },
+  },
+  data() {
+    return {
+      treeData: [],
+      replaceFields: {
+        children: "children",
+        title: "name",
+        key: "id",
+      },
+      checkList: [],
+      autoExpandParent: true,
+      expandedKeys: [],
+    };
+  },
+  computed: {
+    ...mapState("setting", ["userInfo"]),
+  },
+  watch: {},
+  created() {},
+  mounted() {
+    this.getUserTree();
+  },
+  methods: {
+    onExpand(expandedKeys) {
+      this.expandedKeys = expandedKeys;
+      //expandedKeys
+      this.autoExpandParent = true;
+    },
+    setExpandKys(item) {
+      this.$nextTick(() => {
+        // this.$refs.tree.expandedKeys = ["99D17"];
+        // this.$refs.tree.defaultExpandedKeys = ["99D17"];
+        // console.log(this.$refs.tree);
+        // this.expandedKeys = ["99D17"];
+        // this.checkList = ["99D17"];
+        this.$API.sysManage
+          .getUserItem({
+            userId: item.userId,
+          })
+          .then((res) => {
+            if (res.data.code === 200) {
+              this.expandedKeys = res.data.data.deptIds;
+              this.checkList = res.data.data.deptIds;
+            }
+          });
+      });
+    },
+    getUserTree() {
+      // console.log(this.userInfo);
+      this.$API.business
+        .getUserSalesTree({
+          managementSource: this.$props.managementSource,
+        })
+        .then((res) => {
+          if (res.data.code === 200) {
+            this.treeData = res.data.data;
+          }
+        });
+    },
+
+    onSelect(keys) {
+      this.$emit("getList", keys[0]);
+    },
+    onCheck(checkedKeys) {
+      this.$emit("checkTree", checkedKeys);
+
+      // this.checkedKeys = checkedKeys;
+    },
+  },
+};
+</script>
+    
+  <style lang="less" scoped>
+.tree {
+  height: 100%;
+  // overflow-y: auto;
+}
+</style>
+    

+ 1 - 1
src/pages/business/sales.vue

@@ -179,7 +179,7 @@
   <script>
 import StandardTable from "@/components/table/StandardTable";
 // import mixin from "../../minins/mixin";
-import tree from "@/components/tree/userTree";
+import tree from "@/components/tree/userSalesTree";
 // import moment from "moment";
 import datePicker from "@/components/datePicker";
 

+ 5 - 0
src/services/business.js

@@ -25,6 +25,10 @@ export async function getBusinessAgentTotalDetails(data) {
 export async function getUserTree(data) {
     return request("/user/findNextTree", METHOD.GET, data)
 }
+//获取电销人员树
+export async function getUserSalesTree(data) {
+    return request("/user/findNextTreeContain", METHOD.GET, data)
+}
 //获取代理人员树
 export async function findNextAgentTree(data) {
     return request("/user/findNextAgentTree", METHOD.GET, data)
@@ -79,6 +83,7 @@ export default {
     getBusinessAgentList,
     getBusinessAgentTotalList,
     getUserTree,
+    getUserSalesTree,
     getBusinessAgentTotalDetails,
     findNextAgentTree,
     findAgentChanellTree,