From 856f526f823f5dad88c28657d82f971ff66afb1e Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期一, 15 九月 2025 13:37:01 +0800 Subject: [PATCH] 优化 --- admin/src/views/operation/tram.vue | 42 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 38 insertions(+), 4 deletions(-) diff --git a/admin/src/views/operation/tram.vue b/admin/src/views/operation/tram.vue index 65e7cda..8b07403 100644 --- a/admin/src/views/operation/tram.vue +++ b/admin/src/views/operation/tram.vue @@ -8,6 +8,12 @@ <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="bikeStatuus"> + <el-select v-model="searchForm.bikeStatuus" placeholder="涓婃灦鐘舵��" @change="search"> + <el-option label="涓嬫灦涓�" :value="0" /> + <el-option label="涓婃灦涓�" :value="1" /> + </el-select> + </el-form-item> <el-form-item label="鐢甸噺鎯呭喌" prop="lowVoltage"> <el-select v-model="searchForm.lowVoltage" placeholder="鐢甸噺鎯呭喌" @change="search"> <el-option label="姝e父" :value="0" /> @@ -24,13 +30,14 @@ <ul class="toolbar" v-permissions="['business:sites:create']"> <li><el-button type="primary" @click="$refs.TramEditRef.open('鏂板杞﹁締')" icon="el-icon-plus" v-permissions="['business:sites:create']">鏂板缓</el-button></li> - <li><el-button @click="handleDelAll">鎵归噺鍒犻櫎</el-button></li> + <li><el-button type="danger" @click="handleDelAll">鎵归噺鍒犻櫎</el-button></li> <li v-permissions="['system:user:create']"> <ImportButton text="瀵煎叆" template-name="鐢佃溅妯℃澘.xlsx" template-path="/template/tram_import_tem.xlsx" action="/business/bikes/importExcel" @success="search" /> </li> - <li><el-button :loading="downLoading" @click="handleDownAll" - v-permissions="['business:sites:create']">鎵归噺涓嬭浇浜岀淮鐮�</el-button></li> + <li><el-button type="primary" :loading="downLoading" @click="handleDownAll" >鎵归噺涓嬭浇浜岀淮鐮�</el-button></li> + <li><el-button type="primary" @click="handleStatusAll(1)">鎵归噺涓婃灦</el-button></li> + <li><el-button type="danger" @click="handleStatusAll(0)">鎵归噺涓嬫灦</el-button></li> </ul> <el-table @selection-change="handleSelectionChange" v-loading="isWorking.search" :data="tableData.list" stripe border> @@ -44,9 +51,19 @@ <span :class="{ red: row.lowVoltage == 1 }">{{ row.lowVoltage == 0 ? '姝e父' : '浣庣數閲�' }}</span> </template> </el-table-column> + <el-table-column label="涓婃灦鐘舵��" width="80px" align="center"> + <template v-slot="{ row }"> + <span :class="row.bikeStatus !== 1?'red':'green'">{{ row.bikeStatus !== 1 ? '宸蹭笅鏋�' : '宸蹭笂鏋�' }}</span> + </template> + </el-table-column> <el-table-column prop="siteId" label="绔欑偣缂栧彿" min-width="100px" align="center"></el-table-column> <el-table-column prop="siteName" label="绔欑偣鍚嶇О" min-width="100px" align="center"></el-table-column> <el-table-column prop="heartDate" label="鏈�鍚庨�氳鏃堕棿" min-width="100px" align="center"></el-table-column> + <el-table-column label="鏄惁鍦ㄧ嚎" width="80px" align="center"> + <template v-slot="{ row }"> + <span :class="row.isOnline == 0?'red':'green'" >{{ row.isOnline == 0 ? '绂荤嚎' : '鍦ㄧ嚎' }}</span> + </template> + </el-table-column> <el-table-column v-if="containPermissions(['business:sites:update', 'business:sites:delete'])" label="鎿嶄綔" min-width="160" align="center" fixed="right"> <template slot-scope="{row}"> @@ -85,7 +102,7 @@ import QRcode from './components/QRcode' import ImportButton from '@/components/common/ImportButton' import { tranListPost } from '@/api/business/bikes.js' -import { qrcodeBike, qrcodeBikeList, deleteBatchById } from '@/api/business/bikes.js' +import { qrcodeBike, qrcodeBikeList, updateBikeStatusBatch,deleteBatchById } from '@/api/business/bikes.js' import { Message } from 'element-ui' export default { name: 'bikes', @@ -109,6 +126,7 @@ lowVoltage: '', ip: '', type: 1, + bikeStatuus: null, clientVersion: '' }, imgurl: '', @@ -149,6 +167,22 @@ }) }) }, + handleStatusAll (status) { + const { selList } = this + if (selList.length == 0) return Message.warning('璇峰厛閫夋嫨澶勭悊鐨勮溅杈�') + this.$confirm('鎮ㄧ‘璁よ澶勭悊閫変腑鐨勮溅杈嗗悧锛�', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning', + }).then(() => { + updateBikeStatusBatch({ bikeStatus: status, ids: selList.map(i => i.id).join() }).then(res => { + if (res) { + this.search(1) + Message.success('鎿嶄綔鎴愬姛') + } + }) + }) + }, handlePri(row) { this.imgurl = null qrcodeBike({ fouce: 0, bikeId: row.id }).then(res => { -- Gitblit v1.9.3