logs.service.ts 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. import { Injectable } from '@angular/core';
  2. import { Organization } from '../models/organization';
  3. import { Plant } from '../models/plant';
  4. import { of as observableOf, Observable, throwError } from 'rxjs';
  5. import { HttpClient, HttpHeaders } from '@angular/common/http';
  6. import { retry, catchError, map, timeout } from 'rxjs/operators';
  7. import { environment } from '@environments/environment';
  8. @Injectable({
  9. providedIn: 'root'
  10. })
  11. export class LogsService {
  12. time:number = 10000;
  13. constructor(private http: HttpClient) {
  14. }
  15. getEnergyProducedByParams(id:string, interval:string, date:string) {
  16. return this.http.get(`${environment.productionApiUrl}/asset/${id}/energy-produced/${interval}/${date}`)
  17. .pipe(
  18. timeout(this.time),
  19. map(response =>{
  20. return response;
  21. }),
  22. catchError(this.errorHandl)
  23. )
  24. }
  25. getEnergySummaryByAsset(id:string){
  26. return this.http.get(`${environment.productionApiUrl}/asset/${id}/energy-stats`)
  27. .pipe(
  28. timeout(this.time),
  29. map(response =>{
  30. return response;
  31. }),
  32. catchError(this.errorHandl)
  33. )
  34. }
  35. getEnergyProducedByDay() {
  36. return this.http.get(`${environment.apiUrl}/logs/energyProduced/1D`)
  37. .pipe(
  38. timeout(this.time),
  39. map(response =>{
  40. return response;
  41. }),
  42. catchError(this.errorHandl)
  43. )
  44. }
  45. getEnergyProducedByWeek() {
  46. return this.http.get(`${environment.apiUrl}/logs/energyProduced/7D`)
  47. .pipe(
  48. timeout(this.time),
  49. map(response =>{
  50. return response;
  51. }),
  52. catchError(this.errorHandl)
  53. )
  54. }
  55. getEnergyProducedByMonth() {
  56. return this.http.get(`${environment.apiUrl}/logs/energyProduced/1M`)
  57. .pipe(
  58. timeout(this.time),
  59. map(response =>{
  60. return response;
  61. }),
  62. catchError(this.errorHandl)
  63. )
  64. }
  65. getEnergyProducedByYear() {
  66. return this.http.get(`${environment.apiUrl}/logs/energyProduced/YTD`)
  67. .pipe(
  68. timeout(this.time),
  69. map(response =>{
  70. return response;
  71. }),
  72. catchError(this.errorHandl)
  73. )
  74. }
  75. //if(error.error instanceof ErrorEvent) {
  76. errorHandl(error) {
  77. let errorMessage = '';
  78. if(error.error) {
  79. // Get client-side error
  80. errorMessage = error.error;
  81. } else {
  82. // Get server-side error
  83. errorMessage = `Error Code: ${error.status}\nMessage: ${error.message}`;
  84. }
  85. return throwError(errorMessage);
  86. }
  87. }