From 0e25153037b06851846e80cc745e518ba07bf7af Mon Sep 17 00:00:00 2001 From: fengxiang <110431245@qq.com> Date: Mon, 26 Mar 2018 13:58:16 +0800 Subject: [PATCH] 数据查询和表单模块合并,修改密码用户输入框去除 --- src/app/routes/reports/query/query.component.less | 8 /dev/null | 195 ------------------------ src/app/routes/reports/query/query.component.ts | 17 + src/app/routes/reports/query/query.component.html | 216 +++++++++++++++++++++++++++ src/app/routes/routes-routing.module.ts | 3 src/app/routes/reports/reports.module.ts | 24 ++ src/assets/app-data.json | 15 - src/app/routes/systems/account/account.component.html | 2 8 files changed, 262 insertions(+), 218 deletions(-) diff --git a/src/app/routes/analysis/analysis.module.ts b/src/app/routes/analysis/analysis.module.ts deleted file mode 100644 index ac2b40e..0000000 --- a/src/app/routes/analysis/analysis.module.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { MonitorPointService } from '@business/services/http/monitor-point.service'; -import { AreacodeService } from '@business/services/http/areacode.service'; -import { SensorsService } from '@business/services/http/sensors.service'; -import { NzTreeModule } from 'ng-tree-antd'; -import { PipeModule } from '@business/pipe/pipe.module'; -import { NgModule } from '@angular/core'; -import { SharedModule } from '@shared/shared.module'; -import { QueryComponent } from './query/query.component'; -import { Routes, RouterModule } from '@angular/router'; -import { CommonModule } from '@angular/common'; -import { DeviceService } from '@business/services/http/device.service'; -import { NgxEchartsModule } from 'ngx-echarts'; -import { DateService } from '@business/services/util/date.service'; -import { NzMessageService } from 'ng-zorro-antd'; -const routes: Routes = [ - { - path: '', - children: [ - { path: 'query', component: QueryComponent } - ] - } -]; - -@NgModule({ - imports: [ - // ������������������������������������ - PipeModule, - CommonModule, - SharedModule, - NzTreeModule, - NgxEchartsModule, - RouterModule.forChild(routes) - ], - declarations: [QueryComponent], - providers: [SensorsService, NzMessageService, AreacodeService, MonitorPointService, DeviceService, DateService] -}) -export class AnalysisModule { } diff --git a/src/app/routes/analysis/query/query.component.html b/src/app/routes/analysis/query/query.component.html deleted file mode 100644 index 89c2052..0000000 --- a/src/app/routes/analysis/query/query.component.html +++ /dev/null @@ -1,195 +0,0 @@ -<div class="content__title"> - <h1>������������</h1> -</div> -<nz-card [nzBordered]="false"> - <form nz-form (ngSubmit)="loadGrid()" [nzLayout]="'inline'"> - <div nz-row [nzGutter]="24"> - <div nz-col [nzSpan]="8" 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-popover [nzTitle]="'���������'" [nzPlacement]="'bottomLeft'" [nzTrigger]="'hover'"> - <nz-input [nzType]="'input'" nz-popover [ngModel]="sensorNames" name="sensorNames" [nzReadonly]="true" [nzPlaceHolder]="'���������������������'"> - <ng-template #suffix> - <i class="anticon anticon-plus ant-input-search-icon"></i> - </ng-template> - </nz-input> - <ng-template #nzTemplate> - <div [ngStyle]="{'width': '240px', 'height': '240px', 'overflow-y' :'auto'}"> - <nz-tree [nzNodes]="sensorOptions" [nzCheckable]="true" (nzCheck)="onSensorSelect($event)"></nz-tree> - </div> - </ng-template> - </nz-popover> - </div> - </div> - </div> - <div nz-col [nzSpan]="8" 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 name="timeUnit" [(ngModel)]="timeUnit" [nzPlaceHolder]="'������ ������������'" - (ngModelChange)="setTimeUnit($event)" [nzNotFoundContent]="'������������'"> - <nz-option *ngFor="let option of timeUnitOptions" [nzLabel]="option.label" [nzValue]="option"> - </nz-option> - </nz-select> - </div> - </div> - </div> - <div nz-col [nzSpan]="8" class="mb-md"> - <div nz-form-item class="d-flex"> - <div nz-form-label> - <label>������������</label> - </div> - <div *ngIf="timeUnit.value!='MONTH'; else elseBlock" nz-form-control class="flex-1"> - <nz-datepicker [ngStyle]="{'width': '100%'}" name="actualTime" [(ngModel)]="actualTime" - [nzAllowClear]="false" [nzShowTime]="_timeType.showTime" [nzMode]="_timeType.mode" - [nzFormat]="_timeType.dateFormat" [nzPlaceHolder]="'������������'"> - </nz-datepicker> - </div> - <ng-template #elseBlock> - <div nz-form-control class="flex-1"> - <nz-select name="actualYear" [(ngModel)]="actualYear" [nzPlaceHolder]="'������ ������������'" - (ngModelChange)="setTimeUnit($event)" [nzNotFoundContent]="'������������'"> - <nz-option *ngFor="let option of actualYearOptions" [nzLabel]="option + ' ���'" [nzValue]="option"> - </nz-option> - </nz-select> - </div> - </ng-template> - </div> - </div> - </div> - <div [ngStyle]="{'display':isCollapse ? 'none' : 'block' }" nz-row [nzGutter]="24"> - <div nz-col [nzSpan]="8" class="mb-md"> - <div nz-form-item class="d-flex"> - <div [ngStyle]="{'width': '70px'}" nz-form-label> - <label>���������</label> - </div> - <div nz-form-control class="flex-1"> - <nz-cascader [class.class123]="true" - (nzLoad)="areaLazyLoad($event)" [nzPlaceHolder]="'������ ���/���/���'" (nzSelectionChange) = "setAreasData($event)" - [nzAllowClear]="false" [nzChangeOnSelect]="true" [ngModel]="_areas" name="areasData"> - </nz-cascader> - </div> - </div> - </div> - <div nz-col [nzSpan]="8" class="mb-md"> - <div nz-form-item class="d-flex"> - <div [ngStyle]="{'width': '70px'}" nz-form-label> - <label >���������</label> - </div> - <div nz-form-control class="flex-1"> - <nz-select name="monitorPoint" style="width: 100%;" [(ngModel)]="monitorPoint" - nzAllowClear [nzPlaceHolder]="'������ ���������(������������������)'" - nzShowSearch (nzSearchChange)="monitorPointsChange($event)" - [nzNotFoundContent]="'������������'"> - <nz-option *ngFor="let option of monitorPointOptions" [nzLabel]="option.name" [nzValue]="option"> - </nz-option> - </nz-select> - </div> - </div> - </div> - <div nz-col [nzSpan]="8" class="mb-md"> - <div nz-form-item class="d-flex"> - <div [ngStyle]="{'width': '70px'}" nz-form-label> - <label>��� ���</label> - </div> - <div nz-form-control class="flex-1"> - <nz-select name="device" style="width: 100%;" [(ngModel)]="device" nzAllowClear [nzPlaceHolder]="'��������� ���������(������������������)'" - nzShowSearch (nzSearchChange)="devicesChange($event)" [nzNotFoundContent]="'������������'"> - <nz-option *ngFor="let option of deviceOptions" [nzLabel]="option.name" [nzValue]="option"> - </nz-option> - </nz-select> - </div> - </div> - </div> - </div> - <div nz-row> - <div nz-col [nzSpan]="24" class="text-right"> - <button nz-button [nzType]="'primary'"> - <i class="anticon anticon-search"></i> - <span>������</span> - </button> - <a class="pl-sm" (click)="toggleCollapse()"> - ������ - <i class="anticon" [class.anticon-down]="isCollapse" [class.anticon-up]="!isCollapse"></i> - </a> - </div> - </div> - </form> -</nz-card> -<nz-card> -<div nz-row [nzGutter]="16"> - <div nz-col [ngStyle]="{'display':isChartCollapse ? 'none' : 'block' }" [nzMd]="24"> - <div echarts style="margin-top: 12px;" [options]="chartOption" [loading]="chartLoading" class="line-chart" (chartInit)="onChartInit($event)"></div> - </div> - <div *ngIf="isChartCollapse" style="width:100%; text-align:center;"> - <span style="font-size:18px; font-weight: bold;">{{ _chartTitleTemp }}</span> - </div> - <a *ngIf="!!echartsIntance" style="position: absolute; right: 0; top: -10px;" class="pl-sm" (click)="toggleChartCollapse()"> - ������ - <i class="anticon" [class.anticon-down]="isChartCollapse" [class.anticon-up]="!isChartCollapse"></i> - </a> -</div> -</nz-card> -<div nz-row [nzGutter]="16"> - <div nz-col [nzMd]="24"> - <nz-card> - <nz-table #nzTable [nzScroll]="{ x:tableWidth,y:360 }" [nzDataSource]="grid.data" [nzIsPagination]="false" [nzLoading]="grid.loading"> - <ng-template #nzFixedHeader> - <thead nz-thead> - <tr> - <th nz-th [nzWidth]="'160px'" [ngStyle]="{'position': 'relative', 'text-align':'center', 'left':sensorNameScrollLeft+'px'}"> - <span>������������</span> - </th> - <th nz-th [nzWidth]="'80px'" *ngFor="let col of grid.columns" [ngStyle]="{'width':col.width,'text-align':col['align'] === undefined?'left':col.align}"> - <span>{{ col.text }}</span> - </th> - </tr> - </thead> - </ng-template> - <tbody nz-tbody> - <tr nz-tbody-tr style="cursor:pointer;" *ngFor="let row of nzTable.data,index as i" - (click) = "switchSensor(i)" - (mouseover) ="sensorTableFocus(i)" (mouseout) ="sensorTableBlur(i)" - [ngClass]="{'table-tr-bgcolor-focus': i === sensorTableFocusIndex,'table-tr-bgcolor-blur': i !== sensorTableFocusIndex}"> - <td nz-td class='sensor-name' [ngStyle]="{'background-color': '#FFF'}"> - <span><span>{{ row.sensor.name+'('+row.sensor.unit+')' }}</span> <i *ngIf="chartSelectedIndex==i" class="anticon anticon-line-chart"></i></span> - </td> - <td nz-td *ngFor="let col of grid.columns,index as n" [ngStyle]="{'width':col.width,'text-align':col['align'] === undefined?'left':col.align}"> - <span [ngSwitch]="col.type"> - <!-- ������������������������������������ --> - <span title="{{ row.data[n]|tyepHandle:col:row }}" style="width:100%; display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;" *ngSwitchDefault> {{ row.data[n]|tyepHandle:col:row }} </span> - <!-- ������������������������������������ --> - </span> - </td> - </tr> - </tbody> - </nz-table> - <div *ngIf="grid.data.length>0" [ngClass]="{'table-scroll':true,'table-scroll-box-shadow': sensorNameScrollLeft>2 }" [ngStyle]="{'position': 'absolute', 'top': '24px'}"> - <nz-table #nzTable [nzDataSource]="grid.data" [nzIsPagination]="false"> - <thead nz-thead> - <tr> - <th nz-th [nzWidth]="'160px'" style="text-align:center; position:relative; display:block; z-index:9;"> - <span>������������</span> - </th> - </tr> - </thead> - <tbody nz-tbody [ngStyle]="{'top':sensorNameScrollTop+'px'}" style="position: relative; z-index:7; display:block;"> - <tr nz-tbody-tr style="cursor:pointer;" *ngFor="let row of nzTable.data,index as i" - (mouseover) ="sensorTableFocus(i)" (mouseout) ="sensorTableBlur(i)" - [ngClass]="{'table-tr-bgcolor-focus': i === sensorTableFocusIndex,'table-tr-bgcolor-blur': i !== sensorTableFocusIndex}" - (click) = "switchSensor(i)"> - <td nz-td class='sensor-name' [ngStyle]="{'width':'160px','text-align': 'center'}"> - <span><span>{{ row.sensor.name+'('+row.sensor.unit+')' }}</span> <i *ngIf="chartSelectedIndex==i" class="anticon anticon-line-chart"></i></span> - </td> - </tr> - </tbody> - </nz-table> - </div> - </nz-card> - </div> -</div> diff --git a/src/app/routes/reports/query/query.component.html b/src/app/routes/reports/query/query.component.html new file mode 100644 index 0000000..b9c3f1b --- /dev/null +++ b/src/app/routes/reports/query/query.component.html @@ -0,0 +1,216 @@ +<div class="content__title"> + <h1>������������</h1> +</div> +<nz-card [nzBordered]="false"> + <form nz-form (ngSubmit)="loadGrid()" [nzLayout]="'inline'"> + <div nz-row [nzGutter]="24"> + <div nz-col [nzSpan]="8" 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-popover [nzTitle]="'���������'" [nzPlacement]="'bottomLeft'" [nzTrigger]="'hover'"> + <nz-input [nzType]="'input'" nz-popover [ngModel]="sensorNames" name="sensorNames" [nzReadonly]="true" [nzPlaceHolder]="'���������������������'"> + <ng-template #suffix> + <i class="anticon anticon-plus ant-input-search-icon"></i> + </ng-template> + </nz-input> + <ng-template #nzTemplate> + <div [ngStyle]="{'width': '240px', 'height': '240px', 'overflow-y' :'auto'}"> + <nz-tree [nzNodes]="sensorOptions" [nzCheckable]="true" (nzCheck)="onSensorSelect($event)"></nz-tree> + </div> + </ng-template> + </nz-popover> + </div> + </div> + </div> + <div nz-col [nzSpan]="8" 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 name="timeUnit" [(ngModel)]="timeUnit" [nzPlaceHolder]="'������ ������������'" (ngModelChange)="setTimeUnit($event)" [nzNotFoundContent]="'������������'"> + <nz-option *ngFor="let option of timeUnitOptions" [nzLabel]="option.label" [nzValue]="option"> + </nz-option> + </nz-select> + </div> + </div> + </div> + <div nz-col [nzSpan]="8" class="mb-md"> + <div nz-form-item class="d-flex"> + <div nz-form-label> + <label>������������</label> + </div> + <div *ngIf="timeUnit.value!='MONTH'; else elseBlock" nz-form-control class="flex-1"> + <nz-datepicker [ngStyle]="{'width': '100%'}" name="actualTime" [(ngModel)]="actualTime" [nzAllowClear]="false" [nzShowTime]="_timeType.showTime" + [nzMode]="_timeType.mode" [nzFormat]="_timeType.dateFormat" [nzPlaceHolder]="'������������'"> + </nz-datepicker> + </div> + <ng-template #elseBlock> + <div nz-form-control class="flex-1"> + <nz-select name="actualYear" [(ngModel)]="actualYear" [nzPlaceHolder]="'������ ������������'" (ngModelChange)="setTimeUnit($event)" [nzNotFoundContent]="'������������'"> + <nz-option *ngFor="let option of actualYearOptions" [nzLabel]="option + ' ���'" [nzValue]="option"> + </nz-option> + </nz-select> + </div> + </ng-template> + </div> + </div> + </div> + <div [ngStyle]="{'display':isCollapse ? 'none' : 'block' }" nz-row [nzGutter]="24"> + <div nz-col [nzSpan]="8" class="mb-md"> + <div nz-form-item class="d-flex"> + <div [ngStyle]="{'width': '70px'}" nz-form-label> + <label>���������</label> + </div> + <div nz-form-control class="flex-1"> + <nz-cascader [class.class123]="true" (nzLoad)="areaLazyLoad($event)" [nzPlaceHolder]="'������ ���/���/���'" (nzSelectionChange)="setAreasData($event)" + [nzAllowClear]="false" [nzChangeOnSelect]="true" [ngModel]="_areas" name="areasData"> + </nz-cascader> + </div> + </div> + </div> + <div nz-col [nzSpan]="8" class="mb-md"> + <div nz-form-item class="d-flex"> + <div [ngStyle]="{'width': '70px'}" nz-form-label> + <label>���������</label> + </div> + <div nz-form-control class="flex-1"> + <nz-select name="monitorPoint" style="width: 100%;" [(ngModel)]="monitorPoint" nzAllowClear [nzPlaceHolder]="'������ ���������(������������������)'" + nzShowSearch (nzSearchChange)="monitorPointsChange($event)" [nzNotFoundContent]="'������������'"> + <nz-option *ngFor="let option of monitorPointOptions" [nzLabel]="option.name" [nzValue]="option"> + </nz-option> + </nz-select> + </div> + </div> + </div> + <div nz-col [nzSpan]="8" class="mb-md"> + <div nz-form-item class="d-flex"> + <div [ngStyle]="{'width': '70px'}" nz-form-label> + <label>��� ���</label> + </div> + <div nz-form-control class="flex-1"> + <nz-select name="device" style="width: 100%;" [(ngModel)]="device" nzAllowClear [nzPlaceHolder]="'��������� ���������(������������������)'" nzShowSearch + (nzSearchChange)="devicesChange($event)" [nzNotFoundContent]="'������������'"> + <nz-option *ngFor="let option of deviceOptions" [nzLabel]="option.name" [nzValue]="option"> + </nz-option> + </nz-select> + </div> + </div> + </div> + </div> + <div nz-row> + <div nz-col [nzSpan]="24" class="text-right"> + <button nz-button [nzType]="'primary'"> + <i class="anticon anticon-search"></i> + <span>������</span> + </button> + <a class="pl-sm" (click)="toggleCollapse()"> + ������ + <i class="anticon" [class.anticon-down]="isCollapse" [class.anticon-up]="!isCollapse"></i> + </a> + </div> + </div> + </form> +</nz-card> +<nz-card> + <div nz-row [nzGutter]="16"> + <div nz-col [ngStyle]="{'display':isChartCollapse ? 'none' : 'block' }" [nzMd]="24"> + <div echarts style="margin-top: 12px;" [options]="chartOption" [loading]="chartLoading" class="line-chart" (chartInit)="onChartInit($event)"></div> + </div> + <div *ngIf="isChartCollapse" style="width:100%; text-align:center;"> + <span style="font-size:18px; font-weight: bold;">{{ _chartTitleTemp }}</span> + </div> + <div *ngIf="!!echartsIntance&&!isChartCollapse" class="chart-switch-select"> + <nz-dropdown> + <a class="ant-dropdown-link" nz-dropdown> + <p class="display-3 text-primary">������������ + <i class="anticon anticon-down"></i> + </p> + </a> + <ul style="cursor:pointer; max-height: 260px; overflow:auto;" nz-menu> + <li [ngClass]="{'ant-dropdown-menu-item-selected':chartSelectedIndex==m}" *ngFor="let item of grid.data,index as m" (click)="switchSensor(m)" + nz-menu-item> + {{item.sensor.name}} + <i *ngIf="chartSelectedIndex==m" class="anticon anticon-check-circle-o"></i> + </li> + </ul> + </nz-dropdown> + </div> + <a *ngIf="!!echartsIntance" style="position: absolute; right: 0; top: -10px;" class="pl-sm" (click)="toggleChartCollapse()"> + ������ + <i class="anticon" [class.anticon-down]="isChartCollapse" [class.anticon-up]="!isChartCollapse"></i> + </a> + </div> +</nz-card> +<nz-card> + <div nz-row [nzGutter]="16"> + <div nz-col [nzMd]="24"> + <div style="width:100%; text-align:center;"> + <span style="font-size:18px; font-weight: bold;">{{ _tableTitleTemp }}</span> + </div> + </div> + </div> + <div nz-row [nzGutter]="16"> + <div nz-col [nzMd]="24"> + <nz-table #nzTable [nzScroll]="{ x:tableWidth,y:350 }" [nzDataSource]="grid.data" [nzIsPagination]="false" [nzLoading]="grid.loading"> + <ng-template #nzFixedHeader> + <thead nz-thead> + <tr> + <th nz-th [nzWidth]="'160px'" [ngStyle]="{'position': 'relative', 'text-align':'center', 'left':sensorNameScrollLeft+'px'}"> + <span>������������</span> + </th> + <th nz-th [nzWidth]="'80px'" *ngFor="let col of grid.columns" [ngStyle]="{'width':col.width,'text-align':col['align'] === undefined?'left':col.align}"> + <span>{{ col.text }}</span> + </th> + </tr> + </thead> + </ng-template> + <tbody nz-tbody> + <tr nz-tbody-tr style="cursor:pointer;" *ngFor="let row of nzTable.data,index as i" (click)="switchSensor(i)" (mouseover)="sensorTableFocus(i)" + (mouseout)="sensorTableBlur(i)" [ngClass]="{'table-tr-bgcolor-focus': i === sensorTableFocusIndex,'table-tr-bgcolor-blur': i !== sensorTableFocusIndex}"> + <td nz-td class='sensor-name' [ngStyle]="{'background-color': '#FFF'}"> + <span> + <span>{{ row.sensor.name+'('+row.sensor.unit+')' }}</span> + <i *ngIf="chartSelectedIndex==i" class="anticon anticon-line-chart"></i> + </span> + </td> + <td nz-td *ngFor="let col of grid.columns,index as n" [ngStyle]="{'width':col.width,'text-align':col['align'] === undefined?'left':col.align}"> + <span [ngSwitch]="col.type"> + <!-- ������������������������������������ --> + <span title="{{ row.data[n]|tyepHandle:col:row }}" style="width:100%; display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;" + *ngSwitchDefault> {{ row.data[n]|tyepHandle:col:row }} </span> + <!-- ������������������������������������ --> + </span> + </td> + </tr> + </tbody> + </nz-table> + <div *ngIf="grid.data.length>0" [ngClass]="{'table-scroll':true,'table-scroll-box-shadow': sensorNameScrollLeft>2 }" style="position: absolute; top:0;"> + <nz-table #nzTable [nzDataSource]="grid.data" [nzIsPagination]="false"> + <thead nz-thead> + <tr> + <th nz-th [nzWidth]="'160px'" style="text-align:center; position:relative; display:block; z-index:9;"> + <span>������������</span> + </th> + </tr> + </thead> + <tbody nz-tbody [ngStyle]="{'top':sensorNameScrollTop+'px'}" style="position: relative; z-index:7; display:block;"> + <tr nz-tbody-tr style="cursor:pointer;" *ngFor="let row of nzTable.data,index as i" (mouseover)="sensorTableFocus(i)" (mouseout)="sensorTableBlur(i)" + [ngClass]="{'table-tr-bgcolor-focus': i === sensorTableFocusIndex,'table-tr-bgcolor-blur': i !== sensorTableFocusIndex}" + (click)="switchSensor(i)"> + <td nz-td class='sensor-name' [ngStyle]="{'width':'160px','text-align': 'center'}"> + <span> + <span>{{ row.sensor.name+'('+row.sensor.unit+')' }}</span> + <i *ngIf="chartSelectedIndex==i" class="anticon anticon-line-chart"></i> + </span> + </td> + </tr> + </tbody> + </nz-table> + </div> + </div> + </div> +</nz-card> diff --git a/src/app/routes/analysis/query/query.component.less b/src/app/routes/reports/query/query.component.less similarity index 74% rename from src/app/routes/analysis/query/query.component.less rename to src/app/routes/reports/query/query.component.less index 6a879b2..3abb251 100644 --- a/src/app/routes/analysis/query/query.component.less +++ b/src/app/routes/reports/query/query.component.less @@ -9,10 +9,16 @@ } .table-scroll { z-index: 9; - height: 398px; + height: auto; + max-height: 388px; overflow: hidden; } .table-scroll-box-shadow { -moz-box-shadow: 4px 0 2px rgba(0, 0, 0, 0.1); /* ������ Firefox */ box-shadow: 4px 0 2px rgba(0, 0, 0, 0.1); } +.chart-switch-select { + position: absolute; + right: 10%; + top: 2%; +} diff --git a/src/app/routes/analysis/query/query.component.ts b/src/app/routes/reports/query/query.component.ts similarity index 97% rename from src/app/routes/analysis/query/query.component.ts rename to src/app/routes/reports/query/query.component.ts index fca727c..b113d75 100644 --- a/src/app/routes/analysis/query/query.component.ts +++ b/src/app/routes/reports/query/query.component.ts @@ -1,6 +1,6 @@ import { Component, OnInit, ViewChild } from '@angular/core'; import { _HttpClient } from '@delon/theme'; -import { Sensor, Device, DataCondition, MonitorPoint, Organization, LineChartCriteria, PairData } from '@business/entity/data'; +import { Sensor, Device, DataCondition, MonitorPoint, Organization, LineChartCriteria } from '@business/entity/data'; import { TimeUnits, AreaRange, ResultCode } from '@business/enum/types.enum'; import { SensorsService } from '@business/services/http/sensors.service'; import { PageBean, ResultBean, Grid } from '@business/entity/grid'; @@ -454,7 +454,7 @@ // ������������ this.grid.data = []; this.http.post(environment.SERVER_BASH_URL + '/report/line-chart', lineChartCriteria).subscribe( - (res: ResultBean<{[key: string]: Array<Array<PairData>>}>) => { + (res: ResultBean<{[key: string]: Array<Array<number>>}>) => { if (res.code === 1) { const data = res.data; if (!!data) { @@ -470,13 +470,13 @@ weight = !!weight ? weight : 101; // this.gridSensors.push(sensor); const sensorData = data[key][0].map( - pair => { + value => { if (weight > 100) { // pair.value ���null,������������ - weight = !!pair.value ? weight : weight + 1; + weight = !!value ? weight : weight + 1; } // ���������������������2��� - return !!pair.value ? String(Math.round(pair.value * 100) / 100) : '-'; + return !!value ? String(Math.round(value * 100) / 100) : '-'; } ); this.grid.data.push({sensor: sensor, data: sensorData, weight: weight}); @@ -560,6 +560,7 @@ } // ������������������ ������������ public _chartTitleTemp = ''; + public _tableTitleTemp = ''; public reloadChartTitle(): void { const names = ['������', '������', '������', '������']; switch ( this.dataCondition.areaRange ) { @@ -578,10 +579,14 @@ if ( this.grid.data.length > this.chartSelectedIndex) { names[3] = this.grid.data[this.chartSelectedIndex].sensor.name; } - const title = names.join(' ') + ' ������'; + const title = names.join(' ') + ' ������'; if (title.trim() !== this._chartTitleTemp.trim()) { this._chartTitleTemp = title; } + const tableTile = names.slice(0, -1).join(' ') + ' ������������'; + if (tableTile.trim() !== this._tableTitleTemp.trim()) { + this._tableTitleTemp = tableTile; + } } public switchSensor(index: number): void { this.chartSelectedIndex = index; diff --git a/src/app/routes/reports/reports.module.ts b/src/app/routes/reports/reports.module.ts index 4cb1096..e050e3b 100644 --- a/src/app/routes/reports/reports.module.ts +++ b/src/app/routes/reports/reports.module.ts @@ -6,14 +6,25 @@ import { DemoComponent } from './demo/demo.component'; import { ExcelComponent } from './excel/excel.component'; +import { QueryComponent } from './query/query.component'; +import { PipeModule } from '@business/pipe/pipe.module'; +import { NzTreeModule } from 'ng-tree-antd'; +import { NgxEchartsModule } from 'ngx-echarts'; +import { SensorsService } from '@business/services/http/sensors.service'; +import { NzMessageService } from 'ng-zorro-antd'; +import { AreacodeService } from '@business/services/http/areacode.service'; +import { MonitorPointService } from '@business/services/http/monitor-point.service'; +import { DeviceService } from '@business/services/http/device.service'; +import { DateService } from '@business/services/util/date.service'; const routes: Routes = [ { path: '', children: [ + { path: 'query', component: QueryComponent }, { path: 'demo', component: DemoComponent }, - { path: 'excel', component: ExcelComponent } - + { path: 'excel', component: ExcelComponent }, + ] } ]; @@ -22,6 +33,10 @@ @NgModule({ imports: [ + // ������������������������������������ + PipeModule, + NzTreeModule, + NgxEchartsModule, CommonModule, SharedModule, RouterModule.forChild(routes) @@ -29,8 +44,11 @@ declarations: [ ...COMPONENTS_NOROUNT, DemoComponent, - ExcelComponent + ExcelComponent, + QueryComponent ], + providers: [SensorsService, NzMessageService, AreacodeService, + MonitorPointService, DeviceService, DateService], entryComponents: COMPONENTS_NOROUNT }) export class ReportsModule { } diff --git a/src/app/routes/routes-routing.module.ts b/src/app/routes/routes-routing.module.ts index 348be0f..f026255 100644 --- a/src/app/routes/routes-routing.module.ts +++ b/src/app/routes/routes-routing.module.ts @@ -29,8 +29,7 @@ { path: 'devices', loadChildren: './devices/devices.module#DevicesModule' }, { path: 'sensors', loadChildren: './sensors/sensors.module#SensorsModule' }, { path: 'systems', loadChildren: './systems/systems.module#SystemsModule' }, - { path: 'reports', loadChildren: './reports/reports.module#ReportsModule' }, - { path: 'analysis', loadChildren: './analysis/analysis.module#AnalysisModule' }, + { path: 'reports', loadChildren: './reports/reports.module#ReportsModule' } ] }, // passport { diff --git a/src/app/routes/systems/account/account.component.html b/src/app/routes/systems/account/account.component.html index 2fbcc16..a3e795f 100644 --- a/src/app/routes/systems/account/account.component.html +++ b/src/app/routes/systems/account/account.component.html @@ -144,7 +144,7 @@ <label for="accountName" >������</label> </div> <div nz-form-control nz-col [nzSm]="14" [nzXs]="24"> - <nz-input [nzSize]="'large'" nzReadonly="true" formControlName="accountName" [nzId]="'accountName'"></nz-input> + <h4 class="h4">{{ getFormControl('accountName').value }}</h4> </div> </div> <div nz-form-item nz-row> diff --git a/src/assets/app-data.json b/src/assets/app-data.json index 76b2b22..30c85ad 100644 --- a/src/assets/app-data.json +++ b/src/assets/app-data.json @@ -51,20 +51,15 @@ "text": "������������", "link": "/sensors/basic" }] - }, { - "text": "������������", - "icon": "icon-graph", - "children": [ - { - "text": "������������", - "link": "/analysis/query" - } - ] - }, { + },{ "text": "������������", "icon": "icon-chart", "children": [ { + "text": "������������", + "link": "/reports/query" + }, + { "text": "���������������", "link": "/reports/demo" }, -- Gitblit v1.8.0