派生自 wuyushui/SewerAndRainNetwork

陈泽平
2021-05-17 bba9dae2c534caefd1009f3cc7b3889b58566de9
Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop
4个文件已修改
226 ■■■■ 已修改文件
src/components/LayerController/service/LayerFactory.js 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/service/WmsLayerService.js 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/conf/Constants.js 167 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/conf/layers/LayerPipeLines.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/LayerController/service/LayerFactory.js
@@ -17,16 +17,17 @@
    this.layersLogic = {}
    this.minZoomLayers = {}
    this.wmsLayers = []
    this.wmsLayerService = null
    // todo 待优化,wmslayerservice调用,放这里不合适
    this.clickSwitch = true // 图层点击弹窗开关
    this.hightlightLayer = options.L.featureGroup({}).addTo(window.map)
  }
  init (layerConfig) {
    this.initConfig(layerConfig)
    // wms服务只需要初始化一次
    this.wmsLayerService = new WmsLayerService(this.wmsLayers)
    this.wmsLayerService = new WmsLayerService()
    this.wmsLayerService.init()
    this.initConfig(layerConfig)
  }
  initConfig (layerConfig) {
@@ -42,8 +43,8 @@
          wmsGroupLayerService.init()
          continue
        } */
        layers && this.init(config.layers)
        childLayer && this.init(config.childLayer)
        layers && this.initConfig(config.layers)
        childLayer && this.initConfig(config.childLayer)
        this.initMinZoom(config)
        this.loadLogic(config)
@@ -77,10 +78,6 @@
        logic = new BusiLayer()
      } else if (type === SERVICE_TYPE.WFS) {
        logic = new WfsLayerService(config)
      } else if (type === SERVICE_TYPE.WMS) {
        var layer = {}
        layer[config.code] = config
        this.wmsLayers.push(layer)
      }
    }
    this.layersLogic[code] = logic
src/components/LayerController/service/WmsLayerService.js
@@ -29,9 +29,11 @@
    this.featureGroup = this.L.featureGroup({}).addTo(this.map)
    this.wmsLayerList = new WmsLayerList()
    for (var i = 0; i < layersConfig.length; i++) {
      const config = layersConfig[i]
      this.wmsLayerList.addConfig(config)
    if (layersConfig) {
      for (var i = 0; i < layersConfig.length; i++) {
        const config = layersConfig[i]
        this.wmsLayerList.addConfig(config)
      }
    }
    this.load()
  }
@@ -41,28 +43,24 @@
  }
  add (config) {
    console.log(config)
    this.wmsLayerList.addConfig(config)
    const layers = this.wmsLayerList.getLayers()
    const filter = this.wmsLayerList.getFilters()
    const layers = this.wmsLayerList.getLayers() || ''
    const filter = this.wmsLayerList.getFilters() || ''
    const params = {}
    if (filter) {
      params.cql_filter = filter
    }
    if (layers) {
      params.layers = layers
    }
    params.cql_filter = filter
    params.layers = layers
    console.log(this.wmsLayerList)
    this.wmsLayer.setParams(params)
  }
  remove (config) {
    console.log(config)
    this.wmsLayerList.remove(config.typeName, config.filter)
    const layers = this.wmsLayerList.getLayers()
    const filter = this.wmsLayerList.getFilters()
    const layers = this.wmsLayerList.getLayers() || ''
    const filter = this.wmsLayerList.getFilters() || ''
    const params = { layers: layers }
    if (filter) {
      params.cql_filter = filter
    }
    params.cql_filter = filter
    this.wmsLayer.setParams(params)
  }
