/** * 废气 */ const AnimalService = require('../service/AnimalService').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_green2.png' // const ImagBright = '/assets/images/map/exhaust/fq_bright_green.png' const mapApi = require('../../../api/mapApi').default const publicBounced = require('../../BaseNav/PublicBounced/PublicBounced').default // const WasteGasChats = require('./WasteGasChats').default module.exports = function () { /** * 返回marker对象数组 * @param L leaflet对象 */ this.init = async (layer, L) => { // console.log(WasteGasChats) this.animalService = new AnimalService({ L: L, layer: layer }) const res = await mapApi.getWasteGas() // console.log(res) 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 // 定义类型 用来区分数据 const ContrLevel = data[i].ContrLevel var iconUrl = this.differentTypes(ContrLevel) // const marker = L.canvasMarker([positionX, positionY], { // img: { // // url: 'assets/images/map/marker-icon.png', // url: iconUrl, // size: STYLES.ICON_SIZE // } const marker = L.marker([positionX, positionY], { test: data[i], icon: L.icon({ iconUrl: iconUrl, iconSize: [30, 30], iconAnchor: [15, 15] }) }) layer.addLayer(marker) // layer.addLayer(L.marker([positionX, positionY], {})) } } this.bindTooltip = (layer) => { return layer.options.test.Name } this.clickListener = async (e) => { // console.log(e) this.animalService.pulseEffect(e.latlng) const dataValue = { StoragePlaceId: e.layer.options.test.StoragePlaceId } console.log(dataValue) const GasOnlinedata = { onLineMonEmissPointId: '23', monItemId: '28,31', beginTime: '2020-04-06 15:13:20', endTime: '2020-04-07 15:13:20', dataType: '1' } const GasManualData = { companyId: '3900100145', labMonPointId: '219', beginTime: '2020-04-06 15:13:20', endTime: ' 2020-04-07 15:13:20' } const ManualData = await mapApi.getWasteGasManualData(GasManualData) console.log(ManualData) const Mondata = await mapApi.getWasteGasMonData(GasOnlinedata) // console.log(Mondata) const result = await mapApi.getWasteGasDetails(dataValue) // console.log(result.Result.DataInfo) const PublicBounced = window.Vue.extend(publicBounced) const instance = new PublicBounced() // console.log(e.layer.options.test) instance.$mount() document.body.appendChild(instance.$el) instance.setGasData(e.layer.options.test, result.Result.DataInfo, Mondata.Result.DataInfo, ManualData.Result.DataInfo, 'feiqi') this.setPanTo(e.latlng, 150) console.log(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 } this.setPanTo = (pos, value) => { var position = pos position = window.map.latLngToLayerPoint(position) position.y += value position = window.map.layerPointToLatLng(position) window.map.flyTo(position) } }