派生自 wuyushui/SewerAndRainNetwork

徐旺旺
2020-12-28 fcfa31314ffe78f75e9dcfbef4c376d3cebf1359
图层控制
1个文件已添加
3个文件已修改
503 ■■■■■ 已修改文件
src/components/LayerController/modules/LcServiceLayer.vue 272 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/helpers/ServiceLayerHelper.js 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/helpers/WmsHelper.js 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/conf/MapConfig.js 74 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/modules/LcServiceLayer.vue
@@ -1,142 +1,168 @@
<template>
  <div class="inner-panel">
      <div class="tile-panel">
        <div v-for="item in serviceTileLayerList" :key="item.code"><input type="checkbox" :value="item.name" @change="swTileLayer"/></div>
      </div>
      <div class="wmts-panel">
        <div v-for="item in serviceWmtsLayerList" :key="item.code"><input type="checkbox" :value="item.name" @change="swWmtsLayer"/></div>
      </div>
      <div class="wms-panel">
        <div v-for="item in serviceWmsLayerList" :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)" class="btn-filter">过滤</span></div>
            <div class="layerbox-item">
                <div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"><input type="checkbox" :name="'wmsSublayers_'+item.code+'_'+itm.code" :checked="itm.checked" :value="itm.code" @change="swWmsLayer(itm)"/>{{itm.sname}}</div>
    <div class="inner-panel">
        <div class="tile-panel">
            <div v-for="item in serviceTileLayerList" :key="item.code"><input type="checkbox" :value="item.name"
                                                                              @change="swTileLayer"/></div>
        </div>
        <div class="wmts-panel">
            <div v-for="item in serviceWmtsLayerList" :key="item.code"><input type="checkbox" :value="item.name"
                                                                              @change="swWmtsLayer"/></div>
        </div>
        <div class="wms-panel">
            <div v-for="item in serviceWmsLayerList" :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)" class="btn-filter">过滤</span>
                </div>
                <div class="layerbox-item">
                    <div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"><input type="checkbox"
                                                                                                      :name="'wmsSublayers_'+item.code+'_'+itm.code"
                                                                                                      :checked="itm.checked"
                                                                                                      :value="itm.code"
                                                                                                      @change="swWmsLayer(itm)"/>{{itm.sname}}
                    </div>
                </div>
            </div>
        </div>
      </div>
  </div>
    </div>
