From: ychacon Date: Thu, 18 Feb 2021 14:21:03 +0000 (+0100) Subject: Fix implementation for sorting tables in EI X-Git-Tag: 2.2.0~81 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F77%2F5677%2F1;p=portal%2Fnonrtric-controlpanel.git Fix implementation for sorting tables in EI Issue-ID: NONRTRIC-447 Signed-off-by: ychacon Change-Id: I95a772f4d74f9342cf020a75b355a7fadbcd4df8 --- diff --git a/webapp-frontend/src/app/ei-coordinator/ei-coordinator.component.ts b/webapp-frontend/src/app/ei-coordinator/ei-coordinator.component.ts index 1bd7220..d19e3a9 100644 --- a/webapp-frontend/src/app/ei-coordinator/ei-coordinator.component.ts +++ b/webapp-frontend/src/app/ei-coordinator/ei-coordinator.component.ts @@ -84,7 +84,7 @@ export class EICoordinatorComponent implements OnInit { ngOnInit() { this.eiJobsDataSource.loadJobs(); this.eiProducersDataSource.loadProducers(); - this.jobsDataSource = this.eiJobsDataSource.jobsDataSource(); + this.jobsDataSource = new MatTableDataSource(this.eiJobsDataSource.eiJobs()); this.producersDataSource = new MatTableDataSource(this.eiProducersDataSource.eiProducers()); this.jobsFormControl.valueChanges.subscribe(value => { @@ -217,7 +217,7 @@ export class EICoordinatorComponent implements OnInit { refreshTables() { this.eiJobsDataSource.loadJobs(); - this.jobsDataSource = this.eiJobsDataSource.jobsDataSource(); + this.jobsDataSource.data = this.eiJobsDataSource.eiJobs(); this.eiProducersDataSource.loadProducers(); this.producersDataSource.data = this.eiProducersDataSource.eiProducers(); } diff --git a/webapp-frontend/src/app/ei-coordinator/ei-job.datasource.ts b/webapp-frontend/src/app/ei-coordinator/ei-job.datasource.ts index 0727625..bf3c867 100644 --- a/webapp-frontend/src/app/ei-coordinator/ei-job.datasource.ts +++ b/webapp-frontend/src/app/ei-coordinator/ei-job.datasource.ts @@ -24,10 +24,6 @@ import { BehaviorSubject } from 'rxjs/BehaviorSubject'; import { EIJob } from '../interfaces/ei.types'; import { EIService } from '../services/ei/ei.service'; -import { MatTableDataSource } from '@angular/material'; -import { ViewChild } from '@angular/core'; -import { MatSort } from '@angular/material/sort'; -import { delay } from 'rxjs/operators'; @Injectable({ providedIn: 'root' @@ -36,12 +32,9 @@ import { delay } from 'rxjs/operators'; export class EIJobDataSource { private jobs: Array = []; - private dataSource: MatTableDataSource = new MatTableDataSource(); - @ViewChild(MatSort, { static: true }) sort: MatSort; - - public jobsDataSource(): MatTableDataSource { - return this.dataSource; + public eiJobs(): EIJob[] { + return this.jobs; } private loadingSubject = new BehaviorSubject(false); @@ -62,21 +55,15 @@ export class EIJobDataSource { producerIds.forEach(id => { this.getJobsForProducer(id); }); - //this.dataSource = new MatTableDataSource(); - this.dataSource.data = this.jobs; - this.dataSource.sort = this.sort; - console.log("datasource: "+this.dataSource.data); }); this.rowCount = this.jobs.length; } private getJobsForProducer(id: string) { console.log('Getting jobs for producer ID: ', id); - this.eiSvc.getJobsForProducer(id)//.pipe(delay(5000)) + this.eiSvc.getJobsForProducer(id) .subscribe(producerJobs => { - this.jobs = this.jobs.concat(producerJobs); - console.log("producerJobs: "+producerJobs); - + this.jobs = this.jobs.concat(producerJobs); }); } }