|  |  | 
 |  |  | <template> | 
 |  |  |   <div class="main_app"> | 
 |  |  |     <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" | 
 |  |  |       @clear="clear"> | 
 |  |  |     <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear"> | 
 |  |  |     </QueryForm> | 
 |  |  |     <!-- <div class="pt16"> | 
 |  |  |       <el-button :loading="exLoading" @click="handleEx" | 
 |  |  |         v-permissions="['business:platformjob:exportExcel']">导出</el-button> | 
 |  |  |     </div> --> | 
 |  |  |     <el-table class="mb20" v-loading="loading" :data="list" stripe> | 
 |  |  |     <div class="pt16 mb10"> | 
 |  |  |       <el-button type="primary" @click="batchStatus(0)" v-permissions="['business:platformjob:update']">批量启用</el-button> | 
 |  |  |       <el-button @click="batchStatus(1)" v-permissions="['business:platformjob:update']">批量禁用</el-button> | 
 |  |  |     </div> | 
 |  |  |     <el-table @selection-change="handleSelectionChange" class="mb20" v-loading="loading" :data="list" stripe> | 
 |  |  |       <el-table-column align="center" type="selection" width="55"> | 
 |  |  |       </el-table-column> | 
 |  |  |       <el-table-column prop="name" label="消息标题" min-width="160" show-overflow-tooltip /> | 
 |  |  |       <el-table-column prop="code" label="消息编码" min-width="150" show-overflow-tooltip /> | 
 |  |  |       <el-table-column prop="content" label="消息模板" min-width="300" show-overflow-tooltip /> | 
 |  |  |       <el-table-column label="状态" width="120" align="center" fixed="right"> | 
 |  |  |         <template v-slot="scope"> | 
 |  |  |           <el-switch v-model="scope.row.status" @change="changeStatus(scope.row)" :active-value="0" :inactive-value="1"> | 
 |  |  |           </el-switch>   | 
 |  |  |           <el-switch v-permissions="['business:platformjob:update']" v-model="scope.row.status" | 
 |  |  |             @change="changeStatus(scope.row)" :active-value="0" :inactive-value="1"> | 
 |  |  |           </el-switch> | 
 |  |  |         </template> | 
 |  |  |       </el-table-column> | 
 |  |  |     </el-table> | 
 |  |  | 
 |  |  | <script> | 
 |  |  | import Pagination from '@/components/common/Pagination' | 
 |  |  | import QueryForm from '@/components/common/QueryForm' | 
 |  |  | import { getSmsList, SmsStatusUpdate } from '@/api/system/sms' | 
 |  |  | import { getSmsList, SmsStatusUpdate, SmsStatussUpdate } from '@/api/system/sms' | 
 |  |  |  | 
 |  |  | import GlobalWindow from '@/components/common/GlobalWindow' | 
 |  |  | import { Message } from 'element-ui' | 
 |  |  | 
 |  |  |   }, | 
 |  |  |   data() { | 
 |  |  |     return { | 
 |  |  |       ids: [], | 
 |  |  |       isShowDetail: false, | 
 |  |  |       exLoading: false, | 
 |  |  |       loading: false, | 
 |  |  | 
 |  |  |     this.getList() | 
 |  |  |   }, | 
 |  |  |   methods: { | 
 |  |  |     handleSelectionChange(val) { | 
 |  |  |       this.ids = val.map(i => i.id) | 
 |  |  |       console.log('ids', this.ids) | 
 |  |  |     }, | 
 |  |  |     batchStatus(status) { | 
 |  |  |       const { ids } = this | 
 |  |  |       if (ids.length == 0) return Message.error('请先选择要更改的短信通知') | 
 |  |  |       this.$confirm(`确定${status == 0 ? '启用' : '禁用'}选中的所有短信通知吗?`, '提示', { | 
 |  |  |         confirmButtonText: '确定', | 
 |  |  |         cancelButtonText: '取消', | 
 |  |  |         type: 'warning' | 
 |  |  |       }).then(() => { | 
 |  |  |         SmsStatussUpdate({ | 
 |  |  |           ids: ids.join(','), | 
 |  |  |           status | 
 |  |  |         }).then(res => { | 
 |  |  |           Message.success('批量更新成功') | 
 |  |  |           this.getList() | 
 |  |  |         }, () => { | 
 |  |  |           this.getList() | 
 |  |  |         }) | 
 |  |  |       }) | 
 |  |  |  | 
 |  |  |     }, | 
 |  |  |     changeStatus(row) { | 
 |  |  |       console.log('row', row); | 
 |  |  |       console.log('row', row) | 
 |  |  |       SmsStatusUpdate({ | 
 |  |  |         ...row | 
 |  |  |       }).then(res => { | 
 |  |  | 
 |  |  |         this.loading = false | 
 |  |  |       }) | 
 |  |  |     }, | 
 |  |  |     | 
 |  |  |      | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     clear() { | 
 |  |  |       this.pagination.page = 1 | 
 |  |  |       this.filters = {} | 
 |  |  | 
 |  |  |     }, | 
 |  |  |     handleSizeChange(capacity) { | 
 |  |  |       this.pagination.pageSize = capacity | 
 |  |  |       this.getList() | 
 |  |  |     } | 
 |  |  |   } | 
 |  |  | } |