派生自 wuyushui/SewerAndRainNetwork

ChenZeping
2021-04-29 70fd7ce1af45948ab2080d2036d345fd3b4c15a6
Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop

 Conflicts:
 src/components/LayerController/service/WfsLayerService.js
3个文件已修改
145 ■■■■ 已修改文件
src/components/LayerController/service/WfsLayerService.js 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/service/WmsLayerService.js 98 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/conf/layers/LayerPipeLines.js 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/service/WfsLayerService.js
@@ -63,8 +63,15 @@
            })
        },
        onEachFeature: (feature, layer) => {
          const popupDatas = []
          const properties = feature.properties
          popupDatas.push({
            title: properties.wellname || properties.devicename || properties.name,
            name: feature.id,
            content: properties
          })
          layer.bindPopup((layer) => {
            this.popupComp.setDatas(layer)
            this.popupComp.setDatas(popupDatas)
            this.popupComp.setShow()
            return this.popupComp.$el
          }, {
@@ -73,11 +80,7 @@
            closeButton: false,
            autoClose: false
          })
          layer.bindTooltip((layer) => this.tooltipListener(layer), {
            direction: 'bottom',
            offset: [0, 15],
            sticky: true
          })
            .bindTooltip((layer) => this.tooltipListener(layer), { direction: 'bottom', offset: [0, 15], sticky: true })
            .on('mouseover', (e) => this.mouseOverListener(e, layer)).on('mouseout', (e) => this.mouseOutListener(e, layer))
        }
      }).addTo(this.layer)
@@ -89,10 +92,7 @@
    const icon = this.config.icon
    const type = e.target.feature.geometry.type
    if (type === 'LineString' || type === 'MultiLineString') {
      layer.setStyle({
        weight: 8,
        color: '#00ffff'
      })
      layer.setStyle({ weight: 8, color: '#00ffff' })
    } else if (type === 'Point' || type === 'MultiPoint') {
      layer.setStyle({
        img: {
@@ -108,10 +108,7 @@
    const icon = this.config.icon
    const type = e.target.feature.geometry.type
    if (type === 'LineString' || type === 'MultiLineString') {
      layer.setStyle({
        weight: STYLES.WEIGHT,
        color: STYLES.COLOR
      })
      layer.setStyle({ weight: STYLES.WEIGHT, color: STYLES.COLOR })
    }
    if (type === 'Point' || type === 'MultiPoint') {
      layer.setStyle({
src/components/LayerController/service/WmsLayerService.js
@@ -74,24 +74,25 @@
  }
  clickListener () {
    window.map.on('click', (e) => {
      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()
    if (this.layers && this.layers.length > 0) {
      window.map.on('click', (e) => {
        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 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
        /**
        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,
@@ -99,39 +100,40 @@
         * }
         * @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
            })
          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 (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()
          }
        })
      })
    })
    }
  }
  reverse (feature) {
src/conf/layers/LayerPipeLines.js
@@ -32,7 +32,7 @@
    },
    {
      code: 'accidentline',
      name: '事故水线',
      name: '事故水',
      sname: '事故水',
      checked: false,
      // wmsLayers: 'sewer:pipeline_accident',
@@ -42,7 +42,7 @@
    },
    {
      code: 'oilline',
      name: '含油污水线',
      name: '含油污水',
      sname: '含油污水',
      checked: false,
      type: 0,
@@ -57,7 +57,7 @@
    },
    {
      code: 'saltline',
      name: '含盐污水线',
      name: '含盐污水',
      sname: '含盐污水',
      checked: false,
      type: 0,
@@ -66,11 +66,21 @@
    },
    {
      code: 'alkaliline',
      name: '含碱污水线',
      name: '含碱污水',
      sname: '含碱污水',
      checked: false,
      type: 0,
      wfs: WFS_URL + '?TYPENAME=含碱污水',
      minZoom: 10
    },
    {
      code: 'sulfurline',
      name: '含硫污水',
      sname: '含硫污水',
      checked: false,
      type: 0,
      wmsLayers: 'sewer:pipeline_sulfur',
      // wfs: WFS_URL + '?TYPENAME=含碱污水',
      minZoom: 10
    },
    {
@@ -84,7 +94,7 @@
    },
    {
      code: 'purifyline',
      name: '净化水线',
      name: '净化水',
      sname: '净化水',
      checked: false,
      type: 0,
@@ -93,7 +103,7 @@
    },
    {
      code: 'loopline',
      name: '循环水线',
      name: '循环水',
      sname: '循环水',
      type: 0,
      checked: false,