From b9adfa8f6e54151b8f87dfade7866d2e60ce743e Mon Sep 17 00:00:00 2001 From: whycwx <1272078254@qq.com> Date: 星期五, 30 七月 2021 10:55:20 +0800 Subject: [PATCH] 机房列表 --- src/components/chart/chinaMap.vue | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 112 insertions(+), 0 deletions(-) diff --git a/src/components/chart/chinaMap.vue b/src/components/chart/chinaMap.vue index 83b24d4..c2a2746 100644 --- a/src/components/chart/chinaMap.vue +++ b/src/components/chart/chinaMap.vue @@ -6,7 +6,26 @@ <script> import * as echarts from 'echarts'; + // 姝e父鐨勫浘鏍� + import HomeNormalImage from '@/assets/img/home-normal.png'; + let homeNormalImage = new Image(); + homeNormalImage.src = HomeNormalImage; + // 鍏呯數鐨勫浘鏍� + import HomeChargeImage from '@/assets/img/home-charge.png'; + let homeChargeImage = new Image(); + homeChargeImage.src = HomeChargeImage; + // 鍛婅鍥炬爣 + import HomeWarnImage from '@/assets/img/home-warn.png'; + let homeWarnImage = new Image(); + homeWarnImage.src = HomeWarnImage; + // 鏀剧數鍥炬爣 + import HomeDischargeImage from '@/assets/img/home-discharge.png'; + let homeDischargeImage = new Image(); + homeDischargeImage.src = HomeDischargeImage; + let addHomeData = []; + let abnormalArr = []; //寮傚父鏁扮粍 + let tempData = []; //绔欑偣鏁扮粍 export default { name: "chinaMap", chart: "", @@ -114,6 +133,99 @@ }; this.setOption(option); }, + + // + initCityChart() { + searchMap().then((res) => { + let rs = JSON.parse(res.data.result); + let list = this.mergeMapInfos(rs); + if (list != undefined && list.length > 0) { + list.map((item, index) => { + item.name = item.StationName; + item.value = []; + item.value.push(item.longitude); + item.value.push(item.latitude); + tempData.push(item) + }) + this.searchChartHomeState(); + + let mapDotList = list.map(data => { + return { + lng: data.longitude, + lat: data.latitude, + title: data.StationName, + data: data, + name: data.StationName, + geometry: { + type: 'Point', + coordinates: [data.longitude, data.latitude] + } + } + }); + addHomeData = mapDotList; + } else { + this.initChart([], []); + } + }).catch((err) => { + console.log(err) + }) + }, + searchChartHomeState() { + this.$axios({ + method: "post", + url: 'BattMap_informationAction!findStationState', + data: null + }).then((res) => { + let rsState = JSON.parse(res.data.result); + let arr = []; + abnormalArr = []; + if (rsState.code === 1) { + let data = rsState.data; + data.map((item, i) => { + let infos = tempData.filter((jtem) => { + return jtem.StationId == item.StationId + }) + + if (infos.length > 0) { + let info = JSON.parse(JSON.stringify(infos[0])); + switch (item.num) { + case 1: // 钀藉悗 + info.img = HomeDischargeImage; + info.color = '#ff6a6a'; + abnormalArr.push(info); + break; + case 2: // 鍛婅 + info.img = HomeWarnImage; + info.color = '#d4ac6e'; + abnormalArr.push(info); + break; + case 3: + info.img = HomeChargeImage; + info.color = '#4ba1fa'; + abnormalArr.push(info); + break; + default: + info.img = HomeNormalImage; + break; + } + arr.push(info) + } + }) + let arrId = []; + for (let item of arr) { + if (arrId.indexOf(item['StationId']) == -1) { + arrId.push(item['StationId']); + chartData.push(item); + } + } + debugger + this.initChart(chartData, abnormalArr); + + } + }).catch((err) => { + console.log(err) + }) + }, resize() { setTimeout(() => { this.$options.chart.resize(); -- Gitblit v1.9.1