Commit 3cc9ad50072ebbdaa0327c7eeef88b110ae1ca98

Authored by Vladyslav_Prykhodko
Committed by Andrew Shvayka
1 parent 6bc90275

UI: Improvement alarm tabs in the entity details: default time interval 30 days

... ... @@ -43,6 +43,7 @@ import {
43 43 AlarmDetailsDialogComponent,
44 44 AlarmDetailsDialogData
45 45 } from '@home/components/alarm/alarm-details-dialog.component';
  46 +import { DAY, historyInterval } from '@shared/models/time/time.models';
46 47
47 48 export class AlarmTableConfig extends EntityTableConfig<AlarmInfo, TimePageLink> {
48 49
... ... @@ -59,6 +60,7 @@ export class AlarmTableConfig extends EntityTableConfig<AlarmInfo, TimePageLink>
59 60 this.loadDataOnInit = false;
60 61 this.tableTitle = '';
61 62 this.useTimePageLink = true;
  63 + this.defaultTimewindowInterval = historyInterval(DAY * 30);
62 64 this.detailsPanelEnabled = false;
63 65 this.selectionEnabled = false;
64 66 this.searchEnabled = true;
... ...
... ... @@ -55,11 +55,11 @@ import { EntityTypeTranslation } from '@shared/models/entity-type.models';
55 55 import { DialogService } from '@core/services/dialog.service';
56 56 import { AddEntityDialogComponent } from './add-entity-dialog.component';
57 57 import { AddEntityDialogData, EntityAction } from '@home/models/entity/entity-component.models';
58   -import { DAY, historyInterval, HistoryWindowType, Timewindow } from '@shared/models/time/time.models';
  58 +import { HistoryWindowType, Timewindow } from '@shared/models/time/time.models';
59 59 import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
60 60 import { TbAnchorComponent } from '@shared/components/tb-anchor.component';
61 61 import { isDefined, isUndefined } from '@core/utils';
62   -import { HasUUID } from '../../../../shared/models/id/has-uuid';
  62 +import { HasUUID } from '@shared/models/id/has-uuid';
63 63
64 64 @Component({
65 65 selector: 'tb-entities-table',
... ... @@ -202,7 +202,7 @@ export class EntitiesTableComponent extends PageComponent implements AfterViewIn
202 202 this.pageSizeOptions = [this.defaultPageSize, this.defaultPageSize * 2, this.defaultPageSize * 3];
203 203
204 204 if (this.entitiesTableConfig.useTimePageLink) {
205   - this.timewindow = historyInterval(DAY);
  205 + this.timewindow = this.entitiesTableConfig.defaultTimewindowInterval;
206 206 const currentTime = Date.now();
207 207 this.pageLink = new TimePageLink(10, 0, null, sortOrder,
208 208 currentTime - this.timewindow.history.timewindowMs, currentTime);
... ... @@ -446,7 +446,7 @@ export class EntitiesTableComponent extends PageComponent implements AfterViewIn
446 446 resetSortAndFilter(update: boolean = true, preserveTimewindow: boolean = false) {
447 447 this.pageLink.textSearch = null;
448 448 if (this.entitiesTableConfig.useTimePageLink && !preserveTimewindow) {
449   - this.timewindow = historyInterval(DAY);
  449 + this.timewindow = this.entitiesTableConfig.defaultTimewindowInterval;
450 450 }
451 451 if (this.displayPagination) {
452 452 this.paginator.pageIndex = 0;
... ...
... ... @@ -30,6 +30,7 @@ import { EntitiesTableComponent } from '@home/components/entity/entities-table.c
30 30 import { EntityTableHeaderComponent } from '@home/components/entity/entity-table-header.component';
31 31 import { ActivatedRoute } from '@angular/router';
32 32 import { EntityTabsComponent } from '../../components/entity/entity-tabs.component';
  33 +import { DAY, historyInterval } from '@shared/models/time/time.models';
33 34
34 35 export type EntityBooleanFunction<T extends BaseData<HasId>> = (entity: T) => boolean;
35 36 export type EntityStringFunction<T extends BaseData<HasId>> = (entity: T) => string;
... ... @@ -135,6 +136,7 @@ export class EntityTableConfig<T extends BaseData<HasId>, P extends PageLink = P
135 136 onLoadAction: (route: ActivatedRoute) => void = null;
136 137 table: EntitiesTableComponent = null;
137 138 useTimePageLink = false;
  139 + defaultTimewindowInterval = historyInterval(DAY);
138 140 entityType: EntityType = null;
139 141 tableTitle = '';
140 142 selectionEnabled = true;
... ... @@ -162,7 +164,7 @@ export class EntityTableConfig<T extends BaseData<HasId>, P extends PageLink = P
162 164 dataSource: (dataLoadedFunction: (col?: number, row?: number) => void)
163 165 => EntitiesDataSource<L> = (dataLoadedFunction: (col?: number, row?: number) => void) => {
164 166 return new EntitiesDataSource(this.entitiesFetchFunction, this.entitySelectionEnabled, dataLoadedFunction);
165   - };
  167 + }
166 168 detailsReadonly: EntityBooleanFunction<T> = () => false;
167 169 entitySelectionEnabled: EntityBooleanFunction<L> = () => true;
168 170 deleteEnabled: EntityBooleanFunction<T | L> = () => true;
... ...