From aa01135a0d0ab6ba9d726826e71286d5ee52a14b Mon Sep 17 00:00:00 2001 From: ChenZeping <chenzeping> Date: 星期四, 29 四月 2021 18:42:06 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/components/LayerController/service/WmsLayerService.js | 115 +++++++++++++++++++++++++++++---------------------------- 1 files changed, 58 insertions(+), 57 deletions(-) diff --git a/src/components/LayerController/service/WmsLayerService.js b/src/components/LayerController/service/WmsLayerService.js index b286194..9e6d2f5 100644 --- a/src/components/LayerController/service/WmsLayerService.js +++ b/src/components/LayerController/service/WmsLayerService.js @@ -45,14 +45,13 @@ } add (config) { - const code = config.code - for (var k in this.layersConfig) { - if (code === k) { - return false + const wmsLayers = config.wmsLayers + if (wmsLayers) { + if (this.layers.indexOf(wmsLayers) < 0) { + this.layers.push(config.wmsLayers) + this.wmsLayer.setParams({ layers: this.layers.join(',') }) } } - this.layers.push(config.wmsLayers) - this.wmsLayer.setParams({ layers: this.layers.join(',') }) } remove (config) { @@ -81,57 +80,59 @@ var size = this.map.getSize() // const bbox = this.L.latLngBounds(this.L.latLng(e.latlng.lng, e.latlng.lat)).toBBoxString() - const params = Object.assign({ - LAYERS: this.layers.join(','), - QUERY_LAYERS: this.layers.join(','), - WIDTH: size.x, - HEIGHT: size.y, - X: Math.round(point.x), - Y: Math.round(point.y), - BBOX: this.map.getBounds().toBBoxString() - }, this.params) - AjaxUtils.get4JsonDataByUrl(PIPELINE_WMS, 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, - name: feature.id, - content: properties - }) + if (this.layers && this.layers.length > 0) { + const params = Object.assign({ + LAYERS: this.layers.join(','), + QUERY_LAYERS: this.layers.join(','), + WIDTH: size.x, + HEIGHT: size.y, + X: Math.round(point.x), + Y: Math.round(point.y), + BBOX: this.map.getBounds().toBBoxString() + }, this.params) + AjaxUtils.get4JsonDataByUrl(PIPELINE_WMS, 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 (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() + } + }) + } }) } @@ -153,7 +154,7 @@ highlight (feature) { const type = feature.geometry.type if (type === 'MultiLineString') { - this.L.polyline(this.reverse(feature)).addTo(this.featureGroup) + this.L.polyline(this.reverse(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(), { -- Gitblit v1.8.0