|
@@ -388,12 +388,12 @@
|
|
|
<div class="forthis">
|
|
|
<dv-border-box-13 backgroundColor="rgba(12, 19, 38, .90)" style="padding-bottom: 1rem;">
|
|
|
<img src="../assets/images/integrated/light.png" style="width: 100%; margin-top: .4rem;"/>
|
|
|
- <div class="this-title">
|
|
|
+ <div class="this-title" style="cursor: pointer" @click="setEventTypeId({eventTypeIdDl: [], eventTypeId: []})">
|
|
|
<span>事件分类</span>
|
|
|
<dv-decoration-3 style="width:150px;height:15px;margin-right: 1rem;"/>
|
|
|
</div>
|
|
|
<div class="i-list-con small-bottom-margin h-19">
|
|
|
- <dv-capsule-chart v-if="showEventKind" :config="eventKind"
|
|
|
+ <chart v-if="showEventKind" :config="eventKind" @setEventTypeId="setEventTypeId"
|
|
|
style="width: 90%;height: 18vh; padding:.5rem 1rem"/>
|
|
|
</div>
|
|
|
</dv-border-box-13>
|
|
@@ -438,6 +438,8 @@
|
|
|
/** ----------------------------------weosocket结束------------------------------------- */
|
|
|
|
|
|
import {
|
|
|
+ getMenuEventType,
|
|
|
+ getEventPush,
|
|
|
getBaseInfo,
|
|
|
getTodayEvents,
|
|
|
getDeptEventCount,
|
|
@@ -459,6 +461,7 @@
|
|
|
import TVWall from '@/components/TVWall.vue' //电视墙弹窗
|
|
|
import eventdetailsdialog from '@/views/eventdetailsdialog.vue' //事件详情弹窗
|
|
|
import firespread from '@/views/firespread.vue' //事件详情弹窗
|
|
|
+ import chart from "./from/dvCapsuleChart.vue";
|
|
|
|
|
|
/** ----------------------------------摄像头预览开始------------------------------------- */
|
|
|
import {
|
|
@@ -474,6 +477,7 @@
|
|
|
components: {
|
|
|
Firespread,
|
|
|
supermap,
|
|
|
+ chart,
|
|
|
// supermapNotProcessed,
|
|
|
// supermapProcessed,
|
|
|
vheader,
|
|
@@ -501,6 +505,7 @@
|
|
|
this.getEventByReportorOrder(this.getCurrentDataStr())
|
|
|
this.getExposureStage(this.getCurrentDataStr())
|
|
|
this.getSupermap(this.getCurrentDataStr())
|
|
|
+ this.getMenuEventType()
|
|
|
/** ----------------------------------weosocket开始------------------------------------- */
|
|
|
// this.initWebSocket()
|
|
|
/** ----------------------------------weosocket结束------------------------------------- */
|
|
@@ -508,13 +513,13 @@
|
|
|
if (this.calendarDay == this.getCurrentDataStr()) {
|
|
|
this.getTodayEvents(this.getCurrentDataStr(), true);
|
|
|
this.getDeptEventCount(this.getCurrentDataStr(), true);
|
|
|
- this.getEventList(this.getCurrentDataStr(), this.pageSize, this.pageNum, '', true);
|
|
|
+ // this.getEventList(this.getCurrentDataStr(), this.pageSize, this.pageNum, '', true);
|
|
|
this.getEventByEventType(this.getCurrentDataStr(), true);
|
|
|
this.getEventByReportorOrder(this.getCurrentDataStr(), true);
|
|
|
this.getExposureStage(this.getCurrentDataStr(), true);
|
|
|
- this.getSupermap(this.getCurrentDataStr(), true);
|
|
|
+ // this.getSupermap(this.getCurrentDataStr(), true);
|
|
|
}
|
|
|
- }, 10000)
|
|
|
+ }, 30000)
|
|
|
this.bottomMenuList() //获取底部公共组件消息和任务
|
|
|
},
|
|
|
data() {
|
|
@@ -557,6 +562,8 @@
|
|
|
eventList: [],
|
|
|
pageSize: 10,
|
|
|
pageNum: 1,
|
|
|
+ eventTypeIdDl:[],
|
|
|
+ eventTypeId:[],
|
|
|
|
|
|
eventListnew: [],
|
|
|
eventListAll: [],
|
|
@@ -573,6 +580,11 @@
|
|
|
weosocket: false,
|
|
|
websock: '',
|
|
|
setIntervalWesocketPush: null,
|
|
|
+ websockSid: {
|
|
|
+ userId: '',
|
|
|
+ eventTypeDl: '',
|
|
|
+ eventType: '',
|
|
|
+ },
|
|
|
/** ----------------------------------weosocket结束------------------------------------- */
|
|
|
/** ----------------------------------摄像头预览开始------------------------------------- */
|
|
|
activePanel: 'key1',
|
|
@@ -594,6 +606,30 @@
|
|
|
},
|
|
|
/** ----------------------------------weosocket结束------------------------------------- */
|
|
|
methods: {
|
|
|
+ getMenuEventType() {
|
|
|
+ let that = this
|
|
|
+ getMenuEventType().then(res => {
|
|
|
+ that.websockSid.userId = Cookies.get('userId')
|
|
|
+ that.websockSid.eventTypeDl = res.data.eventTypeDl
|
|
|
+ that.websockSid.eventType = res.data.eventType
|
|
|
+ that.initWebSocket(that.websockSid.userId, that.websockSid.eventTypeDl, that.websockSid.eventType)
|
|
|
+ console.log(that.websockSid)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ setEventTypeId(data) {
|
|
|
+ // let data = {eventTypeIdDl: [], eventTypeId: []}
|
|
|
+ // let data = {eventTypeIdDl: that.eventTypeIdDl, eventTypeId: that.eventTypeId}
|
|
|
+ let that = this
|
|
|
+ that.eventTypeIdDl = data.eventTypeIdDl
|
|
|
+ that.eventTypeId = data.eventTypeId
|
|
|
+ that.getSupermap(that.calendarDay, false)
|
|
|
+ that.getTodayEvents(that.calendarDay, false)
|
|
|
+ that.getEventByEventType(that.calendarDay, false)
|
|
|
+ that.getExposureStage(that.calendarDay, false)
|
|
|
+ that.getEventByReportorOrder(that.calendarDay, false)
|
|
|
+ that.getDeptEventCount(that.calendarDay, false)
|
|
|
+ that.getEventList(that.calendarDay, that.pageSize, that.pageNum, '', false)
|
|
|
+ },
|
|
|
// searchEvent(pageSize,pageNum,eventSearch) {
|
|
|
// this.pageSize = pageSize;
|
|
|
// this.pageNum = pageNum;
|
|
@@ -832,7 +868,7 @@
|
|
|
getTodayEvents(day, loading) {
|
|
|
let that = this
|
|
|
//左侧获取事件信息统计
|
|
|
- getTodayEvents({day: day}, loading).then(res => {
|
|
|
+ getTodayEvents({eventTypeIdDl: that.eventTypeIdDl,eventTypeId: that.eventTypeId,day: day}, loading).then(res => {
|
|
|
this.aiTotal = res.data.aiTotal
|
|
|
this.aiTotal_pre = res.data.aiTotal_pre
|
|
|
this.newReport = res.data.newReport
|
|
@@ -851,7 +887,7 @@
|
|
|
getDeptEventCount(day, loading) {
|
|
|
let that = this
|
|
|
//左侧获取事件部门数量
|
|
|
- getDeptEventCount({day: day}, loading).then(res => {
|
|
|
+ getDeptEventCount({eventTypeIdDl: that.eventTypeIdDl,eventTypeId: that.eventTypeId,day: day}, loading).then(res => {
|
|
|
this.forestFarm = res.data
|
|
|
})
|
|
|
},
|
|
@@ -881,7 +917,7 @@
|
|
|
},
|
|
|
getSupermap(day, loading) {
|
|
|
let that = this
|
|
|
- getNearEvent('', '', day, loading).then(res => {
|
|
|
+ getNearEvent('', '', day, loading, that.eventTypeIdDl, that.eventTypeId).then(res => {
|
|
|
that.markersList = [];
|
|
|
if (res.data != null && res.data.length > 0) {
|
|
|
for (let i = 0; i < res.data.length; i++) {
|
|
@@ -980,7 +1016,7 @@
|
|
|
let that = this
|
|
|
this.eventList = []
|
|
|
//右侧获取事件列表
|
|
|
- getEventList({day: day, pageSize: pageSize, pageNum: pageNum, eventName: eventSearch}, loading).then(res => {
|
|
|
+ getEventList({eventTypeIdDl: that.eventTypeIdDl,eventTypeId: that.eventTypeId, day: day, pageSize: pageSize, pageNum: pageNum, eventName: eventSearch}, loading).then(res => {
|
|
|
this.eventList = res.data
|
|
|
if (this.eventList != null && this.eventList.length > 0) {
|
|
|
if (this.eventList[0].eventStatusValue == 'forest_event_status_1') {
|
|
@@ -995,7 +1031,7 @@
|
|
|
getEventByEventType(day, loading) {
|
|
|
let that = this
|
|
|
//右侧获取事件分类
|
|
|
- getEventByEventType({day: day}, loading).then(res => {
|
|
|
+ getEventByEventType({eventTypeIdDl: that.eventTypeIdDl,eventTypeId: that.eventTypeId, day: day}, loading).then(res => {
|
|
|
if (res.data != null && res.data.length > 0) {
|
|
|
this.showEventKind = true
|
|
|
this.eventKind.data = res.data
|
|
@@ -1012,7 +1048,7 @@
|
|
|
getEventByReportorOrder(day, loading) {
|
|
|
let that = this
|
|
|
//右侧获取上报排名
|
|
|
- getEventByReportorOrder({day: day}, loading).then(res => {
|
|
|
+ getEventByReportorOrder({eventTypeIdDl: that.eventTypeIdDl,eventTypeId: that.eventTypeId,day: day}, loading).then(res => {
|
|
|
if (res.data != null && res.data.length > 0) {
|
|
|
this.reportList.data = res.data
|
|
|
this.reportList = {...this.reportList}
|
|
@@ -1033,8 +1069,7 @@
|
|
|
},
|
|
|
getWebSocketEvent(data) {
|
|
|
let that = this
|
|
|
- const event = JSON.parse(data);
|
|
|
- //右侧获取事件列表
|
|
|
+ const event = data //右侧获取事件列表
|
|
|
that.markersList = []
|
|
|
let markersMap = {
|
|
|
lng: 124.59,
|
|
@@ -1111,14 +1146,13 @@
|
|
|
getExposureStage(day, loading) {
|
|
|
let that = this
|
|
|
//右侧获取曝光台
|
|
|
- getExposureStage({day: day}, loading).then(res => {
|
|
|
+ getExposureStage({eventTypeIdDl: that.eventTypeIdDl,eventTypeId: that.eventTypeId,day: day}, loading).then(res => {
|
|
|
this.exposureStageList = res.data
|
|
|
})
|
|
|
},
|
|
|
/** ----------------------------------weosocket开始------------------------------------- */
|
|
|
- initWebSocket() { //初始化weosocket
|
|
|
- // const wsuri = 'ws://127.0.0.1:10003/webSocket/' + Cookies.get('username')
|
|
|
- const wsuri = 'ws://127.0.0.1:10003/webSocket/admin'
|
|
|
+ initWebSocket(userId, eventTypeDl, eventType) { //初始化weosocket
|
|
|
+ const wsuri = 'ws://127.0.0.1:10003/eventPush/' + userId + '/' + eventTypeDl + '/' + eventType
|
|
|
this.websock = new WebSocket(wsuri)
|
|
|
console.log('建立websocket连接')
|
|
|
this.websock.onopen = this.websocketonopen
|
|
@@ -1131,14 +1165,15 @@
|
|
|
this.sendPing()
|
|
|
},
|
|
|
websocketonerror() { //连接建立失败重连
|
|
|
- this.initWebSocket()
|
|
|
+ this.initWebSocket(this.websockSid.userId, this.websockSid.eventTypeDl, this.websockSid.eventType,)
|
|
|
},
|
|
|
websocketonmessage(e) { //数据接收
|
|
|
console.log('接收数据', e.data)
|
|
|
// let data = "{\"fromId\":\"forest\",\"fromUserId\":\""+Cookies.get('username')+"\",\"toUserId\":\""+Cookies.get('username')+"\"}";
|
|
|
let data = "{\"fromId\":\"forest\",\"fromUserId\":\"admin\",\"toUserId\":\"admin\"}";
|
|
|
if (this.calendarDay == this.getCurrentDataStr() && data != e.data) {
|
|
|
- this.getWebSocketEvent(e.data);
|
|
|
+ // 处理收到的消息
|
|
|
+ this.handleWebSoceketEvent(e.data)
|
|
|
|
|
|
// this.getEventListNew();
|
|
|
// this.getTodayEvents(this.getCurrentDataStr());
|
|
@@ -1151,6 +1186,29 @@
|
|
|
// thes.$refs.up.pause();//停止播放音乐
|
|
|
}
|
|
|
},
|
|
|
+ // 处理WebSocket事件
|
|
|
+ handleWebSoceketEvent(val) {
|
|
|
+ let that = this
|
|
|
+ let data = JSON.parse(val)
|
|
|
+ /**
|
|
|
+ * that.markersList.filter( item => data.eventCode == item.parameter).length == 0 如果地图中不存在当前事件则添加
|
|
|
+ * eventPush: 事件列表消息
|
|
|
+ * */
|
|
|
+ if (data.tag == "eventPush" && that.markersList.filter( item => data.eventCode == item.parameter).length == 0) {
|
|
|
+ getEventPush({eventCode: data.eventCode}).then((res) => {
|
|
|
+ if (res.data != undefined) {
|
|
|
+ //插入到第一条
|
|
|
+ this.eventList.unshift(res.data)
|
|
|
+ // 插入后删除最后一条 保证列表中为10条数据
|
|
|
+ if (this.eventList.length > 9)
|
|
|
+ this.eventList.splice(10, 1)
|
|
|
+ // 将收到的数据在地图上添加
|
|
|
+ this.getWebSocketEvent(res.data)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ console.log(that.eventList[0])
|
|
|
+ },
|
|
|
websocketsend(Data) { //数据发送
|
|
|
this.websock.send(Data)
|
|
|
},
|
|
@@ -1173,7 +1231,7 @@
|
|
|
if (this.weosocket) {
|
|
|
this.websock.send(JSON.stringify(ping))
|
|
|
} else {
|
|
|
- this.initWebSocket()
|
|
|
+ // this.initWebSocket()
|
|
|
}
|
|
|
}, time)
|
|
|
},
|