派生自 wuyushui/SewerAndRainNetwork

zhangshuaibao
2021-03-31 c92dd3fca165ddd8d73d29a640ec22c89c45260f
src/components/LayerController/logic/WasteGas.js
@@ -2,40 +2,47 @@
 * 废气
 */
const AnimalService = require('../service/AnimalService').default
const AjaxUtils = require('../../../utils/AjaxUtils').default
// const AjaxUtils = require('../../../utils/AjaxUtils').default
// 区分不同类型 使用不同img
const ImgBlue = '/assets/images/map/exhaust/fq_blue.png'
const ImgGray = '/assets/images/map/exhaust/fq_gray.png'
const ImagGreen = '/assets/images/map/exhaust/fq_green.png'
const ImagBright = '/assets/images/map/exhaust/fq_bright_green.png'
const mapApi = require('../../../api/mapApi').default
module.exports = function () {
  /**
   * 返回marker对象数组
   * @param L leaflet对象
   */
  this.init = (layer, L) => {
  this.init = async (layer, L) => {
    this.animalService = new AnimalService({ L: L, layer: layer })
    AjaxUtils.get4JsonDataByUrl('http://10.246.162.140:8080/EPInterface/DataService/EPMapService.asmx/ObtainningConInfo', {
      companyId: 3900100145,
      id: '',
      monType: 1,
      userCode: 'wenchun.deng',
      monDuration: '',
      epName: '',
      secdDeptId: '',
      contrLevel: '',
      dataStatus: '',
      dataFlag: '',
      runStatus: '',
      emissTypeId: ''
    }, function (res) {
      const data = res.data.Result.DataInfo
    const res = await mapApi.GetWasteGas()
    const data = res.Result.DataInfo || {}
    console.log(data)
      for (let i = 0; i < data.length; i++) {
        // 经纬度 位置
        const positionX = data[i].Latitude
        const positionY = data[i].Longitude
        layer.addLayer(L.marker([positionX, positionY], {}))
      }
      // 定义类型 用来区分数据
      const ContrLevel = data[i].ContrLevel
      var iconUrl = this.differentTypes(ContrLevel)
      const marker = L.marker.magic([positionX, positionY], {
        icon: L.icon({
          iconUrl: iconUrl,
          iconSize: [50, 50],
          iconAnchor: [25, 25]
    })
      })
      layer.addLayer(marker)
      // layer.addLayer(L.marker([positionX, positionY], {}))
    }
  }
  this.bindTooltip = (layer) => {
    console.log(layer)
    return '测试废气'
  }
@@ -43,4 +50,18 @@
    console.log(e)
    this.animalService.pulseEffect(e.latlng)
  }
  // 不同类型图片封装
  this.differentTypes = (ContrLevel) => {
    var effectOfChange
    if (ContrLevel === 1) {
      effectOfChange = ImgBlue
    } else if (ContrLevel === 2) {
      effectOfChange = ImagGreen
    } else if (ContrLevel === 3) {
      effectOfChange = ImagBright
    } else {
      effectOfChange = ImgGray
    }
    return effectOfChange
  }
}