| | |
| | | :data="list" |
| | | stripe |
| | | > |
| | | <el-table-column prop="code" label="柜格编号" min-width="100px"></el-table-column> |
| | | <el-table-column prop="code" label="柜格编码" min-width="100px"></el-table-column> |
| | | <el-table-column prop="cabinetName" label="所属钥匙柜" min-width="100px"></el-table-column> |
| | | <el-table-column prop="keyId" label="绑定钥匙" min-width="100px"></el-table-column> |
| | | <el-table-column prop="keyId" label="绑定钥匙" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <el-select v-model="row.keyId" placeholder="请选择"> |
| | | <el-option |
| | | v-for="item in keysAll" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="板号" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <el-input v-model="row.boardCode" placeholder="请输入板号"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="通道号" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <el-input v-model="row.channelCode" placeholder="请输入通道号"></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="状态" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <el-switch |
| | | @change="changeStatus($event, row.id)" |
| | | v-model="row.status" |
| | | active-color="#13ce66" |
| | | inactive-color="#ff4949" |
| | |
| | | <el-link type="success" v-if="row.bindStatus === 1">已绑定</el-link> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="操作" |
| | | min-width="100" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" v-if="row.bindStatus === 0">绑定</el-button> |
| | | <el-button type="text" v-if="row.bindStatus === 1">解绑</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <div style="width: 100%; text-align: right; margin-top: 20px"> |
| | | <el-pagination |
| | | @current-change="handleCurrentChange" |
| | | :current-page="page" |
| | | :page-size="10" |
| | | layout="total, prev, pager, next, jumper" |
| | | :total="total"> |
| | | </el-pagination> |
| | | </div> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import { fetchList } from '@/api/business/jkCabinetGrid' |
| | | import { fetchList, updateStatusById } from '@/api/business/jkCabinetGrid' |
| | | export default { |
| | | name: 'cabinetDetails', |
| | | extends: BaseOpera, |
| | |
| | | bindStatus: '' |
| | | }, |
| | | list: [], |
| | | page: 1, |
| | | total: 0, |
| | | keysAll: [], |
| | | loading: false |
| | | } |
| | | }, |
| | |
| | | this.getList() |
| | | this.visible = true |
| | | }, |
| | | changeStatus(status, id) { |
| | | updateStatusById({ id, status }) |
| | | .then(res => { |
| | | this.getList() |
| | | }) |
| | | }, |
| | | handleCurrentChange(e) { |
| | | this.page = e |
| | | this.getList() |
| | |
| | | this.searchForm.keyId = '' |
| | | this.searchForm.status = '' |
| | | this.searchForm.workingStatus = '' |
| | | this.page = 1 |
| | | this.getList() |
| | | }, |
| | | getList() { |
| | | this.loading = true |
| | | fetchList({ |
| | | capacity: 10, |
| | | page: this.page, |
| | | capacity: 99999, |
| | | page: 1, |
| | | model: { |
| | | cabinetId: this.id, |
| | | keyId: this.searchForm.keyId, |
| | |
| | | workingStatus: this.searchForm.workingStatus |
| | | } |
| | | }).then(res => { |
| | | console.log(res) |
| | | this.list = res.records |
| | | this.total = res.total |
| | | }).finally(() => { |
| | | this.loading = false |
| | | }) |