基本功能完善

Lvtianfang
吕天方 4 months ago
parent ec1eac282f
commit c5753c4763

@ -6,7 +6,7 @@ ENV = 'development'
# 若依管理系统/开发环境
# VUE_APP_BASE_API = '/dev-api'
VUE_APP_BASE_API = 'http://192.168.0.113:9102/api'
VUE_APP_BASE_API = 'http://192.168.0.108:9102/api'
# 路由懒加载
VUE_CLI_BABEL_TRANSPILE_MODULES = true

@ -7,11 +7,64 @@ export function new100Page() {
method: 'get',
})
}
// 右侧预警列表
export function colonyPage(params){
return request({
url: '/earlyWarningAudit/massEvents/colonyPage',
method: 'get',
params
})
}
// 分页查询审核工单列表
export function auditList(id,params){
return request({
url: '/earlyWarningAudit/massEvents/auditList/' + id,
method: 'get',
params
})
}
// 修改事件标题
export function editTitle(data){
return request({
url: '/earlyWarningAudit/massEvents/edit',
method: 'post',
data
})
}
// 事件上报或退回
export function eventChangeIsReport(data){
return request({
url: '/earlyWarningAudit/massEvents/eventChangeIsReport',
method: 'post',
data
})
}
// 分页条件查询相似事件调用记录数据
export function colonyEventPage(params){
return request({
url: '/earlyWarningAudit/similar/colonyPage',
method: 'get',
params
})
}
// 查询相似事件数据
export function similarEventsPage(id){
return request({
url: '/earlyWarningAudit/similar/similarEventsPage/' + id,
method: 'get',
})
}
//
export function noAccordWith(data){
return request({
url: '/earlyWarningAudit/similar/noAccordWith',
method: 'post',
data
})
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 625 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 912 B

@ -1,4 +1,4 @@
@font-face {
/* @font-face {
font-family: "Source Han Sans CN-Regular";
src: url("./font/SourceHanSansCN-Regular.otf");
}
@ -21,7 +21,14 @@
@font-face {
font-family: "DIN-Medium";
src: url("./font/DIN-Medium.otf");
} */
@font-face {
font-family: "AlibabaPuHuiTi";
src: url("../font/Alibaba-PuHuiTi-Regular.woff2");
}
@font-face {
font-family: "AlibabaPuHuiTi-Bold";
src: url("../font/Alibaba-PuHuiTi-Bold.woff2");
}

@ -7,6 +7,7 @@
@import './public.scss';
@import './general.scss';
@import './leaflet.scss';
@import "./font.css";
body {
height: 100%;

@ -2,6 +2,9 @@
.leaflet-popup-content-wrapper {
background-color: transparent !important;
box-shadow: none !important;
.leaflet-popup-content {
width: 340px !important;
}
}
.leaflet-popup-close-button {
display: none;
@ -23,10 +26,74 @@
border-radius: 5px 5px 0 0;
padding: 5px 10px;
.marker-msgTitle {
font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
font-family: "AlibabaPuHuiTi";
font-weight: 700;
font-size: 16px;
font-size: 18px;
color: #3D3D3D;
margin-right: 40px;
}
.markerClose {
font-size: 16px;
cursor: pointer;
color: #808080;
font-weight: bold;
}
}
.markerContent {
padding: 20px 10px;
display: grid;
grid-template-columns: 1fr;
row-gap: 10px;
.contentInfo {
display: flex;
.infoLabel {
width: 80px;
font-family: "AlibabaPuHuiTi";
font-weight: 400;
font-size: 16px;
color: #666666;
display: flex;
.labelBox {
flex: 1;
text-align-last: justify;
text-align: justify;
}
}
.infoValue {
flex: 1;
font-family: "AlibabaPuHuiTi";
font-weight: 400;
font-size: 16px;
color: #666666;
span {
font-family: "AlibabaPuHuiTi-Bold";
color: #F43147;
}
}
}
}
.markerBtns {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0px 10px 20px 10px;
.btn-audit,.btn-detailInfo {
width: 48%;
border-radius: 5px;
display: flex;
align-items: center;
justify-content: center;
line-height: 30px;
font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
font-weight: 400;
font-size: 14px;
color: #FFFFFF;
background: #2F8AE5;
cursor: pointer;
}
.btn-detailInfo {
color: #666666;
background: #E5E5E5;
}
}
}

@ -230,21 +230,48 @@
width: 70%;
}
}
.el-dialog {
.travel {
background: #FFFFFF;
.el-dialog__header {
background: #F8F9FA;
padding: 10px;
.el-dialog__title {
.dialog-title {
display: flex;
align-items: center;
justify-content: space-between;
font-size: 18px;
font-family: Source Han Sans CN;
font-weight: 400;
color: #333333;
.dialog-title-text {
font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
font-weight: 500;
font-size: 18px;
color: #3D3D3D;
position: relative;
margin-left: 5px;
}
.dialog-title-text::before {
content: "";
position: absolute;
width: 2px;
height: 16px;
left: -5px;
top: 5px;
background-color: #2F8AE5;
}
i {
cursor: pointer;
}
}
}
.el-dialog__body {
padding: 10px 20px;
.audit-generalize {
// .topRow {
// margin-bottom: 10px;
// }
//
.grid-content {
display: flex;
align-items: center;
@ -253,7 +280,12 @@
font-size: 14px;
}
.grid-value {
flex: 1;
border-radius: 2px;
height: 32px;
width: 240px;
border: 1px solid #E5E5E5;
padding: 0 15px;
line-height: 32px;
}
// value
.warning-type {
@ -263,17 +295,210 @@
.grid-value-btn {
display: flex;
align-items: center;
justify-content: space-between;
padding-right: 10px;
.grid-value-value {
.el-input {
.el-input__inner {
border-radius: 2px;
height: 32px;
width: 240px;
}
}
.el-button {
margin-left: 10px;
background: rgba(47,138,229,0.1);
border-radius: 2px 2px 2px 2px;
padding: 8px 15px;
span {
display: flex;
align-items: center;
font-family: "AlibabaPuHuiTi";
font-weight: 400;
font-size: 14px;
color: #2F8AE5;
img {
width: 14px;
height: 14px;
margin-right: 5px;
}
}
}
}
}
.lookTitle {
display: flex;
align-items: center;
margin: 10px 0;
.grid-content {
display: flex;
align-items: center;
margin: 10px 0;
.grid-title {
font-size: 14px;
}
.grid-value {
border-radius: 2px;
height: 32px;
width: 240px;
border: 1px solid #E5E5E5;
padding: 0 15px;
line-height: 32px;
white-space: nowrap; /* 不换行 */
overflow: hidden; /* 隐藏超出范围的文本 */
text-overflow: ellipsis; /* 省略号 */
}
}
.el-button {
margin-left: 10px;
background: rgba(47,138,229,0.1);
border-radius: 2px 2px 2px 2px;
padding: 8px 15px;
span {
display: flex;
align-items: center;
font-family: "AlibabaPuHuiTi";
font-weight: 400;
font-size: 14px;
color: #2F8AE5;
img {
width: 14px;
height: 14px;
margin-right: 5px;
}
}
}
}
//
.work-order-info {
display: grid;
grid-template-columns: 1fr;
row-gap: 10px;
.work-order-items {
display: flex;
.work-order-label {
width: 110px;
font-family: "AlibabaPuHuiTi";
font-weight: 400;
font-size: 16px;
color: #666666;
display: flex;
justify-content: flex-end;
}
// .work-order-top-label {
// justify-content: flex-start;
// }
.work-order-value {
flex: 1;
font-family: "AlibabaPuHuiTi";
font-weight: 400;
font-size: 16px;
color: #666666;
padding-right: 10px;
}
.work-order-change-value {
width: 400px;
white-space: nowrap; /* 不换行 */
overflow: hidden; /* 隐藏超出范围的文本 */
text-overflow: ellipsis; /* 省略号 */
}
}
.work-order-item {
display: flex;
align-items: center;
.work-order-item-left {
display: flex;
align-items: center;
.work-order-label {
width: 110px;
display: flex;
align-items: center;
justify-content: flex-end;
font-family: "AlibabaPuHuiTi";
font-weight: 400;
font-size: 16px;
color: #666666;
}
.el-input {
height: 32px;
width: 240px;
.el-input__inner {
border-radius: 2px;
width: 100%;
height: 100%;
}
}
.work-order-value-value {
width: 240px;
white-space: nowrap; /* 不换行 */
overflow: hidden; /* 隐藏超出范围的文本 */
text-overflow: ellipsis; /* 省略号 */
}
}
.el-button {
margin-left: 10px;
background: rgba(47,138,229,0.1);
border-radius: 2px 2px 2px 2px;
padding: 8px 15px;
span {
display: flex;
align-items: center;
font-family: "AlibabaPuHuiTi";
font-weight: 400;
font-size: 14px;
color: #2F8AE5;
img {
width: 14px;
height: 14px;
margin-right: 5px;
}
}
}
}
}
//
#newmapTwo {
width: 100%;
height: 300px;
}
}
.audit-table {
.table-box {
padding: 0;
.el-table {
.anjianmiaoshu {
.cell {
display: -webkit-box; /* 必需的,使用弹性盒模型 */
-webkit-box-orient: vertical; /* 必需的,设置弹性盒方向为垂直 */
-webkit-line-clamp: 2; /* 显示的行数 */
overflow: hidden; /* 隐藏超出范围的内容 */
text-overflow: ellipsis; /* 省略号 */
}
}
.sign {
color: #D9001B;
}
.unmark {
color: #32B16C;
}
.operation-box {
.cell {
display: flex;
align-items: center;
justify-content: center;
}
}
.operation {
display: flex;
align-items: center;
.el-button {
padding: 0;
}
.tagsImg {
width: 20px;
height: 20px;
margin-right: 10px;
}
}
}
}
}
}

@ -2,52 +2,70 @@
<el-dialog
:visible.sync="showCK"
width="80%"
:title="title"
@close="close"
:show-close="false"
:close-on-click-modal="false"
:close-on-press-escape="false"
custom-class="travel"
>
<div slot="title" class="dialog-title">
<div class="dialog-title-text">{{ title }}</div>
<i @click="close" class="el-icon-close"></i>
</div>
<div class="audit-generalize">
<el-row>
<el-col :span="14">
<div class="grid-content">
<el-col :span="8">
<div class="grid-content" v-if="auditStatus == 1">
<div class="grid-title">概括名称</div>
<div class="grid-value grid-value-btn">
<div class="grid-value-value">{{ audioInfo.title }}</div>
<el-button type="danger" size="mini">修改标题</el-button>
<div class="grid-value-btn">
<el-input class="grid-value-value" v-loading="InputLoading" @blur="titleBlur" v-model="audioInfo.title" placeholder="概括名称" :disabled="disabled"></el-input>
<el-button size="mini" @click="changeTitle"><img src="@/assets/images/changeTitle.png" alt=""> 修改标题</el-button>
</div>
</div>
<div class="lookTitle" v-else>
<div class="grid-content">
<div class="grid-title">概括名称</div>
<el-tooltip class="item" effect="light" :content="audioInfo.title" placement="top">
<div class="grid-value">{{ audioInfo.title }}</div>
</el-tooltip>
</div>
<el-button size="mini" @click="lookTitleBefore"><img src="@/assets/images/changeTitle.png" alt=""> 查看原标题</el-button>
</div>
</el-col>
<el-col :span="8">
<div class="grid-content">
<div class="grid-title">预警时间</div>
<div class="grid-value">{{ audioInfo.time }}</div>
<div class="grid-value">{{ audioInfo.firstWarnTime }}</div>
</div>
</el-col>
<el-col :span="8">
<div class="grid-content">
<div class="grid-title">事件数量</div>
<div class="grid-value">{{ audioInfo.nums }}</div>
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="14">
<el-col :span="8">
<div class="grid-content">
<div class="grid-title">预警因素</div>
<div class="grid-value">{{ audioInfo.factor }}</div>
<div class="grid-value">{{ audioInfo.warnFactor }}</div>
</div>
</el-col>
<el-col :span="8">
<div class="grid-content">
<div class="grid-title">预警类别</div>
<div class="grid-value warning-type">{{ audioInfo.type ? audioInfo.type : "预警类别" }}</div>
<div class="grid-value warning-type">{{ audioInfo.msgType == '1' ? "群体事件" : audioInfo.msgType == '2' ? "同人同诉" : audioInfo.msgType == '3' ? "紧急事件" : audioInfo.msgType == '4' ? "重点人员" : audioInfo.msgType == '5' ? "一人多诉" : "" }}</div>
</div>
</el-col>
</el-row>
<el-row>
<!-- <el-row>
<el-col :span="14">
<div class="grid-content">
<div class="grid-title">事件数量</div>
<div class="grid-value">{{ audioInfo.number }}</div>
</div>
</el-col>
</el-row>
</el-row> -->
</div>
<div class="audit-table">
<section class="table-box">
@ -59,20 +77,33 @@
width="55"
align="center"
/>
<el-table-column label="工单编号" align="center" prop="id">
<el-table-column label="工单编号" align="center" prop="caseSerial">
</el-table-column>
<el-table-column label="案件描述" align="center" prop="factor">
<el-table-column label="案件描述" align="center" prop="caseTitle">
</el-table-column>
<el-table-column label="地点" align="center" prop="address">
<el-table-column label="地点" align="center" prop="caseAddress">
</el-table-column>
<el-table-column label="上报时间" align="center" prop="time">
<el-table-column label="上报时间" align="center" prop="caseDate">
</el-table-column>
<el-table-column label="操作" align="center">
<el-table-column label="审核时间" v-if="auditStatus == 2" align="center" prop="auditTime">
</el-table-column>
<el-table-column label="审核结果" v-if="auditStatus == 2" align="center" prop="isReport">
<template slot-scope="scope">
<button @click="toDetail(scope.row)" class="sqbtn sqbtn1">
查看详情
</button>
<span>非同一事件</span>
<span class="sign" v-if="scope.row.isReport == 1 || scope.row.isReport == 2 "></span>
<span class="unmark" v-else></span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="operation-box">
<template slot-scope="scope">
<div class="operation">
<img class="tagsImg" src="@/assets/images/tags.png" alt="" v-if="scope.row.showTags">
<el-button @click="toDetail(scope.row)" type="text" style="margin-right: 5px;" class="sqbtn sqbtn1">
查看详情
</el-button>
<el-button @click="sign(scope.row)" type="text" style="color: #D9001B;" v-if="auditStatus == 1">
非同一事件
</el-button>
</div>
</template>
</el-table-column>
</el-table>
@ -88,82 +119,181 @@
></pagination>
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary">上报驾驶舱</el-button>
<el-button type="info">不上报</el-button>
<el-button type="danger">退回重训练</el-button>
<div slot="footer" class="dialog-footer" v-if="auditStatus == 1">
<el-button type="primary" @click="reported(1)"></el-button>
<!-- <el-button type="info" plain>不上报</el-button> -->
<el-button type="danger" @click="reported(2)">退</el-button>
</div>
<el-dialog
width="30%"
title="查看标题"
:visible.sync="innerVisible"
append-to-body>
<el-descriptions :column="1">
<el-descriptions-item label="修改前标题">{{ audioInfo.title }}</el-descriptions-item>
<el-descriptions-item label="修改后标题">{{ audioInfo.titleBefore }}</el-descriptions-item>
</el-descriptions>
</el-dialog>
</el-dialog>
</template>
<script>
import { auditList, eventChangeIsReport, editTitle } from "@/api/eventPage"
export default {
data() {
return {
showCK:false,
audioInfo:{},
backupsInfo:{},
loading:false,
tableData:[
{
id:"C23123101322",
factor:"服务对象来电称12月31日21:49左右高新区大阳山植物园虎丘区阳山南路8号拥堵……",
address:"虎丘区大阳山植物园景区",
time:"2023-07-30 14:26:30",
},{
id:"C23123101322",
factor:"服务对象来电称12月31日21:49左右高新区大阳山植物园虎丘区阳山南路8号拥堵……",
address:"虎丘区大阳山植物园景区",
time:"2023-07-30 14:26:30",
},{
id:"C23123101322",
factor:"服务对象来电称12月31日21:49左右高新区大阳山植物园虎丘区阳山南路8号拥堵……",
address:"虎丘区大阳山植物园景区",
time:"2023-07-30 14:26:30",
},{
id:"C23123101322",
factor:"服务对象来电称12月31日21:49左右高新区大阳山植物园虎丘区阳山南路8号拥堵……",
address:"虎丘区大阳山植物园景区",
time:"2023-07-30 14:26:30",
},{
id:"C23123101322",
factor:"服务对象来电称12月31日21:49左右高新区大阳山植物园虎丘区阳山南路8号拥堵……",
address:"虎丘区大阳山植物园景区",
time:"2023-07-30 14:26:30",
},{
id:"C23123101322",
factor:"服务对象来电称12月31日21:49左右高新区大阳山植物园虎丘区阳山南路8号拥堵……",
address:"虎丘区大阳山植物园景区",
time:"2023-07-30 14:26:30",
},
],
InputLoading:false,
tableData:[],
total:0,
pages: {
current: 1,
size: 10
}
},
disabled:true,
multipleSelection: [],
innerVisible:false,
}
},
props:{
title:{
type:String,
default:""
},
auditStatus:{
type:Number,
required: true
}
},
props:["title"],
methods:{
//
open(row){
this.audioInfo = row;
this.audioInfo = {...row};
this.backupsInfo = {...row};
this.showCK = true;
this.getList(row.innerEventId);
},
//
close(){
this.showCK = false;
this.InputLoading = false;
this.loading = false;
this.multipleSelection = [];
this.$emit('closeDialog')
},
getList(id){
this.loading = true;
auditList(id,{...this.pages}).then(res=>{
this.tableData = [...res.data.records];
if(this.multipleSelection.length > 0) {
this.tableData.map(item=>{
this.multipleSelection.map(itemTwo=>{
if(item.caseSerial = itemTwo) {
// item.showTags = true;
this.$set(item, 'showTags', true);
}
})
})
} else {
this.tableData.map(item=>{
// item.showTags = true;
this.$set(item, 'showTags', false);
})
}
this.total = res.data.total;
this.loading = false;
}).catch(err=>{
this.loading = false;
})
},
//
toDetail(){},
//
sign(row){
this.tableData.map(item=>{
if(item.caseSerial == row.caseSerial) {
item.showTags = !item.showTags;
// console.log(item.showTags,"item.showTags");
if(item.showTags) {
this.multipleSelection.push(row.caseSerial)
} else {
this.multipleSelection = this.multipleSelection.filter(itemTwo => itemTwo !== row.caseSerial);
}
}
})
// console.log(this.multipleSelection,"this.multipleSelection");
},
// /退
reported(id){
// console.log(this.multipleSelection);
// console.log(this.audioInfo.innerEventId);
if(id == 1) {
//
eventChangeIsReport({isReport:1,caseSerial:this.multipleSelection,innerEventId:this.audioInfo.innerEventId}).then(res=>{
// console.log(res);
this.multipleSelection = [];
this.$message({
type: "success",
message: "已上报驾驶舱!",
});
this.close();
})
} else {
// 退
eventChangeIsReport({isReport:2,caseSerial:this.multipleSelection,innerEventId:this.audioInfo.innerEventId}).then(res=>{
// console.log(res);
this.multipleSelection = [];
this.$message({
type: "success",
message: "已退回重训练!",
});
this.close();
})
}
},
//
lookTitleBefore(){
this.innerVisible = true;
},
//
changeTitle(){
this.disabled = false;
},
//
titleBlur(){
this.disabled = true;
// console.log(this.backupsInfo.title);
// console.log(this.audioInfo.title);
if(this.backupsInfo.title !== this.audioInfo.title) {
this.InputLoading = true;
editTitle({title:this.audioInfo.title, innerEventId:this.audioInfo.innerEventId}).then(res=>{
if(res.code == 200) {
this.$message({
type: "success",
message: "标题修改成功!",
});
this.InputLoading = false;
}
}).catch(err=>{
this.InputLoading = false;
})
}
},
//
getPagination(pages) {
this.pages.current = pages.page;
this.pages.size = pages.limit;
this.getList(this.audioInfo.innerEventId);
},
//
addStyle({row, column, rowIndex, columnIndex}) {
if(columnIndex === 2) {
return "columnFactor"
}
}
},
},
}
</script>

@ -0,0 +1,192 @@
<template>
<el-dialog
:visible.sync="showCK"
width="80%"
:show-close="false"
:close-on-click-modal="false"
:close-on-press-escape="false"
custom-class="travel"
>
<div slot="title" class="dialog-title">
<div class="dialog-title-text">{{ title }}</div>
<i @click="close" class="el-icon-close"></i>
</div>
<div class="audit-generalize">
<el-row>
<el-col :span="12">
<div class="grid-content">
<div class="grid-title">事件名称</div>
<div class="grid-value">{{ audioInfo.title }}</div>
</div>
</el-col>
<el-col :span="12">
<div class="grid-content">
<div class="grid-title">调用时间</div>
<div class="grid-value">{{ audioInfo.createTime }}</div>
</div>
</el-col>
</el-row>
</div>
<div class="audit-table">
<section class="table-box">
<div class="table-item">
<el-table v-loading="loading" :data="tableData" :cell-class-name="addStyle" border>
<el-table-column
type="index"
label="序号"
width="55"
align="center"
/>
<el-table-column label="工单编号" align="center" prop="resultId">
</el-table-column>
<el-table-column label="案件描述" align="center" prop="content" class-name="anjianmiaoshu">
</el-table-column>
<el-table-column label="地点" align="center" prop="place">
</el-table-column>
<el-table-column label="相似度" align="center" prop="similarity">
<template slot-scope="scope">
<span>{{ scope.row.similarity }}%</span>
</template>
</el-table-column>
<el-table-column label="上报时间" align="center" prop="sbsj">
</el-table-column>
<el-table-column label="审核时间" v-if="auditStatus == 2" align="center" prop="createTime">
</el-table-column>
<el-table-column label="审核结果" v-if="auditStatus == 2" align="center" prop="isReport">
<template slot-scope="scope">
<span v-if="scope.row.isReport == 1 || scope.row.isReport == 2 "></span>
<span v-else></span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="operation-box">
<template slot-scope="scope">
<div class="operation">
<!-- <img class="tagsImg" src="@/assets/images/tags.png" alt="" v-if="scope.row.isReport"> -->
<el-button @click="toDetail(scope.row)" type="text" style="margin-right: 5px;" class="sqbtn sqbtn1">
查看详情
</el-button>
<el-button @click="sign(scope.row)" type="text" style="color: #D9001B;" v-if="auditStatus == 1 && !scope.row.isReport">
不符合
</el-button>
<el-button @click="unmark(scope.row)" type="text" style="color: #D9001B;" v-if="auditStatus == 1 && scope.row.isReport">
已标记不符合
</el-button>
</div>
</template>
</el-table-column>
</el-table>
</div>
</section>
</div>
<div slot="footer" class="dialog-footer" v-if="auditStatus == 1">
<!-- <el-button type="primary" @click="reported(1)"></el-button> -->
<!-- <el-button type="info" plain>不上报</el-button> -->
<!-- <el-button type="danger" @click="reported(2)">退</el-button> -->
<el-button type="primary" @click="reported">退</el-button>
</div>
</el-dialog>
</template>
<script>
import { similarEventsPage, noAccordWith } from "@/api/eventPage"
export default {
data() {
return {
showCK:false,
audioInfo:{},
loading:false,
InputLoading:false,
tableData:[],
disabled:true,
multipleSelection: []
}
},
props:{
title:{
type:String,
default:""
},
auditStatus:{
type:Number,
required: true
}
},
methods:{
//
open(row){
this.audioInfo = {...row};
this.showCK = true;
this.getList(row.targetId);
},
//
close(){
this.showCK = false;
this.InputLoading = false;
this.loading = false;
this.multipleSelection = [];
},
getList(id){
this.loading = true;
similarEventsPage(id).then(res=>{
console.log(res);
this.tableData = [...res.data];
// if(this.multipleSelection.length > 0) {
// this.tableData.map(item=>{
// this.multipleSelection.map(itemTwo=>{
// if(item.targetId = itemTwo) {
// this.$set(item, 'showTags', true);
// }
// })
// })
// } else {
// this.tableData.map(item=>{
// // item.showTags = true;
// this.$set(item, 'showTags', false);
// })
// }
this.loading = false;
}).catch(err=>{
this.loading = false;
})
},
//
toDetail(){},
//
sign(row){
this.tableData.map(item=>{
if(item.targetId == row.targetId) {
item.isReport = !item.isReport;
// console.log(item.showTags,"item.showTags");
if(item.isReport) {
this.multipleSelection.push(row.targetId)
} else {
this.multipleSelection = this.multipleSelection.filter(itemTwo => itemTwo !== row.targetId);
}
}
})
// console.log(this.multipleSelection,"this.multipleSelection");
},
// /退
reported(){
// console.log(this.multipleSelection);
// console.log(this.audioInfo.innerEventId);
noAccordWith({resultId:this.multipleSelection}).then(res=>{
// console.log(res);
this.multipleSelection = [];
this.$message({
type: "success",
message: "已提交重训练!",
});
this.close();
this.$emit('closeDialog')
})
},
//
addStyle({row, column, rowIndex, columnIndex}) {
if(columnIndex === 2) {
return "columnFactor"
}
},
},
}
</script>

@ -0,0 +1,312 @@
<!-- 紧急事件审核弹框 -->
<template>
<el-dialog
:visible.sync="showCK"
v-if="showCK"
width="60%"
:show-close="false"
:close-on-click-modal="false"
:close-on-press-escape="false"
custom-class="travel"
>
<div slot="title" class="dialog-title">
<div class="dialog-title-text">{{ title }}</div>
<i @click="close" class="el-icon-close"></i>
</div>
<div class="audit-generalize">
<el-row>
<el-col :span="14">
<div class="work-order-info ">
<div class="work-order-item" v-if="auditStatus == 1">
<div class="work-order-item-left">
<div class="work-order-label">
<div class="work-order-labelBox">事件名称</div>
<span></span>
</div>
<el-input class="work-order-value-value" @blur="titleBlur" v-model="eventInfo.title" placeholder="概括名称" :disabled="disabled"></el-input>
</div>
<el-button size="mini" @click="disabled = false"><img src="@/assets/images/changeTitle.png" alt=""> 修改标题</el-button>
</div>
<div class="work-order-item" v-else>
<div class="work-order-item-left">
<div class="work-order-label">
<div class="work-order-labelBox">事件名称</div>
<span></span>
</div>
<el-tooltip class="item" effect="light" :content="eventInfo.title" placement="top">
<div class="work-order-value work-order-value-value">{{ eventInfo.title }}</div>
</el-tooltip>
</div>
<el-button size="mini" @click="innerVisible = true"><img src="@/assets/images/changeTitle.png" alt=""> 查看标题</el-button>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">预警因素</div>
<span></span>
</div>
<div class="work-order-value">{{ eventInfo.warnFactor }}</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">预警时间</div>
<span></span>
</div>
<div class="work-order-value">{{ eventInfo.firstWarnTime }}</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">预警类别</div>
<span></span>
</div>
<div class="work-order-value">{{ eventInfo.msgTypeName }}</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox order-labelBox">事件来源</div>
<span></span>
</div>
<div class="work-order-value">{{ audioInfo.scenceName }}</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">诉求类型</div>
<span></span>
</div>
<div class="work-order-value">{{ audioInfo.caseType }}</div>
</div>
<!-- <div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">案件类型</div>
<span></span>
</div>
<div class="work-order-value">{{ audioInfo.caseAccord }}</div>
</div> -->
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">工单标题</div>
<span></span>
</div>
<div class="work-order-value">{{ audioInfo.caseTitle }}</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">制单时间</div>
<span></span>
</div>
<div class="work-order-value">{{ audioInfo.caseDate }}</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">诉求内容</div>
<span></span>
</div>
<div class="work-order-value">
{{ audioInfo.caseContent }}
</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">位置描述</div>
<span></span>
</div>
<div class="work-order-value">{{ audioInfo.caseAddress }}</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">来电号码</div>
<span></span>
</div>
<div class="work-order-value">{{ audioInfo.creatorTel }}</div>
</div>
<div class="work-order-items">
<div class="work-order-label">
<div class="work-order-labelBox">服务对象姓名</div>
<span></span>
</div>
<div class="work-order-value">{{ audioInfo.creatorName }}</div>
</div>
</div>
</el-col>
<el-col :span="10">
<div id="newmapTwo" v-loading="mapLoading"></div>
</el-col>
</el-row>
</div>
<div slot="footer" class="dialog-footer" v-if="auditStatus == 1">
<el-button type="primary" @click="reported(1)"></el-button>
<!-- <el-button type="info" plain>不上报</el-button> -->
<el-button type="danger" @click="reported(2)">退</el-button>
</div>
<el-dialog
width="30%"
title="查看标题"
:visible.sync="innerVisible"
append-to-body>
<el-descriptions :column="1">
<el-descriptions-item label="修改前标题">{{ eventInfo.title }}</el-descriptions-item>
<el-descriptions-item label="修改后标题">{{ eventInfo.titleBefore }}</el-descriptions-item>
</el-descriptions>
</el-dialog>
</el-dialog>
</template>
<script>
import L from "leaflet";
import 'leaflet.markercluster';
import "leaflet.markercluster/dist/MarkerCluster.css"
import "proj4";
import "proj4leaflet";
import "@/utils/lib/leaflet.ChineseTmsProviders.js";
import "@/utils/lib/leaflet.mapCorrection.min.js";
import { auditList, eventChangeIsReport, editTitle } from "@/api/eventPage"
export default {
data() {
return {
showCK:false,
audioInfo:{},
eventInfo:{},
backupsInfo:{},
loading:false,
mapLoading:false,
mapLayers: {
mapLayer1: null,
},
disabled: true,
innerVisible:false,
}
},
props:{
title:{
type:String,
default:""
},
auditStatus:{
type:Number,
required: true
}
},
mounted(){
},
methods:{
//
open(row){
this.showCK = true;
this.eventInfo = {...row}
this.backupsInfo = {...row}
this.getList(row.innerEventId);
this.$nextTick(() => {
this.initMap();
});
},
//
close(){
this.showCK = false;
this.loading = false;
},
initMap(){
this.map = L.map("newmapTwo", {
// crs: L.CRS.Baidu,
center: [31.324624, 120.582904],
zoom: 12,
attributionControl: false,
zoomControl: false,
});
this.basemap = L.tileLayer.chinaProvider("GaoDe.Normal.Map", {
maxZoom: 18,
minZoom: 5,
});
this.map.addLayer(this.basemap);
this.map.createPane("mapLayer1");
this.map.getPane("mapLayer1").style.zIndex = 501;
this.map.getPane("mapLayer1").style.pointerEvents = "none";
// this.map.createPane("mapLayer2");
// this.map.getPane("mapLayer2").style.zIndex = 501;
// this.map.getPane("mapLayer2").style.pointerEvents = "none";
// this.map.createPane("mapLayer3");
// this.map.getPane("mapLayer3").style.zIndex = 501;
// this.map.getPane("mapLayer3").style.pointerEvents = "none";
// this.map.createPane("mapLayer4");
// this.map.getPane("mapLayer4").style.zIndex = 501;
// this.map.getPane("mapLayer4").style.pointerEvents = "none";
// this.map.createPane("mapLayer5");
// this.map.getPane("mapLayer5").style.zIndex = 501;
// this.map.getPane("mapLayer5").style.pointerEvents = "none";
this.mapLayers.mapLayer1 = L.featureGroup().addTo(this.map);
// this.mapLayers.mapLayer2 = L.featureGroup().addTo(this.map);
// this.mapLayers.mapLayer3 = L.featureGroup().addTo(this.map);
// this.mapLayers.mapLayer4 = L.featureGroup().addTo(this.map);
// this.mapLayers.mapLayer5 = L.featureGroup().addTo(this.map);
// this.getPosition();
},
getList(id){
this.loading = true;
auditList(id).then(res=>{
this.audioInfo = {...res.data.records[0]};
if(this.audioInfo.caseLnglat) {
//
}
this.loading = false;
}).catch(err=>{
this.loading = false;
})
},
titleBlur(){
this.disabled = true;
if(this.backupsInfo.title !== this.eventInfo.title) {
editTitle({title:this.eventInfo.title, innerEventId:this.eventInfo.innerEventId}).then(res=>{
if(res.code == 200) {
this.$message({
type: "success",
message: "标题修改成功!",
});
}
})
}
},
// /退
reported(id){
// console.log(this.multipleSelection);
// console.log(this.audioInfo.innerEventId);
if(id == 1) {
//
eventChangeIsReport({isReport:1,caseSerial:[this.audioInfo.caseSerial],innerEventId:this.eventInfo.innerEventId}).then(res=>{
// console.log(res);
this.multipleSelection = [];
this.$message({
type: "success",
message: "已上报驾驶舱!",
});
this.close();
this.$emit('closeDialog')
})
} else {
// 退
eventChangeIsReport({isReport:2,caseSerial:[this.audioInfo.caseSerial],innerEventId:this.eventInfo.innerEventId}).then(res=>{
// console.log(res);
this.multipleSelection = [];
this.$message({
type: "success",
message: "已退回重训练!",
});
this.close();
this.$emit('closeDialog')
})
}
},
//
addStyle({row, column, rowIndex, columnIndex}) {
if(columnIndex === 2) {
return "columnFactor"
}
},
},
}
</script>

@ -30,9 +30,9 @@
<div class="foot">
<el-button v-if="index == 1" type="primary" size="mini" @click="audit"></el-button>
<div v-else class="eventInfo">
<div class="audit">审核通</div>
<div class="audit" @click="auditPass"></div>
<span></span>
<div class="info">查看详</div>
<div class="info" @click="detailInfo"></div>
</div>
</div>
</div>
@ -230,6 +230,7 @@ export default {
{ icon: myIcon1 }
)
this.mapLayers.mapLayer1.addLayer(marker);
this.markerClick(marker, index, item);
} else if(item.msgType == '3'){
let lat = item.caseLnglat.split(",")[1];
let lon = item.caseLnglat.split(",")[0];
@ -247,6 +248,7 @@ export default {
{ icon: myIcon3 }
)
this.mapLayers.mapLayer3.addLayer(marker);
this.markerClick(marker, index, item);
} else if(item.msgType == '2'){
let lat = item.caseLnglat.split(",")[1];
let lon = item.caseLnglat.split(",")[0];
@ -264,6 +266,7 @@ export default {
{ icon: myIcon5 }
)
this.mapLayers.mapLayer5.addLayer(marker);
this.markerClick(marker, index, item);
}
})
this.mapLoading = false;
@ -274,21 +277,66 @@ export default {
markerClick(marker, index, item){
const that = this;
marker.on("click", (e) => {
//
marker.unbindPopup();
marker.bindPopup(
`<div class="markerDialog">
<div class="markerTitle">
<span class="marker-msgTitle">${item.caseTitle}</span>
<i class="el-icon-close" id="close"></i>
<i class="el-icon-close markerClose" id="markerClose${index}"></i>
</div>
<div class="markerContent">
<div class="contentInfo">
<div class="infoLabel">
<div class="labelBox">预警时间</div>
<span></span>
</div>
<div class="infoValue">${item.caseDate}</div>
</div>
<div class="contentInfo">
<div class="infoLabel">
<div class="labelBox">预警类别</div>
<span></span>
</div>
<div class="infoValue">${item.msgType == '1' ? "群体事件" : item.msgType == '2' ? "同人同诉" : item.msgType == '3' ? "紧急事件" : item.msgType == '4' ? "重点人员" : item.msgType == '5' ? "一人多诉" : ""}</div>
</div>
<div class="contentInfo">
<div class="infoLabel">
<div class="labelBox"> </div>
<span></span>
</div>
<div class="infoValue">${item.caseAddress}</div>
</div>
<div class="contentInfo">
<div class="infoLabel">
<div class="labelBox">事件数量</div>
<span></span>
</div>
<div class="infoValue"><span>${item.nums}</span></div>
</div>
</div>
<div class="markerBtns">
<div class="btn-audit" id="markerAudit${index}">审核</div>
<div class="btn-detailInfo" id="markerInfo${index}">查看详情</div>
</div>
</div>`,
{
className: "marsk-box",
offset: L.point(0,50)
offset: L.point(0,75)
}
).openPopup();
//ElementsById()elementaddEventListener()
document.querySelector(`#markerClose` + index).addEventListener("click", function () {
marker.closePopup();
});
//
document.querySelector(`#markerAudit` + index).addEventListener("click", function () {
});
//
document.querySelector(`#markerInfo` + index).addEventListener("click", function () {
});
})
},
//
@ -300,6 +348,14 @@ export default {
//
audit(){
},
//
auditPass(){
},
//
detailInfo(){
},
},
}

