From 309d1f9d649daa08bb9b068af014749f6d4a5bce Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Fri, 06 Jul 2018 14:00:45 +0800
Subject: [PATCH] 设备和监控点父页面 筛选条件不予 编辑页面联动

---
 src/app/routes/reports/demo/demo.component.html |  217 ++++++++++++++++++++++++++++++++----------------------
 1 files changed, 128 insertions(+), 89 deletions(-)

diff --git a/src/app/routes/reports/demo/demo.component.html b/src/app/routes/reports/demo/demo.component.html
index 2062384..ea195e5 100644
--- a/src/app/routes/reports/demo/demo.component.html
+++ b/src/app/routes/reports/demo/demo.component.html
@@ -1,113 +1,152 @@
-<pro-header [title]="'������������'"></pro-header>
+<pro-header [title]="'������������'"></pro-header>
 <nz-card [nzBordered]="false">
 	<form nz-form  (ngSubmit)="reportQuery()" [nzLayout]="'inline'">
 		<div nz-row [nzGutter]="24">
-			<div nz-col [nzSpan]="6" class="mb-md">
+			<div nz-col [nzSpan]="5" class="mb-md">
 				<div nz-form-item class="d-flex">
-					<div nz-form-label>
-						<label nz-form-item-required>���&nbsp;���</label>
+					<div nz-form-label class="label-width-70">
+						<label>������</label>
 					</div>
 					<div nz-form-control class="flex-1">
-						<nz-select [(ngModel)]="query.sensorKey" name="sensorKey" [nzSize]="'large'" [nzPlaceHolder]="'���������'" (ngModelChange)="sensorChange($event)" nzAllowClear>
-							<nz-option *ngFor="let option of sensorOptions" [nzLabel]="option.name" [nzValue]="option.sensorKey" ></nz-option>
+						<!-- <nz-select [nzMode]="'multiple'" [(ngModel)]="query.sensorKeys" name="sensorKeys" [nzSize]="'large'" [nzPlaceHolder]="'���������'">
+							<nz-option *ngFor="let option of sensorOptions" [nzLabel]="option.name" [nzValue]="option.sensorKey + '-' + option.name + '-' + option.unit"></nz-option>
+            			</nz-select> -->
+                        <nz-popover [nzPlacement]="'bottomLeft'" [nzTrigger]="'click'">
+                            <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>
+                                </div>
+                            </ng-template>
+                        </nz-popover>
+					</div>
+				</div>
+			</div>
+			<div nz-col [nzSpan]="5" 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.dimension" name="dimension" [nzSize]="'large'" [nzPlaceHolder]="'���������'" (ngModelChange)="dimensionChange($event)">
+							<nz-option *ngFor="let option of dimensionOptions" [nzLabel]="option.label" [nzValue]="option.value" ></nz-option>
             			</nz-select>
 					</div>
 				</div>
 			</div>
-			<div nz-col [nzSpan]="6" class="mb-md">
+			<div nz-col [nzSpan]="5" class="mb-md">
 				<div nz-form-item class="d-flex">
-					<div nz-form-label>
-						<label nz-form-item-required>������</label>
+					<div nz-form-label class="label-width-70">
+						<label>������</label>
 					</div>
 					<div nz-form-control class="flex-1">
-						<nz-select [(ngModel)]="query.type" name="isDelete" [nzSize]="'large'" [nzPlaceHolder]="'���������'" (ngModelChange)="typeChange($event)">
-							<nz-option *ngFor="let option of typeOptions" [nzLabel]="option.label" [nzValue]="option.value" ></nz-option>
+						<nz-select [(ngModel)]="timeType" name="timeType" [nzSize]="'large'" [nzPlaceHolder]="'���������'">
+							<nz-option *ngFor="let option of typeOptions" [nzLabel]="option.label" [nzValue]="option" ></nz-option>
             			</nz-select>
 					</div>
 				</div>
