Commit 94a56373 authored by forevertyler's avatar forevertyler

add:环境监测,大屏人员定位接口

parent 93281c24
......@@ -79,3 +79,12 @@ export function eleGetEleboxParameter(query) {
params: query
})
}
//环境监测检测项名称
export function typeNameList(query) {
return request({
url: '/business/real/typeList',
method: 'get',
params: query
})
}
\ No newline at end of file
import request from '@/utils/request'
// 查询环境监测报警数据列表
export function listAlarm(query) {
return request({
url: '/business/alarm/list',
method: 'get',
params: query
})
}
// 查询环境监测报警数据所有列表
export function listAllAlarm(query) {
return request({
url: '/business/alarm/listAll',
method: 'get',
params: query
})
}
// 查询环境监测报警数据详细
export function getAlarm(id) {
return request({
url: '/business/alarm/getInfo/' + id,
method: 'get'
})
}
// 新增环境监测报警数据
export function addAlarm(data) {
return request({
url: '/business/alarm/add',
method: 'post',
data: data
})
}
// 修改环境监测报警数据
export function updateAlarm(data) {
return request({
url: '/business/alarm/edit',
method: 'post',
data: data
})
}
// 删除环境监测报警数据
export function delAlarm(id) {
return request({
url: '/business/alarm/remove/' + id,
method: 'get'
})
}
import request from '@/utils/request'
// 查询环境监测设备列表
export function listDevices(query) {
return request({
url: '/business/devices/list',
method: 'get',
params: query
})
}
// 查询环境监测设备所有列表
export function listAllDevices(query) {
return request({
url: '/business/devices/listAll',
method: 'get',
params: query
})
}
// 查询环境监测设备详细
export function getDevices(id) {
return request({
url: '/business/devices/getInfo/' + id,
method: 'get'
})
}
// 新增环境监测设备
export function addDevices(data) {
return request({
url: '/business/devices/add',
method: 'post',
data: data
})
}
// 修改环境监测设备
export function updateDevices(data) {
return request({
url: '/business/devices/edit',
method: 'post',
data: data
})
}
// 删除环境监测设备
export function delDevices(id) {
return request({
url: '/business/devices/remove/' + id,
method: 'get'
})
}
import request from '@/utils/request'
// 查询环境监测的实时数据列表
export function envMonitoringHis(query) {
return request({
url: '/business/real/list',
method: 'get',
params: query
})
}
// 查询环境监测的实时数据所有列表
export function listAll2502(query) {
return request({
url: '/business/2502/listAll',
method: 'get',
params: query
})
}
// 查询环境监测的实时数据详细
export function get2502(tpNum) {
return request({
url: '/business/2502/getInfo/' + tpNum,
method: 'get'
})
}
// 新增环境监测的实时数据
export function add2502(data) {
return request({
url: '/business/2502/add',
method: 'post',
data: data
})
}
// 修改环境监测的实时数据
export function update2502(data) {
return request({
url: '/business/2502/edit',
method: 'post',
data: data
})
}
// 删除环境监测的实时数据
export function del2502(tpNum) {
return request({
url: '/business/2502/remove/' + tpNum,
method: 'get'
})
}
import request from '@/utils/request'
// 井下人员实时数据统计
export function realTimeStatistics(query) {
return request({
url: "/business/screen/per/realTimeStatistics",
method: "get",
params: query,
});
}
//区域人数实时分布图
export function realTimeDistribution(query) {
return request({
url: "/business/screen/per/realTimeDistribution",
method: "get",
params: query,
});
}
//井下人员实时状态
export function realTimeStatus(query) {
return request({
url: "/business/screen/per/realTimeStatus",
method: "get",
params: query,
});
}
//分站状态分析
export function stationStatus(query) {
return request({
url: "/business/screen/per/stationStatus",
method: "get",
params: query,
});
}
//近30天报警分析
export function recentThDaysAlarms(query) {
return request({
url: "/business/screen/per/recentThDaysAlarms",
method: "get",
params: query,
});
}
//近7日井下人员报警信息
export function recentSevDaysAlarms(query) {
return request({
url: "/business/screen/per/recentSevDaysAlarms",
method: "get",
params: query,
});
}
//中间分站信息
export function perStationInfo(query) {
return request({
url: "/business/screen/per/stationInfo",
method: "get",
params: query,
});
}
//查询分站人员在线情况
export function perOnlineSituation(query) {
return request({
url: "/business/screen/per/perOnlineSituation",
method: "get",
params: query,
});
}
\ No newline at end of file
This diff is collapsed.
......@@ -42,6 +42,8 @@ import DictData from '@/components/DictData'
import VScaleScreen from 'v-scale-screen'
//打印组件
import Print from 'vue-print-nb'
//滚动组件
import scroll from 'vue-seamless-scroll'
// 全局方法挂载
Vue.prototype.getDicts = getDicts
......@@ -69,6 +71,7 @@ Vue.use(directive)
Vue.use(plugins)
Vue.use(VueMeta)
Vue.use(Print)
Vue.use(scroll)
DictData.install()
......
This diff is collapsed.
<template>
<div class="app-container">
<div style="width: 500px; ">
<video style="width: 500px;" v-if="videoData&&videoData.length>0" :poster="`${previewUrl}${videoData[0].image}`" controls name="media">
<source :src="`${previewUrl}${videoData[0].videoPath}`" type="video/mp4">
<video width="500" controls="" autoplay="" name="media">
<source :src="`${previewUrl}${videoData}`" type="video/mp4">
</video>
</div>
<div class="upv">
......@@ -62,20 +62,20 @@ export default {
name:"mainVideo",
data() {
return {
previewUrl: process.env.VUE_APP_BASE_API,
uploadUrl: process.env.VUE_APP_BASE_API + "/business/screen/homePage",
uploadUrl1: process.env.VUE_APP_BASE_API + "/common/upload",
previewUrl: process.env.VUE_APP_API_TARGET,
uploadUrl: process.env.VUE_APP_API_TARGET + "/business/screen/homePage",
uploadUrl1: process.env.VUE_APP_API_TARGET + "/common/upload",
headers: {
Authorization: "Bearer " + getToken(),
},
baseURL: process.env.VUE_APP_BASE_API,
baseURL: process.env.VUE_APP_API_TARGET,
// 表单参数
form: {
id:null,
name:null,
videoPath:null
},
videoData:[],
videoData:'',
}
},
mounted() {
......@@ -86,7 +86,7 @@ export default {
methods: {
getList(){
listVideo().then(res => {
this.videoData = res.rows
this.videoData = res.data
})
},
//上传图片
......@@ -116,12 +116,14 @@ export default {
}
if (type === "video") {
that.form.videoPath = response.fileName;
that.form.name = response.newFileName;
addVideo(that.form).then(res => {
this.$modal.msgSuccess("成功");
this.$modal.msgSuccess("成功");
this.getList();
})
// that.form.videoPath = response.fileName;
// that.form.name = response.newFileName;
// addVideo(that.form).then(res => {
// this.$modal.msgSuccess("成功");
// this.getList();
// })
}
// 获取光标所在位置
} else {
......
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="" prop="tpName">
<el-input
v-model="queryParams.tpName"
placeholder="请输入测点名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="" prop="typeName">
<el-select v-model="queryParams.typeName" placeholder="请选择监测项名称" clearable>
<el-option
v-for="dict in typeName"
:key="dict"
:label="dict"
:value="dict"
/>
</el-select>
</el-form-item>
<el-form-item label="日期查询">
<el-date-picker v-model="dateRange" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</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-table v-loading="loading" :data="alarmList" @selection-change="handleSelectionChange">
<el-table-column label="测点名称" align="center" prop="tpName" />
<el-table-column label="测点编号" align="center" prop="tpNum" />
<el-table-column label="监测项名称" align="center" prop="typeName" />
<el-table-column label="单位" align="center" prop="unit" />
<el-table-column label="监测值" align="center" prop="alarmValue" />
<el-table-column label="报警时间" align="center" prop="alarmTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.alarmTime) }}</span>
</template>
</el-table-column>
<el-table-column label="状态" align="center" prop="status" >
<template slot-scope="scope">
<el-button
size="mini"
type="primary"
@click="handleUpdate(scope.row)"
v-if="scope.row.status == 2"
><span>未处置</span></el-button>
<span v-if="scope.row.status == 1">已处置</span>
<!-- <el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button> -->
</template>
</el-table-column>
<el-table-column label="解除报警时间" align="center" prop="delAlarmTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.delAlarmTime) }}</span>
</template>
</el-table-column>
<el-table-column label="解除原因" align="center" prop="delAlarmReason" />
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改预警值</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="120px">
<el-form-item label="解除报警时长" prop="updateHour">
<el-input-number :min="0" v-model="form.updateHour"></el-input-number>
</el-form-item>
<el-form-item label="解除原因" prop="delAlarmReason">
<el-input type="textarea" v-model="form.delAlarmReason" placeholder="请输入解除原因" />
</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 {getAlarm, listAlarm, updateAlarm} from "@/api/tyler/envMonitoringAlarm";
import {typeNameList} from "@/api/tyler/common";
export default {
name: "envMonitoringAlarm",
data() {
return {
// 根路径
baseURL: process.env.VUE_APP_BASE_API,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 环境监测报警数据表格数据
alarmList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
tpNum: null,
typeName: null,
tpName: null,
status: null,
delAlarmTime: null,
delAlarmReason: null,
updateHour:null,
},
// 日期范围
dateRange: [],
// 表单参数
form: {},
// 表单校验
rules: {
updateHour: [
{ required: true, message: "解除报警时长不能为空", trigger: "blur" }
],
delAlarmReason: [
{ required: true, message: "解除报警原因不能为空", trigger: "blur" }
],
},
typeName:[]
};
},
created() {
typeNameList().then(res => {
console.log(res,'res')
this.typeName = res.data
})
this.getList();
},
methods: {
/** 查询环境监测报警数据列表 */
getList() {
this.loading = true;
listAlarm(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
this.alarmList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: null,
tpNum: null,
alarmTime: null,
status: null,
delAlarmTime: null,
delAlarmReason: null,
typeName: null,
tpName: null,
updateHour:null,
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加环境监测报警数据";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
this.form = row;
this.form.updateHour = row.updateHour||0;
this.open = true;
this.title = "修改环境监测报警数据";
// const id = row.id || this.ids
// getAlarm(id).then(response => {
// this.form = response.data;
// this.open = true;
// this.title = "修改环境监测报警数据";
// });
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
updateAlarm(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除?').then(function() {
return delAlarm(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('business/alarm/export', {
...this.queryParams
}, `alarm_${new Date().getTime()}.xlsx`)
}
}
};
</script>
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="测点名称" prop="tpName">
<el-input
v-model="queryParams.tpName"
placeholder="请输入测点名称"
clearable
@keyup.enter.native="handleQuery"
/>
</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-table v-loading="loading" :data="devicesList" @selection-change="handleSelectionChange">
<el-table-column label="测点编号" align="center" prop="tpNum" />
<el-table-column label="测点名称" align="center" prop="tpName" />
<el-table-column label="测点类型" align="center" prop="typeName" />
<el-table-column label="单位" align="center" prop="unit" />
<el-table-column label="状态" align="center" prop="effect">
<template slot-scope="scope">
<el-tag v-if="scope.row.effect==1">正常</el-tag>
<el-tag v-else type="warning">异常</el-tag>
</template>
</el-table-column>
<el-table-column label="预警阈值" align="center" prop="threshold" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
>修改预警值</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="120px">
<el-form-item label="测点名称" prop="tpName">
<el-input disabled v-model="form.tpName" placeholder="请输入测点名称" />
</el-form-item>
<el-form-item label="测点编号" prop="tpNum">
<el-input disabled v-model="form.tpNum" placeholder="请输入测点编号" />
</el-form-item>
<el-form-item label="监测项名称" prop="typeName">
<el-input disabled v-model="form.typeName" placeholder="请输入监测项名称" />
</el-form-item>
<el-form-item label="预警阈值" prop="threshold">
<el-input v-model="form.threshold" placeholder="请输入预警阈值" />
</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 {updateDevices, listDevices} from "@/api/tyler/envMonitoringDevices";
export default {
name: "Devices",
data() {
return {
// 根路径
baseURL: process.env.VUE_APP_BASE_API,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 环境监测设备表格数据
devicesList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
tpNum: null,
tpName: null,
tpPlace: null,
effect: null,
typeId: null,
tpOp: null,
wId: null,
fbPt: null,
unit: null,
threshold: null,
alarmInfo: null,
defTime: null,
delTime: null
},
// 表单参数
form: {},
// 表单校验
rules: {
threshold: [
{ required: true, message: "预警阈值不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询环境监测设备列表 */
getList() {
this.loading = true;
listDevices(this.queryParams).then(response => {
this.devicesList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: null,
tpNum: null,
tpName: null,
tpPlace: null,
effect: null,
typeId: null,
tpOp: null,
wId: null,
fbPt: null,
unit: null,
threshold: null,
alarmInfo: null,
defTime: null,
delTime: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加环境监测设备";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
this.form = row
this.open = true;
this.title = "修改预警值";
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
updateDevices(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addDevices(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除环境监测测点编号为"' + ids + '"的数据项?').then(function() {
return delDevices(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('business/devices/export', {
...this.queryParams
}, `devices_${new Date().getTime()}.xlsx`)
}
}
};
</script>
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="" prop="tpName">
<el-input
v-model="queryParams.tpName"
placeholder="请输入测点名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="" prop="typeName">
<el-select v-model="queryParams.typeName" placeholder="请选择监测项名称" clearable>
<el-option
v-for="dict in typeName"
:key="dict"
:label="dict"
:value="dict"
/>
</el-select>
</el-form-item>
<el-form-item label="日期查询">
<el-date-picker v-model="dateRange" style="width: 240px" value-format="yyyy-MM-dd" type="daterange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</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-table v-loading="loading" :data="envMonitorHisData" >
<el-table-column label="测点名称" align="center" prop="tpName" />
<el-table-column label="测点编号" align="center" prop="tpNum" />
<el-table-column label="测点类型" align="center" prop="typeName" />
<el-table-column label="单位" align="center" prop="unit" />
<el-table-column label="监测值" align="center" prop="value" />
<el-table-column label="测量时间" align="center" prop="time" />
<el-table-column label="状态" align="center" prop="status">
<template slot-scope="scope">
<el-tag v-if="scope.row.status==1">正常</el-tag>
<el-tag v-else type="warning">异常</el-tag>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import {get2502, envMonitoringHis} from "@/api/tyler/envMonitoringHis";
import {typeNameList} from "@/api/tyler/common";
export default {
name: "2502",
data() {
return {
// 根路径
baseURL: process.env.VUE_APP_BASE_API,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 环境监测的实时数据表格数据
envMonitorHisData: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
typeName: null,
tpName: null,
},
// 日期范围
dateRange: [],
// 表单参数
form: {},
// 表单校验
rules: {}
};
},
created() {
typeNameList().then(res => {
console.log(res,'res')
this.typeName = res.data
})
this.getList();
},
methods: {
/** 查询环境监测的实时数据列表 */
getList() {
this.loading = true;
envMonitoringHis(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
this.envMonitorHisData = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
tpNum: null,
value: null,
value1: null,
state: null,
exstate: null,
time: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.tpNum)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加环境监测的实时数据";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const tpNum = row.tpNum || this.ids
get2502(tpNum).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改环境监测的实时数据";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.tpNum != null) {
update2502(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
add2502(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const tpNums = row.tpNum || this.ids;
this.$modal.confirm('是否确认删除环境监测的实时数据编号为"' + tpNums + '"的数据项?').then(function() {
return del2502(tpNums);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
this.download('business/2502/export', {
...this.queryParams
}, `2502_${new Date().getTime()}.xlsx`)
}
}
};
</script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment