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;
|
||||
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:
|
||||
result.stateEntity = filter.rootStateEntity;
|
||||
var rootEntityType;
|
||||
@ -648,6 +663,7 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
||||
case types.aliasFilterType.assetSearchQuery.value:
|
||||
case types.aliasFilterType.deviceSearchQuery.value:
|
||||
case types.aliasFilterType.entityViewSearchQuery.value:
|
||||
case types.aliasFilterType.edgeSearchQuery.value:
|
||||
result.stateEntity = filter.rootStateEntity;
|
||||
if (result.stateEntity && stateEntityId) {
|
||||
rootEntityType = stateEntityId.entityType;
|
||||
@ -777,6 +793,8 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
||||
return entityType === types.entityType.device;
|
||||
case types.aliasFilterType.entityViewType.value:
|
||||
return entityType === types.entityType.entityView;
|
||||
case types.aliasFilterType.edgeType.value:
|
||||
return entityType === types.entityType.edge;
|
||||
case types.aliasFilterType.relationsQuery.value:
|
||||
return true;
|
||||
case types.aliasFilterType.assetSearchQuery.value:
|
||||
@ -906,6 +924,7 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
||||
entityFieldKeys.push(types.entityField.phone.keyName);
|
||||
break;
|
||||
case types.entityType.entityView:
|
||||
case types.entityType.edge:
|
||||
entityFieldKeys.push(types.entityField.name.keyName);
|
||||
entityFieldKeys.push(types.entityField.type.keyName);
|
||||
break;
|
||||
@ -1121,6 +1140,8 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
|
||||
findByQueryPromise = deviceService.findByQuery(entitySearchQuery, true, {ignoreLoading: true});
|
||||
} else if (entityType == types.entityType.entityView) {
|
||||
findByQueryPromise = entityViewService.findByQuery(entitySearchQuery, true, {ignoreLoading: true});
|
||||
} else if (entityType == types.entityType.edge) {
|
||||
findByQueryPromise = edgeService.findByQuery(entitySearchQuery, true, {ignoreLoading: true});
|
||||
}
|
||||
findByQueryPromise.then(
|
||||
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});
|
||||
}
|
||||
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:
|
||||
var rootEntityText;
|
||||
var directionText;
|
||||
|
||||
@ -73,10 +73,15 @@ export default function EntityFilterDirective($compile, $templateCache, $q, $doc
|
||||
filter.entityViewType = null;
|
||||
filter.entityViewNameFilter = '';
|
||||
break;
|
||||
case types.aliasFilterType.edgeType.value:
|
||||
filter.edgeType = null;
|
||||
filter.edgeNameFilter = '';
|
||||
break;
|
||||
case types.aliasFilterType.relationsQuery.value:
|
||||
case types.aliasFilterType.assetSearchQuery.value:
|
||||
case types.aliasFilterType.deviceSearchQuery.value:
|
||||
case types.aliasFilterType.entityViewSearchQuery.value:
|
||||
case types.aliasFilterType.edgeSearchQuery.value:
|
||||
filter.rootStateEntity = false;
|
||||
filter.stateEntityParamName = null;
|
||||
filter.defaultStateEntity = null;
|
||||
@ -95,6 +100,9 @@ export default function EntityFilterDirective($compile, $templateCache, $q, $doc
|
||||
} else if (filter.type === types.aliasFilterType.entityViewSearchQuery.value) {
|
||||
filter.relationType = null;
|
||||
filter.entityViewTypes = [];
|
||||
} else if (filter.type === types.aliasFilterType.edgeSearchQuery.value) {
|
||||
filter.relationType = null;
|
||||
filter.edgeTypes = [];
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@ -126,6 +126,20 @@
|
||||
aria-label="{{ 'entity-view.name-starts-with' | translate }}">
|
||||
</md-input-container>
|
||||
</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">
|
||||
<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;">
|
||||
@ -426,4 +440,81 @@
|
||||
ng-model="filter.entityViewTypes">
|
||||
</tb-entity-subtype-list>
|
||||
</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>
|
||||
|
||||
@ -508,6 +508,9 @@ function EntitiesHierarchyWidgetController($element, $scope, $q, $timeout, toast
|
||||
case types.entityType.entityView:
|
||||
materialIcon = 'view_quilt';
|
||||
break;
|
||||
case types.entityType.edge:
|
||||
materialIcon = 'router';
|
||||
break;
|
||||
}
|
||||
}
|
||||
return {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user