From 6cdcf30b52502fa2b7db21064c40b7193bf7e25f Mon Sep 17 00:00:00 2001
From: YANGDL <114714267@qq.com>
Date: 星期四, 25 二月 2021 10:55:32 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/conf/Constants.js | 5
src/components/LayerController/modules/LcServiceLayerFilter.vue | 37 -
src/conf/MapConfig.js | 6
src/conf/Layers.js | 296 -------------------
src/conf/Styles.js | 24 +
src/views/MapTemplate.vue | 10
src/conf/LayerSewers.js | 321 +++++++++++++++++++-
src/components/helpers/BasemapHelper.js | 20
src/components/helpers/ServiceLayerHelper.js | 151 +++++++--
src/components/LayerController/modules/LcServiceLayer.vue | 8
src/store/modules/map.js | 5
11 files changed, 480 insertions(+), 403 deletions(-)
diff --git a/src/components/LayerController/modules/LcServiceLayer.vue b/src/components/LayerController/modules/LcServiceLayer.vue
index cb9a7e8..09ec4c4 100644
--- a/src/components/LayerController/modules/LcServiceLayer.vue
+++ b/src/components/LayerController/modules/LcServiceLayer.vue
@@ -1,7 +1,7 @@
<template>
<div class="inner-panel">
<div class="wms-panel">
- <div v-for="item in mapConfig.ServiceLayers" :key="item.code" class="layerbox">
+ <div v-for="item in serviceLayers" :key="item.code" class="layerbox">
<div><input type="checkbox" :name="'wmsLayer_'+item.code" :checked="item.checked" :value="item.code"
@change="swAllLayers(item)"/>{{ item.name }} <span @click="swFilter(item)"
class="btn-filter">杩囨护</span>
@@ -11,7 +11,7 @@
:name="'wmsSublayers_'+item.code+'_'+itm.code"
:checked="itm.checked"
:value="itm.code"
- @change="swWmsLayer(itm)"/>{{ itm.sname }}
+ @change="swWmsLayer(itm)"/>{{ itm.name }}
</div>
</div>
</div>
@@ -34,8 +34,8 @@
}
},
computed: {
- mapConfig () {
- return this.$store.state.map.mapConfig.mapConfig
+ serviceLayers () {
+ return this.$store.state.map.serviceLayers.LayerSewersLine
}
},
mounted () {
diff --git a/src/components/LayerController/modules/LcServiceLayerFilter.vue b/src/components/LayerController/modules/LcServiceLayerFilter.vue
index cd5fb45..d9bad44 100644
--- a/src/components/LayerController/modules/LcServiceLayerFilter.vue
+++ b/src/components/LayerController/modules/LcServiceLayerFilter.vue
@@ -7,8 +7,8 @@
</div>
<div class="content">
<div v-for="filter in item.filters" :key="filter.code">
- <input type="checkbox" :value="filter.code" :checked="filter.checked"><label
- :title="filter.name">{{filter.sname}}</label>
+ <input type="checkbox" :value="filter.code" :checked="filter.checked" @change="swSubFilter(filter)"><label
+ :title="filter.name">{{filter.name}}</label>
</div>
</div>
</div>
@@ -18,7 +18,6 @@
<script>
import { mapMutations } from 'vuex'
-import WmsHelper from '../../helpers/WmsHelper'
export default {
name: 'LcServiceLayerFilter',
@@ -30,14 +29,14 @@
}
},
computed: {
- mapConfig () {
- return this.$store.state.map.mapConfig.mapConfig
+ config () {
+ return this.$store.state.map.config
},
pointLayers () {
// 鏍规嵁绾垮浘灞傞�変腑鎯呭喌锛屾樉绀烘垨闅愯棌鐐瑰浘灞傞潰鏉�
- var config = this.mapConfig
- var checkedLayers = window.serviceLayerHelper.getCheckedLayers(config)
- var pointLayers = config.PointLayers
+ var serviceLayers = this.config.mapConfig.Layers.LayerSewersLine // 涓�绾у浘灞�
+ var checkedLayers = window.serviceLayerHelper.getCheckedLayers(serviceLayers)
+ var pointLayers = this.config.mapConfig.Layers.layerSewersPoint // 浜岀骇鍥惧眰
return pointLayers.filter(function (layer) {
var code = layer.code
for (var i = 0; i < checkedLayers.length; i++) {
@@ -56,21 +55,13 @@
...mapMutations([]),
swAllSubFilter (item) {
item.checked = !item.checked
- for (let i = 0, len = item.filters.length; i < len; ++i) {
- item.filters[i].checked = item.checked
- }
- var mapConfig = this.mapConfig
- var wmsHelper = new WmsHelper()
- wmsHelper.initMapConfig(mapConfig)
- var wmsLayersMap = wmsHelper.getWmsLayersMap()
- for (var k in wmsLayersMap) {
- var layers = wmsLayersMap[k]
- var tileLayer = this.serviceLayerHelper.getTileLayer(k)
- if (tileLayer) {
- tileLayer.setParams({ layers: layers.join(',') }, true)
- tileLayer.setUrl(tileLayer.config.url, false)
- }
- }
+ console.log(item)
+ // window.serviceLayerHelper.loadLayers()
+ },
+ swSubFilter (item) {
+ item.checked = !item.checked
+ console.log(item)
+ // window.serviceLayerHelper.loadLayers()
}
}
}
diff --git a/src/components/helpers/BasemapHelper.js b/src/components/helpers/BasemapHelper.js
index a430df0..9b29e4e 100644
--- a/src/components/helpers/BasemapHelper.js
+++ b/src/components/helpers/BasemapHelper.js
@@ -18,11 +18,11 @@
* @param map
* @param defBasemapName 鍒濆鍖栧畬鎴愬悗锛岄粯璁ゆ樉绀虹殑鍥惧眰
*/
- initBasemap = (mapConfig, isIntranet) => {
+ initBasemap = (config, isIntranet) => {
if (isIntranet) { // 鍐呯綉
- this._getToken(mapConfig) // 鑾峰彇token鍚庯紝骞舵寜閰嶇疆鍔犺浇鍦板浘
+ this._getToken(config) // 鑾峰彇token鍚庯紝骞舵寜閰嶇疆鍔犺浇鍦板浘
} else { // 澶栫綉
- this._createBasemapByConfig(mapConfig)
+ this._createBasemapByConfig(config)
}
return this.basemapMap
@@ -72,8 +72,8 @@
}
// 鍏綉鍒涘缓鍦板浘閮ㄥ垎
- _createBasemapByConfig (mapConfig) {
- const internetBasemaps = mapConfig.mapConfig.InternetBaseMaps
+ _createBasemapByConfig (config) {
+ const internetBasemaps = config.mapConfig.InternetBaseMaps
for (let i = 0, len = internetBasemaps.length; i < len; ++i) {
const basemapConfig = internetBasemaps[i]
const basemapLayer = this.L.tileLayer(basemapConfig.map.url, basemapConfig.map.option)
@@ -98,16 +98,16 @@
// 鍐呯綉鍦板浘鍒涘缓閮ㄥ垎
// 鑾峰彇鍐呯綉鍦板浘token锛屽苟鍔犺浇鍒板湴鍥句腑
- _getToken = (mapConfig) => {
- const params = mapConfig.TokenConfig
+ _getToken = (config) => {
+ const params = config.TokenConfig
AjaxUtils.GetDataAsynByUrl(params.url, params.option, (token) => {
- this._showTDT(token, mapConfig)
+ this._showTDT(token, config)
})
}
// 鍐呯綉鍦板浘鍔犺浇锛屽苟鍔犺浇鍒板湴鍥�
- _showTDT = (token, mapConfig) => {
- const intranetBasemaps = mapConfig.mapConfig.IntranetBaseMaps
+ _showTDT = (token, config) => {
+ const intranetBasemaps = config.mapConfig.IntranetBaseMaps
for (let i = 0, len = intranetBasemaps.length; i < len; ++i) {
const basemapConfig = intranetBasemaps[i]
const basemapLayer = this.L.tileLayer(basemapConfig.map.url, basemapConfig.map.option)
diff --git a/src/components/helpers/ServiceLayerHelper.js b/src/components/helpers/ServiceLayerHelper.js
index 2ff5042..cbfdedd 100644
--- a/src/components/helpers/ServiceLayerHelper.js
+++ b/src/components/helpers/ServiceLayerHelper.js
@@ -2,6 +2,8 @@
/**
* 鍒涘缓鍥惧眰鐩稿叧鐨勭被
*/
+import AjaxUtils from '@/utils/AjaxUtils'
+import { GEOM_TYPE } from '../../conf/Constants'
class ServiceLayerHelper {
constructor (options) {
@@ -12,7 +14,9 @@
this.tileLayersWMTSArray = [] // 鍒濆鐨刉MTS闆�
this.tileLayersTileArray = [] // 鍒濆鐨凾ile闆�
this.tileLayersWMSArray = [] // 鍒濆鐨刉MS闆�
- this.mapConfig = {}
+ this.geojsonArray = [] // 鍒濆鐨刧eojson闆�
+ this.layerConfig = {}
+ this.regex = /\{(.+?)\}/g // 鍖归厤{}
}
getTileLayer (code) {
@@ -22,9 +26,9 @@
/**
* 鏍规嵁閰嶇疆鏂囦欢鍒濆鍖栦笟鍔″簳鍥�
*/
- initServiceLayers (mapConfig) {
- this.mapConfig = mapConfig
- this._loadLayers(mapConfig)
+ initServiceLayers (layerConfig) {
+ this.layerConfig = layerConfig
+ this.loadLayers(layerConfig.mapConfig.Layers.LayerSewersLine)
}
/**
@@ -32,30 +36,104 @@
* @param {*} mapConfig
* @param {*} isAddToMap
*/
- _loadLayers (mapConfig, isAddToMap = true) {
- console.debug('ServiceLayerHelper鍔犺浇鍙傛暟锛�', mapConfig)
- for (let i = 0, len = mapConfig.mapConfig.ServiceLayers.length; i < len; ++i) {
- const opt = mapConfig.mapConfig.ServiceLayers[i]
- this.setArray(opt)
- if (opt.type === 'wmts') {
- opt.checked && this.loadWmtsLayer(opt, isAddToMap, mapConfig.mapConfig.ServiceLayers[i])
- } else if (opt.type === 'wms') {
- opt.checked && this.loadWmsLayer(opt, isAddToMap, mapConfig.mapConfig.ServiceLayers[i])
- } else if (opt.type === 'tile') {
- opt.checked && this.loadTileLayer(opt, isAddToMap, mapConfig.mapConfig.ServiceLayers[i])
+ loadLayers (layerConfig, isAddToMap = true) {
+ console.debug('ServiceLayerHelper鍔犺浇鍙傛暟锛�', layerConfig)
+ for (let i = 0, len = layerConfig.length; i < len; ++i) {
+ const opt = layerConfig[i]
+ if (opt.checked) {
+ if (opt.type === 'wmts') {
+ this.loadWmtsLayer(opt, isAddToMap)
+ this.tileLayersWMTSArray.push(opt)
+ } else if (opt.type === 'wms') {
+ this.loadWmsLayer(opt, isAddToMap)
+ this.tileLayersWMSArray.push(opt)
+ } else if (opt.type === 'tile') {
+ this.loadTileLayer(opt, isAddToMap)
+ this.tileLayersTileArray.push(opt)
+ } else if (opt.type === 'geojson') {
+ this.loadGeojson(opt)
+ }
}
}
}
- setArray (opt) {
- var type = opt.type
- if (type === 'wmts') {
- this.tileLayersWMTSArray.push(opt)
- } else if (type === 'wms') {
- this.tileLayersWMSArray.push(opt)
- } else if (type === 'tile') {
- this.tileLayersTileArray.push(opt)
+ loadGeojson (options) {
+ var url = options.url
+ var layers = options.layers
+ var matches = this.regex.exec(url)
+ for (var i = 0; i < layers.length; i++) {
+ var layer = layers[i]
+ var matchValue = layer[matches[1]]
+ var checked = layer.checked
+ var geomtype = layer.geomtype
+ if (!checked) {
+ continue
+ }
+ var newUrl = url.replace(this.regex, matchValue)
+ var that = this
+ AjaxUtils.GetDataAsynByUrl(newUrl, {}, function (res) {
+ switch (geomtype) {
+ case GEOM_TYPE.POINT :
+ that.loadPointGeojson(res)
+ break
+ case GEOM_TYPE.LINE :
+ that.loadLineGeojson(res)
+ break
+ case GEOM_TYPE.POLYGON :
+ break
+ default:
+ that.loadLineGeojson(res)
+ break
+ }
+ })
}
+ }
+
+ /**
+ * 鍔犺浇鐐规暟鎹�
+ * @param res
+ */
+ loadPointGeojson (res) {
+ this.L.geoJSON(res.features, {
+ pointToLayer: function (geoJsonPoint, latlng) {
+ return this.L.canvasMarker(latlng,
+ {
+ radius: 20,
+ prevLatlng: this.L.latLng(51.503, -0.09), // previous point
+ img: {
+ url: './images/beng.png',
+ size: [20, 20],
+ rotate: 90
+ }
+ })
+ }
+ }).bindPopup(function (layer) {
+ // return layer.feature.properties.linenumber
+ }).addTo(this.map)
+ }
+
+ /**
+ * 鍔犺浇绾挎暟鎹�
+ * @param res
+ */
+ loadLineGeojson (res) {
+ this.L.geoJSON(res.features, {
+ style: function (feature) {
+ return {
+ fill: true,
+ weight: 2,
+ fillColor: '#06cccc',
+ color: '#06cccc',
+ fillOpacity: 0.2,
+ opacity: 0.8,
+ dashArray: '10,4',
+ dashSpeed: -10
+ }
+ },
+ minZoom: 10
+ }).bindPopup(function (layer) {
+ // return layer.feature.properties.linenumber
+ }).addTo(this.map)
}
/**
@@ -63,9 +141,9 @@
* @param {}} options
* @param {*} isAddToMap
*/
- loadWmtsLayer (options, isAddToMap = true, config) {
+ loadWmtsLayer (options, isAddToMap = true) {
const layer = this.L.tileLayer(options.url, options.option)
- layer.config = config
+ layer.config = options
if (isAddToMap) {
layer.addTo(this.map)
@@ -78,9 +156,9 @@
* @param {}} options
* @param {*} isAddToMap
*/
- loadWmsLayer (options, isAddToMap = true, config) {
+ loadWmsLayer (options, isAddToMap = true) {
const layer = this.L.tileLayer.wms(options.url, options.option)
- layer.config = config
+ layer.config = options
if (isAddToMap) {
layer.addTo(this.tileLayerWmslayerGroup)
@@ -93,7 +171,7 @@
* @param {}} options
* @param {*} isAddToMap
*/
- loadTileLayer (options, isAddToMap = true, config) {
+ loadTileLayer (options, isAddToMap = true) {
const layer = this.L.tileLayer(options.url, {
layers: options.layers || 'all', // country
format: options.format || 'image/png',
@@ -103,7 +181,7 @@
minZoom: options.minZoom || 1,
zoomOffset: options.zoomOffset || 0
})
- layer.config = config
+ layer.config = options
if (isAddToMap) {
layer.addTo(this.map)
@@ -134,13 +212,12 @@
}
/**
- * 寰楀埌閫変腑鐨勫浘灞傚垪琛�
- * @param mapConfig
- * @returns {[]}
- */
- getCheckedLayers (mapConfig) {
+ * 寰楀埌閫変腑鐨勫浘灞傚垪琛�
+ * @param mapConfig
+ * @returns {[]}
+ */
+ getCheckedLayers (serviceLayers) {
var checkedLayers = []
- var serviceLayers = mapConfig.ServiceLayers
for (var i = 0; i < serviceLayers.length; i++) {
var serviceLayer = serviceLayers[i]
var layers = serviceLayer.layers
@@ -177,8 +254,8 @@
}
/**
- * 鏍规嵁绾跨殑閫夋嫨锛屽緱鍒扮偣鐨勫彲閫夋嫨鍥惧眰鏁版嵁
- */
+ * 鏍规嵁绾跨殑閫夋嫨锛屽緱鍒扮偣鐨勫彲閫夋嫨鍥惧眰鏁版嵁
+ */
getFiltersGroup () {
}
diff --git a/src/conf/Constants.js b/src/conf/Constants.js
new file mode 100644
index 0000000..0c173b0
--- /dev/null
+++ b/src/conf/Constants.js
@@ -0,0 +1,5 @@
+export const GEOM_TYPE = {
+ POINT: 'point',
+ LINE: 'line',
+ POLYGON: 'polygon'
+}
diff --git a/src/conf/LayerSewers.js b/src/conf/LayerSewers.js
index 7b91411..01626a2 100644
--- a/src/conf/LayerSewers.js
+++ b/src/conf/LayerSewers.js
@@ -1,38 +1,21 @@
-import * as L from 'leaflet'
-
-const APP_GIS_HOST_2 = 'http://xearth.cn:6230'
-const myRenderer = L.canvas()// 闇�瑕佷娇鐢ㄧ敾甯冩覆鏌撶殑浣跨敤 renderer: myRenderer 浣滀负鍙傛暟
-export const LayerSewers = {
+import { GEOM_TYPE } from './Constants'
+// const APP_GIS_HOST_2 = 'http://xearth.cn:6230'
+const APP_GIS_HOST_2 = 'http://localhost:3000'
+export const LayerSewersLine = {
code: 'pipeline',
name: '绠$綉鏁版嵁',
- icon_actived: '',
- icon_deactived: '',
type: 'geojson',
// url: APP_GIS_HOST_PIPELINE + '/server/ogcserver/PipeLineTest/wms?version=1.1.1',
- url: APP_GIS_HOST_2 + '/layer/findLayer?layerName=pipeline',
- inLegend: true,
+ url: APP_GIS_HOST_2 + '/layer/findLayer?layerName={sname}',
checked: true,
- option: {
- styles: {
- fill: true,
- weight: 2,
- fillColor: '#06cccc',
- color: '#06cccc',
- fillOpacity: 0.2,
- opacity: 0.8
- // dashArray:'10,4',
- // dashSpeed:-10,
- },
- renderer: myRenderer
-
- },
layers: [
{
code: 'rainline',
name: '闆ㄦ按绾�',
- sname: '闆ㄦ按',
+ sname: 'pipeline', // 琛ㄥ悕
checked: true, // 榛樿閫変腑鐘舵��
filter: {},
+ zoom: 10, // 鍦ㄦ寚瀹氱骇鍒樉绀�
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
{
@@ -109,3 +92,293 @@
}
]
}
+
+export const LayerSewersPoint = [
+ {
+ code: 'fsss',
+ name: '闄勫睘璁炬柦',
+ checked: false, // 榛樿閫変腑鐘舵��
+ filters: [
+ {
+ code: 'fourlink',
+ name: '鍥涢��',
+ sname: 'FourLink',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'tee',
+ name: '涓夐��',
+ sname: 'Tee',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'piperack',
+ name: '绠℃灦(澧�)',
+ sname: 'PipeRack',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'pipegallery',
+ name: '绠″粖(甯�)',
+ sname: 'PipeGallery',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'pipesegment',
+ name: '娴佸悜',
+ sname: 'ywslx',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'pipeline',
+ name: '绠$綉',
+ sname: 'pipeline',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'valve',
+ name: '闃�闂�',
+ sname: 'valve',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'elbow',
+ name: '寮ご',
+ sname: 'Elbow',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ }
+ ]
+ },
+ {
+ code: 'hbss',
+ name: '鐜繚璁炬柦',
+ checked: false, // 榛樿閫変腑鐘舵��
+ filters: [
+ {
+ code: 'manhole',
+ name: '绐ㄤ簳',
+ sname: '绐ㄤ簳',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'firedike',
+ name: '闃茬伀鍫�',
+ sname: '闃茬伀鍫�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'raingate',
+ name: '闆ㄧ瀛�',
+ sname: '闆ㄧ瀛�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'overflowweir',
+ name: '婧㈡祦鍫�',
+ sname: '婧㈡祦鍫�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'chokevalve',
+ name: '鎴祦闂�',
+ sname: '鎴祦闂�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'collectingbasin',
+ name: '闆嗘按姹�(缃�)',
+ sname: '闆嗘按姹�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'oilseparator',
+ name: '闅旀补姹�',
+ sname: '闅旀补姹�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ }
+ ]
+ },
+ {
+ code: 'pk',
+ name: '鎺掑彛',
+ checked: false, // 榛樿閫変腑鐘舵��
+ filters: [
+ {
+ code: 'dischargeport',
+ name: '鎺掓斁鍙�',
+ sname: '鎺掓斁鍙�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ }
+ ]
+ },
+ {
+ code: 'qyxx',
+ name: '鍖哄煙淇℃伅',
+ checked: false, // 榛樿閫変腑鐘舵��
+ filters: [
+ {
+ code: 'thirdpartypipe',
+ name: '绗笁鏂圭閬�',
+ sname: '绗笁鏂圭閬�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'firefightingunit',
+ name: '娑堥槻鍗曚綅',
+ sname: '娑堥槻鍗曚綅',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'emergencyesources',
+ name: '搴旀�ョ墿璧�',
+ sname: '搴旀�ョ墿璧�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'emergencyres',
+ name: '绀句細涓撲笟搴旀�ユ晳鎻撮槦浼�',
+ sname: '涓撲笟搴旀�ユ晳鎻�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'maintenanceteam',
+ name: '缁存姠淇槦浼�',
+ sname: '缁存姠淇槦浼�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'hospital',
+ name: '鍖婚櫌',
+ sname: '鍖婚櫌',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'pointpreservationzone',
+ name: '鑷劧淇濇姢鍖�',
+ sname: '鑷劧淇濇姢鍖�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'pointhydrology',
+ name: '姘翠綋',
+ sname: '姘翠綋',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'sensitivetarget',
+ name: '鏁忔劅鐩爣',
+ sname: '鏁忔劅鐩爣',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'envmonunit',
+ name: '鐜鐩戞祴鍗曚綅',
+ sname: '鐜鐩戞祴鍗曚綅',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'pointcontaminants',
+ name: '鐩戞祴鐐规薄鏌撶墿鎸囨爣淇℃伅',
+ sname: '姹℃煋鐗╂寚鏍�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'dischargeportaround',
+ name: '鎺掓斁鍙e懆杈圭幆澧冩晱鎰熶俊鎭�',
+ sname: '鎺掓斁鍙e懆杈圭幆澧�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'pump',
+ name: '娉�',
+ sname: '娉�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'liquidlevelmeter',
+ name: '娑蹭綅璁�',
+ sname: '娑蹭綅璁�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'flowmeter',
+ name: '娴侀噺璁�',
+ sname: '娴侀噺璁�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'video',
+ name: '瑙嗛鐩戞帶閰嶇疆',
+ sname: '瑙嗛鐩戞帶',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'onlinemonitoring',
+ name: '鍦ㄧ嚎鐩戞祴璁惧閰嶇疆',
+ sname: '鍦ㄧ嚎鐩戞祴',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'combustiblegas',
+ name: '鍙噧姘斾綋鎶ヨ璁惧閰嶇疆',
+ sname: '鍙噧姘斾綋鎶ヨ',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'hydrogensulfide',
+ name: 'H2S娴撳害鎶ヨ璁惧閰嶇疆',
+ sname: 'H2S娴撳害鎶ヨ',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'controlpoint',
+ name: '绠$嚎鐐�',
+ sname: '绠$嚎鐐�',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ },
+ {
+ code: 'pipesegment',
+ name: '绠℃',
+ sname: '绠℃',
+ checked: false,
+ geomtype: GEOM_TYPE.POINT
+ }
+ ]
+ }
+]
diff --git a/src/conf/Layers.js b/src/conf/Layers.js
index 8400913..5c69adf 100644
--- a/src/conf/Layers.js
+++ b/src/conf/Layers.js
@@ -1,9 +1,8 @@
// import * as L from 'leaflet'
-import { LayerSewers } from './LayerSewers'
+import { LayerSewers, PointLayers } from './LayerSewers'
// const APP_GIS_HOST = 'http://xearth.cn:6299'
// 鍑犱綍绫诲瀷甯搁噺
-const GEOM_POINT = 'POINT'
export const ServiceLayers = [
/* {
@@ -27,296 +26,5 @@
uppercase: false,
WMSTILE: 1
}, */
- LayerSewers
-
-]
-
-export const PointLayers = [
- {
- code: 'fsss',
- name: '闄勫睘璁炬柦',
- checked: true, // 榛樿閫変腑鐘舵��
- filters: [
- {
- code: 'fourlink',
- name: '鍥涢��',
- sname: '鍥涢��',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'tee',
- name: '涓夐��',
- sname: '涓夐��',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'piperack',
- name: '绠℃灦(澧�)',
- sname: '绠℃灦',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'pipegallery',
- name: '绠″粖(甯�)',
- sname: '绠″粖',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'pipesegment',
- name: '娴佸悜',
- sname: '娴佸悜',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'pipeline',
- name: '绠$綉',
- sname: '绠$綉',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'valve',
- name: '闃�闂�',
- sname: '闃�闂�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'elbow',
- name: '寮ご',
- sname: '寮ご',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- }
- ]
- },
- {
- code: 'hbss',
- name: '鐜繚璁炬柦',
- checked: true, // 榛樿閫変腑鐘舵��
- filters: [
- {
- code: 'manhole',
- name: '绐ㄤ簳',
- sname: '绐ㄤ簳',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'firedike',
- name: '闃茬伀鍫�',
- sname: '闃茬伀鍫�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'raingate',
- name: '闆ㄧ瀛�',
- sname: '闆ㄧ瀛�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'overflowweir',
- name: '婧㈡祦鍫�',
- sname: '婧㈡祦鍫�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'chokevalve',
- name: '鎴祦闂�',
- sname: '鎴祦闂�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'collectingbasin',
- name: '闆嗘按姹�(缃�)',
- sname: '闆嗘按姹�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'oilseparator',
- name: '闅旀补姹�',
- sname: '闅旀补姹�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- }
- ]
- },
- {
- code: 'pk',
- name: '鎺掑彛',
- checked: true, // 榛樿閫変腑鐘舵��
- filters: [
- {
- code: 'dischargeport',
- name: '鎺掓斁鍙�',
- sname: '鎺掓斁鍙�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- }
- ]
- },
- {
- code: 'qyxx',
- name: '鍖哄煙淇℃伅',
- checked: true, // 榛樿閫変腑鐘舵��
- filters: [
- {
- code: 'thirdpartypipe',
- name: '绗笁鏂圭閬�',
- sname: '绗笁鏂圭閬�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'firefightingunit',
- name: '娑堥槻鍗曚綅',
- sname: '娑堥槻鍗曚綅',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'emergencyesources',
- name: '搴旀�ョ墿璧�',
- sname: '搴旀�ョ墿璧�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'emergencyres',
- name: '绀句細涓撲笟搴旀�ユ晳鎻撮槦浼�',
- sname: '涓撲笟搴旀�ユ晳鎻�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'maintenanceteam',
- name: '缁存姠淇槦浼�',
- sname: '缁存姠淇槦浼�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'hospital',
- name: '鍖婚櫌',
- sname: '鍖婚櫌',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'pointpreservationzone',
- name: '鑷劧淇濇姢鍖�',
- sname: '鑷劧淇濇姢鍖�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'pointhydrology',
- name: '姘翠綋',
- sname: '姘翠綋',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'sensitivetarget',
- name: '鏁忔劅鐩爣',
- sname: '鏁忔劅鐩爣',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'envmonunit',
- name: '鐜鐩戞祴鍗曚綅',
- sname: '鐜鐩戞祴鍗曚綅',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'pointcontaminants',
- name: '鐩戞祴鐐规薄鏌撶墿鎸囨爣淇℃伅',
- sname: '姹℃煋鐗╂寚鏍�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'dischargeportaround',
- name: '鎺掓斁鍙e懆杈圭幆澧冩晱鎰熶俊鎭�',
- sname: '鎺掓斁鍙e懆杈圭幆澧�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'pump',
- name: '娉�',
- sname: '娉�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'liquidlevelmeter',
- name: '娑蹭綅璁�',
- sname: '娑蹭綅璁�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'flowmeter',
- name: '娴侀噺璁�',
- sname: '娴侀噺璁�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'video',
- name: '瑙嗛鐩戞帶閰嶇疆',
- sname: '瑙嗛鐩戞帶',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'onlinemonitoring',
- name: '鍦ㄧ嚎鐩戞祴璁惧閰嶇疆',
- sname: '鍦ㄧ嚎鐩戞祴',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'combustiblegas',
- name: '鍙噧姘斾綋鎶ヨ璁惧閰嶇疆',
- sname: '鍙噧姘斾綋鎶ヨ',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'hydrogensulfide',
- name: 'H2S娴撳害鎶ヨ璁惧閰嶇疆',
- sname: 'H2S娴撳害鎶ヨ',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'controlpoint',
- name: '绠$嚎鐐�',
- sname: '绠$嚎鐐�',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- },
- {
- code: 'pipesegment',
- name: '绠℃',
- sname: '绠℃',
- checked: true, // 榛樿閫変腑鐘舵��
- geom: GEOM_POINT
- }
- ]
- }
+ LayerSewers, PointLayers
]
diff --git a/src/conf/MapConfig.js b/src/conf/MapConfig.js
index 9eed49f..dccff74 100644
--- a/src/conf/MapConfig.js
+++ b/src/conf/MapConfig.js
@@ -1,6 +1,6 @@
锘縤mport * as L from 'leaflet'
import TDT from './TDT'
-import { ServiceLayers, PointLayers } from './Layers'
+import { LayerSewersLine, LayerSewersPoint } from './LayerSewers'
const curWwwPath = window.document.location.href
const pathname = window.document.location.pathname
const pos = curWwwPath.indexOf(pathname)
@@ -35,8 +35,7 @@
showBaseMapType: 1, // 1鏄剧ず澶╁湴鍥撅紝2鏄剧ずarcgis鍦板浘
IntranetBaseMaps: TDT.intranet,
InternetBaseMaps: TDT.internet,
- ServiceLayers: ServiceLayers,
- PointLayers: PointLayers
+ Layers: { LayerSewersLine: [LayerSewersLine], layerSewersPoint: LayerSewersPoint } // 姹¢洦姘村浘灞傞厤缃�
}
/**
@@ -57,6 +56,5 @@
mapOptions,
mapConfig,
TokenConfig,
-
BLUEMAP_HOST
}
diff --git a/src/conf/Styles.js b/src/conf/Styles.js
new file mode 100644
index 0000000..42416e5
--- /dev/null
+++ b/src/conf/Styles.js
@@ -0,0 +1,24 @@
+export const LineStyles = {
+ pipeline: {
+ fill: true,
+ weight: 2,
+ fillColor: '#06cccc',
+ color: '#06cccc',
+ fillOpacity: 0.2,
+ opacity: 0.8,
+ dashArray: '10,4',
+ dashSpeed: -10
+ }
+}
+export const PointStyles = {
+ pipeline: {
+ fill: true,
+ weight: 2,
+ fillColor: '#06cccc',
+ color: '#06cccc',
+ fillOpacity: 0.2,
+ opacity: 0.8,
+ dashArray: '10,4',
+ dashSpeed: -10
+ }
+}
diff --git a/src/store/modules/map.js b/src/store/modules/map.js
index 2a1bff6..c6b997e 100644
--- a/src/store/modules/map.js
+++ b/src/store/modules/map.js
@@ -1,4 +1,4 @@
-import mapConfig from '../../conf/MapConfig'
+import config from '../../conf/MapConfig'
const state = {
currentCorp: null,
@@ -14,7 +14,8 @@
selectedServiceLayer: '', // 浣跨敤杩囨护鍣ㄦ椂锛岃鎵撳紑鐨刉MS鏈嶅姟鐨凜ODE
serviceLayerFilters: {}, // 鏈嶅姟鍥惧眰鎺у埗杩囨护閰嶇疆
checkedLayers: {}, // 閫変腑鍥惧眰瀵硅薄
- mapConfig: mapConfig
+ config: config,
+ serviceLayers: config.mapConfig.Layers
}
const mutations = {
setMapObj (state, map) {
diff --git a/src/views/MapTemplate.vue b/src/views/MapTemplate.vue
index 513fc98..b7bac3b 100644
--- a/src/views/MapTemplate.vue
+++ b/src/views/MapTemplate.vue
@@ -50,8 +50,8 @@
}
},
computed: {
- mapConfig () {
- return this.$store.state.map.mapConfig
+ config () {
+ return this.$store.state.map.config
}
},
beforeMount () {
@@ -74,13 +74,13 @@
this.map = Sgis.initMap(mapcontainer)
this.basemapHelper = Sgis.initBasemapsHelper(this.map) // 鍒濆鍖栧熀纭�搴曞浘鍔╂墜
- this.basemapHelper.initBasemap(this.mapConfig, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘
+ this.basemapHelper.initBasemap(this.config, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘
this.serviceLayerHelper = Sgis.initTileLayersHelper(this.map) // 鍒濆鍖栦笟鍔″簳鍥惧姪鎵�
- this.serviceLayerHelper.initServiceLayers(this.mapConfig)
+ this.serviceLayerHelper.initServiceLayers(this.config)
this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.map) // 鍒濆鍖栧姩鎬佽绱犲浘灞傚姪鎵�
- this.vectorLayerHelper.initVectorLayers(this.mapConfig)
+ this.vectorLayerHelper.initVectorLayers(this.config)
this.saveMapStatus()
// this.setMapObj(this.mapObj)
--
Gitblit v1.8.0