ll
liukangdong
2024-10-12 ac9336875dea20beef20a2fee481929b882d2a15
admin/src/views/system/smsMessage.vue
@@ -1,19 +1,21 @@
<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 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>
@@ -25,7 +27,7 @@
<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'
@@ -38,6 +40,7 @@
  },
  data() {
    return {
      ids: [],
      isShowDetail: false,
      exLoading: false,
      loading: false,
@@ -78,8 +81,32 @@
    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 => {