+			</div>
+			<div nz-col [nzSpan]="5" 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.reportType" name="reportType" [nzSize]="'large'" [nzPlaceHolder]="'���������'">
+							<nz-option *ngFor="let option of reportOptions" [nzLabel]="option.label" [nzValue]="option.value" ></nz-option>
+            			</nz-select>
+					</div>
+				</div>
+			</div>
+			<div nz-col [nzSpan]="4" class="mb-md" *ngIf="items.length < 2">
+				<button nz-button type="button" [nzType]="'primary'" [nzSize]="'large'" (click)="addItem()">
+					<!-- <i class="anticon anticon-plus"></i> -->
+					<i class="anticon anticon-plus-circle-o"></i>
+					<span>������������������</span>
+				</button>
+			</div>
+			
+		</div>
+
+		<div nz-row [nzGutter]="24" *ngFor="let item of items;let i = index">
+			<div nz-col [nzSpan]="5" 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 [nzSize]="'large'" (nzLoad)="areaLazyLoad($event,i)" [nzPlaceHolder]="'��������� ���/���/���/���/���'" [nzAllowClear]="false" [nzChangeOnSelect]="true" (nzSelect)="regionChange($event,i)">
+                        </nz-cascader>
+					</div>
+				</div>
+			</div>
+
+			<div nz-col [nzSpan]="5" class="mb-md" [ngStyle]="{'display':monitorPointShow ? 'block' : 'none' }">
+				<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)]="item.monitorPoint" name="monitorPoint{{item.id}}" [nzPlaceHolder]="'��������� ������������'" [nzSize]="'large'"  
+							[nzNotFoundContent]="'������������'" (ngModelChange)="getDevices(i)" nzShowSearch nzAllowClear> 
+							<nz-option *ngFor="let option of item.monitorPointOptions"  [nzLabel]="option['name']" [nzValue]="option"> </nz-option> 
+						</nz-select>
+					</div>
+				</div>
+			</div>
+			<div nz-col [nzSpan]="5" class="mb-md" [ngStyle]="{'display':professionShow ? 'block' : 'none' }">
+				<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)]="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>
+				</div>
+			</div>
+			<div nz-col [nzSpan]="5" 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)]="item.device" name="mac{{item.id}}" [nzSize]="'large'" [nzPlaceHolder]="'��������� ������'" [nzNotFoundContent]="'������������'" nzShowSearch nzAllowClear>
+							<nz-option *ngFor="let option of item.deviceOptions" [nzLabel]="option.name" [nzValue]="option" ></nz-option>
+            			</nz-select>
+					</div>
+				</div>
+			</div>
+			<div nz-col [nzSpan]="5" 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-datepicker style="width: 100%;" [(ngModel)]="item.time" name="time{{item.id}}" [nzFormat]="timeType.format" [nzDisabledDate]="_disabledDate" [nzAllowClear]="false"
+							[nzMode]="timeType.value=='hour'||timeType.value=='day'?'day':'month'" [nzShowTime]="timeType.value=='hour'?true:false" [nzSize]="'large'"></nz-datepicker>
+					</div>
+				</div>
+			</div>
+			<div nz-col [nzSpan]="4" class="mb-md" *ngIf="items.length > 1">
+				<button nz-button type="button" [nzType]="'danger'" [nzSize]="'large'" (click)="items.splice(i, 1)">
+					<i class="anticon anticon-minus-circle-o dynamic-delete-button"></i>
+					<span>������������������</span>
+				</button>
 			</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>
-						<label >���������</label>
-					</div>
-					<div nz-form-control class="flex-1">
-						<nz-select [(ngModel)]="query.monitorPoint" name="monitorPoint" nzAllowClear [nzPlaceHolder]="'���������'" [nzFilter]="false" [nzSize]="'large'"  
-							(nzSearchChange)="searchChange($event)" [nzNotFoundContent]="'������������'" (ngModelChange)="monitorPointChange($event)" nzShowSearch> 
-							<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>
-						<label>&nbsp;&nbsp;������</label>
-					</div>
-					<div nz-form-control class="flex-1">
-						<nz-select [(ngModel)]="query.mac" name="mac" [nzSize]="'large'" nzAllowClear [nzPlaceHolder]="'���������'" (ngModelChange)="deviceChange($event)">
-							<nz-option *ngFor="let option of deviceOptions" [nzLabel]="option.name" [nzValue]="option.mac" ></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>
-						<label >������</label>
-					</div>
-					<div nz-form-control class="flex-1">
-						<nz-datepicker style="width: 100%;" [(ngModel)]="query.time" name="time" [nzPlaceHolder]="'���������'" [nzFormat]="time.format" [nzMode]="time.mode" [nzSize]="'large'" nzShowTime></nz-datepicker>
-					</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>
-						<label >���������</label>
-					</div>
-					<div nz-form-control class="flex-1">
-						<nz-select [(ngModel)]="query.monitorPointb" name="monitorPointb" nzAllowClear [nzPlaceHolder]="'���������'" [nzFilter]="false" [nzSize]="'large'"  
-							(nzSearchChange)="searchChangeb($event)" [nzNotFoundContent]="'������������'" (ngModelChange)="monitorPointbChange($event)" nzShowSearch> 
-							<nz-option *ngFor="let option of monitorPointbOptions"  [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>
-						<label>&nbsp;&nbsp;������</label>
-					</div>
-					<div nz-form-control class="flex-1">
-						<nz-select [(ngModel)]="query.macb" name="macb" [nzSize]="'large'" nzAllowClear [nzPlaceHolder]="'���������'" (ngModelChange)="devicebChange($event)">
-							<nz-option *ngFor="let option of devicebOptions" [nzLabel]="option.name" [nzValue]="option.mac" ></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>
-						<label >������</label>
-					</div>
-					<div nz-form-control class="flex-1">
-						<nz-datepicker style="width: 100%;" [(ngModel)]="query.timeb" name="timeb" [nzPlaceHolder]="'���������'" [nzFormat]="time.format" [nzMode]="time.mode" [nzSize]="'large'" nzShowTime></nz-datepicker>
-					</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>
-				<button nz-button type="reset" [nzSize]="'large'" class="mx-sm">������</button>
+				<button nz-button type="submit" [nzType]="'primary'" [nzSize]="'large'">
+					<a target="_blank" [routerLink]="['/report']" (click)="reportQuery()">������</a>
+				</button>
+				<!-- <button nz-button type="reset" [nzSize]="'large'" class="mx-sm" (click)="load()">������</button> -->
 			</div>
 		</div>
 	</form>

--
Gitblit v1.8.0