From 48986a9e1c74b27776122c20997b95924d711157 Mon Sep 17 00:00:00 2001
From: 徐旺旺 <11530253@qq.com>
Date: 星期三, 31 三月 2021 16:51:33 +0800
Subject: [PATCH] 图层配置
---
src/conf/layers/LayerHbss.js | 69 ++++++++++-------------
src/conf/Constants.js | 3 -
src/conf/MapConfig.js | 4 +
src/conf/layers/LayerArea.js | 8 +-
src/conf/layers/LayerPk.js | 6 +
src/components/LayerController/service/LayerFactory.js | 75 ++++++++++++++----------
src/components/LayerController/modules/LcServiceLayer.vue | 7 +-
7 files changed, 88 insertions(+), 84 deletions(-)
diff --git a/src/components/LayerController/modules/LcServiceLayer.vue b/src/components/LayerController/modules/LcServiceLayer.vue
index 87ea4a7..01bfe83 100644
--- a/src/components/LayerController/modules/LcServiceLayer.vue
+++ b/src/components/LayerController/modules/LcServiceLayer.vue
@@ -6,8 +6,7 @@
<div class="wms-panel">
<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)" v-if="item.childLayer"
- class="btn-filter">杩囨护</span>
+ @change="swAllLayers(item)"/>{{ item.name }}
</div>
<div class="layerbox-item">
<div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"><input type="checkbox"
@@ -66,9 +65,9 @@
swWmsLayer (itm) {
itm.checked = !itm.checked
if (itm.checked) {
- window.layerFactory.show(itm.code)
+ window.layerFactory.show(itm)
} else {
- window.layerFactory.hide(itm.code)
+ window.layerFactory.hide(itm)
}
// this.updateWms()
},
diff --git a/src/components/LayerController/service/LayerFactory.js b/src/components/LayerController/service/LayerFactory.js
index e7a585c..484d6e2 100644
--- a/src/components/LayerController/service/LayerFactory.js
+++ b/src/components/LayerController/service/LayerFactory.js
@@ -18,44 +18,55 @@
var layers = config.layers
for (var j = 0; j < layers.length; j++) {
var childConfig = layers[j]
- var code = childConfig.code
- var wfs = childConfig.wfs
- var wms = childConfig.wms
- var url = childConfig.url
- // 鍒ゆ柇鏄惁宸茬粡鍔犺浇杩囷紝鍔犺浇杩囧氨 鐩存帴寰楀埌瀵硅薄璋冪敤 鏄剧ず鍑芥暟
- var layer = this.layers[code]
- if (!layer) {
- layer = this.L.featureGroup({}).addTo(this.map)
- // 2. 鍒ゆ柇绫诲瀷
- if (wfs) {
- // 3. 瀹炰緥鍖栧叿浣搒ervice
- var wfsLayerService = new WfsLayerService(childConfig)
- wfsLayerService.init(layer)
- }
- if (wms) {
- var wmsLayerService = new WmsLayerService(childConfig)
- wmsLayerService.init(layer)
- }
- // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
- if (url) {
- var busiLayerService = new BusiLayerService(childConfig)
- busiLayerService.init(layer)
- }
- layer ? (this.layers[code] = layer) : console.log('LayerFactory锛歯ewLayer is null锛宲lease check !!!')
- } else {
- this.show(code)
- }
+ var checked = childConfig.checked
+ checked && this.load(childConfig)
}
}
}
- show (code) {
- var _layer = this.layers[code].addTo(this.map)
- this.setZIndex(_layer)
+ load (config) {
+ var code = config.code
+ var wfs = config.wfs
+ var wms = config.wms
+ var url = config.url
+ // 鍒ゆ柇鏄惁宸茬粡鍔犺浇杩囷紝鍔犺浇杩囧氨 鐩存帴寰楀埌瀵硅薄璋冪敤 鏄剧ず鍑芥暟
+ var layer = this.layers[code]
+ if (!layer) {
+ layer = this.L.featureGroup({}).addTo(this.map)
+ // 2. 鍒ゆ柇绫诲瀷
+ if (wfs) {
+ // 3. 瀹炰緥鍖栧叿浣搒ervice
+ var wfsLayerService = new WfsLayerService(config)
+ wfsLayerService.init(layer)
+ this.setZIndex(layer)
+ }
+ if (wms) {
+ var wmsLayerService = new WmsLayerService(config)
+ wmsLayerService.init(layer)
+ }
+ // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
+ if (url) {
+ var busiLayerService = new BusiLayerService(config)
+ busiLayerService.init(layer)
+ }
+ layer ? (this.layers[code] = layer) : console.log('LayerFactory锛歯ewLayer is null锛宲lease check !!!')
+ } else {
+ this.show(code)
+ }
}
- hide (code) {
- var layer = this.layers[code]
+ show (config) {
+ var layer = this.layers[config.code]
+ if (layer) {
+ layer.addTo(this.map)
+ this.setZIndex(layer)
+ } else {
+ this.load(config)
+ }
+ }
+
+ hide (config) {
+ var layer = this.layers[config.code]
layer && this.map.removeLayer(layer)
}
diff --git a/src/conf/Constants.js b/src/conf/Constants.js
index 92212b0..ef780e6 100644
--- a/src/conf/Constants.js
+++ b/src/conf/Constants.js
@@ -5,9 +5,6 @@
}
export const logicMapper = {
- // fsqy: 'Sample.js',
- fspfk: 'Sample.js',
- fsjcd: 'Sample.js',
wasteGasJcd: 'WasteGas.js',
wasteWaterJcd: 'WasteWater.js',
solidWasteJcd: 'SolidWaste.js',
diff --git a/src/conf/MapConfig.js b/src/conf/MapConfig.js
index ea8b7fb..ef799e2 100644
--- a/src/conf/MapConfig.js
+++ b/src/conf/MapConfig.js
@@ -7,6 +7,8 @@
import { LayerPipeLine } from './layers/LayerPipeLine'
import { LayerArea } from './layers/LayerArea'
import { LayerPk } from './layers/LayerPk'
+import { LayerFsss } from './layers/LayerFsss'
+import { LayerHbss } from './layers/LayerHbss'
const curWwwPath = window.document.location.href
const pathname = window.document.location.pathname
@@ -46,7 +48,7 @@
IntranetBaseMaps: TDT.intranet,
InternetBaseMaps: TDT.internet,
Layers: {
- LayerSewersLine: [LayerPipeLine, LayerArea, LayerPk, LayerWasteWater, LayerWasteGas, LayerSolidWaste],
+ LayerSewersLine: [LayerPipeLine, LayerFsss, LayerHbss, LayerArea, LayerPk, LayerWasteWater, LayerWasteGas, LayerSolidWaste],
layerSewersPoint: LayerSewersPoint
} // 姹¢洦姘村浘灞傞厤缃�
}
diff --git a/src/conf/layers/LayerArea.js b/src/conf/layers/LayerArea.js
index b4dd2b9..f3b9da5 100644
--- a/src/conf/layers/LayerArea.js
+++ b/src/conf/layers/LayerArea.js
@@ -1,6 +1,8 @@
/**
* 鍖哄煙
*/
+const APP_GIS_HOST_2 = 'http://xearth.cn:8088'
+const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs'
export const LayerArea = {
code: 'sewersArea',
name: '鍖哄煙淇℃伅',
@@ -11,7 +13,7 @@
name: '鍏徃',
sname: '鍏徃', // 琛ㄥ悕
checked: true, // 榛樿閫変腑鐘舵��
- url: '?TYPENAME=绠$綉',
+ wfs: WFS_URL + '?TYPENAME=鍏徃',
minZoom: 10, // 鍦ㄦ寚瀹氱骇鍒樉绀�
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -20,7 +22,7 @@
name: '鐮佸ご',
sname: '鐮佸ご',
checked: true, // 榛樿閫変腑鐘舵��
- wfs: '?TYPENAME=鍚补姹℃按',
+ wfs: WFS_URL + '?TYPENAME=鐮佸ご',
minZoom: 10,
childLayer: 'fsss,hbss' // 鍏宠仈PointLayers
},
@@ -29,7 +31,7 @@
name: '瑁呯疆鍖�',
sname: '瑁呯疆鍖�',
checked: true, // 榛樿閫変腑鐘舵��
- wfs: '?TYPENAME=鍚洂姹℃按',
+ wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�',
minZoom: 10
}
]
diff --git a/src/conf/layers/LayerHbss.js b/src/conf/layers/LayerHbss.js
index c77b633..d5193d2 100644
--- a/src/conf/layers/LayerHbss.js
+++ b/src/conf/layers/LayerHbss.js
@@ -3,77 +3,68 @@
*/
const APP_GIS_HOST_2 = 'http://xearth.cn:8088'
const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs'
-export const LayerFsss = {
- code: 'sewersFsss',
+export const LayerHbss = {
+ code: 'sewersHbss',
name: '鐜繚璁炬柦',
checked: false, // 榛樿閫変腑鐘舵��
layers: [
{
- code: 'fourlink',
- name: '鍥涢��',
- sname: '鍥涢��',
+ code: 'yj',
+ name: '绐ㄤ簳',
+ sname: '绐ㄤ簳',
checked: true,
minZoom: 10,
- wfs: WFS_URL + '?TYPENAME=鍥涢��',
+ wfs: WFS_URL + '?TYPENAME=绐ㄤ簳',
icon: 'sewers/鍥涢��.png'
},
{
- code: 'tee',
- name: '涓夐��',
- sname: '涓夐��',
+ code: 'ybz',
+ name: '闆ㄧ瀛�',
+ sname: '闆ㄧ瀛�',
checked: false,
minZoom: 10,
- wfs: WFS_URL + '?TYPENAME=涓夐��',
+ wfs: WFS_URL + '?TYPENAME=闆ㄧ瀛�',
icon: 'sewers/涓夐��.png'
},
{
- code: 'piperack',
- name: '绠℃灦(澧�)',
- sname: 'PipeRack',
+ code: 'fht',
+ name: '闃茬伀鍫�',
+ sname: '闃茬伀鍫�',
minZoom: 10,
- wfs: WFS_URL + '?TYPENAME=绠℃灦',
+ wfs: WFS_URL + '?TYPENAME=闃茬伀鍫�',
checked: false
},
{
- code: 'pipegallery',
- name: '绠″粖(甯�)',
- sname: 'PipeGallery',
+ code: 'jsc',
+ name: '闆嗘按姹�',
+ sname: '闆嗘按姹�',
minZoom: 10,
- wfs: WFS_URL + '?TYPENAME=绠″粖',
+ wfs: WFS_URL + '?TYPENAME=闆嗘按姹�',
checked: false
},
{
- code: 'pipesegment',
- name: '娴佸悜',
- sname: 'ywslx',
- wfs: WFS_URL + '?TYPENAME=娴佸悜',
+ code: 'jlz',
+ name: '鎴祦闂�',
+ sname: '鎴祦闂�',
+ wfs: WFS_URL + '?TYPENAME=鎴祦闂�',
checked: false
},
{
- code: 'pipeline',
- name: '绠$綉',
+ code: 'yly',
+ name: '婧㈡祦鍫�',
+ sname: '婧㈡祦鍫�',
minZoom: 10,
- sname: 'pipeline',
- wfs: WFS_URL + '?TYPENAME=绠$綉',
+ wfs: WFS_URL + '?TYPENAME=婧㈡祦鍫�',
checked: false
},
{
- code: 'valve',
- name: '闃�闂�',
+ code: 'gyd',
+ name: '闅旀补姹�',
+ sname: '闅旀补姹�',
minZoom: 10,
- sname: 'valve',
checked: false,
- wfs: WFS_URL + '?TYPENAME=闃�闂�',
+ wfs: WFS_URL + '?TYPENAME=闅旀补姹�',
icon: 'sewers/闃�闂�.png'
- },
- {
- code: 'elbow',
- name: '寮ご',
- sname: 'Elbow',
- minZoom: 10,
- checked: false,
- wfs: WFS_URL + '?TYPENAME=寮ご',
- icon: 'sewers/寮ご.png'
}
]
}
diff --git a/src/conf/layers/LayerPk.js b/src/conf/layers/LayerPk.js
index ab13cdf..62bbee9 100644
--- a/src/conf/layers/LayerPk.js
+++ b/src/conf/layers/LayerPk.js
@@ -1,6 +1,8 @@
/**
* 鎺掑彛
*/
+const APP_GIS_HOST_2 = 'http://xearth.cn:8088'
+const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs'
export const LayerPk = {
code: 'sewersPk',
name: '鎺掑彛',
@@ -11,7 +13,7 @@
name: '鍐呮帓鍙�',
sname: '鍐呮帓鍙�',
checked: true,
- wfs: '?TYPENAME=绠$綉',
+ wfs: WFS_URL + '?TYPENAME=鍐呮帓鍙�',
minZoom: 10 // 鍦ㄦ寚瀹氱骇鍒樉绀�
},
{
@@ -19,7 +21,7 @@
name: '澶栨帓鍙�',
sname: '澶栨帓鍙�',
checked: true, // 榛樿閫変腑鐘舵��
- wfs: '?TYPENAME=浜嬫晠姘�',
+ wfs: WFS_URL + '?TYPENAME=澶栨帓鍙�',
minZoom: 10
}
]
--
Gitblit v1.8.0