田源
2023-08-31 43f18acf0904eb59c5248b55874dc2a1c433273e
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
<template>
  <!--系统集成的系统信息页面-->
  <basic-container>
    <avue-crud :option="option"
               :table-loading="loading"
               :data="data"
               :page.sync="page"
               :permission="permissionList"
               ref="crud"
               @search-change="searchChange"
               @search-reset="searchReset"
               @selection-change="selectionChange"
               @current-change="currentChange"
               @size-change="sizeChange"
               @refresh-change="refreshChange"
               @on-load="onLoad">
    </avue-crud>
  </basic-container>
</template>
 
<script>
import {getList} from "@/api/docking/data";
import {validatenull} from "@/util/validate";
import {mapGetters} from "vuex";
import website from "@/config/website";
 
export default {
name: "data",
  data(){
  return {
    loading: false,
    query: {},
    selectionList: [],
    page: {
      pageSize: 20,
      currentPage: 1,
      total: 0
    },
    data:[],
    option: {
      height:'auto',
      calcHeight: 0,
      tip: false,
      searchShow: false,
      searchMenuSpan: 6,
      border: true,
      index: true,
      viewBtn: true,
      selection: false,
      dialogClickModal: false,
      menu:false,
      column: [
        {
          label: "数据编码",
          prop: "id",
          search: true,
          sortable:true,
          width:150
        },
        {
          label: "图号",
          prop: "uniquecode",
          search: true,
          sortable:true
        },
        {
          label: '分类id',
          prop: 'classifyid',
          search: true,
          sortable:true,
          width: 250
        },
        {
          label: '分类名称',
          prop: 'classifyname',
          search: true,
          sortable:true
        },
        {
          label: '业务类型oid',
          prop: 'btmoid',
          sortable:true,
          width: 150
        },
        {
          label: '业务类型id',
          prop: 'btmid',
          sortable:true,
          width: 150
        },
        {
          label: '推送类型',
          prop: 'sendtype',
          search: true,
          sortable:true,
          width: 150
        },
        {
          label: '是否分解任务',
          prop: 'sendflag',
          search: true,
          sortable:true,
          width: 130,
          html:true,
          align:'center',
          type:'select',
          searchLabelWidth:130,
          dicData: [{key:'true',value:'是'},{key:'false',value:'否'}],
          props: {
            label: "value",
            value: "key"
          },
          formatter : function (row, column) {
            return row.sendflag == 'true' || row.sendflag == '1' ? '<i class="el-icon-check" style="color: limegreen"></i>' : '<i class="el-icon-close" style="color: red"></i>'
          }
        }
      ]
    }
  }
  },
  computed:{
    ...mapGetters([ "permission"]),
    permissionList() {
      return {
        addBtn: false,
        viewBtn: false,
        delBtn: false,
        editBtn: false
      };
    }
  },
  methods: {
    searchReset() {
      this.query = {};
      this.onLoad(this.page);
    },
    searchChange(params, done) {
      this.query = params;
      this.page.currentPage = 1;
      this.onLoad(this.page);
      done();
    },
    selectionChange(list) {
      this.selectionList = list;
    },
    selectionClear() {
      this.selectionList = [];
      this.$refs.crud.toggleSelection();
    },
    currentChange(currentPage) {
      this.page.currentPage = currentPage;
    },
    sizeChange(pageSize) {
      this.page.pageSize = pageSize;
    },
    refreshChange() {
      this.onLoad(this.page);
    },
    onLoad(page, params={}) {
      this.loading = true;
      var query={}
      if (this.query) {
        for (var key in this.query) {
          query['conditionMap["' + key + '"]'] = this.query[key];
        }
      }
      getList(page.currentPage, page.pageSize, Object.assign(params,this.params, query,this.query)).then(res => {
        const data = res.data.data;
        this.page.total = data.total;
        this.data = data.records;
        this.loading = false;
        this.selectionClear();
      }).catch(error=>{
        this.$message.error(error);
        this.loading = false;
      });
    }
  }
 
}
</script>
 
<style scoped>
 
</style>