doum
2025-09-09 9e705c30a3370174a28e8d8d01a50bc7c2bf05ba
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
<template>
    <TableLayout :permissions="['business:member:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
            <el-form-item title="车牌号" prop="carCode">
                <el-input v-model="searchForm.carCode" placeholder="车牌号" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <el-form-item title="车主信息" prop="memberName">
                <el-input v-model="searchForm.memberName" placeholder="车主信息" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <el-form-item title="车主组织" prop="companyName">
                <el-input v-model="searchForm.companyName" placeholder="车主组织名称" @keypress.enter.native="search"></el-input>
            </el-form-item>
            <el-form-item title="停车库名称" prop="parksName">
                <el-input v-model="searchForm.parksName" 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:member:create', 'business:member:delete']">
<!--
                <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:cars:delete']">删除</el-button></li>
-->
            </ul>
            <el-table
                :height="tableHeightNew"
                v-loading="isWorking.search"
                :data="tableData.list"
                stripe
                @selection-change="handleSelectionChange"
            >
                <el-table-column type="selection" width="55"></el-table-column>
                <el-table-column prop="carCode" label="车牌号" fixed min-width="100px"></el-table-column>
                <el-table-column prop="parksName" label="停车场" fixed min-width="100px"></el-table-column>
              <el-table-column prop="startTime" label="有效期"  align="center" fixed min-width="150px">
                <template slot-scope="{row}">
                  <div v-if="!row.startTime || !row.endTime">长期有效</div>
                  <div v-else>
                    <span style="color: green">起:{{row.startTime}}</span><br/>
                    <span style="color: red">止:{{row.endTime}}</span>
                  </div>
                </template>
              </el-table-column>
              <el-table-column prop="startTime" label="状态" fixed min-width="100px">
                <template slot-scope="{row}">
                  <div v-if="row.isdeleted==1"  style="color: red">已删除</div>
                  <div v-else style="color: green">
                    <span v-if="row.hkStatus==0"  style="color: #435EBE">待下发</span>
                    <span v-if="row.hkStatus==1"  style="color: green">下发成功</span>
                    <span v-if="row.hkStatus==2"  style="color: red">下发失败</span>
                  </div>
                </template>
              </el-table-column>
                <el-table-column label="用户类型" min-width="100px">
                    <template slot-scope="{row}">
                        <span v-if="row.memberType === 0">劳务访客</span>
                        <span v-if="row.memberType === 1">普通访客</span>
                        <span v-if="row.memberType === 2">内部人员</span>
                    </template>
                </el-table-column>
                <el-table-column prop="memberName" label="姓名" min-width="100px"></el-table-column>
                <el-table-column prop="memberPhone" label="手机号" min-width="100px"></el-table-column>
                <el-table-column prop="companyName" label="组织" min-width="150px"></el-table-column>
              <el-table-column prop="remark" label="备注" min-width="100px">
                <template slot-scope="{row}">
                  <span v-if="row.isdeleted !=2">{{row.remark}}</span>
                </template>
              </el-table-column>
                <el-table-column prop="createDate" label="创建时间" min-width="150px"></el-table-column>
<!--                <el-table-column-->
<!--                    v-if="containPermissions(['business:member:update', 'business:member:delete'])"-->
<!--                    label="操作"-->
<!--                    min-width="120"-->
<!--                    fixed="right"-->
<!--                >-->
<!--                    <template slot-scope="{row}">-->
<!--&lt;!&ndash;                        <el-button type="text" @click="$refs.operaCarsWindow.open('编辑车辆信息表', row)" icon="el-icon-edit" v-permissions="['business:member:update']">编辑</el-button>&ndash;&gt;-->
<!--                        <el-button type="text" @click="deleteById(row)" v-if="row.isdeleted !=1" icon="el-icon-delete" v-permissions="['business:parkbook:delete']">删除</el-button>-->
<!--&lt;!&ndash;-->
<!--                        <el-button type="text" @click="reUpdate(row)" v-if="row.isdeleted !=1 && row.hkStatus ==0" icon="el-icon-edit" v-permissions="['business:parkbook:update']">立刻下发</el-button>-->
<!--&ndash;&gt;-->
<!--                    </template>-->
<!--                </el-table-column>-->
            </el-table>
            <pagination
                @size-change="handleSizeChange"
                @current-change="handlePageChange"
                :pagination="tableData.pagination"
            >
            </pagination>
        </template>
        <!-- 新建/修改 -->
        <OperaCarsWindow ref="operaCarsWindow" @success="handlePageChange"/>
    </TableLayout>
</template>
 
<script>
import BaseTable from '@/components/base/BaseTable'
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import OperaCarsWindow from '@/components/business/OperaCarsWindow'
import { validity } from '@/utils/util'
import { sync } from '@/api/business/cars'
import { batchLoss } from '@/api/business/memberCard'
import {reUpdate} from "@/api/business/parkBook";
export default {
  name: 'parkBook',
  extends: BaseTable,
  components: { TableLayout, Pagination, OperaCarsWindow },
  data () {
    return {
      // 搜索
      searchForm: {
        carCode: '',
        memberName: '',
        parksName: '',
        companyName: ''
      }
    }
  },
  created () {
    this.config({
      module: '车辆信息表',
      api: '/business/parkBook',
      'field.id': 'id',
      'field.main': 'id'
    })
    this.search()
  },
  methods: {
    validity (startTime, endTime) {
      return validity(startTime, endTime)
    },
    reUpdate (row) {
      reUpdate({ id: row.id })
        .then(res => {
          this.$message.success('操作成功')
          this.search()
        })
    }
  }
}
</script>