feat: 增加地图右侧面板,给弹窗增加全屏功能
BIN
src/assets/images/global/close.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
src/assets/images/global/fullscreen.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
src/assets/images/global/quit-fullscreen.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
src/assets/images/station-operation/analyze-active.png
Normal file
After Width: | Height: | Size: 1.6 KiB |
BIN
src/assets/images/station-operation/analyze.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
src/assets/images/station-operation/car-filter.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
src/assets/images/station-operation/filter-station-active.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
src/assets/images/station-operation/filter-station.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
src/assets/images/station-operation/full-screen-active.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
src/assets/images/station-operation/full-screen.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 2.5 KiB |
BIN
src/assets/images/station-operation/ims-rn-station-filter.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
BIN
src/assets/images/station-operation/map-minus-active.png
Normal file
After Width: | Height: | Size: 997 B |
BIN
src/assets/images/station-operation/map-minus.png
Normal file
After Width: | Height: | Size: 997 B |
BIN
src/assets/images/station-operation/map-plus-active.png
Normal file
After Width: | Height: | Size: 1012 B |
BIN
src/assets/images/station-operation/map-plus.png
Normal file
After Width: | Height: | Size: 1014 B |
BIN
src/assets/images/station-operation/nuclear-facility-filter.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
BIN
src/assets/images/station-operation/ship-filter.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
src/assets/images/station-operation/station-operate-active.png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
src/assets/images/station-operation/station-operate.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
src/assets/images/station-operation/station-state-1.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/images/station-operation/station-state-2.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/images/station-operation/station-state-3.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/images/station-operation/station-state-4.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
|
@ -1,5 +1,20 @@
|
||||||
<template>
|
<template>
|
||||||
<a-modal v-bind="$attrs" v-model="visible" :title="title" :footer="null">
|
<a-modal
|
||||||
|
:class="'custom-modal' + (innerFullscreen ? ' fullscreen' : '')"
|
||||||
|
v-bind="_attrs"
|
||||||
|
v-model="visible"
|
||||||
|
:footer="null"
|
||||||
|
>
|
||||||
|
<img slot="closeIcon" src="@/assets/images/global/close.png" />
|
||||||
|
<div slot="title">
|
||||||
|
<div class="custom-modal-title">
|
||||||
|
<span>{{ title }}</span>
|
||||||
|
<template v-if="enableFullScreen">
|
||||||
|
<img v-if="innerFullscreen" src="@/assets/images/global/quit-fullscreen.png" @click="innerFullscreen = false" />
|
||||||
|
<img v-else src="@/assets/images/global/fullscreen.png" @click="innerFullscreen = true" />
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<slot></slot>
|
<slot></slot>
|
||||||
<a-space v-if="showFooter" class="operators" :size="20">
|
<a-space v-if="showFooter" class="operators" :size="20">
|
||||||
<a-button type="success" @click="onSave" :loading="confirmLoading">Save</a-button>
|
<a-button type="success" @click="onSave" :loading="confirmLoading">Save</a-button>
|
||||||
|
@ -22,12 +37,17 @@ export default {
|
||||||
showFooter: {
|
showFooter: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: true
|
default: true
|
||||||
|
},
|
||||||
|
enableFullScreen: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
visible: this.value,
|
visible: this.value,
|
||||||
confirmLoading: false
|
confirmLoading: false,
|
||||||
|
innerFullscreen: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
@ -36,6 +56,9 @@ export default {
|
||||||
},
|
},
|
||||||
value(val) {
|
value(val) {
|
||||||
this.visible = val
|
this.visible = val
|
||||||
|
if (val) {
|
||||||
|
this.innerFullscreen = false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
@ -57,6 +80,16 @@ export default {
|
||||||
onCancel() {
|
onCancel() {
|
||||||
this.visible = false
|
this.visible = false
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
_attrs() {
|
||||||
|
let attrs = { ...this.$attrs }
|
||||||
|
// 如果全屏就将宽度设为 100%
|
||||||
|
if (this.innerFullscreen) {
|
||||||
|
attrs['width'] = '100%'
|
||||||
|
}
|
||||||
|
return attrs
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -68,4 +101,43 @@ export default {
|
||||||
width: 92px;
|
width: 92px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.custom-modal {
|
||||||
|
&-title {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
img {
|
||||||
|
width: 18px;
|
||||||
|
height: 18px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep {
|
||||||
|
.ant-modal-close-x {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-modal-header {
|
||||||
|
padding-right: 50px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&.fullscreen {
|
||||||
|
::v-deep {
|
||||||
|
.ant-modal {
|
||||||
|
top: 0;
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-modal-content {
|
||||||
|
height: 100vh;
|
||||||
|
padding-bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -1,60 +1,71 @@
|
||||||
<template>
|
<template>
|
||||||
<div ref="mapContainerRef" class="map-container">
|
<div ref="mapContainerRef" class="map-container">
|
||||||
|
<template v-if="map">
|
||||||
<slot></slot>
|
<slot></slot>
|
||||||
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { Vector as VectorLayer } from 'ol/layer'
|
|
||||||
import TileLayer from 'ol/layer/Tile'
|
import TileLayer from 'ol/layer/Tile'
|
||||||
import Map from 'ol/Map'
|
import Map from 'ol/Map'
|
||||||
import VectorSource from 'ol/source/Vector'
|
|
||||||
import XYZ from 'ol/source/XYZ'
|
import XYZ from 'ol/source/XYZ'
|
||||||
import View from 'ol/View'
|
import View from 'ol/View'
|
||||||
import Feature from 'ol/Feature'
|
|
||||||
import { Fill, Icon, Stroke, Style, Text } from 'ol/style'
|
|
||||||
import { Point } from 'ol/geom'
|
|
||||||
import Overlay from 'ol/Overlay'
|
|
||||||
import Data from './data.json'
|
|
||||||
import * as MarkerImg from './markerImage'
|
|
||||||
console.log('%c [ MarkerImg ]-19', 'font-size:13px; background:pink; color:#bf2c9f;', MarkerImg)
|
|
||||||
|
|
||||||
const token = 'AAPK2b935e8bbf564ef581ca3c6fcaa5f2a71ZH84cPqqFvyz3KplFRHP8HyAwJJkh6cnpcQ-qkWh5aiyDQsGJbsXglGx0QM2cPm'
|
|
||||||
export default {
|
export default {
|
||||||
|
props: {
|
||||||
|
token: {
|
||||||
|
type: String,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
zoom: {
|
||||||
|
type: Number,
|
||||||
|
default: 3
|
||||||
|
},
|
||||||
|
maxZoom: {
|
||||||
|
type: Number,
|
||||||
|
default: 16
|
||||||
|
},
|
||||||
|
minZoom: {
|
||||||
|
type: Number,
|
||||||
|
default: 3
|
||||||
|
},
|
||||||
|
center: {
|
||||||
|
type: Object,
|
||||||
|
default() {
|
||||||
|
return {
|
||||||
|
longitude: 116,
|
||||||
|
latitude: 40
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
map: null,
|
||||||
stationList: []
|
stationList: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.initMap()
|
this.initMap()
|
||||||
this.initMapClick()
|
|
||||||
this.initMapPopup()
|
|
||||||
this.getStationList()
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 获取站点列表
|
|
||||||
getStationList() {
|
|
||||||
this.stationList = Data.result
|
|
||||||
console.log('%c [ this.stationList ]-36', 'font-size:13px; background:pink; color:#bf2c9f;', this.stationList)
|
|
||||||
this.initMarkers()
|
|
||||||
},
|
|
||||||
|
|
||||||
// 初始化地图
|
// 初始化地图
|
||||||
initMap() {
|
initMap() {
|
||||||
|
const { longitude, latitude } = this.center
|
||||||
const layers = [
|
const layers = [
|
||||||
new TileLayer({
|
new TileLayer({
|
||||||
source: new XYZ({
|
source: new XYZ({
|
||||||
url: `https://ibasemaps-api.arcgis.com/arcgis/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}?token=${token}`
|
url: `https://ibasemaps-api.arcgis.com/arcgis/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}?token=${this.token}`
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
]
|
]
|
||||||
|
|
||||||
const view = new View({
|
const view = new View({
|
||||||
projection: 'EPSG:4326', // 使用这个坐标系
|
projection: 'EPSG:4326', // 使用这个坐标系
|
||||||
center: [116.2, 39.56],
|
center: [longitude, latitude],
|
||||||
zoom: 4,
|
zoom: this.zoom,
|
||||||
maxZoom: 16,
|
maxZoom: this.maxZoom,
|
||||||
minZoom: 1
|
minZoom: this.minZoom
|
||||||
})
|
})
|
||||||
|
|
||||||
this.map = new Map({
|
this.map = new Map({
|
||||||
|
@ -65,99 +76,40 @@ export default {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
// 初始化marker
|
/**
|
||||||
initMarkers() {
|
* 以下是工具方法
|
||||||
const markerFeatures = []
|
*/
|
||||||
this.stationList.forEach((eventItem, index) => {
|
// 获取地图缩放级别
|
||||||
markerFeatures.push(this.getMarker(eventItem))
|
getZoom() {
|
||||||
markerFeatures.push(this.getCircle(eventItem))
|
return this.map.getView().getZoom()
|
||||||
})
|
|
||||||
const markerLayer = new VectorLayer({
|
|
||||||
source: new VectorSource({
|
|
||||||
features: markerFeatures
|
|
||||||
}),
|
|
||||||
properties: { name: 'eventMarker' }
|
|
||||||
})
|
|
||||||
this.map.addLayer(markerLayer)
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 初始化地图点击事件
|
// 设置地图缩放级别
|
||||||
initMapClick() {
|
setZoom(zoom) {
|
||||||
this.map.on('click', async evt => {
|
console.log('%c [ zoom ]-89', 'font-size:13px; background:pink; color:#bf2c9f;', zoom)
|
||||||
const feature = this.map.forEachFeatureAtPixel(evt.pixel, feature => {
|
if (zoom < this.minZoom) {
|
||||||
return feature
|
zoom = this.minZoom
|
||||||
})
|
|
||||||
this.currentCoords = feature.getGeometry().getCoordinates()
|
|
||||||
const stationInfo = feature && feature.values_ && feature.values_.stationInfo
|
|
||||||
if (stationInfo) {
|
|
||||||
await this.showMapPopup(stationInfo)
|
|
||||||
} else {
|
|
||||||
this.closeMapPopup()
|
|
||||||
}
|
}
|
||||||
})
|
if (zoom > this.maxZoom) {
|
||||||
},
|
zoom = this.maxZoom
|
||||||
|
|
||||||
// 初始化地图弹窗
|
|
||||||
initMapPopup() {
|
|
||||||
this.popupOverlay = new Overlay({
|
|
||||||
element: this.$refs.mapPopupRef,
|
|
||||||
autoPan: true,
|
|
||||||
autoPanAnimation: {
|
|
||||||
duration: 250
|
|
||||||
}
|
}
|
||||||
})
|
this.map.getView().animate({ zoom })
|
||||||
this.map.addOverlay(this.popupOverlay)
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 显示地图弹窗
|
getMapInstance() {
|
||||||
async showMapPopup(stationInfo) {
|
return this.map
|
||||||
this.popupOverlay.setPosition([stationInfo.lon, stationInfo.lat])
|
|
||||||
this.currMapClickEventItem = stationInfo // 填充基本信息
|
|
||||||
if (!stationInfo.appEventDetailList) {
|
|
||||||
this.isGettingPopupDetail = true
|
|
||||||
const eventDetail = await this.getDetail(stationInfo.orid)
|
|
||||||
stationInfo.appEventDetailList = eventDetail.appEventDetailList
|
|
||||||
this.isGettingPopupDetail = false
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
//关闭地图弹窗
|
// 获取地图中心点
|
||||||
closeMapPopup() {
|
getCenter() {
|
||||||
this.popupOverlay.setPosition(null)
|
return this.map.getView().getCenter()
|
||||||
this.removeOtherLayers()
|
|
||||||
},
|
},
|
||||||
|
|
||||||
// 获取marker图标
|
// 平移到某个位置
|
||||||
getMarker(stationInfo) {
|
panTo(center, duration = 1000) {
|
||||||
const { lon, lat } = stationInfo
|
return this.map.getView().animate({
|
||||||
const markerFeature = new Feature({
|
center,
|
||||||
geometry: new Point([lon, lat]),
|
duration
|
||||||
stationInfo
|
|
||||||
})
|
|
||||||
|
|
||||||
markerFeature.setStyle(this.getMarkerStyle(stationInfo))
|
|
||||||
return markerFeature
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获取circle
|
|
||||||
getCircle(stationInfo) {
|
|
||||||
const { lon, lat } = stationInfo
|
|
||||||
const markerFeature = new Feature({
|
|
||||||
geometry: new Point([lon, lat]),
|
|
||||||
stationInfo
|
|
||||||
})
|
|
||||||
|
|
||||||
markerFeature.setStyle(this.getMarkerStyle(stationInfo))
|
|
||||||
return markerFeature
|
|
||||||
},
|
|
||||||
// 获取marker颜色
|
|
||||||
getMarkerStyle() {
|
|
||||||
const src = MarkerImg.Car
|
|
||||||
return new Style({
|
|
||||||
image: new Icon({
|
|
||||||
src,
|
|
||||||
scale: 0.8
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -166,5 +118,6 @@ export default {
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
.map-container {
|
.map-container {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
position: relative;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
125
src/views/stationOperation/components/MapMarker.vue
Normal file
|
@ -0,0 +1,125 @@
|
||||||
|
<template>
|
||||||
|
<div ref="mapPopupRef">
|
||||||
|
这是弹窗
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { Vector as VectorLayer } from 'ol/layer'
|
||||||
|
import VectorSource from 'ol/source/Vector'
|
||||||
|
import Feature from 'ol/Feature'
|
||||||
|
import { Fill, Icon, Stroke, Style, Text } from 'ol/style'
|
||||||
|
import { Point } from 'ol/geom'
|
||||||
|
import Overlay from 'ol/Overlay'
|
||||||
|
|
||||||
|
import MarkerImg from './markerImage'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
list: {
|
||||||
|
type: Array,
|
||||||
|
required: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.map = this.$parent.getMapInstance()
|
||||||
|
this.initMarkers()
|
||||||
|
this.initMapClick()
|
||||||
|
this.initMapPopup()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 初始化marker
|
||||||
|
initMarkers() {
|
||||||
|
const markerFeatures = []
|
||||||
|
this.list.forEach((eventItem, index) => {
|
||||||
|
markerFeatures.push(this.getMarker(eventItem))
|
||||||
|
markerFeatures.push(this.getCircle(eventItem))
|
||||||
|
})
|
||||||
|
const markerLayer = new VectorLayer({
|
||||||
|
source: new VectorSource({
|
||||||
|
features: markerFeatures
|
||||||
|
}),
|
||||||
|
properties: { name: 'eventMarker' }
|
||||||
|
})
|
||||||
|
this.map.addLayer(markerLayer)
|
||||||
|
},
|
||||||
|
|
||||||
|
// 初始化地图点击事件
|
||||||
|
initMapClick() {
|
||||||
|
this.map.on('click', async evt => {
|
||||||
|
const feature = this.map.forEachFeatureAtPixel(evt.pixel, feature => {
|
||||||
|
return feature
|
||||||
|
})
|
||||||
|
const stationInfo = feature && feature.values_ && feature.values_.stationInfo
|
||||||
|
if (stationInfo) {
|
||||||
|
this.showMapPopup(stationInfo)
|
||||||
|
} else {
|
||||||
|
this.closeMapPopup()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 初始化地图弹窗
|
||||||
|
initMapPopup() {
|
||||||
|
this.popupOverlay = new Overlay({
|
||||||
|
element: this.$refs.mapPopupRef,
|
||||||
|
autoPan: true,
|
||||||
|
autoPanAnimation: {
|
||||||
|
duration: 250
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.map.addOverlay(this.popupOverlay)
|
||||||
|
},
|
||||||
|
|
||||||
|
// 显示地图弹窗
|
||||||
|
showMapPopup(stationInfo) {
|
||||||
|
this.popupOverlay.setPosition([stationInfo.lon, stationInfo.lat])
|
||||||
|
this.currMapClickEventItem = stationInfo // 填充基本信息
|
||||||
|
if (!stationInfo.appEventDetailList) {
|
||||||
|
this.isGettingPopupDetail = true
|
||||||
|
stationInfo.appEventDetailList = stationInfo.appEventDetailList
|
||||||
|
this.isGettingPopupDetail = false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
//关闭地图弹窗
|
||||||
|
closeMapPopup() {
|
||||||
|
this.popupOverlay.setPosition(null)
|
||||||
|
},
|
||||||
|
|
||||||
|
// 获取marker图标
|
||||||
|
getMarker(stationInfo) {
|
||||||
|
const { lon, lat } = stationInfo
|
||||||
|
const markerFeature = new Feature({
|
||||||
|
geometry: new Point([lon, lat]),
|
||||||
|
stationInfo
|
||||||
|
})
|
||||||
|
|
||||||
|
markerFeature.setStyle(this.getMarkerStyle(stationInfo))
|
||||||
|
return markerFeature
|
||||||
|
},
|
||||||
|
|
||||||
|
// 获取circle
|
||||||
|
getCircle(stationInfo) {
|
||||||
|
const { lon, lat } = stationInfo
|
||||||
|
const markerFeature = new Feature({
|
||||||
|
geometry: new Point([lon, lat]),
|
||||||
|
stationInfo
|
||||||
|
})
|
||||||
|
|
||||||
|
markerFeature.setStyle(this.getMarkerStyle(stationInfo))
|
||||||
|
return markerFeature
|
||||||
|
},
|
||||||
|
// 获取marker颜色
|
||||||
|
getMarkerStyle() {
|
||||||
|
const src = MarkerImg.NuclearFacility
|
||||||
|
return new Style({
|
||||||
|
image: new Icon({
|
||||||
|
src,
|
||||||
|
scale: 0.8
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped></style>
|
659
src/views/stationOperation/components/MapPane.vue
Normal file
|
@ -0,0 +1,659 @@
|
||||||
|
<template>
|
||||||
|
<div :class="'map-pane' + (active == 1 ? ' is-station' : '')">
|
||||||
|
<!-- 操作栏开始 -->
|
||||||
|
<div class="map-pane-operators">
|
||||||
|
<div>
|
||||||
|
<img
|
||||||
|
v-if="isFullScreen"
|
||||||
|
src="@/assets/images/station-operation/full-screen-active.png"
|
||||||
|
@click="handleExitFullScreen"
|
||||||
|
/>
|
||||||
|
<img v-else src="@/assets/images/station-operation/full-screen.png" @click="handleFullScreen" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="map-pane-operators-main-operator">
|
||||||
|
<div>
|
||||||
|
<img v-if="analyzeModalVisible" src="@/assets/images/station-operation/analyze-active.png" />
|
||||||
|
<img v-else src="@/assets/images/station-operation/analyze.png" @click="handleOpenAnalyzeModal" />
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img v-if="active == 1" src="@/assets/images/station-operation/station-operate-active.png" />
|
||||||
|
<img v-else src="@/assets/images/station-operation/station-operate.png" @click="active = 1" />
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<img v-if="active == 2" src="@/assets/images/station-operation/filter-station-active.png" />
|
||||||
|
<img v-else src="@/assets/images/station-operation/filter-station.png" @click="active = 2" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="map-pane-operators-zoom">
|
||||||
|
<div class="map-pane-operators-zoom-map-plus" @click="handlePlus"></div>
|
||||||
|
<div class="map-pane-operators-zoom-map-minus" @click="handleMinus"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 操作栏结束 -->
|
||||||
|
|
||||||
|
<!-- 主体部分开始 -->
|
||||||
|
<div class="map-pane-content">
|
||||||
|
<!-- 站点操作 -->
|
||||||
|
<div class="station-operation" v-show="active == 1">
|
||||||
|
<div class="station-operation-stations">
|
||||||
|
<div class="map-pane-content-header">
|
||||||
|
Stations
|
||||||
|
</div>
|
||||||
|
<div class="map-pane-content-main">
|
||||||
|
<div class="station-operation-stations-selection">
|
||||||
|
<a-space>
|
||||||
|
<a-button class="select-all" type="primary" @click="handleSelectAll">Select All</a-button>
|
||||||
|
<a-button class="clear-selection" type="primary" @click="handleClearSelection"
|
||||||
|
>Clear Selection</a-button
|
||||||
|
>
|
||||||
|
</a-space>
|
||||||
|
</div>
|
||||||
|
<a-divider style="background-color: #0a544e; margin: 10px 0 0;"></a-divider>
|
||||||
|
|
||||||
|
<!-- 站点选择树 -->
|
||||||
|
<div class="station-list-tree">
|
||||||
|
<a-tree
|
||||||
|
v-model="checkedKeys"
|
||||||
|
:selectedKeys="[]"
|
||||||
|
:tree-data="treeData"
|
||||||
|
checkable
|
||||||
|
@select="onTreeSelect"
|
||||||
|
></a-tree>
|
||||||
|
</div>
|
||||||
|
<!-- 站点选择树 结束 -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="station-operation-infomation">
|
||||||
|
<div class="map-pane-content-header">
|
||||||
|
Infomation
|
||||||
|
</div>
|
||||||
|
<div class="map-pane-content-main">
|
||||||
|
<div class="station-operation-infomation-content">
|
||||||
|
<p class="radius-title">Radius</p>
|
||||||
|
<div class="radius-search">
|
||||||
|
<a-input suffix="KM"></a-input>
|
||||||
|
<a-button type="primary">
|
||||||
|
Search
|
||||||
|
</a-button>
|
||||||
|
</div>
|
||||||
|
<div class="radius-table">
|
||||||
|
<a-table
|
||||||
|
:scroll="{ y: 298 }"
|
||||||
|
:columns="columns"
|
||||||
|
:data-source="dataSource"
|
||||||
|
rowKey="id"
|
||||||
|
:pagination="false"
|
||||||
|
></a-table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 站点操作结束 -->
|
||||||
|
|
||||||
|
<!-- 站点筛选 -->
|
||||||
|
<div class="station-filter" v-show="active == 2">
|
||||||
|
<div class="map-pane-content-header">
|
||||||
|
Filter
|
||||||
|
</div>
|
||||||
|
<div class="map-pane-content-main">
|
||||||
|
<div class="station-filter-list">
|
||||||
|
<div class="station-filter-item" v-for="filterItem in filterList" :key="filterItem.title">
|
||||||
|
<div class="station-filter-item-main">
|
||||||
|
<div>
|
||||||
|
<img :src="filterItem.icon" />
|
||||||
|
</div>
|
||||||
|
<span>{{ filterItem.title }}</span>
|
||||||
|
</div>
|
||||||
|
<a-checkbox v-model="filterItem.checked"></a-checkbox>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a-divider style="background-color: #0a544e; margin: 10px 0 0;"></a-divider>
|
||||||
|
<!-- 站点状态类型 -->
|
||||||
|
<div class="station-state-list">
|
||||||
|
<div class="station-state-list-item" v-for="(stateItem, index) in stateList" :key="index">
|
||||||
|
<img :src="stateItem.icon" alt="" />
|
||||||
|
<span>{{ stateItem.title }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 站点装填类型结束 -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 站点筛选结束 -->
|
||||||
|
</div>
|
||||||
|
<!-- 主体部分结束 -->
|
||||||
|
|
||||||
|
<!-- 分析弹窗开始 -->
|
||||||
|
<custom-modal v-model="analyzeModalVisible" enableFullScreen title="Data Recevice status Monitoring" width="64%" :showFooter="false">
|
||||||
|
分析弹窗内容
|
||||||
|
</custom-modal>
|
||||||
|
<!-- 分析弹窗结束 -->
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import CustomModal from '@/components/CustomModal/index.vue'
|
||||||
|
import FilterImage from './filterImage'
|
||||||
|
|
||||||
|
// Filter中的筛选列表
|
||||||
|
const filterList = [
|
||||||
|
{
|
||||||
|
title: 'IMS RN Station(P)',
|
||||||
|
icon: FilterImage.ImsRnStation,
|
||||||
|
checked: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'IMS RN Station(G)',
|
||||||
|
icon: FilterImage.ImsRnStation,
|
||||||
|
checked: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Nuclear Facilities',
|
||||||
|
icon: FilterImage.NuclearFacility,
|
||||||
|
checked: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Groud monitoring station',
|
||||||
|
icon: FilterImage.GroudMonitoringStation,
|
||||||
|
checked: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'car',
|
||||||
|
icon: FilterImage.Car,
|
||||||
|
checked: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'ship',
|
||||||
|
icon: FilterImage.Ship,
|
||||||
|
checked: true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
// Filter中的状态列表
|
||||||
|
const stateList = [
|
||||||
|
{
|
||||||
|
title: 'Excellent data quality',
|
||||||
|
icon: FilterImage.State1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Good data quality',
|
||||||
|
icon: FilterImage.State2
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Poor data quality',
|
||||||
|
icon: FilterImage.State3
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Signal interruption',
|
||||||
|
icon: FilterImage.State4
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
// infomation-radius 表格列
|
||||||
|
const columns = [
|
||||||
|
{
|
||||||
|
title: 'nuclearfaclity',
|
||||||
|
dataIndex: 'nuclearfaclity',
|
||||||
|
width: 100,
|
||||||
|
ellipsis: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'station',
|
||||||
|
dataIndex: 'station'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'distance',
|
||||||
|
dataIndex: 'distance'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
const dataSource = [
|
||||||
|
{
|
||||||
|
id: 1,
|
||||||
|
nuclearfaclity: 'Cooper',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 11,
|
||||||
|
nuclearfaclity: 'Davis Besse-1',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 2,
|
||||||
|
nuclearfaclity: 'Cooper',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 3,
|
||||||
|
nuclearfaclity: 'Davis Besse-1',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 4,
|
||||||
|
nuclearfaclity: 'Cooper',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 5,
|
||||||
|
nuclearfaclity: 'Davis Besse-1',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 6,
|
||||||
|
nuclearfaclity: 'Cooper',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 7,
|
||||||
|
nuclearfaclity: 'Davis Besse-1',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 8,
|
||||||
|
nuclearfaclity: 'Cooper',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 9,
|
||||||
|
nuclearfaclity: 'Davis Besse-1',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: 10,
|
||||||
|
nuclearfaclity: 'Cooper',
|
||||||
|
station: 'USX74',
|
||||||
|
distance: 504.366
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
export default {
|
||||||
|
props: {
|
||||||
|
panMovePix: {
|
||||||
|
type: Number,
|
||||||
|
default: 500
|
||||||
|
},
|
||||||
|
|
||||||
|
stationList: {
|
||||||
|
type: Array
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
CustomModal
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
this.columns = columns
|
||||||
|
return {
|
||||||
|
active: 1,
|
||||||
|
isFullScreen: false, // 是否处于全屏状态
|
||||||
|
analyzeModalVisible: false, // 分析弹窗是否可见
|
||||||
|
|
||||||
|
checkedKeys: [], // 选中的树节点
|
||||||
|
|
||||||
|
filterList, // 筛选类型列表
|
||||||
|
stateList, // 状态类型列表
|
||||||
|
|
||||||
|
dataSource: dataSource // Infomation Radius 表格数据源
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.initParentProps()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
initParentProps() {
|
||||||
|
const { getZoom, setZoom, maxZoom, minZoom } = this.$parent
|
||||||
|
this.getZoom = getZoom
|
||||||
|
this.setZoom = setZoom
|
||||||
|
this.maxZoom = maxZoom
|
||||||
|
this.minZoom = minZoom
|
||||||
|
},
|
||||||
|
|
||||||
|
handleFullScreen() {
|
||||||
|
this.isFullScreen = true
|
||||||
|
},
|
||||||
|
|
||||||
|
handleExitFullScreen() {
|
||||||
|
this.isFullScreen = false
|
||||||
|
},
|
||||||
|
|
||||||
|
// Stations 树选中
|
||||||
|
onTreeSelect(_, { node }) {
|
||||||
|
const selectedKey = node.eventKey
|
||||||
|
const parentKey = node.$parent.eventKey
|
||||||
|
|
||||||
|
const findIndex = this.checkedKeys.findIndex(key => key == selectedKey)
|
||||||
|
|
||||||
|
if (parentKey) {
|
||||||
|
// 选中的是子级节点
|
||||||
|
if (-1 == findIndex) {
|
||||||
|
// 选中了
|
||||||
|
this.checkedKeys.push(selectedKey)
|
||||||
|
|
||||||
|
const parentNode = this.treeData.find(tree => tree.key == parentKey) // 找到树列表中的父节点
|
||||||
|
const childrenKeys = parentNode.children.map(child => child.key)
|
||||||
|
if (childrenKeys.every(key => this.checkedKeys.includes(key))) {
|
||||||
|
// 如果子列表每一个都能在选中的列表中找到,则是全选
|
||||||
|
this.checkedKeys.push(parentKey)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// 取消了
|
||||||
|
this.checkedKeys.splice(findIndex, 1)
|
||||||
|
|
||||||
|
const findParent = this.checkedKeys.findIndex(key => key == parentKey)
|
||||||
|
if (-1 !== findParent) {
|
||||||
|
this.checkedKeys.splice(findParent, 1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
//选中的是父级节点
|
||||||
|
const parentNode = this.treeData.find(tree => tree.key == selectedKey)
|
||||||
|
const childrenKeys = parentNode.children.map(child => child.key)
|
||||||
|
|
||||||
|
const findParent = this.checkedKeys.findIndex(key => key == selectedKey)
|
||||||
|
if (-1 == findParent) {
|
||||||
|
// 未选中父节点,则将子节点都选中
|
||||||
|
this.checkedKeys.push(selectedKey)
|
||||||
|
this.checkedKeys.push(...childrenKeys)
|
||||||
|
} else {
|
||||||
|
// 已经选中了父节点,则将子节点都取消选中
|
||||||
|
this.checkedKeys = this.checkedKeys.filter(key => key !== selectedKey && !childrenKeys.includes(key))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// 选中全部
|
||||||
|
handleSelectAll() {
|
||||||
|
this.checkedKeys = this.treeData.reduce((prev, curr) => {
|
||||||
|
prev.push(curr.key)
|
||||||
|
prev.push(...curr.children.map(child => child.key))
|
||||||
|
return prev
|
||||||
|
}, [])
|
||||||
|
},
|
||||||
|
|
||||||
|
// 反选全部
|
||||||
|
handleClearSelection() {
|
||||||
|
this.checkedKeys = []
|
||||||
|
},
|
||||||
|
|
||||||
|
// 打开分析弹窗
|
||||||
|
handleOpenAnalyzeModal() {
|
||||||
|
this.analyzeModalVisible = true
|
||||||
|
},
|
||||||
|
|
||||||
|
// 地图放大
|
||||||
|
handlePlus() {
|
||||||
|
const zoom = this.getZoom()
|
||||||
|
if (zoom < this.maxZoom) {
|
||||||
|
this.setZoom(zoom + 1)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
// 地图缩小
|
||||||
|
handleMinus() {
|
||||||
|
const zoom = this.getZoom()
|
||||||
|
if (zoom > this.minZoom) {
|
||||||
|
this.setZoom(zoom - 1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
treeData() {
|
||||||
|
const set = new Set(this.stationList.map(item => item.countryCode))
|
||||||
|
return Array.from(set).map((countryCode, index) => {
|
||||||
|
return {
|
||||||
|
title: countryCode,
|
||||||
|
key: index.toString(),
|
||||||
|
children: this.stationList
|
||||||
|
.filter(item => item.countryCode == countryCode)
|
||||||
|
.map(item => ({ title: item.stationCode, key: item.stationId.toString(), children: [] }))
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.map-pane {
|
||||||
|
position: absolute;
|
||||||
|
right: 10px;
|
||||||
|
top: 10px;
|
||||||
|
max-height: calc(100% - 20px);
|
||||||
|
z-index: 1;
|
||||||
|
display: flex;
|
||||||
|
gap: 15px;
|
||||||
|
|
||||||
|
&.is-station {
|
||||||
|
height: calc(100% - 20px);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 操作栏
|
||||||
|
&-operators {
|
||||||
|
user-select: none;
|
||||||
|
img {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
&-main-operator {
|
||||||
|
margin-top: 5px;
|
||||||
|
div {
|
||||||
|
width: 30px;
|
||||||
|
height: 30px;
|
||||||
|
&:not(:first-child) {
|
||||||
|
margin-top: -1px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-zoom {
|
||||||
|
margin-top: 10px;
|
||||||
|
div {
|
||||||
|
width: 30px;
|
||||||
|
height: 30px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-map-plus {
|
||||||
|
background: url(~@/assets/images/station-operation/map-plus.png) center no-repeat;
|
||||||
|
background-size: 100% 100%;
|
||||||
|
|
||||||
|
&:active {
|
||||||
|
background-image: url(~@/assets/images/station-operation/map-plus-active.png);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-map-minus {
|
||||||
|
margin-top: -1px;
|
||||||
|
background: url(~@/assets/images/station-operation/map-minus.png) center no-repeat;
|
||||||
|
background-size: 100% 100%;
|
||||||
|
|
||||||
|
&:active {
|
||||||
|
background-image: url(~@/assets/images/station-operation/map-minus-active.png);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 主体部分
|
||||||
|
&-content {
|
||||||
|
width: 285px;
|
||||||
|
overflow: auto;
|
||||||
|
border: 1px solid #0a544e;
|
||||||
|
|
||||||
|
.map-pane-content-header {
|
||||||
|
padding-left: 20px;
|
||||||
|
height: 40px;
|
||||||
|
line-height: 40px;
|
||||||
|
background-color: #03353f;
|
||||||
|
letter-spacing: 2px;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #0cebc9;
|
||||||
|
font-family: Arial;
|
||||||
|
}
|
||||||
|
|
||||||
|
.map-pane-content-main {
|
||||||
|
background-color: rgba(2, 26, 29, 0.9);
|
||||||
|
padding: 10px;
|
||||||
|
height: calc(100% - 40px);
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 站点操作面板
|
||||||
|
.station-operation {
|
||||||
|
height: 100%;
|
||||||
|
&-stations {
|
||||||
|
height: calc(100% - 443px);
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
&-selection {
|
||||||
|
height: 24px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
|
||||||
|
.ant-space {
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
.select-all,
|
||||||
|
.clear-selection {
|
||||||
|
height: 100%;
|
||||||
|
padding: 0 6px;
|
||||||
|
::v-deep {
|
||||||
|
span {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.station-list-tree {
|
||||||
|
height: calc(100% - 35px);
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-infomation {
|
||||||
|
&-content {
|
||||||
|
height: 383px;
|
||||||
|
|
||||||
|
.radius {
|
||||||
|
&-title {
|
||||||
|
margin-bottom: 9px;
|
||||||
|
font-size: 14px;
|
||||||
|
line-height: 11px;
|
||||||
|
color: #5b9cba;
|
||||||
|
}
|
||||||
|
|
||||||
|
&-search {
|
||||||
|
display: flex;
|
||||||
|
height: 24px;
|
||||||
|
|
||||||
|
::v-deep {
|
||||||
|
.ant-input {
|
||||||
|
width: 183px;
|
||||||
|
height: 100%;
|
||||||
|
padding-left: 5px;
|
||||||
|
padding-right: 36px;
|
||||||
|
}
|
||||||
|
.ant-input-suffix {
|
||||||
|
color: #5b9cba;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-btn {
|
||||||
|
width: 70px;
|
||||||
|
height: 100%;
|
||||||
|
margin-left: 10px;
|
||||||
|
padding: 0;
|
||||||
|
flex-shrink: 0;
|
||||||
|
|
||||||
|
::v-deep {
|
||||||
|
span {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-table {
|
||||||
|
margin-top: 10px;
|
||||||
|
width: 264px;
|
||||||
|
|
||||||
|
::v-deep {
|
||||||
|
.ant-table {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-table-thead > tr th {
|
||||||
|
padding-top: 2px !important;
|
||||||
|
padding-bottom: 2px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-table-tbody .ant-table-row td {
|
||||||
|
padding: 6px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-table-placeholder {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 站点筛选面板
|
||||||
|
.station-filter {
|
||||||
|
&-item {
|
||||||
|
width: 260px;
|
||||||
|
height: 32px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
|
||||||
|
&:nth-child(3) {
|
||||||
|
img {
|
||||||
|
margin-left: -10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&:nth-child(4) {
|
||||||
|
img {
|
||||||
|
margin-left: -12px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&-main {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
> div {
|
||||||
|
width: 39px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.station-state-list {
|
||||||
|
&-item {
|
||||||
|
margin-left: 9px;
|
||||||
|
height: 32px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
span {
|
||||||
|
margin-left: 12px;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -1,850 +0,0 @@
|
||||||
{
|
|
||||||
"success": true,
|
|
||||||
"message": "",
|
|
||||||
"code": 200,
|
|
||||||
"result": [
|
|
||||||
{
|
|
||||||
"evid": 11827659,
|
|
||||||
"orid": 11827659,
|
|
||||||
"magnitude": 3.38,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 16:52:23",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 38.98,
|
|
||||||
"lon": 128.44,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.38,
|
|
||||||
"mb": 4.01,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 0,
|
|
||||||
"arsType": 0,
|
|
||||||
"arsTypeValue": "已告警",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 17:16:01",
|
|
||||||
"sourceAudit": 0,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11827486,
|
|
||||||
"orid": 11827486,
|
|
||||||
"magnitude": 3.29,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 15:43:29",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 38.55,
|
|
||||||
"lon": 126.69,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.29,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 15:52:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11827486, "reason": "Invalid detections", "auth": "wangxl", "lddate": "2023-06-08 15:58:25" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11827386,
|
|
||||||
"orid": 11827449,
|
|
||||||
"magnitude": 3.1,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 14:00:07",
|
|
||||||
"region": "NORTHEASTERN CHINA",
|
|
||||||
"lat": 45.96,
|
|
||||||
"lon": 128.39,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.1,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 1,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 15:34:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11827339,
|
|
||||||
"orid": 11827432,
|
|
||||||
"magnitude": 1.4,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 13:38:07",
|
|
||||||
"region": "CENTRAL CALIFORNIA",
|
|
||||||
"lat": 35.47,
|
|
||||||
"lon": -118.04,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 1.4,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 1,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 15:30:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11826874,
|
|
||||||
"orid": 11826874,
|
|
||||||
"magnitude": 4.52,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 10:55:39",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 42.19,
|
|
||||||
"lon": 129.39,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 4.52,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 11:06:01",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11826521,
|
|
||||||
"orid": 11826521,
|
|
||||||
"magnitude": 3.34,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 07:39:14",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 41.39,
|
|
||||||
"lon": 126.65,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.34,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 0,
|
|
||||||
"arsType": 0,
|
|
||||||
"arsTypeValue": "已告警",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 07:50:00",
|
|
||||||
"sourceAudit": 0,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11826346,
|
|
||||||
"orid": 11826655,
|
|
||||||
"magnitude": 2.42,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 05:22:52",
|
|
||||||
"region": "NEVADA",
|
|
||||||
"lat": 40.01,
|
|
||||||
"lon": -115.65,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.42,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 2,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 09:06:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11826165,
|
|
||||||
"orid": 11826169,
|
|
||||||
"magnitude": 1.76,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 05:05:17",
|
|
||||||
"region": "NEVADA",
|
|
||||||
"lat": 39.97,
|
|
||||||
"lon": -114.45,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 1.76,
|
|
||||||
"mb": 5.8,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 05:26:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [{ "evid": 11826165, "reason": "系统自动拒绝", "auth": null, "lddate": null }]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11826052,
|
|
||||||
"orid": 11826056,
|
|
||||||
"magnitude": 2.99,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 04:32:29",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 41.3,
|
|
||||||
"lon": 129.24,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.99,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 04:42:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11825774,
|
|
||||||
"orid": 11825774,
|
|
||||||
"magnitude": 4.88,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 02:06:57",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 40.82,
|
|
||||||
"lon": 129.76,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 4.88,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 02:22:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11825774, "reason": "Invalid detections", "auth": "tangwei", "lddate": "2023-06-08 08:39:41" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11825682,
|
|
||||||
"orid": 11825682,
|
|
||||||
"magnitude": 3.3,
|
|
||||||
"magType": "mb",
|
|
||||||
"time": "2023-06-08 01:27:48",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 39.69,
|
|
||||||
"lon": 125.5,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": -999.0,
|
|
||||||
"mb": 3.3,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 01:52:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11825682, "reason": "Invalid detections", "auth": "tangwei", "lddate": "2023-06-08 08:39:25" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11825658,
|
|
||||||
"orid": 11825658,
|
|
||||||
"magnitude": 3.61,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 01:07:34",
|
|
||||||
"region": "NORTHERN XINJIANG, CHINA",
|
|
||||||
"lat": 42.51,
|
|
||||||
"lon": 87.99,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.61,
|
|
||||||
"mb": 4.64,
|
|
||||||
"depth": 178.82,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 01:38:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11826485,
|
|
||||||
"orid": 11826644,
|
|
||||||
"magnitude": 5.32,
|
|
||||||
"magType": "ms",
|
|
||||||
"time": "2023-06-08 01:04:53",
|
|
||||||
"region": "JAWA, INDONESIA",
|
|
||||||
"lat": -8.85,
|
|
||||||
"lon": 110.56,
|
|
||||||
"ms": 5.32,
|
|
||||||
"ml": -999.0,
|
|
||||||
"mb": 5.48,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 2,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 09:30:01",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11825495,
|
|
||||||
"orid": 11825495,
|
|
||||||
"magnitude": 3.19,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-08 00:20:34",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 38.62,
|
|
||||||
"lon": 127.85,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.19,
|
|
||||||
"mb": 3.75,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 00:36:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11825495, "reason": "Invalid detections", "auth": "tangwei", "lddate": "2023-06-08 08:34:30" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11826286,
|
|
||||||
"orid": 11826641,
|
|
||||||
"magnitude": 0.2,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 23:54:40",
|
|
||||||
"region": "CALIFORNIA-NEVADA BORDER REGION",
|
|
||||||
"lat": 37.47,
|
|
||||||
"lon": -118.06,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 0.2,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 2,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 09:30:01",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11825404,
|
|
||||||
"orid": 11826640,
|
|
||||||
"magnitude": 2.96,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 23:31:23",
|
|
||||||
"region": "NEVADA",
|
|
||||||
"lat": 39.52,
|
|
||||||
"lon": -116.0,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.96,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 2,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 09:30:01",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11825371,
|
|
||||||
"orid": 11825371,
|
|
||||||
"magnitude": 3.62,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 23:17:51",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 40.09,
|
|
||||||
"lon": 129.94,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.62,
|
|
||||||
"mb": 3.71,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 0,
|
|
||||||
"arsType": 0,
|
|
||||||
"arsTypeValue": "已告警",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 23:40:00",
|
|
||||||
"sourceAudit": 0,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11825298,
|
|
||||||
"orid": 11825298,
|
|
||||||
"magnitude": 3.73,
|
|
||||||
"magType": "mb",
|
|
||||||
"time": "2023-06-07 22:50:31",
|
|
||||||
"region": "TURKMENISTAN-IRAN BORDER REGION",
|
|
||||||
"lat": 36.98,
|
|
||||||
"lon": 59.79,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": -999.0,
|
|
||||||
"mb": 3.73,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 23:06:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11825298, "reason": "Invalid detections", "auth": "tangwei", "lddate": "2023-06-08 08:30:03" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11825252,
|
|
||||||
"orid": 11825252,
|
|
||||||
"magnitude": 2.71,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 22:29:15",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 40.04,
|
|
||||||
"lon": 129.51,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.71,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 22:42:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [{ "evid": 11825252, "reason": "系统自动拒绝", "auth": null, "lddate": null }]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11824346,
|
|
||||||
"orid": 11825010,
|
|
||||||
"magnitude": 2.94,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 14:30:03",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 40.81,
|
|
||||||
"lon": 128.67,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.94,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 2,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 09:30:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11824285,
|
|
||||||
"orid": 11824285,
|
|
||||||
"magnitude": 3.29,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 13:45:20",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 40.81,
|
|
||||||
"lon": 127.57,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.29,
|
|
||||||
"mb": 3.08,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 14:00:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11824285, "reason": "Invalid detections", "auth": "tangwei", "lddate": "2023-06-07 20:37:07" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823915,
|
|
||||||
"orid": 11823915,
|
|
||||||
"magnitude": 2.96,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 10:24:54",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 41.4,
|
|
||||||
"lon": 126.29,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.96,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 10:42:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [{ "evid": 11823915, "reason": "系统自动拒绝", "auth": null, "lddate": null }]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823902,
|
|
||||||
"orid": 11824979,
|
|
||||||
"magnitude": 2.86,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 10:13:03",
|
|
||||||
"region": "CALIFORNIA-NEVADA BORDER REGION",
|
|
||||||
"lat": 37.22,
|
|
||||||
"lon": -117.69,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.86,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 2,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-08 09:30:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823741,
|
|
||||||
"orid": 11823741,
|
|
||||||
"magnitude": 1.73,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 08:40:39",
|
|
||||||
"region": "UTAH",
|
|
||||||
"lat": 38.84,
|
|
||||||
"lon": -112.01,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 1.73,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 08:50:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11823741, "reason": "Invalid detections", "auth": "tangwei", "lddate": "2023-06-07 09:05:18" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823738,
|
|
||||||
"orid": 11823738,
|
|
||||||
"magnitude": 4.83,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 08:27:30",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 39.17,
|
|
||||||
"lon": 128.3,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 4.83,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 08:46:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11823738, "reason": "Invalid detections", "auth": "tangwei", "lddate": "2023-06-07 09:05:01" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823458,
|
|
||||||
"orid": 11823458,
|
|
||||||
"magnitude": 3.38,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 06:10:48",
|
|
||||||
"region": "SOUTHERN INDIA",
|
|
||||||
"lat": 23.81,
|
|
||||||
"lon": 79.03,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.38,
|
|
||||||
"mb": 4.13,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 06:26:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [{ "evid": 11823458, "reason": "系统自动拒绝", "auth": null, "lddate": null }]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823228,
|
|
||||||
"orid": 11823228,
|
|
||||||
"magnitude": 2.41,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 04:17:32",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 40.16,
|
|
||||||
"lon": 128.32,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.41,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 04:26:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11823228, "reason": "Invalid detections", "auth": "liuzh", "lddate": "2023-06-07 08:16:54" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823233,
|
|
||||||
"orid": 11823233,
|
|
||||||
"magnitude": 4.3,
|
|
||||||
"magType": "mb",
|
|
||||||
"time": "2023-06-07 04:07:35",
|
|
||||||
"region": "SOUTHERN NEVADA",
|
|
||||||
"lat": 37.59,
|
|
||||||
"lon": -115.95,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": -999.0,
|
|
||||||
"mb": 4.3,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 04:30:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11823233, "reason": "Invalid detections", "auth": "liuzh", "lddate": "2023-06-07 08:16:41" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823169,
|
|
||||||
"orid": 11823169,
|
|
||||||
"magnitude": 3.45,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 03:30:34",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 39.65,
|
|
||||||
"lon": 127.38,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.45,
|
|
||||||
"mb": 3.78,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 03:50:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11823169, "reason": "Invalid association", "auth": "liuzh", "lddate": "2023-06-07 08:16:25" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823157,
|
|
||||||
"orid": 11823157,
|
|
||||||
"magnitude": 3.68,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 03:28:49",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 41.96,
|
|
||||||
"lon": 127.28,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.68,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 03:40:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [{ "evid": 11823157, "reason": "系统自动拒绝", "auth": null, "lddate": null }]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11823074,
|
|
||||||
"orid": 11823074,
|
|
||||||
"magnitude": 1.68,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 02:38:21",
|
|
||||||
"region": "CALIFORNIA-NEVADA BORDER REGION",
|
|
||||||
"lat": 37.57,
|
|
||||||
"lon": -117.61,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 1.68,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 02:46:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [{ "evid": 11823074, "reason": "系统自动拒绝", "auth": null, "lddate": null }]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11822776,
|
|
||||||
"orid": 11822776,
|
|
||||||
"magnitude": 3.51,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-07 00:14:18",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 39.91,
|
|
||||||
"lon": 126.42,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.51,
|
|
||||||
"mb": 3.14,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 00:42:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11822776, "reason": "Invalid detections", "auth": "liuzh", "lddate": "2023-06-07 08:15:50" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11822801,
|
|
||||||
"orid": 11822801,
|
|
||||||
"magnitude": 3.73,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-06 23:55:13",
|
|
||||||
"region": "INDIA-BANGLADESH BORDER REGION",
|
|
||||||
"lat": 23.11,
|
|
||||||
"lon": 92.02,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.73,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-07 00:52:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11822801, "reason": "Invalid detections", "auth": "liuzh", "lddate": "2023-06-07 08:15:38" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11822450,
|
|
||||||
"orid": 11822459,
|
|
||||||
"magnitude": 3.18,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-06 21:24:45",
|
|
||||||
"region": "WESTERN IRAN",
|
|
||||||
"lat": 33.67,
|
|
||||||
"lon": 48.63,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.18,
|
|
||||||
"mb": 4.33,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 1,
|
|
||||||
"arsType": 1,
|
|
||||||
"arsTypeValue": "真事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-06 21:58:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": []
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11822445,
|
|
||||||
"orid": 11822446,
|
|
||||||
"magnitude": 3.25,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-06 21:24:25",
|
|
||||||
"region": "IRAN-IRAQ BORDER REGION",
|
|
||||||
"lat": 30.61,
|
|
||||||
"lon": 48.2,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 3.25,
|
|
||||||
"mb": 4.57,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-06 21:46:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [{ "evid": 11822445, "reason": "系统自动拒绝", "auth": null, "lddate": null }]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11822343,
|
|
||||||
"orid": 11822343,
|
|
||||||
"magnitude": 2.93,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-06 20:12:42",
|
|
||||||
"region": "NORTH KOREA",
|
|
||||||
"lat": 40.29,
|
|
||||||
"lon": 129.07,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 2.93,
|
|
||||||
"mb": -999.0,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-06 20:26:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [
|
|
||||||
{ "evid": 11822343, "reason": "Invalid detections", "auth": "liuzh", "lddate": "2023-06-06 21:33:23" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"evid": 11822272,
|
|
||||||
"orid": 11822274,
|
|
||||||
"magnitude": 1.81,
|
|
||||||
"magType": "ml",
|
|
||||||
"time": "2023-06-06 19:14:05",
|
|
||||||
"region": "CALIFORNIA-NEVADA BORDER REGION",
|
|
||||||
"lat": 38.99,
|
|
||||||
"lon": -118.19,
|
|
||||||
"ms": -999.0,
|
|
||||||
"ml": 1.81,
|
|
||||||
"mb": 7.27,
|
|
||||||
"depth": 0.0,
|
|
||||||
"arsTable": 3,
|
|
||||||
"arsType": 2,
|
|
||||||
"arsTypeValue": "假事件",
|
|
||||||
"sourceType": "F",
|
|
||||||
"sourceTypeValue": "NDC快速产品",
|
|
||||||
"createTime": "2023-06-06 19:36:00",
|
|
||||||
"sourceAudit": 1,
|
|
||||||
"discardList": [{ "evid": 11822272, "reason": "系统自动拒绝", "auth": null, "lddate": null }]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"timestamp": 1686217634834
|
|
||||||
}
|
|
23
src/views/stationOperation/components/filterImage.js
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
import Car from '@/assets/images/station-operation/car-filter.png'
|
||||||
|
import GroudMonitoringStation from '@/assets/images/station-operation/groud-monitoring-station-filter.png'
|
||||||
|
import ImsRnStation from '@/assets/images/station-operation/ims-rn-station-filter.png'
|
||||||
|
import NuclearFacility from '@/assets/images/station-operation/nuclear-facility-filter.png'
|
||||||
|
import Ship from '@/assets/images/station-operation/ship-filter.png'
|
||||||
|
|
||||||
|
import State1 from '@/assets/images/station-operation/station-state-1.png'
|
||||||
|
import State2 from '@/assets/images/station-operation/station-state-2.png'
|
||||||
|
import State3 from '@/assets/images/station-operation/station-state-3.png'
|
||||||
|
import State4 from '@/assets/images/station-operation/station-state-4.png'
|
||||||
|
|
||||||
|
export default {
|
||||||
|
Car,
|
||||||
|
GroudMonitoringStation,
|
||||||
|
ImsRnStation,
|
||||||
|
NuclearFacility,
|
||||||
|
Ship,
|
||||||
|
|
||||||
|
State1,
|
||||||
|
State2,
|
||||||
|
State3,
|
||||||
|
State4
|
||||||
|
}
|
|
@ -4,7 +4,7 @@ import ImsRnStation from '@/assets/images/station-operation/ims-rn-station.png'
|
||||||
import NuclearFacility from '@/assets/images/station-operation/nuclear-facility.png'
|
import NuclearFacility from '@/assets/images/station-operation/nuclear-facility.png'
|
||||||
import Ship from '@/assets/images/station-operation/ship.png'
|
import Ship from '@/assets/images/station-operation/ship.png'
|
||||||
|
|
||||||
export {
|
export default {
|
||||||
Car,
|
Car,
|
||||||
GroudMonitoringStation,
|
GroudMonitoringStation,
|
||||||
ImsRnStation,
|
ImsRnStation,
|
||||||
|
|
|
@ -19,6 +19,8 @@
|
||||||
<span></span>
|
<span></span>
|
||||||
<span></span>
|
<span></span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 头部操作栏 -->
|
||||||
<div class="title-operator">
|
<div class="title-operator">
|
||||||
<a-popover v-model="searchVisible" trigger="click" placement="bottom">
|
<a-popover v-model="searchVisible" trigger="click" placement="bottom">
|
||||||
<div @click.stop="searchVisible = !searchVisible">
|
<div @click.stop="searchVisible = !searchVisible">
|
||||||
|
@ -39,30 +41,33 @@
|
||||||
</template>
|
</template>
|
||||||
</a-popover>
|
</a-popover>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- 头部操作栏结束 -->
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<ScrollContainer direction="verticle" class="date-list">
|
<ScrollContainer direction="verticle" class="date-list">
|
||||||
<div class="date-list-content">
|
<div class="date-list-content">
|
||||||
|
<a-spin v-if="isGettingDateList"></a-spin>
|
||||||
|
<template v-else>
|
||||||
<div class="date-list-item" v-for="item of dateList" :key="item.id">
|
<div class="date-list-item" v-for="item of dateList" :key="item.id">
|
||||||
<h4 class="date-list-item-title">
|
<h4 class="date-list-item-title">
|
||||||
{{ item.stationName }}
|
{{ item.stationCode }}
|
||||||
</h4>
|
</h4>
|
||||||
<div class="date-list-item-container">
|
<div class="date-list-item-container">
|
||||||
<div class="date-list-item-content">
|
<div class="date-list-item-content">
|
||||||
<div class="date-list-item-children">
|
<div class="date-list-item-children">
|
||||||
<div class="date-list-item-child">
|
<div class="date-list-item-child">
|
||||||
<label>Station Type:</label>
|
<label>Station Type:</label>
|
||||||
<span>{{ item.stationType }}</span>
|
<span>{{ item.type }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="date-list-item-child" style="word-break: break-all">
|
<div class="date-list-item-child" style="word-break: break-all">
|
||||||
<label>Altitude:</label>
|
<label>Altitude:</label>
|
||||||
<span>{{ item.altitude }}</span>
|
<span>{{ item.elevation }}m</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="date-list-item-children">
|
<div class="date-list-item-children">
|
||||||
<div class="date-list-item-child">
|
<div class="date-list-item-child">
|
||||||
<label>Lon And Lat:</label>
|
<label>Lon And Lat:</label>
|
||||||
<span>{{ item.lon }} {{ item.lat }}</span>
|
<span>{{ item.lon.toFixed(6) }} {{ item.lat.toFixed(6) }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="date-list-item-children">
|
<div class="date-list-item-children">
|
||||||
|
@ -72,18 +77,19 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="date-list-item-child">
|
<div class="date-list-item-child">
|
||||||
<label>Signal:</label>
|
<label>Signal:</label>
|
||||||
<span class="green">{{ item.signal }}</span>
|
<span class="green">Normally</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<custom-empty v-if="!dateList || !dateList.length" style="margin-top: 40px"></custom-empty>
|
<custom-empty v-if="!dateList.length" style="margin-top: 40px"></custom-empty>
|
||||||
|
</template>
|
||||||
</div>
|
</div>
|
||||||
<div class="shadow"></div>
|
<div class="shadow"></div>
|
||||||
</ScrollContainer>
|
</ScrollContainer>
|
||||||
</a-collapse-panel>
|
</a-collapse-panel>
|
||||||
<!-- All Date End -->
|
<!-- All Date 结束 -->
|
||||||
<!-- Focus Date -->
|
<!-- Focus Date -->
|
||||||
<a-collapse-panel key="2">
|
<a-collapse-panel key="2">
|
||||||
<template slot="header">
|
<template slot="header">
|
||||||
|
@ -101,26 +107,28 @@
|
||||||
</template>
|
</template>
|
||||||
<ScrollContainer direction="verticle" class="date-list">
|
<ScrollContainer direction="verticle" class="date-list">
|
||||||
<div class="date-list-content">
|
<div class="date-list-content">
|
||||||
|
<a-spin v-if="isGettingDateList"></a-spin>
|
||||||
|
<template v-else>
|
||||||
<div class="date-list-item" v-for="item of dateList" :key="item.id">
|
<div class="date-list-item" v-for="item of dateList" :key="item.id">
|
||||||
<h4 class="date-list-item-title">
|
<h4 class="date-list-item-title">
|
||||||
{{ item.stationName }}
|
{{ item.stationCode }}
|
||||||
</h4>
|
</h4>
|
||||||
<div class="date-list-item-container">
|
<div class="date-list-item-container">
|
||||||
<div class="date-list-item-content">
|
<div class="date-list-item-content">
|
||||||
<div class="date-list-item-children">
|
<div class="date-list-item-children">
|
||||||
<div class="date-list-item-child">
|
<div class="date-list-item-child">
|
||||||
<label>Station Type:</label>
|
<label>Station Type:</label>
|
||||||
<span>{{ item.stationType }}</span>
|
<span>{{ item.type }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="date-list-item-child" style="word-break: break-all">
|
<div class="date-list-item-child" style="word-break: break-all">
|
||||||
<label>Altitude:</label>
|
<label>Altitude:</label>
|
||||||
<span>{{ item.altitude }}</span>
|
<span>{{ item.elevation }}m</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="date-list-item-children">
|
<div class="date-list-item-children">
|
||||||
<div class="date-list-item-child">
|
<div class="date-list-item-child">
|
||||||
<label>Lon And Lat:</label>
|
<label>Lon And Lat:</label>
|
||||||
<span>{{ item.lon }} {{ item.lat }}</span>
|
<span>{{ item.lon.toFixed(6) }} {{ item.lat.toFixed(6) }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="date-list-item-children">
|
<div class="date-list-item-children">
|
||||||
|
@ -130,57 +138,74 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="date-list-item-child">
|
<div class="date-list-item-child">
|
||||||
<label>Signal:</label>
|
<label>Signal:</label>
|
||||||
<span class="green">{{ item.signal }}</span>
|
<span class="green">Normally</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<custom-empty v-if="!dateList || !dateList.length" style="margin-top: 40px"></custom-empty>
|
<custom-empty v-if="!dateList.length" style="margin-top: 40px"></custom-empty>
|
||||||
|
</template>
|
||||||
</div>
|
</div>
|
||||||
<div class="shadow"></div>
|
<div class="shadow"></div>
|
||||||
</ScrollContainer>
|
</ScrollContainer>
|
||||||
</a-collapse-panel>
|
</a-collapse-panel>
|
||||||
<!-- Focus Date End -->
|
<!-- Focus Date 结束 -->
|
||||||
</a-collapse>
|
</a-collapse>
|
||||||
</div>
|
</div>
|
||||||
<!-- 右侧地图 -->
|
<!-- 右侧地图 -->
|
||||||
<div class="station-operation-map">
|
<div class="station-operation-map">
|
||||||
<Map />
|
<Map token="AAPK2b935e8bbf564ef581ca3c6fcaa5f2a71ZH84cPqqFvyz3KplFRHP8HyAwJJkh6cnpcQ-qkWh5aiyDQsGJbsXglGx0QM2cPm">
|
||||||
|
<MapMarker v-if="dateList.length" :list="dateList" />
|
||||||
|
<MapPane :stationList="dateList" />
|
||||||
|
</Map>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import Map from './components/Map.vue'
|
import Map from './components/Map.vue'
|
||||||
|
import MapMarker from './components/MapMarker.vue'
|
||||||
|
import MapPane from './components/MapPane.vue'
|
||||||
import ScrollContainer from '@/components/ScrollContainer/index.vue'
|
import ScrollContainer from '@/components/ScrollContainer/index.vue'
|
||||||
|
import { getAction } from '../../api/manage'
|
||||||
const dateList = new Array(5).fill(0).map(() => ({
|
|
||||||
id: 1,
|
|
||||||
stationName: 'ARP01',
|
|
||||||
stationType: 'IMS Station',
|
|
||||||
altitude: '596m',
|
|
||||||
lon: 139.079722,
|
|
||||||
lat: 36.299972,
|
|
||||||
status: 'Operation',
|
|
||||||
signal: 'Normally'
|
|
||||||
}))
|
|
||||||
|
|
||||||
dateList.forEach((item, index) => (item.id = index))
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
Map,
|
Map,
|
||||||
|
MapMarker,
|
||||||
|
MapPane,
|
||||||
ScrollContainer
|
ScrollContainer
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
activeKey: '1',
|
activeKey: '1',
|
||||||
isGettingDateList: false,
|
isGettingDateList: false,
|
||||||
dateList: dateList,
|
dateList: [],
|
||||||
searchVisible: false
|
searchVisible: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
this.getStationList()
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 获取站点列表
|
||||||
|
async getStationList() {
|
||||||
|
try {
|
||||||
|
this.isGettingDateList = true
|
||||||
|
const {
|
||||||
|
success,
|
||||||
|
result: { records }
|
||||||
|
} = await getAction('/gardsStations/findPage?pageIndex=1&pageSize=999')
|
||||||
|
if (success) {
|
||||||
|
this.dateList = records
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error(error)
|
||||||
|
} finally {
|
||||||
|
this.isGettingDateList = false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
// 左侧 All Date 查询
|
// 左侧 All Date 查询
|
||||||
onSearch() {
|
onSearch() {
|
||||||
this.searchVisible = false
|
this.searchVisible = false
|
||||||
|
@ -331,6 +356,15 @@ export default {
|
||||||
padding: 2px 0 10px 7px;
|
padding: 2px 0 10px 7px;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
|
|
||||||
|
&-content {
|
||||||
|
.ant-spin {
|
||||||
|
width: 100%;
|
||||||
|
height: 100px;
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 90px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
&-item {
|
&-item {
|
||||||
width: 322px;
|
width: 322px;
|
||||||
&-title {
|
&-title {
|
||||||
|
|
|
@ -136,6 +136,7 @@
|
||||||
checkStrictly
|
checkStrictly
|
||||||
defaultExpandAll
|
defaultExpandAll
|
||||||
:checkedKeys="[...selectedKeys, ...targetKeys]"
|
:checkedKeys="[...selectedKeys, ...targetKeys]"
|
||||||
|
:selectedKeys="[]"
|
||||||
:treeData="treeData"
|
:treeData="treeData"
|
||||||
@check="
|
@check="
|
||||||
(_, props) => {
|
(_, props) => {
|
||||||
|
|