\r\n {{ homeBlurb }}\r\n
\r\n = this._http.get(`${this._appSettingsService.getAuthServiceUri()}/GetCode`, { headers: { \"cache-control\": \"no-cache\" } });\r\n\r\n code$.pipe(\r\n take(1)\r\n ).subscribe(code => {\r\n const stateParam: Partial = {\r\n redirectUrl: redirectUrl,\r\n codeVerifier: code.codeVerifier,\r\n seed: code.seed\r\n };\r\n\r\n let url: string = this._appSettingsService.getB2CDomain()\r\n + '?scope=https://cwslogin.onmicrosoft.com/745fa34b-93d9-4160-86e1-c87b01d401e8/read'\r\n + '&application=' + this._appSettingsService.getApplication()\r\n + '&response_type=code'\r\n + '&state=' + btoa(JSON.stringify(stateParam))\r\n + '&nonce=defaultNonce'\r\n + '&client_id=83321aa9-416e-49f9-8475-20b1fa5e57c9'\r\n + '&dc=us-all'\r\n + '&code_challenge=' + code.codeChallenge\r\n + '&code_challenge_method=S256';\r\n\r\n if (forceRefresh)\r\n url += '&prompt=login';\r\n\r\n url += '&redirect_uri=' + this._appSettingsService.getB2CRedirectUri();//has to be last or else anything after will be appended as a param\r\n\r\n window.location.href = url;\r\n });\r\n }\r\n\r\n getDebugToken(cwsLoginId: string) {\r\n return this._http.get(`${this._appSettingsService.getAuthServiceUri()}/GetDebugToken/${cwsLoginId}`);\r\n }\r\n\r\n getAccessToken(accessCode: string, codeVerifier: string, seed: string) {\r\n const headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n const body: Partial = {\r\n 'accessCode': accessCode,\r\n 'codeVerifier': codeVerifier,\r\n 'seed': seed\r\n };\r\n\r\n return this._http.post(`${this._appSettingsService.getAuthServiceUri()}/GetAccessToken`, body, { headers: headers, responseType: 'json' });\r\n }\r\n\r\n refreshToken(refreshToken: string) {\r\n const headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n const body = { \"refreshToken\": refreshToken };\r\n\r\n return this._http.post(`${this._appSettingsService.getAuthServiceUri()}/RefreshToken`, body, { headers: headers, responseType: 'json' });\r\n }\r\n\r\n revokeToken(accessToken: string, refreshToken: string) {\r\n const headers = new HttpHeaders({ 'Content-Type': 'application/json' });\r\n const body = { \"accessToken\": accessToken, \"refreshToken\": refreshToken };\r\n\r\n return this._http.post(`${this._appSettingsService.getAuthServiceUri()}/RevokeToken`, body, { headers: headers, responseType: 'json' });\r\n }\r\n\r\n logout(redirectUrl: string) {\r\n window.location.href = redirectUrl || this._appSettingsService.getLogoutUri();\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { CellularProvider } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CelluarProviderService {\r\n public constructor(\r\n private _http: HttpClient,\r\n ) { }\r\n\r\n public get() {\r\n return this._http.get(`/v2/cellularproviders`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { \r\n CommLossType\r\n} from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CommLossTypeService {\r\n public constructor(\r\n private _http: HttpClient,\r\n ) { }\r\n\r\n public get() {\r\n return this._http.get(`/v2/commLoss/type`);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { \r\n CommLossStatus,\r\n CommLossUpdate, \r\n CommLossType\r\n} from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CommLossStatusService {\r\n public constructor(\r\n private _http: HttpClient,\r\n ) { }\r\n\r\n public get(siteMapGroupId: number) {\r\n return this._http.get(`/v2/commLoss`, { params: { siteMapGroupId: `${siteMapGroupId}` } });\r\n }\r\n\r\n public update(data: Partial[]): Observable {\r\n return this._http.put(`/v2/commLoss`, data);\r\n }\r\n\r\n public getTypes() {\r\n return this._http.get(`/v2/commLoss/type`);\r\n }\r\n\r\n public getComms(deivceId: number) {\r\n return this._http.get(`/v1/support/comm-types/deviceConfig/deviceComms/${deivceId}`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Company } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CompanyService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public get() {\r\n return this._http.get(`/v1/company`);\r\n }\r\n\r\n public getAllCompanies() {\r\n return this._http.get(`/v1/company/all`);\r\n }\r\n\r\n public save(company: Company) {\r\n return company.Id\r\n ? this._http.put(`/v1/company/${company.Id}`, company)\r\n : this._http.post(`/v1/company`, company);\r\n }\r\n}","\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\nimport { ControlDatapoint, ControlPayload } from '@rfv/modules/dashboard/modules/control-admin/models/control-command-model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ControlAdminService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public getControlDatapoints() {\r\n return this._http.get(`/v2/controls`, {\r\n });\r\n }\r\n\r\n public saveControlDatapoint(control: ControlPayload) {\r\n return this._http.put(`/v2/control-status`, control );\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Country } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CountryService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public get() {\r\n return this._http.get(`/v1/countries`);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Customer, CustomerAggregationSettings, TileDefault } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CustomerService {\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public getAll() {\r\n // TODO: should be GET /v2/customers\r\n return this._http.get(`/v1/customer/access`);\r\n }\r\n\r\n public get(/* customerId: number */) {\r\n // TODO: should be GET /v2/customers/:customerId\r\n return this._http.get(`/v1/customer`);\r\n }\r\n\r\n public getAggregationSettings() {\r\n return this._http.get(`/v1/customer/aggregation-settings`);\r\n }\r\n\r\n public getTileDefaults() {\r\n return this._http.get(`/v1/customer/tile-defaults`);\r\n }\r\n}\r\n","export const TileActions = {\r\n 1: [1, 35, 106, 107, 108],\r\n 2: [132],\r\n 3: [3],\r\n 4: [4],\r\n 5: [501],\r\n 6: [495],\r\n 7: [7],\r\n 8: [525],\r\n 9: [9],\r\n 10: [10],\r\n 11: [130, 131],\r\n 12: [12],\r\n 13: [13],\r\n 14: [14, 123],\r\n 15: [15],\r\n 16: [16],\r\n 17: [17],\r\n 18: [18],\r\n 19: [19],\r\n 20: [20],\r\n 21: [21, 103, 105, 109, 110, 111, 134, 133],\r\n 22: [22, 103, 134, 133],\r\n 23: [23],\r\n 24: [24],\r\n 25: [25],\r\n 26: [26, 117],\r\n 27: [27],\r\n 28: [28, 101, 102],\r\n 29: [29],\r\n 30: [30],\r\n 31: [31],\r\n 32: [112, 113],\r\n 33: [33],\r\n 34: [114],\r\n 35: [35, 31, 1, 126, 107],\r\n 36: [36],\r\n 37: [37],\r\n 38: [38],\r\n 39: [115],\r\n 40: [40],\r\n 41: [41],\r\n 42: [42],\r\n 43: [43],\r\n 44: [44],\r\n 45: [45],\r\n 46: [46],\r\n 47: [47],\r\n 48: [48],\r\n 49: [49],\r\n 50: [31, 119],\r\n 51: [51],\r\n 52: [52],\r\n 53: [53],\r\n 54: [54],\r\n 55: [55, 129],\r\n 56: [56],\r\n 57: [57],\r\n 58: [58],\r\n 59: [59],\r\n 60: [35, 31, 1, 126],\r\n 61: [120, 121, 122, 31],\r\n 64: [350],\r\n 65: [65],\r\n 67: [67],\r\n 68: [135, 136],\r\n 79: [503],\r\n };\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Dashboard, Tile } from '@rfv/modules/core/models';\r\nimport { TileActions } from '../../dashboard/lookups/tile-actions';\r\n\r\n/* RxJS */\r\nimport { map } from 'rxjs/operators';\r\nimport { cloneDeep } from 'lodash';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DashboardService {\r\n constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n getAll() {\r\n return this._http.get(`/v1/dashboards`).pipe(\r\n map(dashboards => {\r\n const newDashboards = cloneDeep(dashboards);\r\n newDashboards.forEach(dashboard => {\r\n dashboard.tiles.forEach(tile => {\r\n tile.actionIds = TileActions[tile.id] || [];\r\n });\r\n });\r\n return newDashboards;\r\n }\r\n ));\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Dealer } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DealerService {\r\n constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n getAll() {\r\n return this._http.get(`/v1/dealers`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { DerivedDataPoint, DerivedEvaluationType } from '../models';\r\nimport { DerivedItemType } from '../models/derived-item-type';\r\nimport { DerivedEvaluationRequest } from '../models/derived-evaluation-request';\r\nimport { DerivedValidationRequest } from '../models/derived-validation-request';\r\nimport { DerivedLegendItem } from '../models/derived-legend-item';\r\nimport { DerivedValidationResult } from '../models/derived-validation-result';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DerivedDataPointsService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n /**\r\n * GET the list of derived data of an asset \r\n * @param assetId \r\n * @returns \r\n */\r\n public getItems(assetId: number) {\r\n return this._http.get(`/v2/assets/${assetId}/derived-data`);\r\n }\r\n\r\n /**\r\n * DELETE a derived data \r\n * @param assetId \r\n * @returns \r\n */\r\n public delete(assetId: number, dataPointId: number) {\r\n return this._http.delete(`/v2/assets/${assetId}/derived-data/${dataPointId}`);\r\n }\r\n\r\n /**\r\n * Update derived datapoint\r\n * @param assetId \r\n * @param derivedDataPoint \r\n * @returns \r\n */\r\n public save(assetId: number, dataPointId: number, derivedDataPoint: DerivedDataPoint) {\r\n return this._http.put(`/v2/assets/${assetId}/derived-data/${dataPointId}`, derivedDataPoint)\r\n }\r\n\r\n /**\r\n * create derived data point\r\n * @param assetId \r\n * @param derivedDatapoint \r\n * @returns \r\n */\r\n public create(assetId: number, derivedDataPoint: DerivedDataPoint) {\r\n return this._http.post(`/v2/assets/${assetId}/derived-data`, derivedDataPoint);\r\n }\r\n\r\n\r\n /**\r\n * Validate if derived data formula is using the correct syntax\r\n * @param validationrequest \r\n * @returns \r\n */\r\n public validateFormula(validationrequest: DerivedValidationRequest) {\r\n return this._http.post(`/v2/derived-data/validate`, validationrequest);\r\n }\r\n\r\n /**\r\n * Evaluate derived data formula\r\n * @param evaluationrequest \r\n * @returns \r\n */\r\n public evaluateFormula(evaluationrequest: DerivedEvaluationRequest) {\r\n return this._http.post(`/v2/derived-data/evaluate`, evaluationrequest);\r\n }\r\n\r\n /**\r\n * Gets all evaluation types\r\n * @returns \r\n */\r\n public getEvaluationTypes() {\r\n return this._http.get(`/v2/derived-data/eval-types`);\r\n }\r\n\r\n /**\r\n * Gets all item types\r\n * @returns \r\n */\r\n public getItemTypes() {\r\n return this._http.get(`/v2/derived-data/item-types`);\r\n }\r\n\r\n /**\r\n * Gets all items for legend\r\n * @returns \r\n */\r\n public getLegendItems(){\r\n return this._http.get(`/v2/derived-data-legend`);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { DeviceSearchResult } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DeviceSearchResultService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public get(\r\n searchStr: string,\r\n searchBy: string,\r\n searchType: string,\r\n ) {\r\n return this._http.get(`/v1/support/device-info/search?searchStr=${searchStr}&searchBy=${searchBy}&searchType=${searchType}`);\r\n }\r\n}\r\n","import { OverviewHistory } from './../../dashboard/modules/emo/models/emo-overview.model';\r\nimport { OverhaulType, AvailableAndUpcomingIntervals } from './../../dashboard/modules/emo/models/emo-overhaul.model';\r\nimport { EMORiskLevels } from './../../dashboard/modules/emo/models/emo-risk-level.model';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { Overhaul, AssetOverhaul, AssetAssessment, AssessmentCategory, AssetAssessmentItem, NonOverhaulAssessment, AssessmentCatInspectRisk } from '@rfv/modules/dashboard/modules/emo/models';\r\n\r\nconst httpOptions = {\r\n headers: new HttpHeaders({\r\n 'Content-Type': 'application/json',\r\n })\r\n};\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EmoService {\r\n\r\n constructor(\r\n private http: HttpClient\r\n ) { }\r\n\r\n //Overhauls\r\n getOverhaul(assetId: number) {\r\n return this.http.get(`/v2/emo/${assetId}/overhaul`);\r\n }\r\n\r\n getOverhaulTypes() {\r\n return this.http.get(`/v2/emo/overhaul-types`);\r\n }\r\n\r\n getOverhaulIntervals(assetId: number) {\r\n return this.http.get(`/v2/emo/${assetId}/overhaul-intervals`);\r\n }\r\n\r\n createOverhaul(assetId: number, assetOverhaul: AssetOverhaul) {\r\n return this.http.post(`/v2/emo/${assetId}/overhaul`, assetOverhaul);\r\n }\r\n\r\n saveOverhaul(assetId: number, assetOverhaul: AssetOverhaul) {\r\n return this.http.put(`/v2/emo/${assetId}/overhaul`, assetOverhaul);\r\n }\r\n\r\n deleteOverhaul(assetId: number, emoAssetOverhaulId: number) {\r\n return this.http.delete(`/v2/emo/${assetId}/overhaul/${emoAssetOverhaulId}`);\r\n }\r\n\r\n //Assessments\r\n getAssessments(assetId: number) {\r\n return this.http.get(`/v2/emo/${assetId}/assessment`);\r\n }\r\n\r\n createNonOverhaulAssessment(assetId: number, nonOverhaulAssessment: NonOverhaulAssessment) {\r\n return this.http.post(`/v2/emo/${assetId}/assessment`, nonOverhaulAssessment);\r\n }\r\n\r\n saveAssessment(assetId: number, emoAssetAssessmentId: number) {\r\n return this.http.put(`/v2/emo/${assetId}/assessment`, emoAssetAssessmentId);\r\n }\r\n\r\n saveAssessmentRecommendedHours(assetId: number, emoAssetAssessmentId: number, recommendedHours: number, standardHours: number) {\r\n return this.http.put(`/v2/emo/${assetId}/assessment/${emoAssetAssessmentId}/recommendedHours/${recommendedHours}`, standardHours, httpOptions);\r\n }\r\n\r\n saveAssessmentItems(assetId: number, items: AssetAssessmentItem[]) {\r\n return this.http.put(`/v2/emo/${assetId}/assessment-items`, items);\r\n }\r\n\r\n saveCatInspectRisks(assetId: number, item: AssessmentCatInspectRisk) {\r\n return this.http.post(`/v2/emo/${assetId}/save-cat-inspect-risks`, item);\r\n }\r\n\r\n //Assessment Categories\r\n getAssessmentCategories() {\r\n return this.http.get(`/v2/emo/assessment-categories`);\r\n }\r\n\r\n //Risk Levels\r\n getEMORiskLevels() {\r\n return this.http.get(`/v2/emo/risk-levels`);\r\n }\r\n\r\n //Overview\r\n getEMOOverview(sitemapGroupId: number, assetId: number) {\r\n if (!assetId)\r\n return this.http.get(`/v2/emo/${sitemapGroupId}/overview`);\r\n else\r\n return this.http.get(`/v2/emo/${sitemapGroupId}/overview`, { params: { assetId } });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { map, Observable } from 'rxjs';\r\nimport { UserAccess } from '@rfv/modules/dashboard/modules/user-admin/store/models/user-access-permissions.model';\r\nimport { UserDashboard } from '@rfv/modules/dashboard/modules/user-admin/store/models/user-dashboard.model';\r\n\r\nimport * as fromCore from '@rfv/modules/core/store';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FeatureAccessService {\r\n constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n loadAllUserDashboards() {\r\n return this._http.get(`/v1/featureAccess/list/dashboards`);\r\n }\r\n \r\n loadAllUserDashboardsTileAccess() {\r\n return this._http.get(`/v1/featureaccess/userTilesAccess`);\r\n }\r\n\r\n loadUserAccess(userId: number): Observable {\r\n return this._http\r\n .get(\r\n `/v1/featureaccess/selectedUserTileAccess?selectedUserId=${userId}`\r\n )\r\n .pipe(\r\n map(userAccess => ({\r\n ...userAccess,\r\n UserId: userId\r\n }))\r\n );\r\n }\r\n\r\n saveUserAccess(access: UserAccess) {\r\n //a hack to stop the tiles from being sent when all dashboards have been deselected. - Ferrell\r\n if (access.Dashboards.length === 0) {\r\n access.Tiles = {};\r\n }\r\n\r\n return this._http.put(`/v1/featureaccess`, access);\r\n }\r\n}\r\n","import * as moment from \"moment\";\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AggregateFleetVitalsResponse, } from \"@rfv/modules/dashboard/modules/fleet-Vitals/models/fleet-vitals.model\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FleetVitalsService {\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public getFleetVitals(sitemapGroupId: number, startDate: moment.Moment, endDate: moment.Moment) {\r\n return this._http.get(`/v2/sitemapGroups/${sitemapGroupId}/fleetVitals`, {\r\n params: {\r\n startDate: startDate.utc(true).format(),\r\n endDate: endDate.utc(true).format()\r\n }\r\n });\r\n }\r\n\r\n public getAggregateFleetVitals() {\r\n return this._http.get('/v2/sitemapGroups/aggregateFleetVitals'); \r\n }\r\n\r\n public actionListItems(link: string, params: T[]){ \r\n return this._http.post(`/${link}`, params);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { GaugeType } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GaugeTypeService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public get() {\r\n return this._http.get(`/v1/gaugeTypes`);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Geofence } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GeofenceService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public get(sitemapGroupId: number) {\r\n return this._http.get(`/v2/geofences`, {\r\n params: {\r\n sitemapGroupId\r\n }\r\n });\r\n }\r\n\r\n public save(geofence: Geofence) {\r\n return geofence.Id\r\n ? this._http.put(`/v2/geofences/${geofence.Id}`, geofence)\r\n : this._http.post(`/v2/geofences`, geofence);\r\n }\r\n\r\n public delete(geofenceId: number) {\r\n return this._http.delete(`/v2/geofences/${geofenceId}`);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { GlobalColor } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GlobalColorService {\r\n\r\n constructor(\r\n private http: HttpClient\r\n ) {}\r\n\r\n getAll() {\r\n return this.http.get(`/v1/customer/colors`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { GlobalTimezone } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class GlobalTimezoneService {\r\n\r\n constructor(\r\n private http: HttpClient\r\n ) {}\r\n\r\n getAll() {\r\n return this.http.get(`/v1/customer/timezones`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Icon } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IconService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public get() {\r\n return this._http.get(`/v1/icons`);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Industry } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IndustryService {\r\n\r\n constructor(\r\n private http: HttpClient\r\n ) {}\r\n\r\n getAll() {\r\n return this.http.get(`/v1/industries`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { LocationGPSHistory } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class LocationService {\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public getAssetGPSHistory(assetId: number, startDate: any, endDate: any) {\r\n return this._http.get(`/v2/assetGPSHistory/${assetId}`, {\r\n params: {\r\n startDate: startDate.toString(),\r\n endDate: endDate.toString()\r\n }\r\n });\r\n }\r\n}\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { MachineComponent, MachineInfoAsset, MachineAssetComponentRequest } from '../models/machine-info';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MachineInfoService {\r\n public constructor(\r\n private _http: HttpClient,\r\n ) { }\r\n\r\n public getMachineComponents() {\r\n return this._http.get('/v1/machine-info/components');\r\n }\r\n\r\n public getMachineInfo(assetId: number): Observable {\r\n return this._http.get(`/v1/machine-info/${assetId}`);\r\n }\r\n\r\n public addMachineInfoComponent(assetId: number, ParentUnitMachineAssetComponentId: number, component: MachineComponent, Name: string) {\r\n\r\n let request: MachineAssetComponentRequest = {\r\n Id: 0,\r\n MachineComponentId: component.Id,\r\n MachineComponentItems: null,\r\n Name,\r\n ParentUnitMachineAssetComponentId\r\n };\r\n\r\n return this._http.post(`/v1/machine-info/${assetId}/component`, request);\r\n }\r\n\r\n public deleteMachineInfoComponent(assetId: number, unitMachineAssetComponentId: number) {\r\n\r\n return this._http.delete(`/v1/machine-info/${assetId}/component/${unitMachineAssetComponentId}`);\r\n }\r\n\r\n public saveMachineInfo(unitCreationLogId: number, machineInfo: MachineInfoAsset) {\r\n\r\n machineInfo.UnitCreationLogId = unitCreationLogId;\r\n\r\n return this._http.put(`/v1/machine-info/${machineInfo.AssetId}`, machineInfo);\r\n }\r\n }","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { NotificationType } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class NotificationTypeService {\r\n constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n getAll() {\r\n return this._http.get(`/v2/notification-types`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpParams } from '@angular/common/http';\r\n\r\n/* RxJs */\r\nimport { Observable } from 'rxjs';\r\n\r\n/* Models */\r\nimport { OnboardingEventLog, OnboardingQueueAsset } from '../models';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OnboardingQueueService {\r\n\r\n constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n loadAll(): Observable {\r\n return this._http.get(`/v1/onboarding-queue`);\r\n }\r\n\r\n loadEventLogs(serialNumber: number) {\r\n return this._http.get(`/v1/onboarding-queue/logs/${serialNumber}`);\r\n }\r\n\r\n load(unitCreationLogId: number) {\r\n let params = new HttpParams();\r\n\r\n if (unitCreationLogId)\r\n params = params.append(\"unitCreationLogId\", unitCreationLogId.toString());\r\n\r\n return this._http.get>(`/v1/onboarding-queue/status`, { params });\r\n }\r\n\r\n assign(make:string, serialNumber: string, customerId: number) {\r\n return this._http.post(`/v1/onboarding-queue/assign`, { customerId, make, serialNumber }, {\r\n params: { }\r\n });\r\n }\r\n\r\n resume(unitCreationLogId: number) {\r\n return this._http.post(`/v1/onboarding-queue/resume`, unitCreationLogId);\r\n }\r\n\r\n restart(unitCreationLogId: number) {\r\n return this._http.post(`/v1/onboarding-queue/restart`, unitCreationLogId);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { PlatformServiceSettings } from '../models/PlatformServiceSettings/PlatformServiceSettings';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PlatFormServiceSettings {\r\n public constructor(\r\n private _http: HttpClient,\r\n ) { }\r\n\r\n public getPlatFormServiceSettings() {\r\n return this._http.get(`/v2/platformServiceSettings`);\r\n }\r\n\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { ParsedDataResponse, RawDataResponse } from '../models';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RawDataService {\r\n public constructor(\r\n private _http: HttpClient,\r\n ) { }\r\n\r\n public get(assetId: number, startDate: Date, endDate: Date) {\r\n const end = new Date(endDate.getTime() - endDate.getTimezoneOffset() * 60000);\r\n return this._http.get(`/v1/assets/${assetId}/parsedData`, {\r\n params: {\r\n startDate: startDate.toISOString(),\r\n endDate: end.toISOString()\r\n }\r\n })\r\n }\r\n\r\n public parse(assetId: number, msgId: number) {\r\n return this._http.get(`/v1/assets/${assetId}/message/${msgId}`).pipe(\r\n map(response => {\r\n return {\r\n ...response,\r\n AssetId: assetId,\r\n MsgId: msgId\r\n } as ParsedDataResponse\r\n })\r\n );\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { ReportSchedules } from '@rfv/modules/report/models/report-schedules';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserSchedulesService {\r\n\r\n constructor(\r\n private http: HttpClient\r\n ) {}\r\n\r\n public getUserSchedules() {\r\n return this.http.get(`/v1/reports/GetReportSchedulesByUserId`);\r\n }\r\n\r\n public deleteScheduleReport(reportCustomerSettingRecipientId: number) {\r\n const url = `/v1/Reports/RemoveScheduleReport/${reportCustomerSettingRecipientId}`;\r\n return this.http.delete(url);\r\n }\r\n}\r\n","import { AlarmCount } from './../models/sitemap-group/alarm-count';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { SitemapGroup, SitemapGroupAlarm, SitemapGroupDatapointSettings, SitemapGroupStatus, SitemapGroupData } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SitemapGroupService {\r\n constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n getEntities() {\r\n return this._http.get(`/v2/sitemapGroups`);\r\n }\r\n\r\n getAlarms(sitemapGroupId: number) {\r\n return this._http.get(`/v2/sitemapGroups/${sitemapGroupId}/alarms`);\r\n }\r\n\r\n getDatapoints(sitemapGroupId: number) {\r\n return this._http.get(`/v2/sitemapGroups/${sitemapGroupId}/datapoints`);\r\n }\r\n\r\n getDatapointValues(sitemapGroupId: number, dpIdentifierCsv: any) {\r\n dpIdentifierCsv = dpIdentifierCsv.toString();\r\n return this._http.get(`/v2/sitemapGroups/${sitemapGroupId}/datapoint-values`, { params: { dpIdentifierCsv } });\r\n }\r\n\r\n getAlarmCountsByGroupAndSchedule(sitemapGroupId: number, alertScheduleId: number, alarmGroupIdsCsv: any) {\r\n alarmGroupIdsCsv = alarmGroupIdsCsv.toString();\r\n\r\n return this._http.get(\r\n `/v2/sitemapGroups/${sitemapGroupId}/alarmCount/${alertScheduleId}`,\r\n { params: { alarmGroupIdsCsv } }\r\n );\r\n }\r\n saveBatchAlertRecipients(\r\n rootSitemapId: number,\r\n alertScheduleId: number,\r\n userIds: number[],\r\n notificationTypeIds: number[],\r\n alarmDetails: Array<[number, number, number]>\r\n ) {\r\n return this._http.post(`/v2/sitemapGroups/${rootSitemapId}/alarmCount/${alertScheduleId}`, {\r\n userIds: userIds,\r\n notificationTypeIds: notificationTypeIds,\r\n alarmDetails: alarmDetails.toString()\r\n });\r\n }\r\n\r\n getStatus(sitemapGroupId: number) {\r\n return this._http.get(`/v2/sitemapGroups/${sitemapGroupId}/status`);\r\n }\r\n}\r\n","import { UserLog, UserLogSearchRequest, UserLogSearchType } from '@rfv/modules/tiles/models/user-log.model';\r\nimport { LogType } from '@rfv/modules/tiles/models/log-type.model';\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { DatapointOccurrenceModel, DatapointOccurrenceUpdateModel, UnitCreationLog, UnitCreationType } from '@rfv/modules/core/models';\r\nimport { EndpointType } from '@rfv/modules/tiles/models/endpoint-type.model';\r\n\r\n/**\r\n * Support service for the support dashboard.\r\n * Actual support suite services are located in the support module.\r\n */\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SupportService {\r\n\r\n constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n getUnitCreationTypes() {\r\n return this._http.get(`/v1/support/navigation/types`);\r\n }\r\n\r\n getUnitCreationLogs(sitemapGroupId: number) {\r\n return this._http.get(`/v1/support/navigation/logs`, {\r\n params: {\r\n sitemapGroupId: sitemapGroupId.toString()\r\n }\r\n });\r\n }\r\n\r\n createUnitCreationLog(unitCreationTypeId: number) {\r\n return this._http.post(`/v1/support/navigation/logs`, { unitCreationTypeId });\r\n }\r\n\r\n getDataPointOccurrences(sitemapGroupId: number) {\r\n return this._http.get(`/v2/datapoints/occurrences/${sitemapGroupId}`);\r\n }\r\n\r\n putDataPointOccurrences(sitemapGroupId: number, occurrences: DatapointOccurrenceUpdateModel[]) {\r\n return this._http.put(`/v2/datapoints/occurrences/${sitemapGroupId}`, {\r\n datapoints: occurrences\r\n });\r\n }\r\n\r\n getEndpointTypes() {\r\n return this._http.get(`/v1/logs/endpoint-types`);\r\n }\r\n\r\n getLogTypes() {\r\n return this._http.get(`/v1/logs/log-types`);\r\n }\r\n\r\n getUserLogs(startDate: string, endDate: string, scope: number, userIds: number[], searchUserIds: number[], searchAssetIds: number[], endpointIds: number[], sitemapGroupId: number) {\r\n return this._http.get(`/v1/logs`, {\r\n params: {\r\n startDate: startDate,\r\n endDate: endDate,\r\n scope: scope,\r\n userIds: userIds?.toString(),\r\n searchUserIds: searchUserIds?.toString(),\r\n searchAssetIds: searchAssetIds?.toString(),\r\n endpointIds: endpointIds?.toString(),\r\n sitemapGroupId: sitemapGroupId\r\n } \r\n });\r\n }\r\n\r\n getUserLog(logId: number) {\r\n return this._http.get(`/v2/logs/${logId}`);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\nimport { map } from 'rxjs/operators';\r\n\r\nimport { SystemStatusUnit } from '../models/system-status';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SystemStatusService {\r\n\r\n constructor(\r\n private http: HttpClient\r\n ) { }\r\n\r\n get(sitemapGroupId: number) {\r\n return this.http.get(`/v1/systemStatus/${sitemapGroupId}/fullscreen`);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { Tile } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TileService {\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public getAll() {\r\n return this._http.get('/v1/tiles');\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { TimeIntervalDropdown } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TimeIntervalDropdownService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public get() {\r\n return this._http.get(`/v1/timeIntervalDropdowns`);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { ToolTip } from '@rfv/modules/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ToolTipService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n public get() {\r\n return this._http.get(`/v1/toolTips`);\r\n }\r\n}","\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n//GPS Config models\r\nimport { GPSConfiguration, GPSComponent } from '@rfv/modules/dashboard/modules/trip-reports/models/gps-configuration.model';\r\nimport { GPSPrimaryAsset } from '@rfv/modules/dashboard/modules/trip-reports/models/gps-primary-asset.model';\r\n\r\n//Trip Config models\r\nimport { Trip, UserTrip, UserTripAssignment } from '@rfv/modules/dashboard/modules/trip-reports/models/trip-configuration.model';\r\nimport { TripDetailSummary, TripSummary } from '@rfv/modules/dashboard/modules/trip-reports/models/trip-summary.model';\r\nimport { Moment } from 'moment-timezone';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TripReportsService {\r\n\r\n public constructor(\r\n private _http: HttpClient\r\n ) { }\r\n\r\n //GPS Config\r\n public getGPSConfig(sitemapGroupId: number) {\r\n return this._http.get