MrShi
昨天 39fc2d6754953e41a7334a2166347baacfcfb40a
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
<template>
  <TableLayout :permissions="['business:jkcabinetlog:query']">
    <!-- 搜索表单 -->
    <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
      <el-form-item label="开门时间" prop="date">
        <el-date-picker
          v-model="date"
          @change="setDate"
          type="daterange"
          range-separator="至"
          start-placeholder="开始日期"
          end-placeholder="结束日期"
          format="yyyy 年 MM 月 dd 日"
          value-format="yyyy-MM-dd">
        </el-date-picker>
      </el-form-item>
      <el-form-item label="操作人" prop="memberName">
        <el-input v-model="searchForm.memberName" placeholder="请输入" @keypress.enter.native="search"></el-input>
      </el-form-item>
      <el-form-item label="钥匙柜" prop="cabinetId">
        <el-select v-model="searchForm.cabinetId" placeholder="请选择" @change="search">
          <el-option
            v-for="item in keysAll"
            :key="item.id"
            :label="item.name"
            :value="item.id">
          </el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="验证方式" prop="authType">
        <el-select v-model="searchForm.authType" placeholder="请选择" @change="search">
          <el-option label="全部" value=""></el-option>
          <el-option label="刷脸" :value="0"></el-option>
          <el-option label="刷卡" :value="1"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="状态" prop="status">
        <el-select v-model="searchForm.status" placeholder="请选择" @change="search">
          <el-option label="全部" value=""></el-option>
          <el-option label="成功" :value="0"></el-option>
          <el-option label="失败" :value="1"></el-option>
        </el-select>
      </el-form-item>
      <section>
        <el-button type="primary" @click="search">搜索</el-button>
        <el-button type="primary" :loading="isWorking.export" v-permissions="['business:jkcabinetlog:exportExcel']" @click="exportExcel">导出</el-button>
        <el-button @click="reset">重置</el-button>
      </section>
    </el-form>
    <!-- 表格和分页 -->
    <template v-slot:table-wrap>
      <el-table
        :height="tableHeightNew"
        v-loading="isWorking.search"
        :data="tableData.list"
        stripe
      >
        <el-table-column prop="createDate" label="开门时间" min-width="100px"></el-table-column>
        <el-table-column prop="memberName" label="操作人" min-width="100px"></el-table-column>
        <el-table-column label="校验方式" min-width="100px">
          <template slot-scope="{row}">
            <el-link :underline="false" v-if="row.authType === 0">刷脸</el-link>
            <el-link :underline="false" v-if="row.authType === 1">刷卡</el-link>
          </template>
        </el-table-column>
        <el-table-column prop="cabinetName" label="所属钥匙柜" min-width="100px"></el-table-column>
        <el-table-column prop="editDate" label="柜格编号" min-width="100px"></el-table-column>
        <el-table-column prop="isdeleted" label="钥匙" min-width="100px"></el-table-column>
        <el-table-column label="状态" min-width="100px">
          <template slot-scope="{row}">
            <el-link :underline="false" v-if="row.status === 0">成功</el-link>
            <el-link type="danger" :underline="false" v-if="row.status === 1">失败</el-link>
          </template>
        </el-table-column>
      </el-table>
      <pagination
        @size-change="handleSizeChange"
        @current-change="handlePageChange"
        :pagination="tableData.pagination"
      >
      </pagination>
    </template>
    <!-- 新建/修改 -->
    <OperaJkCabinetLogWindow ref="operaJkCabinetLogWindow" @success="handlePageChange"/>
  </TableLayout>
</template>
 
<script>
import BaseTable from '@/components/base/BaseTable'
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import OperaJkCabinetLogWindow from '@/components/business/OperaJkCabinetLogWindow'
import { list } from '@/api/business/jkCabinet'
export default {
  name: 'JkCabinetLog',
  extends: BaseTable,
  components: { TableLayout, Pagination, OperaJkCabinetLogWindow },
  data () {
    return {
      // 搜索
      searchForm: {
        endDate: '',
        startDate: '',
        cabinetId: '',
        authType: '',
        memberName: '',
        status: ''
      },
      date: [],
      keysAll: []
    }
  },
  created () {
    this.config({
      module: '钥匙柜开关门记录',
      api: '/business/jkCabinetLog',
      'field.id': 'id',
      'field.main': 'id'
    })
    this.search()
    this.getkeysAll()
  },
  methods: {
    setDate(e) {
      if (e && e.length > 1) {
        this.searchForm.startDate = e[0]
        this.searchForm.endDate = e[1]
      } else {
        this.searchForm.startDate = ''
        this.searchForm.endDate = ''
      }
      this.search()
    },
    // 搜索框重置
    reset () {
      this.$refs.searchForm.resetFields()
      this.date = []
      this.searchForm.startDate = ''
      this.searchForm.endDate = ''
      this.search()
    },
    getkeysAll() {
      list({})
        .then(res => {
          console.log(res)
          this.keysAll = res
        })
    }
  }
}
</script>