|  |  |  | 
|---|
|  |  |  | <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 :height="tableHeightNew" @selection-change="handleSelectionChange" class="mb40" 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' | 
|---|
|  |  |  | import BaseComputHeight from '@/components/base/BaseComputHeight' | 
|---|
|  |  |  | import dayjs from 'dayjs' | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | extends: BaseComputHeight, | 
|---|
|  |  |  | components: { | 
|---|
|  |  |  | Pagination, | 
|---|
|  |  |  | QueryForm, | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 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 = {} | 
|---|
|  |  |  | this.getList() | 
|---|
|  |  |  | this.getList(1) | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleSizeChange(capacity) { | 
|---|
|  |  |  | this.pagination.pageSize = capacity | 
|---|
|  |  |  | this.getList(1) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | color: #000000; | 
|---|
|  |  |  | margin-bottom: 15px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | </style> | 
|---|