Browse Source

Get currentEntity data from stateParams instead doing find-request

pull/7863/head
Tarnavskiy 4 years ago
parent
commit
3664aedfd4
  1. 34
      ui-ngx/src/app/core/http/entity.service.ts

34
ui-ngx/src/app/core/http/entity.service.ts

@ -869,8 +869,38 @@ export class EntityService {
};
aliasInfo.currentEntity = null;
if (!aliasInfo.resolveMultiple && aliasInfo.entityFilter) {
return this.findSingleEntityInfoByEntityFilter(aliasInfo.entityFilter,
{ignoreLoading: true, ignoreErrors: true}).pipe(
let entityInfoObservable: Observable<EntityInfo>;
if (result.stateEntity && aliasInfo.entityFilter.type === AliasFilterType.singleEntity) {
let currentEntity: EntityInfo = null;
if (stateParams) {
if (result.entityParamName && result.entityParamName.length) {
const stateEntity = stateParams[result.entityParamName];
if (stateEntity) {
currentEntity = {
id: stateEntity.entityId.id,
entityType: stateEntity.entityId.entityType,
name: stateEntity.entityName,
label: stateEntity.entityLabel
};
}
} else {
if (stateParams.entityId) {
currentEntity = {
id: stateParams.entityId.id,
entityType: stateParams.entityId.entityType as EntityType,
name: stateParams.entityName,
label: stateParams.entityLabel
};
}
}
}
entityInfoObservable = currentEntity ? of(currentEntity) : this.findSingleEntityInfoByEntityFilter(aliasInfo.entityFilter,
{ignoreLoading: true, ignoreErrors: true});
} else {
entityInfoObservable = this.findSingleEntityInfoByEntityFilter(aliasInfo.entityFilter,
{ignoreLoading: true, ignoreErrors: true});
}
return entityInfoObservable.pipe(
map((entity) => {
aliasInfo.currentEntity = entity;
return aliasInfo;

Loading…
Cancel
Save