| | |
| | | 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() |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | |
| | |
| | | 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(), { |