VICE / Client / src / app / work-request / work-request.component.ts
work-request.component.ts
Raw
import { Component, OnInit } from '@angular/core';
import { map } from 'rxjs/operators';
import { Subscription } from 'rxjs';
import { Breakpoints, BreakpointObserver } from '@angular/cdk/layout';
import { HttpClient, HttpClientModule, HttpHeaders } from '@angular/common/http';
import { NavComponent } from "../nav/nav.component";
import { IssueService } from "../issue.service";
import { ServerDataService } from '../server-data.service';
import { environment } from './../../environments/environment';
import { AuthenticationService } from './../authentication.service';

@Component({
  selector: 'app-work-request',
  templateUrl: './work-request.component.html',
  styleUrls: ['./work-request.component.css']
})
export class WorkRequestComponent implements OnInit {

  cards = this.breakpointObserver.observe(Breakpoints.Handset).pipe(
    map(({ matches }) => {
      if (matches) {
        return [

          { title: 'Issue Details', cols: 1, rows: 1 }

        ];
      }

      return [

        { title: 'Issue Details', cols: 2, rows: 1 }

      ];


    })
  );

  requestData: any;
  requestID: number;
  header: any;
  public confirm: boolean = false;
  private list: any;

  constructor(private breakpointObserver: BreakpointObserver, private http: HttpClient,
              private issue: IssueService, private dataService: ServerDataService,
              private nav: NavComponent, private authService: AuthenticationService)
  {
    this.requestID = 0;
  }

  ngOnInit()
  {

    this.dataService.workList.subscribe( (data: any) => {
      this.list = data;
    });

    this.issue.currentRequest.subscribe((id: number) => {
      this.requestID = id;

      this.requestData = this.list[this.requestID];
    });

  }

  setConfirm(change: boolean) {
    this.confirm = change;
  }

  resolveRequest(id: string) {
    let auth = this.authService.authHeader.get('Authorization') || "NA NA";
    
    this.header = new HttpHeaders()
          .set('Content-Type', 'application/json')
          .set('issueID', "" + id)
          .set('Authorization', auth);

    this.http.get(environment.ip + '/resolveWorkRq', {headers: this.header})
    .subscribe( (data:any) => {
      console.log(data);
      this.dataService.getDataFromServer();
    });
  }

}