From fdde9a5cb356933bac26b64b67b53167ce2f41bd Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Thu, 17 May 2018 10:03:29 +0800
Subject: [PATCH] 行业 优化
---
src/app/routes/report/report.component.ts | 2
src/app/routes/reports/demo/demo.component.ts | 61 ++++++---------
src/app/routes/reports/excel/excel.component.html | 93 +++++++++++++----------
src/app/routes/reports/excel/excel.component.ts | 30 ++++---
src/app/routes/reports/demo/demo.component.html | 4
5 files changed, 97 insertions(+), 93 deletions(-)
diff --git a/src/app/routes/report/report.component.ts b/src/app/routes/report/report.component.ts
index 49d5917..85643f5 100644
--- a/src/app/routes/report/report.component.ts
+++ b/src/app/routes/report/report.component.ts
@@ -234,7 +234,7 @@
for (const key in res.data.sortList[i]) {
const split = key.split('-');
this.sensorKeys.forEach(sensor => {
- if (sensor.key === split[0]) {
+ if (sensor.key === split[0] && res.data.sortList[i][key] != 0) {
this.resultArr.push({
sensorName: sensor.name,
monitorPointName: this.items[split[1]].showName,
diff --git a/src/app/routes/reports/demo/demo.component.html b/src/app/routes/reports/demo/demo.component.html
index cfc510a..5114441 100644
--- a/src/app/routes/reports/demo/demo.component.html
+++ b/src/app/routes/reports/demo/demo.component.html
@@ -92,7 +92,7 @@
</div>
<div nz-form-control class="flex-1">
<nz-select [(ngModel)]="item.monitorPoint" name="monitorPoint{{item.id}}" [nzPlaceHolder]="'��������� ������������'" [nzSize]="'large'"
- [nzNotFoundContent]="'������������'" (ngModelChange)="monitorPointChange($event,i)" nzShowSearch nzAllowClear>
+ [nzNotFoundContent]="'������������'" (ngModelChange)="getDevices(i)" nzShowSearch nzAllowClear>
<nz-option *ngFor="let option of item.monitorPointOptions" [nzLabel]="option['name']" [nzValue]="option"> </nz-option>
</nz-select>
</div>
@@ -104,7 +104,7 @@
<label >������</label>
</div>
<div nz-form-control class="flex-1">
- <nz-select [(ngModel)]="item.profession" name="profession{{item.id}}" [nzSize]="'large'" [nzPlaceHolder]="'��������� ������'" nzAllowClear (ngModelChange)="professionChange($event,i)" >
+ <nz-select [(ngModel)]="item.profession" name="profession{{item.id}}" [nzSize]="'large'" [nzPlaceHolder]="'��������� ������'" nzAllowClear (ngModelChange)="getDevices(i)" >
<nz-option *ngFor="let option of professionOptions" [nzLabel]="option.name" [nzValue]="option" ></nz-option>
</nz-select>
</div>
diff --git a/src/app/routes/reports/demo/demo.component.ts b/src/app/routes/reports/demo/demo.component.ts
index ee873aa..50cbc76 100644
--- a/src/app/routes/reports/demo/demo.component.ts
+++ b/src/app/routes/reports/demo/demo.component.ts
@@ -82,10 +82,10 @@
}
dimensionChange(value) {
- this.items.forEach((item,index) => {
+ this.items.forEach((item, index) => {
item.profession = null;
item.monitorPoint = null;
- item.device = null;
+ this.getDevices(index);
});
if (value === 'monitorPoint') {
this.professionShow = false;
@@ -181,9 +181,8 @@
let areaName = '';
const option = event.option;
this.items[i].monitorPoint = null;
- this.items[i].profession = null;
+ //this.items[i].profession = null;
this.items[i].areaCode = null;
- this.items[i].device = null;
switch (event.index) {
case 0:
@@ -211,42 +210,30 @@
this.items[i].monitorPointOptions = res.data;
}
});
+ this.getDevices(i);
}
-
- monitorPointChange(value, i) {
- this.items[i].deviceOptions = [];
+
+ getDevices(i) {
this.items[i].device = null;
- if (value) {
- this.http.get(environment.SERVER_BASH_URL + 'device/monitorPointId', {params: {monitorPointId: value.id}}).subscribe((res: any) => {
- if (res.code === 0) {
- this.msgSrv.error(res.message);
- } else {
- this.items[i].deviceOptions = res.data;
- }
- });
+ if (!!this.items[i].profession) {
+ this.items[i].professionId = this.items[i].profession.id;
+ } else {
+ this.items[i].professionId = null;
}
- }
-
- professionChange(value, i) {
- this.items[i].deviceOptions = [];
- this.items[i].device = null;
- if (value) {
- if (!!this.items[i].areaName) {
- this.items[i].professionId = value.id;
- this.http.get(environment.SERVER_BASH_URL + 'device/professionId', {params: this.items[i]}).subscribe((res: any) => {
- if (res.code === 0) {
- this.msgSrv.error(res.message);
- } else {
- this.items[i].deviceOptions = res.data;
- }
- });
+ if (!!this.items[i].monitorPoint) {
+ this.items[i].monitorPointId = this.items[i].monitorPoint.id;
+ } else {
+ this.items[i].monitorPointId = null;
+ }
+ return this.http.get(environment.SERVER_BASH_URL + 'device/professionId', {params: this.items[i]}).subscribe((res: any) => {
+ if (res.code === 0) {
+ this.msgSrv.error(res.message);
} else {
- this.msgSrv.error('������������ ������������');
+ this.items[i].deviceOptions = res.data;
}
- }
-
+ });
}
-
+
_disabledDate(current: Date): boolean {
return current && current.getTime() > Date.now();
}
@@ -259,7 +246,7 @@
const areaName = '';
const item = this.items[i];
const queryItem: any = {};
- if (item.monitorPointOptions.length > 0) {
+ if (item.monitorPointOptions.length > 0 && item.deviceOptions.length > 0) {
for (const key in item) {
if (item[key]) {
queryItem[key] = item[key];
@@ -296,7 +283,7 @@
break;
}
}
- if (validate && this.timeType && query.reportType) {
+ if (validate) {
delete query.sensors;
if (this._sensors) {
const sensors = [];
@@ -311,7 +298,7 @@
query.type = this.timeType.value;
sessionStorage.setItem('queryParams', JSON.stringify(query));
} else {
- this.msgSrv.error('���������������������������������������');
+ this.msgSrv.error('���������������������������������������������������������������');
return false;
}
}
diff --git a/src/app/routes/reports/excel/excel.component.html b/src/app/routes/reports/excel/excel.component.html
index dfd4b34..f0245c9 100644
--- a/src/app/routes/reports/excel/excel.component.html
+++ b/src/app/routes/reports/excel/excel.component.html
@@ -9,59 +9,21 @@
</div>
<div nz-form-control class="flex-1">
<nz-popover [nzPlacement]="'bottomLeft'" [nzTrigger]="'click'">
- <nz-input [nzType]="'input'" nz-popover [ngModel]="sensorNames" name="sensorKeys" [nzReadonly]="true" [nzPlaceHolder]="'��������� ������'">
+ <nz-input [nzType]="'input'" nz-popover [ngModel]="sensorNames" name="sensorKeys" [nzReadonly]="true" [nzPlaceHolder]="'��������� ������'" [nzSize]="'large'">
<ng-template #suffix>
<i class="anticon anticon-down ant-cascader-picker-arrow" style="right: 1px;"></i>
</ng-template>
</nz-input>
<ng-template #nzTemplate>
<div [ngStyle]="{'width': '240px', 'height': '240px', 'overflow-y' :'auto'}">
- <nz-tree [nzNodes]="sensorOptions" (nzActivate)="onTreeClickSelect($event)" (nzDeactivate)="onTreeClickSelect($event)" [nzCheckable]="true" (nzCheck)="onSensorSelect($event)"></nz-tree>
+ <nz-tree [nzNodes]="sensorOptions" (nzActivate)="onTreeClickSelect($event)" (nzDeactivate)="onTreeClickSelect($event)" [nzCheckable]="true" (nzCheck)="onSensorSelect($event)">
+ </nz-tree>
</div>
</ng-template>
</nz-popover>
</div>
</div>
</div>
- <div nz-col [nzSpan]="6" class="mb-md">
- <div nz-form-item class="d-flex">
- <div nz-form-label class="label-width-70">
- <label nz-form-item-required>���������</label>
- </div>
- <div nz-form-control class="flex-1">
- <nz-cascader (nzLoad)="areaLazyLoad($event)" [nzPlaceHolder]="'��������� ���/���/���'" [nzAllowClear]="false" [nzChangeOnSelect]="true" (nzSelect)="regionChange($event)">
- </nz-cascader>
- </div>
- </div>
- </div>
- <div nz-col [nzSpan]="6" class="mb-md">
- <div nz-form-item class="d-flex">
- <div nz-form-label class="label-width-70">
- <label>������������</label>
- </div>
- <div nz-form-control class="flex-1">
- <nz-select [(ngModel)]="query.monitorPointId" name="monitorPoint" [nzPlaceHolder]="'��������� ������������'" [nzSize]="'large'"
- [nzNotFoundContent]="'������������'" (ngModelChange)="monitorPointChange($event)" nzShowSearch nzAllowClear>
- <nz-option *ngFor="let option of monitorPointOptions" [nzLabel]="option['name']" [nzValue]="option['id']"> </nz-option>
- </nz-select>
- </div>
- </div>
- </div>
- <div nz-col [nzSpan]="6" class="mb-md">
- <div nz-form-item class="d-flex">
- <div nz-form-label class="label-width-70">
- <label>������</label>
- </div>
- <div nz-form-control class="flex-1">
- <nz-select [(ngModel)]="query.mac" name="mac" [nzSize]="'large'" [nzPlaceHolder]="'��������� ������'" [nzNotFoundContent]="'������������'" nzShowSearch nzAllowClear>
- <nz-option *ngFor="let option of deviceOptions" [nzLabel]="option.name" [nzValue]="option.mac" ></nz-option>
- </nz-select>
- </div>
- </div>
- </div>
- </div>
-
- <div nz-row [nzGutter]="24">
<div nz-col [nzSpan]="6" class="mb-md">
<div nz-form-item class="d-flex">
<div nz-form-label class="label-width-70">
@@ -99,7 +61,56 @@
</div>
<div nz-row [nzGutter]="24">
+ <div nz-col [nzSpan]="6" class="mb-md">
+ <div nz-form-item class="d-flex">
+ <div nz-form-label class="label-width-70">
+ <label nz-form-item-required>���������</label>
+ </div>
+ <div nz-form-control class="flex-1">
+ <nz-cascader (nzLoad)="areaLazyLoad($event)" [nzPlaceHolder]="'��������� ���/���/���'" [nzAllowClear]="false" [nzChangeOnSelect]="true" (nzSelect)="regionChange($event)" [nzSize]="'large'">
+ </nz-cascader>
+ </div>
+ </div>
+ </div>
+ <div nz-col [nzSpan]="6" class="mb-md">
+ <div nz-form-item class="d-flex">
+ <div nz-form-label class="label-width-70">
+ <label >������</label>
+ </div>
+ <div nz-form-control class="flex-1">
+ <nz-select [(ngModel)]="query.professionId" name="profession" [nzSize]="'large'" [nzPlaceHolder]="'��������� ������'" nzAllowClear (ngModelChange)="getDevices()" >
+ <nz-option *ngFor="let option of professionOptions" [nzLabel]="option.name" [nzValue]="option.id" ></nz-option>
+ </nz-select>
+ </div>
+ </div>
+ </div>
+ <div nz-col [nzSpan]="6" class="mb-md">
+ <div nz-form-item class="d-flex">
+ <div nz-form-label class="label-width-70">
+ <label>������������</label>
+ </div>
+ <div nz-form-control class="flex-1">
+ <nz-select [(ngModel)]="query.monitorPointId" name="monitorPoint" [nzPlaceHolder]="'��������� ������������'" [nzSize]="'large'"
+ [nzNotFoundContent]="'������������'" (ngModelChange)="getDevices()" nzShowSearch nzAllowClear>
+ <nz-option *ngFor="let option of monitorPointOptions" [nzLabel]="option['name']" [nzValue]="option['id']"> </nz-option>
+ </nz-select>
+ </div>
+ </div>
+ </div>
+ <div nz-col [nzSpan]="6" class="mb-md">
+ <div nz-form-item class="d-flex">
+ <div nz-form-label class="label-width-70">
+ <label>������</label>
+ </div>
+ <div nz-form-control class="flex-1">
+ <nz-select [(ngModel)]="query.mac" name="mac" [nzSize]="'large'" [nzPlaceHolder]="'��������� ������'" [nzNotFoundContent]="'������������'" nzShowSearch nzAllowClear>
+ <nz-option *ngFor="let option of deviceOptions" [nzLabel]="option.name" [nzValue]="option.mac" ></nz-option>
+ </nz-select>
+ </div>
+ </div>
+ </div>
</div>
+
<div nz-row [nzGutter]="24">
<div nz-col [nzSpan]="6" class="mb-md">
<button nz-button type="submit" [nzType]="'primary'" [nzSize]="'large'">������</button>
diff --git a/src/app/routes/reports/excel/excel.component.ts b/src/app/routes/reports/excel/excel.component.ts
index 0d8244e..8e4dba4 100644
--- a/src/app/routes/reports/excel/excel.component.ts
+++ b/src/app/routes/reports/excel/excel.component.ts
@@ -26,6 +26,7 @@
{value: 'day', label: '���', format: 'YYYY-MM-DD'},
{value: 'hour', label: '���', format: 'YYYY-MM-DD HH'}
];
+ public professionOptions = [];
private treeClickStream: Subject<any> = new Subject<any>();
private _sensors: {[key: string]: string} = {};
@@ -52,6 +53,13 @@
this.msgSrv.error(res.message);
} else {
this.sensorOptions.push({id: -1, name: '������', isExpanded: true, children: res.data});
+ }
+ });
+ this.http.get(environment.SERVER_BASH_URL + 'mobile/profession').subscribe((res: any) => {
+ if (res.errno !== 0) {
+ this.msgSrv.error(res.message);
+ } else {
+ this.professionOptions = res.data;
}
});
}
@@ -128,7 +136,6 @@
const option = event.option;
this.query.areaCode = null;
this.query.monitorPointId = null;
- this.query.mac = null;
switch (event.index) {
case 0:
name = 'provinceCode';
@@ -151,20 +158,19 @@
this.monitorPointOptions = res.data;
}
});
+ this.getDevices();
+
}
- monitorPointChange(value) {
+ getDevices() {
this.query.mac = null;
- this.deviceOptions = [];
- if (value) {
- this.http.get(environment.SERVER_BASH_URL + 'device/monitorPointId', {params: {monitorPointId: value}}).subscribe((res: any) => {
- if (res.code === 0) {
- this.msgSrv.error(res.message);
- } else {
- this.deviceOptions = res.data;
- }
- });
- }
+ return this.http.get(environment.SERVER_BASH_URL + 'device/professionId', {params: this.query}).subscribe((res: any) => {
+ if (res.code === 0) {
+ this.msgSrv.error(res.message);
+ } else {
+ this.deviceOptions = res.data;
+ }
+ });
}
reportQuery() {
--
Gitblit v1.8.0