|  |  |  | 
|---|
|  |  |  | <template> | 
|---|
|  |  |  | <TableLayout :permissions="['business:ywpatrolpoint: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="请输入巡检点名称/编码" @keypress.enter.native="search"></el-input> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item label="巡检区域"> | 
|---|
|  |  |  | <el-cascader v-model="searchForm.areaIds" @change="changeSel" placeholder="请选择巡检区域" clearable | 
|---|
|  |  |  | :options="areaList" :props="{ | 
|---|
|  |  |  | label: 'name', | 
|---|
|  |  |  | value: 'id', | 
|---|
|  |  |  | children: 'childCategoryList', | 
|---|
|  |  |  | checkStrictly: true | 
|---|
|  |  |  | }"></el-cascader> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <section> | 
|---|
|  |  |  | <el-button type="primary" @click="search">搜索</el-button> | 
|---|
|  |  |  | <el-button type="primary" :loading="isWorking.export" v-permissions="['business:ywpatrolline:exportExcel']" | 
|---|
|  |  |  | @click="exportExcel">导出</el-button> | 
|---|
|  |  |  | <el-button @click="reset">重置</el-button> | 
|---|
|  |  |  | </section> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | <!-- 表格和分页 --> | 
|---|
|  |  |  | <template v-slot:table-wrap> | 
|---|
|  |  |  | <ul class="toolbar" v-permissions="['business:ywpatrolpoint:create', 'business:ywpatrolpoint:delete']"> | 
|---|
|  |  |  | <li><el-button type="primary" @click="$refs.operaYwPatrolPointWindow.open('新建巡检点')" icon="el-icon-plus" | 
|---|
|  |  |  | <li><el-button type="primary" @click="editClick()" icon="el-icon-plus" | 
|---|
|  |  |  | v-permissions="['business:ywpatrolpoint:create']">新建</el-button></li> | 
|---|
|  |  |  | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" | 
|---|
|  |  |  | v-permissions="['business:ywpatrolpoint:delete']">删除</el-button></li> | 
|---|
|  |  |  | </ul> | 
|---|
|  |  |  | <el-table 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="status" label="状态 0启用 1禁用" min-width="100px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="code" label="巡检点编码" min-width="100px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="name" label="巡检点名称" min-width="100px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="deviceName" label="关联设备" min-width="100px"></el-table-column> | 
|---|
|  |  |  | <el-table-column prop="areaName" label="巡检区域" min-width="100px"></el-table-column> | 
|---|
|  |  |  | <el-table-column v-if="containPermissions(['business:ywpatrolpoint:update', 'business:ywpatrolpoint:delete'])" | 
|---|
|  |  |  | label="操作" min-width="120" fixed="right"> | 
|---|
|  |  |  | <template slot-scope="{row}"> | 
|---|
|  |  |  | <el-button type="text" @click="$refs.operaYwPatrolPointWindow.open('编辑巡检点', row)" icon="el-icon-edit" | 
|---|
|  |  |  | <el-button type="text" @click="editClick(row)" icon="el-icon-edit" | 
|---|
|  |  |  | v-permissions="['business:ywpatrolpoint:update']">编辑</el-button> | 
|---|
|  |  |  | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" | 
|---|
|  |  |  | v-permissions="['business:ywpatrolpoint:delete']">删除</el-button> | 
|---|
|  |  |  | 
|---|
|  |  |  | import TableLayout from '@/layouts/TableLayout' | 
|---|
|  |  |  | import Pagination from '@/components/common/Pagination' | 
|---|
|  |  |  | import OperaYwPatrolPointWindow from './components/OperaYwPatrolPointWindow' | 
|---|
|  |  |  | import { fetchList } from '@/api/business/category' | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | name: 'YwPatrolPoint', | 
|---|
|  |  |  | extends: BaseTable, | 
|---|
|  |  |  | 
|---|
|  |  |  | imgurl: '', | 
|---|
|  |  |  | areaId: '', | 
|---|
|  |  |  | addr: '' | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | areaList: [] | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | created() { | 
|---|
|  |  |  | 
|---|
|  |  |  | 'field.main': 'id' | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | this.search() | 
|---|
|  |  |  | this.getProject() | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | getProject() { | 
|---|
|  |  |  | fetchList({ | 
|---|
|  |  |  | model: {type: 4}, | 
|---|
|  |  |  | capacity: 1000, | 
|---|
|  |  |  | page: 1, | 
|---|
|  |  |  | }).then(res => { | 
|---|
|  |  |  | this.areaList = res.records || [] | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | editClick(row) { | 
|---|
|  |  |  | if (row && row.id) { | 
|---|
|  |  |  | this.$refs.operaYwPatrolPointWindow.open('编辑巡检点', row) | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$refs.operaYwPatrolPointWindow.open('新建巡检点') | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // this.$refs.operaYwPatrolPointWindow.initData() | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | changeSel(e) { | 
|---|
|  |  |  | if (e && e.length == 1) { | 
|---|
|  |  |  | this.$set(this.searchForm, 'catePId', e[0]) | 
|---|
|  |  |  | this.$set(this.searchForm, 'cateId', '') | 
|---|
|  |  |  | } else if (e && e.length == 2) { | 
|---|
|  |  |  | this.$set(this.searchForm, 'catePId', e[0]) | 
|---|
|  |  |  | this.$set(this.searchForm, 'cateId', e[1]) | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$set(this.searchForm, 'catePId', '') | 
|---|
|  |  |  | this.$set(this.searchForm, 'cateId', '') | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.search() | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </script> | 
|---|