</template>
<script>
import { mapState, mapMutations } from "vuex";
export default {
  name: "LcServiceLayer",
  components: {},
  data() {
    return {
      selectedLineLayer: [], // 选中的管线图层
      selectedSubsidiaryLayer: [], // 选中的附属要素
      serviceTileLayerList: [], // Tile图层列表
      serviceWmtsLayerList: [], // Wmts图层列表
      serviceWmsLayerList: [] // 图层列表
    import {mapState, mapMutations} from "vuex";
    import WmsHelper from "../../helpers/WmsHelper";
    var wmsHelper = new WmsHelper()
    export default {
        name: "LcServiceLayer",
        components: {},
        data() {
            return {
                selectedLineLayer: [], // 选中的管线图层
                selectedSubsidiaryLayer: [], // 选中的附属要素
                serviceTileLayerList: [], // Tile图层列表
                serviceWmtsLayerList: [], // Wmts图层列表
                serviceWmsLayerList: [] // 图层列表
            };
        },
        computed: {
            ...mapState({
                serviceLayerHelper: (state) => {
                    return state.serviceLayerHelper
                },
                mapConfig: (state) => {
                    return state.mapConfig
                }
            }),
        },
        mounted() {
            // console.log('03步骤:', this.helper)
        },
        methods: {
            ...mapMutations(['setSelectedServiceLayer', 'toggleServiceLayerFilter']),
            swAllLayers(item) {
                // eslint-disable-next-line no-debugger
                item.checked = !item.checked
                for (let i = 0, len = item.layers.length; i < len; ++i) {
                    item.layers[i].checked = item.checked
                }
                this.updateWms()
                console.log(this.mapConfig)
            },
            swTileLayer() {
                console.log('该TILE方法未实现!')
            },
            swWmtsLayer() {
                console.log('该WMTS方法未实现!')
            },
            swWmsLayer(itm) {
                itm.checked = !itm.checked
                this.updateWms()
            },
            swFilter(item) {
                this.$store.commit('setSelectedServiceLayer', item.code)
                this.$store.commit('toggleServiceLayerFilter')
            },
            updateServiceLayerList() {
                // eslint-disable-next-line no-debugger
                // debugger
                let tileCfg = this.serviceLayerHelper.getTileLayers()
                this.serviceTileLayerList = []
                for (let i = 0, len = tileCfg.length; i < len; ++i) {
                    if (tileCfg[i].config.inLegend) {
                        console.log(tileCfg[i])
                    }
                }
                let wmtsCfg = this.serviceLayerHelper.getWmtsLayers()
                this.serviceWmtsLayerList = []
                for (let i = 0, len = wmtsCfg.length; i < len; ++i) {
                    if (wmtsCfg[i].config.inLegend) {
                        console.log(wmtsCfg[i])
                    }
                }
                let wmsCfg = this.serviceLayerHelper.getWmsLayers()
                this.serviceWmsLayerList = []
                for (let i = 0, len = wmsCfg.length; i < len; ++i) {
                    if (wmsCfg[i].config.inLegend) {
                        this.serviceWmsLayerList.push(wmsCfg[i].config)
                    }
                }
            },
            updateWms() {
                var mapConfig = this.mapConfig
                wmsHelper.initMapConfig(mapConfig)
                var wmsLayersMap = wmsHelper.getWmsLayersMap()
                //var filterURL = wmsHelper.getFilterURL()
                console.log(wmsLayersMap)
                for (var k in wmsLayersMap) {
                    var layers = wmsLayersMap[k]
                    var tileLayer = this.serviceLayerHelper.getTileLayer(k)
                    if (tileLayer) {
                        tileLayer.setParams({layers: layers}, true)
                    }
                }
            }
        },
        watch: {
            serviceLayerHelper(newVal) {
                if (newVal != null) {
                    this.updateServiceLayerList();
                }
            },
        },
    };
  },
  computed: {
    ...mapState({
      serviceLayerHelper: (state) => {
        return state.serviceLayerHelper
      },
      mapConfig: (state) => {
        return state.mapConfig
      }
    }),
  },
  mounted() {
    // console.log('03步骤:', this.helper)
  },
  methods: {
    ...mapMutations(['setSelectedServiceLayer','toggleServiceLayerFilter']),
    swAllLayers(item){
        // eslint-disable-next-line no-debugger
        item.checked = !item.checked
        for(let i = 0, len = item.layers.length; i < len; ++i){
            item.layers[i].checked = item.checked
        }
        this.updateWms()
        console.log(this.mapConfig)
    },
    swTileLayer(){
        console.log('该TILE方法未实现!')
    },
    swWmtsLayer(){
        console.log('该WMTS方法未实现!')
    },
    swWmsLayer(itm){
        itm.checked = !itm.checked
        this.updateWms()
    },
    swFilter(item){
        this.$store.commit('setSelectedServiceLayer', item.code)
        this.$store.commit('toggleServiceLayerFilter')
    },
    updateServiceLayerList(){
        // eslint-disable-next-line no-debugger
        // debugger
        let tileCfg = this.serviceLayerHelper.getTileLayers()
        this.serviceTileLayerList = []
        for(let i = 0,len = tileCfg.length; i < len; ++i) {
            if(tileCfg[i].config.inLegend){
                console.log(tileCfg[i])
            }
        }
        let wmtsCfg = this.serviceLayerHelper.getWmtsLayers()
        this.serviceWmtsLayerList = []
        for(let i = 0,len = wmtsCfg.length; i < len; ++i) {
            if(wmtsCfg[i].config.inLegend){
                console.log(wmtsCfg[i])
            }
        }
        let wmsCfg = this.serviceLayerHelper.getWmsLayers()
        this.serviceWmsLayerList = []
        for(let i = 0,len = wmsCfg.length; i < len; ++i) {
            if(wmsCfg[i].config.inLegend){
                this.serviceWmsLayerList.push(wmsCfg[i].config)
            }
        }
    },
    updateWms(){
    }
  },
  watch: {
    serviceLayerHelper(newVal) {
      if (newVal != null) {
        this.updateServiceLayerList();
      }
    },
  },
};
</script>
<style scoped lang="less">
.inner-panel {
  display: flex;
  justify-content: center;
  align-items: center;
    .inner-panel {
        display: flex;
        justify-content: center;
        align-items: center;
    .btn-filter{
        cursor: pointer;
    }
    .wms-panel{
        display:flex;
        flex-flow: column;
        .layerbox{
            width: 100%;
            display:flex;
        .btn-filter {
            cursor: pointer;
        }
        .wms-panel {
            display: flex;
            flex-flow: column;
            .layerbox-item{
                display:flex;
                flex-flow: row wrap;
                margin-left: 15px;
                margin-top: 5px;
                .basemap-layer-item{
                    width: 50%;
            .layerbox {
                width: 100%;
                display: flex;
                flex-flow: column;
                .layerbox-item {
                    display: flex;
                    flex-flow: row wrap;
                    margin-left: 15px;
                    margin-top: 5px;
                    .basemap-layer-item {
                        width: 50%;
                    }
                }
            }
        }
    }
}
</style>
src/components/helpers/ServiceLayerHelper.js
@@ -3,8 +3,9 @@
 * 创建图层相关的类
 */
import L from 'leaflet'
class ServiceLayerHelper {
    constructor(options){
    constructor(options) {
        this.map = options.map
        this.L = options.L
        this.tileLayersMap = new Map()
@@ -14,28 +15,32 @@
        this.mapConfig = {}
    }
    getTileLayer(code) {
        return this.tileLayersMap.get(code)
    }
    /**
     * 根据配置文件初始化业务底图
     */
    initServiceLayers(mapConfig){
    initServiceLayers(mapConfig) {
        this.mapConfig = mapConfig
        this._loadLayers(mapConfig)
    }
    /**
     * 按配置文件加载三种不同类型的
     * @param {*} mapConfig
     * @param {*} isAddToMap
     * @param {*} mapConfig
     * @param {*} isAddToMap
     */
    _loadLayers(mapConfig, isAddToMap = true){
        console.debug('ServiceLayerHelper加载参数:',mapConfig)
        for(let i = 0, len = mapConfig.mapConfig.ServiceLayers.length; i < len; ++i) {
    _loadLayers(mapConfig, isAddToMap = true) {
        console.debug('ServiceLayerHelper加载参数:', mapConfig)
        for (let i = 0, len = mapConfig.mapConfig.ServiceLayers.length; i < len; ++i) {
            let opt = mapConfig.mapConfig.ServiceLayers[i]
            if(opt.type === 'wmts') {
            if (opt.type === 'wmts') {
                this.loadWmtsLayer(opt, isAddToMap, mapConfig.mapConfig.ServiceLayers[i])
            }else if(opt.type === 'wms') {
            } else if (opt.type === 'wms') {
                this.loadWmsLayer(opt, isAddToMap, mapConfig.mapConfig.ServiceLayers[i])
            }else if(opt.type === 'tile') {
            } else if (opt.type === 'tile') {
                this.loadTileLayer(opt, isAddToMap, mapConfig.mapConfig.ServiceLayers[i])
            }
        }
@@ -43,29 +48,30 @@
    /**
     * 往地图中加入一个WMTS服务
     * @param {}} options
     * @param {*} isAddToMap
     * @param {}} options
     * @param {*} isAddToMap
     */
    loadWmtsLayer(options, isAddToMap = true, config) {
        const layer = this.L.tileLayer(options.url, options.option);
        layer.config = config
        if(isAddToMap) {
        if (isAddToMap) {
            layer.addTo(this.map)
        }
        this.tileLayersMap.set(options.code, layer)
        this.tileLayersWMTSArray.push(layer)
    }
    /**
     * 往地图中加入一个WMS服务
     * @param {}} options
     * @param {*} isAddToMap
     * @param {}} options
     * @param {*} isAddToMap
     */
    loadWmsLayer(options, isAddToMap = true, config) {
        const layer =this.L.tileLayer.wms(options.url, options.option);
        const layer = this.L.tileLayer.wms(options.url, options.option);
        layer.config = config
        if(isAddToMap) {
        if (isAddToMap) {
            layer.addTo(this.map)
        }
        this.tileLayersMap.set(options.code, layer)
@@ -74,11 +80,11 @@
    /**
     * 往地图中加入一个TILE服务
     * @param {}} options
     * @param {*} isAddToMap
     * @param {}} options
     * @param {*} isAddToMap
     */
    loadTileLayer(options, isAddToMap = true, config) {
        const layer =this.L.tileLayer(options.url, {
        const layer = this.L.tileLayer(options.url, {
            layers: options.layers || 'all',//country
            format: options.format || "image/png",
            transparent: options.true || true,
@@ -88,29 +94,31 @@
            zoomOffset: options.zoomOffset || 0
        });
        layer.config = config
        if(isAddToMap) {
        if (isAddToMap) {
            layer.addTo(this.map)
        }
        this.tileLayersMap.set(options.code , layer)
        this.tileLayersMap.set(options.code, layer)
        this.tileLayersTileArray.push(layer)
    }
    /**
     * 隐藏服务图层
     * @param {*} name
     * @param {*} name
     */
    hideTileLayer(code){
        if(this.tileLayersMap){
    hideTileLayer(code) {
        if (this.tileLayersMap) {
            let tileLayer = this.tileLayersMap.get(code)
            this.map.removeLayer(tileLayer)
        }
    }
    /**
     * 展示服务图层
     * @param {*} name
     * @param {*} name
     */
    showTileLayer(code){
        if(this.tileLayersMap){
    showTileLayer(code) {
        if (this.tileLayersMap) {
            let tileLayer = this.tileLayersMap.get(code)
            this.map.addLayer(tileLayer)
        }
@@ -119,19 +127,21 @@
    /**
     * 获取所有的TILE服务图层
     */
    getTileLayers(){
    getTileLayers() {
        return this.tileLayersTileArray
    }
    /**
     * 获取所有的WMTS服务图层
     */
    getWmtsLayers(){
    getWmtsLayers() {
        return this.tileLayersWMTSArray
    }
    /**
     * 获取所有的WMS服务图层
     */
    getWmsLayers(){
    getWmsLayers() {
        return this.tileLayersWMSArray
    }
@@ -139,14 +149,15 @@
     * 通过code查找WMS的服务配置
     * @param {} code wms服务配置的code
     */
    getWMSConfig(code){
    getWMSConfig(code) {
        let mc = this.mapConfig
        for(let i = 0, len = mc.mapConfig.ServiceLayers.length; i < len; ++i) {
            if(code == mc.mapConfig.ServiceLayers[i].code && mc.mapConfig.ServiceLayers[i].type === 'wms'){
        for (let i = 0, len = mc.mapConfig.ServiceLayers.length; i < len; ++i) {
            if (code == mc.mapConfig.ServiceLayers[i].code && mc.mapConfig.ServiceLayers[i].type === 'wms') {
                return mc.mapConfig.ServiceLayers[i]
            }
        }
        return null
    }
}
export default ServiceLayerHelper
src/components/helpers/WmsHelper.js
New file
@@ -0,0 +1,74 @@
/**
 * 加载WMS,拼接FILTER,LAYERS参数等
 */
function WmsHelper() {
    this.filters = {}
    this.wmsLayersMap = {}
    this.initMapConfig = (mapConfig) => {
        var serviceLayers = mapConfig.mapConfig.ServiceLayers
        for (var i = 0; i < serviceLayers.length; i++) {
            var service = serviceLayers[i]
            var checked = service.checked
            if (!checked) {
                break
            }
            var filtersGroup = service.filtersGroup
            if (filtersGroup) {
                this.initLayer(service.code, filtersGroup)
            }
        }
    }
    this.initLayer = (wms, layersGroup) => {
        for (var i = 0; i < layersGroup.length; i++) {
            var filters = layersGroup[i].filters
            for (var j = 0; j < filters.length; j++) {
                var layer = filters[j]
                var code = layer.code
                this.addLayer(wms, code)
            }
        }
    }
    this.initFilter = () => {
        /* for (var i = 0; i < filters.length; i++) {
             var filter = filters[i]
             this.addFilter()
         }*/
    }
    this.addLayer = (wms, layer) => {
        var wmsLayer = this.wmsLayersMap[wms]
        if (wmsLayer) {
            wmsLayer[wmsLayer.length] = layer
        } else {
            this.wmsLayersMap[wms] = [layer]
        }
    }
    this.addFilter = (condition) => {
        //var filter = this.filters[layer]
        //if (filter) {
        this.filters[this.filters.length] = condition
        //} else {
        //    this.filters[layer] = [condition]
        // }
    }
    this.getWmsLayersMap = () => {
        return this.wmsLayersMap
    }
    this.getFilterURL = () => {
        var filterURL = ''
        var conditions = ''
        for (var f in this.filters) {
            var filters = this.filters[f]
            for (var i = 0; i < filters.length; i++) {
                conditions += filters[i]
                if (i < filters.length) {
                    conditions += ','
                }
            }
            filterURL += f + '.(' + conditions + ');'
        }
        return filterURL.substr(0, filterURL.length - 1)
    }
}
export default WmsHelper
src/conf/MapConfig.js
@@ -309,56 +309,56 @@
                    checked: true, // 默认选中状态
                    filters:[
                        {
                            code:'四通',
                            code:'fourlink',
                            name:'四通',
                            sname:'四通',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'三通',
                            code:'tee',
                            name:'三通',
                            sname:'三通',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'管架(墩)',
                            code:'piperack',
                            name:'管架(墩)',
                            sname:'管架',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'管廊(带)',
                            code:'pipegallery',
                            name:'管廊(带)',
                            sname:'管廊',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'流向',
                            code:'pipesegment',
                            name:'流向',
                            sname:'流向',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'管网',
                            code:'pipeline',
                            name:'管网',
                            sname:'管网',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'阀门',
                            code:'valve',
                            name:'阀门',
                            sname:'阀门',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'弯头',
                            code:'elbow',
                            name:'弯头',
                            sname:'弯头',
                            checked: true, // 默认选中状态
@@ -372,49 +372,49 @@
                    checked: true, // 默认选中状态
                    filters:[
                        {
                            code:'窨井',
                            code:'manhole',
                            name:'窨井',
                            sname:'窨井',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'防火堤',
                            code:'firedike',
                            name:'防火堤',
                            sname:'防火堤',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'雨篦子',
                            code:'raingate',
                            name:'雨篦子',
                            sname:'雨篦子',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'溢流堰',
                            code:'overflowweir',
                            name:'溢流堰',
                            sname:'溢流堰',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'截流闸',
                            code:'chokevalve',
                            name:'截流闸',
                            sname:'截流闸',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'集水池(罐)',
                            code:'collectingbasin',
                            name:'集水池(罐)',
                            sname:'集水池',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'隔油池',
                            code:'oilseparator',
                            name:'隔油池',
                            sname:'隔油池',
                            checked: true, // 默认选中状态
@@ -428,7 +428,7 @@
                    checked: true, // 默认选中状态
                    filters:[
                        {
                            code:'排放口',
                            code:'dischargeport',
                            name:'排放口',
                            sname:'排放口',
                            checked: true, // 默认选中状态
@@ -442,147 +442,147 @@
                    checked: true, // 默认选中状态
                    filters:[
                        {
                            code:'第三方管道',
                            code:'thirdpartypipe',
                            name:'第三方管道',
                            sname:'第三方管道',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'消防单位',
                            code:'firefightingunit',
                            name:'消防单位',
                            sname:'消防单位',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'应急物资',
                            code:'emergencyesources',
                            name:'应急物资',
                            sname:'应急物资',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'社会专业应急救援队伍',
                            code:'emergencyres',
                            name:'社会专业应急救援队伍',
                            sname:'专业应急救援',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'维抢修队伍',
                            code:'maintenanceteam',
                            name:'维抢修队伍',
                            sname:'维抢修队伍',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'医院',
                            code:'hospital',
                            name:'医院',
                            sname:'医院',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'自然保护区',
                            code:'pointpreservationzone',
                            name:'自然保护区',
                            sname:'自然保护区',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'水体',
                            code:'pointhydrology',
                            name:'水体',
                            sname:'水体',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'敏感目标',
                            code:'sensitivetarget',
                            name:'敏感目标',
                            sname:'敏感目标',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'环境监测单位',
                            code:'envmonunit',
                            name:'环境监测单位',
                            sname:'环境监测单位',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'监测点污染物指标信息',
                            code:'pointcontaminants',
                            name:'监测点污染物指标信息',
                            sname:'污染物指标',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'排放口周边环境敏感信息',
                            code:'dischargeportaround',
                            name:'排放口周边环境敏感信息',
                            sname:'排放口周边环境',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'泵',
                            code:'pump',
                            name:'泵',
                            sname:'泵',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'液位计',
                            code:'liquidlevelmeter',
                            name:'液位计',
                            sname:'液位计',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'流量计',
                            code:'flowmeter',
                            name:'流量计',
                            sname:'流量计',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'视频监控配置',
                            code:'video',
                            name:'视频监控配置',
                            sname:'视频监控',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'在线监测设备配置',
                            code:'onlinemonitoring',
                            name:'在线监测设备配置',
                            sname:'在线监测',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'可燃气体报警设备配置',
                            code:'combustiblegas',
                            name:'可燃气体报警设备配置',
                            sname:'可燃气体报警',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'H2S浓度报警设备配置',
                            code:'hydrogensulfide',
                            name:'H2S浓度报警设备配置',
                            sname:'H2S浓度报警',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'管线点',
                            code:'controlpoint',
                            name:'管线点',
                            sname:'管线点',
                            checked: true, // 默认选中状态
                            geom: GEOM_POINT
                        },
                        {
                            code:'管段',
                            code:'pipesegment',
                            name:'管段',
                            sname:'管段',
                            checked: true, // 默认选中状态