import { Component, OnInit, ViewChild, Inject } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { HealthFacilities } from '../models/HealthFacilities'; import { MatTableDataSource } from '@angular/material/table'; import { MatPaginator } from '@angular/material/paginator'; import { MatSort } from '@angular/material/sort'; import { HealthcareWorkers } from '../models/HealthcareWorkers'; @Component({ selector: 'app-counter-component', templateUrl: './counter.component.html', styleUrls: ['./counter.component.css'] }) export class CounterComponent implements OnInit { public facilities: HealthFacilities[]; public workers: HealthcareWorkers[]; displayedColumns = ['Име','Општина','Адреса', 'Тип', 'Е-пошта', 'Телефон']; displayedColumnsWorkers = ['Име','Гранка','Установа', 'Назив']; dataSource = new MatTableDataSource(); dataSourceWorkers = new MatTableDataSource(); @ViewChild(MatPaginator, {static: true}) paginator: MatPaginator; @ViewChild(MatSort) sort: MatSort; constructor(http: HttpClient, @Inject('BASE_URL') baseUrl: string) { http.get(baseUrl + 'HealthFacilities/Get?').subscribe(result => { this.facilities = result; console.log(this.facilities); this.dataSource = new MatTableDataSource(this.facilities); }, error => console.error(error)); http.get(baseUrl + 'HealthcareWorker/Get?').subscribe(result => { this.workers = result; console.log(this.workers); this.dataSourceWorkers = new MatTableDataSource(this.workers); }, error => console.error(error)); } ngOnInit(): void { } ngAfterViewInit(): void { this.dataSource.paginator = this.paginator; this.dataSource.sort = this.sort; this.dataSourceWorkers.paginator = this.paginator; this.dataSourceWorkers.sort = this.sort; } applyFilter(filterValue: string) { filterValue = filterValue.trim(); filterValue = filterValue.toLowerCase(); this.dataSource.filter = filterValue; this.dataSourceWorkers.filter = filterValue; } }