From 7f6291e80073c0c29f9d24bfdd3ac2602a059e70 Mon Sep 17 00:00:00 2001
From: chenyabin <Chenab123!>
Date: 星期二, 18 五月 2021 10:10:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/develop' into develop
---
src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue | 69 ++-
public/assets/images/map/sewers/含油污水.png | 0
src/conf/layers/LayerPipeLines.js | 11
src/components/LayerController/service/AnimalService.js | 13
src/components/layer/src/layer.vue | 6
src/conf/layers/LayerArea.js | 3
src/components/LayerController/logic/Company.js | 43 -
src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue | 20
src/components/panel/topicSearch/DischargeSearch.vue | 2
src/views/popup/Popup.vue | 22
public/assets/images/map/sewers/防火堤.png | 0
public/assets/images/map/sewers/含硫污水.png | 0
src/components/LayerController/service/WmsLayerService.js | 157 --------
src/conf/layers/LayerHbss.js | 3
src/conf/Constants.js | 206 +++++++++-
public/assets/images/map/sewers/含盐污水.png | 0
public/assets/images/map/sewers/净化水.png | 0
src/components/LayerController/service/WmsLayerGroupService.js | 1
src/utils/utils.js | 33 +
public/assets/images/map/sewers/生产污水.png | 0
src/components/LayerController/logic/SourcesPollution.js | 16
src/components/LayerController/logic/WasteGas.js | 7
public/assets/images/map/sewers/含碱污水.png | 0
src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue | 10
src/conf/layers/LayerFsss.js | 3
public/assets/images/map/sewers/管架.png | 0
src/views/MapTemplate.vue | 8
src/components/LayerController/service/LayerFactory.js | 157 --------
public/assets/images/map/sewers/流向.png | 0
src/components/helpers/MapManager.js | 59 +++
public/assets/images/map/sewers/管廊.png | 0
src/components/panel/topicSearch/SolidWasteSearch.vue | 5
public/assets/images/map/sewers/事故水.png | 0
public/assets/images/map/sewers/循环水.png | 0
/dev/null | 26 -
src/conf/MapConfig.js | 1
public/assets/images/map/sewers/生活污水.png | 0
public/assets/images/map/sewers/装置区.png | 0
src/components/LayerController/logic/WasteWater.js | 38 -
src/components/panel/topicSearch/SewersSearch.vue | 9
public/assets/images/map/sewers/截流闸.png | 0
src/components/LayerController/logic/WasteSolid.js | 7
public/assets/images/map/sewers/公司.png | 0
src/components/helpers/LocateHelper.js | 123 ++++++
public/assets/images/map/sewers/溢流堰.png | 0
src/components/layer/src/layer.js | 4
46 files changed, 557 insertions(+), 505 deletions(-)
diff --git "a/public/assets/images/map/sewers/\344\272\213\346\225\205\346\260\264.png" "b/public/assets/images/map/sewers/\344\272\213\346\225\205\346\260\264.png"
new file mode 100644
index 0000000..a633444
--- /dev/null
+++ "b/public/assets/images/map/sewers/\344\272\213\346\225\205\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\345\205\254\345\217\270.png" "b/public/assets/images/map/sewers/\345\205\254\345\217\270.png"
new file mode 100644
index 0000000..0d202f5
--- /dev/null
+++ "b/public/assets/images/map/sewers/\345\205\254\345\217\270.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\345\207\200\345\214\226\346\260\264.png" "b/public/assets/images/map/sewers/\345\207\200\345\214\226\346\260\264.png"
new file mode 100644
index 0000000..d5359a1
--- /dev/null
+++ "b/public/assets/images/map/sewers/\345\207\200\345\214\226\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\345\220\253\346\262\271\346\261\241\346\260\264.png" "b/public/assets/images/map/sewers/\345\220\253\346\262\271\346\261\241\346\260\264.png"
new file mode 100644
index 0000000..38b284c
--- /dev/null
+++ "b/public/assets/images/map/sewers/\345\220\253\346\262\271\346\261\241\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\345\220\253\347\233\220\346\261\241\346\260\264.png" "b/public/assets/images/map/sewers/\345\220\253\347\233\220\346\261\241\346\260\264.png"
new file mode 100644
index 0000000..5c93042
--- /dev/null
+++ "b/public/assets/images/map/sewers/\345\220\253\347\233\220\346\261\241\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\345\220\253\347\241\253\346\261\241\346\260\264.png" "b/public/assets/images/map/sewers/\345\220\253\347\241\253\346\261\241\346\260\264.png"
new file mode 100644
index 0000000..10705fb
--- /dev/null
+++ "b/public/assets/images/map/sewers/\345\220\253\347\241\253\346\261\241\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\345\220\253\347\242\261\346\261\241\346\260\264.png" "b/public/assets/images/map/sewers/\345\220\253\347\242\261\346\261\241\346\260\264.png"
new file mode 100644
index 0000000..676138b
--- /dev/null
+++ "b/public/assets/images/map/sewers/\345\220\253\347\242\261\346\261\241\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\345\276\252\347\216\257\346\260\264.png" "b/public/assets/images/map/sewers/\345\276\252\347\216\257\346\260\264.png"
new file mode 100644
index 0000000..d3569e2
--- /dev/null
+++ "b/public/assets/images/map/sewers/\345\276\252\347\216\257\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\346\210\252\346\265\201\351\227\270.png" "b/public/assets/images/map/sewers/\346\210\252\346\265\201\351\227\270.png"
new file mode 100644
index 0000000..6790e49
--- /dev/null
+++ "b/public/assets/images/map/sewers/\346\210\252\346\265\201\351\227\270.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\346\265\201\345\220\221.png" "b/public/assets/images/map/sewers/\346\265\201\345\220\221.png"
new file mode 100644
index 0000000..b87b23d
--- /dev/null
+++ "b/public/assets/images/map/sewers/\346\265\201\345\220\221.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\346\272\242\346\265\201\345\240\260.png" "b/public/assets/images/map/sewers/\346\272\242\346\265\201\345\240\260.png"
new file mode 100644
index 0000000..81a8b47
--- /dev/null
+++ "b/public/assets/images/map/sewers/\346\272\242\346\265\201\345\240\260.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\347\224\237\344\272\247\346\261\241\346\260\264.png" "b/public/assets/images/map/sewers/\347\224\237\344\272\247\346\261\241\346\260\264.png"
new file mode 100644
index 0000000..0897c51
--- /dev/null
+++ "b/public/assets/images/map/sewers/\347\224\237\344\272\247\346\261\241\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\347\224\237\346\264\273\346\261\241\346\260\264.png" "b/public/assets/images/map/sewers/\347\224\237\346\264\273\346\261\241\346\260\264.png"
new file mode 100644
index 0000000..5165e20
--- /dev/null
+++ "b/public/assets/images/map/sewers/\347\224\237\346\264\273\346\261\241\346\260\264.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\347\256\241\345\273\212.png" "b/public/assets/images/map/sewers/\347\256\241\345\273\212.png"
new file mode 100644
index 0000000..e07d50f
--- /dev/null
+++ "b/public/assets/images/map/sewers/\347\256\241\345\273\212.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\347\256\241\346\236\266.png" "b/public/assets/images/map/sewers/\347\256\241\346\236\266.png"
new file mode 100644
index 0000000..0ade675
--- /dev/null
+++ "b/public/assets/images/map/sewers/\347\256\241\346\236\266.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\350\243\205\347\275\256\345\214\272.png" "b/public/assets/images/map/sewers/\350\243\205\347\275\256\345\214\272.png"
new file mode 100644
index 0000000..525d157
--- /dev/null
+++ "b/public/assets/images/map/sewers/\350\243\205\347\275\256\345\214\272.png"
Binary files differ
diff --git "a/public/assets/images/map/sewers/\351\230\262\347\201\253\345\240\244.png" "b/public/assets/images/map/sewers/\351\230\262\347\201\253\345\240\244.png"
new file mode 100644
index 0000000..33076a5
--- /dev/null
+++ "b/public/assets/images/map/sewers/\351\230\262\347\201\253\345\240\244.png"
Binary files differ
diff --git a/src/components/LayerController/event/EventHandler.js b/src/components/LayerController/event/EventHandler.js
deleted file mode 100644
index 2ab3cba..0000000
--- a/src/components/LayerController/event/EventHandler.js
+++ /dev/null
@@ -1,26 +0,0 @@
-
-class EventHandler {
- constructor () {
- this.map = window.map
- this.mapClickForLayers = {}
-
- window.map.on('click', (e) => {
- console.log(e)
- for (var k in this.mapClickForLayers) {
- const func = this.mapClickForLayers[k]
- console.log(func)
- func(e)
- }
- })
- }
-
- addLayerEvent (config, callback) {
- this.mapClickForLayers[config.code] = callback
- }
-
- removeEvent (config) {
- delete this.mapClickForLayers[config.code]
- }
-}
-
-export default EventHandler
diff --git a/src/components/LayerController/logic/Company.js b/src/components/LayerController/logic/Company.js
index 8c4bd07..d6b7ea2 100644
--- a/src/components/LayerController/logic/Company.js
+++ b/src/components/LayerController/logic/Company.js
@@ -1,6 +1,7 @@
/**
- * 鍥哄簾
+ * 浼佷笟
*/
+
// 鍖哄垎涓嶅悓绫诲瀷 浣跨敤涓嶅悓img
const companyImg = '/assets/images/map/company_refining.png'
const companyOil = '/assets/images/map/company_oil.png'
@@ -14,7 +15,6 @@
* @param L leaflet瀵硅薄
*/
this.init = async (layer, L) => {
- // const SolidWasteIcon = this.SolidWasteIcon()
this.animalService = new AnimalService({
L: L,
layer: layer
@@ -39,23 +39,10 @@
className: 'company-bindTooltip',
iconSize: 16
})
-
const marker = L.marker([positionX, positionY], {
- /* icon: L.icon({
- iconUrl: iconUrl,
- iconSize: [30, 30],
- iconAnchor: [15, 15]
- }), */
icon: myIcon,
test: data[i]
})
- /* const htmls = '<ul><li>' + data[i].name + '</li></ul>'
- marker.bindTooltip(htmls, {
- permanent: true,
- offset: [0, 5],
- direction: 'bottom',
- className: 'company-bindTooltip'
- }) */
layer.addLayer(marker)
}
}
@@ -63,23 +50,27 @@
* 鐐逛綅榧犳爣绉诲叆寮规
* */
this.bindTooltip = (layer) => {
- // console.log(layer)
+ // console.log(layer)
return '<div class="company-bindTooltip-hover"><h3>姹℃煋鐗╀骇鐢熺粺璁�</h3><ul>' +
- '<li>鐢熶骇璁炬柦锛�30锛堜釜锛�</li>' +
- '<li>娌荤悊璁炬柦锛�30锛堜釜锛�</li>' +
- '</ul></div>'// layer.options.test.name
+ '<li>鐢熶骇璁炬柦锛�30锛堜釜锛�</li>' +
+ '<li>娌荤悊璁炬柦锛�30锛堜釜锛�</li>' +
+ '</ul></div>'// layer.options.test.name
}
/*
* 鐐逛綅鐐瑰嚮浜嬩欢
*
* */
this.clickListener = (e) => {
- // this.animalService.pulseEffect(e.latlng)
- const dataValue = {
- StoragePlaceId: e.layer.options.test.name
- }
- debugger
- console.log(dataValue)
- // return this.PublicBounced.$el
+ // console.log(e)
+ window.map.setView(e.latlng, 15)
+ // if (window.map.getZoom() >= 10) {
+ // window.map.removeLayer(e.layer)
+ // e.layer.remove()
+ // } else if (window.map.getZoom() < 10) {
+ // window.map.addLayer(e.layer)
+ // }
+ // const dataValue = {
+ // StoragePlaceId: e.layer.options.test.name
+ // }
}
}
diff --git a/src/components/LayerController/logic/SourcesPollution.js b/src/components/LayerController/logic/SourcesPollution.js
index a701f1c..27899ce 100644
--- a/src/components/LayerController/logic/SourcesPollution.js
+++ b/src/components/LayerController/logic/SourcesPollution.js
@@ -14,9 +14,23 @@
layer: layer
})
const result = await mapApi.getSourcesPoll()
- console.log(result)
+ // console.log(result)
const resultData = result.Result.DataInfo || []
const polygon = L.polygon(resultData, { color: 'yellow' })
polygon.addTo(layer)
}
+ this.bindTooltip = (layer) => {
+ return 'layer'
+ }
+ this.click = () => {
+ window.$layer.open({
+ content: {
+ content: 'Popup', // 缁勪欢
+ data: { // 浼犻�掔殑鍙傛暟
+ datas: 'popupDatas'
+ }
+ },
+ title: ''
+ })
+ }
}
diff --git a/src/components/LayerController/logic/WasteGas.js b/src/components/LayerController/logic/WasteGas.js
index 17706bc..6c2fe65 100644
--- a/src/components/LayerController/logic/WasteGas.js
+++ b/src/components/LayerController/logic/WasteGas.js
@@ -3,7 +3,8 @@
*/
const AnimalService = require('../service/AnimalService').default
// const AjaxUtils = require('../../../utils/AjaxUtils').default
-
+// 鍏叡鏂规硶 panTo() 寮曠敤
+const { setPanTo } = require('../../../utils/utils')
// 鍖哄垎涓嶅悓绫诲瀷 浣跨敤涓嶅悓img
// const ImgBlue = '/assets/images/map/exhaust/fq_blue.png'
// const ImgGray = '/assets/images/map/exhaust/fq_gray.png'
@@ -60,8 +61,9 @@
}
this.clickListener = async (e) => {
- console.log(e)
+ // console.log(e)
this.animalService.pulseEffect(e.latlng)
+ setPanTo(e.latlng, 200)
const title = e.layer.options.test.Name
const res = e.layer.options.test
window.$layer.open({
@@ -74,7 +76,6 @@
},
title: '澶╂触鐭冲寲' + title // 鏍囬
})
- this.animalService.setPanTo(e.latlng, 150)
}
// 涓嶅悓绫诲瀷鍥剧墖鍔犺浇
this.differentTypes = (ContrLevel) => {
diff --git a/src/components/LayerController/logic/WasteSolid.js b/src/components/LayerController/logic/WasteSolid.js
index 28b0938..1b9cd9c 100644
--- a/src/components/LayerController/logic/WasteSolid.js
+++ b/src/components/LayerController/logic/WasteSolid.js
@@ -5,7 +5,8 @@
// 鍖哄垎涓嶅悓绫诲瀷 浣跨敤涓嶅悓img
const defaultImg = '/assets/images/map/solidwaste/voc.png'
const setting = '/assets/images/map/solidwaste/gf_green2.png'
-
+// 鍏叡鏂规硶 panTo() 寮曠敤
+const { setPanTo } = require('../../../utils/utils')
// 璇锋眰鎺ュ彛鏁版嵁
const mapApi = require('../../../api/mapApi').default
// 浣跨敤灏佽鏂规硶
@@ -53,6 +54,8 @@
this.clickListener = (e) => {
// 鐐瑰嚮marker鐨刾ulse()鍏夋尝
this.animalService.pulseEffect(e.latlng)
+ /* flyTo()寮瑰嚭妗嗗钩绉讳簨浠� */
+ setPanTo(e.latlng, 200)
// 寮规鏍囬
const title = e.layer.options.totransferData.Name
window.$layer.open({
@@ -65,8 +68,6 @@
},
title: title // 鏍囬
})
- /* flyTo()寮瑰嚭妗嗗钩绉讳簨浠� */
- this.animalService.setPanTo(e.latlng, 300)
}
// 涓嶅悓绫诲瀷鍥剧墖灏佽
diff --git a/src/components/LayerController/logic/WasteWater.js b/src/components/LayerController/logic/WasteWater.js
index 6f67ed6..267fe0a 100644
--- a/src/components/LayerController/logic/WasteWater.js
+++ b/src/components/LayerController/logic/WasteWater.js
@@ -1,13 +1,14 @@
/**
* 搴熸按
*/
-// import WasteWater from "../../table/components/WasteWater";
+
+// 鍏叡鏂规硶 panTo() 寮曠敤
+const { setPanTo } = require('../../../utils/utils')
const AnimalService = require('../service/AnimalService').default
const mapApi = require('../../../api/mapApi').default
// 寮圭獥鏁版嵁寮曡繘
const WasteWaterIndex = require('@components/BaseNav/WasteWater/WasteWaterIndex').default
-// const publicBounced = require('../../BaseNav/PublicBounced/PublicBounced').default
const NormalImg = '/assets/images/map/wastewater/fs_bright_green.png' // 姝e父
const OffImg = '/assets/images/map/wastewater/fs_gray.png' // 鍋滆繍
@@ -48,14 +49,13 @@
}
}
- // 鍒嗗壊绾�-------------------------------------------------------------------------------
this.bindTooltip = (layer) => {
return '<div class="company-bindTooltip-hover"><h3>澶╂触鐭冲寲</h3></div>' + layer.options.totransferData.Name
}
this.clickListener = (e) => {
- // 鐐瑰嚮marker鐨刾ulse()鍏夋尝
this.animalService.pulseEffect(e.latlng)
+ setPanTo(e.latlng, 200)
// 寮规鏍囬
const title = e.layer.options.totransferData.Name
const res = e.layer.options.totransferData
@@ -70,36 +70,6 @@
},
title: '澶╂触鐭冲寲' + title // 鏍囬
})
- this.animalService.setPanTo(e.latlng, 150)
- }
- this.requestWasteWaterData = async (e) => {
- // 鍩烘湰淇℃伅 鍜� 璇︾粏淇℃伅 灞曠ず鏁版嵁鎵�闇�鍙傛暟
- // const dataValue = {
- // StoragePlaceId: e.layer.options.test.StoragePlaceId
- // }
- // 寮规鏍囬
- // const title = e.layer.options.totransferData.Name
- // console.log(e.layer.options)
- // 鍩烘湰淇℃伅 tabs
- // const resultBasic = await mapApi.getWasteWater(dataValue)
- // 鍥捐〃淇℃伅灞曠ず echarts
- // 瀹炴椂鏁版嵁
- // const resultReal = await mapApi.getDataItems(Value)
- // 灏忔椂鏁版嵁 鍙� 鏄庣粏琛ㄦ暟鎹�
- // const result = await mapApi.getQueryOnlineMonData(dataValue)
- // 鏃ユ暟鎹� 鍙� 鏄庣粏琛ㄦ暟鎹�
- // const result = await mapApi.getQueryOnlineMonData(dataValue)
- // 浜哄伐鏁版嵁
- // const resultEchart = await mapApi.getQueryLabMonData(dataValue)
-
- // // 缁戝畾寮规瀹炰緥
- // const PublicBounced = window.Vue.extend(publicBounced)
- // const instance = new PublicBounced().$mount()
- // document.body.appendChild(instance.$el)
- // // document.body.removeChild(instance.$el)
- // // 閫氳繃鏂规硶 鍚戠粦瀹氬脊妗嗕紶閫掓暟鎹�
- // instance.setData(title, resultBasic.Result.DataInfo, resultDetailed.Result.DataInfo, 'gufei')
- /* flyTo()寮瑰嚭妗嗗钩绉讳簨浠� */
}
// 鏍规嵁杩斿洖鍊肩殑涓嶅悓鏍囪涓嶅悓鍥剧墖
diff --git a/src/components/LayerController/service/AnimalService.js b/src/components/LayerController/service/AnimalService.js
index 3de6468..687b6e7 100644
--- a/src/components/LayerController/service/AnimalService.js
+++ b/src/components/LayerController/service/AnimalService.js
@@ -33,19 +33,6 @@
}
}, 1000)
}
-
- /**
- * 璁剧疆寮圭獥骞崇Щ浣嶇疆
- * @param pos
- * @param value
- */
- setPanTo = (pos, value) => {
- var position = pos
- position = this.layer.latLngToLayerPoint(position)
- position.y += value
- position = this.layer.layerPointToLatLng(position)
- this.layer.flyTo(position)
- }
}
export default AnimalService
diff --git a/src/components/LayerController/service/LayerFactory.js b/src/components/LayerController/service/LayerFactory.js
index 8d7c1c6..68d8d64 100644
--- a/src/components/LayerController/service/LayerFactory.js
+++ b/src/components/LayerController/service/LayerFactory.js
@@ -1,5 +1,4 @@
import WfsLayerService from './WfsLayerService'
-import { clone, pulseEffect } from '../../../utils/utils'
import { logicMapper, SERVICE_TYPE } from '../../../conf/Constants'
import WmsLayerService from './WmsLayerService'
@@ -17,16 +16,14 @@
this.layersLogic = {}
this.minZoomLayers = {}
this.wmsLayers = []
- // todo 寰呬紭鍖栵紝wmslayerservice璋冪敤锛屾斁杩欓噷涓嶅悎閫�
- this.clickSwitch = true // 鍥惧眰鐐瑰嚮寮圭獥寮�鍏�
- this.hightlightLayer = options.L.featureGroup({}).addTo(window.map)
+ this.wmsLayerService = null
}
init (layerConfig) {
- this.initConfig(layerConfig)
// wms鏈嶅姟鍙渶瑕佸垵濮嬪寲涓�娆�
- this.wmsLayerService = new WmsLayerService(this.wmsLayers)
+ this.wmsLayerService = new WmsLayerService()
this.wmsLayerService.init()
+ this.initConfig(layerConfig)
}
initConfig (layerConfig) {
@@ -42,8 +39,8 @@
wmsGroupLayerService.init()
continue
} */
- layers && this.init(config.layers)
- childLayer && this.init(config.childLayer)
+ layers && this.initConfig(config.layers)
+ childLayer && this.initConfig(config.childLayer)
this.initMinZoom(config)
this.loadLogic(config)
@@ -77,10 +74,6 @@
logic = new BusiLayer()
} else if (type === SERVICE_TYPE.WFS) {
logic = new WfsLayerService(config)
- } else if (type === SERVICE_TYPE.WMS) {
- var layer = {}
- layer[config.code] = config
- this.wmsLayers.push(layer)
}
}
this.layersLogic[code] = logic
@@ -167,146 +160,6 @@
this.hide(config)
}
}
- }
- }
-
- /**
- *
- * 鏍规嵁浼犵殑 feature瀵硅薄瀹氫綅锛�
- * @param code
- * @param feature
- */
- flyByFeature (feature, code) {
- this.clearHighlight()
- const type = feature.geometry.type
- var point = []
- switch (type) {
- case 'Point':
- point = feature.geometry.coordinates
- break
- case 'MultiLineString':
- var coordinates = feature.geometry.coordinates
- var coordinate = coordinates[parseInt(coordinates.length / 2)][0]
- if (coordinate.length > 2) {
- point = [coordinate[0], coordinate[1]]
- }
- break
- case 'LineString':
- var lineString = feature.geometry.coordinates
- point = lineString[parseInt(lineString.length / 2)][0]
- break
- }
- if (point.length > 2) {
- point.splice(2, 1)
- }
- this.highlight(feature)
- window.map.setView(clone(point).reverse(), 17)
- code && this.openPopup(code, feature.id)
- }
-
- clearHighlight () {
- this.hightlightLayer.clearLayers()
- }
-
- highlight (feature) {
- const type = feature.geometry.type
- if (type === 'MultiLineString') {
- this.L.geoJSON(feature, {
- style: function () {
- return {
- fillColor: 'red',
- color: 'red'
- }
- }
- }).addTo(this.hightlightLayer)
- } else if (type === 'Point') {
- let point = clone(feature.geometry.coordinates)
- if (point.length > 2) {
- point = [point[0], point[1]]
- }
- pulseEffect(point.reverse())
- /* var myIcon = this.L.divIcon({ className: 'my-div-icon' })
- this.L.marker(feature.geometry.coordinates.reverse(), {
- icon: myIcon
- }).addTo(this.hightlightLayer) */
- } else if (type === 'LineString') {
- this.L.polyline(this.reversePolyLine(feature), { color: 'red' }).addTo(this.hightlightLayer)
- }
- }
-
- reverseMultiLine (feature) {
- const coordinates = feature.geometry.coordinates
- var latlng = []
- for (var j = 0; j < coordinates.length; j++) {
- const coordinate = coordinates[j]
- var xy = []
- for (var k = 0; k < coordinate.length; k++) {
- const coor = coordinate[k]
- xy.push(coor.reverse())
- }
- latlng.push(xy)
- }
- return latlng
- }
-
- reversePolyLine (feature) {
- const coordinates = feature.geometry.coordinates
- var latlng = []
- for (var j = 0; j < coordinates.length; j++) {
- const coordinate = coordinates[j]
- latlng.push(coordinate.reverse())
- }
- return latlng
- }
-
- openPopup (layerId, id) {
- const layer = this.layers[layerId]
-
- if (layer) {
- layer.eachLayer(function (layer) {
- const layers = layer.getLayers()
- for (var i = 0; i < layers.length; i++) {
- const lay = layers[i]
- const feature = lay.feature
- lay.closePopup()
- if (feature.id === id) {
- lay.openPopup()
- break
- }
- }
- })
- }
- /* for (var k in this.layers) {
- var layerGroup = this.layers[k]
- layerGroup.eachLayer(function (layer) {
- console.log(layer)
- console.log(layer.getAttribution())
- })
- var layers = layerGroup.getLayers()
- if (layers) {
- for (var m = 0; m < layers.length; m++) {
- var layer = layers[m]
- console.log(layer)
- console.log(layer.getLayerId(val.id))
- /!* var feature = layer.feature
- if (feature.id === layerId) {
- this.map.flyToBounds(bound)
- return layer
- } *!/
- }
- }
- } */
- return null
- }
-
- findLayerById (layer, id) {
- const layers = layer.getLayers
- if (layers) {
- this.findLayerById(layer.getLayers(), id)
- } else {
- layer.eachLayer(function (layer) {
- // console.log(layer)
- })
}
}
}
diff --git a/src/components/LayerController/service/WmsLayerGroupService.js b/src/components/LayerController/service/WmsLayerGroupService.js
index 6f948d5..0955ffe 100644
--- a/src/components/LayerController/service/WmsLayerGroupService.js
+++ b/src/components/LayerController/service/WmsLayerGroupService.js
@@ -22,6 +22,7 @@
this.L.tileLayer.wms(PIPELINE_WMS, {
format: 'image/png', // 杩斿洖鐨勬暟鎹牸寮�
transparent: true,
+ maxZoom: 21,
layers: k // todo
}).addTo(this.layer).bringToFront()
}
diff --git a/src/components/LayerController/service/WmsLayerService.js b/src/components/LayerController/service/WmsLayerService.js
index fbc74bd..df7c090 100644
--- a/src/components/LayerController/service/WmsLayerService.js
+++ b/src/components/LayerController/service/WmsLayerService.js
@@ -1,6 +1,4 @@
-import AjaxUtils from '../../../utils/AjaxUtils'
import { WMS_URL } from '../../../conf/Constants'
-import Popup from '@views/popup/Popup'
import WmsLayerList from '../dataset/WmsLayerList'
/**
@@ -21,6 +19,7 @@
INFO_FORMAT: 'application/json',
TRANSPARENT: true,
FEATURE_COUNT: 50,
+ maxZoom: 21,
SRS: 'EPSG:4326',
EXCEPTIONS: 'application/vnd.ogc.se_inimage'
}
@@ -29,40 +28,34 @@
this.featureGroup = this.L.featureGroup({}).addTo(this.map)
this.wmsLayerList = new WmsLayerList()
- for (var i = 0; i < layersConfig.length; i++) {
- const config = layersConfig[i]
- this.wmsLayerList.addConfig(config)
+ if (layersConfig) {
+ for (var i = 0; i < layersConfig.length; i++) {
+ const config = layersConfig[i]
+ this.wmsLayerList.addConfig(config)
+ }
}
this.load()
}
init () {
- this.clickListener()
}
add (config) {
this.wmsLayerList.addConfig(config)
- const layers = this.wmsLayerList.getLayers()
- const filter = this.wmsLayerList.getFilters()
+ const layers = this.wmsLayerList.getLayers() || ''
+ const filter = this.wmsLayerList.getFilters() || ''
const params = {}
- if (filter) {
- params.cql_filter = filter
- }
- if (layers) {
- params.layers = layers
- }
+ params.cql_filter = filter
+ params.layers = layers
this.wmsLayer.setParams(params)
}
remove (config) {
- console.log(config)
this.wmsLayerList.remove(config.typeName, config.filter)
- const layers = this.wmsLayerList.getLayers()
- const filter = this.wmsLayerList.getFilters()
+ const layers = this.wmsLayerList.getLayers() || ''
+ const filter = this.wmsLayerList.getFilters() || ''
const params = { layers: layers }
- if (filter) {
- params.cql_filter = filter
- }
+ params.cql_filter = filter
this.wmsLayer.setParams(params)
}
@@ -81,130 +74,6 @@
params.cql_filter = filter
}
this.wmsLayer = this.L.tileLayer.wms(WMS_URL, params).addTo(this.map)
- }
-
- clickListener () {
- window.map.on('click', (e) => {
- // console.log(e)
- window.layerFactory.clearHighlight()
- this.featureGroup.clearLayers()
- var point = this.map.latLngToContainerPoint(e.latlng, this.map.getZoom())
- var size = this.map.getSize()
- // const bbox = this.L.latLngBounds(this.L.latLng(e.latlng.lng, e.latlng.lat)).toBBoxString()
- const layers = this.wmsLayerList.getLayers()
- const filter = this.wmsLayerList.getFilters()
- if (layers.length > 0) {
- const params = Object.assign({
- LAYERS: layers,
- QUERY_LAYERS: layers,
- WIDTH: size.x,
- HEIGHT: size.y,
- X: Math.round(point.x),
- Y: Math.round(point.y),
- BBOX: this.map.getBounds().toBBoxString()
- }, this.params)
- if (filter.length > 0) {
- params.cql_filter = filter
- }
- AjaxUtils.get4JsonDataByUrl(WMS_URL, params, (res) => {
- const features = res.data.features
- /**
- * {
- * title: 'New Tab',
- * name: newTabName,
- * content: 'New Tab content'
- * }
- * @type {*[]}
- */
- const popupDatas = []
- if (features) {
- for (var i = 0; i < features.length; i++) {
- const feature = features[i]
- const properties = feature.properties
- this.highlight(feature)
- // const coordinates = feature.geometry.coordinates
- popupDatas.push({
- title: properties.wellname || properties.devicename || properties.name || properties.pipename,
- name: feature.id,
- content: properties
- })
- }
- }
- if (popupDatas.length > 0) {
- var myIcon = this.L.divIcon({ className: 'my-div-icon' })
- this.L.marker(e.latlng, {
- icon: myIcon
- }).addTo(this.featureGroup)/*
- .bindPopup((layer) => {
- this.popupComp.setDatas(popupDatas)
- this.popupComp.setShow()
- return this.popupComp.$el
- }, {
- className: 's-map-popup',
- minWidth: 300,
- closeButton: false,
- autoClose: false
- })
- .openPopup() */
-
- if (window.layerFactory.clickSwitch) {
- window.$layer.open({
- content: {
- content: Popup, // 缁勪欢
- data: { // 浼犻�掔殑鍙傛暟
- datas: popupDatas
- }
- },
- title: '', // 鏍囬
- left: e.originalEvent.clientX,
- top: e.originalEvent.clientY
- })
- }
- // this.popupComp.setDatas(popupDatas)
- // this.popupComp.setShow()
- }
- })
- }
- })
- }
-
- reverseMultiLine (feature) {
- const coordinates = feature.geometry.coordinates
- var latlng = []
- for (var j = 0; j < coordinates.length; j++) {
- const coordinate = coordinates[j]
- var xy = []
- for (var k = 0; k < coordinate.length; k++) {
- const coor = coordinate[k]
- xy.push(coor.reverse())
- }
- latlng.push(xy)
- }
- return latlng
- }
-
- reversePolyLine (feature) {
- const coordinates = feature.geometry.coordinates
- var latlng = []
- for (var j = 0; j < coordinates.length; j++) {
- const coordinate = coordinates[j]
- latlng.push(coordinate.reverse())
- }
- return latlng
- }
-
- highlight (feature) {
- const type = feature.geometry.type
- if (type === 'MultiLineString') {
- this.L.polyline(this.reverseMultiLine(feature), { color: 'red' }).addTo(this.featureGroup)
- } else if (type === 'Point') {
- var myIcon = this.L.divIcon({ className: 'my-div-icon' })
- this.L.marker(feature.geometry.coordinates.reverse(), {
- icon: myIcon
- }).addTo(this.featureGroup)
- } else if (type === 'LineString') {
- this.L.polyline(this.reversePolyLine(feature), { color: 'red' }).addTo(this.featureGroup)
- }
}
}
diff --git a/src/components/helpers/LocateHelper.js b/src/components/helpers/LocateHelper.js
new file mode 100644
index 0000000..4160b89
--- /dev/null
+++ b/src/components/helpers/LocateHelper.js
@@ -0,0 +1,123 @@
+import { pulseEffect, reversePolyLine } from '../../utils/utils'
+import Popup from '@views/popup/Popup'
+import { LAYERPROPS, LAYERS } from '../../conf/Constants'
+/**
+ * 鏍规嵁浼犵殑 feature瀵硅薄瀹氫綅锛�
+ * @param code
+ * @param feature
+ */
+export const fitBounds = function (feature) {
+ const type = feature.geometry.type
+ switch (type) {
+ case 'Point':
+ var point = feature.geometry.coordinates
+ point = [point[1], point[0]]
+ window.map.setView(point, 17)
+ break
+ case 'MultiLineString':
+ window.map.fitBounds(window.L.geoJSON(feature).getBounds())
+ break
+ case 'LineString':
+ window.map.fitBounds(window.L.polyline(reversePolyLine(feature)).getBounds())
+ break
+ }
+}
+
+export const highlight = function (feature, config) {
+ const L = window.L
+ const type = feature.geometry.type
+ window.mapManager.clearHighlight()
+ const highlightLayer = window.mapManager.hightlightLayer
+ if (type === 'MultiLineString') {
+ L.geoJSON(feature, {
+ style: function () {
+ return {
+ fillColor: 'red',
+ color: 'red'
+ }
+ }
+ }).addTo(highlightLayer)
+ } else if (type === 'Point') {
+ // 鍙犲姞涓�涓ぇ灏哄鐨勫浘鏍�
+ let point = feature.geometry.coordinates
+ point = [point[1], point[0]]
+
+ if (config) {
+ L.marker(point, {
+ icon: L.icon({
+ iconUrl: '/assets/images/map/' + config.icon,
+ iconSize: [30, 30],
+ iconAnchor: [15, 15]
+ })
+ }).addTo(highlightLayer)
+ }
+ pulseEffect(point)
+ const features = window.mapManager.loadWfsDatas(point)
+ openPopup(point, features)
+ } else if (type === 'LineString') {
+ L.polyline(reversePolyLine(feature), { color: 'red' }).addTo(highlightLayer)
+ }
+}
+
+export const openPopup = function (xy, features) {
+ const lt = window.map.latLngToContainerPoint(xy)
+ const datas = popupDatas(features)
+ if (datas.length > 0) {
+ window.$layer.open({
+ content: {
+ comp: Popup, // 缁勪欢
+ data: { // 浼犻�掔殑鍙傛暟
+ datas: datas
+ }
+ },
+ title: '', // 鏍囬
+ left: lt.x,
+ top: lt.y
+ })
+ }
+}
+
+const popupDatas = function (features) {
+ const datas = []
+ if (features) {
+ for (var i = 0; i < features.length; i++) {
+ const feature = features[i]
+ const id = feature.id
+ const properties = feature.properties
+ const ids = id.split('.')
+
+ const propValues = LAYERPROPS[ids[0]]
+ const contents = {}
+ for (const k in properties) {
+ if (propValues[k]) {
+ contents[propValues[k]] = properties[k]
+ }
+ }
+ datas.push({
+ title: LAYERS[ids[0]],
+ name: feature.id,
+ content: contents
+ })
+ console.log(properties)
+ }
+ }
+ return datas
+}
+
+export const getLayer = function (layerId, id) {
+ const layer = this.layers[layerId]
+
+ if (layer) {
+ layer.eachLayer(function (layer) {
+ const layers = layer.getLayers()
+ for (var i = 0; i < layers.length; i++) {
+ const lay = layers[i]
+ const feature = lay.feature
+ if (feature.id === id) {
+ return lay
+ }
+ }
+ })
+ }
+ return null
+}
diff --git a/src/components/helpers/MapManager.js b/src/components/helpers/MapManager.js
new file mode 100644
index 0000000..9795d33
--- /dev/null
+++ b/src/components/helpers/MapManager.js
@@ -0,0 +1,59 @@
+import AjaxUtils from '../../utils/AjaxUtils'
+import { WMS_URL } from '../../conf/Constants'
+import { openPopup } from './LocateHelper'
+
+class MapManager {
+ constructor () {
+ this.hightlightLayer = window.L.featureGroup({}).addTo(window.map)
+ this.clickDialogSwitch = true // 鍥惧眰鐐瑰嚮寮圭獥寮�鍏�
+ this.L = window.L
+ this.map = window.map
+ // wms getfeatureinfo 榛樿鍙傛暟
+ this.defaultWmsParams = {
+ VERSION: '1.1.1',
+ SERVICE: 'WMS',
+ REQUEST: 'GetFeatureInfo',
+ // bbox: bbox,
+ FORMAT: 'image/png',
+ INFO_FORMAT: 'application/json',
+ TRANSPARENT: true,
+ FEATURE_COUNT: 50,
+ SRS: 'EPSG:4326',
+ EXCEPTIONS: 'application/vnd.ogc.se_inimage'
+ }
+ }
+
+ mapClickListener () {
+ this.map.on('click', (e) => {
+ // console.log(e)
+ this.clearHighlight()
+ this.loadWfsDatas(e.latlng)
+ })
+ }
+
+ loadWfsDatas (latlng) {
+ const size = this.map.getSize()
+ var point = this.map.latLngToContainerPoint(latlng, this.map.getZoom())
+ const wmsLayerService = window.layerFactory.wmsLayerService
+ const layers = wmsLayerService.wmsLayerList.getLayers()
+ // const filters = wmsLayerService.wmsLayerList.getFilters()
+ const params = Object.assign({
+ LAYERS: layers,
+ QUERY_LAYERS: layers,
+ WIDTH: size.x,
+ HEIGHT: size.y,
+ X: Math.round(point.x),
+ Y: Math.round(point.y),
+ BBOX: this.map.getBounds().toBBoxString()
+ }, this.defaultWmsParams)
+ AjaxUtils.get4JsonDataByUrl(WMS_URL, params, (res) => {
+ openPopup(latlng, res.data.features)
+ })
+ }
+
+ clearHighlight () {
+ this.hightlightLayer.clearLayers()
+ }
+}
+
+export default MapManager
diff --git a/src/components/layer/src/layer.js b/src/components/layer/src/layer.js
index b0581c1..2bf291b 100644
--- a/src/components/layer/src/layer.js
+++ b/src/components/layer/src/layer.js
@@ -23,10 +23,12 @@
console.log(opt)
self.closeAll()
var options = mergeJson(opt, defOptions)
+ console.log('11111' + options)
const id = `notification_${new Date().getTime()}_${seed++}`
options.id = id
options.layer = self
- options.content.content = Vue.extend(options.content.content)
+ options.content.comp = Vue.extend(options.content.comp)
+ console.log(options)
const instance = new LayerVueExtend({
data: options
})
diff --git a/src/components/layer/src/layer.vue b/src/components/layer/src/layer.vue
index 3221a11..7877f0f 100644
--- a/src/components/layer/src/layer.vue
+++ b/src/components/layer/src/layer.vue
@@ -47,10 +47,8 @@
},
init () {
const propsData = helper.deepClone(this.content.data) || {}
- propsData.layerid = this.id
- propsData.lydata = this.content.data
- propsData.lyoption = this.options
- const instance = new this.content.content({
+ console.log(propsData)
+ const instance = new this.content.comp({
// parent: this.content.parent,
propsData: propsData
})
diff --git a/src/components/panel/topicSearch/DischargeSearch.vue b/src/components/panel/topicSearch/DischargeSearch.vue
index f0fd797..f29036a 100644
--- a/src/components/panel/topicSearch/DischargeSearch.vue
+++ b/src/components/panel/topicSearch/DischargeSearch.vue
@@ -170,7 +170,7 @@
methods: {
flyto () {
const pos = [39.90751504898071, 116.38927817344666]
- window.map.flyTo(pos, 15)
+ window.map.setView(pos, 15)
},
// 鍖哄煙绛涢��
areaType (val) {
diff --git a/src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue b/src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue
index 873db6e..fb1eb41 100644
--- a/src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue
+++ b/src/components/panel/topicSearch/EnterpriseEmergency/EventQuery.vue
@@ -26,7 +26,8 @@
</el-form-item>
<el-form-item label="浜嬩欢绫诲瀷锛�">
<el-radio-group v-model="form.transferData" class="levelOfRisk">
- <el-radio v-for="(item,index) in form.levelOfRisk" :label="item.value" :key="index">
+ <el-radio v-for="(item,index) in form.levelOfRisk" :label="item.value" :key="index"
+ @change="redioChange(item.name)">
<span class="levelOfRisk-type">{{ item.name }}</span>
</el-radio>
</el-radio-group>
@@ -38,12 +39,28 @@
</el-form>
</el-form>
<el-scrollbar style="height:286.22px">
- <div class="environmental-risk-list" v-for="(item,index) in list" :key="index"
- :class="activeNum===index?'hover':''">
+ <!-- <div class="environmental-risk-list" v-for="(item,index) in list" :key="index" :class="activeNum===index?'hover':''" @click="accordPopup(item)">-->
+ <!-- <!– <i class="state"></i>–>-->
+ <!-- <img class="state" :src="getImgSrc(item.properties.type)" style="background: none"/>-->
+ <!-- <div>-->
+ <!-- <h3 @click="handleLocation(item,index)">浜嬩欢鍚嶇О:XXX浜嬩欢</h3>-->
+ <!-- <h5>-->
+ <!-- 浜嬩欢浜嬩欢:2021骞�3鏈�21鏃�-->
+ <!-- <el-button class="rt btn00fff6" size="mini" style="margin-right: 0.04rem;">鍒犻櫎</el-button>-->
+ <!-- </h5>-->
+ <!-- <p>-->
+ <!-- 浜嬩欢鐘舵�侊細<span>瀹℃壒闃舵</span>-->
+ <!-- </p>-->
+ <!-- <p>浜嬩欢绫诲瀷锛�<span>{{ item.properties.pipecode }}</span>-->
+ <!-- <el-button class="rt btn00fff6" size="mini" style="margin-right: 0.04rem;">浜嬩欢绠$悊-->
+ <!-- </el-button>-->
+ <!-- </p>-->
+ <!-- </div>-->
+ <!-- </div>-->
+ <div class="environmental-risk-list">
<!-- <i class="state"></i>-->
- <img class="state" :src="getImgSrc()" style="background: none"/>
<div>
- <h3 @click="handleLocation(item,index)">浜嬩欢鍚嶇О:XXX浜嬩欢</h3>
+ <h3>浜嬩欢鍚嶇О:XXX浜嬩欢</h3>
<h5>
浜嬩欢浜嬩欢:2021骞�3鏈�21鏃�
<el-button class="rt btn00fff6" size="mini" style="margin-right: 0.04rem;">鍒犻櫎</el-button>
@@ -51,8 +68,10 @@
<p>
浜嬩欢鐘舵�侊細<span>瀹℃壒闃舵</span>
</p>
- <p>浜嬩欢绫诲瀷锛�<span>{{ item.properties.pipecode }}</span>
- <el-button class="rt btn00fff6" size="mini" style="margin-right: 0.04rem;">浜嬩欢绠$悊
+ <p>浜嬩欢绫诲瀷锛�<span>妯℃嫙绠$嚎浜嬩欢</span>
+ <el-button class="rt btn00fff6" size="mini" style="margin-right: 0.04rem;"
+ @click="accordPopup()">
+ <span>浜嬩欢绠$悊</span>
</el-button>
</p>
</div>
@@ -106,13 +125,34 @@
this.wfsHelper = new WfsHelper()
},
methods: {
+ // 鐐瑰嚮浜嬩欢绠$悊
+ accordPopup () {
+ console.log('item')
+ window.$layer.open({
+ content: {
+ content: ReportPopup, // 缁勪欢
+ parent: this, // 鐖剁粍浠�
+ data: { // 浼犻�掔殑鍙傛暟
+ // storagePlaceId: e.layer.options.totransferData.StoragePlaceId
+ }
+ }
+ // title: 'title' // 鏍囬
+ })
+ },
+ // radio鏁版嵁閫夋嫨
+ redioChange (item) {
+ console.log(item)
+ },
+ // 鏍规嵁鏁版嵁杩斿洖灞曠ず涓嶅悓鐨勫浘鐗�
getImgSrc () {
const icon = this.form.dataType.icon
return icon ? 'assets/images/map/' + icon : ''
},
+ // form 2 琛ㄥ崟鏁版嵁閫夋嫨浜嬩欢
handleDataType () {
this.list = []
},
+ // form 琛ㄥ崟鏁版嵁閫夋嫨
handlePipelineType (val) {
this.list = []
for (let i = 0; i < this.items.length; i++) {
@@ -123,6 +163,7 @@
}
}
},
+ // 鏁版嵁鎼滅储浜嬩欢
async handleSearch () {
this.list = []
this.wfsHelper.clearFilter()
@@ -137,25 +178,13 @@
this.list = res.features
}
},
+ // 鎼滅储鐨勬暟鎹偣鍑讳簨浠�
handleLocation (val, index) {
console.log(val)
this.activeNum = index
// layer && layer.openPopup()
// window.layerFactory.flyByFeature(val, this.form.dataType.code)
window.map.flyTo([val.properties.y, val.properties.x], 15)
- },
- btnAffiliatedFacilities () {
- console.log('item')
- window.$layer.open({
- content: {
- content: ReportPopup, // 缁勪欢
- parent: this, // 鐖剁粍浠�
- data: { // 浼犻�掔殑鍙傛暟
- // storagePlaceId: e.layer.options.totransferData.StoragePlaceId
- }
- }
- // title: 'title' // 鏍囬
- })
}
}
}
diff --git a/src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue b/src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue
index 40bc1b5..3c9a2ee 100644
--- a/src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue
+++ b/src/components/panel/topicSearch/EnterpriseEmergency/ResourcesQuery.vue
@@ -43,8 +43,8 @@
<div class="environmental-risk-list" v-for="(item,index) in list" :key="index"
:class="activeNum===index?'hover':''" @click="handleLocation(item,index)">
<img class="state" :src="getImgSrc(item.properties.type)" style="background: none"/>
- <h3>璧勬簮绫诲瀷:{{item.properties.adminzonename}}</h3>
- <h5>璧勬簮鍚嶇О:{{item.properties.type}}</h5>
+ <h3>{{changeAmount}}绫诲瀷:{{item.properties.type}}</h3>
+ <h5>{{changeAmount}}鍚嶇О:{{item.properties.name}}</h5>
<p>璐熻矗浜�:<span>{{item.properties.resperson}}</span></p>
<p>鐢佃瘽:<span>{{item.properties.telephone}}</span></p>
</div>
@@ -78,7 +78,8 @@
list: [],
items: [LayerEmergencySource, LayerSurroundings],
subItems: LayerEmergencySource.layers || LayerSurroundings.layers,
- WfsHelper: null
+ WfsHelper: null,
+ changeAmount: '璧勬簮'
}
},
mounted () {
@@ -102,8 +103,10 @@
}
if (this.form.pipelineType === '搴旀�ヨ祫婧�') {
this.subItems = LayerEmergencySource.layers
+ this.changeAmount = '璧勬簮'
} else if (this.form.pipelineType === '鍛ㄨ竟鐜') {
this.subItems = LayerSurroundings.layers
+ this.changeAmount = '鐜'
}
},
handleDataType (val) {
@@ -125,6 +128,7 @@
this.wfsHelper.addLike('name', this.form.keyword)
}
const res = await AjaxUtils.GetDataAsynByUrl(this.wfsHelper.getUrl(), {})
+ console.log(res)
if (res instanceof Object && Object.prototype.hasOwnProperty.call(res, 'features')) {
this.list = res.features
}
diff --git a/src/components/panel/topicSearch/SewersSearch.vue b/src/components/panel/topicSearch/SewersSearch.vue
index ad48f87..03c28d5 100644
--- a/src/components/panel/topicSearch/SewersSearch.vue
+++ b/src/components/panel/topicSearch/SewersSearch.vue
@@ -83,6 +83,7 @@
// 寮曞叆缁勪欢鍐呭
import SewersAnalysis from '@components/panel/topicSearch/SewersSelect/SewersAnalysis'
import SewersHistory from '@components/panel/topicSearch/SewersSelect/SewersHistory'
+import { fitBounds, highlight } from '../../helpers/LocateHelper'
export default {
name: 'SewersSearch',
@@ -161,11 +162,12 @@
}
},
handleLocation (val, index) {
- console.log(val)
+ console.log(this.form.dataType)
// console.log(val)
this.activeNum = index
// layer && layer.openPopup()
- window.layerFactory.flyByFeature(val, this.form.dataType.code)
+ fitBounds(val, this.form.dataType.code)
+ highlight(val, this.form.dataType)
},
btnAffiliatedFacilities (val, index) {
this.activeNum = index
@@ -176,7 +178,8 @@
} else {
this.fuShuSheShiShow = false
}
- window.layerFactory.flyByFeature(val, this.form.dataType.code)
+ fitBounds(val, this.form.dataType.code)
+ highlight(val)
}
},
mounted () {
diff --git a/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue b/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue
index 9b9785b..71cc2fb 100644
--- a/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue
+++ b/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue
@@ -439,10 +439,10 @@
this.linkPipeline.push(line)
})
},
- // 杩為�氭�� 鍒嗘瀽缁撴灉table鍒楄〃鏁版嵁閫夋嫨鐐瑰嚮浜嬩欢
+ // 瀹氫綅鏂规硶浜嬩欢
linkResultSelect (e) {
// console.log('杩為�氭�у垎鏋愮粨鏋滃垪琛ㄧ偣鍑�')
- // console.log(e)
+ console.log(e)
const geom = JSON.parse(e.geomText)
if (this.currentSelectResultLine != null) {
this.currentSelectResultLine.remove()
@@ -483,8 +483,8 @@
this.selectPipeLine()
},
async bgSelect (e) {
- console.log('閫夋嫨鐖嗙绠℃')
- console.log(e)
+ // console.log('閫夋嫨鐖嗙绠℃')
+ // console.log(e)
this.bgFm = []
if (this.bgMarker != null) {
this.bgMarker.remove()
@@ -526,12 +526,10 @@
this.bgPoint = res.data[0].startControlPoint
- const point = JSON.parse(this.bgPoint.geomText)
-
- const p = [point.coordinates[1], point.coordinates[0]]
-
+ // const point = JSON.parse(this.bgPoint.geomText)
+ // const p = [point.coordinates[1], point.coordinates[0]]
// this.bgMarker = this.createFlowMarker(p)
- this.bgMarker = pulseEffect(p)
+ // this.bgMarker = pulseEffect(p)
// this.bgMarker.bindTooltip(this.bgPoint.pointnumbe)
// this.bgMarker.addTo(window.map)
// window.map.flyTo(p)
@@ -561,11 +559,11 @@
},
bgFmClick (e) {
// console.log('鐐瑰嚮褰卞搷鐨勯榾闂�')
- console.log(e)
+ // console.log(e)
// const point = [e.data[0][0], e.data[0][1]]
const point = [e.startControlPoint.y, e.startControlPoint.x]
- // const marker = this.createFlowMarker(point)
pulseEffect(point)
+ // const marker = this.createFlowMarker(point)
// marker.addTo(window.map)
// window.map.flyTo(point, 17)
},
diff --git a/src/components/panel/topicSearch/SolidWasteSearch.vue b/src/components/panel/topicSearch/SolidWasteSearch.vue
index e536771..cc8a508 100644
--- a/src/components/panel/topicSearch/SolidWasteSearch.vue
+++ b/src/components/panel/topicSearch/SolidWasteSearch.vue
@@ -30,7 +30,6 @@
<el-scrollbar style="height:286.22px">
<div class="environmental-risk-list" v-for="(item,index) in searchDataDisplay" :key="index"
@click="setBounced(item)">
- <!-- <i class="state"></i>-->
<img src="../../../../public/assets/images/map/solidwaste/gf_green2.png" alt="" class="state">
<div>
<h3>###鐐煎寲閮�</h3>
@@ -159,7 +158,7 @@
},
// 鏁版嵁灞曠ず,鐐瑰嚮杩涜寮规鍙婄偣鐨勫睍绀�
setBounced (val) {
- // console.log(val)
+ console.log(val)
const pos = [val.Latitude, val.Longitude]
window.map.setView(pos, 15)
window.$layer.open({
@@ -173,7 +172,7 @@
title: val.Name
})
pulseEffect([val.Latitude, val.Longitude])
- setPanTo(pos, 250)
+ setPanTo(pos, 200)
}
}
}
diff --git a/src/conf/Constants.js b/src/conf/Constants.js
index 3bab997..0935f69 100644
--- a/src/conf/Constants.js
+++ b/src/conf/Constants.js
@@ -35,35 +35,179 @@
ICON_SIZE: [10, 10]
}
-export const props = {
- code: '缂栧彿',
- name: '鍚嶇О',
- teamname: '鍚嶇О',
- pfktype: '鎺掓斁鍙g被鍨�',
- level: '绾у埆',
- length: '闀垮害(m)',
- unitname: '鍗曚綅鍚嶇О',
- pipename: '绠$嚎鍚嶇О',
- subchaname: '鏀嚎鍚嶇О',
- subchacode: '鏀嚎缂栫爜',
- mediumtype: '杈撻�佷粙璐�',
- startposname: '璧风偣浣嶇疆鍚嶇О',
- endposname: '缁堢偣浣嶇疆鍚嶇О',
- pressureating: '璁捐鍘嬪姏锛圡Pa锛�',
- designtranyear: '璁捐杈撻噺锛堜竾绔�/骞达級',
- earningcapacity: '瀹為檯杈撻噺锛堜竾绔�/骞达級',
- buriedtime: '鍩嬭鏃堕棿',
- coatingmaterial: '闃茶厫鐘跺喌',
- inservicetime: '鎶曚骇鏃堕棿',
- reportname: '濉姤浜哄鍚�',
- reportphone: '濉姤浜鸿仈绯绘柟寮�',
- diameter: '绠″緞(mm)',
- meterial: '鏉愯川',
- pressuerating: '绠¢亾鍘嬪姏(Mpa)',
- embeddingmode: '鍩嬭鏂瑰紡',
- pipetrenchtype: '绠℃矡绫诲瀷',
- datecollected: '鎺㈡祴鏃堕棿',
- operationalstatus: '杩愯鐘舵��',
- fourtype: '鍥涢�氱被鍨�',
- fourm: '鍥涢�氭潗鏂�'
+export const LAYERS = {
+ pipenetwork: '绠$綉',
+ pipeline: '绠$嚎',
+ manhole: '绐ㄤ簳',
+ valve: '闃�闂�',
+ pipegallery: '绠″粖锛堝甫锛�',
+ piperack: '绠℃灦锛堝ⅸ锛�',
+ tee: '涓夐��',
+ fourlink: '鍥涢��',
+ elbow: '寮ご',
+ raingate: '闆ㄧ瀛�',
+ firedike: '闃茬伀鍫�',
+ collectingbasin: '闆嗘按姹狅紙缃愶級',
+ dischargeport: '鎺掓斁鍙�',
+ overflowweir: '婧㈡祦鍫�',
+ oilseparator: '闅旀补姹�',
+ pointhydrology: '姘翠綋',
+ pointpreservationzone: '鑷劧淇濇姢鍖�',
+ hospital: '鍖婚櫌',
+ emergencyres: '绀句細涓撲笟搴旀�ユ晳鎻撮槦浼�',
+ emergencyesources: '搴旀�ョ墿璧�',
+ firefightingunit: '娑堥槻鍗曚綅'
+}
+
+export const LAYERPROPS = {
+ // 绠$綉
+ pipenetwork: {
+ // 绠$綉
+ name: '鍚嶇О',
+ LINENUMTYPE: '绠$嚎绫诲瀷',
+ PIPENAME: '绠$嚎鍚嶇О',
+ MEDIUMTYPE: '杈撻�佷粙璐�',
+ LENGTH: '闀垮害(m)',
+ STARTPOSNAME: '璧风偣浣嶇疆鍚嶇О',
+ ENDPOSNAME: '缁堢偣浣嶇疆鍚嶇О',
+ BURIEDTIME: '鍩嬭鏃堕棿',
+ COATINGMATERIAL: '闃茶厫鐘跺喌',
+ INSERVICETIME: '鎶曚骇鏃堕棿',
+ UNITNAME: '鎵�灞炲崟浣嶅悕绉�',
+ ORGNAME: '鎵�灞炰紒涓氬悕绉�',
+ OPERATIONALSTATUS: '杩愯鐘舵��'
+ },
+ // 绠$嚎
+ pipeline: {
+ // 绠$綉
+ name: '鍚嶇О',
+ linenumtype: '绠$嚎绫诲瀷',
+ pipename: '绠$嚎鍚嶇О',
+ mediumtype: '杈撻�佷粙璐�',
+ length: '闀垮害(m)',
+ startposname: '璧风偣浣嶇疆鍚嶇О',
+ endposname: '缁堢偣浣嶇疆鍚嶇О',
+ buriedtime: '鍩嬭鏃堕棿',
+ coatingmaterial: '闃茶厫鐘跺喌',
+ inservicetime: '鎶曚骇鏃堕棿',
+ unitname: '鎵�灞炲崟浣嶅悕绉�',
+ orgname: '鎵�灞炰紒涓氬悕绉�',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 绐ㄤ簳
+ manhole: {
+ type: '绫诲瀷',
+ wellmaterial: '浜曠洊鏉愯川',
+ havesafetynet: '鏄惁鏈夊畨鍏ㄧ綉',
+ datasource: '鏁版嵁鏉ユ簮',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 闃�闂�
+ valve: {
+ valvetype: '闃�闂ㄧ被鍨�',
+ executagencyf: '鎵ц鏈烘瀯褰㈠紡',
+ datasource: '鏁版嵁鏉ユ簮',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 绠″粖锛堝甫锛�
+ pipegallery: {
+ datasource: '鏁版嵁鏉ユ簮',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 绠℃灦锛堝ⅸ锛�
+ piperack: {
+ piperacktype: '绫诲瀷',
+ piperackst: '绠℃灦(澧╋級缁撴瀯绫诲瀷',
+ longitudinalpiperack: '鏄惁鏈夌旱鍚戞灦',
+ datasource: '鏁版嵁鏉ユ簮',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 涓夐��
+ tee: {
+ teetype: '涓夐�氱被鍨�',
+ exportconnectm: '鍑哄彛杩炴帴鏂瑰紡',
+ entrycontype: '鍏ュ彛杩炴帴鏂瑰紡',
+ teem: '涓夐�氭潗鏂�',
+ branchconntype: '鏀杩炴帴绫诲瀷',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 鍥涢��
+ fourlink: {
+ fourtype: '鍥涢�氱被鍨�',
+ exportcontype: '鍑哄彛杩炴帴鏂瑰紡',
+ entrycontype: '鍏ュ彛杩炴帴鏂瑰紡',
+ fourm: '鍥涢�氭潗鏂�',
+ branchconntype1: '鏀嚎1杩炴帴鏂瑰紡',
+ branchconntype2: '鏀嚎2杩炴帴鏂瑰紡',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 寮ご
+ elbow: {
+ elbowtype: '寮ご绫诲瀷',
+ elbowmaterial: '寮ご鏉愭枡',
+ anticorros: '闃茶厫鏉愭枡',
+ entryconntype: '鍏ュ彛杩炴帴鏂瑰紡',
+ outletconntype: '鍑哄彛杩炴帴鏂瑰紡',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 闆ㄧ瀛�
+ raingate: {
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 闃茬伀鍫�
+ firedike: {
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 闆嗘按姹狅紙缃愶級
+ collectingbasin: {
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 鎺掓斁鍙�
+ dischargeport: {
+ mediumtype: '浠嬭川',
+ pfktype: '鎺掓斁鍙g被鍨�',
+ level: '绾у埆',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 鎴祦闂�
+
+ // 婧㈡祦鍫�
+ overflowweir: {
+ mediumtype: '闃叉孩浠嬭川',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 闅旀补姹�
+ oilseparator: {
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 姘翠綋
+ pointhydrology: {
+ hydrotype: '姘寸郴绫诲瀷',
+ drinkingresourceind: '鏄惁鏄ギ鐢ㄦ按婧�',
+ seasonalriverind: '鏄惁鏄鑺傛�ф渤娴�',
+ reservoirlocation: '姘村簱浣嶇疆',
+ operationalstatus: '杩愯鐘舵��'
+ },
+ // 鑷劧淇濇姢鍖�
+ pointpreservationzone: {
+ datasource: '鏁版嵁鏉ユ簮'
+ },
+ // 鍖婚櫌
+ hospital: {
+ hospitalleaval: '鍖婚櫌璧勮川绛夌骇',
+ subtypecd: '鍖婚櫌绫诲瀷',
+ datasource: '鏁版嵁鏉ユ簮'
+ },
+ // 绀句細涓撲笟搴旀�ユ晳鎻撮槦浼�
+ emergencyres: {
+ datasource: '鏁版嵁鏉ユ簮'
+ },
+ // 搴旀�ョ墿璧�
+ emergencyesources: {
+ datasource: '鏁版嵁鏉ユ簮'
+ },
+ // 娑堥槻鍗曚綅
+ firefightingunit: {
+ datasource: '鏁版嵁鏉ユ簮'
+ }
}
diff --git a/src/conf/MapConfig.js b/src/conf/MapConfig.js
index ec1f64e..4cae2f1 100644
--- a/src/conf/MapConfig.js
+++ b/src/conf/MapConfig.js
@@ -23,7 +23,6 @@
crs: L.CRS.EPSG4326,
minZoom: 3,
maxZoom: 21,
- // center: [26, 104],
center: [34.828558921813965, 117.41676807403564],
zoom: 5,
// center: [39.907214641571045, 116.39019012451172],
diff --git a/src/conf/layers/LayerArea.js b/src/conf/layers/LayerArea.js
index 5a2106c..c4d82db 100644
--- a/src/conf/layers/LayerArea.js
+++ b/src/conf/layers/LayerArea.js
@@ -13,6 +13,7 @@
sname: '鍏徃', // 琛ㄥ悕
checked: true, // 榛樿閫変腑鐘舵��
type: 0,
+ icon: 'sewers/鍏徃.png',
legendImage: '../.././assets/images/map/company_refining.png'
},
{
@@ -21,6 +22,7 @@
sname: '鐮佸ご',
checked: false, // 榛樿閫変腑鐘舵��
type: 0,
+ icon: 'sewers/鐮佸ご.png',
legendImage: '../.././assets/images/map/sewers/鐮佸ご.png'
},
{
@@ -28,6 +30,7 @@
name: '瑁呯疆鍖�',
sname: '瑁呯疆鍖�',
checked: false, // 榛樿閫変腑鐘舵��
+ icon: 'sewers/瑁呯疆鍖�.png',
typeName: 'sewer:unitareaboundary'
}
]
diff --git a/src/conf/layers/LayerFsss.js b/src/conf/layers/LayerFsss.js
index b0e4350..9ab0a79 100644
--- a/src/conf/layers/LayerFsss.js
+++ b/src/conf/layers/LayerFsss.js
@@ -47,6 +47,7 @@
minZoom: 16,
type: SERVICE_TYPE.WMS,
typeName: 'sewer:piperack',
+ icon: 'sewers/绠℃灦.png',
checked: false
},
{
@@ -56,6 +57,7 @@
minZoom: 16,
type: SERVICE_TYPE.WMS,
typeName: 'sewer:pipegallery',
+ icon: 'sewers/绠″粖.png',
checked: false
},
{
@@ -63,6 +65,7 @@
name: '娴佸悜',
sname: 'ywslx',
type: SERVICE_TYPE.WMS,
+ icon: 'sewers/娴佸悜.png',
checked: false
},
{
diff --git a/src/conf/layers/LayerHbss.js b/src/conf/layers/LayerHbss.js
index 7727670..54f61f7 100644
--- a/src/conf/layers/LayerHbss.js
+++ b/src/conf/layers/LayerHbss.js
@@ -35,6 +35,7 @@
minZoom: 16,
type: SERVICE_TYPE.WMS,
typeName: 'sewer:firedike',
+ icon: 'sewers/闃茬伀鍫�.png',
checked: false
},
{
@@ -53,6 +54,7 @@
sname: '鎴祦闂�',
type: SERVICE_TYPE.WMS,
typeName: 'sewer:collectingbasin',
+ icon: 'sewers/鎴祦闂�.png',
checked: false
},
{
@@ -62,6 +64,7 @@
minZoom: 16,
type: SERVICE_TYPE.WMS,
typeName: 'ewer:overflowweir',
+ icon: 'sewers/婧㈡祦鍫�.png',
checked: false
},
{
diff --git a/src/conf/layers/LayerPipeLines.js b/src/conf/layers/LayerPipeLines.js
index bbccde9..476db82 100644
--- a/src/conf/layers/LayerPipeLines.js
+++ b/src/conf/layers/LayerPipeLines.js
@@ -17,7 +17,7 @@
code: 'rainline',
name: '闆ㄦ按绾�',
sname: '绠$綉',
- checked: false,
+ checked: true,
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
@@ -40,6 +40,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/浜嬫晠姘�.png',
minZoom: 13,
filter: 'mediumtype = \'浜嬫晠姘碶'',
index: 1
@@ -52,6 +53,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/鍚补姹℃按.png',
minZoom: 13,
color: '#ffaa00',
filter: 'mediumtype = \'鍚补姹℃按\'',
@@ -69,6 +71,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/鍚洂姹℃按.png',
minZoom: 13,
filter: 'mediumtype = \'鍚洂姹℃按\'',
index: 1
@@ -81,6 +84,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/鍚⒈姹℃按.png',
filter: 'mediumtype = \'鍚⒈姹℃按\'',
minZoom: 10,
index: 1
@@ -93,6 +97,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/鍚~姹℃按.png',
filter: 'mediumtype = \'鍚~姹℃按\'',
minZoom: 10,
index: 1
@@ -105,6 +110,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/鐢熸椿姹℃按.png',
filter: 'mediumtype = \'鐢熸椿姹℃按\'',
minZoom: 13,
index: 1
@@ -117,6 +123,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/鍑�鍖栨按.png',
filter: 'mediumtype = \'鍑�鍖栨按\'',
minZoom: 13,
index: 1
@@ -128,6 +135,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/寰幆姘�.png',
filter: 'mediumtype = \'寰幆姘碶'',
checked: false,
minZoom: 13,
@@ -141,6 +149,7 @@
type: SERVICE_TYPE.WMS,
layerGroup: 'sewer:pipeline_group',
typeName: 'sewer:pipeline',
+ icon: 'sewers/鐢熶骇姹℃按.png',
filter: 'mediumtype = \'鐢熶骇姹℃按\'',
minZoom: 13,
color: '#a8a800',
diff --git a/src/utils/utils.js b/src/utils/utils.js
index 2328fd0..304c202 100644
--- a/src/utils/utils.js
+++ b/src/utils/utils.js
@@ -27,15 +27,15 @@
* 鑴夊啿鏁堟灉
*/
export function pulseEffect (xy) {
- let times = 5
- const colors = ['#98FB98', '#ff0000']
+ let times = 50
+ const colors = ['#00f100', '#ff0000']
// 鎻掍欢 鏁堟灉瀹炵幇
var pulsingIcon = window.L.icon.pulse({
- iconSize: [20, 20],
+ iconSize: [30, 30],
color: colors[0],
fillColor: ''
})
- var picGroupMarker = window.L.marker(xy, { icon: pulsingIcon }).addTo(window.map)
+ var picGroupMarker = window.L.marker(xy, { icon: pulsingIcon }).addTo(window.mapManager.hightlightLayer)
// 瀹氭椂
var timeInterval = setInterval(() => {
if (times > 0) {
@@ -47,6 +47,31 @@
}, 1000)
}
+export function reversePolyLine (feature) {
+ const coordinates = feature.geometry.coordinates
+ var latlng = []
+ for (var j = 0; j < coordinates.length; j++) {
+ const coordinate = coordinates[j]
+ latlng.push(coordinate.reverse())
+ }
+ return latlng
+}
+
+export function reverseMultiLine (feature) {
+ const coordinates = feature.geometry.coordinates
+ var latlng = []
+ for (var j = 0; j < coordinates.length; j++) {
+ const coordinate = coordinates[j]
+ var xy = []
+ for (var k = 0; k < coordinate.length; k++) {
+ const coor = coordinate[k]
+ xy.push(coor.reverse())
+ }
+ latlng.push(xy)
+ }
+ return latlng
+}
+
/**
* 璁剧疆寮圭獥骞崇Щ浣嶇疆
* @param pos
diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue
index ad0d425..e568cfc 100644
--- a/src/views/MapTemplate.vue
+++ b/src/views/MapTemplate.vue
@@ -38,9 +38,9 @@
// // 鍏叡灞曠ず鏁版嵁
// import PublicBounced from '@components/BaseNav/PublicBounced/PublicBounced'
import LayerFactory from '@components/LayerController/service/LayerFactory'
-import EventHandler from '../components/LayerController/event/EventHandler'
// import ReportPopup from '../components/panel/topicSearch/SewersSelect/EnterpriseEmergency/ReportPopup'
import Emergency from '@components/emergency/index'
+import MapManager from '../components/helpers/MapManager'
export default {
name: 'MapTemplate',
@@ -102,10 +102,6 @@
// this.AddGasHelper()
// this.ChangeWaterState()
-
- var eventHandler = new EventHandler()
- window.eventHandler = eventHandler
-
var layerFactory = new LayerFactory({
L: window.L,
map: this.map
@@ -113,6 +109,8 @@
layerFactory.init(this.$store.state.map.serviceLayers.LayerSewersLine)
layerFactory.initEvent(this.$store.state.map.serviceLayers.LayerSewersLine)
window.layerFactory = layerFactory
+ window.mapManager = new MapManager()
+ window.mapManager.mapClickListener()
this.saveMapStatus()
// this.setMapObj(this.mapObj)
// this.setBasemapHelper(this.basemapHelper)
diff --git a/src/views/popup/Popup.vue b/src/views/popup/Popup.vue
index a3c7836..98ba35b 100644
--- a/src/views/popup/Popup.vue
+++ b/src/views/popup/Popup.vue
@@ -1,15 +1,15 @@
<template>
<div id="popup" class="s-map-popup-panel" style="min-width: 280px;max-width: 280px;padding: 0 10px">
- <el-tabs value="0" type="card">
+ <el-tabs type="card" :value="0">
<el-tab-pane
- :key="item.name"
+ :key="index"
v-for="(item,index) in datas"
:label="item.title"
- :name="index"
+ :name="index.toString()"
>
- <el-row v-for="(v,k) in filter(item.content)" :key="k">
- <el-col :span="12"><B>{{k}}锛�</B></el-col>
- <el-col :span="12">{{v}}</el-col>
+ <el-row v-for="(item,key) in item.content" :key="key">
+ <el-col :span="12"><B>{{key}}锛�</B></el-col>
+ <el-col :span="12">{{item}}</el-col>
</el-row>
</el-tab-pane>
</el-tabs>
@@ -18,7 +18,6 @@
<script>
// import '@/assets/css/map/map-popup.scss'
-import { props } from '../../conf/Constants'
export default {
name: 'Popup',
@@ -28,8 +27,7 @@
tabsValue: '',
tabIndex: 2,
isShow: false,
- properties: {},
- props: props
+ properties: {}
}
},
computed: {
@@ -45,11 +43,6 @@
// console.log(obj)
return obj
},
- setDatas (layer) {
- console.log(layer)
- this.datas = layer
- this.tabsValue = layer[0].name
- },
setShow () {
// this.style.display='auto'
this.isShow = true
@@ -61,7 +54,6 @@
},
watch: {
datas (newVal) {
- console.log(newVal)
if (newVal != null) {
this.tabsValue = newVal[0].name
}
--
Gitblit v1.8.0