From 19824ba58a83eb98c0ed547067fbe988875b7283 Mon Sep 17 00:00:00 2001 From: doum <doum> Date: 星期一, 29 九月 2025 17:08:05 +0800 Subject: [PATCH] 最新版本541200007 --- admin/src/api/business/warning.js | 6 + admin/src/views/business/warningRule.vue | 104 +++++++---------- admin/src/components/business/OperaWarningRuleWindow.vue | 222 ++++++++++++++++++++++++++++++------ admin/src/views/business/warningPush.vue | 12 - admin/src/api/business/warningRule.js | 4 admin/src/api/business/device.js | 1 6 files changed, 241 insertions(+), 108 deletions(-) diff --git a/admin/src/api/business/device.js b/admin/src/api/business/device.js index 207ca0b..7259c4a 100644 --- a/admin/src/api/business/device.js +++ b/admin/src/api/business/device.js @@ -12,6 +12,7 @@ return request.post('/visitsAdmin/cloudService/business/hksync/syncDevices', data) } + // 鑾峰彇闂ㄧ闆嗗悎-鎻愪緵缁欓棬绂佺粍 export function getList (data) { return request.post('/visitsAdmin/cloudService/business/device/getList', data) diff --git a/admin/src/api/business/warning.js b/admin/src/api/business/warning.js index e81fa5e..a18378e 100644 --- a/admin/src/api/business/warning.js +++ b/admin/src/api/business/warning.js @@ -14,6 +14,12 @@ download: true }) } +export function allList (data) { + return request.post('/visitsAdmin/cloudService/business/warning/allList', data) +} +export function regionList (data) { + return request.post('/visitsAdmin/cloudService/business/hksync/regionList', data) +} export function updateStatus (data) { return request.post('/visitsAdmin/cloudService/business/warning/updateStatus', data) } diff --git a/admin/src/api/business/warningRule.js b/admin/src/api/business/warningRule.js index 15a1602..16bf530 100644 --- a/admin/src/api/business/warningRule.js +++ b/admin/src/api/business/warningRule.js @@ -19,7 +19,9 @@ export function create (data) { return request.post('/visitsAdmin/cloudService/business/warningRule/create', data) } - +export function updateStatus (data) { + return request.post('/visitsAdmin/cloudService/business/warning/updateStatus', data) +} // 淇敼 export function updateById (data) { return request.post('/visitsAdmin/cloudService/business/warningRule/updateById', data) diff --git a/admin/src/components/business/OperaWarningRuleWindow.vue b/admin/src/components/business/OperaWarningRuleWindow.vue index 5635278..2f8126f 100644 --- a/admin/src/components/business/OperaWarningRuleWindow.vue +++ b/admin/src/components/business/OperaWarningRuleWindow.vue @@ -1,43 +1,57 @@ <template> <GlobalWindow :title="title" + width="50%" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm" > + <p class="tip-warn"><i class="el-icon-warning"></i>鎿嶄綔璇存槑锛�<br> + 1.璇锋寜闇�閰嶇疆鎺ㄩ�佽鍒欙紝閰嶉�佸涓鍒欐椂锛屽嵆涓哄涓鍒欐弧瓒虫椂鎵嶆帹閫�;<br> + 2.鍙戠敓鍖哄煙闈炲繀濉紝涓嶅~鍒欒〃绀鸿瑙勫垯涓嬫墍鏈夊尯鍩熺殑鐩稿簲鎶ヨ绫诲瀷鍧囬�氱煡;<br> + </p> <el-form :model="form" ref="form" :rules="rules"> - <el-form-item label="鍒涘缓浜虹紪鐮�" prop="creator"> - <el-input v-model="form.creator" placeholder="璇疯緭鍏ュ垱寤轰汉缂栫爜" v-trim/> + <el-form-item label="閫夋嫨绛惧埌閫氱煡浜哄憳" prop="memberIds" style="margin-bottom: 30px" > + <el-select v-model="memberSelect" filterable multiple clearable placeholder="璇烽�夋嫨" @change="changeMembers"> + <el-option v-for="item in memberList" :key="'member_'+item.id" :label="item.name+'-'+item.companyName" :value="item.id+''"> + </el-option> + </el-select> </el-form-item> - <el-form-item label="鍒涘缓鏃堕棿" prop="createDate"> - <el-date-picker v-model="form.createDate" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ュ垱寤烘椂闂�"></el-date-picker> + <div style="display: flex;" v-for="(item,index) in form.detailList" :key="'region_'+item.random" > + <span style="line-height: 32px;font-size: 14px;"><b style="color: #F56C6C;margin-right: 4px;font-size: 11px;">*</b>{{'瑙勫垯'+(index +1)}}</span> + <el-form-item label="" style="display: inline-block;margin-left: 10px; " > + <el-select v-model="item.warningId" filterable placeholder="璇烽�夋嫨鎶ヨ绫诲瀷" > + <el-option v-for="item in warningList" :label="item.name" :value="item.id"> </el-option> + </el-select> + </el-form-item> + <el-form-item label="" style="display: inline-block;margin-left: 10px"> +<!-- <el-select v-model="item.regionId" filterable multiple clearable placeholder="璇烽�夋嫨鍙戠敓鍖哄煙" > + <el-option v-for="item in regionList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select>--> + <treeselect + style="width: 200px;height:32px;display: inline-block" + @input="changeSel(index)" + v-model="item.regionId" + placeholder="璇烽�夋嫨鍙戠敓鍖哄煙" + :options="regionList" + :normalizer="normalizeOptions" + :default-expand-level="1" + noChildrenText="娌℃湁瀛愰�夐」" + noOptionsText="娌℃湁鍙�夐」" + noResultsText="娌℃湁鍖归厤鐨勭粨鏋�" /> + </el-form-item> + <el-button type="danger" style="margin-left: 10px;height: 32px; " @click="delDo(index)" v-if="index>0 || form.detailList.length>1">鍒犻櫎</el-button> + </div> + <el-button type="primary" style="margin-left: 10px;margin-bottom: 20px;" @click="addDo">澧炲姞瑙勫垯</el-button> + <el-form-item label="鐘舵��" prop="status"> + <el-radio-group v-model="form.status"> + <el-radio :label="0" :value="0">绂佺敤</el-radio> + <el-radio :label="1" :value="1">鍚敤</el-radio> + </el-radio-group> </el-form-item> - <el-form-item label="鏇存柊浜虹紪鐮�" prop="editor"> - <el-input v-model="form.editor" placeholder="璇疯緭鍏ユ洿鏂颁汉缂栫爜" v-trim/> - </el-form-item> - <el-form-item label="鏇存柊鏃堕棿" prop="editDate"> - <el-date-picker v-model="form.editDate" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ユ洿鏂版椂闂�"></el-date-picker> - </el-form-item> - <el-form-item label="鏄惁鍒犻櫎0鍚� 1鏄�" prop="isdeleted"> - <el-input v-model="form.isdeleted" placeholder="璇疯緭鍏ユ槸鍚﹀垹闄�0鍚� 1鏄�" v-trim/> - </el-form-item> - <el-form-item label="澶囨敞" prop="info"> - <el-input v-model="form.info" placeholder="璇疯緭鍏ュ娉�" v-trim/> - </el-form-item> - <el-form-item label="鍐呴儴浜哄憳缂栫爜锛堝叧鑱攎ember)" prop="memberId"> - <el-input v-model="form.memberId" placeholder="璇疯緭鍏ュ唴閮ㄤ汉鍛樼紪鐮侊紙鍏宠仈member)" v-trim/> - </el-form-item> - <el-form-item label="澶氳鍒欓棿闅旀椂闂�(绉掞級" prop="intervalSec"> - <el-input v-model="form.intervalSec" placeholder="璇疯緭鍏ュ瑙勫垯闂撮殧鏃堕棿(绉掞級" v-trim/> - </el-form-item> - <el-form-item label="鎺掑簭鐮�" prop="sortnum"> - <el-input v-model="form.sortnum" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/> - </el-form-item> - <el-form-item label="鐘舵�� 0绂佺敤 1鍚敤" prop="status"> - <el-input v-model="form.status" placeholder="璇疯緭鍏ョ姸鎬� 0绂佺敤 1鍚敤" v-trim/> - </el-form-item> - <el-form-item label="鎶ヨ绫诲瀷缂栫爜(鍏宠仈warning锛�" prop="warningId"> - <el-input v-model="form.warningId" placeholder="璇疯緭鍏ユ姤璀︾被鍨嬬紪鐮�(鍏宠仈warning锛�" v-trim/> + <el-form-item label="鍙戠敓闂撮殧鏃堕棿(绉掞級" prop="intervalSec"> + <el-input type="number" v-model="form.intervalSec" placeholder="璇疯緭鍏ュ瑙勫垯闂撮殧鏃堕棿(绉掞級" v-trim/> </el-form-item> </el-form> </GlobalWindow> @@ -46,6 +60,8 @@ <script> import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' +import { allList } from '@/api/business/member' +import { allList as warningList, regionList } from '@/api/business/warning' export default { name: 'OperaWarningRuleWindow', extends: BaseOpera, @@ -55,20 +71,20 @@ // 琛ㄥ崟鏁版嵁 form: { id: null, - creator: '', - createDate: '', - editor: '', - editDate: '', - isdeleted: '', - info: '', - memberId: '', + memberIds: '', intervalSec: '', sortnum: '', - status: '', - warningId: '' + status: 0, + detailList: [{ random:Math.random(),regionId: null, regionName: null, regionCode: null ,warningId:null}] }, + memberSelect: [], + memberList: [], + warningList: [], + regionList: [], // 楠岃瘉瑙勫垯 rules: { + memberIds: [{ required: true, message: '璇烽�夋嫨閫氱煡浜哄憳', tigger: 'blur' }], + status: [{ required: true, message: '璇烽�夋嫨鐘舵��'}] } } }, @@ -77,6 +93,134 @@ api: '/business/warningRule', 'field.id': 'id' }) + }, + methods: { + normalizeOptions (node) { + if (!node.childList || !node.childList.length) { + // 鍘绘帀children=[]鐨刢hildren灞炴�� + delete node.childList + } + return { + id: node.indexCode, + label: node.name, + children: node.childList + } + }, + changeSel(opt){ + var item = this.form.detailList[opt] + this.form.detailList[opt].regionCode = null + this.form.detailList[opt].regionName = null + if(item.regionId){ + var reg = this.getSelectedObject(item.regionId) + if(reg){ + this.form.detailList[opt].regionCode = reg.indexCode + this.form.detailList[opt].regionName = reg.name + } + } + console.log(" this.form.detailList[opt]",reg, this.form.detailList[opt]) + }, + getSelectedObject(id) { + if (!id) { + return null // 娌℃湁閫変腑椤规椂杩斿洖 null 鎴� {} 鏍规嵁闇�瑕佸鐞� + } + const findSelected = (options) => { + for (const option of options) { + if (option.indexCode === id) { + return option // 杩斿洖鍖归厤鐨勫畬鏁村璞� + } else if (option.childList && option.childList.length > 0) { + const found = findSelected(option.childList) // 閫掑綊鎼滅储瀛愰�夐」 + if (found) return found // 濡傛灉鎵惧埌杩斿洖璇ュ璞� + } + } + return null; // 鏈壘鍒拌繑鍥� null 鎴� {} 鏍规嵁闇�瑕佸鐞� + } + return findSelected(this.regionList); // 寮�濮嬫悳绱㈠苟杩斿洖缁撴灉 + }, + addDo () { + this.form.detailList.push({random:Math.random(), regionId: null, regionName: null, regionCode: null,warningId:null }) + }, + delDo (index) { + if (this.form.detailList.length > 1 && this.form.detailList.length > index) { + this.form.detailList.splice(index, 1) + } + }, + changeMembers () { + console.log(this.memberSelect) + this.form.memberIds = '' + if (!this.memberSelect || !this.memberSelect.length) { + return + } + this.form.memberIds = this.memberSelect.join(',') + }, + open (title, target) { + this.memberSelect =[] + this.title = title + this.loadMember() + this.loadRegions() + this.loadWarning() + this.visible = true + this.form = { + id: null, + memberIds: '', + intervalSec: '', + sortnum: '', + status: 0, + detailList: [{ random:Math.random(),regionId: null, regionName: null, regionCode: null,warningId:null }] + } + // 鏂板缓 + if (target == null) { + this.$nextTick(() => { + this.$refs.form.resetFields() + this.form[this.configData['field.id']] = null + }) + return + } + // 缂栬緫 + this.$nextTick(() => { + for (const key in this.form) { + this.form[key] = target[key] + } + if (!this.form.detailList || !this.form.detailList.length) { + this.form.detailList = [{ random:Math.random(),regionId: null, regionName: null, regionCode: null,warningId:null }] + } + if(this.form.memberIds){ + this.memberSelect = this.form.memberIds.split(",") + } + }) + }, + loadMember () { + allList({ + type: 2 + }).then(res => { + this.memberList = res + }) + }, + loadWarning () { + warningList({ + }).then(res => { + this.warningList = res + }) + }, + loadRegions () { + regionList({ + }).then(res => { + this.regionList = res + }) + } } } </script> +<style scoped lang="scss"> +.inline { + width: 178px; +} +.vue-treeselect { + line-height: 30px; + ::v-deep .vue-treeselect__control { + height: 32px; + .vue-treeselect__single-value { + line-height: 30px; + } + } +} +</style> diff --git a/admin/src/views/business/warningPush.vue b/admin/src/views/business/warningPush.vue index 0c0b205..ff1d735 100644 --- a/admin/src/views/business/warningPush.vue +++ b/admin/src/views/business/warningPush.vue @@ -2,13 +2,6 @@ <TableLayout :permissions="['business:warningpush:query']"> <!-- 鎼滅储琛ㄥ崟 --> <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> - <el-form-item label="鎶ヨ绫诲瀷" prop="warningId"> - <el-select v-model="searchForm.warningId" 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="warningType"> <el-select v-model="searchForm.warningType" placeholder="璇烽�夋嫨" clearable @change="search"> <el-option label="瀹夐槻浜嬩欢" value="0"></el-option> @@ -23,6 +16,9 @@ </el-form-item> <el-form-item label="鎶ヨ鍐呭" prop="content"> <el-input v-model="searchForm.content" placeholder="璇疯緭鍏ユ姤璀﹀唴瀹�" clearable @keypress.enter.native="search"></el-input> + </el-form-item> + <el-form-item label="閫氱煡浜哄憳" prop="content"> + <el-input v-model="searchForm.memberName" placeholder="璇疯緭鍏ラ�氱煡浜哄憳" clearable @keypress.enter.native="search"></el-input> </el-form-item> <el-form-item label="閫氱煡鐘舵�� " prop="status"> <el-select v-model="searchForm.status" placeholder="璇烽�夋嫨" clearable @change="search"> @@ -88,6 +84,7 @@ <el-table-column prop="region" label="鎵�鍦ㄤ綅缃�" min-width="120px" show-tooltip-when-overflow></el-table-column> <el-table-column prop="content" label="鎶ヨ鍐呭" min-width="180px" show-tooltip-when-overflow></el-table-column> <el-table-column prop="memberName" label="閫氱煡浜哄憳" min-width="100px" show-tooltip-when-overflow></el-table-column> + <el-table-column prop="companyName" label="浜哄憳閮ㄩ棬" min-width="100px" show-tooltip-when-overflow></el-table-column> <el-table-column prop="status" label="閫氱煡鐘舵��" min-width="100px"> <template slot-scope="{row}"> <span style="color: rgba(245, 154, 35, 0.996);" v-if="row.status === 0">鏈�氱煡</span> @@ -134,6 +131,7 @@ searchForm: { id: '', warningId: '', + memberName: null, warningType: null, title: '', content: '', diff --git a/admin/src/views/business/warningRule.vue b/admin/src/views/business/warningRule.vue index c0511a1..ebc0e6d 100644 --- a/admin/src/views/business/warningRule.vue +++ b/admin/src/views/business/warningRule.vue @@ -2,52 +2,27 @@ <TableLayout :permissions="['business:warningrule:query']"> <!-- 鎼滅储琛ㄥ崟 --> <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> - <el-form-item label="涓婚敭" prop="id"> - <el-input v-model="searchForm.id" placeholder="璇疯緭鍏ヤ富閿�" @keypress.enter.native="search"></el-input> + <el-form-item label="鎶ヨ瑙勫垯" prop="info"> + <el-input v-model="searchForm.title" placeholder="璇疯緭鍏ユ姤璀﹁鍒�" clearable @keypress.enter.native="search"></el-input> </el-form-item> - <el-form-item label="鍒涘缓浜虹紪鐮�" prop="creator"> - <el-input v-model="searchForm.creator" placeholder="璇疯緭鍏ュ垱寤轰汉缂栫爜" @keypress.enter.native="search"></el-input> + <el-form-item label="浜哄憳/閮ㄩ棬" prop="memberNames"> + <el-input v-model="searchForm.memberNames" placeholder="璇疯緭鍏ヤ汉鍛樻垨閮ㄩ棬鍚�" clearable @keypress.enter.native="search"></el-input> </el-form-item> - <el-form-item label="鍒涘缓鏃堕棿" prop="createDate"> - <el-date-picker v-model="searchForm.createDate" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ュ垱寤烘椂闂�" @change="search"/> - </el-form-item> - <el-form-item label="鏇存柊浜虹紪鐮�" prop="editor"> - <el-input v-model="searchForm.editor" placeholder="璇疯緭鍏ユ洿鏂颁汉缂栫爜" @keypress.enter.native="search"></el-input> - </el-form-item> - <el-form-item label="鏇存柊鏃堕棿" prop="editDate"> - <el-date-picker v-model="searchForm.editDate" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ユ洿鏂版椂闂�" @change="search"/> - </el-form-item> - <el-form-item label="鏄惁鍒犻櫎0鍚� 1鏄�" prop="isdeleted"> - <el-input v-model="searchForm.isdeleted" placeholder="璇疯緭鍏ユ槸鍚﹀垹闄�0鍚� 1鏄�" @keypress.enter.native="search"></el-input> - </el-form-item> - <el-form-item label="澶囨敞" prop="info"> - <el-input v-model="searchForm.info" placeholder="璇疯緭鍏ュ娉�" @keypress.enter.native="search"></el-input> - </el-form-item> - <el-form-item label="鍐呴儴浜哄憳缂栫爜锛堝叧鑱攎ember)" prop="memberId"> - <el-input v-model="searchForm.memberId" placeholder="璇疯緭鍏ュ唴閮ㄤ汉鍛樼紪鐮侊紙鍏宠仈member)" @keypress.enter.native="search"></el-input> - </el-form-item> - <el-form-item label="澶氳鍒欓棿闅旀椂闂�(绉掞級" prop="intervalSec"> - <el-input v-model="searchForm.intervalSec" placeholder="璇疯緭鍏ュ瑙勫垯闂撮殧鏃堕棿(绉掞級" @keypress.enter.native="search"></el-input> - </el-form-item> - <el-form-item label="鎺掑簭鐮�" prop="sortnum"> - <el-input v-model="searchForm.sortnum" placeholder="璇疯緭鍏ユ帓搴忕爜" @keypress.enter.native="search"></el-input> - </el-form-item> - <el-form-item label="鐘舵�� 0绂佺敤 1鍚敤" prop="status"> - <el-input v-model="searchForm.status" placeholder="璇疯緭鍏ョ姸鎬� 0绂佺敤 1鍚敤" @keypress.enter.native="search"></el-input> - </el-form-item> - <el-form-item label="鎶ヨ绫诲瀷缂栫爜(鍏宠仈warning锛�" prop="warningId"> - <el-input v-model="searchForm.warningId" placeholder="璇疯緭鍏ユ姤璀︾被鍨嬬紪鐮�(鍏宠仈warning锛�" @keypress.enter.native="search"></el-input> + <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> <section> <el-button type="primary" @click="search">鎼滅储</el-button> - <el-button type="primary" :loading="isWorking.export" v-permissions="['business:warningrule: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:warningrule:create', 'business:warningrule:delete']"> - <li><el-button type="primary" @click="$refs.operaWarningRuleWindow.open('鏂板缓鎶ヨ瑙勫垯閰嶇疆琛�')" icon="el-icon-plus" v-permissions="['business:warningrule:create']">鏂板缓</el-button></li> + <li><el-button type="primary" @click="$refs.operaWarningRuleWindow.open('鏂板缓鎶ヨ瑙勫垯閰嶇疆')" icon="el-icon-plus" v-permissions="['business:warningrule:create']">鏂板缓</el-button></li> <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:warningrule:delete']">鍒犻櫎</el-button></li> </ul> <el-table @@ -58,18 +33,17 @@ @selection-change="handleSelectionChange" > <el-table-column type="selection" width="55"></el-table-column> - <el-table-column prop="id" label="涓婚敭" min-width="100px"></el-table-column> - <el-table-column prop="creator" label="鍒涘缓浜虹紪鐮�" min-width="100px"></el-table-column> - <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="100px"></el-table-column> - <el-table-column prop="editor" label="鏇存柊浜虹紪鐮�" min-width="100px"></el-table-column> - <el-table-column prop="editDate" label="鏇存柊鏃堕棿" min-width="100px"></el-table-column> - <el-table-column prop="isdeleted" label="鏄惁鍒犻櫎0鍚� 1鏄�" min-width="100px"></el-table-column> - <el-table-column prop="info" label="澶囨敞" min-width="100px"></el-table-column> - <el-table-column prop="memberId" label="鍐呴儴浜哄憳缂栫爜锛堝叧鑱攎ember)" min-width="100px"></el-table-column> - <el-table-column prop="intervalSec" label="澶氳鍒欓棿闅旀椂闂�(绉掞級" min-width="100px"></el-table-column> - <el-table-column prop="sortnum" 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="warningId" label="鎶ヨ绫诲瀷缂栫爜(鍏宠仈warning锛�" min-width="100px"></el-table-column> + <el-table-column prop="title" label="鎶ヨ瑙勫垯" min-width="200px" show-tooltip-when-overflow></el-table-column> + <el-table-column prop="memberNames" label="鎶ヨ鎺ユ敹浜�" min-width="200px" show-tooltip-when-overflow></el-table-column> + <el-table-column prop="intervalSec" label="闂撮殧鏃堕棿(绉掞級" min-width="100px" ></el-table-column> + <el-table-column prop="status" label="鐘舵��" min-width="100px" > + <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="editDate" label="鏇存柊鏃堕棿" min-width="150px"></el-table-column> <el-table-column v-if="containPermissions(['business:warningrule:update', 'business:warningrule:delete'])" label="鎿嶄綔" @@ -77,7 +51,7 @@ fixed="right" > <template slot-scope="{row}"> - <el-button type="text" @click="$refs.operaWarningRuleWindow.open('缂栬緫鎶ヨ瑙勫垯閰嶇疆琛�', row)" icon="el-icon-edit" v-permissions="['business:warningrule:update']">缂栬緫</el-button> + <el-button type="text" @click="$refs.operaWarningRuleWindow.open('缂栬緫鎶ヨ瑙勫垯閰嶇疆', row)" icon="el-icon-edit" v-permissions="['business:warningrule:update']">缂栬緫</el-button> <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:warningrule:delete']">鍒犻櫎</el-button> </template> </el-table-column> @@ -107,29 +81,37 @@ return { // 鎼滅储 searchForm: { - id: '', - creator: '', - createDate: '', - editor: '', - editDate: '', - isdeleted: '', - info: '', - memberId: '', - intervalSec: '', - sortnum: '', - status: '', - warningId: '' + title: '', + memberNames: '', + status:'', } } }, created () { this.config({ - module: '鎶ヨ瑙勫垯閰嶇疆琛�', + module: '鎶ヨ瑙勫垯閰嶇疆', api: '/business/warningRule', '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> -- Gitblit v1.9.3