Added correct alias filtering for edge disabled/enabled events
This commit is contained in:
parent
595fb99cb4
commit
cd78514bc0
@ -43,7 +43,13 @@ import { RuleChainService } from '@core/http/rule-chain.service';
|
|||||||
import { AliasInfo, StateParams, SubscriptionInfo } from '@core/api/widget-api.models';
|
import { AliasInfo, StateParams, SubscriptionInfo } from '@core/api/widget-api.models';
|
||||||
import { DataKey, Datasource, DatasourceType, KeyInfo } from '@app/shared/models/widget.models';
|
import { DataKey, Datasource, DatasourceType, KeyInfo } from '@app/shared/models/widget.models';
|
||||||
import { UtilsService } from '@core/services/utils.service';
|
import { UtilsService } from '@core/services/utils.service';
|
||||||
import { AliasFilterType, EntityAlias, EntityAliasFilter, EntityAliasFilterResult } from '@shared/models/alias.models';
|
import {
|
||||||
|
AliasFilterType,
|
||||||
|
edgeAliasFilterTypes,
|
||||||
|
EntityAlias,
|
||||||
|
EntityAliasFilter,
|
||||||
|
EntityAliasFilterResult
|
||||||
|
} from '@shared/models/alias.models';
|
||||||
import {
|
import {
|
||||||
EdgeImportEntityData,
|
EdgeImportEntityData,
|
||||||
EntitiesKeysByQuery,
|
EntitiesKeysByQuery,
|
||||||
@ -495,7 +501,16 @@ export class EntityService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public getAliasFilterTypesByEntityTypes(entityTypes: Array<EntityType | AliasEntityType>): Array<AliasFilterType> {
|
public getAliasFilterTypesByEntityTypes(entityTypes: Array<EntityType | AliasEntityType>): Array<AliasFilterType> {
|
||||||
const allAliasFilterTypes: Array<AliasFilterType> = Object.keys(AliasFilterType).map((key) => AliasFilterType[key]);
|
const authState = getCurrentAuthState(this.store);
|
||||||
|
const allAliasFilterTypes: Array<AliasFilterType> = Object.keys(AliasFilterType)
|
||||||
|
.map((key) => AliasFilterType[key])
|
||||||
|
.filter(aft => {
|
||||||
|
if (authState.edgesSupportEnabled) {
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return edgeAliasFilterTypes.indexOf(aft) === -1;
|
||||||
|
}
|
||||||
|
});
|
||||||
if (!entityTypes || !entityTypes.length) {
|
if (!entityTypes || !entityTypes.length) {
|
||||||
return allAliasFilterTypes;
|
return allAliasFilterTypes;
|
||||||
}
|
}
|
||||||
@ -622,14 +637,14 @@ export class EntityService {
|
|||||||
case Authority.TENANT_ADMIN:
|
case Authority.TENANT_ADMIN:
|
||||||
entityTypes.push(EntityType.DEVICE);
|
entityTypes.push(EntityType.DEVICE);
|
||||||
entityTypes.push(EntityType.ASSET);
|
entityTypes.push(EntityType.ASSET);
|
||||||
if (authState.edgesSupportEnabled) {
|
|
||||||
entityTypes.push(EntityType.EDGE);
|
|
||||||
}
|
|
||||||
entityTypes.push(EntityType.ENTITY_VIEW);
|
entityTypes.push(EntityType.ENTITY_VIEW);
|
||||||
entityTypes.push(EntityType.TENANT);
|
entityTypes.push(EntityType.TENANT);
|
||||||
entityTypes.push(EntityType.CUSTOMER);
|
entityTypes.push(EntityType.CUSTOMER);
|
||||||
entityTypes.push(EntityType.USER);
|
entityTypes.push(EntityType.USER);
|
||||||
entityTypes.push(EntityType.DASHBOARD);
|
entityTypes.push(EntityType.DASHBOARD);
|
||||||
|
if (authState.edgesSupportEnabled) {
|
||||||
|
entityTypes.push(EntityType.EDGE);
|
||||||
|
}
|
||||||
if (useAliasEntityTypes) {
|
if (useAliasEntityTypes) {
|
||||||
entityTypes.push(AliasEntityType.CURRENT_CUSTOMER);
|
entityTypes.push(AliasEntityType.CURRENT_CUSTOMER);
|
||||||
entityTypes.push(AliasEntityType.CURRENT_TENANT);
|
entityTypes.push(AliasEntityType.CURRENT_TENANT);
|
||||||
@ -638,13 +653,13 @@ export class EntityService {
|
|||||||
case Authority.CUSTOMER_USER:
|
case Authority.CUSTOMER_USER:
|
||||||
entityTypes.push(EntityType.DEVICE);
|
entityTypes.push(EntityType.DEVICE);
|
||||||
entityTypes.push(EntityType.ASSET);
|
entityTypes.push(EntityType.ASSET);
|
||||||
if (authState.edgesSupportEnabled) {
|
|
||||||
entityTypes.push(EntityType.EDGE);
|
|
||||||
}
|
|
||||||
entityTypes.push(EntityType.ENTITY_VIEW);
|
entityTypes.push(EntityType.ENTITY_VIEW);
|
||||||
entityTypes.push(EntityType.CUSTOMER);
|
entityTypes.push(EntityType.CUSTOMER);
|
||||||
entityTypes.push(EntityType.USER);
|
entityTypes.push(EntityType.USER);
|
||||||
entityTypes.push(EntityType.DASHBOARD);
|
entityTypes.push(EntityType.DASHBOARD);
|
||||||
|
if (authState.edgesSupportEnabled) {
|
||||||
|
entityTypes.push(EntityType.EDGE);
|
||||||
|
}
|
||||||
if (useAliasEntityTypes) {
|
if (useAliasEntityTypes) {
|
||||||
entityTypes.push(AliasEntityType.CURRENT_CUSTOMER);
|
entityTypes.push(AliasEntityType.CURRENT_CUSTOMER);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -45,7 +45,7 @@ import {
|
|||||||
} from '@home/components/alias/entity-aliases-dialog.component';
|
} from '@home/components/alias/entity-aliases-dialog.component';
|
||||||
import { ItemBufferService, WidgetItem } from '@core/services/item-buffer.service';
|
import { ItemBufferService, WidgetItem } from '@core/services/item-buffer.service';
|
||||||
import { FileType, ImportWidgetResult, JSON_TYPE, WidgetsBundleItem, ZIP_TYPE } from './import-export.models';
|
import { FileType, ImportWidgetResult, JSON_TYPE, WidgetsBundleItem, ZIP_TYPE } from './import-export.models';
|
||||||
import { AliasEntityType, EntityType } from '@shared/models/entity-type.models';
|
import { EntityType } from '@shared/models/entity-type.models';
|
||||||
import { UtilsService } from '@core/services/utils.service';
|
import { UtilsService } from '@core/services/utils.service';
|
||||||
import { WidgetService } from '@core/http/widget.service';
|
import { WidgetService } from '@core/http/widget.service';
|
||||||
import { NULL_UUID } from '@shared/models/id/has-uuid';
|
import { NULL_UUID } from '@shared/models/id/has-uuid';
|
||||||
@ -686,9 +686,6 @@ export class ImportExportService {
|
|||||||
|
|
||||||
private editMissingAliases(widgets: Array<Widget>, isSingleWidget: boolean,
|
private editMissingAliases(widgets: Array<Widget>, isSingleWidget: boolean,
|
||||||
customTitle: string, missingEntityAliases: EntityAliases): Observable<EntityAliases> {
|
customTitle: string, missingEntityAliases: EntityAliases): Observable<EntityAliases> {
|
||||||
const allowedEntityTypes: Array<EntityType | AliasEntityType> =
|
|
||||||
this.entityService.prepareAllowedEntityTypesList(null, true);
|
|
||||||
|
|
||||||
return this.dialog.open<EntityAliasesDialogComponent, EntityAliasesDialogData,
|
return this.dialog.open<EntityAliasesDialogComponent, EntityAliasesDialogData,
|
||||||
EntityAliases>(EntityAliasesDialogComponent, {
|
EntityAliases>(EntityAliasesDialogComponent, {
|
||||||
disableClose: true,
|
disableClose: true,
|
||||||
@ -698,8 +695,7 @@ export class ImportExportService {
|
|||||||
widgets,
|
widgets,
|
||||||
customTitle,
|
customTitle,
|
||||||
isSingleWidget,
|
isSingleWidget,
|
||||||
disableAdd: true,
|
disableAdd: true
|
||||||
allowedEntityTypes
|
|
||||||
}
|
}
|
||||||
}).afterClosed().pipe(
|
}).afterClosed().pipe(
|
||||||
map((updatedEntityAliases) => {
|
map((updatedEntityAliases) => {
|
||||||
|
|||||||
@ -37,6 +37,11 @@ export enum AliasFilterType {
|
|||||||
entityViewSearchQuery = 'entityViewSearchQuery'
|
entityViewSearchQuery = 'entityViewSearchQuery'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const edgeAliasFilterTypes = new Array<string>(
|
||||||
|
AliasFilterType.edgeType,
|
||||||
|
AliasFilterType.edgeSearchQuery
|
||||||
|
);
|
||||||
|
|
||||||
export const aliasFilterTypeTranslationMap = new Map<AliasFilterType, string>(
|
export const aliasFilterTypeTranslationMap = new Map<AliasFilterType, string>(
|
||||||
[
|
[
|
||||||
[ AliasFilterType.singleEntity, 'alias.filter-type-single-entity' ],
|
[ AliasFilterType.singleEntity, 'alias.filter-type-single-entity' ],
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user