hanbaoshan
2020-08-08 f77dad86de37e5ab0df6a6ce43f21e1ab408d389
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
<template>
  <div class="flex-box bg-w p10">
    <div class="ev-left-list">
      <leftList
        ref="baseSync"
        listWidth="350px"
        title="同步库"
        type="1"
        :isSelected="isSelected"
        :activeId="selectedId"
        @getEvents="getEventList"
        @del-list="delList"
        @add="changeToAdd"
        @enabled="eventSwitch"
      ></leftList>
    </div>
 
    <div v-show="isShowRight">
      <rightEvent
        ref="right"
        :eventObject="eventObject"
        @onCancle="onCancle"
        @updateList="updateList"
      ></rightEvent>
    </div>
  </div>
</template>
<script>
import leftList from "./LeftList";
import rightEvent from "./RightEvent";
import { getById } from "@/api/event";
 
export default {
  name: "eventPush",
  components: {
    leftList,
    rightEvent
  },
  props: {},
  data() {
    return {
      // 是否展示右侧
      isShowRight: false,
      // 是否选中
      isSelected: false,
      // 当前选中的事件
      eventObject: {},
      selectedId: ""
    };
  },
  methods: {
    eventSwitch(e) {
      if (this.eventObject.id) {
        if (e.id === this.eventObject.id) {
          this.eventObject.enable = e.enable
        }
      }
      // console.log(e)
    },
    /**
     * 添加事件推送
     */
    changeToAdd() {
      this.$refs.right.reAdd();
      this.isShowRight = true;
    },
    // 获取事件列表
    async getEventList(data) {
      // console.log(data, "当前选中的");
      let json = {
        id: data.id
      };
      let res = await getById(json);
      if (res && res.success) {
        this.eventObject = res.data;
        this.isShowRight = true;
      }
    },
    // 保存成功后的回调
    updateList(id) {
      this.$refs.baseSync.findAll();
      this.getEventList({ id: id });
      this.selectedId = id;
    },
    delList() {
      this.$refs.baseSync.findAll();
      this.isShowRight = false;
    },
    onCancle() {
      this.isShowRight = false;
    }
  }
};
</script>
 
<style lang="scss">
.ev-left-list {
  border-right: 1px solid #e0e0e0;
}
 
.ant-divider,
.ant-divider-vertical {
  margin: 0 8px;
  display: inline-block;
  height: 100%;
  width: 1px;
  vertical-align: middle;
  position: relative;
  top: -0.06em;
}
</style>