通知消息完善
parent
1a27dbaac0
commit
70f8983d0a
|
@ -1,6 +1,6 @@
|
|||
import django_filters
|
||||
|
||||
from apps.system.models import DictDetails, DictData, ConfigSettings
|
||||
from apps.system.models import DictDetails, DictData, ConfigSettings, MessagePush
|
||||
|
||||
|
||||
class DictDataFilter(django_filters.rest_framework.FilterSet):
|
||||
|
@ -32,3 +32,12 @@ class ConfigSettingsFilter(django_filters.rest_framework.FilterSet):
|
|||
class Meta:
|
||||
model = ConfigSettings
|
||||
fields = '__all__'
|
||||
|
||||
class MessagePushFilter(django_filters.rest_framework.FilterSet):
|
||||
"""
|
||||
消息通知 简单过滤器
|
||||
"""
|
||||
|
||||
class Meta:
|
||||
model = MessagePush
|
||||
fields = '__all__'
|
||||
|
|
|
@ -4,4 +4,5 @@ from ..models.dict_details import DictDetails
|
|||
from ..models.web_set import WebSet
|
||||
from ..models.save_file import SaveFile
|
||||
from ..models.message_push import MessagePush
|
||||
from ..models.message_push import MessagePushUser
|
||||
|
||||
|
|
|
@ -11,11 +11,12 @@ from apps.permission.models import UserProfile
|
|||
|
||||
|
||||
class MessagePush(CoreModel):
|
||||
title = CharField(max_length=128, verbose_name="通知标题")
|
||||
content = TextField(verbose_name="通知内容")
|
||||
title = CharField(max_length=128, verbose_name="消息标题")
|
||||
content = TextField(verbose_name="消息内容")
|
||||
message_type = CharField(max_length=8, verbose_name="消息类型")
|
||||
is_reviewed = BooleanField(default=True, verbose_name="是否审核")
|
||||
status = CharField(max_length=8, verbose_name="消息状态")
|
||||
to_path = CharField(max_length=256, verbose_name="跳转路径", null=True, blank=True, )
|
||||
user = ManyToManyField(to="permission.UserProfile",
|
||||
related_name="user", related_query_name="user_query", through='MessagePushUser',
|
||||
through_fields=('message_push', 'user'))
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
from rest_framework import serializers
|
||||
|
||||
from apps.op_drf.serializers import CustomModelSerializer
|
||||
from apps.permission.serializers import UserProfileSerializer
|
||||
from apps.system.models import DictData, DictDetails, ConfigSettings, SaveFile, MessagePush
|
||||
from apps.system.models import DictData, DictDetails, ConfigSettings, SaveFile, MessagePush, MessagePushUser
|
||||
|
||||
|
||||
# ================================================= #
|
||||
|
@ -162,11 +161,6 @@ class MessagePushSerializer(CustomModelSerializer):
|
|||
"""
|
||||
消息通知 简单序列化器
|
||||
"""
|
||||
# users = UserProfileSerializer(read_only=True)
|
||||
users = serializers.SerializerMethodField(read_only=True)
|
||||
|
||||
def get_users(self, obj):
|
||||
return UserProfileSerializer(obj.user.all(), many=True).data
|
||||
|
||||
class Meta:
|
||||
model = MessagePush
|
||||
|
@ -200,3 +194,25 @@ class ExportMessagePushSerializer(CustomModelSerializer):
|
|||
fields = (
|
||||
'id', 'title', 'content', 'message_type', 'is_reviewed', 'status', 'users', 'creator', 'modifier',
|
||||
'update_datetime', 'create_datetime')
|
||||
|
||||
class MessagePushUserSerializer(CustomModelSerializer):
|
||||
"""
|
||||
消息通知 用户查询简单序列化器
|
||||
"""
|
||||
# users = UserProfileSerializer(read_only=True)
|
||||
# users = serializers.SerializerMethodField(read_only=True)
|
||||
is_read = serializers.SerializerMethodField(read_only=True)
|
||||
|
||||
# def get_users(self, obj):
|
||||
# return UserProfileSerializer(obj.user.all(), many=True).data
|
||||
# 返回这个消息是否已读
|
||||
def get_is_read(self, obj):
|
||||
object = MessagePushUser.objects.filter(message_push=obj,user=self.context.get('request').user).first()
|
||||
return object.is_read if object else False
|
||||
|
||||
class Meta:
|
||||
model = MessagePush
|
||||
fields = "__all__"
|
||||
|
||||
def save(self, **kwargs):
|
||||
return super().save(**kwargs)
|
||||
|
|
|
@ -2,7 +2,7 @@ from rest_framework.request import Request
|
|||
|
||||
from apps.op_drf.filters import DataLevelPermissionsFilter
|
||||
from apps.op_drf.viewsets import CustomModelViewSet
|
||||
from apps.system.filters import DictDetailsFilter, DictDataFilter, ConfigSettingsFilter
|
||||
from apps.system.filters import DictDetailsFilter, DictDataFilter, ConfigSettingsFilter, MessagePushFilter
|
||||
from apps.system.models import DictData, DictDetails, ConfigSettings, SaveFile, MessagePush
|
||||
from apps.system.serializers import DictDataSerializer, DictDataCreateUpdateSerializer, DictDetailsSerializer, \
|
||||
DictDetailsCreateUpdateSerializer, DictDetailsListSerializer, ConfigSettingsSerializer, \
|
||||
|
@ -137,7 +137,7 @@ class SaveFileModelViewSet(CustomModelViewSet):
|
|||
serializer_class = SaveFileSerializer
|
||||
create_serializer_class = SaveFileCreateUpdateSerializer
|
||||
update_serializer_class = SaveFileCreateUpdateSerializer
|
||||
# filter_class = ConfigSettingsFilter
|
||||
filter_class = ConfigSettingsFilter
|
||||
extra_filter_backends = [DataLevelPermissionsFilter]
|
||||
search_fields = ('configName',)
|
||||
ordering = 'id' # 默认排序
|
||||
|
@ -152,6 +152,7 @@ class MessagePushModelViewSet(CustomModelViewSet):
|
|||
create_serializer_class = MessagePushCreateUpdateSerializer
|
||||
update_serializer_class = MessagePushCreateUpdateSerializer
|
||||
extra_filter_backends = [DataLevelPermissionsFilter]
|
||||
filter_class = MessagePushFilter
|
||||
ordering = "-update_datetime" # 默认排序
|
||||
|
||||
def get_message_list(self, request: Request, *args, **kwargs):
|
||||
|
|
|
@ -79,6 +79,6 @@ INSERT INTO `permission_menu` VALUES (45, '', 'admin', '2021-03-03 15:25:15.2249
|
|||
INSERT INTO `permission_menu` VALUES (46, '', 'admin', '2021-03-03 15:28:30.061632', '2021-03-03 15:27:19.945663', '2', NULL, '文件下载', 4, '1', NULL, NULL, NULL, 'GET', 'system:clearsavefile:download:post', '1', '1', '1', 1, 11);
|
||||
INSERT INTO `permission_menu` VALUES (47, '', 'admin', '2021-03-07 14:35:34.237127', '2021-03-07 14:32:06.754815', '1', 'message', '消息通知', 4, '1', 'system/message', 'system/message/index', '/system/message/', 'GET', 'system:message:get', '1', '1', '1', 1, 1);
|
||||
INSERT INTO `permission_menu` VALUES (48, '', 'admin', '2021-03-07 14:35:06.718432', '2021-03-07 14:35:06.718463', '2', NULL, '发布通知', 1, '1', NULL, NULL, '/system/message/', 'POST', 'system:message:post', '1', '1', '1', 1, 47);
|
||||
INSERT INTO `permission_menu` VALUES (49, '', 'admin', '2021-03-07 14:36:47.675806', '2021-03-07 14:36:47.675837', '2', NULL, '修改通知', 2, '1', NULL, NULL, '/system/message/', 'PUT', 'system:message:put', '1', '1', '1', 1, 47);
|
||||
INSERT INTO `permission_menu` VALUES (50, '', 'admin', '2021-03-07 14:37:52.130536', '2021-03-07 14:37:52.130567', '2', NULL, '删除通知', 3, '1', NULL, NULL, '/permission/menu/', 'DELETE', 'permission:menu:delete', '1', '1', '1', 1, 47);
|
||||
INSERT INTO `permission_menu` VALUES (49, '', 'admin', '2021-03-08 13:04:32.158707', '2021-03-07 14:36:47.675837', '2', NULL, '修改通知', 2, '1', NULL, NULL, '/system/message/{id}/', 'PUT', 'system:message:{id}:put', '1', '1', '1', 1, 47);
|
||||
INSERT INTO `permission_menu` VALUES (50, '', 'admin', '2021-03-08 13:04:58.206693', '2021-03-07 14:37:52.130567', '2', NULL, '删除通知', 3, '1', NULL, NULL, '/permission/menu/{id}/', 'DELETE', 'permission:menu:{id}:delete', '1', '1', '1', 1, 47);
|
||||
INSERT INTO `permission_menu` VALUES (51, '', 'admin', '2021-03-07 14:42:37.410336', '2021-03-07 14:42:37.410366', '2', NULL, '通知导出', 4, '1', NULL, NULL, '/system/message/export/', 'GET', 'system:message:export:get', '1', '1', '1', 1, 47);
|
||||
|
|
|
@ -0,0 +1,54 @@
|
|||
import request from '@/utils/request'
|
||||
|
||||
// 查询参数列表
|
||||
export function listMessage(query) {
|
||||
return request({
|
||||
url: '/system/message/',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询参数详细
|
||||
export function getMessage(messageId) {
|
||||
return request({
|
||||
url: '/system/message/' + messageId + '/',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增参数配置
|
||||
export function addMessage(data) {
|
||||
return request({
|
||||
url: '/system/message/',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改参数配置
|
||||
export function updateMessage(data) {
|
||||
return request({
|
||||
url: '/system/message/' + data.id + '/',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除参数配置
|
||||
export function delMessage(messageId) {
|
||||
return request({
|
||||
url: '/system/message/' + messageId + '/',
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 导出参数
|
||||
export function exportMessage(query) {
|
||||
return request({
|
||||
url: '/system/message/export/',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
|
@ -1,22 +1,379 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item label="消息标题" prop="title">
|
||||
<el-input
|
||||
v-model="queryParams.title"
|
||||
placeholder="请输入消息标题"
|
||||
clearable
|
||||
size="small"
|
||||
style="width: 240px"
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="消息类型" prop="message_type">
|
||||
<el-select v-model="queryParams.message_type" placeholder="消息类型" clearable size="small">
|
||||
<el-option
|
||||
v-for="dict in MessagePushTypeOptions"
|
||||
:key="dict.dictValue"
|
||||
:label="dict.dictLabel"
|
||||
:value="dict.dictValue"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="消息状态" prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="消息状态" clearable size="small">
|
||||
<el-option
|
||||
v-for="dict in MessagePushStatusOptions"
|
||||
:key="dict.dictValue"
|
||||
:label="dict.dictLabel"
|
||||
:value="dict.dictValue"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="是否审核" prop="is_reviewed">-->
|
||||
<!-- <el-select v-model="queryParams.is_reviewed" placeholder="是否审核" clearable size="small">-->
|
||||
<!-- <el-option :key="true" label="是" :value="true"/>-->
|
||||
<!-- <el-option :key="false" label="否" :value="false"/>-->
|
||||
<!-- </el-select>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
v-hasPermi="['system:message:post']"
|
||||
>发布通知
|
||||
</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="success"
|
||||
plain
|
||||
icon="el-icon-edit"
|
||||
size="mini"
|
||||
:disabled="single"
|
||||
@click="handleUpdate"
|
||||
v-hasPermi="['system:message:{id}:put']"
|
||||
>修改通知
|
||||
</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="danger"
|
||||
plain
|
||||
icon="el-icon-delete"
|
||||
size="mini"
|
||||
:disabled="multiple"
|
||||
@click="handleDelete"
|
||||
v-hasPermi="['permission:menu:{id}:delete']"
|
||||
>删除通知
|
||||
</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="warning"
|
||||
plain
|
||||
icon="el-icon-download"
|
||||
size="mini"
|
||||
@click="handleExport"
|
||||
v-hasPermi="['system:message:export:get']"
|
||||
>导出
|
||||
</el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="configList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column label="消息主键" align="center" prop="id"/>
|
||||
<el-table-column label="消息标题" align="center" prop="title" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="消息内容" align="center" prop="content" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="消息类型" align="center" prop="message_type" :formatter="typeFormat"/>
|
||||
<!-- <el-table-column label="是否审核通过" align="center" prop="is_reviewed" :formatter="isReviewedFormat"/>-->
|
||||
<el-table-column label="消息状态" align="center" prop="status" :formatter="statusFormat"/>
|
||||
<el-table-column label="跳转路径" align="center" prop="to_path" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="创建时间" align="center" prop="create_datetime" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.create_datetime) }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="操作"
|
||||
align="center"
|
||||
class-name="small-padding fixed-width"
|
||||
v-if="hasPermi(['system:message:{id}:put','permission:menu:{id}:delete'])">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-edit"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['system:message:{id}:put']"
|
||||
>修改
|
||||
</el-button>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
icon="el-icon-delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['permission:menu:{id}:delete']"
|
||||
>删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination
|
||||
v-show="total>0"
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
|
||||
<!-- 添加或修改参数配置对话框 -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="消息标题" prop="title">
|
||||
<el-input v-model="form.title" placeholder="请输入消息标题"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="消息内容" prop="content">
|
||||
<el-input v-model="form.content" placeholder="请输入消息内容"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="跳转路径" prop="to_path">
|
||||
<el-input v-model="form.to_path" placeholder="请输入跳转路径"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="消息类型" prop="message_type">
|
||||
<el-radio-group v-model="form.message_type">
|
||||
<el-radio
|
||||
v-for="dict in MessagePushTypeOptions"
|
||||
:key="dict.dictValue"
|
||||
:label="dict.dictValue"
|
||||
>{{dict.dictLabel}}
|
||||
</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="是否审核" prop="is_reviewed">-->
|
||||
<!-- <el-radio-group v-model="form.is_reviewed">-->
|
||||
<!-- <el-radio :label="true">是</el-radio>-->
|
||||
<!-- <el-radio :label="false">否</el-radio>-->
|
||||
<!-- </el-radio-group>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="状态" prop="status">
|
||||
<el-radio-group v-model="form.status">
|
||||
<el-radio
|
||||
v-for="dict in MessagePushStatusOptions"
|
||||
:key="dict.dictValue"
|
||||
:label="dict.dictValue"
|
||||
>{{dict.dictLabel}}
|
||||
</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {addMessage, delMessage, exportMessage, getMessage, listMessage, updateMessage} from "@/api/system/message";
|
||||
|
||||
export default {
|
||||
name: "message",
|
||||
data() {
|
||||
return {}
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 参数表格数据
|
||||
configList: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 消息类型字典
|
||||
MessagePushTypeOptions: [],
|
||||
// 状态类型字典
|
||||
StatusOptions: [],
|
||||
// 消息类型字典
|
||||
MessagePushStatusOptions: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
title: undefined,
|
||||
content: undefined,
|
||||
message_type: undefined,
|
||||
is_reviewed: undefined,
|
||||
status: undefined
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
title: [
|
||||
{required: true, message: "消息标题不能为空", trigger: "blur"}
|
||||
],
|
||||
content: [
|
||||
{required: true, message: "消息内容不能为空", trigger: "blur"}
|
||||
],
|
||||
to_path: [
|
||||
{required: false, message: "跳转路径不能为空", trigger: "blur"}
|
||||
]
|
||||
}
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
this.getDicts("sys_message_push_type").then(response => {
|
||||
this.MessagePushTypeOptions = response.data;
|
||||
});
|
||||
this.getDicts("sys_message_push_status").then(response => {
|
||||
this.MessagePushStatusOptions = response.data;
|
||||
});
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
methods: {}
|
||||
|
||||
methods: {
|
||||
/** 查询参数列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
listMessage(this.addDateRange(this.queryParams)).then(response => {
|
||||
this.configList = response.data.results;
|
||||
this.total = response.data.count;
|
||||
this.loading = false;
|
||||
}
|
||||
);
|
||||
},
|
||||
// 消息类型字典翻译
|
||||
typeFormat(row, column) {
|
||||
return this.selectDictLabel(this.MessagePushTypeOptions, row.message_type);
|
||||
},
|
||||
// 消息状态字典翻译
|
||||
statusFormat(row, column) {
|
||||
return this.selectDictLabel(this.MessagePushStatusOptions, row.status);
|
||||
},
|
||||
// 消息状态字典翻译
|
||||
isReviewedFormat(row, column) {
|
||||
return row.is_reviewed === true ? '是' : '否'
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
this.open = false;
|
||||
this.reset();
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.form = {
|
||||
id: undefined,
|
||||
title: undefined,
|
||||
content: undefined,
|
||||
to_path: undefined,
|
||||
is_reviewed: true,
|
||||
message_type: "1",
|
||||
status: '1',
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
this.reset();
|
||||
this.open = true;
|
||||
this.title = "发布通知";
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.id)
|
||||
this.single = selection.length != 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
const id = row.id || this.ids
|
||||
getMessage(id).then(response => {
|
||||
this.form = response.data;
|
||||
this.open = true;
|
||||
this.title = "修改参数";
|
||||
});
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm: function () {
|
||||
this.$refs["form"].validate(valid => {
|
||||
if (valid) {
|
||||
if (this.form.id != undefined) {
|
||||
updateMessage(this.form).then(response => {
|
||||
this.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
} else {
|
||||
addMessage(this.form).then(response => {
|
||||
this.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const configIds = row.id || this.ids;
|
||||
this.$confirm('是否确认删除参数编号为"' + configIds + '"的数据项?', "警告", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(function () {
|
||||
return delMessage(configIds);
|
||||
}).then(() => {
|
||||
this.getList();
|
||||
this.msgSuccess("删除成功");
|
||||
})
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
const queryParams = this.queryParams;
|
||||
this.$confirm('是否确认导出所有数据项?', "警告", {
|
||||
confirmButtonText: "确定",
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(function () {
|
||||
return exportMessage(queryParams);
|
||||
}).then(response => {
|
||||
this.download(response.data.file_url, response.data.name);
|
||||
})
|
||||
},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
|
|
Loading…
Reference in New Issue