派生自 wuyushui/SewerAndRainNetwork

徐旺旺
2021-04-20 7d02699a0b2d425f3f9f3dd6af872bbc1d352710
src/components/LayerController/logic/Company.js
@@ -2,16 +2,16 @@
 * 固废
 */
// 区分不同类型 使用不同img
const companyImg = '/assets/images/map/company.png'
const companyImg = '/assets/images/map/company_refining.png'
const mapApi = require('../../../api/mapApi').default
const AnimalService = require('../service/AnimalService').default
module.exports = function () {
  /**
     * 返回marker对象数组
     * @param L leaflet对象
     */
   * 返回marker对象数组
   * @param L leaflet对象
   */
  this.init = async (layer, L) => {
    // const SolidWasteIcon = this.SolidWasteIcon()
    this.animalService = new AnimalService({
@@ -19,7 +19,7 @@
      layer: layer
    })
    const res = await mapApi.getCompany()
    // console.log(res)
    console.log(res)
    const data = res.Result.DataInfo || {}
    for (let i = 0; i < data.length; i++) {
      // console.log(data[i])
@@ -28,33 +28,53 @@
      const positionY = data[i].Longitude
      var iconUrl = companyImg
      const marker = L.marker.magic([positionX, positionY], {
        icon: L.icon({
          iconUrl: iconUrl,
          iconSize: [50, 50],
          iconAnchor: [25, 25]
        }),
        test: data[i]
      })
      marker.bindTooltip(data[i].name, {
        permanent: true,
        offset: [0, -16],
        direction: 'top',
        className: ''
      const htmls = '<div><img src="' + iconUrl + '"><ul><li>' + data[i].name + '</li><li>' + data[i].name + '</li><li>' + data[i].name + '</li><li>' + data[i].name + '</li><li>' + data[i].name + '</li><li>' + data[i].name + '</li></ul></div>'
      var myIcon = L.divIcon({
        html: htmls,
        className: 'company-bindTooltip',
        iconSize: 16
      })
      const marker = L.marker([positionX, positionY], {
        /* icon: L.icon({
          iconUrl: iconUrl,
          iconSize: [30, 30],
          iconAnchor: [15, 15]
        }), */
        icon: myIcon,
        test: data[i]
      })
      /* const htmls = '<ul><li>' + data[i].name + '</li></ul>'
      marker.bindTooltip(htmls, {
        permanent: true,
        offset: [0, 5],
        direction: 'bottom',
        className: 'company-bindTooltip'
      }) */
      layer.addLayer(marker)
    }
  }
  /*
  * 点位鼠标移入弹框
  * */
  this.bindTooltip = (layer) => {
    // console.log(layer)
    // return layer.options.test.name
    console.log(layer)
    return '<div class="company-bindTooltip-hover"><h3>污染物产生统计</h3><ul>' +
                '<li>生产设施:30(个)</li>' +
                '<li>治理设施:30(个)</li>' +
            '</ul></div>'// layer.options.test.name
  }
  /*
  * 点位点击事件
  *
  * */
  this.clickListener = (e) => {
    // this.animalService.pulseEffect(e.latlng)
    console.log(e)
    const dataValue = {
      StoragePlaceId: e.layer.options.test.name
    }
    debugger
    console.log(dataValue)
    // return this.PublicBounced.$el
  }
}