派生自 wuyushui/SewerAndRainNetwork

YANGDL
2021-02-25 6cdcf30b52502fa2b7db21064c40b7193bf7e25f
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()
    }
  }
}