UI: Fixed process entity type in entity table widgets

This commit is contained in:
Vladyslav_Prykhodko 2024-09-03 18:15:21 +03:00
parent 92cfffab1e
commit 9c961878eb
3 changed files with 9 additions and 6 deletions

View File

@ -49,7 +49,7 @@ import { DataKeyType } from '@shared/models/telemetry/telemetry.models';
import { BehaviorSubject, fromEvent, merge, Observable, Subject } from 'rxjs';
import { emptyPageData, PageData } from '@shared/models/page/page-data';
import { EntityId } from '@shared/models/id/entity-id';
import { entityTypeTranslations } from '@shared/models/entity-type.models';
import { EntityType, entityTypeTranslations } from '@shared/models/entity-type.models';
import { debounceTime, distinctUntilChanged, map, takeUntil } from 'rxjs/operators';
import { MatPaginator } from '@angular/material/paginator';
import { MatSort, SortDirection } from '@angular/material/sort';
@ -408,7 +408,9 @@ export class EntitiesTableWidgetComponent extends PageComponent implements OnIni
} as EntityColumn
);
this.contentsInfo.entityType = {
useCellContentFunction: false
useCellContentFunction: true,
cellContentFunction: (entityType: EntityType) =>
entityType ? this.translate.instant(entityTypeTranslations.get(entityType).type) : ''
};
this.stylesInfo.entityType = {
useCellStyleFunction: false
@ -869,9 +871,9 @@ class EntityDatasource implements DataSource<EntityData> {
}
if (datasource.entityType) {
entity.id.entityType = datasource.entityType;
entity.entityType = this.translate.instant(entityTypeTranslations.get(datasource.entityType).type);
entity.entityType = datasource.entityType;
} else {
entity.entityType = '';
entity.entityType = null;
}
this.dataKeys.forEach((dataKey, index) => {
const keyData = data[index].data;

View File

@ -25,6 +25,7 @@ import { DataKeyType } from '@shared/models/telemetry/telemetry.models';
import { WidgetContext } from '@home/models/widget-component.models';
import { UtilsService } from '@core/services/utils.service';
import { TranslateService } from '@ngx-translate/core';
import { EntityType } from '@shared/models/entity-type.models';
type ColumnVisibilityOptions = 'visible' | 'hidden' | 'hidden-mobile';
@ -65,7 +66,7 @@ export interface EntityData {
id: EntityId;
entityName: string;
entityLabel?: string;
entityType?: string;
entityType?: EntityType;
actionCellButtons?: TableCellButtonActionDescriptor[];
hasActions?: boolean;
[key: string]: any;

View File

@ -36,7 +36,7 @@ return widgetContext.currentUser.authority === 'CUSTOMER_USER';
* Display action only if the entity in the row is device and has type `thermostat`:
```javascript
return data && data.entityType === 'Device' && data.Type === 'thermostat';
return data && data.entityType === 'DEVICE' && data.Type === 'thermostat';
{:copy-code}
```