MrShi
4 天以前 4fabfe4dbd2eb28d07a4350597d314958cc1c281
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
<template>
  <TableLayout :permissions="['business:sites:query']">
    <!-- 搜索表单 -->
    <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
      <el-form-item label="站点编号" prop="code">
        <el-input v-model="searchForm.code" placeholder="请输入站点编号" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="站点名称" prop="name">
        <el-input v-model="searchForm.name" placeholder="请输入站点名称" @keypress.enter.native="search"></el-input>
      </el-form-item>
 
      <!-- <el-form-item label="编码" prop="id">
        <el-input v-model="searchForm.id" placeholder="请输入编码" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="创建时间" prop="createDate">
        <el-date-picker v-model="searchForm.createDate" value-format="yyyy-MM-dd" placeholder="请输入创建时间" @change="search"/>
      </el-form-item>
      <el-form-item label="创建人" prop="creator">
        <el-input v-model="searchForm.creator" placeholder="请输入创建人" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="编辑时间" prop="editDate">
        <el-date-picker v-model="searchForm.editDate" value-format="yyyy-MM-dd" placeholder="请输入编辑时间" @change="search"/>
      </el-form-item>
      <el-form-item label="编辑人" prop="editor">
        <el-input v-model="searchForm.editor" placeholder="请输入编辑人" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="是否已删除 0未删除 1已删除" prop="isdeleted">
        <el-input v-model="searchForm.isdeleted" placeholder="请输入是否已删除 0未删除 1已删除" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="备注" prop="info">
        <el-input v-model="searchForm.info" placeholder="请输入备注" @keypress.enter.native="search"></el-input>
      </el-form-item>
 
      <el-form-item label="状态 0正常 1禁用" prop="status">
        <el-input v-model="searchForm.status" placeholder="请输入状态 0正常 1禁用" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="锁头数量" prop="lockNum">
        <el-input v-model="searchForm.lockNum" placeholder="请输入锁头数量" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="ip地址" prop="ip">
        <el-input v-model="searchForm.ip" placeholder="请输入ip地址" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="版本号" prop="clientVersion">
        <el-input v-model="searchForm.clientVersion" placeholder="请输入版本号" @keypress.enter.native="search"></el-input>
      </el-form-item> -->
      <section>
        <el-button type="primary" @click="search">搜索</el-button>
        <el-button @click="reset">重置</el-button>
      </section>
    </el-form>
    <!-- 表格和分页 -->
    <template v-slot:table-wrap>
      <ul class="toolbar" v-permissions="['business:sites:create']">
        <li><el-button type="primary" @click="$refs.operaSitesWindow.open('新建站点')" icon="el-icon-plus" v-permissions="['business:sites:create']">新建</el-button></li>
      </ul>
      <el-table
        v-loading="isWorking.search"
        :data="tableData.list"
        stripe
        border
      >
        <el-table-column prop="code" label="站点编号"  :sort-method="(a,b)=>{ return   a.code-b.code}"  sortable min-width="100px" align="center"></el-table-column>
        <el-table-column prop="name" label="站点名称" sortable min-width="100px" align="center"></el-table-column>
        <!-- <el-table-column prop="ip" label="站点ip" min-width="100px" align="center"></el-table-column>
        <el-table-column prop="port" label="端口号" min-width="100px" align="center"></el-table-column> -->
        <el-table-column prop="lastLinkDate" label="最后通讯时间" sortable  min-width="100px" align="center"></el-table-column>
        <el-table-column prop="status" sortable label="状态" min-width="100px" align="center">
          <template slot-scope="{row}">
            <div v-if="row.status==0" style="color: green;">正常</div>
            <div v-if="row.status==1" style="color: red;">禁用</div>
          </template>
        </el-table-column>
        <el-table-column prop="status" sortable label="是否异常上报" min-width="100px" align="center">
          <template slot-scope="{row}">
            <div v-if="row.needNotice==0" >上报</div>
            <div v-if="row.needNotice==1" >不上报</div>
          </template>
        </el-table-column>
        <!-- <el-table-column prop="creator" label="创建人" min-width="100px"></el-table-column>
        <el-table-column prop="editor" label="编辑人" min-width="100px"></el-table-column>
        <el-table-column prop="isdeleted" label="是否已删除 0未删除 1已删除" min-width="100px"></el-table-column>
        <el-table-column prop="info" label="备注" min-width="100px"></el-table-column>
        <el-table-column prop="lockNum" label="锁头数量" min-width="100px"></el-table-column>
        <el-table-column prop="clientVersion" label="版本号" min-width="100px"></el-table-column> -->
        <el-table-column
          v-if="containPermissions(['business:sites:update', 'business:sites:delete'])"
          label="操作"
          min-width="120"
          align="center"
          fixed="right"
        >
          <template slot-scope="{row}">
            <el-button type="text" @click="$refs.QRcode.open('查看二维码', row.code)" icon="el-icon-picture-outline-round">查看二维码</el-button>
            <el-button type="text" @click="$refs.operaSitesWindow.open('编辑站点', row)" icon="el-icon-edit" v-permissions="['business:sites:update']">编辑</el-button>
            <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:sites:delete']">删除</el-button>
          </template>
        </el-table-column>
      </el-table>
      <pagination
        @size-change="handleSizeChange"
        @current-change="handlePageChange"
        :pagination="tableData.pagination"
      >
      </pagination>
    </template>
    <!-- 新建/修改 -->
    <OperaSitesWindow ref="operaSitesWindow" @success="handlePageChange"/>
    <!--  查看二维码  -->
    <QRcode ref="QRcode" />
  </TableLayout>
</template>
 
<script>
import BaseTable from '@/components/base/BaseTable'
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import OperaSitesWindow from '@/components/business/OperaSitesWindow'
import QRcode from '@/components/business/QRcode'
export default {
  name: 'Sites',
  extends: BaseTable,
  components: { TableLayout, Pagination, OperaSitesWindow, QRcode },
  data () {
    return {
      // 搜索
      searchForm: {
        id: '',
        createDate: '',
        creator: '',
        editDate: '',
        editor: '',
        isdeleted: '',
        info: '',
        name: '',
        code: '',
        status: '',
        lockNum: '',
        ip: '',
        clientVersion: ''
      }
    }
  },
  created () {
    this.config({
      module: '站点信息表',
      api: '/business/sites',
      'field.id': 'id',
      'field.main': 'id'
    })
    this.search()
  }
}
</script>