From e38da5941faf1f9120fe089cc884e0b48091452c Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期四, 09 二月 2023 11:56:34 +0800
Subject: [PATCH] Merge branch 'dev1.0' of http://42.193.1.25:9521/r/sccg_ui into dev1.0

---
 src/components/departTree/index.vue |   69 ++++++++++++++++++++++++++++++++++
 1 files changed, 69 insertions(+), 0 deletions(-)

diff --git a/src/components/departTree/index.vue b/src/components/departTree/index.vue
new file mode 100644
index 0000000..945b376
--- /dev/null
+++ b/src/components/departTree/index.vue
@@ -0,0 +1,69 @@
+<template>
+  <el-select v-model="model.departName" placeholder="璇烽�夋嫨鎵�灞為儴闂�">
+    <el-option value="1">
+      <el-tree
+        ref="tree"
+        :check-strictly="true"
+        :data="departList"
+        :props="defaultProps"
+        :default-checked-keys="selectIds"
+        show-checkbox
+        @check-change="handleCheck"
+        @node-click="nodeClick"
+        default-expand-all
+        node-key="id"
+      >
+      </el-tree>
+    </el-option>
+  </el-select>
+</template>
+<script>
+export default {
+  data() {
+    return {
+      model: {
+        departId: 0,
+        departName: "",
+      },
+      selectIds: [],
+      departList: [],
+      defaultProps: {
+        children: "children",
+        label: "departName",
+      },
+    };
+  },
+  created() {
+    // 鑾峰彇鍏ㄩ儴閮ㄩ棬鍒楄〃
+    this.$axios.get("/sccg/depart/tree").then((res) => {
+      this.departList = res.data;
+      if (this.depart) {
+        this.model.departId = this.depart.departId;
+        this.model.departName = this.depart.departName;
+        this.selectIds = [this.depart.departId];
+      }
+    });
+  },
+  methods: {
+    nodeClick(data, checked) {
+      this.checkedId = data.comcode;
+      this.$refs.tree.setCheckedNodes([data]);
+      this.model.departId = data.id;
+      this.model.departName = data.departName;
+    },
+    handleCheck(data, checked) {
+      if (checked == true) {
+        this.checkedId = data.comcode;
+        this.$refs.tree.setCheckedNodes([data]);
+        this.model.departId = data.id;
+        this.model.departName = data.departName;
+        this.$emit("selectDepart", this.model);
+      }
+    },
+  },
+
+  props: ["depart"],
+};
+</script>
+<style lang="scss" scoped>
+</style>

--
Gitblit v1.8.0