From eef69fa1194f6ab215b08a8baaf402d0539362cc Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Tue, 31 Jul 2018 15:56:59 +0800
Subject: [PATCH] 日历完善,设备相关功能开发
---
src/app/routes/home-page/home-page/home-page.component.ts | 2
src/app/routes/systems/organization/organization-list/organization-list.component.ts | 2
src/app/routes/statistics/statistics.module.ts | 7
src/app/routes/enterprise-management/enterprise-data/enterprise-data.component.ts | 2
src/app/routes/statistics/calendar/calendar.component.html | 76 +--------
src/app/routes/devices/basic-info/device-edit/device-edit.component.ts | 6
src/app/routes/operation/device-status/device-status.component.html | 169 ++++++++++++--------
src/app/routes/reports/query2/query2.component.ts | 1
src/app/routes/statistics/calendar/calendar.component.ts | 90 ++++++++++-
src/app/routes/systems/organization/organization-config/organization-config.component.ts | 1
src/app/routes/devices/basic-info/device-edit/device-edit.component.html | 5
src/app/routes/statistics/calendar/aqi-detail/aqi-detail.component.html | 85 ++++++++++
src/app/routes/statistics/calendar/aqi-detail/aqi-detail.component.ts | 21 ++
src/app/routes/home-page/home-page/home-page.component.html | 2
14 files changed, 314 insertions(+), 155 deletions(-)
diff --git a/src/app/routes/devices/basic-info/device-edit/device-edit.component.html b/src/app/routes/devices/basic-info/device-edit/device-edit.component.html
index fa89a42..ae5e79e 100644
--- a/src/app/routes/devices/basic-info/device-edit/device-edit.component.html
+++ b/src/app/routes/devices/basic-info/device-edit/device-edit.component.html
@@ -110,13 +110,14 @@
������:
</span>
<nz-select style="width: 240px;" [(ngModel)]="configMap.orgId" (ngModelChange)="setOrgId($event)" [nzPlaceHolder]="'������ ������(������������������)'"
- nzAllowClear [nzFilter]="false" nzShowSearch (nzSearchChange)="orgSelectChange($event)" [nzNotFoundContent]="'������������'" >
+ nzAllowClear [nzFilter]="false" nzShowSearch (nzSearchChange)="orgSelectChange($event)" [nzNotFoundContent]="'������������'"
+ [nzDisabled]="!isEditState">
<nz-option *ngFor="let option of orgOptions" [nzLabel]="option.name" [nzValue]="option.id" [nzDisabled]="option.disabled">
</nz-option>
</nz-select>
<button nz-button type="button" (click)="close()">������</button>
- <button nz-button [nzType]="'primary'" (click)="save(null,validateForm.value,validateForm.valid)" [nzLoading]="isSaving">
+ <button nz-button *ngIf="isEditState" [nzType]="'primary'" (click)="save(null,validateForm.value,validateForm.valid)" [nzLoading]="isSaving">
<span>
������
<span *ngIf="isSaving">���</span>
diff --git a/src/app/routes/devices/basic-info/device-edit/device-edit.component.ts b/src/app/routes/devices/basic-info/device-edit/device-edit.component.ts
index 2c35a62..4fe30c2 100644
--- a/src/app/routes/devices/basic-info/device-edit/device-edit.component.ts
+++ b/src/app/routes/devices/basic-info/device-edit/device-edit.component.ts
@@ -13,6 +13,7 @@
import { ExampleService } from '@business/services/util/example.service';
import { Observable } from 'rxjs/Observable';
import { OrganizationService } from '@business/services/http/organization.service';
+import { debug } from 'util';
@Component({
selector: 'app-device-edit',
@@ -20,6 +21,7 @@
styles: []
})
export class DeviceEditComponent implements OnInit {
+ public isEditState = true;
public monitorPoints: any [] = [];
public professions: any [] = [];
public deviceVersions: any [] = [];
@@ -80,6 +82,10 @@
this.validateForm = this.formBuilder.group(
validates
);
+ if(!this.isEditState){
+ this.validateForm.disable();
+ }
+ this.validateForm
this.orgSelectChange();
const control = this.validateForm.controls['monitorPointId'];
control.valueChanges.subscribe(value => {
diff --git a/src/app/routes/enterprise-management/enterprise-data/enterprise-data.component.ts b/src/app/routes/enterprise-management/enterprise-data/enterprise-data.component.ts
index 00c4ebf..6200ead 100644
--- a/src/app/routes/enterprise-management/enterprise-data/enterprise-data.component.ts
+++ b/src/app/routes/enterprise-management/enterprise-data/enterprise-data.component.ts
@@ -206,7 +206,6 @@
// ������������ tree click ������
this.treeClickStream.debounceTime(1).subscribe( event => {
const data = event.node.data;
- // console.log(data);
if (data.id === -1) {
const children = data.children;
// ������������
@@ -582,7 +581,6 @@
this.reloadChartTitle();
// ������������
this.grid.data = [];
- console.log(lineChartCriteria);
this.http.post('/report/line-chart', lineChartCriteria).subscribe(
(res: ResultBean<{[key: string]: Array<Array<number>>}>) => {
if (res.code === 1) {
diff --git a/src/app/routes/home-page/home-page/home-page.component.html b/src/app/routes/home-page/home-page/home-page.component.html
index 612f176..e940d80 100644
--- a/src/app/routes/home-page/home-page/home-page.component.html
+++ b/src/app/routes/home-page/home-page/home-page.component.html
@@ -173,7 +173,7 @@
</th>
<th nz-th class="text-right">
<span>������({{selectedApiSortedItem.unit}})</span>
- <nz-table-sort (nzValueChange)="aqiSortedTableSort('sum',$event)"></nz-table-sort>
+ <nz-table-sort (nzValueChange)="aqiSortedTableSort('avg',$event)"></nz-table-sort>
</th>
</tr>
</thead>
diff --git a/src/app/routes/home-page/home-page/home-page.component.ts b/src/app/routes/home-page/home-page/home-page.component.ts
index e88e860..b3b1f38 100644
--- a/src/app/routes/home-page/home-page/home-page.component.ts
+++ b/src/app/routes/home-page/home-page/home-page.component.ts
@@ -163,7 +163,6 @@
this.aqiData = aqiData;
this.aqiDataLoading = false;
}
- console.log(this.aqiData);
}
);
}
@@ -396,7 +395,6 @@
// windDirData = windDirData.length > 2 ? windDirData.substr(1) : windDirData;
if(index == 0 ) {
const windDirName = this.winToChName(windDirData);
- console.log(windDirName);
windDirsData.push(
{
value: windDirName,
diff --git a/src/app/routes/operation/device-status/device-status.component.html b/src/app/routes/operation/device-status/device-status.component.html
index 18ebd9e..367d58a 100644
--- a/src/app/routes/operation/device-status/device-status.component.html
+++ b/src/app/routes/operation/device-status/device-status.component.html
@@ -1,72 +1,109 @@
<div class="content__title">
- <h1>
- ������������
- <small>������������������������������������</small>
- </h1>
+ <h1>
+ ������������
+ <small>������������������������������������</small>
+ </h1>
+</div>
+<nz-card [nzBordered]="false">
+ <nz-spin [nzSpinning]="false">
+ <nz-row nzGutter="8">
+ <div nz-col nzXs="24" nzSm="12" nzMd="8" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-primary rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ 2598
+ </div>
+ <p class="text-nowrap mb0">������������</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="8" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-success rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ 2510
+ </div>
+ <p class="text-nowrap mb0">������������</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="8" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-orange rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ 88
+ </div>
+ <p class="text-nowrap mb0">������������</p>
+ </div>
+ </div>
+ </div>
+ </nz-row>
+ </nz-spin>
+</nz-card>
+<nz-card [nzBordered]="false">
+ <div nz-row class="mb-sm">
+ <div nz-col [nzSpan]="4">
+ <button nz-button (click)="addOrModify($event)" [nzType]="'primary'" [nzSize]="'large'">
+ <i class="anticon anticon-plus"></i>
+ <span>������</span>
+ </button>
+ <ng-container *ngIf="selectedRows.length > 0">
+ <button nz-button [nzSize]="'large'" (click)="deleteSelected()">������������</button>
+ </ng-container>
+ </div>
+ <div nz-col [nzSpan]="7">
+ <span style="padding: 5px 10px;">
+ ������:
+ </span>
+ <nz-select style="width: 79%;" [(ngModel)]="queryMap.orgId" (ngModelChange)="setOrgId($event)" [nzPlaceHolder]="'������ ������(������������������)'"
+ nzAllowClear [nzFilter]="false" nzShowSearch (nzSearchChange)="orgSelectChange($event)" [nzNotFoundContent]="'������������'">
+ <nz-option *ngFor="let option of orgOptions" [nzLabel]="option.name" [nzValue]="option.id" [nzDisabled]="option.disabled">
+ </nz-option>
+ </nz-select>
+ </div>
+ <div nz-col [nzSpan]="7">
+ <span style="padding: 5px 10px;">
+ ���������:
+ </span>
+ <nz-select style="width: 75%;" [(ngModel)]="queryMap.mpointId" (ngModelChange)="setMpointId($event)" [nzPlaceHolder]="'������ ���������������(������������������)'"
+ nzAllowClear [nzFilter]="false" nzShowSearch (nzSearchChange)="monitorPointChange($event)" [nzNotFoundContent]="'������������'">
+ <nz-option *ngFor="let option of monitorPoints" [nzLabel]="option.name" [nzValue]="option.id" [nzDisabled]="option.disabled">
+ </nz-option>
+ </nz-select>
+ </div>
+ <div nz-col [nzSpan]="6">
+ <nz-input [ngStyle]="{'width': '240px','float':'right'}" [(ngModel)]="queryText" name="" [nzPlaceHolder]="'������������������������������mac'"
+ (keyup)="queryTextChanged($event)" (change)="queryTextChanged($event)"></nz-input>
+ </div>
</div>
- <nz-card [nzBordered]="false">
- <div nz-row class="mb-sm">
- <div nz-col [nzSpan]="4">
- <button nz-button (click)="addOrModify($event)" [nzType]="'primary'" [nzSize]="'large'">
- <i class="anticon anticon-plus"></i><span>������</span>
- </button>
- <ng-container *ngIf="selectedRows.length > 0">
- <button nz-button [nzSize]="'large'" (click)="deleteSelected()">������������</button>
- </ng-container>
- </div>
- <div nz-col [nzSpan]="7">
- <span style="padding: 5px 10px;">
- ������:
- </span>
- <nz-select style="width: 79%;" [(ngModel)]="queryMap.orgId" (ngModelChange)="setOrgId($event)" [nzPlaceHolder]="'������ ������(������������������)'"
- nzAllowClear [nzFilter]="false" nzShowSearch (nzSearchChange)="orgSelectChange($event)" [nzNotFoundContent]="'������������'" >
- <nz-option *ngFor="let option of orgOptions" [nzLabel]="option.name" [nzValue]="option.id" [nzDisabled]="option.disabled">
- </nz-option>
- </nz-select>
- </div>
- <div nz-col [nzSpan]="7">
- <span style="padding: 5px 10px;">
- ���������:
- </span>
- <nz-select style="width: 75%;" [(ngModel)]="queryMap.mpointId" (ngModelChange)="setMpointId($event)" [nzPlaceHolder]="'������ ���������������(������������������)'"
- nzAllowClear [nzFilter]="false" nzShowSearch (nzSearchChange)="monitorPointChange($event)" [nzNotFoundContent]="'������������'" >
- <nz-option *ngFor="let option of monitorPoints" [nzLabel]="option.name" [nzValue]="option.id" [nzDisabled]="option.disabled">
- </nz-option>
- </nz-select>
- </div>
- <div nz-col [nzSpan]="6">
- <nz-input [ngStyle]="{'width': '240px','float':'right'}" [(ngModel)]="queryText" name="" [nzPlaceHolder]="'������������������������������mac'"
- (keyup)="queryTextChanged($event)" (change)="queryTextChanged($event)" ></nz-input>
- </div>
- </div>
- <div class="mb-md">
- <nz-alert *ngIf="selectedRows.length > 0" [nzType]="'info'" [nzShowIcon]="true">
- <span alert-body>
- ���������<strong class="text-primary">{{selectedRows.length}}</strong>���
- </span>
- </nz-alert>
- </div>
- <simple-table #simpleTable [data]="listUrl" [extraParams]="extraParams" [columns]="columns" [showTotal]="true"
- [reqReName]="{pi: 'pageIndex',ps: 'pageSize'}" (checkboxChange)="checkboxChange($event)" [ps]="10" [resReName]="{list: 'data',total: 'total'}">
- <ng-template st-row="state-badge" let-item let-index="index">
+ <div class="mb-md">
+ <nz-alert *ngIf="selectedRows.length > 0" [nzType]="'info'" [nzShowIcon]="true">
+ <span alert-body>
+ ���������
+ <strong class="text-primary">{{selectedRows.length}}</strong>���
+ </span>
+ </nz-alert>
+ </div>
+ <simple-table #simpleTable [data]="listUrl" [extraParams]="extraParams" [columns]="columns" [showTotal]="true" [reqReName]="{pi: 'pageIndex',ps: 'pageSize'}"
+ (checkboxChange)="checkboxChange($event)" [ps]="10" [resReName]="{list: 'data',total: 'total'}">
+ <ng-template st-row="state-badge" let-item let-index="index">
<ng-container [ngSwitch]="item.state">
- <span *ngSwitchCase="'0'">
- <nz-badge [nzStatus]="'success'" [nzText]="'������'"></nz-badge>
- </span>
- <span *ngSwitchCase="'1'">
- <nz-badge [nzStatus]="'processing'" [nzText]="'������'"></nz-badge>
- </span>
- <span *ngSwitchCase="'2'">
- <nz-badge [nzStatus]="'warning'" [nzText]="'������'"></nz-badge>
- </span>
- <span *ngSwitchCase="'3'">
- <nz-badge [nzStatus]="'error'" [nzText]="'������'"></nz-badge>
- </span>
- <span *ngSwitchDefault>
- <nz-badge [nzStatus]="'default'" [nzText]="'������'"></nz-badge>
- </span>
+ <span *ngSwitchCase="'0'">
+ <nz-badge [nzStatus]="'success'" [nzText]="'������'"></nz-badge>
+ </span>
+ <span *ngSwitchCase="'1'">
+ <nz-badge [nzStatus]="'processing'" [nzText]="'������'"></nz-badge>
+ </span>
+ <span *ngSwitchCase="'2'">
+ <nz-badge [nzStatus]="'warning'" [nzText]="'������'"></nz-badge>
+ </span>
+ <span *ngSwitchCase="'3'">
+ <nz-badge [nzStatus]="'error'" [nzText]="'������'"></nz-badge>
+ </span>
+ <span *ngSwitchDefault>
+ <nz-badge [nzStatus]="'default'" [nzText]="'������'"></nz-badge>
+ </span>
</ng-container>
</ng-template>
</simple-table>
- </nz-card>
-
+</nz-card>
diff --git a/src/app/routes/reports/query2/query2.component.ts b/src/app/routes/reports/query2/query2.component.ts
index 190a68d..6b01c89 100644
--- a/src/app/routes/reports/query2/query2.component.ts
+++ b/src/app/routes/reports/query2/query2.component.ts
@@ -262,7 +262,6 @@
// ������������ tree click ������
this.treeClickStream.debounceTime(1).subscribe( event => {
const data = event.node.data;
- // console.log(data);
if (data.id === -1) {
const children = data.children;
// ������������
diff --git a/src/app/routes/statistics/calendar/aqi-detail/aqi-detail.component.html b/src/app/routes/statistics/calendar/aqi-detail/aqi-detail.component.html
new file mode 100644
index 0000000..19fe309
--- /dev/null
+++ b/src/app/routes/statistics/calendar/aqi-detail/aqi-detail.component.html
@@ -0,0 +1,85 @@
+<div class="modal-header">
+ <div class="modal-title">{{formatDate}} ������������</div>
+</div>
+<nz-row nzGutter="8">
+ <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-primary rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ {{ dayData.data.quality }}
+ </div>
+ <p class="text-nowrap mb0">������������</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-success rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ {{ dayData.data.CO }} <small>ug/m3</small>
+ </div>
+ <p class="text-nowrap mb0">������������</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-orange rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ {{ dayData.data.O3 }} <small>mg/m3</small>
+ </div>
+ <p class="text-nowrap mb0">������</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-pink rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ {{ dayData.data.NO2 }} <small>mg/m3</small>
+ </div>
+ <p class="text-nowrap">������������</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-primary rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ {{ dayData.data.AQI }}
+ </div>
+ <p class="text-nowrap mb0">AQI</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-success rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ {{ dayData.data.SO2 }} <small>mg/m3</small>
+ </div>
+ <p class="text-nowrap mb0">������������</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-orange rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ {{ dayData.data.PM10 }} <small>mg/m3</small>
+ </div>
+ <p class="text-nowrap mb0">PM10</p>
+ </div>
+ </div>
+ </div>
+ <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
+ <div nz-row nzType="flex" nzAlign="middle" class="bg-pink rounded-md">
+ <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
+ <div style="height: 40px;" class="h2 mt0">
+ {{ dayData.data.PM2_5 }} <small>mg/m3</small>
+ </div>
+ <p class="text-nowrap">PM2.5</p>
+ </div>
+ </div>
+ </div>
+</nz-row>
\ No newline at end of file
diff --git a/src/app/routes/statistics/calendar/aqi-detail/aqi-detail.component.ts b/src/app/routes/statistics/calendar/aqi-detail/aqi-detail.component.ts
new file mode 100644
index 0000000..f1091e7
--- /dev/null
+++ b/src/app/routes/statistics/calendar/aqi-detail/aqi-detail.component.ts
@@ -0,0 +1,21 @@
+import { Component, OnInit } from '@angular/core';
+import { _HttpClient } from '@delon/theme';
+import { Moment } from 'moment';
+
+@Component({
+ selector: 'app-aqi-detail',
+ templateUrl: './aqi-detail.component.html',
+})
+export class AqiDetailComponent implements OnInit {
+ public dayData;
+ public selectedMoment:Moment;
+ constructor(
+ private http: _HttpClient
+ ) { }
+ public get formatDate(): string {
+ return this.selectedMoment.format('YYYY-MM-DD');
+ }
+ ngOnInit() {
+ }
+
+}
diff --git a/src/app/routes/statistics/calendar/calendar.component.html b/src/app/routes/statistics/calendar/calendar.component.html
index 0fe6701..49de164 100644
--- a/src/app/routes/statistics/calendar/calendar.component.html
+++ b/src/app/routes/statistics/calendar/calendar.component.html
@@ -1,11 +1,17 @@
+<div class="content__title">
+ <h1>
+ ������������
+ <small>������������������������</small>
+ </h1>
+</div>
<div nz-row [nzGutter]="24" style="padding: 20px">
<div nz-col nzXs="24" nzMd="24">
<div nz-form-control nz-col [nzSm]="20">
<nz-card [nzBordered]="false">
<nz-calendar [nzLocale]="'zh-cn'" >
<ng-template #dateCell let-day>
- <div *ngIf="!isExpire(day.date)" style="width: 80px;height: 80px;display: block;position: absolute;" (click)="calendarClick(day.date)">
+ <div *ngIf="!isExpire(day.date) && isCellExist(day.date)" style="width: 80px;height: 80px;display: block;position: absolute;" (click)="calendarClick(day.date)">
<nz-badge [nzStatus]="calendarDayCells[day.date|date:'dd']['status']" [nzText]="calendarDayCells[day.date|date:'dd']['statusName']" ></nz-badge>
<!-- <nz-badge [nzStatus]="'success'" [nzText]="'Sunday'" *ngIf="(day.date|date:'EEE')==='Sun'"></nz-badge>
{{day.date|date:'EEE'}}
@@ -16,72 +22,6 @@
</nz-calendar>
</nz-card>
</div>
- </div>
- <div nz-col nzXs="24" nzSm="12" nzMd="24" nzLg="15">
- <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
- <div nz-row nzType="flex" nzAlign="middle" class="bg-primary rounded-md">
- <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
- <div style="height: 40px;" class="h2 mt0">100</div>
- <p class="text-nowrap mb0">AQI</p>
- </div>
- </div>
- </div>
- <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
- <div nz-row nzType="flex" nzAlign="middle" class="bg-success rounded-md">
- <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
- <div style="height: 40px;" class="h2 mt0">30 ���</div>
- <p class="text-nowrap mb0">������</p>
- </div>
- </div>
- </div>
- <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
- <div nz-row nzType="flex" nzAlign="middle" class="bg-orange rounded-md">
- <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
- <div style="height: 40px;" class="h2 mt0">2.5</div>
- <p class="text-nowrap mb0">������</p>
- </div>
- </div>
- </div>
- <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
- <div nz-row nzType="flex" nzAlign="middle" class="bg-pink rounded-md">
- <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
- <div style="height: 40px;" class="h2 mt0">78 mg/m��</div>
- <p class="text-nowrap">PM2.5</p>
- </div>
- </div>
- </div>
- <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
- <div nz-row nzType="flex" nzAlign="middle" class="bg-primary rounded-md">
- <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
- <div style="height: 40px;" class="h2 mt0">100</div>
- <p class="text-nowrap mb0">AQI</p>
- </div>
- </div>
- </div>
- <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
- <div nz-row nzType="flex" nzAlign="middle" class="bg-success rounded-md">
- <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
- <div style="height: 40px;" class="h2 mt0">30 ���</div>
- <p class="text-nowrap mb0">������</p>
- </div>
- </div>
- </div>
- <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
- <div nz-row nzType="flex" nzAlign="middle" class="bg-orange rounded-md">
- <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
- <div style="height: 40px;" class="h2 mt0">2.5</div>
- <p class="text-nowrap mb0">������</p>
- </div>
- </div>
- </div>
- <div nz-col nzXs="24" nzSm="12" nzMd="6" class="mb-md">
- <div nz-row nzType="flex" nzAlign="middle" class="bg-pink rounded-md">
- <div nz-col nzSpan="24" class="p-md text-white" style="height: 90px;text-align: center;">
- <div style="height: 40px;" class="h2 mt0">78 mg/m��</div>
- <p class="text-nowrap">PM2.5</p>
- </div>
- </div>
- </div>
- </div>
+ </div>
</div>
diff --git a/src/app/routes/statistics/calendar/calendar.component.ts b/src/app/routes/statistics/calendar/calendar.component.ts
index 09e03c1..2ba1c98 100644
--- a/src/app/routes/statistics/calendar/calendar.component.ts
+++ b/src/app/routes/statistics/calendar/calendar.component.ts
@@ -1,9 +1,11 @@
import { Component, OnInit, OnDestroy } from '@angular/core';
import { NzMessageService } from 'ng-zorro-antd';
-import { _HttpClient } from '@delon/theme';
+import { _HttpClient, ModalHelper } from '@delon/theme';
import { HttpClient } from '@angular/common/http';
import * as moment from 'moment';
import { DeviceService } from '@business/services/http/device.service';
+import { TimeUnits } from '@business/enum/types.enum';
+import { AqiDetailComponent } from './aqi-detail/aqi-detail.component';
@Component({
selector: 'statistics-calender',
@@ -25,6 +27,7 @@
private deviceService: DeviceService,
private http: _HttpClient,
public msg: NzMessageService,
+ private modalHelper: ModalHelper,
private http2: HttpClient) {
}
@@ -37,22 +40,93 @@
data: {}
}
}
- // console.log(this.calendarDayCells);
+ const startTime = this.getPeriodDate(new Date(),TimeUnits.DAY,'start');
+ const endTime = this.getPeriodDate(new Date(),TimeUnits.HOUR,'end');
+ this.http.get(
+ 'demo/get-dayaqis',{
+ startTime: startTime,
+ endTime: endTime
+ }
+ ).subscribe(
+ (res: any[]) => {
+ if(!!res && res.length >0) {
+ Object.keys(this.calendarDayCells).forEach(
+ (key) => {
+ const index = Number(key) -1;
+ if(res.length > index){
+ const data = res[index];
+ if(!!data) {
+ const aqiJson = JSON.parse(data.aqi_json);
+ const cell = this.calendarDayCells[key];
+ cell.data = aqiJson;
+ cell.statusName = aqiJson.quality;
+ switch(aqiJson.quality) {
+ case '���' : cell.status = 'success';break;
+ case '���' : cell.status = 'success';break;
+ case '������������' : cell.status = 'warning';break;
+ case '������������' : cell.status = 'warning';break;
+ case '������������' : cell.status = 'error';break;
+ default: cell.status = 'success';break;
+ }
+ }
+ }
+ }
+ );
+ }
+ }
+ );
}
-
+ private getPeriodDate(value: Date , timeUnit: TimeUnits,type?: 'start'|'end' ): Date {
+ let month = 0;
+ let day = 1;
+ let hour = 0;
+ let minute = 0;
+ let second = 0;
+ let millisecond = 0;
+ if ('end' === type) {
+ month = 11;
+ day = 31;
+ hour = 23;
+ minute = 59;
+ second = 59;
+ millisecond = 999;
+ }
+ const mo = moment(value);
+ switch ( timeUnit ) {
+ case TimeUnits.MONTH:
+ mo.month(month).date(day).hour(hour).minute(minute).second(second).millisecond(millisecond); break;
+ case TimeUnits.DAY:
+ mo.date(day).hour(hour).minute(minute).second(second).millisecond(millisecond); break;
+ case TimeUnits.HOUR:
+ mo.hour(hour).minute(minute).second(second).millisecond(millisecond); break;
+ case TimeUnits.MINUTE:
+ mo.minute(minute).second(second).millisecond(millisecond); break;
+ // case TimeUnits.MINUTE:
+ // mo.second(second).millisecond(millisecond); break;
+ }
+ return mo.toDate();
+ }
ngOnDestroy(): void {
}
// ��������������� ���������
calendarClick(mo: moment.Moment) {
- console.log(mo.format('DD'));
+ // console.log(mo.format('DD'));
+ const dayKey = mo.format('DD');
+ const selectedMoment = mo;
+ const dayData = this.calendarDayCells[dayKey];
+ if( !!dayData ) {
+ this.modalHelper.open( AqiDetailComponent, { dayData,selectedMoment }).subscribe(
+ res => {}
+ );
+ }
}
public isExpire(mo: moment.Moment):boolean {
- // console.log(moment().valueOf());
- // console.log(mo.valueOf());
- // console.log(moment().valueOf() < mo.valueOf());
return moment().valueOf() < mo.valueOf();
}
+ public isCellExist(mo: moment.Moment):boolean {
+ return !!this.calendarDayCells[mo.format('DD')];
+ }
loadCalendar(event) {
- console.log(event);
+ // console.log(event);
}
}
diff --git a/src/app/routes/statistics/statistics.module.ts b/src/app/routes/statistics/statistics.module.ts
index 1b617b1..05bed05 100644
--- a/src/app/routes/statistics/statistics.module.ts
+++ b/src/app/routes/statistics/statistics.module.ts
@@ -9,6 +9,7 @@
import { CalendarComponent } from './calendar/calendar.component';
import { MonitorpointComponent } from './monitorpoint/monitorpoint.component';
import { NzCalendarModule } from 'ng-zorro-antd';
+import { AqiDetailComponent } from './calendar/aqi-detail/aqi-detail.component';
const routes: Routes = [
{
@@ -21,7 +22,9 @@
}
];
-const COMPONENT_NOROUNT = [];
+const COMPONENT_NOROUNT = [
+ AqiDetailComponent,
+];
@NgModule({
imports: [
@@ -38,7 +41,7 @@
...COMPONENT_NOROUNT,
AnalysisComponent,
CalendarComponent,
- MonitorpointComponent
+ MonitorpointComponent,
],
entryComponents: COMPONENT_NOROUNT
})
diff --git a/src/app/routes/systems/organization/organization-config/organization-config.component.ts b/src/app/routes/systems/organization/organization-config/organization-config.component.ts
index fe80593..e0827eb 100644
--- a/src/app/routes/systems/organization/organization-config/organization-config.component.ts
+++ b/src/app/routes/systems/organization/organization-config/organization-config.component.ts
@@ -64,7 +64,6 @@
const alarmLevels = alarmConfigValue.alarmLevels;
const alarmLevelsGroupsConfig = {};
Object.keys(alarmLevels).forEach(key => {
-
let increment = alarmLevels[key].increment;
increment = increment == null || increment.length !== 3 ? [0, 0, 0] : increment;
const incrementArray = this.formBuilder.array([
diff --git a/src/app/routes/systems/organization/organization-list/organization-list.component.ts b/src/app/routes/systems/organization/organization-list/organization-list.component.ts
index 3cce5b9..b9828f6 100644
--- a/src/app/routes/systems/organization/organization-list/organization-list.component.ts
+++ b/src/app/routes/systems/organization/organization-list/organization-list.component.ts
@@ -239,7 +239,6 @@
this.organizationService.handle = 'screen' ;
this.organizationService.data = row;
this.organizationService.config['resultBean'] = res;
- console.log(res);
this.organizationService.title = '������������������';
}
}
@@ -257,7 +256,6 @@
this.organizationService.handle = 'unit' ;
this.organizationService.data = row;
this.organizationService.config['resultBean'] = res;
- console.log(res);
this.organizationService.title = '������������������';
}
}
--
Gitblit v1.8.0