| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:warning:query']"> |
| | | <!-- æç´¢è¡¨å --> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="åç§°" prop="name"> |
| | | <el-input v-model="searchForm.name" placeholder="请è¾å
¥æ¶é´åç§°" clearable @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="æ¥è¦åç±»" prop="type"> |
| | | <el-select v-model="searchForm.type" placeholder="è¯·éæ©" clearable @change="search"> |
| | | <el-option label="å®é²äºä»¶" value="0"></el-option> |
| | | <el-option label="æ¶é²äºä»¶" value="1"></el-option> |
| | | <el-option label="车载äºä»¶" value="2"></el-option> |
| | | <el-option label="é¥åæäºä»¶" value="3"></el-option> |
| | | <el-option label="天æ°é¢è¦" value="4"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="æ¥è¦ç级" prop="level" > |
| | | <el-select v-model="searchForm.level" placeholder="è¯·éæ©" clearable @change="search"> |
| | | <el-option label="ä½" value="0"></el-option> |
| | | <el-option label="ä¸" value="1"></el-option> |
| | | <el-option label="é«" value="2"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="订é
ç¶æ" prop="status" > |
| | | <el-select v-model="searchForm.status" placeholder="è¯·éæ©" clearable @change="search"> |
| | | <el-option label="æªè®¢é
" value="0"></el-option> |
| | | <el-option label="已订é
" value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="订é
ç»æ" prop="subscribeStatus" @change="search"> |
| | | <el-select v-model="searchForm.subscribeStatus" placeholder="è¯·éæ©" clearable @change="search"> |
| | | <el-option label="æªè®¢é
" value="0"></el-option> |
| | | <el-option label="订é
æå" value="1"></el-option> |
| | | <el-option label="订é
失败" value="2"></el-option> |
| | | </el-select> |
| | | </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:warning:create', 'business:warning:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaWarningWindow.open('æ°å»ºæ¥è¦è®°å½ä¿¡æ¯è¡¨')" icon="el-icon-plus" v-permissions="['business:warning:create']">æ°å»º</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" type="danger" icon="el-icon-delete" v-permissions="['business:warning: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="name" label="æ¥è¦ç±»å" min-width="100px"></el-table-column> |
| | | <el-table-column prop="type" label="æ¥è¦åç±»" min-width="120px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.type === 0">å®é²äºä»¶</span> |
| | | <span v-if="row.type === 1" >æ¶é²äºä»¶</span> |
| | | <span v-if="row.type === 2" >车载äºä»¶</span> |
| | | <span v-if="row.type === 3" >é¥åæäºä»¶</span> |
| | | <span v-if="row.type === 4" >天æ°é¢è¦</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="level" label="æ¥è¦ç级" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.level === 0" class="status-grey">ä½</span> |
| | | <span v-if="row.level === 1" class="status-yellow" >ä¸</span> |
| | | <span v-if="row.level === 2" class="status-red">é«</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="status" label="订é
ç¶æ" min-width="160px"> |
| | | <template slot-scope="{row}"> |
| | | <el-switch @change="changeStatus($event, row)" v-model="row.status" active-color="#13ce66" |
| | | inactive-color="#ff4949" :active-value="1" :inactive-value="0" > |
| | | </el-switch> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="subscribeStatus" label="订é
ç»æ" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="!row.subscribeStatus || row.subscribeStatus === 0" class="status-grey">æªè®¢é
</span> |
| | | <span v-if="row.subscribeStatus === 1" class="status-yellow" >订é
æå</span> |
| | | <span v-if="row.subscribeStatus === 2" class="status-red">订é
失败</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="sortnum" label="æåºç " min-width="100px"></el-table-column> |
| | | <el-table-column prop="editDate" label="æ´æ°æ¶é´" min-width="100px"></el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:warning:update', 'business:warning:delete'])" |
| | | label="æä½" |
| | | min-width="120" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaWarningWindow.open('ç¼è¾æ¥è¦è®°å½ä¿¡æ¯è¡¨', row)" icon="el-icon-edit" v-permissions="['business:warning:update']">ç¼è¾</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" style="color: red" v-permissions="['business:warning:delete']">å é¤</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | > |
| | | </pagination> |
| | | </template> |
| | | <!-- æ°å»º/ä¿®æ¹ --> |
| | | <OperaWarningWindow ref="operaWarningWindow" @success="handlePageChange"/> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import OperaWarningWindow from '@/components/business/OperaWarningWindow' |
| | | export default { |
| | | name: 'Warning', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination, OperaWarningWindow }, |
| | | data () { |
| | | return { |
| | | // æç´¢ |
| | | searchForm: { |
| | | name: '', |
| | | type: '', |
| | | level: '', |
| | | status: '', |
| | | subscribeStatus: '' |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: 'æ¥è¦è®°å½ä¿¡æ¯è¡¨', |
| | | api: '/business/warning', |
| | | 'field.id': 'id', |
| | | 'field.main': 'id' |
| | | }) |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | changeStatus (e, row) { |
| | | this.working = true |
| | | this.api.updateStatus({ id: row.id, status: e }) |
| | | .then(res => { |
| | | this.$tip.apiSuccess(res || 'æä½æå') |
| | | this.search() |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.working = false |
| | | }) |
| | | .catch(() => { }) |
| | | } |
| | | } |
| | | } |
| | | </script> |