@ -56,10 +56,13 @@
<el-table-column label="事件数量" key="msgTypeName" width="200px" prop="msgTypeName" />
<el-table-column label="操作" class-name="table-operation-anniu" align="center">
<template slot-scope="scope">
<div @click="audit(scope.row)" class="go-audit">
<div @click="audit(scope.row)" class="go-audit" v-if="activeName == 'first'">
<img src="@/assets/images/audit.png" alt="">
<span>审核</span>
</div>
<el-button v-else @click="audit(scope.row)" type="text" style="margin-right: 5px;" class="sqbtn sqbtn1">
查看详情
</el-button>
</template>
</el-table-column>
</el-table>
@ -74,7 +77,7 @@
></pagination>
</section>
</div>
<event-audit title="事件审核" ref="eventAudit"></event-audit>
<event-audit title="事件审核" ref="eventAudit" :auditStatus="auditStatus" @closeDialog="getList"></event-audit>
</div>
</template>
<script>
@ -114,6 +117,7 @@ export default {
msgType: '4',
isReport:null,
},
auditStatus: 1,
}
},
mounted(){
@ -128,12 +132,15 @@ export default {
handleClick(e) {
if (this.activeName == "first") {
this.pagination.isReport = null
this.auditStatus = 1;
this.getList();
} else if (this.activeName == "second") {
this.pagination.isReport = 1
this.auditStatus = 2;
this.getList();
} else if (this.activeName == "third") {
this.pagination.isReport = 2
this.auditStatus = 2;
this.getList();
}
},

@ -56,10 +56,13 @@
<el-table-column label="事件数量" key="msgTypeName" width="200px" prop="msgTypeName" />
<el-table-column label="操作" class-name="table-operation-anniu" align="center">
<template slot-scope="scope">
<div @click="audit(scope.row)" class="go-audit">
<div @click="audit(scope.row)" class="go-audit" v-if="activeName == 'first'">
<img src="@/assets/images/audit.png" alt="">
<span>审核</span>
</div>
<el-button v-else @click="audit(scope.row)" type="text" style="margin-right: 5px;" class="sqbtn sqbtn1">
查看详情
</el-button>
</template>
</el-table-column>
</el-table>
@ -74,7 +77,7 @@
></pagination>
</section>
</div>
<event-audit title="事件审核" ref="eventAudit"></event-audit>
<event-audit title="事件审核" ref="eventAudit" :auditStatus="auditStatus" @closeDialog="getList"></event-audit>
</div>
</template>
<script>
@ -114,6 +117,7 @@ export default {
msgType: '1',
isReport:null,
},
auditStatus: 1,
}
},
mounted(){
@ -125,15 +129,19 @@ export default {
window.removeEventListener('resize', this.cancalDebounce);
},
methods:{
// tab
handleClick(e) {
if (this.activeName == "first") {
this.pagination.isReport = null
this.pagination.isReport = null;
this.auditStatus = 1;
this.getList();
} else if (this.activeName == "second") {
this.pagination.isReport = 1
this.pagination.isReport = 1;
this.auditStatus = 2;
this.getList();
} else if (this.activeName == "third") {
this.pagination.isReport = 2
this.pagination.isReport = 2;
this.auditStatus = 2;
this.getList();
}
},

@ -56,10 +56,13 @@
<el-table-column label="事件数量" key="msgTypeName" width="200px" prop="msgTypeName" />
<el-table-column label="操作" class-name="table-operation-anniu" align="center">
<template slot-scope="scope">
<div @click="audit(scope.row)" class="go-audit">
<div @click="audit(scope.row)" class="go-audit" v-if="activeName == 'first'">
<img src="@/assets/images/audit.png" alt="">
<span>审核</span>
</div>
<el-button v-else @click="audit(scope.row)" type="text" style="margin-right: 5px;" class="sqbtn sqbtn1">
查看详情
</el-button>
</template>
</el-table-column>
</el-table>
@ -74,15 +77,15 @@
></pagination>
</section>
</div>
<event-audit title="事件审核" ref="eventAudit"></event-audit>
<urgency-audit title="工单审核" ref="urgencyAudit" :auditStatus="auditStatus" @closeDialog="getList"></urgency-audit>
</div>
</template>
<script>
import { colonyPage } from "@/api/eventPage"
import EventAudit from '@/views/components/eventAudit.vue'
import urgencyAudit from '@/views/components/urgencyAudit.vue'
export default {
components:{
EventAudit,
urgencyAudit,
},
data() {
return {
@ -114,6 +117,7 @@ export default {
msgType: '3',
isReport:null,
},
auditStatus: 1,
}
},
mounted(){
@ -128,12 +132,15 @@ export default {
handleClick(e) {
if (this.activeName == "first") {
this.pagination.isReport = null
this.auditStatus = 1;
this.getList();
} else if (this.activeName == "second") {
this.pagination.isReport = 1
this.auditStatus = 2;
this.getList();
} else if (this.activeName == "third") {
this.pagination.isReport = 2
this.auditStatus = 2;
this.getList();
}
},
@ -177,7 +184,7 @@ export default {
this.getList();
},
audit(item){
this.$refs.eventAudit.open(item);
this.$refs.urgencyAudit.open(item);
},
//
cancalDebounce(){

@ -56,10 +56,13 @@
<el-table-column label="事件数量" key="msgTypeName" width="200px" prop="msgTypeName" />
<el-table-column label="操作" class-name="table-operation-anniu" align="center">
<template slot-scope="scope">
<div @click="audit(scope.row)" class="go-audit">
<div @click="audit(scope.row)" class="go-audit" v-if="activeName == 'first'">
<img src="@/assets/images/audit.png" alt="">
<span>审核</span>
</div>
<el-button v-else @click="audit(scope.row)" type="text" style="margin-right: 5px;" class="sqbtn sqbtn1">
查看详情
</el-button>
</template>
</el-table-column>
</el-table>
@ -74,7 +77,7 @@
></pagination>
</section>
</div>
<event-audit title="事件审核" ref="eventAudit"></event-audit>
<event-audit title="事件审核" ref="eventAudit" :auditStatus="auditStatus" @closeDialog="getList"></event-audit>
</div>
</template>
<script>
@ -114,6 +117,7 @@ export default {
msgType: '5',
isReport:null,
},
auditStatus: 1,
}
},
mounted(){
@ -128,12 +132,15 @@ export default {
handleClick(e) {
if (this.activeName == "first") {
this.pagination.isReport = null
this.auditStatus = 1;
this.getList();
} else if (this.activeName == "second") {
this.pagination.isReport = 1
this.auditStatus = 2;
this.getList();
} else if (this.activeName == "third") {
this.pagination.isReport = 2
this.auditStatus = 2;
this.getList();
}
},

@ -56,10 +56,13 @@
<el-table-column label="事件数量" key="msgTypeName" width="200px" prop="msgTypeName" />
<el-table-column label="操作" class-name="table-operation-anniu" align="center">
<template slot-scope="scope">
<div @click="audit(scope.row)" class="go-audit">
<div @click="audit(scope.row)" class="go-audit" v-if="activeName == 'first'">
<img src="@/assets/images/audit.png" alt="">
<span>审核</span>
</div>
<el-button v-else @click="audit(scope.row)" type="text" style="margin-right: 5px;" class="sqbtn sqbtn1">
查看详情
</el-button>
</template>
</el-table-column>
</el-table>
@ -74,7 +77,7 @@
></pagination>
</section>
</div>
<event-audit title="事件审核" ref="eventAudit"></event-audit>
<event-audit title="事件审核" ref="eventAudit" :auditStatus="auditStatus" @closeDialog="getList"></event-audit>
</div>
</template>
<script>
@ -114,6 +117,7 @@ export default {
msgType: '2',
isReport:null,
},
auditStatus: 1,
}
},
mounted(){
@ -128,12 +132,15 @@ export default {
handleClick(e) {
if (this.activeName == "first") {
this.pagination.isReport = null
this.auditStatus = 1;
this.getList();
} else if (this.activeName == "second") {
this.pagination.isReport = 1
this.auditStatus = 2;
this.getList();
} else if (this.activeName == "third") {
this.pagination.isReport = 2
this.auditStatus = 2;
this.getList();
}
},

@ -1 +1,184 @@
<!-- 驾驶舱相似同类事件 -->
<!-- 驾驶舱相似同类事件 -->
<template>
<div class="L-ultimately-container">
<header>驾驶舱相似同类事件</header>
<div class="tabs">
<el-tabs
v-model="activeName"
@tab-click="handleClick"
style="color: #edeef0"
>
<el-tab-pane label="调用记录" name="first" />
<el-tab-pane label="重训练" name="third" />
</el-tabs>
</div>
<div class="container-info" id="L-size-main">
<header id="L-header">
<el-form :inline="true" :model="formInline" size="small" class="demo-form-inline">
<el-form-item label="事件标题:">
<el-input v-model="formInline.title" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="调用时间:">
<!-- <el-date-picker
class="ignoreElement"
v-model="formInline.firstWarnTime"
format="yyyy"
value-format="yyyy"
type="year"
placeholder="选择年份">
</el-date-picker> -->
<el-date-picker
v-model="formInline.time"
format="yyyy-MM-dd HH:mm:ss"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
start-placeholder="开始时间"
end-placeholder="结束时间"
placeholder="请选择"
>
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button size="mini" @click="resetQuery('queryFrom')"></el-button>
<el-button size="mini" type="primary" @click="handleQuery('queryFrom')"></el-button>
</el-form-item>
</el-form>
</header>
<section>
<!-- :height="tabHeader" -->
<el-table v-loading="loading" :data="tableData" :height="tabHeader">
<el-table-column type="index" label="序号" width="100px" class-name="table-operation" align="center"/>
<el-table-column label="事件标题" key="title" width="400px" prop="title" />
<el-table-column label="调用时间" key="createTime" width="300px" prop="createTime" />
<el-table-column label="关联事件数量" key="count" width="200px" prop="count" />
<el-table-column label="操作" class-name="table-operation-anniu" align="center">
<template slot-scope="scope">
<div @click="audit(scope.row)" class="go-audit" v-if="activeName == 'first'">
<img src="@/assets/images/audit.png" alt="">
<span>审核</span>
</div>
<el-button v-else @click="audit(scope.row)" type="text" style="margin-right: 5px;" class="sqbtn sqbtn1">
查看详情
</el-button>
</template>
</el-table-column>
</el-table>
<pagination
id="L-pagination"
:total="total"
:page="pagination.current"
:limit="pagination.size"
layout="total, prev, pager, next, jumper"
@pagination="getPagination"
:current-page.sync="pagination.current"
></pagination>
</section>
</div>
<relevancyEventAudit title="关联事件审核" ref="eventAudit" :auditStatus="auditStatus" @closeDialog="getList" />
</div>
</template>
<script>
import { colonyEventPage } from "@/api/eventPage"
import relevancyEventAudit from '@/views/components/relevancyEventAudit.vue'
export default {
components:{
relevancyEventAudit,
},
data() {
return {
activeName: "first",
active: 0,
formInline:{
title:"",
time:[],
},
loading: false,
tableData: [],
tabHeader: null,
total:0,
pagination: {
current: 1,
size: 10,
isReport:null,
},
auditStatus: 1,
}
},
mounted(){
this.getList();
this.cancalDebounce();
window.addEventListener('resize', this.cancalDebounce);
},
destroyed() {
window.removeEventListener('resize', this.cancalDebounce);
},
methods:{
// tab
handleClick(e) {
if (this.activeName == "first") {
this.pagination.isReport = null;
this.auditStatus = 1;
this.getList();
} else if (this.activeName == "third") {
this.pagination.isReport = 1;
this.auditStatus = 2;
this.getList();
}
},
//
getPagination(pages) {
this.pagination.current = pages.page;
this.pagination.size = pages.limit;
this.getList();
},
getList(){
this.loading = true;
colonyEventPage(this.pagination).then(res=>{
this.tableData = res.data.records
this.total = res.data.total
this.loading = false;
}).catch(err=>{
this.tableData = [];
this.loading = false;
})
},
resetQuery(){
this.formInline = {
title:"",
time:[],
}
this.pagination = {
current: 1,
size: 10,
isReport: this.activeName == "first" ? null : this.activeName == "third" ? 1 : null,
}
this.getList();
},
handleQuery(){
if(this.formInline.time.length > 0) {
this.formInline.startTime = this.formInline.time[0]
this.formInline.endTime = this.formInline.time[1]
}
this.pagination = {...this.pagination,...this.formInline}
this.getList();
},
audit(item){
this.$refs.eventAudit.open(item);
},
//
cancalDebounce(){
const element = document.getElementById('L-size-main'); // ID
const header = document.getElementById('L-header'); // ID
const pagination = document.getElementById('L-pagination'); // ID
const elementHeight = element.offsetHeight;
const headerHeight = header.offsetHeight;
const paginationtHeight = pagination.offsetHeight;
this.tabHeader = elementHeight - headerHeight - paginationtHeight;
}
},
}
</script>
<style lang="scss" scoped>
</style>

Loading…
Cancel
Save