Projekt

Obecné

Profil

Stáhnout (1.68 KB) Statistiky
| Větev: | Tag: | Revize:
1
import { Component, OnInit } from '@angular/core';
2
import {Group} from '../../shared/api/endpoints/models/group';
3
import {Drivers} from '../../shared/api/endpoints/models/drivers';
4
import {GeneralInfo} from '../../shared/api/endpoints/models/general-info';
5
import {Lastpos} from '../../shared/api/endpoints/models/lastpos';
6
import {Sensor} from '../../shared/api/endpoints/models/sensor';
7
import {Unit} from '../../shared/api/endpoints/models/unit';
8
import {GroupService} from '../../shared/api/endpoints/services/group.service';
9
import {DataService} from '../../shared/api/endpoints/services/data.service';
10
import {tap} from 'rxjs/operators';
11

    
12
@Component({
13
  selector: 'app-dashboard',
14
  templateUrl: './dashboard.component.html',
15
  styleUrls: ['./dashboard.component.scss']
16
})
17
export class DashboardComponent implements OnInit {
18

    
19
  groups: Group[];
20
  units: Array<{ drivers?: Drivers; generalInfo?: GeneralInfo; holder?: any; lastpos?: Lastpos; sensors?: Array<Sensor>; unit?: Unit }>;
21
  showUnitPopup = false;
22
  editedUnit: Unit;
23

    
24
  constructor(
25
    private groupService: GroupService,
26
    private dataService: DataService
27
  ) {
28
  }
29

    
30
  ngOnInit(): void {
31
    this.getUnits();
32
  }
33

    
34
  getGroups() {
35
    console.log('Get Groups');
36
    this.groupService.getGroups({Operation: 'GetGroups'}).pipe(
37
      tap(data => this.groups = data)
38
    ).subscribe();
39
  }
40

    
41
  getUnits() {
42
    this.dataService.getData().pipe(
43
      tap(data => {
44
        this.units = data;
45
        this.units.forEach(unit => unit.sensors.sort((a, b)  => a.sensorId - b.sensorId));
46
      })
47
    ).subscribe();
48
  }
49

    
50
  editUnit($event: MouseEvent, unit: Unit) {
51
    $event.stopPropagation();
52
    this.editedUnit = unit;
53
    this.showUnitPopup = true;
54
  }
55
}
(3-3/3)