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