@@ -109,13 +107,13 @@
        AjaxUtils.get4JsonDataByUrl(WMS_URL, params, (res) => {
          const features = res.data.features
          /**
           * {
           *     title: 'New Tab',
           *     name: newTabName,
           *     content: 'New Tab content'
           * }
           * @type {*[]}
           */
                     * {
                     *     title: 'New Tab',
                     *     name: newTabName,
                     *     content: 'New Tab content'
                     * }
                     * @type {*[]}
                     */
          const popupDatas = []
          if (features) {
            for (var i = 0; i < features.length; i++) {
src/conf/Constants.js
@@ -36,34 +36,141 @@
}
export const props = {
  code: '编号',
  name: '名称',
  teamname: '名称',
  pfktype: '排放口类型',
  level: '级别',
  length: '长度(m)',
  unitname: '单位名称',
  pipename: '管线名称',
  subchaname: '支线名称',
  subchacode: '支线编码',
  mediumtype: '输送介质',
  startposname: '起点位置名称',
  endposname: '终点位置名称',
  pressureating: '设计压力(MPa)',
  designtranyear: '设计输量(万立/年)',
  earningcapacity: '实际输量(万立/年)',
  buriedtime: '埋设时间',
  coatingmaterial: '防腐状况',
  inservicetime: '投产时间',
  reportname: '填报人姓名',
  reportphone: '填报人联系方式',
  diameter: '管径(mm)',
  meterial: '材质',
  pressuerating: '管道压力(Mpa)',
  embeddingmode: '埋设方式',
  pipetrenchtype: '管沟类型',
  datecollected: '探测时间',
  operationalstatus: '运行状态',
  fourtype: '四通类型',
  fourm: '四通材料'
  // 管网
  pipenet: {
    // 管网
    name: '名称',
    LINENUMTYPE: '管线类型',
    PIPENAME: '管线名称',
    MEDIUMTYPE: '输送介质',
    LENGTH: '长度(m)',
    STARTPOSNAME: '起点位置名称',
    ENDPOSNAME: '终点位置名称',
    BURIEDTIME: '埋设时间',
    COATINGMATERIAL: '防腐状况',
    INSERVICETIME: '投产时间',
    UNITNAME: '所属单位名称',
    ORGNAME: '所属企业名称',
    OPERATIONALSTATUS: '运行状态'
  },
  // 管线
  pipeline: {
  },
  // 窨井
  manhole: {
    type: '类型',
    wellmaterial: '井盖材质',
    HAVESAFETYNET: '是否有安全网',
    DATASOURCE: '数据来源',
    OPERATIONALSTATUS: '运行状态'
  },
  // 阀门
  valve: {
    VALVETYPE: '阀门类型',
    EXECUTAGENCYF: '执行机构形式',
    DATASOURCE: '数据来源',
    OPERATIONALSTATUS: '运行状态'
  },
  // 管廊(带)
  pipegallery: {
    DATASOURCE: '数据来源',
    OPERATIONALSTATUS: '运行状态'
  },
  // 管架(墩)
  piperack: {
    PIPERACKTYPE: '类型',
    PIPERACKST: '管架(墩)结构类型',
    LONGITUDINALPIPERACK: '是否有纵向架',
    DATASOURCE: '数据来源',
    OPERATIONALSTATUS: '运行状态'
  },
  // 三通
  tee: {
    TEETYPE: '三通类型',
    EXPORTCONNECTM: '出口连接方式',
    ENTRYCONTYPE: '入口连接方式',
    TEEM: '三通材料',
    BRANCHCONNTYPE: '支管连接类型',
    OPERATIONALSTATUS: '运行状态'
  },
  // 四通
  fourlink: {
    FOURTYPE: '四通类型',
    EXPORTCONTYPE: '出口连接方式',
    ENTRYCONTYPE: '入口连接方式',
    FOURM: '四通材料',
    BRANCHCONNTYPE1: '支线1连接方式',
    BRANCHCONNTYPE2: '支线2连接方式',
    OPERATIONALSTATUS: '运行状态'
  },
  // 弯头
  elbow: {
    ELBOWTYPE: '弯头类型',
    ELBOWMATERIAL: '弯头材料',
    ANTICORROS: '防腐材料',
    ENTRYCONNTYPE: '入口连接方式',
    OUTLETCONNTYPE: '出口连接方式',
    OPERATIONALSTATUS: '运行状态'
  },
  // 雨篦子
  raingate: {
    OPERATIONALSTATUS: '运行状态'
  },
  // 防火堤
  firedike: {
    OPERATIONALSTATUS: '运行状态'
  },
  // 集水池(罐)
  collectingbasin: {
    OPERATIONALSTATUS: '运行状态'
  },
  // 排放口
  dischargeport: {
    MEDIUMTYPE: '介质',
    PFKTYPE: '排放口类型',
    LEVEL: '级别',
    OPERATIONALSTATUS: '运行状态'
  },
  // 截流闸
  // 溢流堰
  overflowweir: {
    MEDIUMTYPE: '防溢介质',
    OPERATIONALSTATUS: '运行状态'
  },
  // 隔油池
  oilseparator: {
    OPERATIONALSTATUS: '运行状态'
  },
  // 水体
  pointhydrology: {
    HYDROTYPE: '水系类型',
    DRINKINGRESOURCEIND: '是否是饮用水源',
    SEASONALRIVERIND: '是否是季节性河流',
    RESERVOIRLOCATION: '水库位置',
    OPERATIONALSTATUS: '运行状态'
  },
  // 自然保护区
  pointpreservationzone: {
    DATASOURCE: '数据来源'
  },
  // 医院
  hospital: {
    HOSPITALLEAVAL: '医院资质等级',
    SUBTYPECD: '医院类型',
    DATASOURCE: '数据来源'
  },
  // 社会专业应急救援队伍
  emergencyres: {
    DATASOURCE: '数据来源'
  },
  // 应急物资
  emergencyesources: {
    DATASOURCE: '数据来源'
  },
  // 消防单位
  firefightingunit: {
    DATASOURCE: '数据来源'
  }
}
src/conf/layers/LayerPipeLines.js
@@ -17,7 +17,7 @@
      code: 'rainline',
      name: '雨水线',
      sname: '管网',
      checked: false,
      checked: true,
      type: SERVICE_TYPE.WMS,
      layerGroup: 'sewer:pipeline_group',
      typeName: 'sewer:pipeline',