From 69e41a0824b0a4737360a5e19929555279e7c292 Mon Sep 17 00:00:00 2001 From: xufenglei <xufenglei> Date: Sun, 08 Apr 2018 11:25:47 +0800 Subject: [PATCH] 报表优化 --- src/app/routes/report/report.component.html | 11 ++++- src/app/routes/report/report.component.ts | 103 +++++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 107 insertions(+), 7 deletions(-) diff --git a/src/app/routes/report/report.component.html b/src/app/routes/report/report.component.html index 42bf6e2..624bb1b 100644 --- a/src/app/routes/report/report.component.html +++ b/src/app/routes/report/report.component.html @@ -12,7 +12,7 @@ <div class="t_bg"> <img src="./assets/img/logo.png"> - <h1>{{title}}������������������������</h1> + <h1>{{title}}������������������</h1> <div class="container"> <div class="title"> <div class="title_left"></div> @@ -25,6 +25,10 @@ </div> </div> + + + + <div class="content"> <div *ngFor="let item of items;let i = index"> <div class="{{i % 2 == 0 ? 'left' : 'right'}}"> @@ -34,8 +38,8 @@ <div class="text_t_right"></div> <div class="clear_fix"></div> </div> - <p class="text1">���������������{{item.monitorPointAddress}}</p> - <p class="text1">���������������������{{item.deviceCount}}���</p> + <p *ngIf="item.monitorPointId" class="text1">���������������{{item.monitorPointAddress}}</p> + <p class="text1">������������������{{item.deviceCount}}���</p> <div class="clear_fix"></div> </div> </div> @@ -48,6 +52,7 @@ <div *ngFor="let i of sensorArr"> <div id="mydiv{{i}}" style="height: 485.35px; width: 1000px"></div> </div> + <!-- <div id="pieChar" style="height: 485.35px; width: 1000px"></div> --> </div> <div class="bg" *ngIf="!spinning"> diff --git a/src/app/routes/report/report.component.ts b/src/app/routes/report/report.component.ts index fbc4207..4fcfc16 100644 --- a/src/app/routes/report/report.component.ts +++ b/src/app/routes/report/report.component.ts @@ -75,6 +75,89 @@ } } + private pieCharOption: any = { + title: { + text: 'AQI������������������������', + x: 'center' + }, + tooltip: { + trigger: 'item', + formatter: "{a} <br/>{b}: {c} ({d}%)" + }, + legend: { + //x : 'center', + top: '10%', + data: ['PM 2.5', 'PM 10', '���������������CO���', '���������������SO������', '���������O������', '���������������NO������'] + }, + graphic: [{ + type: 'text', + left: '24%', + top: '49%', + style: { + text: '������������' + } + }, { + type: 'text', + left: '74%', + top: '49%', + style: { + text: '{b}' + } + } + ], + series: [ + { + name: '������������', + type: 'pie', + radius: ['30%', '50%'], + center: ['25%', '50%'], + label: { + normal: { + formatter: "{b}:{d}%" + } + }, + labelLine: { + normal: { + show: true + } + }, + data: [ + {value: 100, name: 'PM 2.5'}, + {value: 100, name: 'PM 10'}, + {value: 200, name: '���������������CO���'}, + {value: 200, name: '���������������SO������'}, + {value: 100, name: '���������O������'}, + {value: 100, name: '���������������NO������'} + ] + }, + { + name: '������������', + type: 'pie', + radius: ['30%', '50%'], + center: ['75%', '50%'], + label: { + normal: { + formatter: "{b}:{d}%", + } + }, + labelLine: { + normal: { + show: true, + } + }, + data: [ + {value: 0, name: 'PM 2.5'}, + {value: 0, name: 'PM 10'}, + {value: 100, name: '���������������CO���'}, + {value: 100, name: '���������������SO������'}, + {value: 100, name: '���������O������'}, + {value: 100, name: '���������������NO������'} + + ] + } + ] + }; + ngOnInit() { const params = JSON.parse(sessionStorage.getItem("queryParams")); if (!!params) { @@ -87,6 +170,7 @@ } else { const option = this.echartOption; const sensors = res.data.sensors; + const deviceCounts = res.data.deviceCounts; const timeArr = this.timeArr; const label = timeArr[this.typeArr.indexOf(timeType)]; option.xAxis.data = res.data.times; @@ -105,11 +189,15 @@ } for (let i = 0; i < items.length; i++) { this.title = items[i].formatTime; - const legendName = items[i].formatTime + label + (items[i].mac ? '������:'+items[i].deviceName : (items[i].monitorPointid?'���������:'+items[i].monitorPointName:items[i].areaName)); + items[i].deviceCount = deviceCounts[i]; + if (!items[i].monitorPointid) { + items[i].monitorPointName = items[i].areaName + } + const legendName = items[i].formatTime + label + (items[i].mac ? '������:' + items[i].deviceName : (items[i].monitorPointid ? '���������:' + items[i].monitorPointName : items[i].areaName)); option.legend.data[i] = legendName; option.series.push({ name: legendName, - data: res.data.datas[i]['data' + i][0][sensorKey], + data: res.data.datas[i][sensorKey], type: params.reportType, smooth: true, itemStyle: { @@ -134,12 +222,19 @@ for (let i = 0; i < title.length; i++) { this.title += title[i] + timeArr[i]; } + if (sensors.length % 2 == 0) { + this.pieCharOption.backgroundColor = 'rgba(0,0,0,0)'; + } else { + this.pieCharOption.backgroundColor = 'rgba(23,133,23,0.06)'; + } +// const myChart = echarts.init(document.getElementById('pieChar')); +// myChart.setOption(this.pieCharOption, true); +// window.onresize = myChart.resize; } }); - } else { this.msgSrv.error("������������������������������������"); - setTimeout("window.close();",1000); + setTimeout("window.close();", 1000); } } } -- Gitblit v1.8.0