Fixes after code review
This commit is contained in:
parent
95ce5595fc
commit
12b5a932c3
@ -594,6 +594,21 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
|
case types.aliasFilterType.edgeType.value:
|
||||||
|
getEntitiesByNameFilter(types.entityType.edge, filter.edgeNameFilter, maxItems, {ignoreLoading: true}, filter.edgeType).then(
|
||||||
|
function success(entities) {
|
||||||
|
if (entities && entities.length || !failOnEmpty) {
|
||||||
|
result.entities = entitiesToEntitiesInfo(entities);
|
||||||
|
deferred.resolve(result);
|
||||||
|
} else {
|
||||||
|
deferred.reject();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
function fail() {
|
||||||
|
deferred.reject();
|
||||||
|
}
|
||||||
|
);
|
||||||
|
break;
|
||||||
case types.aliasFilterType.relationsQuery.value:
|
case types.aliasFilterType.relationsQuery.value:
|
||||||
result.stateEntity = filter.rootStateEntity;
|
result.stateEntity = filter.rootStateEntity;
|
||||||
var rootEntityType;
|
var rootEntityType;
|
||||||
@ -648,6 +663,7 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
|||||||
case types.aliasFilterType.assetSearchQuery.value:
|
case types.aliasFilterType.assetSearchQuery.value:
|
||||||
case types.aliasFilterType.deviceSearchQuery.value:
|
case types.aliasFilterType.deviceSearchQuery.value:
|
||||||
case types.aliasFilterType.entityViewSearchQuery.value:
|
case types.aliasFilterType.entityViewSearchQuery.value:
|
||||||
|
case types.aliasFilterType.edgeSearchQuery.value:
|
||||||
result.stateEntity = filter.rootStateEntity;
|
result.stateEntity = filter.rootStateEntity;
|
||||||
if (result.stateEntity && stateEntityId) {
|
if (result.stateEntity && stateEntityId) {
|
||||||
rootEntityType = stateEntityId.entityType;
|
rootEntityType = stateEntityId.entityType;
|
||||||
@ -777,6 +793,8 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
|||||||
return entityType === types.entityType.device;
|
return entityType === types.entityType.device;
|
||||||
case types.aliasFilterType.entityViewType.value:
|
case types.aliasFilterType.entityViewType.value:
|
||||||
return entityType === types.entityType.entityView;
|
return entityType === types.entityType.entityView;
|
||||||
|
case types.aliasFilterType.edgeType.value:
|
||||||
|
return entityType === types.entityType.edge;
|
||||||
case types.aliasFilterType.relationsQuery.value:
|
case types.aliasFilterType.relationsQuery.value:
|
||||||
return true;
|
return true;
|
||||||
case types.aliasFilterType.assetSearchQuery.value:
|
case types.aliasFilterType.assetSearchQuery.value:
|
||||||
@ -906,6 +924,7 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
|||||||
entityFieldKeys.push(types.entityField.phone.keyName);
|
entityFieldKeys.push(types.entityField.phone.keyName);
|
||||||
break;
|
break;
|
||||||
case types.entityType.entityView:
|
case types.entityType.entityView:
|
||||||
|
case types.entityType.edge:
|
||||||
entityFieldKeys.push(types.entityField.name.keyName);
|
entityFieldKeys.push(types.entityField.name.keyName);
|
||||||
entityFieldKeys.push(types.entityField.type.keyName);
|
entityFieldKeys.push(types.entityField.type.keyName);
|
||||||
break;
|
break;
|
||||||
@ -1121,6 +1140,8 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
|||||||
findByQueryPromise = deviceService.findByQuery(entitySearchQuery, true, {ignoreLoading: true});
|
findByQueryPromise = deviceService.findByQuery(entitySearchQuery, true, {ignoreLoading: true});
|
||||||
} else if (entityType == types.entityType.entityView) {
|
} else if (entityType == types.entityType.entityView) {
|
||||||
findByQueryPromise = entityViewService.findByQuery(entitySearchQuery, true, {ignoreLoading: true});
|
findByQueryPromise = entityViewService.findByQuery(entitySearchQuery, true, {ignoreLoading: true});
|
||||||
|
} else if (entityType == types.entityType.edge) {
|
||||||
|
findByQueryPromise = edgeService.findByQuery(entitySearchQuery, true, {ignoreLoading: true});
|
||||||
}
|
}
|
||||||
findByQueryPromise.then(
|
findByQueryPromise.then(
|
||||||
function success(entities) {
|
function success(entities) {
|
||||||
|
|||||||
@ -86,6 +86,15 @@ export default function EntityFilterViewDirective($compile, $templateCache, $q,
|
|||||||
scope.filterDisplayValue = $translate.instant('alias.filter-type-entity-view-type-description', {entityViewType: entityViewType});
|
scope.filterDisplayValue = $translate.instant('alias.filter-type-entity-view-type-description', {entityViewType: entityViewType});
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case types.aliasFilterType.edgeType.value:
|
||||||
|
var edgeType = scope.filter.edgeType;
|
||||||
|
prefix = scope.filter.edgeNameFilter;
|
||||||
|
if (prefix && prefix.length) {
|
||||||
|
scope.filterDisplayValue = $translate.instant('alias.filter-type-edge-type-and-name-description', {edgeType: edgeType, prefix: prefix});
|
||||||
|
} else {
|
||||||
|
scope.filterDisplayValue = $translate.instant('alias.filter-type-edge-type-description', {edgeType: edgeType});
|
||||||
|
}
|
||||||
|
break;
|
||||||
case types.aliasFilterType.relationsQuery.value:
|
case types.aliasFilterType.relationsQuery.value:
|
||||||
var rootEntityText;
|
var rootEntityText;
|
||||||
var directionText;
|
var directionText;
|
||||||
|
|||||||
@ -73,10 +73,15 @@ export default function EntityFilterDirective($compile, $templateCache, $q, $doc
|
|||||||
filter.entityViewType = null;
|
filter.entityViewType = null;
|
||||||
filter.entityViewNameFilter = '';
|
filter.entityViewNameFilter = '';
|
||||||
break;
|
break;
|
||||||
|
case types.aliasFilterType.edgeType.value:
|
||||||
|
filter.edgeType = null;
|
||||||
|
filter.edgeNameFilter = '';
|
||||||
|
break;
|
||||||
case types.aliasFilterType.relationsQuery.value:
|
case types.aliasFilterType.relationsQuery.value:
|
||||||
case types.aliasFilterType.assetSearchQuery.value:
|
case types.aliasFilterType.assetSearchQuery.value:
|
||||||
case types.aliasFilterType.deviceSearchQuery.value:
|
case types.aliasFilterType.deviceSearchQuery.value:
|
||||||
case types.aliasFilterType.entityViewSearchQuery.value:
|
case types.aliasFilterType.entityViewSearchQuery.value:
|
||||||
|
case types.aliasFilterType.edgeSearchQuery.value:
|
||||||
filter.rootStateEntity = false;
|
filter.rootStateEntity = false;
|
||||||
filter.stateEntityParamName = null;
|
filter.stateEntityParamName = null;
|
||||||
filter.defaultStateEntity = null;
|
filter.defaultStateEntity = null;
|
||||||
@ -95,6 +100,9 @@ export default function EntityFilterDirective($compile, $templateCache, $q, $doc
|
|||||||
} else if (filter.type === types.aliasFilterType.entityViewSearchQuery.value) {
|
} else if (filter.type === types.aliasFilterType.entityViewSearchQuery.value) {
|
||||||
filter.relationType = null;
|
filter.relationType = null;
|
||||||
filter.entityViewTypes = [];
|
filter.entityViewTypes = [];
|
||||||
|
} else if (filter.type === types.aliasFilterType.edgeSearchQuery.value) {
|
||||||
|
filter.relationType = null;
|
||||||
|
filter.edgeTypes = [];
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -126,6 +126,20 @@
|
|||||||
aria-label="{{ 'entity-view.name-starts-with' | translate }}">
|
aria-label="{{ 'entity-view.name-starts-with' | translate }}">
|
||||||
</md-input-container>
|
</md-input-container>
|
||||||
</section>
|
</section>
|
||||||
|
<section layout="column" ng-if="filter.type == types.aliasFilterType.edgeType.value" id="edgeTypeFilter">
|
||||||
|
<tb-entity-subtype-autocomplete
|
||||||
|
tb-required="true"
|
||||||
|
the-form="theForm"
|
||||||
|
ng-model="filter.edgeType"
|
||||||
|
entity-type="types.entityType.edge">
|
||||||
|
</tb-entity-subtype-autocomplete>
|
||||||
|
<md-input-container class="md-block">
|
||||||
|
<label translate>edge.name-starts-with</label>
|
||||||
|
<input name="edgeNameFilter"
|
||||||
|
ng-model="filter.edgeNameFilter"
|
||||||
|
aria-label="{{ 'edge.name-starts-with' | translate }}">
|
||||||
|
</md-input-container>
|
||||||
|
</section>
|
||||||
<section layout="column" ng-if="filter.type == types.aliasFilterType.relationsQuery.value" id="relationsQueryFilter">
|
<section layout="column" ng-if="filter.type == types.aliasFilterType.relationsQuery.value" id="relationsQueryFilter">
|
||||||
<label class="tb-small">{{ 'alias.root-entity' | translate }}</label>
|
<label class="tb-small">{{ 'alias.root-entity' | translate }}</label>
|
||||||
<section class="tb-root-state-entity-switch" layout="row" layout-align="start center" style="padding-left: 0px;">
|
<section class="tb-root-state-entity-switch" layout="row" layout-align="start center" style="padding-left: 0px;">
|
||||||
@ -426,4 +440,81 @@
|
|||||||
ng-model="filter.entityViewTypes">
|
ng-model="filter.entityViewTypes">
|
||||||
</tb-entity-subtype-list>
|
</tb-entity-subtype-list>
|
||||||
</section>
|
</section>
|
||||||
|
<section layout="column" ng-if="filter.type == types.aliasFilterType.edgeSearchQuery.value" id="edgeSearchQueryFilter">
|
||||||
|
<label class="tb-small">{{ 'alias.root-entity' | translate }}</label>
|
||||||
|
<section class="tb-root-state-entity-switch" layout="row" layout-align="start center" style="padding-left: 0px;">
|
||||||
|
<md-switch class="root-state-entity-switch" ng-model="filter.rootStateEntity"
|
||||||
|
aria-label="{{ 'alias.root-state-entity' | translate }}">
|
||||||
|
</md-switch>
|
||||||
|
<label class="tb-small root-state-entity-label" translate>alias.root-state-entity</label>
|
||||||
|
</section>
|
||||||
|
<div flex layout="row" ng-if="!filter.rootStateEntity">
|
||||||
|
<tb-entity-select flex
|
||||||
|
the-form="theForm"
|
||||||
|
tb-required="!filter.rootStateEntity"
|
||||||
|
ng-disabled="filter.rootStateEntity"
|
||||||
|
use-alias-entity-types="true"
|
||||||
|
ng-model="filter.rootEntity">
|
||||||
|
</tb-entity-select>
|
||||||
|
</div>
|
||||||
|
<div flex layout="row" ng-if="filter.rootStateEntity">
|
||||||
|
<md-input-container class="md-block" style="margin-top: 32px;">
|
||||||
|
<label translate>alias.state-entity-parameter-name</label>
|
||||||
|
<input name="stateEntityParamName"
|
||||||
|
placeholder="{{ 'alias.default-entity-parameter-name' | translate }}"
|
||||||
|
ng-model="filter.stateEntityParamName"
|
||||||
|
aria-label="{{ 'alias.state-entity-parameter-name' | translate }}">
|
||||||
|
</md-input-container>
|
||||||
|
<div flex layout="column">
|
||||||
|
<label class="tb-small">{{ 'alias.default-state-entity' | translate }}</label>
|
||||||
|
<tb-entity-select flex
|
||||||
|
the-form="theForm"
|
||||||
|
tb-required="false"
|
||||||
|
use-alias-entity-types="true"
|
||||||
|
ng-model="filter.defaultStateEntity">
|
||||||
|
</tb-entity-select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div flex layout="row">
|
||||||
|
<section class="tb-root-state-entity-switch" layout="row" layout-align="start center" style="padding-left: 0px;">
|
||||||
|
<md-switch class="root-state-entity-switch" ng-model="filter.fetchLastLevelOnly"
|
||||||
|
aria-label="{{ 'alias.last-level-relation' | translate }}">
|
||||||
|
</md-switch>
|
||||||
|
<label class="tb-small root-state-entity-label" translate>alias.last-level-relation</label>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
<div flex layout="row">
|
||||||
|
<md-input-container class="md-block" style="min-width: 100px;">
|
||||||
|
<label translate>relation.direction</label>
|
||||||
|
<md-select required ng-model="filter.direction">
|
||||||
|
<md-option ng-repeat="direction in types.entitySearchDirection" ng-value="direction">
|
||||||
|
{{ ('relation.search-direction.' + direction) | translate}}
|
||||||
|
</md-option>
|
||||||
|
</md-select>
|
||||||
|
</md-input-container>
|
||||||
|
<md-input-container flex class="md-block">
|
||||||
|
<label translate>alias.max-relation-level</label>
|
||||||
|
<input name="maxRelationLevel"
|
||||||
|
type="number"
|
||||||
|
min="1"
|
||||||
|
step="1"
|
||||||
|
placeholder="{{ 'alias.unlimited-level' | translate }}"
|
||||||
|
ng-model="filter.maxLevel"
|
||||||
|
aria-label="{{ 'alias.max-relation-level' | translate }}">
|
||||||
|
</md-input-container>
|
||||||
|
</div>
|
||||||
|
<div class="md-caption" style="color: rgba(0,0,0,0.57);" translate>relation.relation-type</div>
|
||||||
|
<tb-relation-type-autocomplete flex
|
||||||
|
hide-label
|
||||||
|
the-form="theForm"
|
||||||
|
ng-model="filter.relationType"
|
||||||
|
tb-required="false">
|
||||||
|
</tb-relation-type-autocomplete>
|
||||||
|
<div class="md-caption tb-required" style="color: rgba(0,0,0,0.57);" translate>edge.edge-types</div>
|
||||||
|
<tb-entity-subtype-list
|
||||||
|
tb-required="true"
|
||||||
|
entity-type="types.entityType.edge"
|
||||||
|
ng-model="filter.edgeTypes">
|
||||||
|
</tb-entity-subtype-list>
|
||||||
|
</section>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -508,6 +508,9 @@ function EntitiesHierarchyWidgetController($element, $scope, $q, $timeout, toast
|
|||||||
case types.entityType.entityView:
|
case types.entityType.entityView:
|
||||||
materialIcon = 'view_quilt';
|
materialIcon = 'view_quilt';
|
||||||
break;
|
break;
|
||||||
|
case types.entityType.edge:
|
||||||
|
materialIcon = 'router';
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user