Fetch Edge Rule Chains with this.route.url.includes('edges')

This commit is contained in:
Artem Babak 2020-10-21 10:34:52 +03:00
parent 74b150b384
commit 7a9ca169a2
3 changed files with 13 additions and 9 deletions

View File

@ -70,8 +70,8 @@ import {
import { alarmFields } from '@shared/models/alarm.models'; import { alarmFields } from '@shared/models/alarm.models';
import { EdgeService } from "@core/http/edge.service"; import { EdgeService } from "@core/http/edge.service";
import { EdgeSearchQuery } from "@shared/models/edge.models";
import { ruleChainType } from "@shared/models/rule-chain.models"; import { ruleChainType } from "@shared/models/rule-chain.models";
import { Router } from "@angular/router";
@Injectable({ @Injectable({
providedIn: 'root' providedIn: 'root'
@ -92,7 +92,8 @@ export class EntityService {
private dashboardService: DashboardService, private dashboardService: DashboardService,
private entityRelationService: EntityRelationService, private entityRelationService: EntityRelationService,
private attributeService: AttributeService, private attributeService: AttributeService,
private utils: UtilsService private utils: UtilsService,
private route: Router
) { } ) { }
private getEntityObservable(entityType: EntityType, entityId: string, private getEntityObservable(entityType: EntityType, entityId: string,
@ -322,7 +323,11 @@ export class EntityService {
break; break;
case EntityType.RULE_CHAIN: case EntityType.RULE_CHAIN:
pageLink.sortOrder.property = 'name'; pageLink.sortOrder.property = 'name';
entitiesObservable = this.ruleChainService.getRuleChains(pageLink, subType, config); if (this.route.url.includes('edges')) {
entitiesObservable = this.ruleChainService.getRuleChains(pageLink, ruleChainType.edge, config);
} else {
entitiesObservable = this.ruleChainService.getRuleChains(pageLink, ruleChainType.core, config);
}
break; break;
case EntityType.DASHBOARD: case EntityType.DASHBOARD:
pageLink.sortOrder.property = 'title'; pageLink.sortOrder.property = 'title';

View File

@ -298,10 +298,6 @@ export class RuleChainService {
defaultHttpOptionsFromConfig(config) ) defaultHttpOptionsFromConfig(config) )
} }
public getEdgesRuleChains(pageLink: PageLink, config?: RequestConfig): Observable<PageData<RuleChain>> {
return this.getRuleChains(pageLink, ruleChainType.edge, config);
}
public assignRuleChainToEdge(edgeId: string, ruleChainId: string, config?: RequestConfig): Observable<RuleChain> { public assignRuleChainToEdge(edgeId: string, ruleChainId: string, config?: RequestConfig): Observable<RuleChain> {
return this.http.post<RuleChain>(`/api/edge/${edgeId}/ruleChain/${ruleChainId}`, null, return this.http.post<RuleChain>(`/api/edge/${edgeId}/ruleChain/${ruleChainId}`, null,
defaultHttpOptionsFromConfig(config)); defaultHttpOptionsFromConfig(config));

View File

@ -497,12 +497,15 @@ export class RuleChainsTableConfigResolver implements Resolve<EntityTableConfig<
this.ruleChainService.getDefaultEdgeRuleChains().pipe( this.ruleChainService.getDefaultEdgeRuleChains().pipe(
map(ruleChains => map(ruleChains =>
ruleChains.map(ruleChain => ruleChains.map(ruleChain =>
defaultEdgeRuleChainIds.push(ruleChain.id.id))) defaultEdgeRuleChainIds.push(ruleChain.id.id)
)
)
).subscribe(); ).subscribe();
return this.ruleChainService.getRuleChains(pageLink, ruleChainType.edge).pipe( return this.ruleChainService.getRuleChains(pageLink, ruleChainType.edge).pipe(
map((response) => { map((response) => {
response.data.map(ruleChain => response.data.map(ruleChain =>
ruleChain.isDefault = defaultEdgeRuleChainIds.some(id => ruleChain.id.id.includes(id))); ruleChain.isDefault = defaultEdgeRuleChainIds.some(id => ruleChain.id.id.includes(id))
);
return response; return response;
}) })
); );