1 import { Component, OnInit, ViewChild } from '@angular/core';
3 import {MatTableDataSource} from '@angular/material/table';
5 import { MatPaginator } from '@angular/material/paginator';
7 import { cameraData,monitorinfo, monitorDetails } from './../datainterface'
8 import { RoboService } from './../../app/robo.service';
10 import { DomSanitizer, SafeUrl } from "@angular/platform-browser";
14 selector: 'app-data-monitor',
15 templateUrl: './data-monitor.component.html',
16 styleUrls: ['./data-monitor.component.scss']
18 export class DataMonitorComponent implements OnInit {
20 monitorColumns: string [] = ['shelfName','objType','currentCount','totalCount','time'];
21 monitorDataSource = new MatTableDataSource<monitorinfo>(MONITOR_INFO_LIST);
23 monitorArrayList = [];
29 monitorInfo = {} as monitorDetails;
31 @ViewChild(MatPaginator, {static: true}) paginator: MatPaginator;
34 private roboService: RoboService,
35 private sanitizer: DomSanitizer
39 this.monitorDetails();
40 this.inventoryDetails();
45 this.roboService.getMonitorImage()
46 .subscribe( (data:any) => {
50 let objectURL = 'data:image/jpeg;base64,' + data.image;
51 this.thumbnail = this.sanitizer.bypassSecurityTrustUrl(objectURL);
54 error => console.log(error));
58 this.roboService.getMonitorInfo()
61 this.monitorInfo = data;
62 this.monitorArrayList = data.InventryData;
63 this.monitorDataSource = new MatTableDataSource(this.monitorArrayList);
64 this.monitorDataSource.paginator = this.paginator;
66 error => console.log(error));
71 const MONITOR_INFO_LIST: monitorinfo[] = [
72 { shelfName: '', ObjType: '', currentCount: '', totalCount: '', time: '' }