2 changed files with 620 additions and 0 deletions
@ -0,0 +1,322 @@ |
|||||
|
<template> |
||||
|
<el-dialog :visible.sync="dialogVisible" width="800px" :before-close="handleCancle" top="5vh"> |
||||
|
<span slot="title"> |
||||
|
<span v-if="pageType == 'add'">发布</span> |
||||
|
<span v-if="pageType == 'edit'">修改</span> |
||||
|
<span v-if="pageType == 'view'">查看</span> |
||||
|
</span> |
||||
|
<div> |
||||
|
<div class="dialog-h-content2 scroll-h"> |
||||
|
<el-form :inline="true" :model="formData" ref="form" :rules="dataRule" v-if="pageType != 'view'"> |
||||
|
<el-row> |
||||
|
<el-col :span="12"> |
||||
|
<el-form-item label="发布渠道" prop="publishDitch"> |
||||
|
<el-select v-model="formData.publishDitch" placeholder="请选择"> |
||||
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option> |
||||
|
</el-select> |
||||
|
</el-form-item> |
||||
|
</el-col> |
||||
|
<el-col :span="12"> |
||||
|
<el-form-item label="发布范围" prop="orgId"> |
||||
|
<el-cascader |
||||
|
class="customer_cascader" |
||||
|
ref="myCascader" |
||||
|
v-model="formData.orgId" |
||||
|
:options="orgOptions" |
||||
|
filterable |
||||
|
:props="orgOptionProps" |
||||
|
:show-all-levels="false" |
||||
|
@change="handleChangeAgency" |
||||
|
></el-cascader> |
||||
|
</el-form-item> |
||||
|
</el-col> |
||||
|
<el-col :span="24"> |
||||
|
<el-form-item label="发布内容" prop="content"> |
||||
|
<el-input |
||||
|
v-model="formData.content" |
||||
|
type="textarea" |
||||
|
:autosize="{ minRows:4, maxRows:10}" |
||||
|
:disabled="disabled" |
||||
|
style="width:500px;" |
||||
|
|
||||
|
clearable |
||||
|
placeholder="请输入" |
||||
|
></el-input> |
||||
|
</el-form-item> |
||||
|
</el-col> |
||||
|
</el-row> |
||||
|
<div id="app_event" class="div_map"></div> |
||||
|
</el-form> |
||||
|
<el-form :inline="false" :model="formData" ref="form" label-width="140px" v-if="pageType == 'view'"> |
||||
|
<el-row> |
||||
|
<el-col :span="12"> |
||||
|
<el-form-item label="发布渠道" prop="publishDitch">{{ formData.publishDitch }}</el-form-item> |
||||
|
</el-col> |
||||
|
|
||||
|
<el-col :span="12"> |
||||
|
<el-form-item label="发布范围" prop="publishRangeName">{{ formData.publishRangeName }}</el-form-item> |
||||
|
</el-col> |
||||
|
|
||||
|
<el-col :span="24"> |
||||
|
<el-form-item label="发布内容" prop="content">{{ formData.content }}</el-form-item> |
||||
|
</el-col> |
||||
|
</el-row> |
||||
|
</el-form> |
||||
|
|
||||
|
|
||||
|
<div class="div_btn" v-if="pageType != 'view'"> |
||||
|
<el-button size="small" @click="handleCancle">取 消</el-button> |
||||
|
<!-- <el-button size="small" @click="resetData" v-if="pageType != 'view'">重置</el-button> --> |
||||
|
<el-button size="small" type="primary" :disabled="btnDisable" @click="handleComfirm">保 存</el-button> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
|
||||
|
<span slot="footer" class="dialog-footer" v-if="pageType == 'view'"> |
||||
|
<el-button @click="handleCancle">关 闭</el-button> |
||||
|
<!-- <el-button type="primary" @click="handleComfirm">确 定</el-button> --> |
||||
|
</span> |
||||
|
</el-dialog> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { isMobile } from '@/utils/validate'; |
||||
|
import { mapGetters } from 'vuex'; |
||||
|
import { Loading } from 'element-ui'; // 引入Loading服务 |
||||
|
import { requestPost, requestGet } from '@/js/dai/request'; |
||||
|
import daiMap from '@/utils/dai-map'; |
||||
|
import nextTick from 'dai-js/tools/nextTick'; |
||||
|
|
||||
|
let loading; // 加载动画 |
||||
|
let map; |
||||
|
var search; |
||||
|
var markers; |
||||
|
var infoWindowList; |
||||
|
var geocoder; // 新建一个正逆地址解析类 |
||||
|
|
||||
|
export default { |
||||
|
props: { |
||||
|
dialogVisible: { |
||||
|
type: Boolean, |
||||
|
default: '' |
||||
|
}, |
||||
|
defaultData: { |
||||
|
type: Object, |
||||
|
default: null |
||||
|
}, |
||||
|
pageType: { |
||||
|
type: String, |
||||
|
default: '' |
||||
|
}, |
||||
|
detailId: { |
||||
|
type: String, |
||||
|
default: '' |
||||
|
}, |
||||
|
detailData: { |
||||
|
type: Object, |
||||
|
default: null |
||||
|
}, |
||||
|
disabled: { |
||||
|
type: Boolean, |
||||
|
default: false |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
data() { |
||||
|
return { |
||||
|
options: [ |
||||
|
{ |
||||
|
value: 0, |
||||
|
label: '专属app' |
||||
|
} |
||||
|
], |
||||
|
btnDisable: false, |
||||
|
user: '', |
||||
|
agencyId: '', |
||||
|
orgOptions: [], //组织 |
||||
|
orgOptionProps: { |
||||
|
//组织 |
||||
|
multiple: false, |
||||
|
value: 'agencyId', |
||||
|
label: 'agencyName', |
||||
|
children: 'subAgencyList', |
||||
|
emitPath: false, |
||||
|
checkStrictly: true |
||||
|
}, |
||||
|
formData: { |
||||
|
publishDitch: '', |
||||
|
publishRange: '', |
||||
|
content: '' |
||||
|
}, |
||||
|
dataRule: { |
||||
|
publishDitch: [{ required: true, message: '发布渠道不能为空', trigger: 'bulr' }], |
||||
|
orgId: [{ required: true, message: '发布范围不能为空', trigger: 'bulr' }], |
||||
|
content: [{ required: true, message: '内容不能为空', trigger: 'bulr' }] |
||||
|
}, |
||||
|
//地图 |
||||
|
loading: false, |
||||
|
|
||||
|
searchValue: '', |
||||
|
searchOptions: [] |
||||
|
}; |
||||
|
}, |
||||
|
watch: {}, |
||||
|
components: {}, |
||||
|
created() {}, |
||||
|
async mounted() { |
||||
|
this.user = this.$store.state.user; |
||||
|
this.agencyId = this.user.agencyId; |
||||
|
this.startLoading(); |
||||
|
this.getOrgTreeList(); |
||||
|
|
||||
|
if (this.pageType != 'add') { |
||||
|
this.getDetail(); |
||||
|
} else { |
||||
|
} |
||||
|
await this.endLoading(); |
||||
|
this.endLoading(); |
||||
|
}, |
||||
|
|
||||
|
methods: { |
||||
|
getOrgTreeList() { |
||||
|
const { user } = this.$store.state; |
||||
|
this.$http |
||||
|
.post('/gov/org/customeragency/agencygridtree', {}) |
||||
|
.then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg); |
||||
|
} else { |
||||
|
console.log('获取组织树成功', res.data); |
||||
|
// let { agencyList, subAgencyList } = res.data; |
||||
|
// const _arr = [{ ...agencyList, subAgencyList: [...subAgencyList] }]; |
||||
|
// this.orgOptions = this.deepTree(_arr); |
||||
|
this.orgOptions = []; |
||||
|
this.orgOptions.push(res.data); |
||||
|
} |
||||
|
}) |
||||
|
.catch(() => { |
||||
|
return this.$message.error('网络错误'); |
||||
|
}); |
||||
|
}, |
||||
|
handleChangeAgency(val) { |
||||
|
let obj = this.$refs['myCascader'].getCheckedNodes()[0].data; |
||||
|
this.formData.orgType= obj.level |
||||
|
// if (obj) { |
||||
|
// this.orgType = obj.level === 'grid' ? 'grid' : 'agency'; |
||||
|
// } else { |
||||
|
// this.orgType = ''; |
||||
|
// } |
||||
|
}, |
||||
|
async getDetail() { |
||||
|
const url = `/message/organization/message/detail/${this.detailId}`; |
||||
|
const { data, code, msg } = await requestPost(url); |
||||
|
if (code === 0) { |
||||
|
this.formData = { ...data }; |
||||
|
} else { |
||||
|
this.$message.error(msg); |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
handleComfirm() { |
||||
|
this.save(); |
||||
|
}, |
||||
|
|
||||
|
async save() { |
||||
|
// this.formData.agencyId = this.agencyId; |
||||
|
this.formData.rangeList={ |
||||
|
orgId:this.formData.orgId, |
||||
|
orgType:this.formData.orgType |
||||
|
} |
||||
|
var url = ''; |
||||
|
var params = {}; |
||||
|
url = '/message/organization/message/publish'; |
||||
|
params = { ...this.formData }; |
||||
|
const { data, code, msg } = await requestPost(url, params); |
||||
|
if (code === 0) { |
||||
|
this.$message.success('操作成功'); |
||||
|
|
||||
|
this.handleCancle(); |
||||
|
// // this.resetData(); |
||||
|
// this.$emit('handleComfirm'); |
||||
|
} else if (code >= 8000) { |
||||
|
this.$message.error(msg); |
||||
|
} |
||||
|
}, |
||||
|
handleCancle() { |
||||
|
// this.resetData(); |
||||
|
this.$emit('handleClose'); |
||||
|
}, |
||||
|
resetData() { |
||||
|
this.$refs.form.resetFields(); |
||||
|
}, |
||||
|
// 开启加载动画 |
||||
|
startLoading() { |
||||
|
loading = Loading.service({ |
||||
|
lock: true, // 是否锁定 |
||||
|
text: '正在加载……', // 加载中需要显示的文字 |
||||
|
background: 'rgba(0,0,0,.7)' // 背景颜色 |
||||
|
}); |
||||
|
}, |
||||
|
// 结束加载动画 |
||||
|
endLoading() { |
||||
|
// clearTimeout(timer); |
||||
|
if (loading) { |
||||
|
loading.close(); |
||||
|
} |
||||
|
} // 地图初始化函数,本例取名为init,开发者可根据实际情况定义 |
||||
|
} |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="scss" scoped> |
||||
|
@import '@/assets/scss/modules/management/form-main.scss'; |
||||
|
@import '@/assets/scss/modules/management/form.scss'; |
||||
|
// @import '@/assets/scss/modules/visual/a_customize.scss'; |
||||
|
.div_map { |
||||
|
width: 350px; |
||||
|
} |
||||
|
/deep/.el-dialog__header { |
||||
|
padding: 25px 20px 10px 25px; |
||||
|
font-size: 18px; |
||||
|
font-family: PingFang SC; |
||||
|
font-weight: normal; |
||||
|
color: #333; |
||||
|
} |
||||
|
/deep/.el-dialog__body { |
||||
|
padding: 30px 0px 30px 40px; |
||||
|
} |
||||
|
/deep/.el-dialog__footer { |
||||
|
text-align: center; |
||||
|
} |
||||
|
/deep/.el-form { |
||||
|
.el-form-item { |
||||
|
position: relative; |
||||
|
margin-bottom: 22px; |
||||
|
.el-form-item__label { |
||||
|
font-size: 14px; |
||||
|
padding-left: 15px; |
||||
|
text-align: left; |
||||
|
// &::before { |
||||
|
// position: absolute; |
||||
|
// left: 0; |
||||
|
// top: 12px; |
||||
|
// content: ''; |
||||
|
// display: block; |
||||
|
// width: 7px; |
||||
|
// height: 7px; |
||||
|
// background: #0c81fe; |
||||
|
// border-radius: 3px; |
||||
|
// } |
||||
|
} |
||||
|
.el-form-item__content { |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
/deep/.dialog-h-content2 { |
||||
|
max-height: calc(83vh - 90px); |
||||
|
box-sizing: border-box; |
||||
|
padding: 0 10px; |
||||
|
overflow: auto; |
||||
|
} |
||||
|
</style> |
||||
@ -0,0 +1,298 @@ |
|||||
|
<template> |
||||
|
<div class="div_main"> |
||||
|
<div class="div_search"> |
||||
|
<el-form :inline="true" :model="formData" ref="ref_searchform" :label-width="'110px'"> |
||||
|
<div> |
||||
|
<el-form-item label="发布渠道" prop="publishDitch"> |
||||
|
<el-select v-model="formData.publishDitch" placeholder="请选择"> |
||||
|
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option> |
||||
|
</el-select> |
||||
|
</el-form-item> |
||||
|
|
||||
|
<el-form-item label="发布范围" prop="orgId"> |
||||
|
<el-cascader |
||||
|
class="customer_cascader" |
||||
|
ref="myCascader" |
||||
|
v-model="formData.orgId" |
||||
|
:options="orgOptions" |
||||
|
filterable |
||||
|
:props="orgOptionProps" |
||||
|
:show-all-levels="false" |
||||
|
@change="handleChangeAgency" |
||||
|
></el-cascader> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="操作时间" label-width="110px" prop="timeRange"> |
||||
|
<el-date-picker |
||||
|
v-model="timeRange" |
||||
|
size="small" |
||||
|
type="datetimerange" |
||||
|
@change="handleTimeChange" |
||||
|
format="yyyy-MM-dd HH:mm" |
||||
|
value-format="yyyy-MM-dd HH:mm" |
||||
|
range-separator="至" |
||||
|
start-placeholder="开始时间" |
||||
|
end-placeholder="结束时间" |
||||
|
></el-date-picker> |
||||
|
</el-form-item> |
||||
|
|
||||
|
<el-button style="margin-left:30px" size="small" class="diy-button--search" @click="handleSearch">查询</el-button> |
||||
|
<el-button style="margin-left:10px" size="small" class="diy-button--reset" @click="resetSearch">重置</el-button> |
||||
|
</div> |
||||
|
</el-form> |
||||
|
</div> |
||||
|
<div class="div_table"> |
||||
|
<div class="div_btn"><el-button style="" class="diy-button--reset" size="small" @click="add()">发布</el-button></div> |
||||
|
|
||||
|
<el-table |
||||
|
class="table" |
||||
|
ref="ref_table" |
||||
|
:data="tableData" |
||||
|
border |
||||
|
:height="tableHeight" |
||||
|
v-loading="tableLoading" |
||||
|
:header-cell-style="{ background: '#2195FE', color: '#FFFFFF' }" |
||||
|
style="width: 100%" |
||||
|
> |
||||
|
<el-table-column label="序号" header-align="center" align="center" type="index" width="50"></el-table-column> |
||||
|
|
||||
|
<el-table-column prop="content" header-align="center" align="center" label="发布内容" min-width="100"></el-table-column> |
||||
|
<el-table-column prop="publishDitch" header-align="center" align="center" label="发布渠道" min-width="110"></el-table-column> |
||||
|
<el-table-column prop="publishRangeName" header-align="center" align="center" label="发布范围" min-width="110"></el-table-column> |
||||
|
<el-table-column prop="publishTime" header-align="center" align="center" label="发布时间" min-width="110"></el-table-column> |
||||
|
<el-table-column prop="count" align="center" width="110" label="操作" :show-overflow-tooltip="true"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button size="small" type="text" @click="show(scope.row)">查看</el-button> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<div> |
||||
|
<el-pagination |
||||
|
@size-change="handleSizeChange" |
||||
|
@current-change="handleCurrentChange" |
||||
|
:current-page.sync="pageNo" |
||||
|
:page-sizes="[20, 50, 100, 200]" |
||||
|
:page-size="pageSize" |
||||
|
layout="sizes, prev, pager, next, total" |
||||
|
:total="total" |
||||
|
></el-pagination> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div> |
||||
|
<addForm |
||||
|
v-if="dialogVisible" |
||||
|
:dialogVisible="dialogVisible" |
||||
|
:pageType="pageType" |
||||
|
:disabled="disabled" |
||||
|
:detailId="detailId" |
||||
|
:detailData="detailData" |
||||
|
@handleClose="handleClose" |
||||
|
/> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { requestPost } from '@/js/dai/request'; |
||||
|
import { mapGetters } from 'vuex'; |
||||
|
import { Loading } from 'element-ui'; // 引入Loading服务 |
||||
|
import addForm from './addFormNotice'; |
||||
|
let loading; // 加载动画 |
||||
|
export default { |
||||
|
data() { |
||||
|
return { |
||||
|
dialogVisible:false, |
||||
|
loading: false, |
||||
|
total: 0, |
||||
|
pageSize: 20, |
||||
|
pageNo: 0, |
||||
|
tableLoading: false, |
||||
|
|
||||
|
agencyId: '', |
||||
|
|
||||
|
timeRange: [], |
||||
|
formData: { |
||||
|
category: '', |
||||
|
operatorName: '', //姓名 |
||||
|
operatorMobile: '', //手机号 |
||||
|
startTime: '', //检测开始时间yyyy-MM-dd HH:mm |
||||
|
endTime: '' //检测结束时间yyyy-MM-dd HH:mm |
||||
|
}, |
||||
|
options: [ |
||||
|
{ |
||||
|
value: 0, |
||||
|
label: '专属app' |
||||
|
} |
||||
|
], |
||||
|
orgOptions: [], //组织 |
||||
|
orgOptionProps: { |
||||
|
//组织 |
||||
|
multiple: false, |
||||
|
value: 'agencyId', |
||||
|
label: 'agencyName', |
||||
|
children: 'subAgencyList', |
||||
|
emitPath: false, |
||||
|
checkStrictly: true |
||||
|
}, |
||||
|
tableData: [] |
||||
|
}; |
||||
|
}, |
||||
|
components: {addForm}, |
||||
|
|
||||
|
async mounted() { |
||||
|
//获取场所类型 |
||||
|
|
||||
|
const { user } = this.$store.state; |
||||
|
this.agencyId = user.agencyId; |
||||
|
this.getOrgTreeList(); |
||||
|
await this.loadTable(); |
||||
|
}, |
||||
|
computed: { |
||||
|
tableHeight() { |
||||
|
return this.$store.state.inIframe ? this.clientHeight - 330 + this.iframeHeight : this.clientHeight - 330; |
||||
|
}, |
||||
|
|
||||
|
...mapGetters(['clientHeight', 'iframeHeight']) |
||||
|
}, |
||||
|
activated() { |
||||
|
this.$refs['ref_table'].doLayout(); |
||||
|
}, |
||||
|
|
||||
|
methods: { |
||||
|
resetForm() { |
||||
|
for (const n in this.formData) { |
||||
|
if (typeof this.formData[n] == 'object') this.formData[n] = []; |
||||
|
else this.formData[n] = ''; |
||||
|
} |
||||
|
this.orgType = ''; |
||||
|
this.handleSearch(); |
||||
|
}, |
||||
|
add() { |
||||
|
this.dialogVisible = true; |
||||
|
this.pageType = 'add'; |
||||
|
// this.detailId = row.messageId; |
||||
|
// this.detailData = row; |
||||
|
}, |
||||
|
show(row) { |
||||
|
this.dialogVisible = true; |
||||
|
this.pageType = 'view'; |
||||
|
this.detailId = row.messageId; |
||||
|
this.detailData = row; |
||||
|
}, |
||||
|
handleClose() { |
||||
|
this.dialogVisible = false; |
||||
|
this.pageType = 'list'; |
||||
|
this.detailId = ''; |
||||
|
this.getTableData(); |
||||
|
}, |
||||
|
getOrgTreeList() { |
||||
|
const { user } = this.$store.state; |
||||
|
this.$http |
||||
|
.post('/gov/org/customeragency/agencygridtree', {}) |
||||
|
.then(({ data: res }) => { |
||||
|
if (res.code !== 0) { |
||||
|
return this.$message.error(res.msg); |
||||
|
} else { |
||||
|
console.log('获取组织树成功', res.data); |
||||
|
// let { agencyList, subAgencyList } = res.data; |
||||
|
// const _arr = [{ ...agencyList, subAgencyList: [...subAgencyList] }]; |
||||
|
// this.orgOptions = this.deepTree(_arr); |
||||
|
this.orgOptions = []; |
||||
|
this.orgOptions.push(res.data); |
||||
|
} |
||||
|
}) |
||||
|
.catch(() => { |
||||
|
return this.$message.error('网络错误'); |
||||
|
}); |
||||
|
}, |
||||
|
handleChangeAgency(val) { |
||||
|
let obj = this.$refs['myCascader'].getCheckedNodes()[0].data; |
||||
|
if (obj) { |
||||
|
this.orgType = obj.level === 'grid' ? 'grid' : 'agency'; |
||||
|
} else { |
||||
|
this.orgType = ''; |
||||
|
} |
||||
|
}, |
||||
|
async handleSearch() { |
||||
|
await this.loadTable(); |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs.ref_table.doLayout(); // 解决表格错位 |
||||
|
}); |
||||
|
}, |
||||
|
|
||||
|
async loadTable() { |
||||
|
this.tableLoading = true; |
||||
|
|
||||
|
const url = '/message/organization/message/list'; |
||||
|
// const url = "http://yapi.elinkservice.cn/mock/245/epmetuser/icNat/natlist" |
||||
|
let params = { |
||||
|
pageSize: this.pageSize, |
||||
|
pageNo: this.pageNo, |
||||
|
...this.formData |
||||
|
}; |
||||
|
|
||||
|
const { data, code, msg } = await requestPost(url, params); |
||||
|
|
||||
|
if (code === 0) { |
||||
|
this.total = data.total; |
||||
|
this.tableData = data.list; |
||||
|
|
||||
|
this.tableData.forEach(item => {}); |
||||
|
} else { |
||||
|
this.$message.error(msg); |
||||
|
} |
||||
|
this.tableLoading = false; |
||||
|
}, |
||||
|
|
||||
|
handleTimeChange(time) { |
||||
|
if (time) { |
||||
|
this.formData.startDate = time[0]; |
||||
|
this.formData.endDate = time[1]; |
||||
|
} else { |
||||
|
this.formData.startDate = ''; |
||||
|
this.formData.endDate = ''; |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
//重置搜索条件 |
||||
|
resetSearch() { |
||||
|
this.formData = { |
||||
|
publishDitch: '', //渠道 |
||||
|
orgId: '', //范围 |
||||
|
startDate: '', //检测开始时间yyyy-MM-dd HH:mm |
||||
|
endDate: '' //检测结束时间yyyy-MM-dd HH:mm |
||||
|
}; |
||||
|
this.timeRange = []; |
||||
|
this.pageNo = 0; |
||||
|
// this.loadTable() |
||||
|
}, |
||||
|
|
||||
|
handleSizeChange(val) { |
||||
|
this.pageSize = val; |
||||
|
this.pageNo = 1; |
||||
|
this.loadTable(); |
||||
|
}, |
||||
|
handleCurrentChange(val) { |
||||
|
this.pageNo = val; |
||||
|
this.loadTable(); |
||||
|
}, |
||||
|
// 开启加载动画 |
||||
|
startLoading() { |
||||
|
loading = Loading.service({ |
||||
|
lock: true, // 是否锁定 |
||||
|
text: '正在加载……', // 加载中需要显示的文字 |
||||
|
background: 'rgba(0,0,0,.7)' // 背景颜色 |
||||
|
}); |
||||
|
}, |
||||
|
// 结束加载动画 |
||||
|
endLoading() { |
||||
|
// clearTimeout(timer); |
||||
|
if (loading) { |
||||
|
loading.close(); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
}; |
||||
|
</script> |
||||
|
<style lang="scss" scoped> |
||||
|
@import '@/assets/scss/modules/management/epidemic.scss'; |
||||
|
</style> |
||||
Loading…
Reference in new issue