From d0391dba3708d3f32bcd94e1881d1b598a0d9ef0 Mon Sep 17 00:00:00 2001 From: zhangshuaibao <15731629597@163.com> Date: 星期四, 15 四月 2021 17:21:10 +0800 Subject: [PATCH] 修改图表问题 --- src/components/LayerController/logic/WasteWater.js | 92 ++++++++++++++++++++++++++++++++++++++------- 1 files changed, 77 insertions(+), 15 deletions(-) diff --git a/src/components/LayerController/logic/WasteWater.js b/src/components/LayerController/logic/WasteWater.js index 8b66aa9..2ed9ee0 100644 --- a/src/components/LayerController/logic/WasteWater.js +++ b/src/components/LayerController/logic/WasteWater.js @@ -3,9 +3,15 @@ */ const AnimalService = require('../service/AnimalService').default const mapApi = require('../../../api/mapApi').default +// 寮圭獥鏁版嵁寮曡繘 +const publicBounced = require('../../BaseNav/PublicBounced/PublicBounced').default -const testValue1 = '/assets/images/map/wastewater/fs_green.png' -const testValue2 = '/assets/images/map/wastewater/fs_yellow.png' +const NormalImg = '/assets/images/map/wastewater/fs_bright_green.png' // 姝e父 +const OffImg = '/assets/images/map/wastewater/fs_gray.png' // 鍋滆繍 +const AbnormalImg = '/assets/images/map/wastewater/fs_blue.png' // 寮傚父 +const MissImg = '/assets/images/map/wastewater/fs_bright_green.png' // 缂哄け +const AlarmImg = '/assets/images/map/wastewater/fs_red.png' // 鎶ヨ闂儊 +const WarnImg = '/assets/images/map/wastewater/fs_orange.png' // 棰勮闂儊 module.exports = function () { /** @@ -18,9 +24,7 @@ layer: layer }) const res = await mapApi.getWasteWater() - // console.log(res) - const data = res.Result.DataInfo - // console.log(data) + const data = res.Result.DataInfo || {} for (let i = 0; i < data.length; i++) { // 缁忕含搴� 浣嶇疆 const positionX = data[i].Latitude @@ -29,35 +33,93 @@ // 瀹氫箟绫诲瀷 鐢ㄦ潵鍖哄垎鏁版嵁鐨勪笉鍚� const testValue = data[i].ContrLevel const iconUrl = this.differentTypes(testValue) - const marker = L.marker.magic([positionX, positionY], { + const marker = L.marker([positionX, positionY], { + test: data[i], icon: L.icon({ iconUrl: iconUrl, - iconSize: [50, 50], - iconAnchor: [25, 25] + iconSize: [35, 35], + iconAnchor: [18, 18] }) }) layer.addLayer(marker) } } + // 鍒嗗壊绾�------------------------------------------------------------------------------- + // this. this.bindTooltip = (layer) => { - return '娴嬭瘯搴熸按' + return layer.options.test.Name } - this.clickListener = (e) => { + this.clickListener = async (e) => { // console.log(e) this.animalService.pulseEffect(e.latlng) - return this.PublicBounced.$el + const dataValue = { + StoragePlaceId: e.layer.options.test.StoragePlaceId + } + const hourValue = { + onLineMonEmissPointId: '23', + monItemId: '28,31', + beginTime: '2020-04-06 15:13:20', + endTime: '2020-04-07 15:13:20', + dataType: '2' + } + const dateValue = { + onLineMonEmissPointId: '23', + monItemId: '28,31', + beginTime: '2020-04-06', + endTime: '2020-04-07', + dataType: '1' + } + const detailData = await mapApi.getWasteWaterMonitoringDetails(dataValue) // 鏄庣粏琛ㄨ繑鍥炴暟鎹� + const hourData = await mapApi.getQueryOnlineMonData(hourValue) // 灏忔椂鏁版嵁 + const dateData = await mapApi.getQueryOnlineMonData(dateValue) // 鏃ユ暟鎹� + // const drawback = await mapApi.getWasteWaterMonitoring() + const PublicBounced = window.Vue.extend(publicBounced) + const instance = new PublicBounced() + instance.setWaterData(e.layer.options.test, detailData.Result.DataInfo, hourData.Result.DataInfo, dateData.Result.DataInfo, 'feishui') + // console.log(e.layer.options.test) + instance.$mount() + document.body.appendChild(instance.$el) + this.setPanTo(e.latlng, 80) } // 鏍规嵁杩斿洖鍊肩殑涓嶅悓鏍囪涓嶅悓鍥剧墖 this.differentTypes = (testValue) => { let testChange - if (testValue === 1) { - testChange = testValue1 - } else { - testChange = testValue2 + switch (testValue) { + case 1: + testChange = NormalImg + break + case 2: + testChange = OffImg + break + case 3: + testChange = AbnormalImg + break + case 4: + testChange = MissImg + break + case 5: + testChange = NormalImg + break + case 6: + testChange = AlarmImg + break + case 7: + testChange = AbnormalImg + break + case 8: + testChange = WarnImg + break } return testChange } + this.setPanTo = (pos, value) => { + var position = pos + position = window.map.latLngToLayerPoint(position) + position.y += value + position = window.map.layerPointToLatLng(position) + window.map.flyTo(position) + } } -- Gitblit v1.8.0