5c503b5105648fb644e89cb850f59f844940db41
[ealt-edge.git] / example-apps / ROBO / RoboUI / src / app / data-monitor / data-monitor.component.ts
1 import { Component, OnInit, ViewChild } from '@angular/core';
2
3 import {MatTableDataSource} from '@angular/material/table';
4
5 import { MatPaginator } from '@angular/material/paginator';
6
7 import { cameraData,monitorinfo, monitorDetails } from './../datainterface'
8 import { RoboService } from './../../app/robo.service';
9
10 import { DomSanitizer, SafeUrl } from "@angular/platform-browser";
11
12
13 @Component({
14   selector: 'app-data-monitor',
15   templateUrl: './data-monitor.component.html',
16   styleUrls: ['./data-monitor.component.scss']
17 })
18 export class DataMonitorComponent implements OnInit {
19
20   monitorColumns: string [] = ['shelfName','objType','currentCount','totalCount','time'];
21   monitorDataSource = new MatTableDataSource<monitorinfo>(MONITOR_INFO_LIST);
22
23   monitorArrayList = [];
24
25   imageBlobUrl : any;
26   image: any;
27   thumbnail: any;
28
29   monitorInfo = {} as monitorDetails;
30
31   @ViewChild(MatPaginator, {static: true}) paginator: MatPaginator;
32
33   constructor(
34     private roboService: RoboService,
35     private sanitizer: DomSanitizer
36     ) { }
37
38   ngOnInit(): void {
39     this.monitorDetails();
40     this.inventoryDetails();
41   }
42
43   monitorDetails() {
44     debugger;
45     this.roboService.getMonitorImage()
46         .subscribe( (data:any) => {
47       debugger;
48       console.log(data);
49       
50       let objectURL = 'data:image/jpeg;base64,' + data.image;
51       this.thumbnail = this.sanitizer.bypassSecurityTrustUrl(objectURL);
52
53      },
54      error => console.log(error));
55   }
56
57   inventoryDetails() {
58     this.roboService.getMonitorInfo()
59       .subscribe(data => {
60       console.log(data);
61       this.monitorInfo = data;
62       this.monitorArrayList = data.InventryData;
63       this.monitorDataSource = new MatTableDataSource(this.monitorArrayList);
64       this.monitorDataSource.paginator = this.paginator;
65      },
66      error => console.log(error));
67    }
68
69 }
70
71 const MONITOR_INFO_LIST: monitorinfo[] = [
72   { shelfName: '', ObjType: '', currentCount: '', totalCount: '', time: '' }
73 ];