{"version":3,"file":"main.js","mappings":"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;;;;;;;;AClBoC;AACK;AAY7D,MAAMgU,YAAY,GAAuB;EACvCle,IAAI,EAAE,IAAI;EACV4uC,sBAAsB,EAAE,IAAI;EAC5B35B,MAAM,EAAE,EAAE;EACVU,SAAS,EAAE,KAAK;EAChBwI,gBAAgB,EAAE,KAAK;EACvBC,gBAAgB,EAAE;CACnB;AAEM,MAAM+wB,oBAAoB,GAAGnxB,0DAAa,CAC/CE,YAAY,EACZD,+CAAE,CAACowB,sEAA8B,EAAE,CAACxmC,KAAK,EAAEoN,MAAM,MAAM;EACrD,GAAGpN,KAAK;EACR8N,SAAS,EAAE;CACZ,CAAC,CAAC,EACHsI,+CAAE,CAACowB,6EAAqC,EAAE,CAACxmC,KAAK,EAAEoN,MAAM,MAAM;EAC5D,GAAGpN,KAAK;EACR7H,IAAI,EAAEiV,MAAM,CAACjV,IAAI;EACjB;EACAiV,MAAM;EACNU,SAAS,EAAE,KAAK;EAChBwI,gBAAgB,EAAE,IAAI;EACtBC,gBAAgB,EAAE;CACnB,CAAC,CAAC,EACHH,+CAAE,CAACowB,6EAAqC,EAAE,CAACxmC,KAAK,EAAEoN,MAAM,MAAM;EAC5D,GAAGpN,KAAK;EACRoN,MAAM;EACNU,SAAS,EAAE,KAAK;EAChByI,gBAAgB,EAAE;CACnB,CAAC,CAAC;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAH,+CAAE,CAACowB,4EAAoC,EAAE,CAACxmC,KAAK,EAAEoN,MAAM,MAAM;EAC3D,GAAGpN,KAAK;EACR8N,SAAS,EAAE;CACZ,CAAC,CAAC,EACHsI,+CAAE,CAACowB,mFAA2C,EAAE,CAACxmC,KA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AACC,QAAQ,EAAE;MACvB,CAAC;MACDC,MAAM,CAACI,UAAU,CAACntF,IAAI,CAAC;;EAE/B,CAAC,CAAC;AACN;;;;;;;;;;;;;;;ACl/rBO,MAAMzQ,WAAW,GAAG;EACzB69F,UAAU,EAAE,KAAK;EACjBv8F,mBAAmB,EAAE,EAAE;EACvBw8F,OAAO,EAAE,aAAa;EACtBC,GAAG,EAAE;IACHC,UAAU,EAAE,KAAK;IACjBC,aAAa,EAAE,KAAK;IACpBC,QAAQ,EAAE,oCAAoC;IAC9CC,QAAQ,EAAE,sCAAsC;IAChDC,WAAW,EAAE,CAAC,WAAW,EAAE,oBAAoB,CAAC;IAEhDC,QAAQ,EAAE,sCAAsC;IAChDC,UAAU,EAAE,CAAC,+DAA+D,CAAC;IAC7EC,WAAW,EAAE,4CAA4C;IACzDC,aAAa,EAAE;;CAElB;;;;;;;;;;;;;;AClBD;;AAG6C;AAG7CC,sEAAA,EAAwB,CAACE,eAAe,CAAC59F,sDAAS,CAAC,CAChD69F,KAAK,CAAChnF,GAAG,IAAI1K,OAAO,CAACC,KAAK,CAACyK,GAAG,CAAC,CAAC;;;;;;;;;;ACPnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","sources":["./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.initializer.ts","./src/app/app.module.ts","./src/app/core/guards/role.guard.ts","./src/app/core/models/cc.model.ts","./src/app/core/models/i18n.model.ts","./src/app/core/models/redirect-types.enum.ts","./src/app/core/services/auth/auth.service.ts","./src/app/core/services/common/common.service.ts","./src/app/core/services/dynamictools/breadcrump.service.ts","./src/app/core/services/dynamictools/modal.service.ts","./src/app/core/services/dynamictools/title.service.ts","./src/app/core/services/export/export.service.ts","./src/app/core/services/i18n/i18n.service.ts","./src/app/core/services/lpg/fuel-gas-flaring.service.ts","./src/app/core/services/lpg/operator.service.ts","./src/app/core/services/lpg/pe.service.ts","./src/app/features/tco/processeng/fd/fd-routing.module.ts","./src/app/features/tco/processeng/fd/ktl/daily-report/state/daily-report.actions.ts","./src/app/features/tco/processeng/fd/ktl/daily-report/state/daily-report.effects.ts","./src/app/features/tco/processeng/fd/ktl/daily-report/state/daily-report.reducer.ts","./src/app/features/tco/processeng/fd/ktl/f-205/state/f-205.actions.ts","./src/app/features/tco/processeng/fd/ktl/f-205/state/f-205.effects.ts","./src/app/features/tco/processeng/fd/ktl/f-205/state/f-205.reducer.ts","./src/app/features/tco/processeng/fd/ktl/input/process-engineer/flaring/state/flaring.actions.ts","./src/app/features/tco/processeng/fd/ktl/input/process-engineer/flaring/state/flaring.effects.ts","./src/app/features/tco/processeng/fd/ktl/input/process-engineer/flaring/state/flaring.reducer.ts","./src/app/features/tco/processeng/fd/lpg/cc/cc.component.ts","./src/app/features/tco/processeng/fd/lpg/cc/cc.component.html","./src/app/features/tco/processeng/fd/lpg/final-report/final-report-routing.module.ts","./src/app/features/tco/processeng/fd/lpg/final-report/final-report.module.ts","./src/app/features/tco/processeng/fd/lpg/final-report/flaring-report/flaring-report.component.ts","./src/app/features/tco/processeng/fd/lpg/final-report/flaring-report/flaring-report.component.html","./src/app/features/tco/processeng/fd/lpg/final-report/lpg-data/lpg-data.component.ts","./src/app/features/tco/processeng/fd/lpg/final-report/lpg-data/lpg-data.component.html","./src/app/features/tco/processeng/fd/lpg/fuel-gas-flaring/fuel-gas-flaring-edit/fuel-gas-flaring-edit.component.ts","./src/app/features/tco/processeng/fd/lpg/fuel-gas-flaring/fuel-gas-flaring-edit/fuel-gas-flaring-edit.component.html","./src/app/features/tco/processeng/fd/lpg/fuel-gas-flaring/fuel-gas-flaring.component.ts","./src/app/features/tco/processeng/fd/lpg/fuel-gas-flaring/fuel-gas-flaring.component.html","./src/app/features/tco/processeng/fd/lpg/fuel-gas-flaring/store/fuel-gas-flaring-default.action.ts","./src/app/features/tco/processeng/fd/lpg/fuel-gas-flaring/store/fuel-gas-flaring-default.selector.ts","./src/app/features/tco/processeng/fd/lpg/fuel-gas-flaring/store/fuel-gas-flaring-default.state.ts","./src/app/features/tco/processeng/fd/lpg/input/input-routing.module.ts","./src/app/features/tco/processeng/fd/lpg/input/operator/operators-edit/operators-edit.component.ts","./src/app/features/tco/processeng/fd/lpg/input/operator/operators-edit/operators-edit.component.html","./src/app/features/tco/processeng/fd/lpg/input/pe/flowmeter-calc/flowmeter-calculation/flowmeter-calculation.component.ts","./src/app/features/tco/processeng/fd/lpg/input/pe/flowmeter-calc/flowmeter-calculation/flowmeter-calculation.component.html","./src/app/features/tco/processeng/fd/lpg/lpg-routing.module.ts","./src/app/features/tco/processeng/fd/sgi/store/sgi.action.ts","./src/app/features/tco/processeng/fd/sgp/input/process-engineer/flaring/state/flaring.actions.ts","./src/app/features/tco/processeng/fd/sgp/input/process-engineer/flaring/state/flaring.effects.ts","./src/app/features/tco/processeng/fd/sgp/input/process-engineer/flaring/state/flaring.reducer.ts","./src/app/features/tco/processeng/fgd/ius/store/internal-usage.action.ts","./src/app/features/tco/processeng/fgd/ktl/production-gas-balance/fuel-gas-edit/fuel-gas-edit.component.ts","./src/app/features/tco/processeng/fgd/ktl/production-gas-balance/services/production-gas-balance.service.ts","./src/app/features/tco/processeng/fgd/ktl/production-gas-balance/state/ktl-fgd-fuel-gas.actions.ts","./src/app/features/tco/processeng/fgd/ktl/production-gas-balance/state/ktl-fgd-fuel-gas.effects.ts","./src/app/features/tco/processeng/fgd/ktl/production-gas-balance/state/ktl-fgd-fuel-gas.reducer.ts","./src/app/features/tco/processeng/fgd/sgp/fuel-gas-dashboard/state/fuel-gas.actions.ts","./src/app/features/tco/processeng/fgd/sgp/fuel-gas-dashboard/state/fuel-gas.effects.ts","./src/app/features/tco/processeng/fgd/sgp/fuel-gas-dashboard/state/fuel-gas.reducer.ts","./src/app/features/tco/processeng/fgd/sgp/gas-usage-report/state/gas-usage-report.actions.ts","./src/app/features/tco/processeng/fgd/sgp/gas-usage-report/state/gas-usage-report.effects.ts","./src/app/features/tco/processeng/fgd/sgp/gas-usage-report/state/gas-usage-report.reducer.ts","./src/app/features/tco/processeng/processeng-routing.module.ts","./src/app/features/tco/tco-map.component.ts","./src/app/features/tco/tco-map.component.html","./src/app/features/tco/tco-routing.module.ts","./src/app/features/tco/tco.component.ts","./src/app/features/tco/tco.component.html","./src/app/material/material.module.ts","./src/app/shared/components/chartjs/chartjs.component.ts","./src/app/shared/components/chartjs/chartjs.component.html","./src/app/shared/components/checkbox/checkbox.component.ts","./src/app/shared/components/checkbox/checkbox.component.html","./src/app/shared/components/hint-error/hint-error.component.ts","./src/app/shared/components/hint-error/hint-error.component.html","./src/app/shared/components/radio-toggle/radio-toggle.component.ts","./src/app/shared/components/radio-toggle/radio-toggle.component.html","./src/app/shared/components/select/select.component.ts","./src/app/shared/components/select/select.component.html","./src/app/shared/components/shared-Tab/tab.component.ts","./src/app/shared/components/shared-Tab/tab.component.html","./src/app/shared/components/shared-a/shared-a.component.ts","./src/app/shared/components/shared-a/shared-a.component.html","./src/app/shared/components/shared-button/shared-button.component.ts","./src/app/shared/components/shared-button/shared-button.component.html","./src/app/shared/components/shared-delete-confirmation/shared-delete-confirmation.component.ts","./src/app/shared/components/shared-delete-confirmation/shared-delete-confirmation.component.html","./src/app/shared/components/shared-dropdown-gas-park/shared-dropdown-gas-park.component.ts","./src/app/shared/components/shared-dropdown-gas-park/shared-dropdown-gas-park.component.html","./src/app/shared/components/shared-dropdown-pe/shared-dropdown-pe.component.ts","./src/app/shared/components/shared-dropdown-pe/shared-dropdown-pe.component.html","./src/app/shared/components/shared-dynamic-title/dynamic-title.component.ts","./src/app/shared/components/shared-dynamic-title/dynamic-title.component.html","./src/app/shared/components/shared-header/shared-header.component.ts","./src/app/shared/components/shared-header/shared-header.component.html","./src/app/shared/components/shared-loading-spinner/shared-loading-spinner.component.ts","./src/app/shared/components/shared-loading-spinner/shared-loading-spinner.component.html","./src/app/shared/components/shared-navbar/navbar.component.ts","./src/app/shared/components/shared-navbar/navbar.component.html","./src/app/shared/components/shared-notification/shared-notification.component.ts","./src/app/shared/components/shared-save-confirmation/shared-save-confirmation.component.ts","./src/app/shared/components/shared-save-confirmation/shared-save-confirmation.component.html","./src/app/shared/components/shared-scroll-to-top/shared-scroll-to-top.component.ts","./src/app/shared/components/shared-scroll-to-top/shared-scroll-to-top.component.html","./src/app/shared/components/shared-sidebar/sidebar.component.ts","./src/app/shared/components/shared-sidebar/sidebar.component.html","./src/app/shared/shared-error-page/shared-error-page.component.ts","./src/app/shared/shared-error-page/shared-error-page.component.html","./src/app/shared/shared-unathorized-page/shared-unauthorized-page.component.ts","./src/app/shared/shared-unathorized-page/shared-unauthorized-page.component.html","./src/app/shared/shared.module.ts","./src/app/state/auth/auth.action.ts","./src/app/state/auth/auth.effects.ts","./src/app/state/auth/auth.reducer.ts","./src/app/state/auth/auth.selector.ts","./src/app/state/chartjs/chartjs.action.ts","./src/app/state/chartjs/chartjs.effects.ts","./src/app/state/chartjs/chartjs.reducer.ts","./src/app/state/chartjs/chartjs.selector.ts","./src/app/state/ktlsgp/projected-data/projected-data.actions.ts","./src/app/state/ktlsgp/projected-data/projected-data.effects.ts","./src/app/state/ktlsgp/projected-data/projected-data.reducer.ts","./src/app/state/ktlsgp/so2-charts/so2-charts.action.ts","./src/app/state/ktlsgp/so2-charts/so2-charts.effects.ts","./src/app/state/ktlsgp/so2-charts/so2-charts.reducer.ts","./src/app/state/ktlsgp/so2-emissions-recalculation/so2-emissions-recalculation.actions.ts","./src/app/state/ktlsgp/so2-emissions-recalculation/so2-emissions-recalculation.effects.ts","./src/app/state/ktlsgp/so2-emissions-recalculation/so2-emissions-recalculation.reducer.ts","./src/app/state/ktlsgp/so2-emissions/so2-emissions.actions.ts","./src/app/state/ktlsgp/so2-emissions/so2-emissions.effects.ts","./src/app/state/ktlsgp/so2-emissions/so2-emissions.reducer.ts","./src/app/state/lpg/analyst/analyst.actions.ts","./src/app/state/lpg/analyst/analyst.effects.ts","./src/app/state/lpg/analyst/analyst.reducer.ts","./src/app/state/lpg/approve/approve.actions.ts","./src/app/state/lpg/approve/approve.effects.ts","./src/app/state/lpg/approve/approve.reducer.ts","./src/app/state/lpg/approve/approve.selector.ts","./src/app/state/lpg/cc/cc.actions.ts","./src/app/state/lpg/cc/cc.effects.ts","./src/app/state/lpg/cc/cc.reducer.ts","./src/app/state/lpg/cc/cc.selector.ts","./src/app/state/lpg/flaring-report/flaring-report.actions.ts","./src/app/state/lpg/flaring-report/flaring-report.effects.ts","./src/app/state/lpg/flaring-report/flaring-report.reducer.ts","./src/app/state/lpg/flaring-report/flaring-report.selector.ts","./src/app/state/lpg/flowmeter-calculation/flowmeter-calculation.action.ts","./src/app/state/lpg/flowmeter-calculation/flowmeter-calculation.effects.ts","./src/app/state/lpg/flowmeter-calculation/flowmeter-calculation.reducer.ts","./src/app/state/lpg/flowmeter-calculation/flowmeter-calculation.selector.ts","./src/app/state/lpg/fuel-gas-flaring/fuel-gas-flaring.actions.ts","./src/app/state/lpg/fuel-gas-flaring/fuel-gas-flaring.effects.ts","./src/app/state/lpg/fuel-gas-flaring/fuel-gas-flaring.reducer.ts","./src/app/state/lpg/fuel-gas-flaring/fuel-gas-flaring.selector.ts","./src/app/state/lpg/lpg-data/lpg-data.actions.ts","./src/app/state/lpg/lpg-data/lpg-data.effects.ts","./src/app/state/lpg/lpg-data/lpg-data.reducer.ts","./src/app/state/lpg/lpg-data/lpg-data.selector.ts","./src/app/state/lpg/operator/operator.actions.ts","./src/app/state/lpg/operator/operator.effects.ts","./src/app/state/lpg/operator/operator.reducer.ts","./src/app/state/lpg/pe/pe.action.ts","./src/app/state/lpg/pe/pe.effects.ts","./src/app/state/lpg/pe/pe.reducer.ts","./src/app/state/lpg/target-permit/target-permit.actions.ts","./src/app/state/lpg/target-permit/target-permit.effects.ts","./src/app/state/lpg/target-permit/target-permit.reducer.ts","./src/app/state/notification/notification.action.ts","./src/app/state/notification/notification.effects.ts","./src/app/state/notification/notification.reducer.ts","./src/app/state/notification/notification.selector.ts","./src/app/state/state.module.ts","./src/app/web-api-client.ts","./src/environments/environment.Development.ts","./src/main.ts","./node_modules/moment/locale/ sync ^\\.\\/.*$"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { FinalReportRoutingModule } from './features/tco/processeng/fd/lpg/final-report/final-report-routing.module';\r\nimport { TCORoutingModule } from './features/tco/tco-routing.module';\r\nimport { TCOComponent } from './features/tco/tco.component';\r\nimport { ProcessEngRoutingModule } from './features/tco/processeng/processeng-routing.module';\r\nimport { FDRoutingModule } from './features/tco/processeng/fd/fd-routing.module';\r\nimport { LPGRoutingModule } from './features/tco/processeng/fd/lpg/lpg-routing.module';\r\nimport { FDInputRoutingModule } from './features/tco/processeng/fd/lpg/input/input-routing.module';\r\nimport { SharedUnauthorizedPageComponent } from './shared/shared-unathorized-page/shared-unauthorized-page.component';\r\nimport { TCOMapComponent } from './features/tco/tco-map.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: 'TCO',\r\n pathMatch: 'full'\r\n },\r\n {\r\n path: 'TCO',\r\n children: [\r\n {\r\n path: '',\r\n component: TCOMapComponent,\r\n },\r\n {\r\n path: 'ProcessEng',\r\n loadChildren: () => import('./features/tco/processeng/processeng.module').then((m) => m.ProcessEngModule),\r\n },\r\n ],\r\n data: { title: 'TCO' },\r\n },\r\n {\r\n path: 'TCOList',\r\n component: TCOComponent,\r\n loadChildren: () =>\r\n import('./features/tco/tco.module').then((m) => m.TCOModule),\r\n data: { title: 'TCO' },\r\n },\r\n {\r\n path: 'not-authorized',\r\n component: SharedUnauthorizedPageComponent,\r\n data: { title: 'TCO' },\r\n },\r\n {\r\n path: '**',\r\n redirectTo: 'TCO',\r\n pathMatch: 'full'\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule.forRoot(routes),\r\n TCORoutingModule,\r\n ProcessEngRoutingModule,\r\n FDRoutingModule,\r\n LPGRoutingModule,\r\n FinalReportRoutingModule,\r\n FDInputRoutingModule,\r\n ],\r\n exports: [RouterModule],\r\n declarations: [],\r\n})\r\nexport class AppRoutingModule {}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { TCOLanguages } from './core/models/i18n.model';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss'],\r\n})\r\nexport class AppComponent implements OnInit {\r\n showNavbar: boolean = !window.location.href.includes('flowmeter');\r\n\r\n isMainPage: boolean = true;\r\n\r\n isNotAuthorize: boolean = true;\r\n\r\n //FD\r\n //KTL\r\n isKTLMonthlyReport: boolean = true;\r\n isKTLCC: boolean = true;\r\n isKTLSchema: boolean = true;\r\n\r\n //SGP\r\n isSGPDailyReport: boolean = true;\r\n isSGPMonthlyReport: boolean = true;\r\n isSGPCC: boolean = true;\r\n isSGPSchema: boolean = true;\r\n\r\n //SGI\r\n isSGIFlareReport: boolean = true;\r\n isSGITargetPermit: boolean = true;\r\n isSGICC: boolean = true;\r\n\r\n //LPG\r\n isLPGFuelGasFlaring: boolean = true;\r\n isLPGCC: boolean = true;\r\n isFlowmeterCalc: boolean = true;\r\n\r\n //SO2\r\n isSO2EmissionsMonthlyReport: boolean = true;\r\n\r\n //FGD\r\n //KTL\r\n // isKTLFuelGasDashboard: boolean = true;\r\n isFGDKTLInput: boolean = true;\r\n isFGDKTLDailyReport: boolean = true;\r\n isFGDKTLMonthlyReport: boolean = true;\r\n\r\n //SGP\r\n isFGDSGPDailyReport: boolean = true;\r\n isFGDSGPMonthlyReport: boolean = true;\r\n isSGPGasUsageReport: boolean = true;\r\n\r\n constructor(private _router: Router, private _translate: TranslateService) {\r\n // this language will be used as a fallback when a translation isn't found in the current language\r\n _translate.setDefaultLang(TCOLanguages.RU);\r\n _translate.addLangs([TCOLanguages.EN, TCOLanguages.RU, TCOLanguages.KZ]);\r\n\r\n // the lang to use, if the lang isn't available, it will use the current loader to get them\r\n _translate.use(TCOLanguages.RU);\r\n\r\n this._router.events.pipe(takeUntilDestroyed()).subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.setActiveItemByRoute(event.urlAfterRedirects);\r\n }\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.router.navigate(['TCO']);\r\n }\r\n\r\n setActiveItemByRoute(route: string) {\r\n this.isMainPage = route === '/' || route === '/TCO' || route === '/TCO/ProcessEng' || route === '/FD';\r\n this.isNotAuthorize = route === '/not-authorized';\r\n\r\n //FD\r\n //KTL\r\n this.isKTLMonthlyReport = route === '/TCO/ProcessEng/FD/KTL/MonthlyReport';\r\n this.isKTLCC = route === '/TCO/ProcessEng/FD/KTL/cc';\r\n this.isKTLSchema = route === '/TCO/ProcessEng/FD/KTL/Schema';\r\n\r\n //SGP\r\n this.isSGPDailyReport = route === '/TCO/ProcessEng/FD/SGP/DailyReport';\r\n this.isSGPMonthlyReport = route === '/TCO/ProcessEng/FD/SGP/MonthlyReport';\r\n this.isSGPCC = route === '/TCO/ProcessEng/FD/SGP/cc';\r\n this.isSGPSchema = route === '/TCO';\r\n\r\n //SGI\r\n this.isSGIFlareReport = route === '/TCO/ProcessEng/FD/SGI/flare-report';\r\n this.isSGITargetPermit = route === '/TCO/ProcessEng/FD/SGI/target-permit';\r\n this.isSGICC = route === '/TCO/ProcessEng/FD/SGI/cc';\r\n\r\n //LPG\r\n this.isLPGFuelGasFlaring =\r\n route === '/TCO/ProcessEng/FD/LPG/FuelGasFlaring';\r\n this.isLPGCC = route === '/TCO/ProcessEng/FD/LPG/CC';\r\n this.isFlowmeterCalc =\r\n route === '/TCO/ProcessEng/FD/LPG/Input/PE/flowmetercalc';\r\n\r\n //SO2\r\n this.isSO2EmissionsMonthlyReport =\r\n route === '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/MonthlyReport';\r\n\r\n //FGD\r\n //KTL\r\n this.isFGDKTLInput = route === '/TCO/ProcessEng/FGD/KTL/Input';\r\n\r\n this.isFGDKTLDailyReport =\r\n route === '/TCO/ProcessEng/FGD/KTL/ProductionGasBalance';\r\n\r\n this.isFGDKTLMonthlyReport =\r\n route === '/TCO/ProcessEng/FGD/KTL/monthly-report';\r\n\r\n //SGP\r\n this.isFGDSGPDailyReport = route === '/TCO/ProcessEng/FGD/SGP/DailyReport';\r\n this.isFGDSGPMonthlyReport =\r\n route === '/TCO/ProcessEng/FGD/SGP/MonthlyReport';\r\n this.isSGPGasUsageReport =\r\n route === '/TCO/ProcessEng/FGD/SGP/GasUsageReport';\r\n }\r\n}\r\n","
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { AuthService } from './core/services/auth/auth.service';\r\n\r\nexport function AppInitializer(authSerivce: AuthService) {\r\n return () => authSerivce.login();\r\n}\r\n","import { APP_INITIALIZER, NgModule } from '@angular/core';\r\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\r\n\r\nimport * as _moment from 'moment';\r\nimport { default as _rollupMoment } from 'moment';\r\n\r\nimport { API_BASE_URL } from './web-api-client';\r\nimport { environment } from '../environments/environment';\r\n\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { StateModule } from './state/state.module';\r\nimport { SharedModule } from './shared/shared.module';\r\nimport { MaterialModule } from './material/material.module';\r\nimport { FinalReportModule } from './features/tco/processeng/fd/lpg/final-report/final-report.module';\r\nimport { AppComponent } from './app.component';\r\nimport { NavbarComponent } from './shared/components/shared-navbar/navbar.component';\r\nimport { AuthService } from './core/services/auth/auth.service';\r\nimport { AppInitializer } from './app.initializer';\r\n\r\nimport { TranslateLoader, TranslateModule } from '@ngx-translate/core';\r\nimport { TranslateHttpLoader } from '@ngx-translate/http-loader';\r\nimport { TCOLanguages } from './core/models/i18n.model';\r\n\r\nimport { ToastrModule } from 'ngx-toastr';\r\n\r\nexport function HttpLoaderFactory(http: HttpClient) {\r\n return new TranslateHttpLoader(http, './assets/i18n/', '.json');\r\n}\r\n\r\n@NgModule({\r\n declarations: [AppComponent, NavbarComponent],\r\n imports: [\r\n // General modules\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n HttpClientModule,\r\n\r\n // App modules\r\n AppRoutingModule,\r\n SharedModule,\r\n\r\n // State module\r\n StateModule,\r\n\r\n // Material module\r\n MaterialModule,\r\n\r\n // Feature modules\r\n FinalReportModule,\r\n\r\n // Internalization module\r\n TranslateModule.forRoot({\r\n defaultLanguage: TCOLanguages.RU,\r\n loader: {\r\n provide: TranslateLoader,\r\n useFactory: HttpLoaderFactory,\r\n deps: [HttpClient],\r\n },\r\n }),\r\n\r\n ToastrModule.forRoot({\r\n positionClass: 'toast-bottom-right',\r\n preventDuplicates: true,\r\n }),\r\n ],\r\n providers: [\r\n AuthService,\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: AppInitializer,\r\n deps: [AuthService],\r\n multi: true,\r\n },\r\n {\r\n provide: API_BASE_URL,\r\n useValue: environment.API_BASE_URL_Append,\r\n },\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {}\r\n","import { Injectable, isDevMode } from '@angular/core';\r\nimport {\r\n CanActivate,\r\n ActivatedRouteSnapshot,\r\n RouterStateSnapshot,\r\n Router,\r\n CanActivateChild,\r\n} from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from '../models/appState.model';\r\nimport { Observable, map } from 'rxjs';\r\nimport { selectUserGroups } from '../../state/auth/auth.selector';\r\nimport { UserGroups } from 'src/app/web-api-client';\r\nimport { RedirectTypes } from '../models/redirect-types.enum';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class RoleGuard implements CanActivate {\r\n constructor(private store: Store, private router: Router) {}\r\n\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | boolean {\r\n const expectedRole = route.data['expectedRole'];\r\n const redirectType = route.data['redirectCase']\r\n expectedRole.push(UserGroups.Chief_Technologist, UserGroups.Read_OnlyUser, UserGroups.SuperUser_Support)\r\n const jsonData = localStorage.getItem('currentUser');\r\n const user = jsonData ? JSON.parse(jsonData) : null;\r\n\r\n if (user?.some((item: any) => expectedRole.includes(item))) {\r\n return true;\r\n }\r\n\r\n return this.store.select(selectUserGroups).pipe(\r\n map((role) => {\r\n if (isDevMode() && role?.length === 0) { // local launch case\r\n return true;\r\n }\r\n\r\n if (role == null) { // API request not completed yet\r\n this.router.navigate(['TCO']);\r\n return false;\r\n }\r\n\r\n if (!role?.some((item) => expectedRole.includes(item))) {\r\n\r\n // redirect on special cases\r\n\r\n // field\r\n if (redirectType === RedirectTypes.Field && role.includes(UserGroups.Field_Operator)){\r\n this.router.navigate(['TCO/ProcessEng/FD/field/input/operator'])\r\n return true;\r\n }\r\n if (redirectType === RedirectTypes.Field && role.includes(UserGroups.Field_ProdPlanAnalyst)){\r\n this.router.navigate(['TCO/ProcessEng/FD/field/final-report/gas-balance'])\r\n return true;\r\n }\r\n\r\n // ktl\r\n if (redirectType === RedirectTypes.KTL && role.includes(UserGroups.KTL_Diagnostic)) {\r\n this.router.navigate(['TCO/ProcessEng/FD/KTL/Input/Diagnostician/Leakage'])\r\n return true;\r\n }\r\n if (redirectType === RedirectTypes.KTL && role.includes(UserGroups.KTL_Operator)) {\r\n this.router.navigate(['TCO/ProcessEng/FD/KTL/Input/Operator'])\r\n return true;\r\n }\r\n\r\n // sgp\r\n if (redirectType === RedirectTypes.SGP && role.includes(UserGroups.SGP_Operator)) {\r\n this.router.navigate(['TCO/ProcessEng/FD/SGP/Input/Operator/Flaring'])\r\n return true;\r\n }\r\n\r\n // lpg\r\n if (redirectType === RedirectTypes.LPG && role.includes(UserGroups.LPG_Operator)) {\r\n this.router.navigate(['TCO/ProcessEng/FD/LPG/Input/Operator'])\r\n return true;\r\n }\r\n if (redirectType === RedirectTypes.LPG && role.includes(UserGroups.LPG_ProdPlanAnalyst)) {\r\n this.router.navigate(['TCO/ProcessEng/FD/LPG/Input/Analyst'])\r\n return true;\r\n }\r\n\r\n\r\n this.router.navigate(['not-authorized'], {\r\n queryParams: { redirectBack: route?.routeConfig?.path ?? null },\r\n });\r\n return false;\r\n }\r\n\r\n return true;\r\n })\r\n );\r\n }\r\n}\r\n","export interface CCType {\r\n [key: string]: string;\r\n}\r\n\r\nexport const CCNames: CCType = {\r\n n2: 'N2',\r\n cO2: 'CO2',\r\n c1: 'C1',\r\n c2: 'C2',\r\n c3: 'C3',\r\n iC4: 'IC4',\r\n nC4: 'nC4',\r\n iC5: 'IC5',\r\n nC5: 'nC5',\r\n c6Plus: 'C6+',\r\n h2S: 'H2S',\r\n cH3SH: 'CH3SH',\r\n c2H5SH: 'C2H5SH',\r\n iC3H7SH: 'IC3H7SH',\r\n nC3H7SH: 'NC3H7SH',\r\n c4H9SH: 'C4H9SH',\r\n cos: 'COS',\r\n h2O: 'H2O',\r\n o2: 'O2',\r\n h2: 'H2',\r\n he: 'HE',\r\n mw: 'MW',\r\n};\r\n\r\nexport const FlaringReportNames: CCType = {\r\n n2: 'N2',\r\n co2: 'CO2',\r\n c1: 'C1',\r\n c2: 'C2',\r\n c3: 'C3',\r\n ic4: 'IC4',\r\n nc4: 'nC4',\r\n ic5: 'IC5',\r\n nc5: 'nC5',\r\n c6plus: 'C6+',\r\n h2s: 'H2S',\r\n ch3sh: 'CH3SH',\r\n c2h5sh: 'C2H5SH',\r\n ic3h7sh: 'IC3H7SH',\r\n nc3h7sh: 'NC3H7SH',\r\n c4h9sh: 'C4H9SH',\r\n cos: 'COS',\r\n h2o: 'H2O',\r\n o2: 'O2',\r\n h2: 'H2',\r\n he: 'HE',\r\n mw: 'MW',\r\n};\r\n","export enum TCOLanguages {\r\n KZ = 'kz',\r\n RU = 'ru',\r\n EN = 'en',\r\n}\r\n","export enum RedirectTypes{\r\n Field,\r\n KTL,\r\n SGP,\r\n InternalUsage,\r\n SGI,\r\n LPG\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport * as AuthActions from '../../../state/auth/auth.action';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService {\r\n constructor(private store: Store) {}\r\n\r\n login() {\r\n this.store.dispatch(AuthActions.getUserGroups());\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport moment, { unitOfTime } from 'moment';\r\nimport {\r\n BehaviorSubject,\r\n Observable,\r\n fromEvent,\r\n map,\r\n} from 'rxjs';\r\nimport {\r\n LPGGasType,\r\n PermitTargetInputCategory,\r\n PermitTargetInputType,\r\n StreamStatuses,\r\n} from 'src/app/web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CommonService {\r\n public static MONTH_FORMAT = 'YYYY-MM';\r\n public static DATE_FORMAT = 'YYYY-MM-DD';\r\n public static DATETIME_FORMAT = 'YYYY-MM-DD HH:mm';\r\n public static DATE_VIEW_FORMAT = 'DD-MM-YYYY';\r\n public static DATE_NEW_VIEW_FORMAT = 'DD/MM/YYYY';\r\n public static DATETIME_VIEW_FORMAT = 'DD-MMM-YYYY HH:mm';\r\n public static DATETIME_VIEW_NEW_FORMAT = 'DD/MM/YYYY HH:mm';\r\n\r\n constructor() {}\r\n\r\n convertToDateTimeZ(date: string) {\r\n const newDate = new Date(date);\r\n return `${newDate.getFullYear()}-${(newDate.getMonth() + 1)\r\n .toString()\r\n .padStart(2, '0')}-${newDate\r\n .getDate()\r\n .toString()\r\n .padStart(2, '0')}T${newDate\r\n .getHours()\r\n .toString()\r\n .padStart(2, '0')}:${newDate.getMinutes().toString().padStart(2, '0')}`;\r\n }\r\n\r\n convertDateToMonth(date: Date) {\r\n return moment(date).format('YYYY-MM');\r\n }\r\n\r\n manipulateDate(\r\n date: Date | string,\r\n options?: {\r\n amount?: number;\r\n unit?: unitOfTime.DurationConstructor;\r\n time?: { hours: number; minutes: number; seconds?: number };\r\n isUTC?: boolean;\r\n }\r\n ) {\r\n let newDate = options?.isUTC ? moment.utc(date) : moment(date);\r\n if (options) {\r\n if (options.unit) {\r\n newDate = newDate.add(options.amount, options.unit);\r\n }\r\n if (options.time) {\r\n newDate.set('hour', options.time.hours);\r\n newDate.set('minute', options.time.minutes);\r\n if (options.time.seconds != null) {\r\n newDate.set('second', options.time.seconds);\r\n }\r\n }\r\n }\r\n return newDate.toDate();\r\n }\r\n\r\n formatDate(date: Date | string, format: string) {\r\n let newDate = moment(date);\r\n return newDate.format(format);\r\n }\r\n\r\n formatDateWithShift(value?: Date, isLocal = false, format = CommonService.DATETIME_VIEW_FORMAT): string | null {\r\n if (value && moment(value).isValid()) {\r\n const date = isLocal\r\n ? moment(value.toLocaleString()).toDate()\r\n : moment.utc(value.toLocaleString()).toDate();\r\n\r\n return moment(date).local().format(format);\r\n }\r\n\r\n return null; \r\n }\r\n\r\n convertLocalTimeAsUTC(value?: Date, format = CommonService.DATETIME_VIEW_FORMAT) {\r\n return value ? moment.utc(value).format(format) : null;\r\n }\r\n\r\n getCategoryName(category: PermitTargetInputCategory | undefined): string {\r\n switch (category) {\r\n case PermitTargetInputCategory.V6:\r\n return 'V6';\r\n case PermitTargetInputCategory.V7:\r\n return 'V7';\r\n case PermitTargetInputCategory.V8:\r\n return 'V8';\r\n case PermitTargetInputCategory.V9:\r\n return 'V9';\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n getGasTypeName(type: number): string {\r\n switch (type) {\r\n case LPGGasType.Dry:\r\n return 'Fuel Gas';\r\n case LPGGasType.Propane:\r\n return 'Propane';\r\n case LPGGasType.Butane:\r\n return 'Butane';\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n public getStreamStatusColor(\r\n status: StreamStatuses\r\n ): Record | null {\r\n switch (status) {\r\n case StreamStatuses.Issue:\r\n return {\r\n background: '#F44336',\r\n };\r\n case StreamStatuses.Modified:\r\n return {\r\n background: '#4CAF50',\r\n };\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n getGasTypeTargetPermitName(type: number): string {\r\n switch (type) {\r\n case LPGGasType.Dry:\r\n return 'Dry Gas';\r\n case LPGGasType.Propane:\r\n return 'Propane';\r\n case LPGGasType.Butane:\r\n return 'Butane';\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n getLimitName(type: number): string {\r\n switch (type) {\r\n case PermitTargetInputType.Permit:\r\n return 'Permit';\r\n case PermitTargetInputType.Target:\r\n return 'Target';\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n formatNumberCC(value: any): string {\r\n // formate numbers for Chemical components\r\n if (typeof value !== 'number') {\r\n return value; // If not a number, return the original value as string\r\n }\r\n\r\n const formattedValue =\r\n value % 1 === 0\r\n ? value.toLocaleString('en-US')\r\n : value.toLocaleString('en-US', {\r\n minimumFractionDigits: 4,\r\n maximumFractionDigits: 4,\r\n });\r\n\r\n return formattedValue.replace(/(\\.[0-9]*[1-9])0+$/, '$1');\r\n }\r\n /*\r\n formatNumberMV(value: any): string { // formate numbers for Mass and Value\r\n if (typeof value !== 'number') {\r\n return value; // If not a number, return the original value as string\r\n }\r\n\r\n let formattedValue: string;\r\n\r\n if (value % 1 === 0) {\r\n formattedValue = value.toLocaleString('en-US');\r\n } else {\r\n formattedValue = value.toLocaleString('en-US', {\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2,\r\n });\r\n }\r\n\r\n return formattedValue.replace(/(\\.[0-9]*[1-9])0+$/, '$1');\r\n }*/\r\n\r\n formatNumberMV(value: any): string {\r\n if (typeof value !== 'number') {\r\n return value.toString();\r\n }\r\n\r\n let formattedValue: string;\r\n\r\n if (Number.isInteger(value)) {\r\n formattedValue = value.toLocaleString('en-US') + '.00';\r\n } else {\r\n formattedValue = value.toLocaleString('en-US', {\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2,\r\n });\r\n }\r\n\r\n return formattedValue;\r\n }\r\n\r\n formatNumber(value: any, digits = 2): string {\r\n if (typeof value !== 'number') {\r\n return value.toString();\r\n }\r\n\r\n return value.toLocaleString('en-US', {\r\n minimumFractionDigits: digits,\r\n maximumFractionDigits: digits,\r\n });\r\n }\r\n\r\n /*\r\n formatNumberMV(value: any): string {\r\n // Format numbers for Mass and Value\r\n if (typeof value !== 'number') {\r\n return value.toString(); // If not a number, return the original value as string\r\n }\r\n \r\n // Convert scientific notation to a regular number\r\n const convertedValue = Number(value);\r\n \r\n // Round the value to 2 decimal places\r\n const roundedValue = Number(convertedValue.toFixed(2));\r\n \r\n let formattedValue: string;\r\n \r\n if (Number.isInteger(roundedValue) && value.toString().indexOf('e') === -1) {\r\n // For whole numbers without 'e', explicitly add '.00' to ensure two decimal places\r\n formattedValue = roundedValue.toLocaleString('en-US') + '.00';\r\n } else {\r\n formattedValue = roundedValue.toLocaleString('en-US', {\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2,\r\n });\r\n }\r\n \r\n return formattedValue;\r\n }\r\n */\r\n\r\n private selectedRowSubject = new BehaviorSubject(null);\r\n selectedRow$: Observable = this.selectedRowSubject.asObservable();\r\n\r\n setSelectedRow(row: any) {\r\n this.selectedRowSubject.next(row);\r\n }\r\n\r\n closePage() {\r\n window.close();\r\n }\r\n\r\n getClipboardDataFromDocument(): Observable {\r\n return fromEvent(document, 'paste').pipe(\r\n map((event: ClipboardEvent) => {\r\n if (event.clipboardData) {\r\n return event.clipboardData.getData('text');\r\n } else if ((window as any).clipboardData) {\r\n return (window as any).clipboardData.getData('Text');\r\n } else {\r\n console.error('Clipboard data not available.');\r\n return '';\r\n }\r\n }),\r\n map(data => {\r\n console.log('pipe data', data);\r\n \r\n return data\r\n })\r\n );\r\n }\r\n\r\n \r\n getClipboardData(event: ClipboardEvent): number[] {\r\n const data = event.clipboardData?.getData('text');\r\n let values: number[] = [];\r\n\r\n if (data) {\r\n if (data.includes(',')) {\r\n values = data?.split(',').map((item) => Number(item));\r\n }\r\n\r\n // vertical excel data\r\n const matchVertical = /\\r|\\n/.exec(data);\r\n if (matchVertical) {\r\n values = data\r\n .split('\\r\\n')\r\n .filter((item) => item?.length)\r\n .map((value) => Number(value.replace(/,/g, '.')));\r\n }\r\n\r\n // horizontal excel data\r\n const matchHorizontal = /\\t/.exec(data);\r\n if (matchHorizontal) {\r\n values = data\r\n .split('\\t')\r\n .filter((item) => item?.length)\r\n .map((value) => Number(value.replace(/,/g, '.')));\r\n }\r\n }\r\n\r\n return values;\r\n }\r\n\r\n isOperatorLocked(date: Date): boolean {\r\n const recordDate = moment(date);\r\n const today = moment();\r\n const month = today.month();\r\n const year = today.year();\r\n const start = moment(`${month + 1}/2/${year} 14:00`, 'MM/DD/YYYY h:mm');\r\n\r\n console.log('recordDate: ', recordDate);\r\n console.log('today:', today);\r\n console.log('start', start);\r\n\r\n if (recordDate.isBefore(start) && today.isAfter(start)) return false;\r\n return true;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class BreadcrumbService {\r\n private breadcrumbs = new BehaviorSubject(['TCO']);\r\n\r\n constructor() {}\r\n \r\n getBreadcrumbStream() {\r\n return this.breadcrumbs.asObservable();\r\n }\r\n \r\n updateBreadcrumb(newItem: string) {\r\n const currentBreadcrumbs = this.breadcrumbs.getValue();\r\n const newBreadcrumbs = [...currentBreadcrumbs, newItem];\r\n this.breadcrumbs.next(newBreadcrumbs);\r\n }\r\n \r\n resetBreadcrumbTo(path: string[]) {\r\n this.breadcrumbs.next(['TCO', ...path]);\r\n } \r\n}","import { Injectable } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { SharedDeleteConfirmationComponent } from 'src/app/shared/components/shared-delete-confirmation/shared-delete-confirmation.component';\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ModalService {\r\n constructor(private dialog: MatDialog) {}\r\n\r\n openDeleteConfirmationDialog(): Promise {\r\n return new Promise((resolve) => {\r\n const dialogRef = this.dialog.open(SharedDeleteConfirmationComponent, {\r\n width: '1000px',\r\n });\r\n\r\n dialogRef.afterClosed().subscribe((result: boolean) => {\r\n resolve(result);\r\n });\r\n });\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Title } from '@angular/platform-browser';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TitleService {\r\n constructor(private title: Title) {}\r\n\r\n setTitle(newTitle: string) {\r\n this.title.setTitle(newTitle);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { FieldClient, LPGClient, SGPFGDClient } from 'src/app/web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ExportService {\r\n isLoading: boolean = false;\r\n blob: any;\r\n\r\n constructor(private lpgClient: LPGClient, private fieldClient: FieldClient, private fgdsgpClient: SGPFGDClient) {}\r\n\r\n exportFlaringReport(dt: Date) {\r\n this.setIsLoading(true);\r\n this.lpgClient.exportFlaringReports(dt).subscribe((res) => {\r\n if (res) {\r\n this.blob = new Blob([res.data]);\r\n var downloadUrl = window.URL.createObjectURL(res.data);\r\n var link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.download = res.fileName!;\r\n link.click();\r\n }\r\n this.setIsLoading(false);\r\n });\r\n }\r\n\r\n exportAnalystReports(dt: Date) {\r\n this.setIsLoading(true);\r\n this.lpgClient.exportAnalystReports(dt).subscribe((res) => {\r\n if (res) {\r\n this.blob = new Blob([res.data]);\r\n var downloadUrl = window.URL.createObjectURL(res.data);\r\n var link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.download = res.fileName!;\r\n link.click();\r\n }\r\n this.setIsLoading(false);\r\n });\r\n }\r\n\r\n exportLPGDataReports(dt: Date) {\r\n this.setIsLoading(true);\r\n this.lpgClient.exportLPGDataReports(dt).subscribe((res) => {\r\n if (res) {\r\n this.blob = new Blob([res.data]);\r\n var downloadUrl = window.URL.createObjectURL(res.data);\r\n var link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.download = res.fileName!;\r\n link.click();\r\n }\r\n this.setIsLoading(false);\r\n });\r\n }\r\n\r\n exportFuelGasFlaringReports(dt: Date) {\r\n this.setIsLoading(true);\r\n this.lpgClient.exportFuelGasFlaringReports(dt).subscribe((res) => {\r\n if (res) {\r\n this.blob = new Blob([res.data]);\r\n var downloadUrl = window.URL.createObjectURL(res.data);\r\n var link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.download = res.fileName!;\r\n link.click();\r\n }\r\n this.setIsLoading(false);\r\n });\r\n }\r\n\r\n exportChemicalCompositionReports(dt: Date) {\r\n this.setIsLoading(true);\r\n this.lpgClient.exportChemicalCompositionReports(dt).subscribe((res) => {\r\n if (res) {\r\n this.blob = new Blob([res.data]);\r\n var downloadUrl = window.URL.createObjectURL(res.data);\r\n var link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.download = res.fileName!;\r\n link.click();\r\n }\r\n this.setIsLoading(false);\r\n });\r\n }\r\n\r\n exportFieldDryGasReports(dt: Date) {\r\n this.setIsLoading(true);\r\n this.fieldClient.exportDryGas(dt).subscribe((res) => {\r\n if (res) {\r\n this.blob = new Blob([res.data]);\r\n var downloadUrl = window.URL.createObjectURL(res.data);\r\n var link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.download = res.fileName!;\r\n link.click();\r\n }\r\n this.setIsLoading(false);\r\n });\r\n }\r\n\r\n exportFGDSGPMonthlyFuelGasReports(dt: Date) {\r\n this.setIsLoading(true);\r\n this.fgdsgpClient.exportSGPFGDMonthlyReports(dt).subscribe((res) => {\r\n if (res) {\r\n this.blob = new Blob([res.data]);\r\n var downloadUrl = window.URL.createObjectURL(res.data);\r\n var link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.download = res.fileName!;\r\n link.click();\r\n }\r\n this.setIsLoading(false);\r\n });\r\n }\r\n\r\n exportFGDSGPDailyFuelGasReports(dt: Date) {\r\n this.setIsLoading(true);\r\n this.fgdsgpClient.exportSGPFGDDailyReports(dt).subscribe((res) => {\r\n if (res) {\r\n this.blob = new Blob([res.data]);\r\n var downloadUrl = window.URL.createObjectURL(res.data);\r\n var link = document.createElement('a');\r\n link.href = downloadUrl;\r\n link.download = res.fileName!;\r\n link.click();\r\n }\r\n this.setIsLoading(false);\r\n });\r\n }\r\n\r\n\r\n setIsLoading(loading: boolean) {\r\n this.isLoading = loading;\r\n }\r\n\r\n getIsLoading() {\r\n return this.isLoading;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { TCOLanguages } from '../../models/i18n.model';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class I18NService {\r\n public get languages$() {\r\n return this._languages$.asObservable();\r\n }\r\n\r\n private _languages$ = new BehaviorSubject([]);\r\n\r\n public setLanguages(languages: TCOLanguages[]): void {\r\n this._languages$.next(languages);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { FuelGasFlaringEditComponent } from 'src/app/features/tco/processeng/fd/lpg/fuel-gas-flaring/fuel-gas-flaring-edit/fuel-gas-flaring-edit.component';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FuelGasFlaringService {\r\n\r\nconstructor(private dialog: MatDialog) {}\r\n\r\n openEditDialog(data: any) {\r\n const dialogRef = this.dialog.open(FuelGasFlaringEditComponent, {\r\n width: '800px', // Adjust the width as needed\r\n data: data, // Pass the data to the dialog\r\n });\r\n\r\n return dialogRef.afterClosed();\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { OperatorsEditComponent } from 'src/app/features/tco/processeng/fd/lpg/input/operator/operators-edit/operators-edit.component';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OperatorService {\r\n private data: any = {\r\n 'Old Park - KTL': {\r\n Propane: [\r\n 'E-902/21',\r\n 'E-902/22',\r\n 'E-902/23',\r\n 'E-902/24',\r\n 'E-902/25',\r\n 'E-902/26',\r\n 'E-902/27',\r\n 'E-902/28',\r\n 'E-902/29',\r\n 'E-902/30',\r\n 'E-902/31',\r\n 'E-902/32',\r\n 'E-902/33',\r\n 'E-903',\r\n 'E-904',\r\n 'E-909',\r\n 'Other',\r\n ],\r\n Butane: [\r\n 'E-901/1',\r\n 'E-901/2',\r\n 'E-901/3',\r\n 'E-901/4',\r\n 'E-901/5',\r\n 'E-901/6',\r\n 'E-902/7',\r\n 'E-903',\r\n 'E-904',\r\n 'E-909',\r\n 'Other',\r\n ],\r\n 'Fuel Gas': ['Other'],\r\n },\r\n 'New Park - SGP': {\r\n Propane: ['F-3501', 'F-3502', 'F-3503', 'F-3524', 'F-3525', 'Other'],\r\n Butane: ['F-3511', 'F-3512', 'F-3513', 'F-3524', 'F-3525', 'Other'],\r\n 'Fuel Gas': ['Other'],\r\n },\r\n };\r\n\r\n constructor(private dialog: MatDialog) {}\r\n\r\n openEditDialog(data: any) {\r\n const dialogRef = this.dialog.open(OperatorsEditComponent, {\r\n width: '1000px', // Adjust the width as needed\r\n data: data, // Pass the data to the dialog\r\n });\r\n return dialogRef.afterClosed();\r\n }\r\n\r\n getParks() {\r\n return Object.keys(this.data);\r\n }\r\n\r\n getGasesForPark(park: string) {\r\n return Object.keys(this.data[park] || {});\r\n }\r\n\r\n getOptionsForGas(park: string, gas: string) {\r\n return this.data[park]?.[gas] || [];\r\n }\r\n}\r\n","import { Injectable, Type } from '@angular/core';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { FlowmeterCalculationComponent } from 'src/app/features/tco/processeng/fd/lpg/input/pe/flowmeter-calc/flowmeter-calculation/flowmeter-calculation.component';\r\nimport { ProcengEditComponent } from 'src/app/features/tco/processeng/fd/lpg/input/pe/process-engineer/proceng-edit/proceng-edit.component';\r\nimport { LPGStreamCCType } from 'src/app/web-api-client';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PEService {\r\n\r\n private dialogClosedSubject = new Subject();\r\n\r\n private data: any = {\r\n 'Old Park - KTL': {\r\n Propane: [\r\n 'E-902/21',\r\n 'E-902/22',\r\n 'E-902/23',\r\n 'E-902/24',\r\n 'E-902/25',\r\n 'E-902/26',\r\n 'E-902/27',\r\n 'E-902/28',\r\n 'E-902/29',\r\n 'E-902/30',\r\n 'E-902/31',\r\n 'E-902/32',\r\n 'E-902/33',\r\n 'E-903',\r\n 'E-904',\r\n 'E-909',\r\n 'Other',\r\n ],\r\n Butane: [\r\n 'E-901/1',\r\n 'E-901/2',\r\n 'E-901/3',\r\n 'E-901/4',\r\n 'E-901/5',\r\n 'E-901/6',\r\n 'E-902/7',\r\n 'E-903',\r\n 'E-904',\r\n 'E-909',\r\n 'Other',\r\n ],\r\n 'Fuel Gas': ['Other'],\r\n },\r\n 'New Park - SGP': {\r\n Propane: ['F-3501', 'F-3502', 'F-3503', 'F-3524', 'F-3525', 'Other'],\r\n Butane: ['F-3511', 'F-3512', 'F-3513', 'F-3524', 'F-3525', 'Other'],\r\n 'Fuel Gas': ['Other'],\r\n },\r\n };\r\n private purpose: any = {\r\n Flared: {},\r\n Leakage: {},\r\n };\r\n private entryType: any = {\r\n 'Manual Entry': {}\r\n };\r\n private flowMeterEntryType: any = {\r\n 'Manual Entry': {},\r\n 'Flowmeter Calc': {},\r\n };\r\n private Category: any = {\r\n V6: {},\r\n V7: {},\r\n V8: {},\r\n V9: {},\r\n };\r\n\r\n getParks() {\r\n return Object.keys(this.data);\r\n }\r\n\r\n getGasesForPark(park: string) {\r\n return Object.keys(this.data[park] || {});\r\n }\r\n\r\n getOptionsForGas(park: string, gas: string) {\r\n return this.data[park]?.[gas] || [];\r\n }\r\n\r\n getPurpose() {\r\n return Object.keys(this.purpose);\r\n }\r\n\r\n getEntryType() {\r\n return Object.keys(this.entryType);\r\n }\r\n\r\n getFlowMeterEntryType(){\r\n return Object.keys(this.flowMeterEntryType);\r\n }\r\n\r\n getMWSelectionPoints(gas: string): string[] {\r\n if (gas === 'Propane') {\r\n return [\r\n 'Old Park average',\r\n 'New Park average',\r\n 'E-902',\r\n 'F-3501',\r\n 'F-3502',\r\n 'F-3503',\r\n ];\r\n } else if (gas === 'Butane') {\r\n return [\r\n 'Old Park average',\r\n 'New Park average',\r\n 'E-901',\r\n 'F-3511',\r\n 'F-3512',\r\n 'F-3513',\r\n ];\r\n } else if (gas === 'Fuel Gas') {\r\n return ['Fuel Gas From Sales Gas Line', 'Fuel Gas From KTL (Average)'];\r\n } else {\r\n return [];\r\n }\r\n }\r\n\r\n getCategory() {\r\n return Object.keys(this.Category);\r\n }\r\n\r\n constructor(private dialog: MatDialog) {}\r\n/*\r\n openEditDialog(data: any) {\r\n const dialogRef = this.dialog.open(ProcengEditComponent, {\r\n width: '1000px', // Adjust the width as needed\r\n data: data, // Pass the data to the dialog\r\n });\r\n return dialogRef.afterClosed();\r\n }\r\n*/\r\n\r\nopenEditDialog(data: any, editComponent: Type) {\r\n const dialogRef = this.dialog.open(editComponent, {\r\n width: '1000px', // Adjust the width as needed\r\n data: data, // Pass the data to the dialog\r\n });\r\n return dialogRef.afterClosed();\r\n}\r\n\r\n openFlowmeterCalculationDialog(): Observable {\r\n const dialogRef: MatDialogRef = this.dialog.open(FlowmeterCalculationComponent, {\r\n width: '1400px',\r\n data: {},\r\n });\r\n\r\n dialogRef.afterClosed().subscribe(result => {\r\n this.dialogClosedSubject.next(!!result); // Emit a boolean indicating whether the dialog was closed\r\n });\r\n\r\n return this.dialogClosedSubject.asObservable();\r\n }\r\n\r\n selectedTableName: string = '';\r\n\r\n setSelectedTableName(tableName: string) {\r\n this.selectedTableName = tableName;\r\n }\r\n\r\n formatMWSelectionPoint(mw: string, gas: string): LPGStreamCCType {\r\n switch (mw) {\r\n case 'Old Park average':\r\n if (gas === 'Propane') return LPGStreamCCType.OldParkAvgPropane;\r\n return LPGStreamCCType.OldParkAvgButane;\r\n case 'New Park average':\r\n if (gas === 'Propane') return LPGStreamCCType.NewParkAvgPropane;\r\n return LPGStreamCCType.NewParkAvgButane;\r\n case 'E-902':\r\n return LPGStreamCCType.E902;\r\n case 'F-3501':\r\n return LPGStreamCCType.F3501;\r\n case 'F-3502':\r\n return LPGStreamCCType.F3502;\r\n case 'F-3503':\r\n return LPGStreamCCType.F3503;\r\n case 'E-901':\r\n return LPGStreamCCType.E901;\r\n case 'F-3511':\r\n return LPGStreamCCType.F3511;\r\n case 'F-3512':\r\n return LPGStreamCCType.F3512;\r\n case 'F-3513':\r\n return LPGStreamCCType.F3513;\r\n case 'Fuel Gas From Sales Gas Line':\r\n return LPGStreamCCType.Korolev;\r\n case 'Fuel Gas From KTL (Average)':\r\n return LPGStreamCCType.KTLAvg;\r\n default:\r\n return LPGStreamCCType.Nothing;\r\n }\r\n }\r\n\r\n formatMWSelectionPointToName(mw: number): string {\r\n switch (mw) {\r\n case LPGStreamCCType.OldParkAvgPropane:\r\n case LPGStreamCCType.OldParkAvgButane:\r\n return 'Old Park average';\r\n case LPGStreamCCType.NewParkAvgPropane:\r\n case LPGStreamCCType.NewParkAvgButane:\r\n return 'New Park average';\r\n case LPGStreamCCType.E902:\r\n return 'E-902';\r\n case LPGStreamCCType.F3501:\r\n return 'F-3501';\r\n case LPGStreamCCType.F3502:\r\n return 'F-3502';\r\n case LPGStreamCCType.F3503:\r\n return 'F-3503';\r\n case LPGStreamCCType.E901:\r\n return 'E-901';\r\n case LPGStreamCCType.F3511:\r\n return 'F-3511';\r\n case LPGStreamCCType.F3512:\r\n return 'F-3512';\r\n case LPGStreamCCType.F3513:\r\n return 'F-3513';\r\n case LPGStreamCCType.Korolev:\r\n return 'Fuel Gas From Sales Gas Line';\r\n case LPGStreamCCType.KTLAvg:\r\n return 'Fuel Gas From KTL (Average)';\r\n default:\r\n return '';\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n children: [\r\n {\r\n path: 'LPG',\r\n loadChildren: () => import('./lpg/lpg.module').then((m) => m.LPGModule),\r\n },\r\n {\r\n path: 'KTLSGP',\r\n loadChildren: () =>\r\n import('./ktl-sgp/ktl-sgp.module').then((m) => m.KtlSgpModule),\r\n },\r\n {\r\n path: 'field',\r\n loadChildren: () =>\r\n import('./field/field.module').then((m) => m.FieldModule),\r\n },\r\n {\r\n path: 'SGI',\r\n loadChildren: () => import('./sgi/sgi.module').then((m) => m.SgiModule),\r\n },\r\n {\r\n path: 'KTL',\r\n loadChildren: () => import('./ktl/ktl.module').then((m) => m.FDKTLModule),\r\n },\r\n {\r\n path: 'SGP',\r\n loadChildren: () => import('./sgp/sgp.module').then((m) => m.FDSGPModule),\r\n },\r\n ],\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class FDRoutingModule {}\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { CalculatedStreamInputRecordDTO, DailyReportDTO } from 'src/app/web-api-client';\r\n\r\nexport const AddGenerateReports = createAction(\r\n '[KTL] Add Generate Reports',\r\n props<{startTime: Date | undefined}>()\r\n);\r\nexport const AddGenerateReportsSuccess = createAction(\r\n '[KTL] Add Generate Reports Success',\r\n props()\r\n);\r\nexport const AddGenerateReportsFailure = createAction(\r\n '[KTL] Add Generate Reports Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getDailyReport = createAction(\r\n '[KTL] Get Daily Reports',\r\n props<{ dt: Date; flare: string }>()\r\n);\r\nexport const getDailyReportSuccess = createAction(\r\n '[KTL] Get Daily Reports Success',\r\n props<{ data: DailyReportDTO[] }>()\r\n);\r\nexport const getDailyReportFailure = createAction(\r\n '[KTL] Get Daily Reports Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getDailyReportStreamDetails = createAction(\r\n '[KTL] Get Daily Report Stream Details',\r\n props<{ dt: Date; streamId: number }>()\r\n);\r\nexport const getDailyReportStreamDetailsSuccess = createAction(\r\n '[KTL] Get Daily Report Stream Details Success',\r\n props<{ data: CalculatedStreamInputRecordDTO[] }>()\r\n);\r\nexport const getDailyReportStreamDetailsFailure = createAction(\r\n '[KTL] Get Daily Report Stream Details Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n concatMap,\r\n withLatestFrom,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as DailyReportActions from './daily-report.actions';\r\nimport * as notificationActions from '../../../../../../../state/notification/notification.action';\r\nimport {\r\n CalculatedStreamInputRecordDTO,\r\n DailyReportDTO,\r\n KTLSGPClient,\r\n} from '../../../../../../../web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class DailyReportEffects {\r\n constructor(\r\n private actions: Actions,\r\n private ktlfdClient: KTLSGPClient,\r\n private store: Store\r\n ) {}\r\n\r\n addGenerateReports = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(DailyReportActions.AddGenerateReports),\r\n exhaustMap((action) => {\r\n return this.ktlfdClient.generateReports(action.startTime).pipe(\r\n concatMap((res) => [\r\n DailyReportActions.AddGenerateReportsSuccess(res),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(DailyReportActions.AddGenerateReportsFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n DailyReport = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(DailyReportActions.getDailyReport),\r\n exhaustMap((action) => {\r\n this.store.dispatch(notificationActions.startLoading());\r\n\r\n return this.ktlfdClient.getReportDaily(action.dt, action.flare).pipe(\r\n map((res) => {\r\n this.store.dispatch(notificationActions.stopLoading());\r\n\r\n const dataArray: DailyReportDTO[] = [res];\r\n\r\n return DailyReportActions.getDailyReportSuccess({\r\n data: dataArray,\r\n });\r\n }),\r\n catchError((err) => {\r\n this.store.dispatch(notificationActions.stopLoading());\r\n this.store.dispatch(notificationActions.showNotification({ isSuccess: false }));\r\n \r\n return of(DailyReportActions.getDailyReportFailure(err))\r\n })\r\n );\r\n })\r\n )\r\n );\r\n\r\n DailyReportStreamDetails = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(DailyReportActions.getDailyReportStreamDetails),\r\n exhaustMap((action) => {\r\n return this.ktlfdClient\r\n .getDailyReportStreamDetails(action.dt, action.streamId)\r\n .pipe(\r\n map((res) => {\r\n const dataArray: CalculatedStreamInputRecordDTO[] = [res];\r\n return DailyReportActions.getDailyReportStreamDetailsSuccess({\r\n data: dataArray,\r\n });\r\n }),\r\n catchError((err) =>\r\n of(DailyReportActions.getDailyReportStreamDetails(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as DailyReportActions from './daily-report.actions';\r\nimport { CalculatedStreamInputRecordDTO, DailyReportDTO } from 'src/app/web-api-client';\r\n\r\nexport interface DailyReportState{\r\n data: DailyReportDTO[] | null;\r\n //data2: CalculatedStreamInputRecordDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: DailyReportState = {\r\n data: null,\r\n //data2: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const DailyReportReducer = createReducer(\r\n initialState,\r\n on(DailyReportActions.getDailyReport, state => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(DailyReportActions.getDailyReportSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n //data2: null,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(DailyReportActions.getDailyReportFailure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n })),\r\n \r\n on(DailyReportActions.getDailyReportStreamDetails, state => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(DailyReportActions.getDailyReportStreamDetailsSuccess, (state, result) => ({\r\n ...state,\r\n data: null,\r\n //data2: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(DailyReportActions.getDailyReportStreamDetailsFailure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n })),\r\n\r\n on(DailyReportActions.AddGenerateReports, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(DailyReportActions.AddGenerateReportsSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(DailyReportActions.AddGenerateReportsFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n);","import { createAction, props } from '@ngrx/store';\r\nimport { F205CalcDTO, F205DTO, F205TotalCalcDTO, F205TotalDTO } from 'src/app/web-api-client';\r\n\r\nexport const getF205 = createAction(\r\n '[KTL] Get F205',\r\n props<{ startdt: Date; enddt: Date }>()\r\n);\r\nexport const getF205Success = createAction(\r\n '[KTL] Get F205 Success',\r\n props<{ data: F205TotalDTO }>()\r\n);\r\nexport const getF205Failure = createAction(\r\n '[KTL] Get F205 Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\n// export const getF205D = createAction(\r\n// '[KTL] Get F205',\r\n// props<{ startdt: Date; enddt: Date }>()\r\n// );\r\n// export const getF205DSuccess = createAction(\r\n// '[KTL] Get F205 Success',\r\n// props<{ data: F205DTO }>()\r\n// );\r\n// export const getF205DFailure = createAction(\r\n// '[KTL] Get F205 Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const getF205S = createAction(\r\n// '[KTL] Get F205 S',\r\n// props<{ startdt: Date; enddt: Date }>()\r\n// );\r\n// export const getF205SSuccess = createAction(\r\n// '[KTL] Get F205 S Success',\r\n// props<{ data: F205CalcDTO }>()\r\n// );\r\n// export const getF205SFailure = createAction(\r\n// '[KTL] Get F205 S Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const getF205T = createAction(\r\n// '[KTL] Get F205 T',\r\n// props<{ startdt: Date; enddt: Date }>()\r\n// );\r\n// export const getF205TSuccess = createAction(\r\n// '[KTL] Get F205 T Success',\r\n// props<{ data: F205TotalCalcDTO }>()\r\n// );\r\n// export const getF205TFailure = createAction(\r\n// '[KTL] Get F205 T Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n concatMap,\r\n withLatestFrom,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as F205Actions from './f-205.actions';\r\nimport * as notificationActions from '../../../../../../../state/notification/notification.action';\r\nimport {\r\n KTLSGPClient,\r\n} from '../../../../../../../web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class F205Effects {\r\n constructor(\r\n private actions: Actions,\r\n private ktlfdClient: KTLSGPClient,\r\n private store: Store\r\n ) {}\r\n\r\n F205 = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(F205Actions.getF205),\r\n exhaustMap((action) => {\r\n return this.ktlfdClient\r\n .getF205CalcDetails(new Date(action.startdt),new Date(action.enddt))\r\n .pipe(\r\n map((res) => F205Actions.getF205Success({ data: res })),\r\n catchError((err) => of(F205Actions.getF205Failure(err)))\r\n );\r\n })\r\n )\r\n );\r\n}","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as F205Actions from './f-205.actions';\r\nimport { F205TotalDTO } from 'src/app/web-api-client';\r\n\r\nexport interface F205State{\r\n data: F205TotalDTO | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: F205State = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const F205Reducer = createReducer(\r\n initialState,\r\n on(F205Actions.getF205, state => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(F205Actions.getF205Success, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(F205Actions.getF205Failure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n }))\r\n);","import { createAction, props } from '@ngrx/store';\r\nimport { ChemicalCompoundsDTO, ChemicalCompoundsEquipmentDTO, InputRecordDTO, KTLSGPStreamDTO } from 'src/app/web-api-client';\r\n\r\nexport const getChemicalCompound = createAction(\r\n '[KTL] Get Chemical Compound',\r\n);\r\nexport const getChemicalCompoundSuccess = createAction(\r\n '[KTL] Get Chemical Compound Success',\r\n props<{ data: ChemicalCompoundsDTO[]; }>()\r\n);\r\nexport const getChemicalCompoundFailure = createAction(\r\n '[KTL] Get Chemical Compound Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getChemicalCompoundsEquipment = createAction(\r\n '[KTL] Get Chemical Compounds Equipment'\r\n);\r\nexport const getChemicalCompoundsEquipmentSuccess = createAction(\r\n '[KTL] Get Chemical Compounds Equipment Success',\r\n props<{ dataEquipment: ChemicalCompoundsEquipmentDTO[]; }>()\r\n);\r\nexport const getChemicalCompoundsEquipmentFailure = createAction(\r\n '[KTL] Get Chemical Compounds Equipment Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getStreamsName = createAction(\r\n '[KTL] Get Streams Name',\r\n);\r\nexport const getStreamsNameSuccess = createAction(\r\n '[KTL] Get Streams Name Success',\r\n props<{ streams: KTLSGPStreamDTO[]; }>()\r\n);\r\nexport const getStreamsNameFailure = createAction(\r\n '[KTL] Get Streams Name Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const AddManualRecord = createAction(\r\n '[KTL] Add Manual Record',\r\n props()\r\n);\r\nexport const AddManualRecordSuccess = createAction(\r\n '[KTL] Add Manual Record Success',\r\n props()\r\n);\r\nexport const AddManualRecordFailure = createAction(\r\n '[KTL] Add Manual Record Failure',\r\n props<{ message: string }>()\r\n);","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError, concatMap } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as FlaringActions from '../state/flaring.actions';\r\nimport * as notificationActions from '../../../../../../../../../state/notification/notification.action';\r\nimport { KTLSGPClient } from '../../../../../../../../../web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FlaringEffects {\r\n constructor(\r\n private actions: Actions,\r\n private ktlfdClient: KTLSGPClient,\r\n private store: Store\r\n ) {}\r\n\r\n chemicalCompound = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlaringActions.getChemicalCompound),\r\n exhaustMap(() => {\r\n return this.ktlfdClient.getChemicalCompoundsID().pipe(\r\n map((res) =>\r\n FlaringActions.getChemicalCompoundSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(FlaringActions.getChemicalCompoundFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n chemicalCompoundsEquipment = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlaringActions.getChemicalCompoundsEquipment),\r\n exhaustMap(() => {\r\n // todo: check this hardcoded params\r\n\r\n return this.ktlfdClient.getChemicalCompoundsEquipment(null, 1).pipe(\r\n map((res) =>\r\n FlaringActions.getChemicalCompoundsEquipmentSuccess({\r\n dataEquipment: res,\r\n })\r\n ),\r\n catchError((err) =>\r\n of(FlaringActions.getChemicalCompoundsEquipmentFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n StreamsName$ = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlaringActions.getStreamsName),\r\n exhaustMap(() => {\r\n this.store.dispatch(notificationActions.startLoading());\r\n\r\n return this.ktlfdClient.getAllStreams().pipe(\r\n map((res) => {\r\n this.store.dispatch(notificationActions.stopLoading());\r\n return FlaringActions.getStreamsNameSuccess({ streams: res });\r\n }),\r\n catchError((err) => of(FlaringActions.getStreamsNameFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n addManualRecord = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlaringActions.AddManualRecord),\r\n exhaustMap((action) => {\r\n return this.ktlfdClient.addManualRecord(action).pipe(\r\n concatMap((res) => [\r\n FlaringActions.AddManualRecordSuccess(res),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(FlaringActions.AddManualRecordFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as FlaringActions from './flaring.actions';\r\nimport { ChemicalCompoundsDTO, ChemicalCompoundsEquipmentDTO, KTLSGPStreamDTO } from 'src/app/web-api-client';\r\n\r\nexport interface FlaringState{\r\n data: ChemicalCompoundsDTO[] | null ;\r\n dataEquipment: ChemicalCompoundsEquipmentDTO[] | null ;\r\n streams: KTLSGPStreamDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: FlaringState = {\r\n data: null,\r\n dataEquipment: null,\r\n streams: null,\r\n result: null,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const FlaringReducer = createReducer(\r\n initialState,\r\n on(FlaringActions.getChemicalCompound, state => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FlaringActions.getChemicalCompoundSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n dataEquipment: null,\r\n streams: null,\r\n result: null,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FlaringActions.getChemicalCompoundFailure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FlaringActions.getChemicalCompoundsEquipment, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FlaringActions.getChemicalCompoundsEquipmentSuccess, (state, result) => ({\r\n ...state,\r\n data: null,\r\n dataEquipment: result.dataEquipment,\r\n streams:null,\r\n result: null,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FlaringActions.getChemicalCompoundsEquipmentFailure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FlaringActions.getStreamsName, state => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FlaringActions.getStreamsNameSuccess, (state, result) => ({\r\n ...state,\r\n data: null,\r\n dataEquipment: null,\r\n streams: result.streams,\r\n result: null,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FlaringActions.getStreamsNameFailure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FlaringActions.AddManualRecord, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FlaringActions.AddManualRecordSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(FlaringActions.AddManualRecordFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n);","import { Component, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { CCNames, CCType } from 'src/app/core/models/cc.model';\r\nimport { CommonService } from 'src/app/core/services/common/common.service';\r\nimport { ExportService } from 'src/app/core/services/export/export.service';\r\nimport { GetCCData } from 'src/app/state/lpg/cc/cc.actions';\r\nimport { CCDataSelector } from 'src/app/state/lpg/cc/cc.selector';\r\nimport { ChemicalCompounds } from 'src/app/web-api-client';\r\n\r\n@Component({\r\n selector: 'app-cc',\r\n templateUrl: './cc.component.html',\r\n styleUrls: ['./cc.component.scss'],\r\n})\r\nexport class CcComponent implements OnInit {\r\n month: string = '';\r\n\r\n ccEnum: CCType = CCNames;\r\n ccKeys: string[] = Object.keys(this.ccEnum);\r\n data?: {\r\n fuelGasFromSalesGasLine?: ChemicalCompounds;\r\n fuelGasFromKTL?: {\r\n 'KTL-1'?: ChemicalCompounds;\r\n 'KTL-2'?: ChemicalCompounds;\r\n 'KTL-2.3'?: ChemicalCompounds;\r\n Average?: ChemicalCompounds;\r\n };\r\n dryGasWeightedAverage?: ChemicalCompounds;\r\n propane?: {\r\n 'E-902'?: ChemicalCompounds;\r\n 'F-3501'?: ChemicalCompounds;\r\n 'F-3502'?: ChemicalCompounds;\r\n 'F-3503'?: ChemicalCompounds;\r\n 'Old park average'?: ChemicalCompounds;\r\n 'New park average'?: ChemicalCompounds;\r\n };\r\n propaneWeightedAverage?: ChemicalCompounds;\r\n butane?: {\r\n 'E-901'?: ChemicalCompounds;\r\n 'F-3511'?: ChemicalCompounds;\r\n 'F-3512'?: ChemicalCompounds;\r\n 'F-3513'?: ChemicalCompounds;\r\n 'Old park average'?: ChemicalCompounds;\r\n 'New park average'?: ChemicalCompounds;\r\n };\r\n butaneWeightedAverage?: ChemicalCompounds;\r\n };\r\n\r\n constructor(\r\n private store: Store,\r\n private commonService: CommonService,\r\n private exportService: ExportService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.month = this.commonService.formatDate(new Date(), 'YYYY-MM');\r\n // this.titleService.setTitle(this.pageTitle);\r\n this.store.dispatch(GetCCData({ startTime: new Date() }));\r\n this.store.select(CCDataSelector).subscribe((cc) => {\r\n if (cc)\r\n this.data = {\r\n fuelGasFromSalesGasLine: cc[3].cc,\r\n fuelGasFromKTL: {\r\n 'KTL-1': cc[0].cc,\r\n 'KTL-2': cc[1].cc,\r\n 'KTL-2.3': cc[2].cc,\r\n Average: cc[19].cc,\r\n },\r\n dryGasWeightedAverage: cc[20].cc,\r\n propane: {\r\n 'E-902': cc[4].cc,\r\n 'F-3501': cc[5].cc,\r\n 'F-3502': cc[6].cc,\r\n 'F-3503': cc[7].cc,\r\n 'New park average': cc[18].cc,\r\n 'Old park average': cc[15].cc,\r\n },\r\n propaneWeightedAverage: cc[13].cc,\r\n butane: {\r\n 'E-901': cc[8].cc,\r\n 'F-3511': cc[9].cc,\r\n 'F-3512': cc[10].cc,\r\n 'F-3513': cc[11].cc,\r\n 'New park average': cc[17].cc,\r\n 'Old park average': cc[16].cc,\r\n },\r\n butaneWeightedAverage: cc[14].cc,\r\n };\r\n });\r\n }\r\n\r\n getObjectName(key: string) {\r\n return CCNames[key];\r\n }\r\n\r\n getObjectValue(obj: any, key: string) {\r\n return obj[key].toFixed(4);\r\n }\r\n\r\n monthChange() {\r\n console.log(this.month);\r\n this.store.dispatch(GetCCData({ startTime: new Date(this.month) }));\r\n }\r\n exportToExcel() {\r\n this.exportService.exportChemicalCompositionReports(new Date(this.month));\r\n }\r\n\r\n getLoading(): boolean {\r\n return this.exportService.getIsLoading();\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Export\r\n \r\n
\r\n
\r\n
\r\n Loading...\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n

FUEL GAS FROM SALES GAS LINE

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ getObjectName(key) }}\r\n \r\n \r\n {{ getObjectValue(data.fuelGasFromSalesGasLine, key) }}\r\n \r\n \r\n \r\n
\r\n weight %\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

FUEL GAS FROM KTL

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ getObjectName(key) }}\r\n \r\n \r\n {{ getObjectValue(data.fuelGasFromKTL![\"KTL-1\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.fuelGasFromKTL![\"KTL-2\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.fuelGasFromKTL![\"KTL-2.3\"], key) }}\r\n \r\n \r\n \r\n \r\n
\r\n weight %\r\n
KTL-1KTL-2KTL-2.3Average
LIMS SP Names70-07-170-07-270-15-3-2
\r\n {{ getObjectValue(data.fuelGasFromKTL![\"Average\"], key) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

DRY GAS WEIGHTED AVERAGE

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ getObjectName(key) }}\r\n \r\n \r\n {{ getObjectValue(data.dryGasWeightedAverage, key) }}\r\n \r\n \r\n \r\n
\r\n weight %\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n

PROPANE

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ getObjectName(key) }}\r\n \r\n \r\n {{ getObjectValue(data.propane![\"E-902\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.propane![\"F-3501\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.propane![\"F-3502\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.propane![\"F-3503\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.propane![\"Old park average\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.propane![\"New park average\"], key) }}\r\n \r\n \r\n \r\n
\r\n weight %\r\n
LIMS SP NamesE-902F-3501F-3502F-3503Old park averageNew park average
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

PROPANE WEIGHTED AVERAGE

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ getObjectName(key) }}\r\n \r\n \r\n {{ getObjectValue(data.propaneWeightedAverage, key) }}\r\n \r\n \r\n \r\n
\r\n weight %\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n

BUTANE

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ getObjectName(key) }}\r\n \r\n \r\n {{ getObjectValue(data.butane![\"E-901\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.butane![\"F-3511\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.butane![\"F-3512\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.butane![\"F-3513\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.butane![\"Old park average\"], key) }}\r\n \r\n \r\n {{ getObjectValue(data.butane![\"New park average\"], key) }}\r\n \r\n \r\n \r\n
\r\n weight %\r\n
LIMS SP NamesE-901F-3511F-3512F-3513Old park averageNew park average
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

BUTANE WEIGHTED AVERAGE

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ getObjectName(key) }}\r\n \r\n \r\n {{ getObjectValue(data.butaneWeightedAverage, key) }}\r\n \r\n \r\n \r\n
\r\n weight %\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\nimport { FlaringReportComponent } from './flaring-report/flaring-report.component';\r\nimport { LPGDataComponent } from './lpg-data/lpg-data.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n redirectTo: 'LPGData',\r\n pathMatch: 'full',\r\n },\r\n {\r\n path: 'FlaringReport',\r\n component: FlaringReportComponent,\r\n },\r\n {\r\n path: 'LPGData',\r\n component: LPGDataComponent,\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class FinalReportRoutingModule {}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MaterialModule } from 'src/app/material/material.module';\r\nimport { FinalReportRoutingModule } from './final-report-routing.module';\r\nimport { SharedModule } from 'src/app/shared/shared.module';\r\n\r\nimport { FlaringReportComponent } from './flaring-report/flaring-report.component'; \r\nimport { LPGDataComponent } from './lpg-data/lpg-data.component';\r\n\r\n@NgModule({\r\n declarations: [FlaringReportComponent,LPGDataComponent],\r\n imports: [\r\n CommonModule,\r\n MaterialModule,\r\n FinalReportRoutingModule,\r\n SharedModule\r\n ]\r\n})\r\nexport class FinalReportModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { CommonService } from 'src/app/core/services/common/common.service';\r\nimport { ExportService } from 'src/app/core/services/export/export.service';\r\nimport { FlaringReportData } from 'src/app/state/lpg/flaring-report/flaring-report.actions';\r\nimport { FlaringReportSelector } from 'src/app/state/lpg/flaring-report/flaring-report.selector';\r\nimport {\r\n LPGFlaringReportElementsType,\r\n LPGFlaringReportItemDTO,\r\n} from 'src/app/web-api-client';\r\n\r\n@Component({\r\n selector: 'app-flaring-report',\r\n templateUrl: './flaring-report.component.html',\r\n styleUrls: ['./flaring-report.component.scss'],\r\n})\r\nexport class FlaringReportComponent implements OnInit {\r\n month: string = '';\r\n data?: {\r\n items: LPGFlaringReportItemDTO[];\r\n elementsType: LPGFlaringReportElementsType;\r\n }[];\r\n\r\n isLoading: boolean = false;\r\n\r\n constructor(\r\n private store: Store,\r\n private commonService: CommonService,\r\n private exportService: ExportService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.month = this.commonService.formatDate(new Date(), 'YYYY-MM');\r\n this.store.dispatch(FlaringReportData({ startTime: new Date() }));\r\n this.store.select(FlaringReportSelector).subscribe((list) => {\r\n if (list) this.data = list;\r\n });\r\n }\r\n\r\n count() {\r\n return Array(this.data![0].items.length - 2);\r\n }\r\n\r\n getFlaringReportCCName(name: string) {\r\n if (name === 'C6Plus') return 'C6+';\r\n else return name;\r\n }\r\n\r\n monthChange() {\r\n this.store.dispatch(FlaringReportData({ startTime: new Date(this.month) }));\r\n }\r\n exportToExcel() {\r\n this.exportService.exportFlaringReport(new Date(this.month));\r\n }\r\n getLoading(): boolean {\r\n return this.exportService.getIsLoading();\r\n }\r\n formatNumberCC(value: any): string {\r\n return this.commonService.formatNumberCC(value);\r\n }\r\n formatNumberMV(value: any): string {\r\n return this.commonService.formatNumberMV(value);\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n Export\r\n \r\n
\r\n
\r\n Loading...\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

MONTHLY GAS FLARING REPORT

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Gas MixtureDry GasPropaneButane
Volume, Nm3{{ formatNumberMV(data![3].items[0].value) }}{{ formatNumberMV(data![0].items[0].value) }}{{ formatNumberMV(data![2].items[0].value) }}{{ formatNumberMV(data![1].items[0].value) }}
Mass, kg{{ formatNumberMV(data![3].items[1].value) }}{{ formatNumberMV(data![0].items[1].value) }}{{ formatNumberMV(data![2].items[1].value) }}{{ formatNumberMV(data![1].items[1].value) }}
\r\n
\r\n
\r\n
\r\n
\r\n

COMPOSITIONAL FLARED GAS ANALYSIS (WT.%)

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {{ getFlaringReportCCName(data![0].items[i + 2].name) }}\r\n \r\n {{ formatNumberCC(data![3].items[i + 2].value) }}\r\n \r\n {{ formatNumberCC(data![0].items[i + 2].value) }}\r\n \r\n {{ formatNumberCC(data![2].items[i + 2].value) }}\r\n \r\n {{ formatNumberCC(data![1].items[i + 2].value) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport {\r\n AnalystReportType,\r\n BulletsReportType,\r\n LPGDataReportType,\r\n} from 'src/app/core/models/lpgDataReport.model';\r\nimport { CommonService } from 'src/app/core/services/common/common.service';\r\nimport { LPGData } from 'src/app/state/lpg/lpg-data/lpg-data.actions';\r\nimport { LPGDataSelector } from 'src/app/state/lpg/lpg-data/lpg-data.selector';\r\nimport {\r\n LPGApproveByChef,\r\n LPGApproveStatus,\r\n} from 'src/app/state/lpg/approve/approve.actions';\r\nimport { ApproveStatusResponse } from '../../../../../../../state/lpg/approve/approve.selector';\r\nimport { ExportService } from 'src/app/core/services/export/export.service';\r\n\r\n@Component({\r\n selector: 'app-lpg-data',\r\n templateUrl: './lpg-data.component.html',\r\n styleUrls: ['./lpg-data.component.scss'],\r\n})\r\nexport class LPGDataComponent implements OnInit {\r\n month: string = '';\r\n approveStatus: string = '';\r\n data1?: LPGDataReportType;\r\n data2?: AnalystReportType;\r\n data3?: BulletsReportType;\r\n\r\n constructor(\r\n private store: Store,\r\n private commonService: CommonService,\r\n private exportService: ExportService\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.month = this.commonService.formatDate(new Date(), 'YYYY-MM');\r\n this.store.dispatch(LPGData({ startTime: new Date() }));\r\n this.store.select(LPGDataSelector).subscribe((res) => {\r\n if (res) {\r\n this.data1 = res.data1;\r\n this.data2 = res.data2;\r\n this.data3 = res.data3;\r\n }\r\n });\r\n this.store.dispatch(LPGApproveStatus({ startTime: new Date() }));\r\n this.store.select(ApproveStatusResponse).subscribe((res) => {\r\n this.approveStatus = res;\r\n });\r\n }\r\n\r\n countItem(number: number) {\r\n return new Array(number);\r\n }\r\n\r\n formatDate(date: Date): string {\r\n return this.commonService.formatDate(date, 'MMM-YY');\r\n }\r\n\r\n monthChange() {\r\n this.store.dispatch(LPGData({ startTime: new Date(this.month) }));\r\n this.store.dispatch(LPGApproveStatus({ startTime: new Date(this.month) }));\r\n }\r\n\r\n exportToExcel() {\r\n this.exportService.exportLPGDataReports(new Date(this.month));\r\n }\r\n\r\n getLoading(): boolean {\r\n return this.exportService.getIsLoading();\r\n }\r\n\r\n Approve() {\r\n this.store.dispatch(LPGApproveByChef({ startTime: new Date(this.month) }));\r\n }\r\n\r\n formatNumberCC(value: any): string {\r\n return this.commonService.formatNumberCC(value);\r\n }\r\n formatNumberMV(value: any): string {\r\n return this.commonService.formatNumberMV(value);\r\n }\r\n}\r\n","\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Export\r\n \r\n
\r\n
\r\n
\r\n Loading...\r\n
\r\n
\r\n
\r\n \r\n Approve\r\n \r\n
\r\n \r\n {{ approveStatus }}\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n

TOTAL FLARED GAS FROM LPG PARK FOR MONTHLY FLARING REPORT

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Dry Gas(V7)\r\n \r\n Propane\r\n \r\n Butane\r\n
MonthNm3TonNm3TonNm3Ton
\r\n {{ formatNumberMV((data1.table1?.dry)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table1?.dry)![i].totalMass) }}\r\n \r\n {{\r\n formatNumberMV((data1.table1?.propane)![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV((data1.table1?.propane)![i].totalMass) }}\r\n \r\n {{ formatNumberMV((data1.table1?.butane)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table1?.butane)![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

OLD (KTL) LPG PARK

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Propane\r\n \r\n Butane\r\n
MonthNm3TonNm3Ton
\r\n {{\r\n formatNumberMV((data1.table2?.propane)![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV((data1.table2?.propane)![i].totalMass) }}\r\n \r\n {{ formatNumberMV((data1.table2?.butane)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table2?.butane)![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

NEW (SGP) LPG PARK

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Propane\r\n \r\n Butane\r\n
MonthNm3TonNm3Ton
\r\n {{\r\n formatNumberMV((data1.table3?.propane)![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV((data1.table3?.propane)![i].totalMass) }}\r\n \r\n {{ formatNumberMV((data1.table3?.butane)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table3?.butane)![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

E-909 AND FLARING FROM BULLETS DURING PSVS REPAIR WORK

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n Propane\r\n \r\n Butane\r\n
MonthNm3TonNm3Ton
\r\n {{\r\n formatNumberMV((data1.table4?.propane)![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV((data1.table4?.propane)![i].totalMass) }}\r\n \r\n {{ formatNumberMV((data1.table4?.butane)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table4?.butane)![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

SGP LPG EQUALIZING LINE FLARING

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Propane\r\n \r\n Butane\r\n
MonthNm3TonNm3Ton
\r\n {{\r\n formatNumberMV((data1.table5?.propane)![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV((data1.table5?.propane)![i].totalMass) }}\r\n \r\n {{ formatNumberMV((data1.table5?.butane)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table5?.butane)![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

FUEL GAS FLARING

\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Fuel Gas\r\n
MonthNm3Ton
\r\n {{ formatNumberMV(data1.table9![i].totalVolume) }}\r\n \r\n {{ formatNumberMV(data1.table9![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

DATA FOR PDV DAILY MONITORING

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Propane\r\n \r\n Butane\r\n
MonthkNm3/dayTon/daykNm3/dayTon/day
\r\n {{\r\n formatNumberMV((data1.table6?.propane)![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV((data1.table6?.propane)![i].totalMass) }}\r\n \r\n {{ formatNumberMV((data1.table6?.butane)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table6?.butane)![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

DATA FOR ACCOUNTING ANALYST: OLD PARK

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Propane\r\n \r\n Butane\r\n
MonthNm3TonNm3Ton
\r\n {{\r\n formatNumberMV((data1.table7?.propane)![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV((data1.table7?.propane)![i].totalMass) }}\r\n \r\n {{ formatNumberMV((data1.table7?.butane)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table7?.butane)![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

DATA FOR ACCOUNTING ANALYST: NEW PARK

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Propane\r\n \r\n Butane\r\n
MonthNm3TonNm3Ton
\r\n {{\r\n formatNumberMV((data1.table8?.propane)![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV((data1.table8?.propane)![i].totalMass) }}\r\n \r\n {{ formatNumberMV((data1.table8?.butane)![i].totalVolume) }}\r\n \r\n {{ formatNumberMV((data1.table8?.butane)![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

FOR ANALYSTS

\r\n
\r\n \r\n
\r\n
\r\n

PROPANE AND BUTANE FLARING BY OLD AND NEW PARK

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n Propane\r\n \r\n Butane\r\n
NamekNm3TonkNm3Ton
\r\n {{ data2.table1.propane![i].elementName }}\r\n \r\n {{\r\n formatNumberMV(data2.table1.propane![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV(data2.table1.propane![i].totalMass) }}\r\n \r\n {{\r\n formatNumberMV(data2.table1.butane![i].totalVolume)\r\n }}\r\n \r\n {{ formatNumberMV(data2.table1.butane![i].totalMass) }}\r\n
\r\n
\r\n
\r\n
\r\n

DRY GAS FLARING FROM GEEP AND KTL

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
FromkNm3kSm3Ton
{{ row?.elementName }}{{ row?.totalVolume?.toFixed(2) }}\r\n {{ row?.totalVolumekSm3?.toFixed(2) }}\r\n {{ row?.totalMass?.toFixed(2) }}
\r\n
\r\n
\r\n
\r\n

TOTAL FLARED AT LPG PARK FLARES

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Gas TypekNm3Ton
{{ row?.elementName }}{{ row?.totalVolume?.toFixed(2) }}{{ row?.totalMass?.toFixed(2) }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n

BULLETS ENTRY

\r\n
\r\n \r\n
\r\n
\r\n

OLD LPG PARK - RTC LOADED

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
MonthPropaneButane
{{ formatNumberMV(row.propane) }}{{ formatNumberMV(row.butane) }}
\r\n
\r\n
\r\n
\r\n

NEW LPG PARK - RTC LOADED

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
MonthPropaneButane
{{ formatNumberMV(row.propane) }}{{ formatNumberMV(row.butane) }}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Store } from '@ngrx/store';\r\nimport { EditFuelGasFlaringData } from 'src/app/state/lpg/fuel-gas-flaring/fuel-gas-flaring.actions';\r\nimport {\r\n LPGFuelGasFlaringDefaultDTO,\r\n LPGMonthlyInputRecordDTO,\r\n LPGMonthlyInputRecordType,\r\n} from 'src/app/web-api-client';\r\nimport { getFuelGasFlaringDefault } from '../store/fuel-gas-flaring-default.action';\r\nimport { fuelGasFlaringDefault } from '../store/fuel-gas-flaring-default.selector';\r\n\r\n@Component({\r\n selector: 'app-fuel-gas-flaring-edit',\r\n templateUrl: './fuel-gas-flaring-edit.component.html',\r\n styleUrls: ['./fuel-gas-flaring-edit.component.scss'],\r\n})\r\nexport class FuelGasFlaringEditComponent implements OnInit {\r\n fuelGasFlaringEditForm: FormGroup = this.fb.group({});\r\n title: string = '';\r\n\r\n inputs = {\r\n volume: false,\r\n pilotGasRate: false,\r\n purgeRate: false,\r\n purgeRate2: false,\r\n numberOfFuelGasLine: false,\r\n };\r\n\r\n defaultValues: LPGFuelGasFlaringDefaultDTO = new LPGFuelGasFlaringDefaultDTO({\r\n purgeRate: 16.5,\r\n purgeRate2: 48,\r\n numberOfFuelGasLine: 4,\r\n pilotGasRate: 6,\r\n });\r\n\r\n constructor(\r\n private store: Store,\r\n private fb: FormBuilder,\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) private data: any\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n console.log(this.data);\r\n this.title = this.data.elementName;\r\n this.enableInputs();\r\n this.store.dispatch(\r\n getFuelGasFlaringDefault({ date: new Date(this.data.startTime) })\r\n );\r\n this.fuelGasFlaringEditForm = this.fb.group({\r\n volume: [\r\n this.data.totalVolume,\r\n this.inputs.volume ? Validators.required : null,\r\n ],\r\n calculation: ['Manual'],\r\n comment: [this.data.comment],\r\n pilotGasRate: [\r\n this.defaultValues.pilotGasRate,\r\n this.inputs.pilotGasRate ? Validators.required : null,\r\n ],\r\n purgeRate: [\r\n this.defaultValues.purgeRate,\r\n this.inputs.purgeRate ? Validators.required : null,\r\n ],\r\n purgeRate2: [\r\n this.defaultValues.purgeRate2,\r\n this.inputs.purgeRate2 ? Validators.required : null,\r\n ],\r\n numberOfFuelGasLine: [\r\n this.defaultValues.numberOfFuelGasLine,\r\n this.inputs.numberOfFuelGasLine ? Validators.required : null,\r\n ],\r\n });\r\n this.store.select(fuelGasFlaringDefault).subscribe((defaults) => {\r\n if (defaults) this.defaultValues = defaults;\r\n this.setDefaultValues();\r\n });\r\n }\r\n\r\n enableInputs() {\r\n const initialInputs = {\r\n volume: false,\r\n pilotGasRate: false,\r\n purgeRate: false,\r\n purgeRate2: false,\r\n numberOfFuelGasLine: false,\r\n };\r\n switch (this.title) {\r\n case 'Smokeless flaring':\r\n this.inputs = {\r\n ...initialInputs,\r\n volume: true,\r\n };\r\n break;\r\n case 'Smoke spreading':\r\n this.inputs = {\r\n ...initialInputs,\r\n volume: true,\r\n };\r\n break;\r\n case 'Pilot gas':\r\n this.inputs = {\r\n ...initialInputs,\r\n pilotGasRate: true,\r\n };\r\n break;\r\n case 'Flare header purge':\r\n this.inputs = {\r\n ...initialInputs,\r\n purgeRate: true,\r\n purgeRate2: true,\r\n numberOfFuelGasLine: true,\r\n };\r\n break;\r\n default:\r\n this.inputs = initialInputs;\r\n }\r\n }\r\n\r\n getType(type: string): LPGMonthlyInputRecordType {\r\n switch (type) {\r\n case 'Smokeless flaring':\r\n return LPGMonthlyInputRecordType.Smokeless;\r\n case 'Smoke spreading':\r\n return LPGMonthlyInputRecordType.Smoke;\r\n case 'Pilot gas':\r\n return LPGMonthlyInputRecordType.Pilot;\r\n case 'Flare header purge':\r\n return LPGMonthlyInputRecordType.FlareHeader;\r\n default:\r\n return LPGMonthlyInputRecordType.Smoke;\r\n }\r\n }\r\n\r\n setDefaultValues() {\r\n console.log(this.defaultValues);\r\n this.fuelGasFlaringEditForm.patchValue({\r\n pilotGasRate: this.defaultValues.pilotGasRate,\r\n purgeRate: this.defaultValues.purgeRate,\r\n purgeRate2: this.defaultValues.purgeRate2,\r\n numberOfFuelGasLine: this.defaultValues.numberOfFuelGasLine,\r\n });\r\n }\r\n\r\n handleSave() {\r\n if (this.fuelGasFlaringEditForm.valid) {\r\n let newData = new LPGMonthlyInputRecordDTO();\r\n newData = { ...newData, ...this.fuelGasFlaringEditForm.value };\r\n newData.type = this.getType(this.data.elementName);\r\n newData.startTime = new Date(this.data.startTime);\r\n newData.isAuto = this.fuelGasFlaringEditForm.value.calculation === 'Auto';\r\n // console.log(newData);\r\n this.store.dispatch(EditFuelGasFlaringData({ data: newData }));\r\n }\r\n }\r\n}\r\n","

{{ title }}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n SAVE\r\n \r\n \r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { CommonService } from 'src/app/core/services/common/common.service';\r\nimport { BreadcrumbService } from 'src/app/core/services/dynamictools/breadcrump.service';\r\nimport { TitleService } from 'src/app/core/services/dynamictools/title.service';\r\nimport { ExportService } from 'src/app/core/services/export/export.service';\r\nimport { FuelGasFlaringService } from 'src/app/core/services/lpg/fuel-gas-flaring.service';\r\nimport { FuelGasFlaringData } from 'src/app/state/lpg/fuel-gas-flaring/fuel-gas-flaring.actions';\r\nimport { FuelGasFlaringSelector } from 'src/app/state/lpg/fuel-gas-flaring/fuel-gas-flaring.selector';\r\nimport { getFuelGasFlaringDefault } from './store/fuel-gas-flaring-default.action';\r\n\r\n@Component({\r\n selector: 'app-fuel-gas-flaring',\r\n templateUrl: './fuel-gas-flaring.component.html',\r\n styleUrls: ['./fuel-gas-flaring.component.scss'],\r\n})\r\nexport class FuelGasFlaringComponent implements OnInit {\r\n // pageTitle = 'FUEL GAS FLARING';\r\n month: string = '';\r\n\r\n displayedColumns: string[] = [\r\n 'elementName',\r\n 'totalVolume',\r\n 'totalVolumekSm3',\r\n 'totalMass',\r\n ];\r\n displayedColumns2: string[] = [\r\n 'elementName',\r\n 'totalVolume',\r\n 'totalMass',\r\n 'comment',\r\n 'updatedBy',\r\n 'edit',\r\n ];\r\n\r\n // finalReportButtons2: { label: string; link: string }[] = [\r\n // { label: 'INPUT', link: '/TCO/ProcessEng/FD/LPG/Input/Operator' },\r\n // {\r\n // label: 'FUEL GAS FLARING',\r\n // link: '/TCO/ProcessEng/FD/LPG/FuelGasFlaring',\r\n // },\r\n // { label: 'CHEMICAL COMPOSITION', link: '/TCO/ProcessEng/FD/LPG/CC' },\r\n // {\r\n // label: 'FINAL REPORT',\r\n // link: '/TCO/ProcessEng/FD/LPG/FinalReport/LPGData',\r\n // },\r\n // ];\r\n\r\n monthlyGasFlarinReport?: any;\r\n fuelGasFlaring?: any;\r\n\r\n constructor(\r\n private store: Store,\r\n private breadcrumbService: BreadcrumbService,\r\n private titleService: TitleService,\r\n private fuelGasFlaringService: FuelGasFlaringService,\r\n private commonService: CommonService,\r\n private exportService: ExportService\r\n ) {\r\n // const breadcrumbPath = ['PROCESS ENG', 'FD', 'LPG', 'FUEL GAS FLARING'];\r\n // this.breadcrumbService.updateBreadcrumb('FuelGasFlaring');\r\n // this.breadcrumbService.resetBreadcrumbTo(breadcrumbPath);\r\n // this.titleService.setTitle('FUEL GAS FLARING Page');\r\n }\r\n\r\n ngOnInit() {\r\n this.month = this.commonService.formatDate(new Date(), 'YYYY-MM');\r\n // this.titleService.setTitle(this.pageTitle);\r\n this.store.dispatch(FuelGasFlaringData({ startTime: new Date() }));\r\n // this.store.dispatch(getFuelGasFlaringDefault());\r\n this.store.select(FuelGasFlaringSelector).subscribe((res) => {\r\n this.monthlyGasFlarinReport = res?.monthlyGasFlaringReport;\r\n this.fuelGasFlaring = res?.fuelGasFlaring;\r\n });\r\n }\r\n\r\n monthChange() {\r\n this.store.dispatch(\r\n FuelGasFlaringData({ startTime: new Date(this.month) })\r\n );\r\n }\r\n\r\n exportToExcel() {\r\n this.exportService.exportFuelGasFlaringReports(new Date(this.month));\r\n }\r\n\r\n getLoading(): boolean {\r\n return this.exportService.getIsLoading();\r\n }\r\n\r\n onEditClick(data: any) {\r\n this.fuelGasFlaringService\r\n .openEditDialog({ ...data, startTime: this.month })\r\n .subscribe(() => {\r\n // Your code here (without using 'result')\r\n });\r\n }\r\n\r\n formatNumberCC(value: any): string {\r\n return this.commonService.formatNumberCC(value);\r\n }\r\n\r\n formatNumberMV(value: any): string {\r\n return this.commonService.formatNumberMV(value);\r\n }\r\n}\r\n","\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n Export\r\n \r\n
\r\n
\r\n
\r\n Loading...\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n

MONTHLY GAS FLARING REPORT

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{ item.elementName }}\r\n \r\n\r\n \r\n \r\n Volume, kNm3\r\n \r\n {{ formatNumberMV(item.totalVolume) }}\r\n \r\n \r\n\r\n \r\n \r\n Volume, kSm3\r\n \r\n {{ formatNumberMV(item.totalVolumekSm3) }}\r\n \r\n \r\n\r\n \r\n \r\n Mass, tons\r\n \r\n {{ formatNumberMV(item.totalMass) }}\r\n \r\n \r\n\r\n
\r\n
No records found
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n

FUEL GAS FLARING

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n {{ item.elementName }}\r\n \r\n\r\n \r\n \r\n Volume, kNm3\r\n \r\n {{ formatNumberMV(item.totalVolume) }}\r\n \r\n \r\n\r\n \r\n \r\n Mass, tons\r\n \r\n {{ formatNumberMV(item.totalMass) }}\r\n \r\n \r\n\r\n \r\n \r\n Comment\r\n {{ item.comment }}\r\n \r\n\r\n \r\n \r\n Updated By\r\n {{ item.updatedBy }}\r\n \r\n\r\n \r\n \r\n Edit\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
No records found
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { LPGFuelGasFlaringDefaultDTO } from 'src/app/web-api-client';\r\n\r\nexport const getFuelGasFlaringDefault = createAction(\r\n '[Fuel Gas Flaring] Get Fuel Gas Flaring Defaults',\r\n props<{ date: Date }>()\r\n);\r\nexport const getFuelGasFlaringDefaultSuccess = createAction(\r\n '[Fuel Gas Flaring] Get Fuel Gas Flaring Default Success',\r\n props<{ payload: LPGFuelGasFlaringDefaultDTO }>()\r\n);\r\nexport const getFuelGasFlaringDefaultFailure = createAction(\r\n '[Fuel Gas Flaring] Get Fuel Gas Flaring Failure',\r\n props<{ error: string }>()\r\n);\r\n","import { createFeatureSelector, createSelector } from '@ngrx/store';\r\n\r\nimport {\r\n FuelGasFlaringDefaultState,\r\n fuelGasFlaringDefaultFeatureKey,\r\n} from './fuel-gas-flaring-default.state';\r\n\r\nexport const fuelGasFlaringDefaultState =\r\n createFeatureSelector(\r\n fuelGasFlaringDefaultFeatureKey\r\n );\r\n\r\nexport const fuelGasFlaringDefault = createSelector(\r\n fuelGasFlaringDefaultState,\r\n (state) => state.data\r\n);\r\n","import { LPGFuelGasFlaringDefaultDTO } from 'src/app/web-api-client';\r\n\r\nexport const fuelGasFlaringDefaultFeatureKey = 'fuelGasFlaringDefault';\r\n\r\nexport interface FuelGasFlaringDefaultState {\r\n data: LPGFuelGasFlaringDefaultDTO | null;\r\n error: string | null;\r\n loading: boolean;\r\n}\r\n\r\nexport const initialState: FuelGasFlaringDefaultState = {\r\n data: null,\r\n error: null,\r\n loading: false,\r\n};\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { UserGroups } from '../../../../../../web-api-client';\r\nimport { RoleGuard } from '../../../../../../core/guards/role.guard';\r\nimport { RedirectTypes } from '../../../../../../core/models/redirect-types.enum';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: '',\r\n children: [\r\n {\r\n path: 'Analyst',\r\n loadChildren: () => import('./analyst/analyst.module').then(m => m.AnalystModule),\r\n data: {\r\n expectedRole: [UserGroups.LPG_Engineer, UserGroups.LPG_ProdPlanAnalyst],\r\n },\r\n canActivate: [RoleGuard],\r\n },\r\n {\r\n path: 'Operator',\r\n loadChildren: () => import('./operator/operator.module').then(m => m.OperatorModule),\r\n data: {\r\n expectedRole: [UserGroups.LPG_Engineer, UserGroups.LPG_Operator],\r\n },\r\n canActivate: [RoleGuard],\r\n },\r\n {\r\n path: 'PE',\r\n loadChildren: () => import('./pe/pe.module').then(m => m.PeModule),\r\n data: {\r\n expectedRole: [UserGroups.LPG_Engineer],\r\n },\r\n canActivate: [RoleGuard],\r\n },\r\n {\r\n path: 'TargetPermit',\r\n loadChildren: () => import('./target-permit/target-permit.module').then(m => m.TargetPermitModule),\r\n data: {\r\n expectedRole: [UserGroups.LPG_Engineer],\r\n redirectCase: RedirectTypes.LPG\r\n },\r\n canActivate: [RoleGuard],\r\n }\r\n ],\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class FDInputRoutingModule {}\r\n","import { Component, Inject } from '@angular/core';\r\nimport { FormGroup, Validators, FormBuilder } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Store } from '@ngrx/store';\r\nimport { OperatorService } from 'src/app/core/services/lpg/operator.service';\r\nimport { EditOperator } from 'src/app/state/lpg/operator/operator.actions';\r\nimport {\r\n LPGGasType,\r\n LPGOperatorInputDTO,\r\n LPGPark,\r\n} from 'src/app/web-api-client';\r\nimport { CommonService } from 'src/app/core/services/common/common.service';\r\n\r\n@Component({\r\n selector: 'app-operators-edit',\r\n templateUrl: './operators-edit.component.html',\r\n styleUrls: ['./operators-edit.component.scss'],\r\n})\r\nexport class OperatorsEditComponent {\r\n operatorEditForm: FormGroup;\r\n\r\n parks: string[] = []; //cascading dropdown\r\n selectedPark: string = ''; //cascading dropdown\r\n gases: string[] = []; //cascading dropdown\r\n selectedGas: string = ''; //cascading dropdown\r\n options: string[] = []; //cascading dropdown\r\n selectedOptions: string = ''; //cascading dropdown\r\n isOtherSelected: boolean = false; //other input\r\n otherInputValue: string = ''; //other input\r\n\r\n constructor(\r\n private store: Store,\r\n private fb: FormBuilder,\r\n private operatorService: OperatorService,\r\n private commonService: CommonService,\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any\r\n ) {\r\n this.operatorEditForm = this.fb.group({\r\n startTime: [\r\n this.commonService.convertToDateTimeZ(data.startTime),\r\n Validators.required,\r\n ],\r\n endTime: [\r\n this.commonService.convertToDateTimeZ(data.endTime),\r\n Validators.required,\r\n ],\r\n reason: [data.reason, Validators.required],\r\n techComments: data.techComments,\r\n lpgPark: [\r\n data.lpgPark === LPGPark.NewParkSGP\r\n ? 'New Park - SGP'\r\n : 'Old Park - KTL',\r\n Validators.required,\r\n ],\r\n gasType: [\r\n data.gasType === LPGGasType.Propane\r\n ? 'Propane'\r\n : data.gasType === LPGGasType.Butane\r\n ? 'Butane'\r\n : 'Fuel Gas',\r\n Validators.required,\r\n ],\r\n bullet: [data.bullet, Validators.required],\r\n other: [data.other],\r\n });\r\n }\r\n ngOnInit(): void {\r\n this.isOtherSelected = this.data.bullet === 'Other';\r\n this.parks = this.operatorService.getParks();\r\n this.gases = this.operatorService.getGasesForPark(\r\n this.operatorEditForm.value.lpgPark\r\n );\r\n this.options = this.operatorService.getOptionsForGas(\r\n this.operatorEditForm.value.lpgPark,\r\n this.operatorEditForm.value.gasType\r\n );\r\n }\r\n\r\n onOptionChange() {\r\n this.isOtherSelected = this.selectedOptions === 'Other';\r\n if (!this.isOtherSelected) {\r\n this.otherInputValue = '';\r\n }\r\n }\r\n\r\n onParkChange() {\r\n this.gases = this.operatorService.getGasesForPark(\r\n this.operatorEditForm.value.lpgPark\r\n );\r\n this.options = [];\r\n }\r\n\r\n onGasChange() {\r\n this.options = this.operatorService.getOptionsForGas(\r\n this.operatorEditForm.value.lpgPark,\r\n this.operatorEditForm.value.gasType\r\n );\r\n this.operatorEditForm.patchValue({\r\n bullet: '',\r\n });\r\n }\r\n\r\n handleSave() {\r\n const body: LPGOperatorInputDTO = new LPGOperatorInputDTO();\r\n const vals = this.operatorEditForm.value;\r\n if (this.operatorEditForm.valid) {\r\n (body.id = this.data.id),\r\n (body.bullet = vals.bullet),\r\n (body.endTime = vals.endTime),\r\n (body.gasType =\r\n vals.gasType === 'Propane' ? LPGGasType.Propane : LPGGasType.Butane),\r\n (body.isOperator = true),\r\n (body.lpgPark =\r\n vals.lpgPark === 'New Park - SGP'\r\n ? LPGPark.NewParkSGP\r\n : LPGPark.OldParkKTL),\r\n (body.reason = vals.reason),\r\n (body.startTime = vals.startTime),\r\n (body.other = vals.other),\r\n (body.techComments = vals.techComments);\r\n\r\n if (this.commonService.isOperatorLocked(body.startTime))\r\n this.store.dispatch(EditOperator(body));\r\n else alert('You cannot create/update/delete record.');\r\n }\r\n this.dialogRef.close('Saved');\r\n }\r\n}\r\n","

СЖИГАНИЕ ГАЗА/FLARED GAS

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n Start Time is required.\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n End Time is required.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n LPG Park is required.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Gas Type is required.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Bullit is required.\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Reason is required.\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n\r\n
\r\n \r\n SAVE\r\n \r\n \r\n
\r\n","import { Component, Inject, Input, OnInit } from '@angular/core';\r\nimport { Store, select } from '@ngrx/store';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { PEService } from 'src/app/core/services/lpg/pe.service';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { CommonService } from 'src/app/core/services/common/common.service';\r\nimport {\r\n LPGFlowmeterCalculationInputAdd,\r\n getCalculation,\r\n} from 'src/app/state/lpg/flowmeter-calculation/flowmeter-calculation.action';\r\nimport { FlowmeterCalculationSelector } from 'src/app/state/lpg/flowmeter-calculation/flowmeter-calculation.selector';\r\nimport {\r\n LPGFlowmeterCalculateType,\r\n LPGGasType,\r\n LPGPEInputDTO,\r\n LPGPark,\r\n LPGPurpose,\r\n PermitTargetInputCategory,\r\n} from 'src/app/web-api-client';\r\nimport { Chart, registerables } from 'chart.js';\r\nimport zoomPlugin from 'chartjs-plugin-zoom';\r\nimport 'chartjs-adapter-moment';\r\n\r\nimport {\r\n chartDataSelector,\r\n chartTitleSelector,\r\n} from 'src/app/state/chartjs/chartjs.selector';\r\n\r\nimport {\r\n getChartData,\r\n getFlowMeterChartData,\r\n} from 'src/app/state/chartjs/chartjs.action';\r\n\r\nChart.register(...registerables, zoomPlugin);\r\n\r\n@Component({\r\n selector: 'app-flowmeter-calculation',\r\n templateUrl: './flowmeter-calculation.component.html',\r\n styleUrls: ['./flowmeter-calculation.component.scss'],\r\n})\r\nexport class FlowmeterCalculationComponent {\r\n @Input() FlowmeterCalculationForm!: FormGroup;\r\n\r\n parks: string[] = [];\r\n gases: string[] = [];\r\n bullets: string[] = [];\r\n isOtherSelected: boolean = false;\r\n otherInputValue: string = '';\r\n purposes: string[] = [];\r\n entrytypes: string[] = [];\r\n MWSelectionPoints: string[] = [];\r\n categories: string[] = [];\r\n startTime: string = '';\r\n endTime: string = '';\r\n isDisabled: boolean = false;\r\n FlaringAverageFrom: string = '';\r\n FlaringAverageTo: string = '';\r\n AverageBeforeFlaring: any;\r\n FlaringStartTime: string = '';\r\n FlaringEndTime: string = '';\r\n\r\n chart: any;\r\n xLabels?: number[];\r\n\r\n yLabels?: number[];\r\n title?: string = 'Flared Gas Flowmeter';\r\n //data?: LPGFlowmeterValuesDTO[];\r\n\r\n initialTimeUnit = 'hour';\r\n zoomedTimeUnit = 'minute';\r\n teckStepInitial = 4;\r\n tickStepZoomed = 2;\r\n izZoomed = false;\r\n\r\n data: any;\r\n\r\n constructor(\r\n private store: Store,\r\n private dataService: PEService,\r\n private fb: FormBuilder,\r\n private commonService: CommonService\r\n ) {\r\n this.parks = this.dataService.getParks();\r\n this.purposes = this.dataService.getPurpose();\r\n this.entrytypes = this.dataService.getFlowMeterEntryType();\r\n this.categories = this.dataService.getCategory();\r\n this.gases = [];\r\n this.bullets = [];\r\n\r\n this.FlowmeterCalculationForm = this.fb.group({\r\n linkToSEEQ: [''],\r\n entryType: ['Flowmeter Calc'],\r\n FlaredVolume: [{ value: null, disabled: true }, [Validators.required, Validators.min(0)]],\r\n startTime: [\r\n this.commonService.convertToDateTimeZ(this.startTime),\r\n Validators.required,\r\n ],\r\n endTime: [\r\n this.commonService.convertToDateTimeZ(this.endTime),\r\n Validators.required,\r\n ],\r\n FlaringAverageFrom: [\r\n this.commonService.convertToDateTimeZ(this.FlaringAverageFrom),\r\n Validators.required,\r\n ],\r\n FlaringAverageTo: [\r\n this.commonService.convertToDateTimeZ(this.FlaringAverageTo),\r\n Validators.required,\r\n ],\r\n AverageBeforeFlaring: [{ value: null, disabled: true }],\r\n FlaringStartTime: [\r\n this.commonService.convertToDateTimeZ(this.FlaringStartTime),\r\n Validators.required,\r\n ],\r\n FlaringEndTime: [\r\n this.commonService.convertToDateTimeZ(this.FlaringEndTime),\r\n Validators.required,\r\n ],\r\n FlaredMass: [{ value: null, disabled: true }],\r\n lpgPark: ['', Validators.required],\r\n gasType: ['', Validators.required],\r\n purpose: ['', Validators.required],\r\n bullet: ['', Validators.required],\r\n mwSelectionPoint: ['', Validators.required],\r\n category: ['', Validators.required],\r\n other: [''],\r\n reason: ['', Validators.required],\r\n });\r\n\r\n const FlaringEndTimeControl =\r\n this.FlowmeterCalculationForm.get('FlaringEndTime');\r\n\r\n const entryTypeControl = this.FlowmeterCalculationForm.get('entryType');\r\n if (entryTypeControl) {\r\n entryTypeControl.valueChanges.subscribe((selectedEntryType) => {\r\n const flaredVolumeControl =\r\n this.FlowmeterCalculationForm.get('FlaredVolume');\r\n if (flaredVolumeControl) {\r\n if (selectedEntryType === 'Manual Entry') {\r\n flaredVolumeControl.enable();\r\n } else {\r\n flaredVolumeControl.disable();\r\n if (FlaringEndTimeControl) {\r\n // this.onVolumeChange();\r\n } else {\r\n flaredVolumeControl.disable();\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n this.setDefaultValues();\r\n\r\n this.store.select(chartDataSelector).subscribe((data) => {\r\n console.log('data', data);\r\n \r\n this.data = data;\r\n this.xLabels = data?.map((x) => x.timeStamp.getTime());\r\n this.xLabels?.push(this.xLabels[this.xLabels.length - 1] + 60000);\r\n if (this.data) this.createChart();\r\n });\r\n\r\n this.onGraphChange();\r\n this.setupFormListeners();\r\n this.onAverageChange();\r\n //this.onVolumeChangByDefault();\r\n this.onFlaredVolumeChange();\r\n\r\n window.addEventListener('beforeunload', () => {\r\n this.handleBeforeUnload();\r\n });\r\n }\r\n\r\n handleBeforeUnload() {\r\n window.opener.postMessage({ closedManually: true }, window.location.origin);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.FlowmeterCalculationForm.get(\r\n 'FlaringAverageFrom'\r\n )!.valueChanges.subscribe((newValue) => {\r\n this.updateFlaringStartTime(newValue);\r\n });\r\n this.FlowmeterCalculationForm.get(\r\n 'FlaringAverageTo'\r\n )!.valueChanges.subscribe((newValue) => {\r\n this.updateFlaringEndTime(newValue);\r\n }); //FlaringStartTime\r\n }\r\n\r\n private updateFlaringStartTime(newDate: string | Date) {\r\n const originalDate =\r\n newDate instanceof Date ? newDate : new Date(newDate as string);\r\n\r\n const flaringStartTime = new Date(originalDate);\r\n flaringStartTime.setDate(flaringStartTime.getDate());\r\n\r\n const flaringAverageTo = new Date(originalDate);\r\n flaringAverageTo.setDate(flaringAverageTo.getDate());\r\n flaringAverageTo.setHours(flaringAverageTo.getHours() + 1);\r\n\r\n console.log('flaringStartTime:', flaringStartTime);\r\n console.log('flaringAverageTo:', flaringAverageTo);\r\n\r\n this.FlowmeterCalculationForm.patchValue({\r\n FlaringStartTime: this.commonService.convertToDateTimeZ(\r\n flaringStartTime.toString()\r\n ),\r\n FlaringAverageTo: this.commonService.convertToDateTimeZ(\r\n flaringAverageTo.toString()\r\n ),\r\n });\r\n }\r\n\r\n private updateFlaringEndTime(newDate: string | Date) {\r\n const originalDate =\r\n newDate instanceof Date ? newDate : new Date(newDate as string);\r\n\r\n const FlaringAverageFrom = new Date(\r\n this.FlowmeterCalculationForm.get('FlaringAverageFrom')?.value\r\n );\r\n const FlaringAverageTo = new Date(\r\n this.FlowmeterCalculationForm.get('FlaringAverageTo')?.value\r\n );\r\n\r\n const flaringStartTime = new Date(originalDate);\r\n flaringStartTime.setDate(FlaringAverageFrom.getDate());\r\n flaringStartTime.setMinutes(flaringStartTime.getMinutes() + 1);\r\n\r\n const flaringEndTime = new Date(flaringStartTime);\r\n flaringEndTime.setDate(FlaringAverageTo.getDate());\r\n flaringEndTime.setHours(flaringEndTime.getHours() + 1);\r\n\r\n this.FlowmeterCalculationForm.patchValue({\r\n FlaringEndTime: this.commonService.convertToDateTimeZ(\r\n flaringEndTime.toString()\r\n ),\r\n FlaringStartTime: this.commonService.convertToDateTimeZ(\r\n flaringStartTime.toString()\r\n ),\r\n });\r\n }\r\n\r\n private setupFormListeners(): void {\r\n this.FlowmeterCalculationForm.get('gasType')!.valueChanges.subscribe(\r\n (newValue) => {\r\n const resetBullet =\r\n newValue === 'Fuel Gas' ||\r\n newValue === 'Propane' ||\r\n newValue === 'Butane';\r\n const bulletControl = this.FlowmeterCalculationForm.get('bullet')!;\r\n\r\n if (resetBullet) {\r\n bulletControl.setValue('');\r\n bulletControl.clearValidators();\r\n } else {\r\n bulletControl.clearValidators();\r\n bulletControl.setValidators([Validators.required]);\r\n }\r\n\r\n bulletControl.updateValueAndValidity();\r\n }\r\n );\r\n }\r\n\r\n onAverageChange() {\r\n const startControl =\r\n this.FlowmeterCalculationForm.get('FlaringAverageFrom');\r\n const endControl = this.FlowmeterCalculationForm.get('FlaringAverageTo');\r\n\r\n const averageControl = this.FlowmeterCalculationForm.get(\r\n 'AverageBeforeFlaring'\r\n );\r\n\r\n if (startControl && endControl) {\r\n const startTime = new Date(startControl.value);\r\n const endTime = new Date(endControl.value);\r\n\r\n this.store.dispatch(\r\n getCalculation({\r\n startTime,\r\n endTime,\r\n calculationType: LPGFlowmeterCalculateType.Average,\r\n avg: 0,\r\n volume: 0,\r\n mw: 0,\r\n })\r\n );\r\n\r\n if (averageControl) {\r\n this.store.select(FlowmeterCalculationSelector).subscribe((data) => {\r\n this.FlowmeterCalculationForm.patchValue({\r\n AverageBeforeFlaring: data.average,\r\n });\r\n });\r\n }\r\n }\r\n\r\n this.onFlaredVolumeChange();\r\n }\r\n\r\n /*\r\n onVolumeChange(){\r\n const startControl = this.FlowmeterCalculationForm.get('FlaringStartTime');\r\n const endControl = this.FlowmeterCalculationForm.get('FlaringEndTime');\r\n \r\n const averageControl = this.FlowmeterCalculationForm.get('AverageBeforeFlaring');\r\n //const avgValue = averageControl?.value;\r\n //console.log(avgValue)\r\n const volumeControl = this.FlowmeterCalculationForm.get('FlaredVolume');\r\n \r\n if (startControl && endControl) {\r\n const startTime = new Date(startControl.value)\r\n const endTime = new Date(endControl.value)\r\n const avgValue = averageControl?.value;\r\n \r\n this.store.dispatch(getCalculation({\r\n startTime,\r\n endTime,\r\n calculationType: LPGFlowmeterCalculateType.Volume,\r\n avg: avgValue,\r\n volume: 0,\r\n mw: 0\r\n }));\r\n if (volumeControl && this.FlowmeterCalculationForm) {\r\n this.store.select(FlowmeterCalculationSelector).subscribe(data => {\r\n this.FlowmeterCalculationForm.get('FlaredVolume')?.patchValue( data.volume);\r\n });\r\n }\r\n }\r\n\r\n }\r\n*/\r\n onFlaredVolumeChange() {\r\n const entryTypeControl = this.FlowmeterCalculationForm.get('entryType');\r\n const flaredVolumeControl =\r\n this.FlowmeterCalculationForm.get('FlaredVolume');\r\n\r\n if (entryTypeControl?.value === 'Manual Entry' && flaredVolumeControl) {\r\n this.onMassChange();\r\n } else if (\r\n entryTypeControl?.value === 'Flowmeter Calc' &&\r\n flaredVolumeControl\r\n ) {\r\n this.onVolumeChangByDefault();\r\n }\r\n }\r\n\r\n onVolumeChangByDefault() {\r\n const startControl = this.FlowmeterCalculationForm.get('FlaringStartTime');\r\n const endControl = this.FlowmeterCalculationForm.get('FlaringEndTime');\r\n const volumeControl = this.FlowmeterCalculationForm.get('FlaredVolume');\r\n\r\n if (startControl && endControl && volumeControl) {\r\n const startTime = new Date(startControl.value);\r\n const endTime = new Date(endControl.value);\r\n\r\n setTimeout(() => {\r\n const averageControl = this.FlowmeterCalculationForm.get(\r\n 'AverageBeforeFlaring'\r\n );\r\n const avgValue = averageControl?.value;\r\n\r\n this.store.dispatch(\r\n getCalculation({\r\n startTime,\r\n endTime,\r\n calculationType: LPGFlowmeterCalculateType.Volume,\r\n avg: avgValue,\r\n volume: 0,\r\n mw: 0,\r\n })\r\n );\r\n\r\n if (this.FlowmeterCalculationForm) {\r\n this.store.select(FlowmeterCalculationSelector).subscribe((data) => {\r\n this.FlowmeterCalculationForm.get('FlaredVolume')?.patchValue(\r\n data.volume\r\n );\r\n });\r\n }\r\n }, 4000); // 4 seconds delay\r\n }\r\n }\r\n\r\n onMassChange() {\r\n const startControl = this.FlowmeterCalculationForm.get('FlaringStartTime');\r\n const endControl = this.FlowmeterCalculationForm.get('FlaringEndTime');\r\n\r\n const averageControl = this.FlowmeterCalculationForm.get(\r\n 'AverageBeforeFlaring'\r\n );\r\n const volumeControl = this.FlowmeterCalculationForm.get('FlaredVolume');\r\n const mwControl = this.dataService.formatMWSelectionPoint(\r\n this.FlowmeterCalculationForm.value.mwSelectionPoint,\r\n this.FlowmeterCalculationForm.value.gasType\r\n );\r\n\r\n const massControl = this.FlowmeterCalculationForm.get('FlaredMass');\r\n\r\n if (startControl && endControl) {\r\n const startTime = new Date(startControl.value);\r\n const endTime = new Date(endControl.value);\r\n const avgValue = averageControl?.value;\r\n const volValue = volumeControl?.value;\r\n const mwValue = mwControl;\r\n\r\n this.store.dispatch(\r\n getCalculation({\r\n startTime,\r\n endTime,\r\n calculationType: LPGFlowmeterCalculateType.Mass,\r\n avg: avgValue,\r\n volume: volValue,\r\n mw: mwValue,\r\n })\r\n );\r\n if (massControl && this.FlowmeterCalculationForm) {\r\n this.store.select(FlowmeterCalculationSelector).subscribe((data) => {\r\n this.FlowmeterCalculationForm.patchValue({\r\n FlaredMass: data.mass,\r\n FlaredVolume: volValue,\r\n });\r\n });\r\n }\r\n }\r\n }\r\n\r\n onGraphChange() {\r\n const startControl = this.FlowmeterCalculationForm.get('startTime');\r\n const endControl = this.FlowmeterCalculationForm.get('endTime');\r\n\r\n if (startControl && endControl) {\r\n const startTime = new Date(startControl.value);\r\n const endTime = new Date(endControl.value);\r\n\r\n this.store.dispatch(\r\n getFlowMeterChartData({\r\n startTime: new Date(startTime),\r\n endTime: new Date(endTime),\r\n graphType: 2,\r\n })\r\n );\r\n }\r\n }\r\n\r\n updateLink() {\r\n const formControl = this.FlowmeterCalculationForm.get('linkToSEEQ');\r\n\r\n if (formControl) {\r\n const linkValue = formControl.value;\r\n this.FlowmeterCalculationForm.patchValue({ linkToSEEQ: linkValue });\r\n }\r\n }\r\n\r\n onParkChange() {\r\n this.gases = this.dataService.getGasesForPark(\r\n this.FlowmeterCalculationForm.value.lpgPark\r\n );\r\n this.FlowmeterCalculationForm.get('gasType')?.enable();\r\n this.FlowmeterCalculationForm.patchValue({\r\n gasType: '',\r\n bullet: '',\r\n });\r\n this.bullets = [];\r\n this.isOtherSelected = false;\r\n }\r\n\r\n onGasChange() {\r\n this.bullets = this.dataService.getOptionsForGas(\r\n this.FlowmeterCalculationForm.value.lpgPark,\r\n this.FlowmeterCalculationForm.value.gasType\r\n );\r\n this.FlowmeterCalculationForm.get('bullet')?.enable();\r\n this.FlowmeterCalculationForm.get('mwSelectionPoint')?.enable();\r\n this.MWSelectionPoints = this.dataService.getMWSelectionPoints(\r\n this.FlowmeterCalculationForm.value.gasType\r\n );\r\n this.FlowmeterCalculationForm.patchValue({\r\n bullet: '',\r\n });\r\n this.isOtherSelected = false;\r\n }\r\n\r\n onOptionChange() {\r\n this.isOtherSelected =\r\n this.FlowmeterCalculationForm.value.bullet === 'Other';\r\n if (!this.isOtherSelected) {\r\n this.otherInputValue = '';\r\n }\r\n }\r\n\r\n setDefaultValues() {\r\n const today = new Date();\r\n const todayFlaring = new Date();\r\n const previousDay = new Date();\r\n const sixDaysAgo = new Date();\r\n\r\n const flaringAverageFromDate = new Date();\r\n const flaringAverageToDate = new Date();\r\n const flaringStartTimeDate = new Date();\r\n const flaringEndTimeDate = new Date();\r\n\r\n today.setHours(1, 59, 0, 0);\r\n todayFlaring.setHours(1, 59, 0, 0);\r\n previousDay.setHours(0, 59, 0, 0);\r\n sixDaysAgo.setHours(2, 0, 0, 0);\r\n\r\n flaringAverageFromDate.setHours(0, 59, 0, 0);\r\n flaringAverageToDate.setHours(1, 59, 0, 0);\r\n flaringStartTimeDate.setHours(2, 0, 0, 0);\r\n flaringEndTimeDate.setHours(3, 0, 0, 0);\r\n\r\n previousDay.setDate(today.getDate());\r\n sixDaysAgo.setDate(today.getDate() - 6);\r\n\r\n flaringAverageFromDate.setDate(today.getDate());\r\n flaringAverageToDate.setDate(today.getDate());\r\n flaringStartTimeDate.setDate(today.getDate());\r\n flaringEndTimeDate.setDate(today.getDate());\r\n\r\n const formattedSixDaysAgo = this.commonService.convertToDateTimeZ(\r\n sixDaysAgo.toString()\r\n );\r\n const formattedPreviosDay = this.commonService.convertToDateTimeZ(\r\n previousDay.toString()\r\n );\r\n const formattedToday = this.commonService.convertToDateTimeZ(\r\n today.toString()\r\n );\r\n const formattedFlaringToday = this.commonService.convertToDateTimeZ(\r\n todayFlaring.toString()\r\n );\r\n\r\n const flaringAverageFrom = this.commonService.convertToDateTimeZ(\r\n flaringAverageFromDate.toString()\r\n );\r\n const flaringAverageTo = this.commonService.convertToDateTimeZ(\r\n flaringAverageToDate.toString()\r\n );\r\n const flaringStartTime = this.commonService.convertToDateTimeZ(\r\n flaringStartTimeDate.toString()\r\n );\r\n const flaringEndTime = this.commonService.convertToDateTimeZ(\r\n flaringEndTimeDate.toString()\r\n );\r\n\r\n console.log(formattedSixDaysAgo);\r\n console.log(formattedPreviosDay);\r\n console.log(formattedToday);\r\n\r\n this.FlowmeterCalculationForm.patchValue({\r\n startTime: formattedSixDaysAgo,\r\n endTime: formattedToday,\r\n FlaringAverageFrom: flaringAverageFrom,\r\n FlaringAverageTo: flaringAverageTo,\r\n FlaringStartTime: flaringStartTime,\r\n FlaringEndTime: flaringEndTime,\r\n });\r\n }\r\n\r\n nearestTimeRange(val: number): number {\r\n const stepSizes = [240, 120, 60, 30, 15, 10, 5, 1];\r\n let nearest = 0;\r\n let diff = 300;\r\n stepSizes.forEach((x, index) => {\r\n if (diff > Math.abs(x - val)) {\r\n nearest = index;\r\n diff = Math.abs(x - val);\r\n }\r\n });\r\n return stepSizes[nearest];\r\n }\r\n\r\n createChart() {\r\n var oldChart = Chart.getChart('MyChart');\r\n if (oldChart != undefined) oldChart.destroy();\r\n this.chart = new Chart('MyChart', {\r\n type: 'line',\r\n data: {\r\n labels: this.xLabels, //timestamp\r\n datasets: [\r\n //values\r\n {\r\n label: '80FI351043_2S.PV',\r\n data: this.data?.map((y: { value: any }) => y.value),\r\n // data: this.data?.map((x) => x.value),\r\n backgroundColor: 'green',\r\n borderColor: 'green',\r\n pointBackgroundColor: 'green',\r\n },\r\n ],\r\n },\r\n options: {\r\n // responsive: true,\r\n // aspectRatio: 2.5,\r\n plugins: {\r\n zoom: {\r\n pan: {\r\n enabled: true,\r\n mode: 'xy',\r\n },\r\n zoom: {\r\n wheel: {\r\n enabled: true,\r\n },\r\n pinch: {\r\n enabled: true,\r\n },\r\n onZoom: ({ chart }) => {\r\n if (chart.options.scales) {\r\n const max = chart.options.scales['x']?.max as number;\r\n const min = chart.options.scales['x']?.min as number;\r\n const newStepSize = this.nearestTimeRange(\r\n Math.floor((max - min) / 1000000)\r\n );\r\n if (chart.options.scales['x'])\r\n chart.options.scales['x'].ticks = {\r\n stepSize: newStepSize,\r\n source: 'auto',\r\n maxRotation: 90,\r\n minRotation: 90,\r\n autoSkip: true,\r\n };\r\n }\r\n },\r\n mode: 'xy',\r\n },\r\n },\r\n title: {\r\n display: true,\r\n text: this.title,\r\n },\r\n },\r\n\r\n scales: {\r\n x: {\r\n type: 'time',\r\n time: {\r\n unit: 'minute',\r\n displayFormats: {\r\n minute: 'D-MMM,HH:mm',\r\n },\r\n tooltipFormat: 'D-MMM,HH:mm',\r\n },\r\n title: {\r\n display: true,\r\n text: 'Time',\r\n },\r\n ticks: {\r\n source: 'auto',\r\n stepSize: 240,\r\n maxRotation: 90,\r\n minRotation: 90,\r\n autoSkip: true,\r\n },\r\n },\r\n y: {\r\n title: {\r\n display: true,\r\n text: 'Value',\r\n },\r\n },\r\n },\r\n },\r\n });\r\n }\r\n\r\n handleSave() {\r\n const newFlowmeterCalc = new LPGPEInputDTO();\r\n\r\n newFlowmeterCalc.init(this.FlowmeterCalculationForm.value);\r\n\r\n newFlowmeterCalc.startTime =\r\n this.FlowmeterCalculationForm.value.FlaringStartTime; //\r\n\r\n newFlowmeterCalc.endTime =\r\n this.FlowmeterCalculationForm.value.FlaringEndTime; //\r\n\r\n newFlowmeterCalc.lpgPark =\r\n this.FlowmeterCalculationForm.value.lpgPark === 'New Park - SGP'\r\n ? LPGPark.NewParkSGP\r\n : LPGPark.OldParkKTL; //\r\n\r\n switch (this.FlowmeterCalculationForm.value.gasType) {\r\n case 'Butane':\r\n newFlowmeterCalc.gasType = LPGGasType.Butane;\r\n break;\r\n case 'Propane':\r\n newFlowmeterCalc.gasType = LPGGasType.Propane;\r\n break;\r\n default:\r\n newFlowmeterCalc.gasType = LPGGasType.Dry;\r\n } //\r\n\r\n newFlowmeterCalc.purpose =\r\n this.FlowmeterCalculationForm.value.purpose === 'Flared'\r\n ? LPGPurpose.Flared\r\n : LPGPurpose.Leakage; //\r\n\r\n newFlowmeterCalc.isAuto =\r\n this.FlowmeterCalculationForm.value.entryType === 'FlowmeterCalc'\r\n ? true\r\n : false; //\r\n\r\n const bulletControl = this.FlowmeterCalculationForm.get('bullet'); //\r\n if (bulletControl) {\r\n newFlowmeterCalc.bullet = bulletControl.value;\r\n }\r\n\r\n // newFlowmeterCalc.bullet = this.FlowmeterCalculationForm.value.bullet;\r\n\r\n /*\r\n const otherControl = this.FlowmeterCalculationForm.get('other'); //\r\n if (otherControl) {\r\n newFlowmeterCalc.other = otherControl.value;\r\n } \r\n*/\r\n newFlowmeterCalc.other = this.FlowmeterCalculationForm.value.other;\r\n\r\n // thereisnotechcomments\r\n\r\n newFlowmeterCalc.mwSelectionPoint = this.dataService.formatMWSelectionPoint(\r\n //\r\n this.FlowmeterCalculationForm.value.mwSelectionPoint,\r\n this.FlowmeterCalculationForm.value.gasType\r\n );\r\n\r\n switch (\r\n this.FlowmeterCalculationForm.value.category //\r\n ) {\r\n case 'V6':\r\n newFlowmeterCalc.category = PermitTargetInputCategory.V6;\r\n break;\r\n case 'V7':\r\n newFlowmeterCalc.category = PermitTargetInputCategory.V7;\r\n break;\r\n case 'V8':\r\n newFlowmeterCalc.category = PermitTargetInputCategory.V8;\r\n break;\r\n default:\r\n newFlowmeterCalc.category = PermitTargetInputCategory.V9;\r\n }\r\n\r\n const reasonControl = this.FlowmeterCalculationForm.get('reason'); //\r\n if (reasonControl) {\r\n newFlowmeterCalc.reason = reasonControl.value;\r\n }\r\n\r\n //newFlowmeterCalc.reason = this.FlowmeterCalculationForm.value.reason;\r\n\r\n //newFlowmeterCalc.isManual = this.FlowmeterCalculationForm.value.entryType === 'Manual Entry' ? true : false; //\r\n\r\n newFlowmeterCalc.flaringAvgFrom =\r\n this.FlowmeterCalculationForm.value.FlaringAverageFrom; //\r\n\r\n newFlowmeterCalc.flaringAvgTo =\r\n this.FlowmeterCalculationForm.value.FlaringAverageTo; //\r\n\r\n const FlaringAVGvolumeControl = this.FlowmeterCalculationForm.get(\r\n 'AverageBeforeFlaring'\r\n ); //\r\n if (FlaringAVGvolumeControl) {\r\n newFlowmeterCalc.flaringAvgVolume = FlaringAVGvolumeControl.value;\r\n }\r\n\r\n // newFlowmeterCalc.flaringAvgVolume = this.FlowmeterCalculationForm.value.AverageBeforeFlaring;\r\n\r\n const FlaredvolumeControl =\r\n this.FlowmeterCalculationForm.get('FlaredVolume');\r\n if (FlaredvolumeControl) {\r\n newFlowmeterCalc.flaredVolume = FlaredvolumeControl.value;\r\n newFlowmeterCalc.volume = FlaredvolumeControl.value;\r\n }\r\n\r\n // newFlowmeterCalc.flaredVolume = this.FlowmeterCalculationForm.value.FlaredVolume;\r\n // newFlowmeterCalc.volume = this.FlowmeterCalculationForm.value.FlaredVolume;\r\n\r\n newFlowmeterCalc.flaringStartTime =\r\n this.FlowmeterCalculationForm.value.FlaringStartTime; //\r\n\r\n newFlowmeterCalc.flaringEndTime =\r\n this.FlowmeterCalculationForm.value.FlaringEndTime; //\r\n\r\n const FlaredmassControl = this.FlowmeterCalculationForm.get('FlaredMass'); //\r\n\r\n if (FlaredmassControl) {\r\n newFlowmeterCalc.flaredMass = FlaredmassControl.value;\r\n newFlowmeterCalc.mass = FlaredmassControl.value;\r\n }\r\n\r\n // newFlowmeterCalc.flaredMass = this.FlowmeterCalculationForm.value.FlaredMass;\r\n // newFlowmeterCalc.mass = this.FlowmeterCalculationForm.value.FlaredMass;\r\n\r\n const seeqControl = this.FlowmeterCalculationForm.get('linkToSEEQ'); //\r\n if (seeqControl) {\r\n newFlowmeterCalc.seeq = seeqControl.value;\r\n }\r\n\r\n //newFlowmeterCalc.seeq = this.FlowmeterCalculationForm.value.seeqControl;\r\n\r\n newFlowmeterCalc.isFlowmeter = true;\r\n\r\n this.store.dispatch(LPGFlowmeterCalculationInputAdd(newFlowmeterCalc));\r\n this.FlowmeterCalculationForm.reset();\r\n\r\n console.log(newFlowmeterCalc);\r\n\r\n this.commonService.closePage();\r\n\r\n // this.dialogRef.close();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n

FLOWMETER CALCULATION

\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {{ chart }}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n Volume must be positive.\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {{ FlowmeterCalculationForm.get(\"linkToSEEQ\")?.value }}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n LPG Park is required.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Gas Type is required.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Purpose is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ entrytype }}\r\n \r\n \r\n
\r\n \r\n Entry Type is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Bullet is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ point }}\r\n \r\n \r\n
\r\n \r\n MW Selection Point is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ category }}\r\n \r\n \r\n
\r\n \r\n Category is required.\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n Reason is required.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n SAVE\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { CcComponent } from './cc/cc.component';\r\nimport { FuelGasFlaringComponent } from './fuel-gas-flaring/fuel-gas-flaring.component';\r\nimport { UserGroups } from '../../../../../web-api-client';\r\nimport { RoleGuard } from '../../../../../core/guards/role.guard';\r\n\r\nconst routes: Routes = [\r\n{\r\n path: '',\r\n children: [\r\n {\r\n path: 'FinalReport',\r\n loadChildren: () => import('./final-report/final-report.module').then(m => m.FinalReportModule),\r\n data: {\r\n expectedRole: [UserGroups.LPG_Engineer],\r\n },\r\n canActivate: [RoleGuard],\r\n },\r\n {\r\n path: 'Input',\r\n loadChildren: () => import('./input/input.module').then(m => m.FDInputModule)\r\n },\r\n {\r\n path: 'CC',\r\n component: CcComponent,\r\n data: {\r\n expectedRole: [UserGroups.LPG_Engineer],\r\n },\r\n canActivate: [RoleGuard],\r\n },\r\n {\r\n path: 'FuelGasFlaring',\r\n component: FuelGasFlaringComponent,\r\n data: {\r\n expectedRole: [UserGroups.LPG_Engineer],\r\n },\r\n canActivate: [RoleGuard],\r\n }\r\n ],\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class LPGRoutingModule {}\r\n","import { createAction, props } from '@ngrx/store';\r\n\r\nimport { EditFlareReportVolumePayload, FlareReportPayload } from '../flare-report/models';\r\nimport {\r\n BlowdownInput,\r\n BlowdownInputSavePayload,\r\n ChemicalCompositionTable,\r\n ManualRecordsSavePayload,\r\n TargetPermit,\r\n TargetPermitSavePayload,\r\n} from '../models';\r\n\r\nexport const getDailyFlareReport = createAction(\r\n '[SGI] Get Daily Flare Report',\r\n props<{ date: string }>()\r\n);\r\nexport const getDailyFlareReportSuccess = createAction(\r\n '[SGI] Get Daily Flare Report Success',\r\n props<{ payload: FlareReportPayload }>()\r\n);\r\nexport const getDailyFlareReportFailure = createAction(\r\n '[SGI] Get Daily Flare Report Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const getChemicalCompositionRecords = createAction(\r\n '[SGI] Get Chemical Compositions',\r\n props<{ date: string }>()\r\n);\r\nexport const getChemicalCompositionRecordsSuccess = createAction(\r\n '[SGI] Get Chemical Compositions Success',\r\n props<{ payload: ChemicalCompositionTable[] }>()\r\n);\r\nexport const getChemicalCompositionRecordsFailure = createAction(\r\n '[SGI] Get Chemical Compositions Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const getBlowDownRecords = createAction(\r\n '[SGI] Get Blowdown Records',\r\n props<{ from: string; to: string }>()\r\n);\r\nexport const getBlowDownRecordsSuccess = createAction(\r\n '[SGI] Get Blowdown Records Success',\r\n props<{ payload: BlowdownInput[] }>()\r\n);\r\nexport const getBlowDownRecordsFailure = createAction(\r\n '[SGI] Get Blowdown Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const saveBlowDownRecord = createAction(\r\n '[SGI] Save Blowdown Record',\r\n props<{ date: string; payload: BlowdownInputSavePayload }>()\r\n);\r\nexport const saveBlowDownRecordSuccess = createAction(\r\n '[SGI] Save Blowdown Record Success',\r\n props<{ date: string }>()\r\n);\r\nexport const saveBlowDownRecordFailure = createAction(\r\n '[SGI] Save Blowdown Record Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const deleteBlowDownRecord = createAction(\r\n '[SGI] Delete Blowdown Record',\r\n props<{ date: string; id: number }>()\r\n);\r\nexport const deleteBlowDownRecordSuccess = createAction(\r\n '[SGI] Delete Blowdown Record Success',\r\n props<{ date: string }>()\r\n);\r\nexport const deleteBlowDownRecordFailure = createAction(\r\n '[SGI] Delete Blowdown Record Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const getTargetPermitRecords = createAction(\r\n '[SGI] Get Target/Permit Records',\r\n props<{ year: number }>()\r\n);\r\nexport const getTargetPermitRecordsSuccess = createAction(\r\n '[SGI] Get Target/Permit Records Success',\r\n props<{ payload: TargetPermit[] }>()\r\n);\r\nexport const getTargetPermitRecordsFailure = createAction(\r\n '[SGI] Get Target/Permit Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const saveTargetPermitRecord = createAction(\r\n '[SGI] Save Target/Permit Records',\r\n props<{ year: number; payload: TargetPermitSavePayload }>()\r\n);\r\nexport const saveTargetPermitRecordSuccess = createAction(\r\n '[SGI] Save Target/Permit Records Success'\r\n);\r\nexport const saveTargetPermitRecordFailure = createAction(\r\n '[SGI] Save Target/Permit Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const saveManualRecord = createAction(\r\n '[SGI] Save Manual Record',\r\n props<{ date: string; payload: ManualRecordsSavePayload }>()\r\n);\r\nexport const saveManualRecordSuccess = createAction(\r\n '[SGI] Save Manual Record Success'\r\n);\r\nexport const saveManualRecordFailure = createAction(\r\n '[SGI] Save Manual Record Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const approveSgiFlareReport = createAction(\r\n '[SGI] Approve SGI Flare Report',\r\n props<{ date: string }>()\r\n);\r\nexport const approveSgiFlareReportSuccess = createAction(\r\n '[SGI] Approve SGI Flare Report Success'\r\n);\r\nexport const approveSgiFlareReportFailure = createAction(\r\n '[SGI] Approve SGI Flare Report Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const getApproveTimestamp = createAction(\r\n '[SGI] Get Approve timestamp',\r\n props<{ date: string }>()\r\n);\r\nexport const getApproveTimestampSuccess = createAction(\r\n '[SGI] Get Approve timestamp Success',\r\n props<{ payload: string | null }>()\r\n);\r\nexport const getApproveTimestampFailure = createAction(\r\n '[SGI] Get Approve timestamp Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const exportMonthlyReport = createAction(\r\n '[SGI] Export Monthly Report',\r\n props<{ date: string }>()\r\n);\r\nexport const exportMonthlyReportSuccess = createAction(\r\n '[SGI] Export Monthly Report Success'\r\n);\r\nexport const exportMonthlyReportFailure = createAction(\r\n '[SGI] Export Monthly Report Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\n\r\nexport const editFlareRecordVolume = createAction(\r\n '[SGI] Edit Flare Record Volume',\r\n props<{ date: string, payload: EditFlareReportVolumePayload }>()\r\n);\r\nexport const editFlareRecordVolumeSuccess = createAction(\r\n '[SGI] Edit Flare Record Volume Success'\r\n);\r\nexport const editFlareRecordVolumeFailure = createAction(\r\n '[SGI] Edit Flare Record Volume Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const deleteFlareRecordVolume = createAction(\r\n '[SGI] Delete Flare Record Volume',\r\n props<{ date: string, payload: EditFlareReportVolumePayload }>()\r\n);\r\nexport const deleteFlareRecordVolumeSuccess = createAction(\r\n '[SGI] Delete Flare Record Volume Success'\r\n);\r\nexport const deleteFlareRecordVolumeFailure = createAction(\r\n '[SGI] Delete Flare Record Volume Failure',\r\n props<{ error: string }>()\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { ChemicalCompoundsDTO, ChemicalCompoundsEquipmentDTO, InputRecordDTO, KTLSGPStreamDTO } from 'src/app/web-api-client';\r\n\r\nexport const getChemicalCompound = createAction(\r\n '[SGP] Get Chemical Compound',\r\n);\r\nexport const getChemicalCompoundSuccess = createAction(\r\n '[SGP] Get Chemical Compound Success',\r\n props<{ data: ChemicalCompoundsDTO[]; }>()\r\n);\r\nexport const getChemicalCompoundFailure = createAction(\r\n '[SGP] Get Chemical Compound Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getChemicalCompoundsEquipment = createAction(\r\n '[SGP] Get Chemical Compounds Equipment'\r\n);\r\nexport const getChemicalCompoundsEquipmentSuccess = createAction(\r\n '[SGP] Get Chemical Compounds Equipment Success',\r\n props<{ dataEquipment: ChemicalCompoundsEquipmentDTO[]; }>()\r\n);\r\nexport const getChemicalCompoundsEquipmentFailure = createAction(\r\n '[SGP] Get Chemical Compounds Equipment Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getStreamsName = createAction(\r\n '[SGP] Get Streams Name',\r\n);\r\nexport const getStreamsNameSuccess = createAction(\r\n '[SGP] Get Streams Name Success',\r\n props<{ streams: KTLSGPStreamDTO[]; }>()\r\n);\r\nexport const getStreamsNameFailure = createAction(\r\n '[SGP] Get Streams Name Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const AddManualRecord = createAction(\r\n '[SGP] Add Manual Record',\r\n props()\r\n);\r\nexport const AddManualRecordSuccess = createAction(\r\n '[SGP] Add Manual Record Success',\r\n props()\r\n);\r\nexport const AddManualRecordFailure = createAction(\r\n '[SGP] Add Manual Record Failure',\r\n props<{ message: string }>()\r\n);","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n concatMap,\r\n withLatestFrom,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as FlaringActions from '../state/flaring.actions';\r\nimport * as notificationActions from '../../../../../../../../../state/notification/notification.action';\r\nimport { KTLSGPClient } from '../../../../../../../../../web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SGPFlaringEffects {\r\n constructor(\r\n private actions: Actions,\r\n private sgpfdClient: KTLSGPClient,\r\n private store: Store\r\n ) {}\r\n\r\n chemicalCompound = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlaringActions.getChemicalCompound),\r\n exhaustMap(() => {\r\n return this.sgpfdClient\r\n .getChemicalCompoundsID().pipe(\r\n map((res) =>\r\n FlaringActions.getChemicalCompoundSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(FlaringActions.getChemicalCompoundFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n chemicalCompoundsEquipment = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlaringActions.getChemicalCompoundsEquipment),\r\n exhaustMap(() => {\r\n \r\n // todo: check this hardcoded params\r\n\r\n return this.sgpfdClient\r\n .getChemicalCompoundsEquipment(null, 1).pipe(\r\n map((res) =>\r\n FlaringActions.getChemicalCompoundsEquipmentSuccess({ dataEquipment: res })\r\n ),\r\n catchError((err) =>\r\n of(FlaringActions.getChemicalCompoundsEquipmentFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n StreamsName = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlaringActions.getStreamsName),\r\n exhaustMap(() => {\r\n return this.sgpfdClient\r\n .getAllStreams().pipe(\r\n map((res) =>\r\n FlaringActions.getStreamsNameSuccess({ streams: res })\r\n ),\r\n catchError((err) =>\r\n of(FlaringActions.getStreamsNameFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n \r\n addManualRecord = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlaringActions.AddManualRecord),\r\n exhaustMap((action) => {\r\n return this.sgpfdClient.addManualRecord(action).pipe(\r\n concatMap((res) => [\r\n FlaringActions.AddManualRecordSuccess(res),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(FlaringActions.AddManualRecordFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n}","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as FlaringActions from './flaring.actions';\r\nimport { ChemicalCompoundsDTO, ChemicalCompoundsEquipmentDTO, KTLSGPStreamDTO } from 'src/app/web-api-client';\r\n\r\nexport interface SGPFlaringState{\r\n data: ChemicalCompoundsDTO[] | null ;\r\n dataEquipment: ChemicalCompoundsEquipmentDTO[] | null ;\r\n streams: KTLSGPStreamDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: SGPFlaringState = {\r\n data: null,\r\n dataEquipment: null,\r\n streams: null,\r\n result: null,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const SGPFlaringReducer = createReducer(\r\n initialState,\r\n on(FlaringActions.getChemicalCompound, state => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FlaringActions.getChemicalCompoundSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n dataEquipment: null,\r\n streams: null,\r\n result: null,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FlaringActions.getChemicalCompoundFailure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FlaringActions.getChemicalCompoundsEquipment, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FlaringActions.getChemicalCompoundsEquipmentSuccess, (state, result) => ({\r\n ...state,\r\n data: null,\r\n dataEquipment: result.dataEquipment,\r\n streams:null,\r\n result: null,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FlaringActions.getChemicalCompoundsEquipmentFailure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FlaringActions.getStreamsName, state => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FlaringActions.getStreamsNameSuccess, (state, result) => ({\r\n ...state,\r\n data: null,\r\n dataEquipment: null,\r\n streams: result.streams,\r\n result: null,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FlaringActions.getStreamsNameFailure, (state, result) => ({\r\n ...state,\r\n result: result,\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FlaringActions.AddManualRecord, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FlaringActions.AddManualRecordSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(FlaringActions.AddManualRecordFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n);","import { createAction, props } from '@ngrx/store';\r\nimport {\r\n BoilerGasUsage,\r\n BoilerGasUsageInputSavePayload,\r\n BoilerGasUsageSavePayload,\r\n GasUsageInputSavePayload,\r\n HeaterGasUsage,\r\n HeaterGasUsageInputSavePayload,\r\n HeaterGasUsageSavePayload,\r\n IBMOA,\r\n IBMOASavePayload,\r\n Meters,\r\n MetersSavePayload,\r\n MetersUpdatePayload,\r\n MonthlyReport,\r\n MonthlyReportCommentPayload,\r\n TotalTableRecords,\r\n} from '../models';\r\n\r\n// Boilers\r\nexport const getBoilerRecords = createAction(\r\n '[Boiler Gas Usage] Get Boiler Records',\r\n props<{ date: string }>()\r\n);\r\nexport const getBoilerRecordsSuccess = createAction(\r\n '[Boiler Gas Usage] Get Boiler Records Success',\r\n props<{ payload: BoilerGasUsage[] }>()\r\n);\r\nexport const getBoilerRecordsFailure = createAction(\r\n '[Boiler Gas Usage] Get Boiler Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const saveBoilersRecord = createAction(\r\n '[Boiler Gas Usage] Save Boilers Record',\r\n props<{ date: string; payload: BoilerGasUsageInputSavePayload }>()\r\n);\r\nexport const saveBoilersRecordSuccess = createAction(\r\n '[Boiler Gas Usage] Save Boilers Record Success'\r\n);\r\nexport const saveBoilersRecordFailure = createAction(\r\n '[Boiler Gas Usage] Save Boilers Record Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const updateBoilersRecord = createAction(\r\n '[Boiler Gas Usage] Update Boilers Record',\r\n props<{ date: string; payload: BoilerGasUsageSavePayload[] }>()\r\n);\r\nexport const updateBoilersRecordSuccess = createAction(\r\n '[Boiler Gas Usage] Update Boilers Record Success'\r\n);\r\nexport const updateBoilersRecordFailure = createAction(\r\n '[Boiler Gas Usage] Update Boilers Record Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const updateBoilerMotohours = createAction(\r\n '[Boiler Gas Usage] Update Boiler Motohours',\r\n props<{ date: string; payload: any }>()\r\n);\r\nexport const updateBoilerMotohoursSuccess = createAction(\r\n '[Boiler Gas Usage] Update Boiler Motohours Success'\r\n);\r\nexport const updateBoilerMotohoursFailure = createAction(\r\n '[Boiler Gas Usage] Update Boiler Motohours Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const bulkResetBoilerRecords = createAction(\r\n '[Boiler Gas Usage] Bulk Reset Boiler Records',\r\n props<{ date: string; payload: GasUsageInputSavePayload[] }>()\r\n);\r\nexport const bulkResetBoilerRecordsSuccess = createAction(\r\n '[Boiler Gas Usage] Bulk Reset Boiler Records Success'\r\n);\r\nexport const bulkResetBoilerRecordsFailure = createAction(\r\n '[Boiler Gas Usage] Bulk Reset Boiler Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\n// Heaters\r\nexport const getHeaterRecords = createAction(\r\n '[Heaters Data] Get Heater Records',\r\n props<{ date: string }>()\r\n);\r\nexport const getHeaterRecordsSuccess = createAction(\r\n '[Heaters Data] Get Heater Records Success',\r\n props<{ payload: HeaterGasUsage[] }>()\r\n);\r\nexport const getHeaterRecordsFailure = createAction(\r\n '[Heaters Data] Get Heater Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const saveHeatersRecord = createAction(\r\n '[Heaters Data] Save Heaters Record',\r\n props<{ date: string; payload: GasUsageInputSavePayload }>()\r\n);\r\nexport const saveHeatersRecordSuccess = createAction(\r\n '[Heaters Data] Save Heaters Record Success'\r\n);\r\nexport const saveHeatersRecordFailure = createAction(\r\n '[Heaters Data] Save Heaters Record Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const updateHeatersRecords = createAction(\r\n '[Heaters] Update Heaters Record',\r\n props<{ date: string; payload: HeaterGasUsageSavePayload[] }>()\r\n);\r\nexport const updateHeatersRecordsSuccess = createAction(\r\n '[Heaters] Update Heaters Record Success'\r\n);\r\nexport const updateHeatersRecordsFailure = createAction(\r\n '[Heaters] Update Heaters Record Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const updateHeaterMotohours = createAction(\r\n '[Heater Gas Usage] Reset Heater Motohours',\r\n props<{ date: string; payload: HeaterGasUsageInputSavePayload }>()\r\n);\r\nexport const updateHeaterMotohoursSuccess = createAction(\r\n '[Heater Gas Usage] Reset Heater Motohours Success'\r\n);\r\nexport const updateHeaterMotohoursFailure = createAction(\r\n '[Heater Gas Usage] Reset Heater Motohours Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const bulkResetHeaterRecords = createAction(\r\n '[Boiler Gas Usage] Bulk Reset Heater Records',\r\n props<{ date: string; payload: GasUsageInputSavePayload[] }>()\r\n);\r\nexport const bulkResetHeaterRecordsSuccess = createAction(\r\n '[Boiler Gas Usage] Bulk Reset Heater Records Success'\r\n);\r\nexport const bulkResetHeaterRecordsFailure = createAction(\r\n '[Boiler Gas Usage] Bulk Reset Heater Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\n// Meters\r\nexport const getMetersRecords = createAction(\r\n '[Meters Data] Get Meters Records',\r\n props<{ date: string }>()\r\n);\r\nexport const getMetersRecordsSuccess = createAction(\r\n '[Meters Data] Get Meters Records Success',\r\n props<{ payload: Meters[] }>()\r\n);\r\nexport const getMetersRecordsFailure = createAction(\r\n '[Meters Data] Get Meters Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const saveMetersRecords = createAction(\r\n '[Meters Data] Save Meters Records',\r\n props<{ date: string; payload: MetersSavePayload[] }>()\r\n);\r\nexport const saveMetersRecordsSuccess = createAction(\r\n '[Meters Data] Save Meters Records Success'\r\n);\r\nexport const saveMetersRecordsFailure = createAction(\r\n '[Meters Data] Save Meters Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const updateMetersRecords = createAction(\r\n '[Meters Data] Update Meters Records',\r\n props<{ date: string; payload: MetersUpdatePayload }>()\r\n);\r\nexport const updateMetersRecordsSuccess = createAction(\r\n '[Meters Data] Update Meters Records Success'\r\n);\r\nexport const updateMetersRecordsFailure = createAction(\r\n '[Meters Data] Update Meters Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const resetMetersData = createAction(\r\n '[Meters Data] Reset Meters Table Data',\r\n props<{ date: string; payload: MetersUpdatePayload }>()\r\n);\r\nexport const resetMetersDataSuccess = createAction(\r\n '[Meters Data] Reset Meters Table Data Success'\r\n);\r\nexport const resetMetersDataFailure = createAction(\r\n '[Meters Data] Reset Meters Table Data Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\n// Total table records\r\nexport const getTotalTableRecords = createAction(\r\n '[Total Table Records] Get Total Table Records',\r\n props<{ date: string }>()\r\n);\r\nexport const getTotalTableRecordsSuccess = createAction(\r\n '[Total Table Records] Get Total Table Records Success',\r\n props<{ payload: TotalTableRecords }>()\r\n);\r\nexport const getTotalTableRecordsFailure = createAction(\r\n '[Total Table Records] Get Total Table Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\n// IBMOA\r\nexport const getIBMOARecords = createAction(\r\n '[IBMOA] Get IBMOA Records',\r\n props<{ date: string }>()\r\n);\r\nexport const getIBMOARecordsSuccess = createAction(\r\n '[IBMOA] Get IBMOA Records Success',\r\n props<{ payload: IBMOA | null }>()\r\n);\r\nexport const getIBMOARecordsFailure = createAction(\r\n '[IBMOA] Get IBMOA Records Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const saveIBMOARecord = createAction(\r\n '[IBMOA] Save IBMOA Record',\r\n props<{ date: string; payload: IBMOASavePayload }>()\r\n);\r\nexport const saveIBMOARecordSuccess = createAction(\r\n '[IBMOA] Save IBMOA Record Success'\r\n);\r\nexport const saveIBMOARecordFailure = createAction(\r\n '[IBMOA] Save IBMOA Record Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\n// Monthly report\r\nexport const getMonthlyReports = createAction(\r\n '[Monthly Report] Get Monthly Reports',\r\n props<{ date: string }>()\r\n);\r\nexport const getMonthlyReportsSuccess = createAction(\r\n '[Monthly Report] Get Monthly Reports Success',\r\n props<{ payload: MonthlyReport | null }>()\r\n);\r\nexport const getMonthlyReportsFailure = createAction(\r\n '[Monthly Report] Get Monthly Reports Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const saveMonthlyReportComments = createAction(\r\n '[Monthly Report] Save Monthly Report Comments',\r\n props<{ date: string; payload: MonthlyReportCommentPayload }>()\r\n);\r\nexport const saveMonthlyReportCommentsSuccess = createAction(\r\n '[Monthly Report] Save Monthly Report Comments Success'\r\n);\r\nexport const saveMonthlyReportCommentsFailure = createAction(\r\n '[Monthly Report] Save Monthly Report Comments Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\n// Approve\r\nexport const getMonthlyApproveTimestamp = createAction(\r\n '[Monthly Report] Get Approve Monthly Report',\r\n props<{ date: string }>()\r\n);\r\nexport const getMonthlyApproveTimestampSuccess = createAction(\r\n '[Monthly Report] Get Approve Monthly Report Success',\r\n props<{ payload: string }>()\r\n);\r\nexport const getMonthlyApproveTimestampFailure = createAction(\r\n '[Monthly Report] Get Approve Monthly Report Failure',\r\n props<{ error: string }>()\r\n);\r\n\r\nexport const approveMonthlyReport = createAction(\r\n '[Monthly Report] Approve Monthly Report',\r\n props<{ date: string }>()\r\n);\r\nexport const approveMonthlyReportSuccess = createAction(\r\n '[Monthly Report] Approve Monthly Report Success'\r\n);\r\nexport const approveMonthlyReportFailure = createAction(\r\n '[Monthly Report] Approve Monthly Report Failure',\r\n props<{ error: string }>()\r\n);\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { ProductionGasBalanceService } from '../services/production-gas-balance.service';\r\nimport { CommonService } from 'src/app/core/services/common/common.service';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { DatePipe } from '@angular/common';\r\nimport { ModalService } from 'src/app/core/services/dynamictools/modal.service';\r\nimport { DeleteOverrideRecord } from '../state/ktl-fgd-fuel-gas.actions';\r\n\r\n@Component({\r\n selector: 'app-fuel-gas-edit',\r\n templateUrl: './fuel-gas-edit.component.html',\r\n styleUrls: ['./fuel-gas-edit.component.scss'],\r\n})\r\nexport class FuelGasEditComponent implements OnInit {\r\n FuelGasEditForm: FormGroup;\r\n item: string = '';\r\n\r\n elementName: string = '';\r\n totalVolume: string = '';\r\n\r\n constructor(\r\n private store: Store,\r\n private fb: FormBuilder,\r\n private sharedService: ProductionGasBalanceService,\r\n private commonService: CommonService,\r\n private modalService: ModalService,\r\n private dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) private data: any\r\n ) {\r\n this.FuelGasEditForm = this.fb.group({\r\n elementName: [this.data.elementName, { disabled: true }],\r\n totalVolume: [this.data.totalVolume, Validators.required],\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.FuelGasEditForm.value.elementName;\r\n // this.FuelGasEditForm.value.totalVolume;\r\n\r\n this.FuelGasEditForm = this.fb.group({\r\n elementName: [{ value: this.data.elementName, disabled: true }],\r\n totalVolume: [this.data.totalVolume, Validators.required],\r\n });\r\n }\r\n\r\n handleSave() {\r\n // const body: KTLSGPSO2RecordDTO = new KTLSGPSO2RecordDTO();\r\n // const vals = this.So2EmissionsSgpEditForm.value;\r\n // if (this.So2EmissionsSgpEditForm.valid) {\r\n // (body.startTime = vals.timeStamp),\r\n // (body.totalVolumeSGP = vals.totalVolumeSGP),\r\n // (body.inputCommentSGP = vals.inputCommentSGP);\r\n // body.plant = 1;\r\n // this.store.dispatch(SO2EmissionsEdit(body));\r\n // }\r\n console.log('form', this.FuelGasEditForm.value, this.data);\r\n\r\n this.dialogRef.close(this.FuelGasEditForm.value);\r\n }\r\n\r\n handleDelete() {\r\n //id: number\r\n this.modalService.openDeleteConfirmationDialog().then((result: boolean) => {\r\n if (result) {\r\n // User confirmed deletion, implement your delete logic here.\r\n this.store.dispatch(\r\n DeleteOverrideRecord({\r\n streamId: this.data.streamId,\r\n startTime: new Date(this.data.timeStamp),\r\n })\r\n );\r\n\r\n this.dialogRef.close();\r\n }\r\n });\r\n }\r\n\r\n formatDate(date: Date): string {\r\n const datePipe = new DatePipe('en-US');\r\n return datePipe.transform(date, 'dd MMMM yyyy') || ''; // Returns an empty string if the transformation fails\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { FuelGasEditComponent } from '../fuel-gas-edit/fuel-gas-edit.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { SharedSaveConfirmationComponent } from 'src/app/shared/components/shared-save-confirmation/shared-save-confirmation.component';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\n\r\nexport class ProductionGasBalanceService {\r\n private data: any = {\r\n Day: {},\r\n Month: {},\r\n };\r\n\r\n constructor(\r\n private dialog: MatDialog\r\n ) {}\r\n\r\n getPeriods() {\r\n return Object.keys(this.data);\r\n }\r\n\r\n private selectedOptionSource = new BehaviorSubject('Day');\r\n\r\n selectedOption$ = this.selectedOptionSource.asObservable();\r\n\r\n setSelectedOption(option: string) {\r\n this.selectedOptionSource.next(option);\r\n }\r\n\r\n private selectedMonthSource = new BehaviorSubject(new Date());\r\n\r\n selectedMonth$ = this.selectedMonthSource.asObservable();\r\n\r\n setSelectedMonth(month: Date) {\r\n this.selectedMonthSource.next(month);\r\n }\r\n\r\n public selectedDateSource = new BehaviorSubject(new Date());\r\n\r\n selectedDate$ = this.selectedDateSource.asObservable();\r\n\r\n setSelectedDate(date: Date) {\r\n this.selectedDateSource.next(date);\r\n }\r\n\r\n openEditDialog(data: any) {\r\n const dialogRef = this.dialog.open(FuelGasEditComponent, {\r\n width: '500px',\r\n data: data,\r\n });\r\n return dialogRef.afterClosed();\r\n }\r\n\r\n openSaveDialog() {\r\n const dialogRef = this.dialog.open(SharedSaveConfirmationComponent, {\r\n width: '500px',\r\n data: { action: 'Save' }\r\n });\r\n return dialogRef.afterClosed();\r\n }\r\n\r\n openRefreshDialog() {\r\n const dialogRef = this.dialog.open(SharedSaveConfirmationComponent, {\r\n width: '500px',\r\n data: { action: 'Refresh' }\r\n });\r\n return dialogRef.afterClosed();\r\n }\r\n}","import { createAction, props } from '@ngrx/store';\r\nimport { FileResponse, DailyReportInputRecordDTO, MonthlyInputRecordDTO, CalculatedStreamDTO, KTLFGDOverrideRecordDTO } from 'src/app/web-api-client';\r\n\r\nexport const getDailyFuelGas = createAction(\r\n '[KTL] Get Daily Fuel Gas',\r\n props<{ startTime: Date}>()\r\n);\r\nexport const getDailyFuelGasSuccess = createAction(\r\n '[KTL] Get Daily Fuel Gas Success',\r\n props<{ data: CalculatedStreamDTO[] }>()\r\n);\r\nexport const getDailyFuelGasFailure = createAction(\r\n '[KTL] Get Daily Fuel Gas Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\n// export const getMonthlyFuelGas = createAction(\r\n// '[KTL] Get Monthly Fuel Gas',\r\n// props<{ startTime: Date }>()\r\n// );\r\n// export const getMonthlyFuelGasSuccess = createAction(\r\n// '[KTL] Get Monthly Fuel Gas Success',\r\n// props<{ data: CalculatedStreamDTO[] }>()\r\n// );\r\n// export const getMonthlyFuelGasFailure = createAction(\r\n// '[KTL] Get Monthly Fuel Gas Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const AddDailyManualRecord = createAction(\r\n// '[KTL] Add Daily Manual Record',\r\n// props()\r\n// );\r\n// export const AddDailyManualRecordSuccess = createAction(\r\n// '[KTL] Add Daily Manual Record Success',\r\n// props()\r\n// );\r\n// export const AddDailyManualRecordFailure = createAction(\r\n// '[KTL] Add Daily Manual Record Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const AddMonthlyManualRecord = createAction(\r\n// '[KTL] Add Monthly Manual Record',\r\n// props()\r\n// );\r\n// export const AddMonthlyManualRecordSuccess = createAction(\r\n// '[KTL] Add Monthly Manual Record Success',\r\n// props()\r\n// );\r\n// export const AddMonthlyManualRecordFailure = createAction(\r\n// '[KTL] Add Monthly Manual Record Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const AddOverrideManualRecord = createAction(\r\n// '[KTL] Add Override Manual Record',\r\n// props<{props: KTLFGDOverrideRecordDTO}>()\r\n// );\r\n// export const AddOverrideManualRecordSuccess = createAction(\r\n// '[KTL] Add Override Manual Record Success',\r\n// props()\r\n// );\r\n// export const AddOverrideManualRecordFailure = createAction(\r\n// '[KTL] Add Override Manual Record Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\nexport const AddOverrideManualRecords = createAction(\r\n '[KTL] Add Override Manual Records',\r\n props<{date: Date; props: KTLFGDOverrideRecordDTO[]}>()\r\n);\r\nexport const AddOverrideManualRecordsSuccess = createAction(\r\n '[KTL] Add Override Manual Records Success',\r\n props()\r\n);\r\nexport const AddOverrideManualRecordsFailure = createAction(\r\n '[KTL] Add Override Manual Records Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getIsDailyRecordExist = createAction(\r\n '[KTL] Get Is Daily Record Exist',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const getIsDailyRecordExistSuccess = createAction(\r\n '[KTL] Get Is Daily Record Exist Success',\r\n props<{ isDailyRecordExistdata: boolean }>()\r\n);\r\nexport const getIsDailyRecordExistFailure = createAction(\r\n '[KTL] Get Is Daily Record Exist Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const DeleteOverrideRecord = createAction(\r\n '[KTL] Override Record Delete',\r\n props<{ streamId: number; startTime: Date }>()\r\n);\r\nexport const DeleteOverrideRecordSuccess = createAction(\r\n '[KTL] Override Record Delete Success',\r\n props()\r\n);\r\nexport const DeleteOverrideRecordFailure = createAction(\r\n '[KTL] Override Record Delete Failure',\r\n props<{ message: string }>()\r\n);","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n concatMap,\r\n toArray,\r\n} from 'rxjs/operators';\r\nimport { from, of } from 'rxjs';\r\nimport * as FuelGasActions from './ktl-fgd-fuel-gas.actions';\r\nimport * as notificationActions from '../../../../../../../state/notification/notification.action';\r\nimport { KTLFGDClient } from '../../../../../../../web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\nimport { ProductionGasBalanceService } from '../services/production-gas-balance.service';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class KTLFGDFuelGasEffects {\r\n constructor(\r\n private actions: Actions,\r\n private ktlfgdClient: KTLFGDClient,\r\n private store: Store,\r\n private dataService: ProductionGasBalanceService,\r\n ) {}\r\n\r\n dailyFuelGas = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.getDailyFuelGas),\r\n exhaustMap((action) => {\r\n return this.ktlfgdClient\r\n .getDailyRecords(new Date(action.startTime))\r\n .pipe(\r\n map((res) => FuelGasActions.getDailyFuelGasSuccess({ data: res })),\r\n catchError((err) => of(FuelGasActions.getDailyFuelGasFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n isDailyRequestExist = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.getIsDailyRecordExist),\r\n exhaustMap((action) => {\r\n return this.ktlfgdClient\r\n .isDailyRecordsExist(new Date(action.startTime))\r\n .pipe(\r\n map((res) =>\r\n FuelGasActions.getIsDailyRecordExistSuccess({\r\n isDailyRecordExistdata: res,\r\n })\r\n ),\r\n catchError((err) =>\r\n of(FuelGasActions.getIsDailyRecordExistFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n // monthlyFuelGas = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(FuelGasActions.getMonthlyFuelGas),\r\n // exhaustMap((action) => {\r\n // return this.ktlfgdClient\r\n // .getMonthlyRecords(new Date(action.startTime))\r\n // .pipe(\r\n // map((res) =>\r\n // FuelGasActions.getMonthlyFuelGasSuccess({ data: res })\r\n // ),\r\n // catchError((err) =>\r\n // of(FuelGasActions.getMonthlyFuelGasFailure(err))\r\n // )\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n // addDailyManualRecord = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(FuelGasActions.AddDailyManualRecord),\r\n // exhaustMap((action) => {\r\n // return this.ktlfgdClient.addManualRecord(action).pipe(\r\n // concatMap((res) => [\r\n // FuelGasActions.AddDailyManualRecordSuccess(res),\r\n // FuelGasActions.getDailyFuelGas({\r\n // startTime: action.startTime,\r\n // }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(FuelGasActions.AddDailyManualRecordFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n // addMonthlyManualRecord = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(FuelGasActions.AddMonthlyManualRecord),\r\n // exhaustMap((action) => {\r\n // return this.ktlfgdClient.addMonthlyManualRecord(action).pipe(\r\n // concatMap((res) => [\r\n // FuelGasActions.AddMonthlyManualRecordSuccess(res),\r\n // FuelGasActions.getDailyFuelGas({\r\n // startTime: action.startTime,\r\n // }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(FuelGasActions.AddMonthlyManualRecordFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n // addOverrideManualRecord = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(FuelGasActions.AddOverrideManualRecord),\r\n // exhaustMap((action) => {\r\n // return this.ktlfgdClient.overrideManualRecord(action.props).pipe(\r\n // concatMap((res) => [\r\n // FuelGasActions.AddOverrideManualRecordSuccess(res),\r\n // FuelGasActions.getDailyFuelGas({\r\n // startTime: action.props.startTime,\r\n // }),\r\n // FuelGasActions.getIsDailyRecordExist({\r\n // startTime: action.props.startTime,\r\n // }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(FuelGasActions.AddOverrideManualRecordFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n addOverrideManualRecords = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.AddOverrideManualRecords),\r\n exhaustMap((action) => {\r\n const startTime = action.date;\r\n const req$ = from(action.props).pipe(\r\n concatMap(\r\n prop => this.ktlfgdClient.overrideManualRecord(prop)\r\n )\r\n );\r\n\r\n this.store.dispatch(notificationActions.startLoading())\r\n\r\n return req$.pipe(\r\n toArray(),\r\n concatMap((res) => [\r\n FuelGasActions.AddOverrideManualRecordsSuccess(res),\r\n FuelGasActions.getDailyFuelGas({ startTime }),\r\n FuelGasActions.getIsDailyRecordExist({ startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n notificationActions.stopLoading(),\r\n ]),\r\n catchError((err) => [\r\n of(FuelGasActions.AddOverrideManualRecordsFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n notificationActions.stopLoading(),\r\n ])\r\n );\r\n }),\r\n )\r\n );\r\n\r\n deleteOverrideRecord = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.DeleteOverrideRecord),\r\n exhaustMap((action) => {\r\n return this.ktlfgdClient\r\n .deleteOverrideRecord(action.streamId, action.startTime)\r\n .pipe(\r\n concatMap((res) => [\r\n FuelGasActions.getDailyFuelGas({\r\n startTime: this.dataService.selectedDateSource?.value ?? new Date(),\r\n }),\r\n FuelGasActions.DeleteOverrideRecordSuccess(res),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(FuelGasActions.DeleteOverrideRecordFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as FuelGasActions from './ktl-fgd-fuel-gas.actions';\r\nimport { CalculatedStreamDTO } from 'src/app/web-api-client';\r\n\r\nexport interface KTLFGDFuelGasState{\r\n data: CalculatedStreamDTO[] | null ;\r\n isDailyRecordExistdata: boolean | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: KTLFGDFuelGasState = {\r\n data: null,\r\n isDailyRecordExistdata: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const KTLFGDFuelGasReducer = createReducer(\r\n initialState,\r\n on(FuelGasActions.getDailyFuelGas, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FuelGasActions.getDailyFuelGasSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n // isDailyRecordExistdata: null,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FuelGasActions.getDailyFuelGasFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n // on(FuelGasActions.getMonthlyFuelGas, (state, result) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(FuelGasActions.getMonthlyFuelGasSuccess, (state, result) => ({\r\n // ...state,\r\n // data: result.data,\r\n // isDailyRecordExistdata: null,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // isLoadingFailure: false,\r\n // })),\r\n // on(FuelGasActions.getMonthlyFuelGasFailure, (state, result) => ({\r\n // ...state,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // })),\r\n // on(FuelGasActions.AddDailyManualRecord, (state, payload) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(FuelGasActions.AddDailyManualRecordSuccess, (state, payload) => ({\r\n // ...state,\r\n // result: payload,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // })),\r\n // on(FuelGasActions.AddDailyManualRecordFailure, (state, payload) => ({\r\n // ...state,\r\n // result: payload.message,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // })),\r\n // on(FuelGasActions.AddMonthlyManualRecord, (state, payload) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(FuelGasActions.AddMonthlyManualRecordSuccess, (state, payload) => ({\r\n // ...state,\r\n // result: payload,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // })),\r\n // on(FuelGasActions.AddMonthlyManualRecordFailure, (state, payload) => ({\r\n // ...state,\r\n // result: payload.message,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // })),\r\n // on(FuelGasActions.AddOverrideManualRecord, (state, payload) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(FuelGasActions.AddOverrideManualRecordSuccess, (state, payload) => ({\r\n // ...state,\r\n // result: payload,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // })),\r\n // on(FuelGasActions.AddOverrideManualRecordFailure, (state, payload) => ({\r\n // ...state,\r\n // result: payload.message,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // })),\r\n on(FuelGasActions.getIsDailyRecordExist, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FuelGasActions.getIsDailyRecordExistSuccess, (state, result) => ({\r\n ...state,\r\n // data: null,\r\n isDailyRecordExistdata: result.isDailyRecordExistdata,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FuelGasActions.getIsDailyRecordExistFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FuelGasActions.DeleteOverrideRecord, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n // on(FuelGasActions.DeleteOverrideRecordSuccess, (state, result) => ({\r\n // data: result.data,\r\n // isDailyRecordExistdata: null,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // isLoadingFailure: false\r\n // })),\r\n on(FuelGasActions.DeleteOverrideRecordFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);","import { createAction, props } from '@ngrx/store';\r\nimport { SGPFGDCalculatedDTO, SGPFGDInputRecordDTO, SGPFGDOverrideRecordDTO } from 'src/app/web-api-client';\r\n\r\nexport const getDailyFuelGas = createAction(\r\n '[SGP] Get Daily Fuel Gas',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const getDailyFuelGasSuccess = createAction(\r\n '[SGP] Get Daily Fuel Gas Success',\r\n props<{ data: SGPFGDCalculatedDTO[] }>()\r\n);\r\nexport const getDailyFuelGasFailure = createAction(\r\n '[SGP] Get Daily Fuel Gas Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getIsDailyRecordExist = createAction(\r\n '[SGP] Get Is Daily Record Exist',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const getIsDailyRecordExistSuccess = createAction(\r\n '[SGP] Get Is Daily Record Exist Success',\r\n props<{ isDailyRecordExistdata: boolean }>()\r\n);\r\nexport const getIsDailyRecordExistFailure = createAction(\r\n '[SGP] Get Is Daily Record Exist Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getMonthlyFuelGas = createAction(\r\n '[SGP] Get Monthly Fuel Gas',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const getMonthlyFuelGasSuccess = createAction(\r\n '[SGP] Get Monthly Fuel Gas Success',\r\n props<{ data: SGPFGDCalculatedDTO[] }>()\r\n);\r\nexport const getMonthlyFuelGasFailure = createAction(\r\n '[SGP] Get Monthly Fuel Gas Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const FGDSGPManualRecord = createAction(\r\n '[SGP] Manual Record',\r\n props()\r\n);\r\nexport const FGDSGPManualRecordSuccess = createAction(\r\n '[SGP] Manual Record Success',\r\n props()\r\n);\r\nexport const FGDSGPManualRecordFailure = createAction(\r\n '[SGP] Manual Record Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const AddOverrideManualRecord = createAction(\r\n '[SGP] Add Override Manual Record',\r\n props<{props: SGPFGDOverrideRecordDTO}>()\r\n);\r\nexport const AddOverrideManualRecordSuccess = createAction(\r\n '[SGP] Add Override Manual Record Success',\r\n props()\r\n);\r\nexport const AddOverrideManualRecordFailure = createAction(\r\n '[SGP] Add Override Manual Record Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const AddOverrideManualRecords = createAction(\r\n '[SGP] Add Override Manual Records',\r\n props<{date: Date; props: SGPFGDOverrideRecordDTO[]}>()\r\n);\r\nexport const AddOverrideManualRecordsSuccess = createAction(\r\n '[SGP] Add Override Manual Records Success',\r\n props()\r\n);\r\nexport const AddOverrideManualRecordsFailure = createAction(\r\n '[SGP] Add Override Manual Records Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const DeleteOverrideRecord = createAction(\r\n '[SGP] Override Record Delete',\r\n props<{ streamId: number; startTime: Date }>()\r\n);\r\nexport const DeleteOverrideRecordSuccess = createAction(\r\n '[SGP] Override Record Delete Success',\r\n props()\r\n);\r\nexport const DeleteOverrideRecordFailure = createAction(\r\n '[SGP] Override Record Delete Failure',\r\n props<{ message: string }>()\r\n);","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n concatMap,\r\n withLatestFrom,\r\n toArray,\r\n} from 'rxjs/operators';\r\nimport { from, of } from 'rxjs';\r\nimport * as FuelGasActions from './fuel-gas.actions';\r\nimport * as notificationActions from '../../../../../../../state/notification/notification.action';\r\nimport { SGPFGDClient } from '../../../../../../../web-api-client';\r\nimport { SGPFGDCalculatedDTO } from 'src/app/web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FuelGasEffects {\r\n constructor(\r\n private actions: Actions,\r\n private sgpfgdClient: SGPFGDClient,\r\n private store: Store\r\n ) {}\r\n\r\n dailyFuelGas = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.getDailyFuelGas),\r\n exhaustMap((action) => {\r\n return this.sgpfgdClient\r\n .getDailyRecords(new Date(action.startTime))\r\n .pipe(\r\n map((res) =>\r\n FuelGasActions.getDailyFuelGasSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(FuelGasActions.getDailyFuelGasFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n isDailyRequestExist = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.getIsDailyRecordExist),\r\n exhaustMap((action) => {\r\n return this.sgpfgdClient\r\n .isDailyRecordsExist(new Date(action.startTime))\r\n .pipe(\r\n map((res) =>\r\n FuelGasActions.getIsDailyRecordExistSuccess({ isDailyRecordExistdata: res })\r\n ),\r\n catchError((err) =>\r\n of(FuelGasActions.getIsDailyRecordExistFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n monthlyFuelGas = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.getMonthlyFuelGas),\r\n exhaustMap((action) => {\r\n return this.sgpfgdClient\r\n .getMonthlyRecords(new Date(action.startTime))\r\n .pipe(\r\n map((res) =>\r\n FuelGasActions.getMonthlyFuelGasSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(FuelGasActions.getMonthlyFuelGasFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n ManualRecord = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.FGDSGPManualRecord),\r\n exhaustMap((action) => {\r\n return this.sgpfgdClient.addManualRecord(action).pipe(\r\n concatMap((res) => [\r\n FuelGasActions.FGDSGPManualRecordSuccess(res),\r\n FuelGasActions.getDailyFuelGas({\r\n startTime: action.startTime\r\n }),\r\n FuelGasActions.getIsDailyRecordExist({\r\n startTime: action.startTime\r\n }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(FuelGasActions.FGDSGPManualRecordFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n addOverrideManualRecord = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.AddOverrideManualRecord),\r\n exhaustMap((action) => {\r\n return this.sgpfgdClient.overrideManualRecord(action.props).pipe(\r\n concatMap((res) => [\r\n FuelGasActions.AddOverrideManualRecordSuccess(res),\r\n FuelGasActions.getDailyFuelGas({ startTime: action.props.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(FuelGasActions.AddOverrideManualRecordFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n addOverrideManualRecords = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.AddOverrideManualRecords),\r\n exhaustMap((action) => {\r\n const startTime = action.date;\r\n const req$ = from(action.props).pipe(\r\n concatMap(\r\n prop => this.sgpfgdClient.overrideManualRecord(prop),\r\n prop => this.sgpfgdClient.getDailyRecords( startTime )\r\n )\r\n );\r\n\r\n this.store.dispatch(notificationActions.startLoading())\r\n\r\n return req$.pipe(\r\n toArray(),\r\n concatMap((res) => [\r\n FuelGasActions.AddOverrideManualRecordsSuccess(res),\r\n FuelGasActions.getDailyFuelGas({ startTime }),\r\n FuelGasActions.getIsDailyRecordExist({ startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n notificationActions.stopLoading(),\r\n ]),\r\n catchError((err) => [\r\n of(FuelGasActions.AddOverrideManualRecordFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n notificationActions.stopLoading(),\r\n ])\r\n );\r\n }),\r\n )\r\n );\r\n \r\n\r\n deleteOverrideRecord = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FuelGasActions.DeleteOverrideRecord),\r\n exhaustMap((action) => {\r\n return this.sgpfgdClient.deleteOverrideRecord(action.streamId, action.startTime).pipe(\r\n concatMap((res) => [\r\n FuelGasActions.DeleteOverrideRecordSuccess(res),\r\n FuelGasActions.getDailyFuelGas({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(FuelGasActions.DeleteOverrideRecordFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n);\r\n\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as FuelGasActions from './fuel-gas.actions';\r\nimport { SGPFGDCalculatedDTO } from 'src/app/web-api-client';\r\n\r\nexport interface FuelGasState{\r\n data: SGPFGDCalculatedDTO[] | null; \r\n isDailyRecordExistdata: boolean | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: FuelGasState = {\r\n data: null,\r\n isDailyRecordExistdata: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const FuelGasReducer = createReducer(\r\n initialState,\r\n on(FuelGasActions.getDailyFuelGas, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FuelGasActions.getDailyFuelGasSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FuelGasActions.getDailyFuelGasFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FuelGasActions.getIsDailyRecordExist, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FuelGasActions.getIsDailyRecordExistSuccess, (state, result) => ({\r\n //data: null,\r\n ...state,\r\n isDailyRecordExistdata: result.isDailyRecordExistdata,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FuelGasActions.getIsDailyRecordExistFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FuelGasActions.getMonthlyFuelGas, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FuelGasActions.getMonthlyFuelGasSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n // isDailyRecordExistdata: null,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FuelGasActions.getMonthlyFuelGasFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FuelGasActions.FGDSGPManualRecord, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FuelGasActions.FGDSGPManualRecordSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(FuelGasActions.FGDSGPManualRecordFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FuelGasActions.AddOverrideManualRecord, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FuelGasActions.AddOverrideManualRecordSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(FuelGasActions.AddOverrideManualRecordFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(FuelGasActions.DeleteOverrideRecord, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(FuelGasActions.DeleteOverrideRecordSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n // isDailyRecordExistdata: null,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false\r\n })),\r\n on(FuelGasActions.DeleteOverrideRecordFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n \r\n);","import { createAction, props } from '@ngrx/store';\r\nimport { GURInputRecordDTO, GetGURDTO } from 'src/app/web-api-client';\r\n\r\nexport const getGUR = createAction(\r\n '[SGP] Get GUR',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const getGURSuccess = createAction(\r\n '[SGP] Get GUR Success',\r\n props<{ data: GetGURDTO}>()\r\n);\r\nexport const getGURFailure = createAction(\r\n '[SGP] Get GUR Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const FGDSGPGURManualRecord = createAction(\r\n '[SGP] GUR Manual Record',\r\n props<{props: GURInputRecordDTO}>()\r\n);\r\nexport const FGDSGPGURManualRecordSuccess = createAction(\r\n '[SGP] GUR Manual Record Success',\r\n props()\r\n);\r\nexport const FGDSGPGURManualRecordFailure = createAction(\r\n '[SGP] GUR Manual Record Failure',\r\n props<{ message: string }>()\r\n);","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n concatMap,\r\n withLatestFrom,\r\n toArray,\r\n} from 'rxjs/operators';\r\nimport { from, of } from 'rxjs';\r\nimport * as GURActions from './gas-usage-report.actions';\r\nimport * as notificationActions from '../../../../../../../state/notification/notification.action';\r\nimport { SGPFGDClient } from '../../../../../../../web-api-client';\r\nimport { SGPFGDCalculatedDTO } from 'src/app/web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class GUREffects {\r\n constructor(\r\n private actions: Actions,\r\n private sgpfgdClient: SGPFGDClient,\r\n private store: Store\r\n ) {}\r\n\r\n getGUR = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(GURActions.getGUR),\r\n exhaustMap((action) => {\r\n return this.sgpfgdClient\r\n .getGUR(new Date(action.startTime))\r\n .pipe(\r\n map((res) =>\r\n GURActions.getGURSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(GURActions.getGURFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n ManualRecord = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(GURActions.FGDSGPGURManualRecord),\r\n exhaustMap((action) => {\r\n return this.sgpfgdClient.postGUR(action.props).pipe(\r\n concatMap((res) => [\r\n GURActions.FGDSGPGURManualRecordSuccess(res),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(GURActions.FGDSGPGURManualRecordFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as GURActions from './gas-usage-report.actions';\r\nimport { GetGURDTO } from 'src/app/web-api-client';\r\n\r\nexport interface GURState{\r\n data: GetGURDTO | null; \r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: GURState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const GURReducer = createReducer(\r\n initialState,\r\n on(GURActions.getGUR, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(GURActions.getGURSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(GURActions.getGURFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(GURActions.FGDSGPGURManualRecord, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(GURActions.FGDSGPGURManualRecordSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(GURActions.FGDSGPGURManualRecordFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'FD',\r\n loadChildren: () => import('./fd/fd.module').then((m) => m.FDModule),\r\n },\r\n {\r\n path: 'FGD',\r\n loadChildren: () => import('./fgd/fgd.module').then((m) => m.FgdModule),\r\n }\r\n];\r\n\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class ProcessEngRoutingModule {}\r\n","import { AfterViewInit, Component, OnInit} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { FlatTreeControl } from '@angular/cdk/tree';\r\nimport { MatTreeFlatDataSource, MatTreeFlattener } from '@angular/material/tree';\r\nimport { MatTreeNestedDataSource } from '@angular/material/tree';\r\nimport { NestedTreeControl } from '@angular/cdk/tree';\r\n\r\n@Component({\r\n selector: 'app-tco-map',\r\n templateUrl: './tco-map.component.html',\r\n styleUrls: ['./tco-map.component.scss'],\r\n})\r\nexport class TCOMapComponent { \r\n\r\n constructor(private router: Router) {}\r\n\r\n navigateTo(route: string): void {\r\n if (route) {\r\n this.router.navigate([route]);\r\n }\r\n }\r\n\r\n}","\r\n\r\n
\r\n \r\n \r\n \r\n \r\n Flare&Fuel Gas ​Dashboard for Field​\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n KTL\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n Flare​ Dashboard​ for KTL​​\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n Fuel Gas​ Dashboard​ For KTL​\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n Flare&Fuel Gas Dashboard for LPG​\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n Fuel Gas Dashboard for​ Internal Usage​\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n SGP\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n Flare​ Dashboard​ for SGP\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n Fuel Gas​ Dashboard​ For SGP\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n SGI Dashboard​\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n SO2 Emissions​ Dashboard​\r\n \r\n \r\n
","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\n\r\nconst routes: Routes = [];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class TCORoutingModule {}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { FlatTreeControl } from '@angular/cdk/tree';\r\nimport {\r\n MatTreeFlatDataSource,\r\n MatTreeFlattener,\r\n} from '@angular/material/tree';\r\nimport { MatTreeNestedDataSource } from '@angular/material/tree';\r\nimport { NestedTreeControl } from '@angular/cdk/tree';\r\n\r\n@Component({\r\n selector: 'app-tco',\r\n templateUrl: './tco.component.html',\r\n styleUrls: ['./tco.component.scss'],\r\n})\r\nexport class TCOComponent {\r\n arr = [\r\n {\r\n id: 'FGD',\r\n name: 'FGD',\r\n route: '',\r\n items: [\r\n {\r\n id: 'FGD-KTL',\r\n name: 'KTL',\r\n expand: true,\r\n disabled: true,\r\n route: '',\r\n childs: [\r\n {\r\n id: 'FGD-KTL-PRODUCTION-GAS-BALANCE',\r\n name: 'FUEL GAS DASHBOARD',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/KTL/ProductionGasBalance',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-SGP',\r\n name: 'SGP',\r\n expand: true,\r\n disabled: true,\r\n route: '',\r\n childs: [\r\n {\r\n id: 'FGD-SGP-FUEL-GAS-DASHBOARD',\r\n name: 'FUEL GAS DASHBOARD',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/SGP/FuelGasDashboard',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-SGP-GAS-USAGE-REPORT',\r\n name: 'GAS USAGE REPORT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/SGP/GasUsageReport',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-FIELD',\r\n name: 'FIELD',\r\n route: '',\r\n expand: false,\r\n disabled: true,\r\n childs: [],\r\n },\r\n {\r\n id: 'FGD-IUS',\r\n name: 'IUS',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-IUS-INPUT',\r\n name: 'INPUT',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-INPUT-BOILERHOUSEDATA',\r\n name: 'BOILER HOUSE DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/boilers-motohours-data',\r\n },\r\n {\r\n id: 'FGD-IUS-INPUT-HEATERSDATA',\r\n name: 'HEATERS DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/heaters-motohours-data',\r\n },\r\n {\r\n id: 'FGD-IUS-INPUT-METERSDATA',\r\n name: 'METERS DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/meters-data',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS-CALCULATIONS',\r\n name: 'FUEL GAS USAGE',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-FGU-BOILER',\r\n name: 'BOILERS MOTOHOURS DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/calculations/boilers-motohours-data',\r\n },\r\n {\r\n id: 'FGD-IUS-FGU-HEATER',\r\n name: 'HEATERS MOTOHOURS DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/calculations/heaters-motohours-data',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS-MONTHLY-REPORT',\r\n name: 'MONTHLY-REPORT',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-MONTHLY-REPORT-MONTHLY-CALC',\r\n name: 'MONTHLY CALC',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/MonthlyReport/monthly-calc',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD',\r\n name: 'FD',\r\n route: '',\r\n items: [\r\n {\r\n id: 'FD-KTL',\r\n name: 'KTL',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-KTL-INPUT',\r\n name: 'INPUT',\r\n disabled: true,\r\n route: '',\r\n expand: true,\r\n schilds: [\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-FLARING',\r\n name: 'FLARING',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Flaring',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-MW',\r\n name: 'MW',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/MW',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-LEAKAGE',\r\n name: 'LEAKAGE',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Leakages',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-CONSTANTS',\r\n name: 'CONSTANTS',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Constants',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-PERMITS',\r\n name: 'PERMITS',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/TargetPermit',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-EQUIPMENT',\r\n name: 'EQUIPMENT',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-DIAGNOSTICIAN',\r\n name: 'DIAGNOSTICIAN',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Diagnostician',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-OPERATOR',\r\n name: 'OPERATOR',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/KTL/Input/Operator',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-DIAGNOSTICIAN',\r\n name: 'DIAGNOSTICIAN',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/KTL/Input/Diagnostician',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-DAILY-REPORT',\r\n name: 'DAILY REPORT',\r\n disabled: false,\r\n route: '/FD/KTL/DailyReport',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-KTL-MONTHLY-REPORT',\r\n name: 'MONTHLY REPORT',\r\n disabled: false,\r\n route: '/FD/KTL/MonthlyReport',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-KTL-SCHEMA',\r\n name: 'SCHEMA',\r\n disabled: false,\r\n route: '/FD/KTL/Schema',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-KTL-CHEMICAL-COMPOSITION',\r\n name: 'CHEMICAL COMPOSITION',\r\n disabled: false,\r\n route: '/FD/KTL/cc',\r\n expand: false,\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP',\r\n name: 'SGP',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-SGP-INPUT',\r\n name: 'INPUT',\r\n disabled: true,\r\n route: '',\r\n expand: true,\r\n schilds: [\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-FLARING',\r\n name: 'FLARING',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Flaring',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-MW',\r\n name: 'MW',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/MW',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-LEAKAGE',\r\n name: 'LEAKAGE',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Leakages',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-CONSTANTS',\r\n name: 'CONSTANTS',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Constants',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-PERMITS',\r\n name: 'PERMITS',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/TargetPermit',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-EQUIPMENT',\r\n name: 'EQUIPMENT',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-OPERATOR',\r\n name: 'OPERATOR',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-DIAGNOSTICIAN',\r\n name: 'DIAGNOSTICIAN',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-DAILY-REPORT',\r\n name: 'DAILY REPORT',\r\n disabled: false,\r\n route: '/FD/SGP/DailyReport',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGP-MONTHLY-REPORT',\r\n name: 'MONTHLY REPORT',\r\n disabled: true,\r\n route: '',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGP-SCHEMA',\r\n name: 'SCHEMA',\r\n disabled: true,\r\n route: '',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGP-CHEMICAL-COMPOSITION',\r\n name: 'CHEMICAL COMPOSITION',\r\n disabled: true,\r\n route: '',\r\n expand: false,\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGI',\r\n name: 'SGI',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-SGI-FLARE-REPORT',\r\n name: 'FLARE REPORT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/flare-report',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGI-TARGET-PERMIT',\r\n name: 'TARGET PERMIT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/target-permit',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGI-CC',\r\n name: 'CHEMICAL COMPOSITION',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/cc',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG',\r\n name: 'LPG',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-LPG-INPUT',\r\n name: 'INPUT',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FD-LPG-INPUT-TARGETPERMIT',\r\n name: 'TARGET/PERMIT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/TargetPermit',\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-OPERATOR',\r\n name: 'OPERATOR',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Operator',\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-ANALYST',\r\n name: 'ANALYST',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Analyst',\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/PE/ProcessEngineer',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG-FUEL-GAS-FLARING',\r\n name: 'FUEL GAS FLARING',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FuelGasFlaring',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-LPG-CC',\r\n name: 'CHEMICAL COMPOSITIONS',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/CC',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-LPG-FINAL-REPORT',\r\n name: 'FINAL REPORT',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FD-LPG-FINAL-REPORT-LPG-DATA',\r\n name: 'LPG DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/LPGData',\r\n },\r\n {\r\n id: 'FD-LPG-FINAL-REPORT-FLARING-REPORT',\r\n name: 'FLARING REPORT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/FlaringReport',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD',\r\n name: 'FIELD',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-FIELD-INPUT',\r\n name: 'INPUT',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FD-FIELD-INPUT-OPERATOR',\r\n name: 'OPERATOR',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-FIELD-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-FIELD-INPUT-METRICS',\r\n name: 'METRICS',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-FIELD-INPUT-PERMITS',\r\n name: 'PERMITS',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-CC',\r\n name: 'CHEMICAL COMPOSITION',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FD-FIELD-CC-FUELGAS',\r\n name: 'FUEL GAS',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-FIELD-CC-RESERVOIRGAS',\r\n name: 'RESERVOIR GAS',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-FIELD-CALC',\r\n name: 'FIELD CALC',\r\n disabled: false,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FD-FIELD-FIELD-CALC-DRY-GAS',\r\n name: 'DRY GAS',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc/dry-gas',\r\n },\r\n {\r\n id: 'FD-FIELD-FIELD-CALC-RESERVOIR-GAS',\r\n name: 'RESERVOIR GAS',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc/reservoir-gas',\r\n },\r\n {\r\n id: 'FD-FIELD-FIELD-CALC-PURGE-AND-PILOT',\r\n name: 'PURGE AND PILOT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc/purge-n-pilot',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-FINAL-REPORT',\r\n name: 'FINAL REPORT',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n schilds: [\r\n {\r\n id: 'FD-FIELD-FINAL-REPORT-GAS-BALANCE',\r\n name: 'GAS BALANCE',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-FIELD-FINAL-REPORT-FLARING-REPORT',\r\n name: 'FLARING REPORT',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'SO2-EMISSIONS',\r\n name: 'SO2 EMISSIONS',\r\n route: '',\r\n items: [\r\n {\r\n id: 'SO2-EMISSIONS-KTLSGP',\r\n name: 'SO2 EMISSIONS',\r\n disabled: false,\r\n route: 'FD/KTLSGP/So2Emissions',\r\n expand: true,\r\n childs: [\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROJECTEDDATA',\r\n name: 'PROJECTED DATA',\r\n disabled: false,\r\n route: 'FD/KTLSGP/So2Emissions/ProjectedData',\r\n expand: false,\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'PMO',\r\n name: 'PMO',\r\n route: '',\r\n items: [],\r\n },\r\n ];\r\n\r\n constructor(private router: Router) {}\r\n\r\n navigateTo(route: string): void {\r\n if (route) {\r\n this.router.navigate([route]);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n Map View\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n

{{ group.name }}

\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { CommonModule, NgFor, NgIf } from '@angular/common';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatDividerModule } from '@angular/material/divider';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { NgChartsModule } from 'ng2-charts';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport {MatTabsModule} from '@angular/material/tabs';\r\n\r\n@NgModule({\r\n imports: [NgFor, NgIf],\r\n exports: [\r\n CommonModule,\r\n MatDialogModule,\r\n MatGridListModule,\r\n MatTableModule,\r\n MatPaginatorModule,\r\n MatIconModule,\r\n MatButtonModule,\r\n MatMenuModule,\r\n MatDividerModule,\r\n MatCardModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatSelectModule,\r\n NgFor,\r\n FormsModule,\r\n NgIf,\r\n MatSortModule,\r\n NgChartsModule,\r\n MatTooltipModule,\r\n MatTabsModule,\r\n MatPaginatorModule\r\n ],\r\n})\r\nexport class MaterialModule {}\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\n\r\nimport { Chart, registerables } from 'chart.js';\r\nimport zoomPlugin from 'chartjs-plugin-zoom';\r\nimport 'chartjs-adapter-moment';\r\n\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { getChartData } from 'src/app/state/chartjs/chartjs.action';\r\nimport {\r\n chartDataSelector,\r\n chartTitleSelector,\r\n} from 'src/app/state/chartjs/chartjs.selector';\r\n\r\nimport { LPGFlowmeterValuesDTO } from 'src/app/web-api-client';\r\n\r\nimport { CommonService } from 'src/app/core/services/common/common.service';\r\n\r\nChart.register(...registerables, zoomPlugin);\r\n\r\n@Component({\r\n selector: 'app-chartjs',\r\n templateUrl: './chartjs.component.html',\r\n styleUrls: ['./chartjs.component.scss'],\r\n})\r\nexport class ChartjsComponent implements OnInit, OnDestroy {\r\n @Input() startTime: string = '';\r\n @Input() endTime: string = '';\r\n\r\n chart: any;\r\n xLabels?: number[];\r\n\r\n yLabels?: number[];\r\n title?: string = 'Flared Gas Flowmeter';\r\n data?: LPGFlowmeterValuesDTO[];\r\n\r\n initialTimeUnit = 'hour';\r\n zoomedTimeUnit = 'minute';\r\n teckStepInitial = 4;\r\n tickStepZoomed = 2;\r\n izZoomed = false;\r\n\r\n constructor(\r\n private store: Store,\r\n private commonService: CommonService\r\n ) {\r\n // this.store\r\n // .select(chartTitleSelector)\r\n // .subscribe((title) => (this.title = title));\r\n this.store.select(chartDataSelector).subscribe((data) => {\r\n this.data = data;\r\n this.xLabels = data?.map((x) => x.timeStamp.getTime());\r\n this.xLabels?.push(this.xLabels[this.xLabels.length - 1] + 60000);\r\n if (this.data) this.createChart();\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n const startTime = this.commonService.manipulateDate(this.startTime, {\r\n amount: -1,\r\n unit: 'days',\r\n time: { hours: 2, minutes: 0 },\r\n });\r\n const endTime = this.commonService.manipulateDate(this.endTime, {\r\n amount: 1,\r\n unit: 'days',\r\n time: { hours: 1, minutes: 59 },\r\n });\r\n this.store.dispatch(\r\n getChartData({\r\n startTime: startTime,\r\n endTime: endTime,\r\n graphType: 2,\r\n })\r\n );\r\n }\r\n\r\n nearestTimeRange(val: number): number {\r\n const stepSizes = [240, 120, 60, 30, 15, 10, 5, 1];\r\n let nearest = 0;\r\n let diff = 300;\r\n stepSizes.forEach((x, index) => {\r\n if (diff > Math.abs(x - val)) {\r\n nearest = index;\r\n diff = Math.abs(x - val);\r\n }\r\n });\r\n return stepSizes[nearest];\r\n }\r\n\r\n createChart() {\r\n var oldChart = Chart.getChart('MyChart');\r\n if (oldChart != undefined) oldChart.destroy();\r\n this.chart = new Chart('MyChart', {\r\n type: 'line',\r\n data: {\r\n labels: this.xLabels, //timestamp\r\n datasets: [\r\n //values\r\n {\r\n label: '80FI351043_2S.PV',\r\n data: this.data?.map((y) => y.value),\r\n // data: this.data?.map((x) => x.value),\r\n backgroundColor: 'green',\r\n borderColor: 'green',\r\n pointBackgroundColor: 'green',\r\n },\r\n ],\r\n },\r\n options: {\r\n // responsive: true,\r\n // aspectRatio: 2.5,\r\n plugins: {\r\n zoom: {\r\n pan: {\r\n enabled: true,\r\n mode: 'xy',\r\n },\r\n zoom: {\r\n wheel: {\r\n enabled: true,\r\n },\r\n pinch: {\r\n enabled: true,\r\n },\r\n onZoom: ({ chart }) => {\r\n if (chart.options.scales) {\r\n const max = chart.options.scales['x']?.max as number;\r\n const min = chart.options.scales['x']?.min as number;\r\n const newStepSize = this.nearestTimeRange(\r\n Math.floor((max - min) / 1000000)\r\n );\r\n if (chart.options.scales['x'])\r\n chart.options.scales['x'].ticks = {\r\n stepSize: newStepSize,\r\n source: 'auto',\r\n maxRotation: 90,\r\n minRotation: 90,\r\n autoSkip: true,\r\n };\r\n }\r\n },\r\n mode: 'xy',\r\n },\r\n },\r\n title: {\r\n display: true,\r\n text: this.title,\r\n },\r\n },\r\n\r\n scales: {\r\n x: {\r\n type: 'time',\r\n time: {\r\n unit: 'minute',\r\n displayFormats: {\r\n minute: 'D-MMM,HH:mm',\r\n },\r\n tooltipFormat: 'D-MMM,HH:mm',\r\n },\r\n title: {\r\n display: true,\r\n text: 'Time',\r\n },\r\n ticks: {\r\n source: 'auto',\r\n stepSize: 240,\r\n maxRotation: 90,\r\n minRotation: 90,\r\n autoSkip: true,\r\n },\r\n },\r\n y: {\r\n title: {\r\n display: true,\r\n text: 'Value',\r\n },\r\n },\r\n },\r\n },\r\n });\r\n }\r\n ngOnDestroy(): void {}\r\n}\r\n\r\n//zoom level\r\n//240\r\n//180\r\n//120\r\n//60\r\n//30\r\n//15\r\n//5\r\n//1\r\n","
\r\n {{ chart }}\r\n
\r\n","import { CommonModule } from '@angular/common';\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n Input,\r\n OnInit,\r\n forwardRef,\r\n} from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n NG_VALUE_ACCESSOR,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-checkbox',\r\n templateUrl: './checkbox.component.html',\r\n styleUrls: ['./checkbox.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => CheckboxComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class CheckboxComponent implements ControlValueAccessor {\r\n @Input()\r\n public label: string | null = null;\r\n\r\n public checkBoxControl = new FormControl(null);\r\n\r\n public onChange = (checked: boolean | null) => {};\r\n public onTouched = () => {};\r\n\r\n constructor() {\r\n this.checkBoxControl.valueChanges\r\n .pipe(takeUntilDestroyed())\r\n .subscribe((value) => {\r\n this.onChange(value);\r\n });\r\n }\r\n\r\n writeValue(checked: boolean | null): void {\r\n this.checkBoxControl.setValue(checked);\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n ngOnInit() {}\r\n}\r\n","
\r\n \r\n \r\n
\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-hint-error',\r\n templateUrl: './hint-error.component.html',\r\n styleUrls: ['./hint-error.component.scss'],\r\n})\r\nexport class HintErrorComponent {\r\n @Input()\r\n public text: string = 'The field is required.';\r\n}\r\n","
\r\n error\r\n\r\n

\r\n
\r\n","import { Component, Input, forwardRef } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n NG_VALUE_ACCESSOR,\r\n} from '@angular/forms';\r\n\r\nexport type RadioTogleOption = string | number | null;\r\n\r\n@Component({\r\n selector: 'app-radio-toggle',\r\n templateUrl: './radio-toggle.component.html',\r\n styleUrls: ['./radio-toggle.component.scss'],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => RadioToggleComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class RadioToggleComponent implements ControlValueAccessor {\r\n @Input()\r\n public label: string | null = null;\r\n\r\n @Input()\r\n public options: RadioTogleOption[] = [];\r\n\r\n // public checkedIdx: number = 0;\r\n\r\n public radioControl = new FormControl(null);\r\n\r\n public onChange = (value: RadioTogleOption) => {};\r\n\r\n public onTouched = () => {};\r\n\r\n constructor() {\r\n this.radioControl.valueChanges\r\n .pipe(takeUntilDestroyed())\r\n .subscribe((value) => {\r\n this.onChange(value);\r\n });\r\n }\r\n\r\n writeValue(value: RadioTogleOption): void {\r\n this.radioControl.setValue(value);\r\n }\r\n\r\n registerOnChange(fn: (value: RadioTogleOption) => void): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: () => void): void {\r\n this.onTouched = fn;\r\n }\r\n}\r\n","\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n Input,\r\n forwardRef,\r\n} from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n NG_VALUE_ACCESSOR,\r\n} from '@angular/forms';\r\n\r\ntype ControlType = string | number | boolean | null;\r\n\r\nexport interface SelectOption {\r\n title: string;\r\n value: ControlType;\r\n disabled?: boolean;\r\n translate?: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'app-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => SelectComponent),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class SelectComponent implements ControlValueAccessor {\r\n @Input()\r\n public label: string | null = null;\r\n\r\n @Input()\r\n public selectWidth: string = '100%';\r\n\r\n @Input()\r\n public direction: 'vertical' | 'horizontal' = 'vertical';\r\n\r\n @Input()\r\n public options: SelectOption[] = [];\r\n\r\n public selectControl = new FormControl(null);\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n writeValue(value: ControlType): void {\r\n this.selectControl.setValue(value);\r\n this._cdr.markForCheck();\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n constructor(private _cdr: ChangeDetectorRef) {\r\n this.selectControl.valueChanges\r\n .pipe(takeUntilDestroyed())\r\n .subscribe((value) => {\r\n this.onChange(value);\r\n });\r\n }\r\n}\r\n","
\r\n {{ label }}\r\n\r\n \r\n \r\n {{ option.translate ? (option.title | translate) : option.title }}\r\n \r\n \r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { BreadcrumbService } from 'src/app/core/services/dynamictools/breadcrump.service';\r\nimport { TitleService } from 'src/app/core/services/dynamictools/title.service';\r\nimport { Router } from '@angular/router';\r\n@Component({\r\n selector: 'app-tab',\r\n templateUrl: './tab.component.html',\r\n styleUrls: ['./tab.component.scss']\r\n})\r\nexport class TabComponent implements OnInit {\r\n @Input() breadcrumbs: string[] = [];\r\n @Input() pageTitle: string = '';\r\n @Input() buttons: { label: string, link: string }[] = [];\r\n @Input() buttons2: { label: string, link: string }[] = [];\r\n @Input() buttons3: { label: string, link: string }[] = [];\r\n constructor(private breadcrumbService: BreadcrumbService,private titleService: TitleService,private router: Router) {}\r\n \r\n ngOnInit() {\r\n this.breadcrumbService.getBreadcrumbStream().subscribe(breadcrumbs => {\r\n this.breadcrumbs = breadcrumbs;\r\n });\r\n \r\n }\r\n getRouteLink(breadcrumb: string): string {\r\n switch (breadcrumb) {\r\n case 'TCO':\r\n return '/TCO';\r\n case 'PROCESS ENG':\r\n return '/TCO';\r\n case 'FD':\r\n return '/TCO';\r\n case 'LPG':\r\n return '/TCO';\r\n case 'INPUT':\r\n return '/TCO';\r\n case 'OPERATOR':\r\n return 'TCO/ProcessEng/FD/LPG/Input/Operator';\r\n case 'PE':\r\n return 'TCO/ProcessEng/FD/LPG/Input/PE/ProcessEngineer';\r\n case 'FINAL REPORT':\r\n return '/TCO'\r\n case 'LPGData':\r\n return 'TCO/ProcessEng/FD/LPG/FinalReport/LPGData';\r\n case 'FLARING REPORT':\r\n return 'TCO/ProcessEng/FD/LPG/FinalReport/FlaringReport';\r\n case 'KTL-SGP':\r\n return '/TCO';\r\n case 'SO2 EMISSIONS':\r\n return '/TCO/ProcessEng/FD/KTLSGP/So2Emissions';\r\n case 'FGD':\r\n return '/TCO';\r\n case 'IUS':\r\n return '/TCO';\r\n case 'MONTHLY REPORT':\r\n return '/TCO';\r\n case 'FGU':\r\n return '/TCO';\r\n case 'KTL':\r\n return '/TCO';\r\n case 'PRODUCTION GAS BALANCE':\r\n return '/TCO';\r\n case 'SGP':\r\n return '/TCO';\r\n case 'PROCESS ENGINEER':\r\n return '/TCO';\r\n default:\r\n return '';\r\n }\r\n }\r\n isButtonActive(button: { label: string, link: string }): boolean {\r\n return this.router.isActive(button.link, true);\r\n }\r\n isButton2Active(button: { label: string, link: string }): boolean {\r\n return this.router.isActive(button.link, true);\r\n }\r\n isButton3Active(button: { label: string, link: string }): boolean {\r\n return this.router.isActive(button.link, true);\r\n }\r\n}","
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n
\r\n

{{pageTitle }}

\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n {{ button.label }}\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-shared-a',\r\n templateUrl: './shared-a.component.html',\r\n styleUrls: ['./shared-a.component.scss']\r\n})\r\nexport class SharedAComponent {\r\n\r\n}\r\n","

shared-a works!

\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-shared-button',\r\n templateUrl: './shared-button.component.html',\r\n styleUrls: ['./shared-button.component.scss']\r\n})\r\nexport class SharedButtonComponent {\r\n\r\n}\r\n","

shared-button works!

\r\n","import { Component, Inject } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\n\r\nexport enum DeleteDialogAction {\r\n Delete,\r\n Reset,\r\n}\r\n\r\n@Component({\r\n selector: 'app-shared-delete-confirmation',\r\n templateUrl: './shared-delete-confirmation.component.html',\r\n styleUrls: ['./shared-delete-confirmation.component.scss'],\r\n})\r\nexport class SharedDeleteConfirmationComponent {\r\n public action: DeleteDialogAction;\r\n public DeleteDialogAction = DeleteDialogAction;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA)\r\n action: DeleteDialogAction\r\n ) {\r\n this.action = action ?? DeleteDialogAction.Delete;\r\n }\r\n\r\n onCancelClick(): void {\r\n this.dialogRef.close(false); // Close the dialog with a 'false' result (cancelled).\r\n }\r\n\r\n onDeleteClick(): void {\r\n this.dialogRef.close(true); // Close the dialog with a 'true' result (confirmed).\r\n }\r\n}\r\n","
\r\n error\r\n
\r\n\r\n\r\n ARE YOU SURE?\r\n\r\n\r\n
\r\n

\r\n This action can’t be undone. All values
\r\n associated with this row will be lost.\r\n

\r\n
\r\n\r\n
\r\n \r\n {{ action === DeleteDialogAction.Delete ? \"DELETE\" : \"RESET\" }}\r\n \r\n \r\n
\r\n","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnChanges,\r\n OnInit,\r\n Output,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { OperatorService } from 'src/app/core/services/lpg/operator.service';\r\n\r\nimport {\r\n FormControl,\r\n Validators,\r\n FormBuilder,\r\n FormGroup,\r\n} from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-shared-dropdown-gas-park',\r\n templateUrl: './shared-dropdown-gas-park.component.html',\r\n styleUrls: ['./shared-dropdown-gas-park.component.scss'],\r\n})\r\nexport class SharedDropdownGasParkComponent implements OnInit {\r\n @Input() operatorAddForm: FormGroup = new FormGroup({});\r\n gasParkForm: FormGroup;\r\n\r\n parks: string[] = []; //cascading dropdown\r\n selectedPark: string = ''; //cascading dropdown\r\n gases: string[] = []; //cascading dropdown\r\n selectedGas: string = ''; //cascading dropdown\r\n options: string[] = []; //cascading dropdown\r\n selectedOptions: string = ''; //cascading dropdown\r\n isOtherSelected: boolean = false; //other input\r\n otherInputValue: string = ''; //other input\r\n\r\n constructor(\r\n private dataService: OperatorService,\r\n private formBuilder: FormBuilder\r\n ) {\r\n this.gasParkForm = this.formBuilder.group({\r\n lpgPark: ['', Validators.required],\r\n gasType: ['', Validators.required],\r\n bullet: ['', Validators.required],\r\n other: ['', Validators.minLength(1)],\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.parks = this.dataService.getParks();\r\n this.gases = [];\r\n this.selectedGas = '';\r\n this.options = [];\r\n this.selectedOptions = '';\r\n\r\n this.operatorAddForm.addControl('gasParkForm', this.gasParkForm);\r\n }\r\n\r\n onOptionChange() {\r\n this.isOtherSelected = this.selectedOptions === 'Other';\r\n if (!this.isOtherSelected) {\r\n this.otherInputValue = '';\r\n }\r\n }\r\n\r\n onParkChange() {\r\n this.gases = this.dataService.getGasesForPark(this.selectedPark);\r\n this.selectedGas = '';\r\n this.options = [];\r\n this.selectedOptions = '';\r\n this.isOtherSelected = false;\r\n }\r\n\r\n onGasChange() {\r\n this.options = this.dataService.getOptionsForGas(\r\n this.selectedPark,\r\n this.selectedGas\r\n );\r\n this.selectedOptions = '';\r\n this.isOtherSelected = false;\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n LPG Park is required.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Gas Type is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Bullit is required.\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\nimport {\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { PEService } from 'src/app/core/services/lpg/pe.service';\r\n\r\n@Component({\r\n selector: 'app-shared-dropdown-pe',\r\n templateUrl: './shared-dropdown-pe.component.html',\r\n styleUrls: ['./shared-dropdown-pe.component.scss'],\r\n})\r\nexport class SharedDropdownPeComponent implements OnInit {\r\n @Input() peDropdownFormGroup!: FormGroup;\r\n\r\n parks: string[] = []; //cascading dropdown\r\n gases: string[] = []; //cascading dropdown\r\n bullets: string[] = []; //cascading dropdown\r\n isOtherSelected: boolean = false; //other input\r\n otherInputValue: string = ''; //other input\r\n purposes: string[] = []; //purpose\r\n entrytypes: string[] = [];\r\n MWSelectionPoints: string[] = [];\r\n categories: string[] = [];\r\n\r\n constructor(private dataService: PEService, private fb: FormBuilder) {\r\n // this.peDropdownFormGroup = this.fb.group({\r\n // lpgPark: ['', Validators.required],\r\n // gasType: ['', Validators.required],\r\n // purpose: ['', Validators.required],\r\n // entryType: ['', Validators.required],\r\n // bullet: ['', Validators.required],\r\n // mwSelectionPoint: ['', Validators.required],\r\n // category: ['', Validators.required],\r\n // volume: ['', Validators.required],\r\n // });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.parks = this.dataService.getParks();\r\n this.purposes = this.dataService.getPurpose();\r\n this.entrytypes = this.dataService.getEntryType();\r\n this.categories = this.dataService.getCategory();\r\n this.gases = [];\r\n this.bullets = [];\r\n }\r\n\r\n onParkChange() {\r\n this.gases = this.dataService.getGasesForPark(\r\n this.peDropdownFormGroup.value.lpgPark\r\n );\r\n this.peDropdownFormGroup.get('gasType')?.enable();\r\n this.peDropdownFormGroup.patchValue({\r\n gasType: '',\r\n bullet: '',\r\n });\r\n this.bullets = [];\r\n this.isOtherSelected = false;\r\n }\r\n\r\n onGasChange() {\r\n this.bullets = this.dataService.getOptionsForGas(\r\n this.peDropdownFormGroup.value.lpgPark,\r\n this.peDropdownFormGroup.value.gasType\r\n );\r\n this.peDropdownFormGroup.get('bullet')?.enable();\r\n this.peDropdownFormGroup.get('mwSelectionPoint')?.enable();\r\n this.MWSelectionPoints = this.dataService.getMWSelectionPoints(\r\n this.peDropdownFormGroup.value.gasType\r\n );\r\n this.peDropdownFormGroup.patchValue({\r\n bullet: '',\r\n });\r\n this.isOtherSelected = false;\r\n }\r\n\r\n onOptionChange() {\r\n this.isOtherSelected = this.peDropdownFormGroup.value.bullet === 'Other';\r\n if (!this.isOtherSelected) {\r\n this.otherInputValue = '';\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n LPG Park is required.\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Gas Type is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Purpose is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Entry Type is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Bullet is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n MW Selection Point is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n Category is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Volume is required.\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { TitleService } from 'src/app/core/services/dynamictools/title.service';\r\n\r\n@Component({\r\n selector: 'app-dynamic-title',\r\n templateUrl: './dynamic-title.component.html',\r\n})\r\nexport class DynamicTitleComponent implements OnInit {\r\n @Input() pageTitle: string = '';\r\n\r\n constructor(private titleService: TitleService) {}\r\n\r\n ngOnInit() {\r\n this.titleService.setTitle(this.pageTitle);\r\n }\r\n}\r\n","

{{ pageTitle }}

","import { Component,Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-shared-header',\r\n templateUrl: './shared-header.component.html',\r\n styleUrls: ['./shared-header.component.scss']\r\n})\r\nexport class SharedHeaderComponent {\r\n @Input() pageTitle: string = '';\r\n}\r\n","
\r\n

{{ pageTitle }}

\r\n
","import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { notificationSelector } from 'src/app/state/notification/notification.selector';\r\n\r\n@Component({\r\n selector: 'app-shared-loading-spinner',\r\n templateUrl: './shared-loading-spinner.component.html',\r\n styleUrls: ['./shared-loading-spinner.component.scss'],\r\n})\r\nexport class SharedLoadingSpinnerComponent implements OnInit {\r\n isLoading: boolean = false;\r\n constructor(\r\n private store: Store,\r\n private cdRef: ChangeDetectorRef\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.store.select(notificationSelector).subscribe((res) => {\r\n this.isLoading = res.isLoading;\r\n this.cdRef.detectChanges();\r\n });\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n","import { Component, Input } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { TCOLanguages } from 'src/app/core/models/i18n.model';\r\nimport { I18NService } from 'src/app/core/services/i18n/i18n.service';\r\n\r\n@Component({\r\n selector: 'app-navbar',\r\n templateUrl: './navbar.component.html',\r\n styleUrls: ['./navbar.component.scss'],\r\n})\r\nexport class NavbarComponent {\r\n arr = [\r\n {\r\n id: 'FD',\r\n name: 'FD',\r\n route: '',\r\n items: [\r\n {\r\n id: 'FD-KTL',\r\n name: 'KTL',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-KTL-INPUT',\r\n name: 'Input',\r\n disabled: true,\r\n route: '/FD/KTL/Input/ProcessEngineer/Flaring',\r\n expand: true,\r\n schilds: [\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-FLARING',\r\n name: 'FLARING',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Flaring',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-MW',\r\n name: 'MW',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/MW',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-LEAKAGE',\r\n name: 'LEAKAGE',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Leakages',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-CONSTANTS',\r\n name: 'CONSTANTS',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Constants',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-PERMITS',\r\n name: 'PERMITS',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/TargetPermit',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-EQUIPMENT',\r\n name: 'EQUIPMENT',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-OPERATOR',\r\n name: 'OPERATOR',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/KTL/Input/Operator',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-DIAGNOSTICIAN',\r\n name: 'DIAGNOSTICIAN',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/KTL/Input/Diagnostician',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-DAILY-REPORT',\r\n name: 'Daily Report',\r\n disabled: false,\r\n route: '/FD/KTL/DailyReport',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-KTL-DAILY-REPORT-REPORTS',\r\n name: 'REPORTS',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-KTL-DAILY-REPORT-REPORTS-DAILY-REPORT',\r\n name: 'DAILY REPORT',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/DailyReport',\r\n },\r\n {\r\n id: 'FD-KTL-DAILY-REPORT-REPORTS-F-205-KTL2',\r\n name: 'F-205-KTL2',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/KTL/F205/KTL2',\r\n },\r\n {\r\n id: 'FD-KTL-DAILY-REPORT-REPORTS-F-205-KTL23',\r\n name: 'F-205-KTL23',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/KTL/F205/KTL23',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-MONTHLY-REPORT',\r\n name: 'Monthly Report',\r\n disabled: false,\r\n route: '/FD/KTL/MonthlyReport',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-KTL-CHEMICAL-COMPOSITION',\r\n name: 'Chemical Composition',\r\n disabled: false,\r\n route: '/FD/KTL/cc',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-KTL-SCHEMA',\r\n name: 'Schema',\r\n disabled: false,\r\n route: '/FD/KTL/Schema',\r\n expand: false,\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP',\r\n name: 'SGP',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-SGP-INPUT',\r\n name: 'Input ',\r\n disabled: true,\r\n route: '/FD/SGP/Input/ProcessEngineer/Flaring',\r\n expand: true,\r\n schilds: [\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-FLARING',\r\n name: 'FLARING',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Flaring',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-MW',\r\n name: 'MW',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/MW',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-LEAKAGE',\r\n name: 'LEAKAGE',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Leakages',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-CONSTANTS',\r\n name: 'CONSTANTS',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Constants',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-PERMITS',\r\n name: 'PERMITS',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/TargetPermit',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-EQUIPMENT',\r\n name: 'EQUIPMENT',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-OPERATOR',\r\n name: 'OPERATOR',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-DIAGNOSTICIAN',\r\n name: 'DIAGNOSTICIAN',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-DAILY-REPORT',\r\n name: 'Daily Report ',\r\n disabled: false,\r\n route: '/FD/SGP/DailyReport',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGP-MONTHLY-REPORT',\r\n name: 'Monthly Report ',\r\n disabled: true,\r\n route: '/FD/SGP/MonthlyReport',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGP-CHEMICAL-COMPOSITION',\r\n name: 'Chemical Composition ',\r\n disabled: true,\r\n route: '/FD/SGP/cc',\r\n expand: false,\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGP-SCHEMA',\r\n name: 'Schema ',\r\n disabled: true,\r\n route: '',\r\n expand: false,\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGI',\r\n name: 'SGI',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-SGI-FLARE-REPORT',\r\n name: 'Flare Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/flare-report',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGI-TARGET-PERMIT',\r\n name: 'Target Permit',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/target-permit',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-SGI-CC',\r\n name: 'Chemical Composition ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/cc',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD',\r\n name: 'FIELD',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-FIELD-INPUT',\r\n name: 'Input ',\r\n disabled: false,\r\n expand: true,\r\n route: 'FD/field/input',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-FIELD-FIELD-CALC',\r\n name: 'Field Calc',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-FIELD-CC',\r\n name: 'Chemical Composition ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/cc',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-FIELD-FINAL-REPORT',\r\n name: 'Final Report ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/final-report',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG',\r\n name: 'LPG',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-LPG-INPUT',\r\n name: 'Input ',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/LPG/Input/PE/ProcessEngineer',\r\n schilds: [\r\n {\r\n id: 'FD-LPG-INPUT-TARGETPERMIT',\r\n name: 'TARGET/PERMIT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/TargetPermit',\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-OPERATOR',\r\n name: 'OPERATOR',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Operator',\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-ANALYST',\r\n name: 'ANALYST',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Analyst',\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/PE/ProcessEngineer',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG-FUEL-GAS-FLARING',\r\n name: 'Fuel Gas Flaring',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FuelGasFlaring',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-LPG-CC',\r\n name: 'Chemical Composition ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/CC',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FD-LPG-FINAL-REPORT',\r\n name: 'Final Report',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/LPG/FinalReport/LPGData',\r\n schilds: [\r\n {\r\n id: 'FD-LPG-FINAL-REPORT-LPG-DATA',\r\n name: 'LPG DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/LPGData',\r\n },\r\n {\r\n id: 'FD-LPG-FINAL-REPORT-FLARING-REPORT',\r\n name: 'FLARING REPORT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/FlaringReport',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'SO2-EMISSIONS',\r\n name: 'SO2 EMISSIONS',\r\n route: 'FD/KTLSGP/So2Emissions/MonthlyReport',\r\n disabled: false,\r\n childs: [\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROJECTEDDATA',\r\n name: 'Input ',\r\n disabled: false,\r\n route: 'FD/KTLSGP/So2Emissions/ProjectedData',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROJECTEDDATA',\r\n name: 'Projected Data',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/KTLSGP/So2Emissions/ProjectedData',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROJECTEDDATA-KTL-PERMITS',\r\n name: 'KTL Permits',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/TargetPermit',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROJECTEDDATA-SGP-PERMITS',\r\n name: 'SGP Permits',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/TargetPermit',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-MONTHLY-REPORT',\r\n name: 'Monthly Report ',\r\n disabled: false,\r\n route: 'FD/KTLSGP/So2Emissions/MonthlyReport',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: '',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD',\r\n name: 'FGD',\r\n route: '',\r\n items: [\r\n {\r\n id: 'FGD-KTL',\r\n name: 'KTL',\r\n expand: true,\r\n disabled: true,\r\n route: '',\r\n childs: [\r\n // {\r\n // id: 'FGD-KTL-INPUT',\r\n // name: 'Input ',\r\n // disabled: false,\r\n // expand: false,\r\n // route: '',\r\n // schilds: [],\r\n // },\r\n {\r\n id: 'FGD-KTL-DAILY-REPORT',\r\n name: 'Daily Report ', //Fuel Gas Dashboard\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/KTL/ProductionGasBalance',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-KTL-MONTHLY-REPORT',\r\n name: 'Monthly Report ', //Fuel Gas Dashboard\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/KTL/monthly-report',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-SGP',\r\n name: 'SGP',\r\n expand: true,\r\n disabled: true,\r\n route: '',\r\n childs: [\r\n {\r\n id: 'FGD-SGP-FUEL-GAS-DASHBOARD',\r\n name: 'Daily Report ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/SGP/DailyReport',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-SGP-MONTHLY-REPORT',\r\n name: 'Monthly Report ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/SGP/MonthlyReport',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-SGP-GAS-USAGE-REPORT',\r\n name: 'Gas Usage Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/SGP/GasUsageReport',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-FIELD',\r\n name: 'FIELD',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-FIELD-INPUT',\r\n name: 'Input ',\r\n disabled: false,\r\n expand: true,\r\n route: 'FD/field/input',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-FIELD-FIELD-CALC',\r\n name: 'Field Calc',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-FIELD-CC',\r\n name: 'Chemical Composition ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/cc',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-FIELD-FINAL-REPORT',\r\n name: 'Final Report ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/final-report',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG',\r\n name: 'LPG',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-LPG-INPUT',\r\n name: 'Input ',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/LPG/Input/PE/ProcessEngineer',\r\n schilds: [\r\n {\r\n id: 'FGD-LPG-INPUT-TARGETPERMIT',\r\n name: 'TARGET/PERMIT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/TargetPermit',\r\n },\r\n {\r\n id: 'FGD-LPG-INPUT-OPERATOR',\r\n name: 'OPERATOR',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Operator',\r\n },\r\n {\r\n id: 'FGD-LPG-INPUT-ANALYST',\r\n name: 'ANALYST',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Analyst',\r\n },\r\n {\r\n id: 'FGD-LPG-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/PE/ProcessEngineer',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG-FUEL-GAS-FLARING',\r\n name: 'Fuel Gas Flaring',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FuelGasFlaring',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-LPG-CC',\r\n name: 'Chemical Composition',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/CC',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-LPG-FINAL-REPORT',\r\n name: 'Final Report',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/LPG/FinalReport/LPGData',\r\n schilds: [\r\n {\r\n id: 'FGD-LPG-FINAL-REPORT-LPG-DATA',\r\n name: 'LPG DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/LPGData',\r\n },\r\n {\r\n id: 'FGD-LPG-FINAL-REPORT-FLARING-REPORT',\r\n name: 'FLARING REPORT',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/FlaringReport',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-SGI',\r\n name: 'SGI',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-SGI-FLARE-REPORT',\r\n name: 'Flare Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/flare-report',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-SGI-TARGET-PERMIT',\r\n name: 'Target Permit',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/target-permit',\r\n schilds: [],\r\n },\r\n {\r\n id: 'FGD-SGI-CC',\r\n name: 'Chemical Composition ',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/cc',\r\n schilds: [],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS',\r\n name: 'INTERNAL USAGE',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-IUS-INPUT',\r\n name: 'Input ',\r\n disabled: true,\r\n expand: true,\r\n route: 'FGD/IUS/Input/boilers-motohours-data',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-INPUT-BOILERHOUSEDATA',\r\n name: 'BOILER HOUSE DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/boilers-motohours-data',\r\n },\r\n {\r\n id: 'FGD-IUS-INPUT-HEATERSDATA',\r\n name: 'HEATERS DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/heaters-motohours-data',\r\n },\r\n {\r\n id: 'FGD-IUS-INPUT-METERSDATA',\r\n name: 'METERS DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/meters-data',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS-CALCULATIONS',\r\n name: 'Calculations',\r\n disabled: true,\r\n expand: true,\r\n route: 'FGD/IUS/calculations/boilers-motohours-data',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-FGU-BOILER',\r\n name: 'BOILERS MOTOHOURS DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/calculations/boilers-motohours-data',\r\n },\r\n {\r\n id: 'FGD-IUS-FGU-HEATER',\r\n name: 'HEATERS MOTOHOURS DATA',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/calculations/heaters-motohours-data',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS-MONTHLY-REPORT',\r\n name: 'Monthly Report ',\r\n disabled: true,\r\n expand: true,\r\n route: 'FGD/IUS/MonthlyReport/monthly-calc',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-MONTHLY-REPORT-MONTHLY-CALC',\r\n name: 'MONTHLY CALC',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/MonthlyReport/monthly-calc',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n activeSubItem: any = null;\r\n\r\n selectedItem: any = null;\r\n isMainPage: boolean = true;\r\n isNotAuthorize: boolean = true;\r\n\r\n currentRouteSub: string = '';\r\n\r\n //FD route\r\n isSubFDActive: boolean = true;\r\n isSubFDKTLActive: boolean = true;\r\n isSubFDSGPActive: boolean = true;\r\n isSubFDSGIActive: boolean = true;\r\n isSubFDFIELDActive: boolean = true;\r\n isSubFDLPGActive: boolean = true;\r\n isSubFDSO2EMISSIONSActive: boolean = true;\r\n\r\n //FGD route\r\n isSubFGDActive: boolean = true;\r\n isSubFGDKTLActive: boolean = true;\r\n isSubFGDSGPActive: boolean = true;\r\n isSubFGDSGIActive: boolean = true;\r\n isSubFGDFIELDActive: boolean = true;\r\n isSubFGDLPGActive: boolean = true;\r\n isSubFGDInternalUsageActive: boolean = true;\r\n\r\n public languages: TCOLanguages[] = [];\r\n\r\n constructor(\r\n public translate: TranslateService,\r\n private router: Router, \r\n private _i18nService: I18NService\r\n ) {\r\n this._i18nService.languages$\r\n .pipe(takeUntilDestroyed())\r\n .subscribe(languages => {\r\n this.languages = languages;\r\n });\r\n\r\n this.router.events\r\n .pipe(takeUntilDestroyed())\r\n .subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.updateSelectedItem(event.urlAfterRedirects);\r\n\r\n this.currentRouteSub = event.urlAfterRedirects;\r\n }\r\n });\r\n }\r\n\r\n public selectLang(lang: string) {\r\n this.translate.use(lang);\r\n }\r\n\r\n selectNestedChild(child: any) {\r\n this.selectedItem = child;\r\n }\r\n\r\n updateSelectedItem(currentRoute: string) {\r\n this.isMainPage =\r\n currentRoute === '/' ||\r\n currentRoute === '/TCO' ||\r\n currentRoute === '/TCO/ProcessEng' ||\r\n currentRoute === '/FD';\r\n \r\n this.isNotAuthorize = currentRoute === '/not-authorized';\r\n // Logic to set selectedItem based on the current route\r\n this.selectedItem = null;\r\n for (let group of this.arr) {\r\n for (let item of group.items) {\r\n for (let child of item.childs) {\r\n if (currentRoute.startsWith(child.route)) {\r\n this.selectedItem = child;\r\n return;\r\n }\r\n if (child.schilds) {\r\n for (let schild of child.schilds) {\r\n if (currentRoute.startsWith(schild.route)) {\r\n this.selectedItem = child;\r\n return;\r\n }\r\n if (schild.tchilds) {\r\n for (let tchild of schild.tchilds) {\r\n if (currentRoute.startsWith(tchild.route)) {\r\n this.selectedItem = child;\r\n return;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n setActiveItemByRoute(route: string) {\r\n this.isMainPage = route === '/' || route === '/TCO' || route === '/TCO/ProcessEng' || route === '/FD';\r\n \r\n this.isNotAuthorize = route === '/not-authorized';\r\n }\r\n\r\n isMapActive(): boolean {\r\n return this.router.isActive('/TCO', true);\r\n }\r\n\r\n isActive(groupName: string): boolean {\r\n const currentRoute = this.router.url;\r\n\r\n //FD routes\r\n this.isSubFDActive = currentRoute.includes('/TCO/ProcessEng/FD/');\r\n this.isSubFDKTLActive = currentRoute.includes('/TCO/ProcessEng/FD/KTL/');\r\n this.isSubFDSGPActive = currentRoute.includes('/TCO/ProcessEng/FD/SGP/');\r\n this.isSubFDSGIActive = currentRoute.includes('/TCO/ProcessEng/FD/SGI/');\r\n this.isSubFDFIELDActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/'\r\n );\r\n this.isSubFDLPGActive = currentRoute.includes('/TCO/ProcessEng/FD/LPG/');\r\n this.isSubFDSO2EMISSIONSActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/'\r\n );\r\n\r\n if (groupName === 'FD' && currentRoute.includes('/TCO/ProcessEng/FD/')) {\r\n return true;\r\n }\r\n\r\n // FD KTL route active\r\n\r\n if (\r\n groupName === 'Input' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/Input/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Daily Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/DailyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Monthly Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/MonthlyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Chemical Composition' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/cc')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Schema' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/Schema')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP route active\r\n\r\n if (\r\n groupName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/Input/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Daily Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/DailyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Monthly Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/MonthlyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Chemical Composition ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/cc')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Schema ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/Schema')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGI route active\r\n\r\n if (\r\n groupName === 'Flare Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/flare-report')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Target Permit' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/target-permit')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Chemical Composition ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/cc')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD route active\r\n\r\n if (\r\n groupName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/input/')\r\n ) {\r\n return true;\r\n }\r\n\r\n if (\r\n groupName === 'Field Calc' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/field-calc')\r\n ) {\r\n return true;\r\n }\r\n\r\n if (\r\n groupName === 'Chemical Composition ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/cc')\r\n ) {\r\n return true;\r\n }\r\n\r\n if (\r\n groupName === 'Final Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/final-report')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG route active\r\n\r\n if (\r\n groupName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/Input/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Fuel Gas Flaring' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/FuelGasFlaring')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Chemical Composition ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/CC')\r\n ) {\r\n return true;\r\n }\r\n groupName;\r\n if (\r\n groupName === 'Final Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/FinalReport/')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SO2 Emissions route active\r\n\r\n if (\r\n groupName === 'Input ' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/ProjectedData'\r\n )\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Monthly Report ' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/MonthlyReport'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD route active\r\n\r\n //KTL\r\n if (\r\n groupName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/KTL/Input')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Daily Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/KTL/ProductionGasBalance')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Monthly Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/KTL/monthly-report')\r\n ) {\r\n return true;\r\n }\r\n //SGP\r\n if (\r\n groupName === 'Daily Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/SGP/DailyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Monthly Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/SGP/MonthlyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Gas Usage Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/SGP/GasUsageReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/Input/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Calculations' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/calculations/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n groupName === 'Monthly Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/MonthlyReport/')\r\n ) {\r\n return true;\r\n }\r\n\r\n //FGD routes\r\n this.isSubFGDActive = currentRoute.includes('/TCO/ProcessEng/FGD/');\r\n this.isSubFGDKTLActive = currentRoute.includes('/TCO/ProcessEng/FGD/KTL/');\r\n this.isSubFGDSGPActive = currentRoute.includes('/TCO/ProcessEng/FGD/SGP/');\r\n this.isSubFGDSGIActive = currentRoute.includes('/TCO/ProcessEng/FD/SGI/');\r\n this.isSubFGDFIELDActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/'\r\n );\r\n this.isSubFGDLPGActive = currentRoute.includes('/TCO/ProcessEng/FD/LPG/');\r\n this.isSubFGDInternalUsageActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/'\r\n );\r\n\r\n if (groupName === 'FGD' && currentRoute.includes('/TCO/ProcessEng/FGD/')) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n isSubChildActive(childName: string): boolean {\r\n const currentRoute = this.router.url;\r\n\r\n // console.log(childName);\r\n // console.log(currentRoute);\r\n\r\n // FD KTL route active\r\n\r\n if (\r\n childName === 'Input' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/Input/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Daily Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/DailyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Monthly Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/MonthlyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Chemical Composition' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/cc')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Schema' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/Schema')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP route active\r\n\r\n if (\r\n childName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/Input/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Daily Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/DailyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Monthly Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/MonthlyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Chemical Composition ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/cc')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Schema ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/Schema')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGI route active\r\n\r\n if (\r\n childName === 'Flare Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/flare-report')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Target Permit' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/target-permit')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Chemical Composition ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/cc')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD route active\r\n\r\n if (\r\n childName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/input/')\r\n ) {\r\n return true;\r\n }\r\n\r\n\r\n if (\r\n childName === 'Field Calc' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/field-calc')\r\n ) {\r\n return true;\r\n }\r\n\r\n if (\r\n childName === 'Chemical Composition ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/cc')\r\n ) {\r\n return true;\r\n }\r\n\r\n if (\r\n childName === 'Final Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/final-report')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG route active\r\n\r\n if (\r\n childName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/Input/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Fuel Gas Flaring' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/FuelGasFlaring')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Chemical Composition ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/CC')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Final Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/FinalReport/')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SO2 Emissions route active\r\n\r\n if (\r\n childName === 'Input ' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/ProjectedData'\r\n )\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Monthly Report ' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/MonthlyReport'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD route active\r\n\r\n //KTL\r\n // if (\r\n // childName === 'Fuel Gas Dashboard' &&\r\n // currentRoute.includes('/TCO/ProcessEng/FGD/KTL/ProductionGasBalance')\r\n // ) {\r\n // return true;\r\n // }\r\n if (\r\n childName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/KTL/Input')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Daily Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/KTL/ProductionGasBalance')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Monthly Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/KTL/monthly-report')\r\n ) {\r\n return true;\r\n }\r\n //SGP\r\n if (\r\n childName === 'Daily Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/SGP/DailyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Monthly Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/SGP/MonthlyReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Gas Usage Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/SGP/GasUsageReport')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Input ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/Input/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Calculations' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/calculations/')\r\n ) {\r\n return true;\r\n }\r\n if (\r\n childName === 'Monthly Report ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/MonthlyReport/')\r\n ) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n}\r\n","\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { notificationSelector } from 'src/app/state/notification/notification.selector';\r\n\r\n@Component({\r\n selector: 'app-shared-notification',\r\n templateUrl: './shared-notification.component.html',\r\n styleUrls: ['./shared-notification.component.scss'],\r\n})\r\nexport class SharedNotificationComponent implements OnInit {\r\n message: string = '';\r\n isSuccess: boolean = false;\r\n isFailure: boolean = false;\r\n showNotification: boolean = false;\r\n\r\n constructor(private store: Store, private toastr: ToastrService) {}\r\n\r\n ngOnInit(): void {\r\n this.store.select(notificationSelector).subscribe((res) => {\r\n this.message = res.message;\r\n this.isFailure = res.isFailure;\r\n this.isSuccess = res.isSuccess;\r\n\r\n if (res.showNotification && this.isSuccess) {\r\n this.toastr.success(this.message, undefined, {\r\n timeOut: 5000,\r\n tapToDismiss: true,\r\n });\r\n } else if (res.showNotification && (!this.isSuccess || this.isFailure)) {\r\n this.toastr.error(this.message, undefined, {\r\n disableTimeOut: true,\r\n tapToDismiss: true,\r\n });\r\n }\r\n });\r\n }\r\n\r\n show(message: string, isSuccess: boolean) {\r\n this.message = message;\r\n this.isSuccess = isSuccess;\r\n this.isFailure = !isSuccess;\r\n this.showNotification = true;\r\n\r\n setTimeout(() => {\r\n this.showNotification = false;\r\n }, 5000);\r\n }\r\n}\r\n","import { Component, Inject } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\n\r\nexport enum SaveDialogAction {\r\n Save\r\n}\r\n\r\n@Component({\r\n selector: 'app-shared-save-confirmation',\r\n templateUrl: './shared-save-confirmation.component.html',\r\n styleUrls: ['./shared-save-confirmation.component.scss'],\r\n})\r\nexport class SharedSaveConfirmationComponent {\r\n public SaveDialogAction = SaveDialogAction;\r\n\r\n constructor(\r\n public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public action: any //SaveDialogAction = SaveDialogAction.Save\r\n ) {\r\n console.log('action', action, typeof action, action === SaveDialogAction.Save);\r\n }\r\n\r\n onCancelClick(): void {\r\n this.dialogRef.close(false); // Close the dialog with a 'false' result (cancelled).\r\n }\r\n\r\n onSaveClick(): void {\r\n this.dialogRef.close(true); // Close the dialog with a 'true' result (confirmed).\r\n }\r\n}\r\n","
\r\n error\r\n
\r\n\r\n\r\n ARE YOU SURE?\r\n\r\n\r\n
\r\n

You`re saving new values for streams if you want to save changes, please click Save. \r\n
\r\n Click Cancel to refuse all changes.

\r\n
\r\n\r\n
\r\n

You`re deleting entered value and returning automatically calculated value. If you want to save changes please click Save. \r\n
\r\n Click Cancel to discard the change.

\r\n
\r\n\r\n
\r\n \r\n SAVE\r\n \r\n \r\n
\r\n","import { Component, HostListener } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-shared-scroll-to-top',\r\n templateUrl: './shared-scroll-to-top.component.html',\r\n styleUrls: ['./shared-scroll-to-top.component.scss'],\r\n})\r\nexport class SharedScrollToTopComponent {\r\n scrollToTop() {\r\n window.scrollTo({ top: 0, behavior: 'smooth' });\r\n }\r\n @HostListener('window:scroll', ['$event'])\r\n onScroll(event: Event): void {\r\n const showButtonThreshold = 200; // Show the button when the user has scrolled down 200 pixels\r\n const shouldShow = window.scrollY > showButtonThreshold;\r\n const button = document.getElementById('scrollToTopButton');\r\n if (button) {\r\n button.style.display = shouldShow ? 'block' : 'none';\r\n }\r\n }\r\n}\r\n","
\r\n \r\n
\r\n","import { Component } from '@angular/core';\r\nimport { NavigationEnd, Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.scss'],\r\n})\r\nexport class SidebarComponent {\r\n arr = [\r\n {\r\n id: 'FD',\r\n name: 'FD',\r\n route: '',\r\n items: [\r\n {\r\n id: 'FD-KTL',\r\n name: 'KTL',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-KTL-INPUT',\r\n name: 'Input',\r\n disabled: true,\r\n route: '/FD/KTL/Input/ProcessEngineer/Flaring',\r\n expand: true,\r\n schilds: [\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER',\r\n name: 'Process Engineer',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-FLARING',\r\n name: 'Flaring',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Flaring',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-MW',\r\n name: 'MW',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/MW',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-LEAKAGE',\r\n name: 'Leakage',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Leakages',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-CONSTANTS',\r\n name: 'Constants',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/Constants',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-PERMITS',\r\n name: 'Permits',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/TargetPermit',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-PROCESSENGINEER-INPUT-HISTORY',\r\n name: 'Input History',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/InputHistory',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-OPERATOR',\r\n name: 'Operator',\r\n disabled: false,\r\n expand: true,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-KTL-INPUT-OPERATOR-FLARING',\r\n name: 'Flaring ',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/Operator',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-DIAGNOSTICIAN',\r\n name: 'Diagnostician',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/KTL/Input/Diagnostician',\r\n tchilds: [\r\n {\r\n id: 'FD-KTL-INPUT-DIAGNOSTICIAN-LEAKAGE',\r\n name: 'Leakage ',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/Diagnostician/Leakage',\r\n },\r\n {\r\n id: 'FD-KTL-INPUT-DIAGNOSTICIAN-FLARESWITCHER',\r\n name: 'Flare Switcher',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/Input/Diagnostician/FlareSwitcher',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-DAILY-REPORT',\r\n name: 'Daily Report',\r\n disabled: false,\r\n route: '/FD/KTL/DailyReport',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-KTL-DAILY-REPORT-REPORTS',\r\n name: 'Daily Reports',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/KTL/DailyReport',\r\n tchilds: [\r\n {\r\n id: 'FD-KTL-DAILY-REPORT-REPORTS-DAILY-REPORT',\r\n name: 'Daily Report',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/KTL/DailyReport',\r\n },\r\n {\r\n id: 'FD-KTL-DAILY-REPORT-REPORTS-F-205-KTL2',\r\n name: 'KTL-2 F-205',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/KTL/F205/KTL2',\r\n },\r\n {\r\n id: 'FD-KTL-DAILY-REPORT-REPORTS-F-205-KTL23',\r\n name: 'KTL-2.3 F-205',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/KTL/F205/KTL23',\r\n }\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-MONTHLY-REPORT',\r\n name: 'Monthly Report',\r\n disabled: false,\r\n route: '/FD/KTL/MonthlyReport',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-KTL-MONTHLY-REPORT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-CHEMICAL-COMPOSITION',\r\n name: 'Chemical Composition',\r\n disabled: false,\r\n route: '/FD/KTL/cc',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-KTL-CHEMICAL-COMPOSITION',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-KTL-SCHEMA',\r\n name: 'Schema',\r\n disabled: false,\r\n route: '/FD/KTL/Schema',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-KTL-CHEMICAL-COMPOSITION',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP',\r\n name: 'SGP',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-SGP-INPUT',\r\n name: 'Input',\r\n disabled: true,\r\n route: '/FD/SGP/Input/ProcessEngineer/Flaring',\r\n expand: true,\r\n schilds: [\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER',\r\n name: 'Process Engineer',\r\n disabled: true,\r\n expand: true,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-FLARING',\r\n name: 'Flaring',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Flaring',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-MW',\r\n name: 'MW',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/MW',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-LEAKAGE',\r\n name: 'Leakage',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Leakages',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-CONSTANTS',\r\n name: 'Constants',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/Constants',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-PERMITS',\r\n name: 'Permits',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/TargetPermit',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-EQUIPMENT',\r\n name: 'Equipment',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-PROCESSENGINEER-INPUT-HISTORY',\r\n name: 'Input History',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/InputHistory',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-OPERATOR',\r\n name: 'Operator',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-SGP-INPUT-OPERATOR-FLARING',\r\n name: 'Flaring ',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/SGP/Input/Operator/Flaring',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-DIAGNOSTICIAN',\r\n name: 'Diagnostician',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-SGP-INPUT-DIAGNOSTICIAN-LEAKAGE',\r\n name: 'Leakage ',\r\n disabled: false,\r\n expand: false,\r\n route: '',\r\n },\r\n {\r\n id: 'FD-SGP-INPUT-OPERATOR-FLARE-SWITCHER',\r\n name: 'Flare Switcher ',\r\n disabled: false,\r\n expand: false,\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-DAILY-REPORT',\r\n name: 'Daily Report',\r\n disabled: false,\r\n route: '/FD/SGP/DailyReport',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-SGP-DAILY-REPORT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-MONTHLY-REPORT',\r\n name: 'Monthly Report',\r\n disabled: true,\r\n route: '',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-SGP-MONTHLY-REPORT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-CHEMICAL-COMPOSITION',\r\n name: 'Chemical Composition',\r\n disabled: true,\r\n route: '',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-SGP-CHEMICAL-COMPOSITION',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGP-SCHEMA',\r\n name: 'Schema',\r\n disabled: true,\r\n route: '',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'FD-SGP-SCHEMA',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGI',\r\n name: 'SGI',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-SGI-FLARE-REPORT',\r\n name: 'Flare Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/flare-report',\r\n schilds: [\r\n {\r\n id: 'FD-SGI-FLARE-REPORT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGI-TARGET-PERMIT',\r\n name: 'Target Permit',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/target-permit',\r\n schilds: [\r\n {\r\n id: 'FD-SGI-TARGET-PERMIT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-SGI-CC',\r\n name: 'Chemical Composition',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/cc',\r\n schilds: [\r\n {\r\n id: 'FD-SGI-CC',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD',\r\n name: 'FIELD',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-FIELD-FIELD-CALC', // FD-FIELD-FIELD-CALC-DRY-GAS\r\n name: 'Field Calc',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc',\r\n schilds: [\r\n {\r\n id: 'FD-FIELD-FIELD-CALC-DRY-GAS',\r\n name: 'Dry Gas',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/field-calc/dry-gas',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-FIELD-CALC-RESERVOIR-GAS',\r\n name: 'Reservoir Gas',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/field-calc/reservoir-gas',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-FIELD-CALC-PURGE-N-PILOT',\r\n name: 'Purge & Pilot',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/field-calc/purge-n-pilot',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-CC',\r\n name: 'Chemical Composition',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/cc',\r\n schilds: [\r\n {\r\n id: 'FD-FIELD-CC-FUEL-GAS',\r\n name: 'Fuel Gas',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/cc/fuel-gas',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-CC-RESERVOIR-GAS',\r\n name: 'Reservoir Gas',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/cc/reservoir-gas',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-FINAL-REPORT',\r\n name: 'Final Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/final-report',\r\n schilds: [\r\n {\r\n id: 'FD-FIELD-FINAL-REPORT-GAS-BALANCE',\r\n name: 'Gas Balance',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/final-report/gas-balance',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-FINAL-REPORT-FLARING-REPORT',\r\n name: 'Flaring Report',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/final-report/flaring-report',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-INPUT',\r\n name: 'Input',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/input',\r\n schilds: [\r\n {\r\n id: 'FD-FIELD-INPUT-OPERATOR',\r\n name: 'Operator',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/input/operator',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-INPUT-PE',\r\n name: 'PE',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/input/pe',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-INPUT-METRICS',\r\n name: 'Metrics',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/input/metrics',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-FIELD-INPUT-PERMIT',\r\n name: 'Permits',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/input/permits',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG',\r\n name: 'LPG',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FD-LPG-INPUT',\r\n name: 'Input',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/LPG/Input/TargetPermit',\r\n schilds: [\r\n {\r\n id: 'FD-LPG-INPUT-TARGETPERMIT',\r\n name: 'Process Engineer',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/TargetPermit',\r\n tchilds: [\r\n {\r\n id: 'FD-LPG-INPUT-PROCESS-ENGINEER-TARGETPERMIT',\r\n name: 'Flaring',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/LPG/Input/PE/ProcessEngineer',\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-PROCESS-ENGINEER-TARGETPERMIT',\r\n name: 'Permits',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/TargetPermit',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-ANALYST',\r\n name: 'Analyst',\r\n disabled: false,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FD-LPG-INPUT-ANALYST-FLARING',\r\n name: 'RTC/Flaring',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Analyst',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG-INPUT-OPERATOR',\r\n name: 'Operator',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Operator',\r\n tchilds: [\r\n {\r\n id: 'FD-LPG-INPUT-OPERATOR-FLARING',\r\n name: 'Flaring ',\r\n disabled: false,\r\n expand: false,\r\n route: '/FD/LPG/Input/Operator',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG-FUEL-GAS-FLARING',\r\n name: 'Fuel Gas Flaring',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FuelGasFlaring',\r\n schilds: [\r\n {\r\n id: 'FD-LPG-FUEL-GAS-FLARING',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG-CC',\r\n name: 'Chemical Composition',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/CC',\r\n schilds: [\r\n {\r\n id: 'FD-LPG-CC',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG-FINAL-REPORT',\r\n name: 'Final Report',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/LPG/FinalReport/LPGData',\r\n schilds: [\r\n {\r\n id: 'FD-LPG-FINAL-REPORT-LPG-DATA',\r\n name: 'LPG Data',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/LPGData',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FD-LPG-FINAL-REPORT-FLARING-REPORT',\r\n name: 'Flaring Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/FlaringReport',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'SO2-EMISSIONS',\r\n name: 'SO2 EMISSIONS',\r\n route: '',\r\n disabled: false,\r\n childs: [\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-INPUT',\r\n name: 'Input',\r\n disabled: false,\r\n route: 'FD/KTLSGP/So2Emissions/ProjectedData',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-INPUT-PROCESS-ENGINEER',\r\n name: 'Process Engineer',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/KTLSGP/So2Emissions/ProjectedData',\r\n tchilds: [\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROCESS-ENGINEER-PROJECTEDDATA',\r\n name: 'Projected Data',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/KTLSGP/So2Emissions/ProjectedData',\r\n },\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROCESS-ENGINEER-KTL-PERMITS',\r\n name: 'KTL Permits',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/KTL/Input/ProcessEngineer/TargetPermit',\r\n },\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROCESS-ENGINEER-SGP-PERMITS',\r\n name: 'SGP Permits',\r\n disabled: true,\r\n expand: false,\r\n route: '/FD/SGP/Input/ProcessEngineer/TargetPermit',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'SO2EMISSIONS-KTLSGP-PROJECTEDDATA',\r\n name: 'Monthly Report',\r\n disabled: false,\r\n route: 'FD/KTLSGP/So2Emissions/MonthlyReport',\r\n expand: false,\r\n schilds: [\r\n {\r\n id: '',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD',\r\n name: 'FGD',\r\n route: '',\r\n items: [\r\n {\r\n id: 'FGD-KTL',\r\n name: 'KTL',\r\n expand: true,\r\n disabled: true,\r\n route: '',\r\n childs: [\r\n {\r\n id: 'FGD-KTL-PRODUCTION-GAS-BALANCE',\r\n name: 'Fuel Gas Dashboard',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/KTL/ProductionGasBalance',\r\n schilds: [\r\n {\r\n id: 'FGD-KTL-PRODUCTION-GAS-BALANCE',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-SGP',\r\n name: 'SGP',\r\n expand: true,\r\n disabled: true,\r\n route: '',\r\n childs: [\r\n {\r\n id: 'FGD-SGP-FUEL-GAS-DASHBOARD',\r\n name: 'Fuel Gas Dashboard',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/SGP/FuelGasDashboard',\r\n schilds: [\r\n {\r\n id: 'FGD-SGP-FUEL-GAS-DASHBOARD',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-SGP-GAS-USAGE-REPORT',\r\n name: 'Gas Usage Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/SGP/GasUsageReport',\r\n schilds: [\r\n {\r\n id: 'FGD-SGP-GAS-USAGE-REPORT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-FIELD',\r\n name: 'FIELD',\r\n route: '',\r\n expand: false,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-FIELD-DRY-GAS', // FD-FIELD-FIELD-CALC-DRY-GAS\r\n name: 'Dry Gas',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc/dry-gas',\r\n schilds: [\r\n {\r\n id: 'FGD-FIELD-DRY-GAS',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-FIELD-RESERVOIR-GAS', //FD-FIELD-FIELD-CALC-RESERVOIR-GAS\r\n name: 'Reservoir Gas',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc/reservoir-gas',\r\n schilds: [\r\n {\r\n id: 'FGD-FIELD-RESERVOIR-GAS',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-FIELD-PURGE-AND-PILOT', //FD-FIELD-FIELD-CALC-PURGE-AND-PILOT\r\n name: 'Purge & Pilot',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/field/field-calc/purge-n-pilot',\r\n schilds: [\r\n {\r\n id: 'FGD-FIELD-PURGE-AND-PILOT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: 'FD/field/field-calc/purge-n-pilot',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG',\r\n name: 'LPG',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-LPG-INPUT',\r\n name: 'Input',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/LPG/Input/TargetPermit',\r\n schilds: [\r\n {\r\n id: 'FGD-LPG-INPUT-TARGETPERMIT',\r\n name: 'Target/Permit',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/TargetPermit',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG-INPUT-OPERATOR',\r\n name: 'Operator',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Operator',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG-INPUT-ANALYST',\r\n name: 'Analyst',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/Analyst',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG-INPUT-PROCESSENGINEER',\r\n name: 'PROCESS ENGINEER',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/Input/PE/ProcessEngineer',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG-FUEL-GAS-FLARING',\r\n name: 'Fuel Gas Flaring',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FuelGasFlaring',\r\n schilds: [\r\n {\r\n id: 'FGD-LPG-FUEL-GAS-FLARING',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG-CC',\r\n name: 'Chemical Composition',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/CC',\r\n schilds: [\r\n {\r\n id: 'FGD-LPG-CC',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG-FINAL-REPORT',\r\n name: 'FINAL REPORT',\r\n disabled: true,\r\n expand: true,\r\n route: '/FD/LPG/FinalReport/LPGData',\r\n schilds: [\r\n {\r\n id: 'FGD-LPG-FINAL-REPORT-LPG-DATA',\r\n name: 'LPG Data',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/LPGData',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-LPG-FINAL-REPORT-FLARING-REPORT',\r\n name: 'Flaring Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/LPG/FinalReport/FlaringReport',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-SGI',\r\n name: 'SGI',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-SGI-FLARE-REPORT',\r\n name: 'Flare Report',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/flare-report',\r\n schilds: [\r\n {\r\n id: 'FGD-SGI-FLARE-REPORT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-SGI-TARGET-PERMIT',\r\n name: 'Target Permit',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/target-permit',\r\n schilds: [\r\n {\r\n id: 'FGD-SGI-TARGET-PERMIT',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-SGI-CC',\r\n name: 'Chemical Composition',\r\n disabled: false,\r\n expand: false,\r\n route: 'FD/SGI/cc',\r\n schilds: [\r\n {\r\n id: 'FGD-SGI-CC',\r\n name: '',\r\n disabled: true,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS',\r\n name: 'Internal Usage',\r\n route: '',\r\n expand: true,\r\n disabled: true,\r\n childs: [\r\n {\r\n id: 'FGD-IUS-INPUT',\r\n name: 'Input',\r\n disabled: true,\r\n expand: true,\r\n route: 'FGD/IUS/Input/boilers-motohours-data',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-INPUT-PROCESS-ENGINEER',\r\n name: 'Process Engineer',\r\n disabled: false,\r\n expand: false,\r\n route: '',\r\n tchilds: [\r\n {\r\n id: 'FGD-IUS-INPUT-PROCESS-ENGINEER-BOILERHOUSEDATA',\r\n name: 'Boilers Motohours Data',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/boilers-motohours-data',\r\n },\r\n {\r\n id: 'FGD-IUS-INPUT-PROCESS-ENGINEER-HEATERSDATA',\r\n name: 'Heaters Motohours Data',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/heaters-motohours-data',\r\n },\r\n {\r\n id: 'FGD-IUS-INPUT-PROCESS-ENGINEER-METERSDATA',\r\n name: 'Meters Data',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/Input/meters-data',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS-CALCULATIONS',\r\n name: 'Calculations',\r\n disabled: true,\r\n expand: true,\r\n route: 'FGD/IUS/calculations/boilers-motohours-data',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-FGU-BOILER',\r\n name: 'Boilers Motohours Data',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/calculations/boilers-motohours-data',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS-FGU-HEATER',\r\n name: 'Heaters Motohours Data',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/calculations/heaters-motohours-data',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n {\r\n id: 'FGD-IUS-MONTHLY-REPORT',\r\n name: 'Monthly Report',\r\n disabled: true,\r\n expand: true,\r\n route: 'FGD/IUS/MonthlyReport/monthly-calc',\r\n schilds: [\r\n {\r\n id: 'FGD-IUS-MONTHLY-REPORT-MONTHLY-CALC',\r\n name: 'Monthly Calc',\r\n disabled: false,\r\n expand: false,\r\n route: 'FGD/IUS/MonthlyReport/monthly-calc',\r\n tchilds: [\r\n {\r\n id: '',\r\n name: '',\r\n route: '',\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ],\r\n },\r\n ];\r\n\r\n activeSubItem: any = null;\r\n\r\n selectedItem: any = null;\r\n isMainPage: boolean = true;\r\n\r\n currentRouteSub: string = '';\r\n\r\n //FD route\r\n isSubFDActive: boolean = true;\r\n\r\n //KTL\r\n isSubFDKTLActive: boolean = true;\r\n isSubFDKTLInputActive: boolean = true;\r\n isSubFDKTLDailyReportActive: boolean = true;\r\n isSubFDKTL2F205Active: boolean = true;\r\n isSubFDKTL23F205Active: boolean = true;\r\n isSubFDKTLMonthlyReportActive: boolean = true;\r\n isSubFDKTLCCActive: boolean = true;\r\n isSubFDKTLSchemaActive: boolean = true;\r\n\r\n //SGP\r\n isSubFDSGPActive: boolean = true;\r\n isSubFDSGPInputActive: boolean = true;\r\n\r\n //SGI\r\n isSubFDSGIActive: boolean = true;\r\n\r\n //FIELD\r\n isSubFDFIELDActive: boolean = true;\r\n isSubFDFIELDFieldCalcActive: boolean = true;\r\n isSubFDFIELDCCActive: boolean = true;\r\n isSubFDFIELDFinalReportActive: boolean = true;\r\n isSubFDFIELDInputActive: boolean = true;\r\n\r\n //LPG\r\n isSubFDLPGActive: boolean = true;\r\n isSubFDLPGInputActive: boolean = true;\r\n\r\n //FD SO2\r\n isSubFDSO2EMISSIONSActive: boolean = true;\r\n isSubFDSO2EMISSIONSInputctive: boolean = true;\r\n\r\n //FGD route\r\n isSubFGDActive: boolean = true;\r\n\r\n //KTL\r\n isSubFGDKTLActive: boolean = true;\r\n\r\n //SGP\r\n isSubFGDSGPActive: boolean = true;\r\n\r\n //SGI\r\n isSubFGDSGIActive: boolean = true;\r\n\r\n //FIELD\r\n isSubFGDFIELDActive: boolean = true;\r\n\r\n //LPG\r\n isSubFGDLPGActive: boolean = true;\r\n\r\n //Internal Usage\r\n isSubFGDInternalUsageActive: boolean = true;\r\n isSubFGDInternalUsageInputActive: boolean = true;\r\n isSubFGDInternalUsageCalculationsActive: boolean = true;\r\n isSubFGDInternalUsageMonthlyReportActive: boolean = true;\r\n\r\n constructor(private router: Router) {\r\n this.router.events.subscribe((event) => {\r\n if (event instanceof NavigationEnd) {\r\n this.updateSelectedItem(event.urlAfterRedirects);\r\n\r\n this.currentRouteSub = event.urlAfterRedirects;\r\n }\r\n });\r\n }\r\n\r\n updateSelectedItem(currentRoute: string) {\r\n this.isMainPage =\r\n currentRoute === '/TCO' ||\r\n currentRoute === '/TCO/ProcessEng' ||\r\n currentRoute === '/FD';\r\n // Logic to set selectedItem based on the current route\r\n this.selectedItem = null;\r\n for (let group of this.arr) {\r\n for (let item of group.items) {\r\n for (let child of item.childs) {\r\n if (currentRoute.startsWith(child.route)) {\r\n this.selectedItem = child;\r\n return;\r\n }\r\n if (child.schilds) {\r\n for (let schild of child.schilds) {\r\n if (currentRoute.startsWith(schild.route)) {\r\n this.selectedItem = child;\r\n return;\r\n }\r\n if (schild.tchilds) {\r\n for (let tchild of schild.tchilds) {\r\n if (currentRoute.startsWith(tchild.route)) {\r\n this.selectedItem = child;\r\n return;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n isSubChildActive(childName: string): boolean {\r\n const currentRoute = this.router.url;\r\n\r\n //==========================================Condition=Variables==========================================//\r\n\r\n //==================================FD==================================//\r\n\r\n //FD\r\n this.isSubFDActive = currentRoute.includes('/TCO/ProcessEng/FD/');\r\n\r\n //===============FD=KTL===============//\r\n\r\n //FD KTL\r\n this.isSubFDKTLActive = currentRoute.includes('/TCO/ProcessEng/FD/KTL/');\r\n\r\n //FD KTL Input\r\n this.isSubFDKTLInputActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Input/'\r\n );\r\n\r\n //FD KTL Daily Report\r\n this.isSubFDKTLDailyReportActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/DailyReport'\r\n );\r\n\r\n //FD KTL F205\r\n this.isSubFDKTL2F205Active = currentRoute.endsWith(\r\n '/TCO/ProcessEng/FD/KTL/F205/KTL2'\r\n );\r\n\r\n //FD KTL F205 KTL23\r\n this.isSubFDKTL23F205Active = currentRoute.endsWith(\r\n '/TCO/ProcessEng/FD/KTL/F205/KTL23'\r\n );\r\n\r\n //FD KTL Monthly Report\r\n this.isSubFDKTLMonthlyReportActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/MonthlyReport'\r\n );\r\n\r\n //FD KTL CC\r\n this.isSubFDKTLCCActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/cc'\r\n );\r\n\r\n //FD KTL Schema\r\n this.isSubFDKTLSchemaActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Schema'\r\n );\r\n\r\n //===============FD=SGP===============//\r\n\r\n //FD SGP\r\n this.isSubFDSGPActive = currentRoute.includes('/TCO/ProcessEng/FD/SGP/');\r\n\r\n //FD SGP Input\r\n this.isSubFDSGPInputActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/SGP/'\r\n );\r\n\r\n //===============FD=SGI===============//\r\n\r\n //FD SGI\r\n this.isSubFDSGIActive = currentRoute.includes('/TCO/ProcessEng/FD/SGI/');\r\n\r\n //===============FD=FIELD===============//\r\n\r\n //FD FIELD\r\n this.isSubFDFIELDActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/'\r\n );\r\n\r\n //FD FIELD Field Calc\r\n this.isSubFDFIELDFieldCalcActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/field-calc'\r\n );\r\n\r\n //FD FIELD CC\r\n this.isSubFDFIELDCCActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/cc'\r\n );\r\n\r\n //FD FIELD Final Report\r\n this.isSubFDFIELDFinalReportActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/final-report'\r\n );\r\n this.isSubFDFIELDInputActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/input'\r\n );\r\n\r\n // FD FIELD INPUT Operator route active\r\n if (\r\n childName === 'Operator' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/input/operator')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD INPUT PE route active\r\n if (\r\n childName === 'PE' &&\r\n currentRoute === '/TCO/ProcessEng/FD/field/input/pe'\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD INPUT Metrics route active\r\n if (\r\n childName === 'Metrics' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/input/metrics')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD INPUT Permits route active\r\n if (\r\n childName === 'Permits' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/input/permits')\r\n ) {\r\n return true;\r\n }\r\n\r\n //===============FD=LPG===============//\r\n\r\n //FD LPG\r\n this.isSubFDLPGActive = currentRoute.includes('/TCO/ProcessEng/FD/LPG/');\r\n\r\n //FD LPG Input\r\n this.isSubFDLPGInputActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/LPG/Input/'\r\n );\r\n\r\n //===============FD=SO2=EMISSIONS===============//\r\n\r\n //FD SO2 EMISSIONS\r\n this.isSubFDSO2EMISSIONSActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/'\r\n );\r\n\r\n //FD SO2 EMISSIONS Projected Data\r\n this.isSubFDSO2EMISSIONSInputctive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/ProjectedData'\r\n );\r\n\r\n //==================================FGD==================================//\r\n\r\n //FGD\r\n this.isSubFGDActive = currentRoute.includes('/TCO/ProcessEng/FGD/');\r\n\r\n //===============FGD=KTL===============//\r\n\r\n //FGD KTL\r\n this.isSubFGDKTLActive = currentRoute.includes('/TCO/ProcessEng/FGD/KTL/');\r\n\r\n //===============FGD=SGP===============//\r\n\r\n //FGD SGP\r\n this.isSubFGDSGPActive = currentRoute.includes('/TCO/ProcessEng/FGD/SGP/');\r\n\r\n //===============FGD=SGI===============//\r\n\r\n //FGD SGI\r\n this.isSubFGDSGIActive = currentRoute.includes('/TCO/ProcessEng/FD/SGI/');\r\n\r\n //===============FGD=FIELD===============//\r\n\r\n //FGD FIELD\r\n this.isSubFGDFIELDActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/'\r\n );\r\n\r\n //===============FGD=LPG===============//\r\n\r\n //FGD LPG\r\n this.isSubFGDLPGActive = currentRoute.includes('/TCO/ProcessEng/FD/LPG/');\r\n\r\n //===============FGD=Internal=Usage===============//\r\n\r\n //FGD Internal Usage\r\n this.isSubFGDInternalUsageActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/'\r\n );\r\n\r\n //FGD Internal Usage Input\r\n this.isSubFGDInternalUsageInputActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/Input/'\r\n );\r\n\r\n //FGD Internal Usage Calculations\r\n this.isSubFGDInternalUsageCalculationsActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/calculations/'\r\n );\r\n\r\n //FGD Internal Usage Monthly Report\r\n this.isSubFGDInternalUsageMonthlyReportActive = currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/MonthlyReport/'\r\n );\r\n\r\n //==========================================Active=Condition==========================================//\r\n\r\n // FD KTL route active\r\n\r\n // FD KTL INPUT route active\r\n if (\r\n childName === 'Input' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/Input/')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT PROCESS ENGINEER route active\r\n\r\n // FD KTL INPUT PROCESS ENGINEER Flaring route active\r\n if (\r\n childName === 'Flaring' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Input/ProcessEngineer/Flaring'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT PROCESS ENGINEER MW route active\r\n if (\r\n childName === 'MW' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/Input/ProcessEngineer/MW')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT PROCESS ENGINEER Leakage route active\r\n if (\r\n childName === 'Leakage' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Input/ProcessEngineer/Leakages'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT PROCESS ENGINEER Constants route active\r\n if (\r\n childName === 'Constants' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Input/ProcessEngineer/Constants'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT PROCESS ENGINEER Permits route active\r\n if (\r\n childName === 'Permits' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Input/ProcessEngineer/TargetPermit'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT PROCESS ENGINEER Input History route active\r\n if (\r\n childName === 'Input History' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Input/ProcessEngineer/InputHistory'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT OPERATOR route active\r\n\r\n // FD KTL INPUT OPERATOR Flaring route active\r\n if (\r\n childName === 'Flaring ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/Input/Operator')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT DIAGNOSTICIAN route active\r\n\r\n // FD KTL INPUT DIAGNOSTICIAN Leakage route active\r\n if (\r\n childName === 'Leakage ' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Input/Diagnostician/Leakage'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL INPUT DIAGNOSTICIAN Flare Switcher route active\r\n if (\r\n childName === 'Flare Switcher' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTL/Input/Diagnostician/FlareSwitcher'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL DAILY REPORT route active\r\n if (\r\n childName === 'Daily Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/DailyReport')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL F-205 KTL23 route active\r\n if (\r\n childName === 'KTL-2.3 F-205' &&\r\n currentRoute.endsWith('/TCO/ProcessEng/FD/KTL/F205/KTL23')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL F-205 KTL2 route active\r\n if (\r\n childName === 'KTL-2 F-205' &&\r\n currentRoute.endsWith('/TCO/ProcessEng/FD/KTL/F205/KTL2')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL MONTHLY REPORT route active\r\n if (\r\n childName === 'Monthly Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/MonthlyReport')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL CC route active\r\n if (\r\n childName === 'Chemical Composition' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/cc')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD KTL SCHEMA route active\r\n if (\r\n childName === 'Schema' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/KTL/Schema')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP route active\r\n\r\n // FD SGP Input route active\r\n if (\r\n childName === 'Input' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/Input/')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP INPUT PROCESS ENGINEER route active\r\n\r\n // FD SGP INPUT PROCESS ENGINEER Flaring route active\r\n if (\r\n childName === 'Flaring' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/SGP/Input/ProcessEngineer/Flaring'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP INPUT PROCESS ENGINEER MW route active\r\n if (\r\n childName === 'MW' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/Input/ProcessEngineer/MW')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP INPUT PROCESS ENGINEER Leakage route active\r\n if (\r\n childName === 'Leakage' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/SGP/Input/ProcessEngineer/Leakages'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP INPUT PROCESS ENGINEER Constants route active\r\n if (\r\n childName === 'Constants' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/SGP/Input/ProcessEngineer/Constants'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP INPUT PROCESS ENGINEER Permits route active\r\n if (\r\n childName === 'Permits' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/SGP/Input/ProcessEngineer/TargetPermit'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP INPUT PROCESS ENGINEER Equipment route active\r\n if (\r\n childName === 'Equipment' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/SGP/Input/ProcessEngineer/Equipment'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP INPUT PROCESS ENGINEER Input History route active\r\n if (\r\n childName === 'Input History' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/SGP/Input/ProcessEngineer/InputHistory'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP Operator route active\r\n\r\n if (\r\n childName === 'Flaring ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/Input/Operator/Flaring')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP Daily Report route active\r\n if (\r\n childName === 'Daily Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/DailyReport')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP Monthly Report route active\r\n if (\r\n childName === 'Monthly Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/MonthlyReport')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP CC route active\r\n if (\r\n childName === 'Chemical Composition' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/cc')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGP Schema route active\r\n if (\r\n childName === 'Schema' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGP/Schema')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGI route active\r\n\r\n // FD SGI Flare Report route active\r\n if (\r\n childName === 'Flare Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/flare-report')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGI Target Permit route active\r\n if (\r\n childName === 'Target Permit' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/target-permit')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SGI Chemical Composition route active\r\n if (\r\n childName === 'Chemical Composition' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/SGI/cc')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD Final Report route active\r\n\r\n // FD Final Report Gas Balance route active\r\n if (\r\n childName === 'Gas Balance' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/final-report/gas-balance')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD Final Report Flaring Report route active\r\n if (\r\n childName === 'Flaring Report' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/field/final-report/flaring-report'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD field calc dry gas route active\r\n if (\r\n childName === 'Dry Gas' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/field-calc/dry-gas')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD field calc reservoir gas route active\r\n if (\r\n childName === 'Reservoir Gas' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/field-calc/reservoir-gas')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD field calc purge n pilot route active\r\n if (\r\n childName === 'Purge & Pilot' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/field-calc/purge-n-pilot')\r\n ) {\r\n return true;\r\n }\r\n\r\n //FD FIELD CC fuel gas route active\r\n\r\n if (\r\n childName === 'Fuel Gas' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/cc/fuel-gas')\r\n ) {\r\n return true;\r\n }\r\n\r\n //FD FIELD CC reservoir gas route active\r\n\r\n if (\r\n childName === 'Reservoir Gas' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/cc/reservoir-gas')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD FIELD Input\r\n\r\n if (\r\n childName === 'Input' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/field/input')\r\n )\r\n return true;\r\n\r\n // FD LPG route active\r\n\r\n // FD LPG INPUT\r\n if (\r\n childName === 'Input' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/Input/TargetPermit')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG INPUT Flaring\r\n if (\r\n childName === 'Flaring' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/Input/PE/ProcessEngineer')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG INPUT TargetPermit\r\n if (\r\n childName === 'Permits' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/Input/TargetPermit')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG INPUT Analyst\r\n if (\r\n childName === 'RTC/Flaring' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/Input/Analyst')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG INPUT Operator\r\n if (\r\n childName === 'Flaring ' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/Input/Operator')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG FINAL REPORT\r\n if (\r\n childName === 'Final Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/FinalReport/')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG FINAL REPORT LPG Data\r\n if (\r\n childName === 'LPG Data' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/FinalReport/LPGData')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD LPG FINAL REPORT Flaring Report\r\n if (\r\n childName === 'Flaring Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FD/LPG/FinalReport/FlaringReport')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FD SO2 Emissions route active\r\n\r\n // FD SO2 Emissions Projected Data route active\r\n if (\r\n childName === 'Projected Data' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/ProjectedData'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD route active\r\n\r\n // FGD KTL route active\r\n if (\r\n childName === 'Fuel Gas Dashboard' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/KTL/ProductionGasBalance')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD SGP route active\r\n if (\r\n childName === 'Fuel Gas Dashboard' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/SGP/FuelGasDashboard ')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD SGP Gas Usage Report route active\r\n if (\r\n childName === 'Gas Usage Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/SGP/GasUsageReport')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage route active\r\n\r\n // FGD Internal Usage Input route active\r\n if (\r\n childName === 'Input' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/Input/')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage Input Boilers Motohours Data route active\r\n if (\r\n childName === 'Boilers Motohours Data' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/Input/boilers-motohours-data'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage Input Heaters Motohours Data route active\r\n if (\r\n childName === 'Heaters Motohours Data' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/Input/heaters-motohours-data'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage Input Meters Data route active\r\n if (\r\n childName === 'Meters Data' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/Input/meters-data')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage Calculations route active\r\n if (\r\n childName === 'Calculations' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/calculations/')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage Calculations Boilers Motohours Data route active\r\n if (\r\n childName === 'Boilers Motohours Data' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/calculations/boilers-motohours-data'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage Calculations Heaters Motohours Data route active\r\n if (\r\n childName === 'Heaters Motohours Data' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/calculations/heaters-motohours-data'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage Monthly Report\r\n if (\r\n childName === 'Monthly Report' &&\r\n currentRoute.includes('/TCO/ProcessEng/FGD/IUS/MonthlyReport/')\r\n ) {\r\n return true;\r\n }\r\n\r\n // FGD Internal Usage Monthly Report Monthly Calc\r\n if (\r\n childName === 'Monthly Calc' &&\r\n currentRoute.includes(\r\n '/TCO/ProcessEng/FGD/IUS/MonthlyReport/monthly-calc'\r\n )\r\n ) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n // isActive(groupName: string): boolean {\r\n\r\n // const currentRoute = this.router.url;\r\n\r\n // //===========================FD===========================//\r\n\r\n // //FD routes\r\n // this.isSubFDActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/'\r\n // );\r\n\r\n // //FD KTL routes\r\n // this.isSubFDKTLActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/KTL/'\r\n // );\r\n\r\n // //FD KTL INPUT routes\r\n // this.isSubFDKTLInputActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/KTL/Input/'\r\n // );\r\n\r\n // //FD KTL Daily report routes\r\n // this.isSubFDKTLDailyReportActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/KTL/DailyReport'\r\n // );\r\n\r\n // //FD KTL Daily report F205 routes\r\n // this.isSubFDKTL2F205Active = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/KTL/F205'\r\n // );\r\n\r\n // //FD KTL F205 routes\r\n // this.isSubFDKTLMonthlyReportActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/KTL/MonthlyReport'\r\n // );\r\n\r\n // //FD KTL CC routes\r\n // this.isSubFDKTLCCActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/KTL/cc'\r\n // );\r\n\r\n // //FD KTL Schema routes\r\n // this.isSubFDKTLSchemaActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/KTL/Schema'\r\n // );\r\n\r\n // //FD SGP routes\r\n // this.isSubFDSGPActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/SGP/'\r\n // );\r\n\r\n // //FD SGI routes\r\n // this.isSubFDSGIActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/SGI/'\r\n // );\r\n\r\n // //FD FIELD routes\r\n // this.isSubFDFIELDActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/field/'\r\n // );\r\n\r\n // //FD FIELD Field calc routes\r\n // this.isSubFDFIELDFieldCalcActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/field/field-calc'\r\n // );\r\n\r\n // //FD FIELD final report routes\r\n // this.isSubFDFIELDFinalReportActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/field/final-report'\r\n // );\r\n\r\n // //FD LPG routes\r\n // this.isSubFDLPGActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/LPG/'\r\n // );\r\n\r\n // //FD SO2 Emissions routes\r\n // this.isSubFDSO2EMISSIONSActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/KTLSGP/So2Emissions/'\r\n // );\r\n\r\n // //===========================FGD===========================//\r\n\r\n // //FGD routes\r\n // this.isSubFGDActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FGD/'\r\n // );\r\n\r\n // //FGD KTL routes\r\n // this.isSubFGDKTLActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FGD/KTL/'\r\n // );\r\n\r\n // //FGD SGP routes\r\n // this.isSubFGDSGPActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FGD/SGP/'\r\n // );\r\n\r\n // //FGD SGI routes\r\n // this.isSubFGDSGIActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/SGI/'\r\n // );\r\n // this.isSubFDSGPActive = currentRoute.includes('/TCO/ProcessEng/FD/SGP/');\r\n // this.isSubFDSGIActive = currentRoute.includes('/TCO/ProcessEng/FD/SGI/');\r\n\r\n // this.isSubFDFIELDActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/field/'\r\n // );\r\n // this.isSubFDFIELDFieldCalcActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/field/field-calc'\r\n // );\r\n // this.isSubFDFIELDFinalReportActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/field/final-report'\r\n // );\r\n // this.isSubFDFIELDInputActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/field/input'\r\n // );\r\n\r\n // //FGD FIELD routes\r\n // this.isSubFGDFIELDActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/field/'\r\n // );\r\n\r\n // //FGD LPG routes\r\n // this.isSubFGDLPGActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FD/LPG/'\r\n // );\r\n\r\n // //FGD IUS routes\r\n // this.isSubFGDInternalUsageActive = currentRoute.includes(\r\n // '/TCO/ProcessEng/FGD/IUS/'\r\n // );\r\n\r\n // return false;\r\n\r\n // }\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n {{ schild.name }}\r\n

\r\n
    \r\n \r\n \r\n {{ tchild.name }}\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n

\r\n {{ schild.name }}\r\n

\r\n
    \r\n \r\n \r\n {{ tchild.name }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n {{ schild.name }}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n {{ schild.name }}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n {{ schild.name }}\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n {{ schild.name }}\r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n {{ schild.name }}\r\n

\r\n
    \r\n \r\n \r\n {{ tchild.name }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n {{ schild.name }}\r\n

\r\n
    \r\n \r\n \r\n {{ tchild.name }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ schild.name }}\r\n \r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n

\r\n {{ schild.name }}\r\n

\r\n
    \r\n \r\n \r\n {{ tchild.name }}\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n

\r\n {{ schild.name }}\r\n

\r\n
    \r\n \r\n \r\n {{ tchild.name }}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ schild.name }}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {{ schild.name }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-shared-error-page',\r\n templateUrl: './shared-error-page.component.html',\r\n styleUrls: ['./shared-error-page.component.scss']\r\n})\r\nexport class SharedErrorPageComponent {\r\n\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n

Something`s wrong here...

\r\n

We can`t find the page or the page isn`t available. Please contact support if you receive an error.

\r\n
\r\n
\r\n\r\n
\r\n
","import { Component } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport { Store } from '@ngrx/store';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { selectUserGroups } from 'src/app/state/auth/auth.selector';\r\n\r\n@Component({\r\n selector: 'app-shared-unauthorized-page',\r\n templateUrl: './shared-unauthorized-page.component.html',\r\n styleUrls: ['./shared-unauthorized-page.component.scss']\r\n})\r\nexport class SharedUnauthorizedPageComponent {\r\n constructor(private store: Store) {\r\n this.store.select(selectUserGroups).pipe(takeUntilDestroyed()).subscribe(roles => {})\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n

Page is restricted or there is permissions to view this page

\r\n

Please contact support if you require access to this page.

\r\n
\r\n
\r\n
\r\n\r\n
\r\n
","import { NgModule } from '@angular/core';\r\nimport { RouterModule } from '@angular/router';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { MaterialModule } from '../material/material.module';\r\n\r\nimport { ChartjsComponent } from './components/chartjs/chartjs.component';\r\nimport { SharedButtonComponent } from './components/shared-button/shared-button.component';\r\nimport { SharedAComponent } from './components/shared-a/shared-a.component';\r\nimport { TabComponent } from './components/shared-Tab/tab.component';\r\nimport { DynamicTitleComponent } from './components/shared-dynamic-title/dynamic-title.component';\r\nimport { SharedHeaderComponent } from './components/shared-header/shared-header.component';\r\nimport { SharedDropdownGasParkComponent } from './components/shared-dropdown-gas-park/shared-dropdown-gas-park.component';\r\nimport { SharedDropdownPeComponent } from './components/shared-dropdown-pe/shared-dropdown-pe.component';\r\nimport { SharedNotificationComponent } from './components/shared-notification/shared-notification.component';\r\nimport { SharedLoadingSpinnerComponent } from './components/shared-loading-spinner/shared-loading-spinner.component';\r\nimport { SharedDeleteConfirmationComponent } from './components/shared-delete-confirmation/shared-delete-confirmation.component';\r\nimport { SharedErrorPageComponent } from './shared-error-page/shared-error-page.component';\r\nimport { SharedScrollToTopComponent } from './components/shared-scroll-to-top/shared-scroll-to-top.component';\r\nimport { SelectComponent } from './components/select/select.component';\r\nimport { RadioToggleComponent } from './components/radio-toggle/radio-toggle.component';\r\nimport { SidebarComponent } from './components/shared-sidebar/sidebar.component';\r\nimport { HintErrorComponent } from './components/hint-error/hint-error.component';\r\nimport { SharedSaveConfirmationComponent } from './components/shared-save-confirmation/shared-save-confirmation.component';\r\nimport { CheckboxComponent } from './components/checkbox/checkbox.component';\r\nimport { TranslateModule } from '@ngx-translate/core';\r\n\r\n@NgModule({\r\n declarations: [\r\n SharedButtonComponent,\r\n SharedAComponent,\r\n TabComponent,\r\n DynamicTitleComponent,\r\n SharedHeaderComponent,\r\n SharedDropdownGasParkComponent,\r\n ChartjsComponent,\r\n SharedDropdownPeComponent,\r\n SharedNotificationComponent,\r\n SharedLoadingSpinnerComponent,\r\n SharedDeleteConfirmationComponent,\r\n SharedErrorPageComponent,\r\n SharedScrollToTopComponent,\r\n SelectComponent,\r\n RadioToggleComponent,\r\n SidebarComponent,\r\n HintErrorComponent,\r\n SharedSaveConfirmationComponent,\r\n SidebarComponent,\r\n CheckboxComponent,\r\n ],\r\n imports: [RouterModule, MaterialModule, ReactiveFormsModule, TranslateModule],\r\n exports: [\r\n SharedButtonComponent,\r\n SharedAComponent,\r\n TabComponent,\r\n DynamicTitleComponent,\r\n SharedDropdownGasParkComponent,\r\n ChartjsComponent,\r\n SharedDropdownPeComponent,\r\n SharedNotificationComponent,\r\n SharedLoadingSpinnerComponent,\r\n SharedDeleteConfirmationComponent,\r\n SharedErrorPageComponent,\r\n SharedScrollToTopComponent,\r\n SelectComponent,\r\n RadioToggleComponent,\r\n SidebarComponent,\r\n HintErrorComponent,\r\n SharedSaveConfirmationComponent,\r\n SidebarComponent,\r\n CheckboxComponent,\r\n ],\r\n})\r\nexport class SharedModule {}\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { UserGroups } from '../../web-api-client';\r\n\r\nexport const getUserGroups = createAction('[Auth] Get User Groups');\r\n\r\nexport const getUserGroupsSuccess = createAction(\r\n '[Auth] Get User Groups Success',\r\n props<{ userGroups: UserGroups[] }>()\r\n);\r\n\r\nexport const getUserGroupsFailure = createAction('[Auth] Get User Groups Failure');\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport { catchError, map, retry, switchMap } from 'rxjs/operators';\r\nimport * as AuthActions from './auth.action';\r\nimport { UserClient, UserGroups } from '../../web-api-client';\r\n\r\n@Injectable()\r\nexport class AuthEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private userClient: UserClient\r\n ) { }\r\n\r\n getUserGroups$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(AuthActions.getUserGroups),\r\n switchMap(action => {\r\n const storedUser = localStorage.getItem('currentUser');\r\n if (storedUser === \"\") {\r\n console.log(storedUser);\r\n console.log(\"effect auth stored user\");\r\n const user = this.parseUser(storedUser);\r\n return of(AuthActions.getUserGroupsSuccess({ userGroups: user }));\r\n } else {\r\n return this.userClient.getCurrentUserGroups()\r\n .pipe(\r\n retry(3),\r\n map(userGroups => AuthActions.getUserGroupsSuccess({ userGroups })),\r\n catchError(() => of(AuthActions.getUserGroupsFailure()))\r\n )\r\n }\r\n })\r\n )\r\n );\r\n\r\n getUserGroupsSuccess$ = createEffect(() =>\r\n this.actions$.pipe(\r\n ofType(AuthActions.getUserGroupsSuccess),\r\n map(action => {\r\n localStorage.setItem('currentUser', JSON.stringify(action.userGroups));\r\n return { type: '[No Action]' }; // No further action required\r\n })\r\n ),\r\n { dispatch: false }\r\n );\r\n\r\n private parseUser(storedUser: string): UserGroups[] {\r\n const parsedUser = JSON.parse(storedUser);\r\n var myUserGroups = parsedUser.map((role: string) => UserGroups[role as keyof typeof UserGroups]);\r\n return myUserGroups;\r\n }\r\n //logout$ = createEffect(() =>\r\n // this.actions$.pipe(\r\n // ofType(AuthActions.logout),\r\n // map(() => {\r\n // localStorage.removeItem('currentUser');\r\n // return { type: '[No Action]' }; // No further action required\r\n // })\r\n // ),\r\n // { dispatch: false }\r\n //);\r\n}\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as AuthActions from './auth.action';\r\nimport { UserGroups } from '../../web-api-client';\r\n\r\nexport interface AuthState {\r\n userGroups: UserGroups[] | null;\r\n}\r\n\r\nexport const initialState: AuthState = {\r\n userGroups: null,\r\n};\r\n\r\nexport const AuthReducer = createReducer(\r\n initialState,\r\n on(AuthActions.getUserGroupsSuccess, (state, { userGroups }) => ({ ...state, userGroups })),\r\n on(AuthActions.getUserGroupsFailure, state => ({ ...state, userGroups: [] }))\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../core/models/appState.model';\r\nimport { UserGroups } from '../../web-api-client';\r\n\r\nexport const selectUserGroups = createSelector(\r\n (state: AppState) => state.authUserGroups.userGroups,\r\n (userGroups: UserGroups[] | undefined | null) => userGroups\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { LPGFlowmeterGraphDTO } from 'src/app/web-api-client';\r\n\r\nexport const getChartData = createAction(\r\n '[ChartJs] Get Data',\r\n props<{ startTime: Date; endTime: Date; graphType: number }>()\r\n);\r\n\r\nexport const getChartDataSuccess = createAction(\r\n '[ChartJs] Get Data Success',\r\n props()\r\n);\r\n\r\nexport const getChartDataFailure = createAction(\r\n '[ChartJs] Get Data Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const getFlowMeterChartData = createAction(\r\n '[ChartJs] Get Data',\r\n props<{ startTime: Date; endTime: Date; graphType: number }>()\r\n);\r\n\r\nexport const getFlowMeterChartDataSuccess = createAction(\r\n '[ChartJs] Get Data Success',\r\n props()\r\n);\r\n\r\nexport const getFlowMeterChartDataFailure = createAction(\r\n '[ChartJs] Get Data Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as chartJsActions from './chartjs.action';\r\nimport { LPGClient, SO2Client } from '../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ChartJsEffects {\r\n constructor(\r\n private actions: Actions,\r\n private lpgClient: LPGClient,\r\n private so2Client: SO2Client\r\n ) {}\r\n\r\n loadChartData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(chartJsActions.getChartData),\r\n exhaustMap((action) => {\r\n return this.lpgClient\r\n .getFlowmeterGraphs(\r\n action.startTime,\r\n action.endTime,\r\n action.graphType\r\n )\r\n .pipe(\r\n map((res) => chartJsActions.getChartDataSuccess(res)),\r\n catchError((err) => of(chartJsActions.getChartDataFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n getFlowmeterCalculationChart = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(chartJsActions.getFlowMeterChartData),\r\n exhaustMap((action) => {\r\n return this.lpgClient\r\n .getFlowmeterCalculationData(\r\n action.startTime,\r\n action.endTime,\r\n action.graphType\r\n )\r\n .pipe(\r\n map((res) => chartJsActions.getChartDataSuccess(res)),\r\n catchError((err) => of(chartJsActions.getChartDataFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n}\r\n","import { createReducer, on } from '@ngrx/store';\r\n\r\nimport * as chartJsActions from './chartjs.action';\r\nimport { LPGFlowmeterGraphDTO } from 'src/app/web-api-client';\r\n\r\nexport interface ChartjsState {\r\n data: LPGFlowmeterGraphDTO | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: ChartjsState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const chartJsReducer = createReducer(\r\n initialState,\r\n on(\r\n chartJsActions.getChartData,\r\n (state, { startTime, endTime, graphType }) => ({\r\n ...state,\r\n isLoading: true,\r\n })\r\n ),\r\n on(chartJsActions.getChartDataSuccess, (state, result) => ({\r\n data: result,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(chartJsActions.getChartDataFailure, (state, result) => ({\r\n ...state,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../core/models/appState.model';\r\nimport { LPGFlowmeterValuesDTO } from 'src/app/web-api-client';\r\n\r\nexport const chartTitleSelector = createSelector(\r\n (state: AppState) => state.chartjs.data?.title,\r\n (data: string | undefined) => data\r\n);\r\n\r\nexport const chartDataSelector = createSelector(\r\n (state: AppState) => state.chartjs.data?.values,\r\n (data: LPGFlowmeterValuesDTO[] | undefined) => data\r\n // {\r\n // return data?.map((val) => {\r\n // return { x: val.timeStamp.getTime(), y: val.value };\r\n // });\r\n // }\r\n);\r\n\r\nexport const chartDataXLabelSelector = createSelector(\r\n (state: AppState) => state.chartjs.data?.values,\r\n (values: LPGFlowmeterValuesDTO[] | undefined) => {\r\n return values?.map((value) => value.timeStamp.toISOString());\r\n }\r\n);\r\n\r\nexport const chartDataYLabelSelector = createSelector(\r\n (state: AppState) => state.chartjs.data?.values,\r\n (values: LPGFlowmeterValuesDTO[] | undefined) => {\r\n return values?.map((value) => value.value);\r\n }\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { IPagedListOfKTLSGPSO2ProjectedDataInputDTO, KTLSGPSO2ProjectedDataInputDTO, PagedListOfKTLSGPSO2ProjectedDataInputDTO } from 'src/app/web-api-client';\r\n\r\nexport const ListProjectedData = createAction(\r\n '[ProjectedData] List Projected Data',\r\n props<{ startTime: Date; pageNumber: number | null; pageSize: number | null }>()\r\n);\r\nexport const ListProjectedDataSuccess = createAction(\r\n '[ProjectedData] List Projected Data Success',\r\n props<{ data: PagedListOfKTLSGPSO2ProjectedDataInputDTO }>() // IPagedListOfKTLSGPSO2ProjectedDataInputDTO KTLSGPSO2ProjectedDataInputDTO[]\r\n);\r\nexport const ListProjectedDataFailure = createAction(\r\n '[ProjectedData] List Projected Data Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const AddProjectedData = createAction(\r\n '[ProjectedData] Add Projected Data',\r\n props()\r\n);\r\nexport const AddProjectedDataSuccess = createAction(\r\n '[ProjectedData] Add Projected Data Success',\r\n props()\r\n);\r\nexport const AddProjectedDataFailure = createAction(\r\n '[ProjectedData] Add Projected Data Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const DeleteProjectedData = createAction(\r\n '[ProjectedData] Delete Projected Data',\r\n props<{ id: number; startTime: Date; pageNumber: number | null; pageSize: number | null }>()\r\n);\r\nexport const DeleteProjectedDataSuccess = createAction(\r\n '[ProjectedData] Delete Projected Data Success',\r\n props()\r\n);\r\nexport const DeleteProjectedDataFailure = createAction(\r\n '[ProjectedData] Delete Projected Data Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError, concatMap } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as ProjectedDataActions from './projected-data.actions';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { SO2Client } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ProjectedDataEffects {\r\n constructor(private actions: Actions, private so2Client: SO2Client) {}\r\n\r\n addProjectedData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(ProjectedDataActions.AddProjectedData),\r\n exhaustMap((action) => {\r\n return this.so2Client.inputProjectedData(action).pipe(\r\n concatMap((res) => [\r\n ProjectedDataActions.AddProjectedDataSuccess(res),\r\n // ProjectedDataActions.ListProjectedData({\r\n // startTime: action.startTime,\r\n // pageNumber: action.pageNumber,\r\n // pageSize: action.pageSize\r\n // }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(ProjectedDataActions.AddProjectedDataFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n listProjectedData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(ProjectedDataActions.ListProjectedData),\r\n exhaustMap((action) =>\r\n this.so2Client\r\n .getProjectedData(new Date(action.startTime), action.pageNumber, action.pageSize)\r\n .pipe(\r\n map((res) =>// [\r\n ProjectedDataActions.ListProjectedDataSuccess({ data: res }),\r\n // notificationActions.showNotification({isSuccess: true}),\r\n // notificationActions.stopLoading()\r\n //]\r\n \r\n ),\r\n catchError((err) => of(ProjectedDataActions.ListProjectedDataFailure(err)))\r\n )\r\n )\r\n )\r\n );\r\n \r\n showNotification = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(\r\n ProjectedDataActions.ListProjectedDataFailure,\r\n ProjectedDataActions.AddProjectedDataSuccess\r\n ),\r\n map((action) => //[\r\n // notificationActions.stopLoading(),\r\n // notificationActions.clearNotification()\r\n notificationActions.showNotification({ isSuccess: action.type === ProjectedDataActions.ListProjectedDataSuccess.type }),\r\n\r\n // notificationActions.stopLoading()\r\n // notificationActions.clearNotification()\r\n // ]\r\n \r\n )\r\n )\r\n );\r\n\r\n deleteProjectedData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(ProjectedDataActions.DeleteProjectedData),\r\n exhaustMap((action) => {\r\n return this.so2Client.deleteProjectedData(action.id).pipe(\r\n concatMap((res) => [\r\n ProjectedDataActions.DeleteProjectedDataSuccess(res),\r\n ProjectedDataActions.ListProjectedData({ \r\n startTime: action.startTime,\r\n pageNumber: action.pageNumber,\r\n pageSize: action.pageSize\r\n }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(ProjectedDataActions.DeleteProjectedDataFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n);\r\n\r\n}","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as ProjectedDataActions from './projected-data.actions';\r\nimport { IPagedListOfKTLSGPSO2ProjectedDataInputDTO, KTLSGPSO2ProjectedDataInputDTO, PagedListOfKTLSGPSO2ProjectedDataInputDTO } from 'src/app/web-api-client';\r\n\r\nexport interface ProjectedDataState{\r\n data: PagedListOfKTLSGPSO2ProjectedDataInputDTO | null; // KTLSGPSO2ProjectedDataInputDTO[] IPagedListOfKTLSGPSO2ProjectedDataInputDTO\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: ProjectedDataState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const ProjectedDataReducer = createReducer(\r\n initialState,\r\n on(ProjectedDataActions.AddProjectedData, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(ProjectedDataActions.AddProjectedDataSuccess, (state, { res }) => ({ //payload\r\n ...state,\r\n result: res, // payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(ProjectedDataActions.AddProjectedDataFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(ProjectedDataActions.ListProjectedData, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(ProjectedDataActions.ListProjectedDataSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(ProjectedDataActions.ListProjectedDataFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(ProjectedDataActions.DeleteProjectedData, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(ProjectedDataActions.DeleteProjectedDataSuccess, (state, result) => ({\r\n data: result.data,\r\n // ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(ProjectedDataActions.DeleteProjectedDataFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);","import { createAction, props } from '@ngrx/store';\r\nimport { SO2FlowmeterGraphDTO } from 'src/app/web-api-client';\r\n\r\nexport const getSO2EmissionsFlowmeterGraph = createAction(\r\n '[SO2 Charts] SO2 Emissions Flowmeter Graph',\r\n props<{ date: Date; plant: number; areaType: number }>()\r\n);\r\nexport const getSO2EmissionsFlowmeterGraphSuccess = createAction(\r\n '[SO2 Charts] SO2 Emissions Flowmeter Graph Success',\r\n props<{ data: SO2FlowmeterGraphDTO[] }>()\r\n);\r\nexport const getSO2EmissionsFlowmeterGraphFailure = createAction(\r\n '[SO2 Charts] SO2 Emissions Flowmeter Graph Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as chartJsActions from './so2-charts.action';\r\nimport { LPGClient, SO2Client } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SO2ChartsEffects {\r\n constructor(private actions: Actions, private so2Client: SO2Client) {}\r\n\r\n so2EmissionFlowmeterGraph = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(chartJsActions.getSO2EmissionsFlowmeterGraph),\r\n exhaustMap((action) => {\r\n return this.so2Client\r\n .getFlowmeterGraph(action.date, action.plant, action.areaType)\r\n .pipe(\r\n map((res) =>\r\n chartJsActions.getSO2EmissionsFlowmeterGraphSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(chartJsActions.getSO2EmissionsFlowmeterGraphFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as so2ChartsActions from './so2-charts.action';\r\nimport { SO2FlowmeterGraphDTO } from 'src/app/web-api-client';\r\n\r\nexport interface SO2ChartsState {\r\n data: SO2FlowmeterGraphDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: SO2ChartsState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const SO2ChartsReducer = createReducer(\r\n initialState,\r\n on(\r\n so2ChartsActions.getSO2EmissionsFlowmeterGraph,\r\n (state, { date, plant, areaType }) => ({\r\n ...state,\r\n data: null,\r\n result: null,\r\n isLoading: true,\r\n })\r\n ),\r\n on(\r\n so2ChartsActions.getSO2EmissionsFlowmeterGraphSuccess,\r\n (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })\r\n ),\r\n on(\r\n so2ChartsActions.getSO2EmissionsFlowmeterGraphFailure,\r\n (state, result) => ({\r\n ...state,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })\r\n )\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport {\r\n KTLSGPSO2RecalculationRecordDTO,\r\n SO2StreamGroupChildrenTypes,\r\n} from 'src/app/web-api-client';\r\n\r\nexport const ListSO2EmissionsRecalculation = createAction(\r\n '[SO2EmissionsRecalc] List SO2 Emissions',\r\n props<{ startTime: Date; train: SO2StreamGroupChildrenTypes }>()\r\n);\r\nexport const ListSO2EmissionsRecalculationSuccess = createAction(\r\n '[SO2EmissionsRecalc] List SO2 Emissions Success',\r\n props<{ data: KTLSGPSO2RecalculationRecordDTO[] }>()\r\n);\r\nexport const ListSO2EmissionsRecalculationFailure = createAction(\r\n '[SO2Recalc] List SO2 Emissions Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const AddSO2EmissionsRecalculation = createAction(\r\n '[SO2Recalc] Add SO2 Recalc',\r\n props<{ props: KTLSGPSO2RecalculationRecordDTO }>()\r\n);\r\nexport const AddSO2EmissionsRecalculationSuccess = createAction(\r\n '[SO2Recalc] Add SO2 Recalc Success',\r\n props()\r\n);\r\nexport const AddSO2EmissionsRecalculationFailure = createAction(\r\n '[SO2Recalc] Add SO2 Recalc Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const DeleteSO2EmissionsRecalculation = createAction(\r\n '[SO2Recalc] Delete SO2 Recalc',\r\n props<{ props: KTLSGPSO2RecalculationRecordDTO }>()\r\n);\r\nexport const DeleteSO2EmissionsRecalculationSuccess = createAction(\r\n '[SO2Recalc] Delete SO2 Recalc Success',\r\n props()\r\n);\r\nexport const DeleteSO2EmissionsRecalculationFailure = createAction(\r\n '[SO2Recalc] Delete SO2 Recalc Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError, concatMap } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as SO2EmissionsRecalculationActions from './so2-emissions-recalculation.actions';\r\nimport * as SO2EmissionsActions from '../so2-emissions/so2-emissions.actions';\r\nimport * as SO2ChartsActions from '../so2-charts/so2-charts.action';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { SO2Client } from '../../../web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SO2EmissionsRecalculationEffects {\r\n constructor(private actions: Actions, private so2Client: SO2Client) {}\r\n\r\n listRecalculationSO2Emissions = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(SO2EmissionsRecalculationActions.ListSO2EmissionsRecalculation),\r\n exhaustMap((action) => {\r\n return this.so2Client\r\n .getSO2RecalculationData(new Date(action.startTime), action.train)\r\n .pipe(\r\n map((res) =>\r\n SO2EmissionsRecalculationActions.ListSO2EmissionsRecalculationSuccess(\r\n { data: res }\r\n )\r\n ),\r\n catchError((err) =>\r\n of(\r\n SO2EmissionsRecalculationActions.ListSO2EmissionsRecalculationFailure(\r\n err\r\n )\r\n )\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n recalculationSO2Emissions = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(SO2EmissionsRecalculationActions.AddSO2EmissionsRecalculation),\r\n exhaustMap((action) => {\r\n return this.so2Client.recalculation(action.props).pipe(\r\n concatMap((res) => [\r\n SO2EmissionsRecalculationActions.AddSO2EmissionsRecalculationSuccess(\r\n res\r\n ),\r\n SO2EmissionsRecalculationActions.ListSO2EmissionsRecalculation({\r\n startTime: action.props.startTime,\r\n train: action.props.area,\r\n }),\r\n SO2ChartsActions.getSO2EmissionsFlowmeterGraph({\r\n date: action.props.startTime,\r\n plant: action.props.plantType,\r\n areaType: action.props.area,\r\n }),\r\n SO2EmissionsActions.ListSO2Emissions({\r\n startTime: action.props.startTime,\r\n }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(\r\n SO2EmissionsRecalculationActions.AddSO2EmissionsRecalculationFailure(\r\n err\r\n )\r\n ),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n deleteRecalculationSO2Emissions = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(SO2EmissionsRecalculationActions.DeleteSO2EmissionsRecalculation),\r\n exhaustMap((action) => {\r\n return this.so2Client.deleteSO2Recalculation(action.props.id).pipe(\r\n concatMap((res) => [\r\n SO2EmissionsRecalculationActions.DeleteSO2EmissionsRecalculationSuccess(\r\n {\r\n data: res,\r\n }\r\n ),\r\n SO2EmissionsRecalculationActions.ListSO2EmissionsRecalculation({\r\n startTime: action.props.startTime,\r\n train: action.props.area,\r\n }),\r\n SO2ChartsActions.getSO2EmissionsFlowmeterGraph({\r\n date: action.props.startTime,\r\n plant: action.props.plantType,\r\n areaType: action.props.area,\r\n }),\r\n SO2EmissionsActions.ListSO2Emissions({\r\n startTime: action.props.startTime,\r\n }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(\r\n SO2EmissionsRecalculationActions.DeleteSO2EmissionsRecalculationFailure(\r\n err\r\n )\r\n ),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as SO2EmissionsActions from './so2-emissions-recalculation.actions';\r\nimport {\r\n KTLSGPSO2RecalculationRecordDTO,\r\n KTLSGPSO2RecordDTO,\r\n SO2FlowmeterGraphDTO,\r\n} from 'src/app/web-api-client';\r\nimport { KTLSGPSO2CalculatedReportDTO } from 'src/app/web-api-client';\r\n\r\nexport interface SO2EmissionsRecalculationState {\r\n data: KTLSGPSO2RecalculationRecordDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: SO2EmissionsRecalculationState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const SO2EmissionsRecalculationReducer = createReducer(\r\n initialState,\r\n on(SO2EmissionsActions.ListSO2EmissionsRecalculation, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(\r\n SO2EmissionsActions.ListSO2EmissionsRecalculationSuccess,\r\n (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })\r\n ),\r\n on(\r\n SO2EmissionsActions.ListSO2EmissionsRecalculationFailure,\r\n (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })\r\n ),\r\n on(SO2EmissionsActions.AddSO2EmissionsRecalculation, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(\r\n SO2EmissionsActions.AddSO2EmissionsRecalculationSuccess,\r\n (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })\r\n ),\r\n on(\r\n SO2EmissionsActions.AddSO2EmissionsRecalculationFailure,\r\n (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })\r\n ),\r\n on(SO2EmissionsActions.DeleteSO2EmissionsRecalculation, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(\r\n SO2EmissionsActions.DeleteSO2EmissionsRecalculationSuccess,\r\n (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })\r\n ),\r\n on(\r\n SO2EmissionsActions.DeleteSO2EmissionsRecalculationFailure,\r\n (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })\r\n )\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { KTLSGPSO2RecordDTO } from 'src/app/web-api-client';\r\nimport { KTLSGPSO2CalculatedReportDTO } from 'src/app/web-api-client';\r\n\r\nexport const ListSO2Emissions = createAction(\r\n '[SO2Emissions] List SO2 Emissions',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const ListSO2EmissionsSuccess = createAction(\r\n '[SO2Emissions] List SO2 Emissions Success',\r\n props<{ data: KTLSGPSO2CalculatedReportDTO[] }>()\r\n);\r\nexport const ListSO2EmissionsFailure = createAction(\r\n '[SO2Emissions] List SO2 Emissions Failure',\r\n props<{ message: string }>()\r\n);\r\nexport const SO2EmissionsEdit = createAction(\r\n '[SO2Emissions] SO2 Emissions Edit',\r\n props()\r\n);\r\nexport const SO2EmissionsEditSuccess = createAction(\r\n '[SO2Emissions] SO2 Emissions Edit Success',\r\n props()\r\n);\r\nexport const SO2EmissionsEditFailure = createAction(\r\n '[SO2Emissions] SO2 Emissions Edit Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n concatMap,\r\n withLatestFrom,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as SO2EmissionsActions from './so2-emissions.actions';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { SO2Client } from '../../../web-api-client';\r\nimport { KTLSGPSO2CalculatedReportDTO } from 'src/app/web-api-client';\r\nimport { AppState } from 'src/app/core/models/appState.model';\r\nimport { Store } from '@ngrx/store';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class SO2EmissionsEffects {\r\n constructor(\r\n private actions: Actions,\r\n private so2Client: SO2Client,\r\n private store: Store\r\n ) {}\r\n\r\n listSO2Emissions = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(SO2EmissionsActions.ListSO2Emissions),\r\n exhaustMap((action) => {\r\n return this.so2Client\r\n .getMonthlyRecords(new Date(action.startTime))\r\n .pipe(\r\n map((res) =>\r\n SO2EmissionsActions.ListSO2EmissionsSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(SO2EmissionsActions.ListSO2EmissionsFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n editSO2Emissions = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(SO2EmissionsActions.SO2EmissionsEdit),\r\n exhaustMap((action) => {\r\n return this.so2Client.addManualRecord(action).pipe(\r\n concatMap((res) => [\r\n SO2EmissionsActions.SO2EmissionsEditSuccess(res),\r\n SO2EmissionsActions.ListSO2Emissions({\r\n startTime: action.startTime,\r\n }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(SO2EmissionsActions.SO2EmissionsEditFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as SO2EmissionsActions from './so2-emissions.actions';\r\nimport { KTLSGPSO2RecordDTO } from 'src/app/web-api-client';\r\nimport { KTLSGPSO2CalculatedReportDTO } from 'src/app/web-api-client';\r\n\r\nexport interface SO2EmissionsState{\r\n data: KTLSGPSO2CalculatedReportDTO[] | null ;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: SO2EmissionsState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const SO2EmissionsReducer = createReducer(\r\n initialState,\r\n on(SO2EmissionsActions.ListSO2Emissions, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(SO2EmissionsActions.ListSO2EmissionsSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(SO2EmissionsActions.ListSO2EmissionsFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(SO2EmissionsActions.SO2EmissionsEdit, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(SO2EmissionsActions.SO2EmissionsEditSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(SO2EmissionsActions.SO2EmissionsEditFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);","import { createAction, props } from '@ngrx/store';\r\nimport {\r\n LPGAnalystInputDTO,\r\n LPGDataForAnalystDTO,\r\n} from 'src/app/web-api-client';\r\n\r\nexport const AddAnalyst = createAction(\r\n '[Analyst] Add Analyst',\r\n props()\r\n);\r\nexport const AddAnalystSuccess = createAction(\r\n '[Analyst] Add Analyst Success',\r\n props()\r\n);\r\nexport const AddAnalystFailure = createAction(\r\n '[Analyst] Add Analyst Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const ListAnalyst = createAction(\r\n '[Analyst] List Analyst',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const ListAnalystSuccess = createAction(\r\n '[Analyst] List Analyst Success',\r\n props<{ data: LPGAnalystInputDTO[] }>()\r\n);\r\nexport const ListAnalystFailure = createAction(\r\n '[Analyst] List Analyst Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const ForAnalystData = createAction(\r\n '[Analyst] For Analyst Data',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const ForAnalystDataSuccess = createAction(\r\n '[Analyst] For Analyst Data Success',\r\n props<{ data: LPGDataForAnalystDTO[] }>()\r\n);\r\nexport const ForAnalystDataFailure = createAction(\r\n '[Analyst] For Analyst Data Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const EditAnalyst = createAction(\r\n '[Analyst] Edit Analyst',\r\n props()\r\n);\r\nexport const EditAnalystSuccess = createAction(\r\n '[Analyst] Edit Analyst Success',\r\n props()\r\n);\r\nexport const EditAnalystFailure = createAction(\r\n '[Analyst] Edit Analyst Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const DeleteAnalyst = createAction(\r\n '[Analyst] Delete Analyst',\r\n props<{ id: number; startTime: Date }>()\r\n);\r\nexport const DeleteAnalystSuccess = createAction(\r\n '[Analyst] Delete Analyst Success',\r\n props()\r\n);\r\nexport const DeleteAnalystFailure = createAction(\r\n '[Analyst] Delete Analyst Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError, concatMap } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as analystActions from './analyst.actions';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { LPGClient } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AnalystEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n\r\n addAnalyst$ = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(analystActions.AddAnalyst),\r\n exhaustMap((action) => {\r\n return this.lpgClient.addLPGAnalystInput(action).pipe(\r\n concatMap((res) => [\r\n analystActions.AddAnalystSuccess(res),\r\n analystActions.ListAnalyst({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(analystActions.AddAnalystFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n listAnalyst = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(analystActions.ListAnalyst),\r\n exhaustMap((action) => {\r\n return this.lpgClient\r\n .monthlyAnalystRecords(new Date(action.startTime))\r\n .pipe(\r\n map((res) => analystActions.ListAnalystSuccess({ data: res })),\r\n catchError((err) => of(analystActions.ListAnalystFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n forAnalyst = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(analystActions.ForAnalystData),\r\n exhaustMap((action) => {\r\n return this.lpgClient.dataForAnalyst(new Date(action.startTime)).pipe(\r\n map((res) => analystActions.ForAnalystDataSuccess({ data: res })),\r\n catchError((err) => of(analystActions.ForAnalystDataFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n editAnalyst$ = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(analystActions.EditAnalyst),\r\n exhaustMap((action) => {\r\n return this.lpgClient.editLPGAnalystInput(action).pipe(\r\n concatMap((res) => [\r\n analystActions.EditAnalystSuccess(res),\r\n analystActions.ListAnalyst({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(analystActions.EditAnalystFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n deleteAnalyst$ = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(analystActions.DeleteAnalyst),\r\n exhaustMap((action) => {\r\n return this.lpgClient.deleteLPGAnalystInput(action.id).pipe(\r\n concatMap((res) => [\r\n analystActions.DeleteAnalystSuccess(res),\r\n analystActions.ListAnalyst({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(analystActions.DeleteAnalystFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as AnalystAction from './analyst.actions';\r\nimport {\r\n LPGAnalystInputDTO,\r\n LPGDataForAnalystDTO,\r\n} from 'src/app/web-api-client';\r\n\r\nexport interface AnalystState {\r\n record: LPGAnalystInputDTO;\r\n records: LPGAnalystInputDTO[] | null;\r\n report: LPGDataForAnalystDTO[];\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: AnalystState = {\r\n record: new LPGAnalystInputDTO(),\r\n records: new Array(),\r\n report: new Array(),\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const AnalystReducer = createReducer(\r\n initialState,\r\n on(AnalystAction.AddAnalyst, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(AnalystAction.AddAnalystSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(AnalystAction.AddAnalystFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(AnalystAction.ListAnalyst, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(AnalystAction.ListAnalystSuccess, (state, result) => ({\r\n ...state,\r\n records: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(AnalystAction.ListAnalystFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(AnalystAction.ForAnalystData, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(AnalystAction.ForAnalystDataSuccess, (state, result) => ({\r\n ...state,\r\n report: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(AnalystAction.ForAnalystDataFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(AnalystAction.EditAnalyst, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(AnalystAction.EditAnalystSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(AnalystAction.EditAnalystFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(AnalystAction.DeleteAnalyst, (state, payload) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(AnalystAction.DeleteAnalystSuccess, (state, payload) => ({\r\n ...state,\r\n result: payload,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n })),\r\n on(AnalystAction.DeleteAnalystFailure, (state, payload) => ({\r\n ...state,\r\n result: payload.message,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\n\r\n\r\nexport const LPGApproveByChef = createAction(\r\n '[LPG Approve] Approve By Chef',\r\n props<{ startTime: Date | undefined }>()\r\n);\r\n\r\nexport const LPGApproveByChefSuccess = createAction(\r\n '[LPG Approve] Approve By Chef Success',\r\n props()\r\n);\r\n\r\nexport const LPGApproveByChefFailure = createAction(\r\n '[LPG Approve] Approve By Chef Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const LPGApproveStatus = createAction(\r\n '[LPG Approve] Approve By Chef Status',\r\n props<{ startTime: Date | undefined }>()\r\n);\r\n\r\nexport const LPGApproveStatusSuccess = createAction(\r\n '[LPG Approve] Approve By Chef Status Success',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const LPGApproveStatusFailure = createAction(\r\n '[LPG Approve] Approve By Chef Status Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n mergeMap,\r\n concatMap,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { LPGClient } from '../../../web-api-client';\r\nimport * as ApproveActions from './approve.actions';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ApproveEffects {\r\n\r\n constructor(private actions: Actions, private lpgClient: LPGClient) { }\r\n\r\n approveByChef$ = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(ApproveActions.LPGApproveByChef),\r\n exhaustMap((action) =>\r\n this.lpgClient.approveByChef(action.startTime).pipe(\r\n concatMap((fileResponse) => [\r\n ApproveActions.LPGApproveByChefSuccess({ fileResponse }),\r\n ApproveActions.LPGApproveStatus({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true })\r\n ]),\r\n catchError((error) => [\r\n of(ApproveActions.LPGApproveByChefFailure(error)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n )\r\n )\r\n )\r\n );\r\n\r\n\r\n approveByChefStatus$ = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(ApproveActions.LPGApproveStatus),\r\n mergeMap((action) =>\r\n this.lpgClient.latestApprove(action.startTime).pipe(\r\n map((fileResponse) =>\r\n ApproveActions.LPGApproveStatusSuccess({ message: fileResponse })\r\n ),\r\n catchError((error) =>\r\n of(ApproveActions.LPGApproveStatusFailure(error))\r\n )\r\n )\r\n )\r\n )\r\n );\r\n\r\n}\r\n\r\n","// approve.reducer.ts\r\n\r\nimport { createReducer, on } from '@ngrx/store';\r\nimport * as ApproveActions from './approve.actions';\r\n\r\nexport interface ApproveState {\r\n // for error codes\r\n result: any;\r\n // for message status\r\n status: string;\r\n}\r\n\r\nexport const initialState: ApproveState = {\r\n result: null,\r\n status: ''\r\n};\r\n\r\nexport const ApproveReducer = createReducer(\r\n\r\n initialState,\r\n on(ApproveActions.LPGApproveByChef, (state, result) => ({\r\n ...state,\r\n })),\r\n on(ApproveActions.LPGApproveByChefSuccess, (state, result) => ({\r\n ...state,\r\n result: result\r\n })),\r\n on(ApproveActions.LPGApproveByChefFailure, (state, result) => ({\r\n ...state,\r\n result: result\r\n })),\r\n on(ApproveActions.LPGApproveStatus, (state, result) => ({\r\n ...state,\r\n })),\r\n on(ApproveActions.LPGApproveStatusSuccess, (state, result) => ({\r\n ...state,\r\n status: result.message\r\n })),\r\n on(ApproveActions.LPGApproveStatusFailure, (state, result) => ({\r\n ...state,\r\n result: result\r\n }))\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../../core/models/appState.model';\r\n// approve.selectors.ts\r\n\r\nexport const ApproveStatusResponse = createSelector(\r\n (state: AppState) => state.approve.status,\r\n (status: string) => status\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { ChemicalCompoundRecord } from 'src/app/web-api-client';\r\n\r\nexport const GetCCData = createAction(\r\n '[CC] Get CC Data',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const GetCCDataSuccess = createAction(\r\n '[CC] Get CC Data Success',\r\n props<{ data: ChemicalCompoundRecord[] }>()\r\n);\r\nexport const GetCCDataFailure = createAction(\r\n '[CC] Get CC Data Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as CCAction from './cc.actions';\r\nimport { LPGClient, ChemicalCompoundRecord } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CCEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n\r\n getCCData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(CCAction.GetCCData),\r\n exhaustMap((action) => {\r\n return this.lpgClient\r\n .getChemicalCompositions(new Date(action.startTime))\r\n .pipe(\r\n map((res) => CCAction.GetCCDataSuccess({ data: res })),\r\n catchError((err) => of(CCAction.GetCCDataFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as CCAction from './cc.actions';\r\nimport { ChemicalCompoundRecord } from 'src/app/web-api-client';\r\n\r\nexport interface CCState {\r\n data: ChemicalCompoundRecord[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: CCState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const CCReducer = createReducer(\r\n initialState,\r\n on(CCAction.GetCCData, (state) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(CCAction.GetCCDataSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(CCAction.GetCCDataFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../../core/models/appState.model';\r\nimport { ChemicalCompoundRecord } from 'src/app/web-api-client';\r\n\r\nexport const CCDataSelector = createSelector(\r\n (state: AppState) => state.cc.data,\r\n (cc: ChemicalCompoundRecord[] | null) => cc\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { LPGFlaringReportDTO } from 'src/app/web-api-client';\r\n\r\nexport const FlaringReportData = createAction(\r\n '[Flaring Report] Get Data Flaring Report',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const FlaringReportDataSuccess = createAction(\r\n '[Flaring Report] Get Data Flaring Report Success',\r\n props<{ data: LPGFlaringReportDTO[] }>()\r\n);\r\nexport const FlaringReportDataFailure = createAction(\r\n '[Flaring Report] Get Data Flaring Report Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\n// export const AddOperator = createAction(\r\n// '[Operator] Add Operator',\r\n// props()\r\n// );\r\n// export const AddOperatorSuccess = createAction(\r\n// '[Operator] Add Operator Success',\r\n// props()\r\n// );\r\n// export const AddOperatorFailure = createAction(\r\n// '[Operator] Add Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const EditOperator = createAction(\r\n// '[Operator] Edit Operator',\r\n// props()\r\n// );\r\n// export const EditOperatorSuccess = createAction(\r\n// '[Operator] Edit Operator Success',\r\n// props()\r\n// );\r\n// export const EditOperatorFailure = createAction(\r\n// '[Operator] Edit Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const DeleteOperator = createAction(\r\n// '[Operator] Delete Operator',\r\n// props<{ id: number; startTime: Date }>()\r\n// );\r\n// export const DeleteOperatorSuccess = createAction(\r\n// '[Operator] Delete Operator Success',\r\n// props()\r\n// );\r\n// export const DeleteOperatorFailure = createAction(\r\n// '[Operator] Delete Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n mergeMap,\r\n concatMap,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as flaringReportAction from './flaring-report.actions';\r\nimport { LPGClient } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FlaringReportEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n\r\n fuelGasFlaringData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(flaringReportAction.FlaringReportData),\r\n exhaustMap((action) => {\r\n return this.lpgClient.getFlaringReport(new Date(action.startTime)).pipe(\r\n map((res) =>\r\n flaringReportAction.FlaringReportDataSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(flaringReportAction.FlaringReportDataFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n // addOperator = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(OperatorAction.AddOperator),\r\n // exhaustMap((action) => {\r\n // return this.lpgClient.addLPGOperatorInput(action).pipe(\r\n // concatMap((res) => [\r\n // OperatorAction.AddOperatorSuccess(res),\r\n // OperatorAction.ListOperator({\r\n // startTime: action.startTime,\r\n // }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(OperatorAction.AddOperatorFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n // editOperator = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(OperatorAction.EditOperator),\r\n // exhaustMap((action) => {\r\n // return this.lpgClient.editLPGOperatorInput(action).pipe(\r\n // concatMap((res) => [\r\n // OperatorAction.EditOperatorSuccess(res),\r\n // OperatorAction.ListOperator({ startTime: action.startTime }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(OperatorAction.EditOperatorFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n // deleteOperator = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(OperatorAction.DeleteOperator),\r\n // exhaustMap((action) => {\r\n // return this.lpgClient.deleteLPGOperatorInput(action.id).pipe(\r\n // concatMap((res) => [\r\n // OperatorAction.DeleteOperatorSuccess(res),\r\n // OperatorAction.ListOperator({ startTime: action.startTime }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(OperatorAction.DeleteOperatorFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as FuelGasFlaringAction from './flaring-report.actions';\r\nimport { LPGFlaringReportDTO } from 'src/app/web-api-client';\r\n\r\nexport interface FlaringReportState {\r\n data: LPGFlaringReportDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: FlaringReportState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const FlaringReportReducer = createReducer(\r\n initialState,\r\n // on(FuelGasFlaringAction.AddOperator, (state, result) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(FuelGasFlaringAction.AddOperatorSuccess, (state, result) => ({\r\n // data: result,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // isLoadingFailure: false,\r\n // })),\r\n // on(FuelGasFlaringAction.AddOperatorFailure, (state, result) => ({\r\n // ...state,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // })),\r\n on(FuelGasFlaringAction.FlaringReportData, (state, result) => ({\r\n ...state,\r\n data: null,\r\n isLoading: true,\r\n })),\r\n on(FuelGasFlaringAction.FlaringReportDataSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FuelGasFlaringAction.FlaringReportDataFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n // on(OperatorAction.EditOperator, (state, result) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(OperatorAction.EditOperatorSuccess, (state, result) => ({\r\n // data: result.data,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // isLoadingFailure: false,\r\n // })),\r\n // on(OperatorAction.EditOperatorFailure, (state, result) => ({\r\n // ...state,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // })),\r\n // on(OperatorAction.DeleteOperator, (state, result) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(OperatorAction.DeleteOperatorSuccess, (state, result) => ({\r\n // data: result.data,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // isLoadingFailure: false,\r\n // })),\r\n // on(OperatorAction.DeleteOperatorFailure, (state, result) => ({\r\n // ...state,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // }))\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../../core/models/appState.model';\r\nimport { LPGFlaringReportDTO } from 'src/app/web-api-client';\r\n\r\nexport const FlaringReportSelector = createSelector(\r\n (state: AppState) => state.flaringReport.data,\r\n (list: LPGFlaringReportDTO[] | null) => {\r\n let sorted = list?.map((type) => {\r\n let newItems = [...type.items];\r\n newItems.sort((a, b) => a.order - b.order);\r\n return { ...type, items: newItems };\r\n });\r\n return sorted;\r\n }\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { LPGFlowmeterCalculateType, LPGPEInputDTO, LPGStreamCCType } from 'src/app/web-api-client';\r\n\r\n export const getCalculation = createAction(\r\n '[Flowmeter Calculation] Get Calculation',\r\n props<{ startTime: Date; endTime: Date; calculationType: LPGFlowmeterCalculateType; avg: number; volume: number; mw: LPGStreamCCType }>()\r\n );\r\n \r\n export const getCalculationSuccess = createAction(\r\n '[Flowmeter Calculation] Get Calculation Success',\r\n props<{ result: number, calculationType: LPGFlowmeterCalculateType }>()\r\n );\r\n \r\n export const getCalculationFailure = createAction(\r\n '[Flowmeter Calculation] Get Calculation Failure',\r\n props<{ error: any }>()\r\n );\r\n\r\n export const LPGFlowmeterCalculationInputAdd = createAction(\r\n '[Flowmeter Calculation] LPG Flowmeter Calculation Input Add',\r\n props()\r\n );\r\n export const LPGFlowmeterCalculationInputAddSuccess = createAction(\r\n '[Flowmeter Calculation] LPG Flowmeter Calculation Input Add Success',\r\n props()\r\n );\r\n export const LPGFlowmeterCalculationInputAddFailure = createAction(\r\n '[Flowmeter Calculation] LPG Flowmeter Calculation Input Add Failure',\r\n props<{ message: string }>()\r\n );\r\n\r\n export const PEList = createAction(\r\n '[Process Engineer] PE List',\r\n props<{ startTime: Date }>()\r\n );\r\n export const PEListSuccess = createAction(\r\n '[Process Engineer] PE List Success',\r\n props<{ data: LPGPEInputDTO[] }>()\r\n );\r\n export const PEListFailure = createAction(\r\n '[Process Engineer] PE List Failure',\r\n props<{ message: string }>()\r\n );\r\n ","import { Injectable } from '@angular/core';\r\nimport { Actions, act, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError, mergeMap, concatMap } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as FlowMeterCalculationAction from './flowmeter-calculation.action';\r\nimport * as PEAction from './../pe/pe.action';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { LPGClient, LPGOperatorInputDTO } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FlowmeterCalculationEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n \r\n getCalculation = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(FlowMeterCalculationAction.getCalculation),\r\n exhaustMap((action) => {\r\n return this.lpgClient\r\n .getCalculation(new Date(action.startTime), new Date(action.endTime), action.calculationType, action.avg, action.volume, action.mw)\r\n .pipe(\r\n map((res) => FlowMeterCalculationAction.getCalculationSuccess({ result: res, calculationType: action.calculationType })),\r\n catchError((err) => of(FlowMeterCalculationAction.getCalculationFailure(err)))\r\n );\r\n })\r\n )\r\n);\r\n\r\n/*\r\naddFlowmeterCalculationInput = createEffect(() =>\r\nthis.actions.pipe(\r\n ofType(FlowMeterCalculationAction.LPGFlowmeterCalculationInputAdd),\r\n exhaustMap((action) => {\r\n return this.lpgClient.addLPGFlowmeterCalculationInput(action).pipe(\r\n concatMap((res) => [\r\n FlowMeterCalculationAction.LPGFlowmeterCalculationInputAddSuccess(res),\r\n FlowMeterCalculationAction.PEList({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(FlowMeterCalculationAction.LPGFlowmeterCalculationInputAddSuccess(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n)\r\n);*/\r\n\r\naddFlowmeterCalculationInput = createEffect(() =>\r\nthis.actions.pipe(\r\n ofType(FlowMeterCalculationAction.LPGFlowmeterCalculationInputAdd),\r\n exhaustMap((action) => {\r\n return this.lpgClient.addLPGPEInput(action).pipe(\r\n concatMap((res) => [\r\n FlowMeterCalculationAction.LPGFlowmeterCalculationInputAddSuccess(res),\r\n PEAction.PEList({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(FlowMeterCalculationAction.LPGFlowmeterCalculationInputAddFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n), \r\n);\r\n\r\n}\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as flowmeterCalculationActions from './flowmeter-calculation.action';\r\nimport { LPGFlowmeterCalculateType, LPGPEInputDTO } from 'src/app/web-api-client';\r\n\r\nexport interface FlowmeterCalculationState {\r\n average: number | null;\r\n volume: number | null;\r\n mass: number | null;\r\n result: number | null | { message: string; type: string }\r\n loading: boolean;\r\n error: any;\r\n isLoading?: boolean; \r\n isLoadingSuccess?: boolean;\r\n isLoadingFailure?: boolean;\r\n}\r\n\r\nexport const initialState: FlowmeterCalculationState = {\r\n average: null,\r\n volume: null,\r\n mass: null,\r\n result: null,\r\n loading: false,\r\n error: null\r\n};\r\n\r\nexport const flowmeterCalculationReducer = createReducer(\r\n initialState,\r\n on(flowmeterCalculationActions.getCalculation, state => ({\r\n ...state,\r\n loading: true,\r\n error: null\r\n })),\r\n on(flowmeterCalculationActions.getCalculationSuccess, (state, { result, calculationType }) => ({\r\n ...state,\r\n result,\r\n average: calculationType == LPGFlowmeterCalculateType.Average ? result : state.average,\r\n volume: calculationType == LPGFlowmeterCalculateType.Volume ? result : state.volume,\r\n mass: calculationType == LPGFlowmeterCalculateType.Mass ? result : state.mass,\r\n loading: false\r\n })),\r\n on(flowmeterCalculationActions.getCalculationFailure, (state, { error }) => ({\r\n ...state,\r\n error,\r\n loading: false\r\n })),\r\n\r\n on(flowmeterCalculationActions.LPGFlowmeterCalculationInputAdd, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(flowmeterCalculationActions.LPGFlowmeterCalculationInputAddSuccess, (state, result) => ({\r\n ...state,\r\n data: result,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(flowmeterCalculationActions.LPGFlowmeterCalculationInputAddFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n);","import { MemoizedSelector, createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../../core/models/appState.model';\r\nimport { FlowmeterCalculationState } from './flowmeter-calculation.reducer';\r\n\r\nconst getFlowmeterCalculationState = (state: AppState) => state.flowmeterCalc;\r\n\r\nexport const FlowmeterCalculationSelector: MemoizedSelector = createSelector(\r\n getFlowmeterCalculationState,\r\n (state: FlowmeterCalculationState) => state\r\n);","import { createAction, props } from '@ngrx/store';\r\nimport {\r\n LPGFuelGasFlaringReportDTO,\r\n LPGMonthlyInputRecordDTO,\r\n} from 'src/app/web-api-client';\r\n\r\nexport const FuelGasFlaringData = createAction(\r\n '[Fuel Gas Flaring] Get Data Fuel Gas Flaring',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const FuelGasFlaringDataSuccess = createAction(\r\n '[Fuel Gas Flaring] Get Data Fuel Gas Flaring Success',\r\n props<{ data: LPGFuelGasFlaringReportDTO }>()\r\n);\r\nexport const FuelGasFlaringDataFailure = createAction(\r\n '[Fuel Gas Flaring] Get Data Fuel Gas Flaring Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const EditFuelGasFlaringData = createAction(\r\n '[Fuel Gas Flaring] Edit Data Fuel Gas Flaring',\r\n props<{ data: LPGMonthlyInputRecordDTO }>()\r\n);\r\nexport const EditFuelGasFlaringDataSuccess = createAction(\r\n '[Fuel Gas Flaring] Edit Data Fuel Gas Flaring Success',\r\n props()\r\n);\r\nexport const EditFuelGasFlaringDataFailure = createAction(\r\n '[Fuel Gas Flaring] Edit Data Fuel Gas Flaring Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\n// export const AddOperator = createAction(\r\n// '[Operator] Add Operator',\r\n// props()\r\n// );\r\n// export const AddOperatorSuccess = createAction(\r\n// '[Operator] Add Operator Success',\r\n// props()\r\n// );\r\n// export const AddOperatorFailure = createAction(\r\n// '[Operator] Add Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const EditOperator = createAction(\r\n// '[Operator] Edit Operator',\r\n// props()\r\n// );\r\n// export const EditOperatorSuccess = createAction(\r\n// '[Operator] Edit Operator Success',\r\n// props()\r\n// );\r\n// export const EditOperatorFailure = createAction(\r\n// '[Operator] Edit Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const DeleteOperator = createAction(\r\n// '[Operator] Delete Operator',\r\n// props<{ id: number; startTime: Date }>()\r\n// );\r\n// export const DeleteOperatorSuccess = createAction(\r\n// '[Operator] Delete Operator Success',\r\n// props()\r\n// );\r\n// export const DeleteOperatorFailure = createAction(\r\n// '[Operator] Delete Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n mergeMap,\r\n concatMap,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as fuelGasFlaringAction from './fuel-gas-flaring.actions';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport * as fuelGasFlaringDefaultActions from '../../../features/tco/processeng/fd/lpg/fuel-gas-flaring/store/fuel-gas-flaring-default.action';\r\nimport { LPGClient } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class FuelGasFlaringEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n\r\n fuelGasFlaringData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(fuelGasFlaringAction.FuelGasFlaringData),\r\n exhaustMap((action) => {\r\n return this.lpgClient\r\n .getFuelGasFlaring(new Date(action.startTime))\r\n .pipe(\r\n map((res) =>\r\n fuelGasFlaringAction.FuelGasFlaringDataSuccess({ data: res })\r\n ),\r\n catchError((err) =>\r\n of(fuelGasFlaringAction.FuelGasFlaringDataFailure(err))\r\n )\r\n );\r\n })\r\n )\r\n );\r\n\r\n editFuelGasFlaringData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(fuelGasFlaringAction.EditFuelGasFlaringData),\r\n exhaustMap((action) => {\r\n return this.lpgClient.addPEMonthlyInput(action.data).pipe(\r\n concatMap((res) => [\r\n fuelGasFlaringAction.EditFuelGasFlaringDataSuccess(res),\r\n fuelGasFlaringAction.FuelGasFlaringData({\r\n startTime: action.data.startTime,\r\n }),\r\n fuelGasFlaringDefaultActions.getFuelGasFlaringDefault({\r\n date: action.data.startTime,\r\n }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(fuelGasFlaringAction.EditFuelGasFlaringDataFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n // addOperator = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(OperatorAction.AddOperator),\r\n // exhaustMap((action) => {\r\n // return this.lpgClient.addLPGOperatorInput(action).pipe(\r\n // concatMap((res) => [\r\n // OperatorAction.AddOperatorSuccess(res),\r\n // OperatorAction.ListOperator({\r\n // startTime: action.startTime,\r\n // }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(OperatorAction.AddOperatorFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n // deleteOperator = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(OperatorAction.DeleteOperator),\r\n // exhaustMap((action) => {\r\n // return this.lpgClient.deleteLPGOperatorInput(action.id).pipe(\r\n // concatMap((res) => [\r\n // OperatorAction.DeleteOperatorSuccess(res),\r\n // OperatorAction.ListOperator({ startTime: action.startTime }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(OperatorAction.DeleteOperatorFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as FuelGasFlaringAction from './fuel-gas-flaring.actions';\r\nimport { LPGFuelGasFlaringReportDTO } from 'src/app/web-api-client';\r\n\r\nexport interface FuelGasFlaringState {\r\n data: LPGFuelGasFlaringReportDTO | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: FuelGasFlaringState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const FuelGasFlaringReducer = createReducer(\r\n initialState,\r\n // on(FuelGasFlaringAction.AddOperator, (state, result) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(FuelGasFlaringAction.AddOperatorSuccess, (state, result) => ({\r\n // data: result,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // isLoadingFailure: false,\r\n // })),\r\n // on(FuelGasFlaringAction.AddOperatorFailure, (state, result) => ({\r\n // ...state,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // })),\r\n on(FuelGasFlaringAction.FuelGasFlaringData, (state, result) => ({\r\n ...state,\r\n data: null,\r\n isLoading: true,\r\n })),\r\n on(FuelGasFlaringAction.FuelGasFlaringDataSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FuelGasFlaringAction.FuelGasFlaringDataFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n // on(OperatorAction.EditOperator, (state, result) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(OperatorAction.EditOperatorSuccess, (state, result) => ({\r\n // data: result.data,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // isLoadingFailure: false,\r\n // })),\r\n // on(OperatorAction.EditOperatorFailure, (state, result) => ({\r\n // ...state,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // })),\r\n // on(OperatorAction.DeleteOperator, (state, result) => ({\r\n // ...state,\r\n // isLoading: true,\r\n // })),\r\n // on(OperatorAction.DeleteOperatorSuccess, (state, result) => ({\r\n // data: result.data,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingSuccess: true,\r\n // isLoadingFailure: false,\r\n // })),\r\n // on(OperatorAction.DeleteOperatorFailure, (state, result) => ({\r\n // ...state,\r\n // result,\r\n // isLoading: false,\r\n // isLoadingFailure: true,\r\n // }))\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../../core/models/appState.model';\r\nimport { LPGFuelGasFlaringReportDTO } from 'src/app/web-api-client';\r\n\r\nexport const FuelGasFlaringSelector = createSelector(\r\n (state: AppState) => state.fuelGasFlaring.data,\r\n (list: LPGFuelGasFlaringReportDTO | null) => list\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { LPGDataDTO } from 'src/app/web-api-client';\r\n\r\nexport const LPGData = createAction(\r\n '[LPG Data] Get Data LPG Data',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const LPGDataSuccess = createAction(\r\n '[LPG Data] Get LPG Data Success',\r\n props<{ data: LPGDataDTO }>()\r\n);\r\nexport const LPGDataFailure = createAction(\r\n '[LPG Data] Get LPG Data Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\n// export const AddOperator = createAction(\r\n// '[Operator] Add Operator',\r\n// props()\r\n// );\r\n// export const AddOperatorSuccess = createAction(\r\n// '[Operator] Add Operator Success',\r\n// props()\r\n// );\r\n// export const AddOperatorFailure = createAction(\r\n// '[Operator] Add Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const EditOperator = createAction(\r\n// '[Operator] Edit Operator',\r\n// props()\r\n// );\r\n// export const EditOperatorSuccess = createAction(\r\n// '[Operator] Edit Operator Success',\r\n// props()\r\n// );\r\n// export const EditOperatorFailure = createAction(\r\n// '[Operator] Edit Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n\r\n// export const DeleteOperator = createAction(\r\n// '[Operator] Delete Operator',\r\n// props<{ id: number; startTime: Date }>()\r\n// );\r\n// export const DeleteOperatorSuccess = createAction(\r\n// '[Operator] Delete Operator Success',\r\n// props()\r\n// );\r\n// export const DeleteOperatorFailure = createAction(\r\n// '[Operator] Delete Operator Failure',\r\n// props<{ message: string }>()\r\n// );\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n mergeMap,\r\n concatMap,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as lpgDataAction from './lpg-data.actions';\r\nimport { LPGClient } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class LPGDataEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n\r\n fuelGasFlaringData = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(lpgDataAction.LPGData),\r\n exhaustMap((action) => {\r\n return this.lpgClient.getLPGData(new Date(action.startTime)).pipe(\r\n map((res) => lpgDataAction.LPGDataSuccess({ data: res })),\r\n catchError((err) => of(lpgDataAction.LPGDataFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n // addOperator = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(OperatorAction.AddOperator),\r\n // exhaustMap((action) => {\r\n // return this.lpgClient.addLPGOperatorInput(action).pipe(\r\n // concatMap((res) => [\r\n // OperatorAction.AddOperatorSuccess(res),\r\n // OperatorAction.ListOperator({\r\n // startTime: action.startTime,\r\n // }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(OperatorAction.AddOperatorFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n // editOperator = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(OperatorAction.EditOperator),\r\n // exhaustMap((action) => {\r\n // return this.lpgClient.editLPGOperatorInput(action).pipe(\r\n // concatMap((res) => [\r\n // OperatorAction.EditOperatorSuccess(res),\r\n // OperatorAction.ListOperator({ startTime: action.startTime }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(OperatorAction.EditOperatorFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n\r\n // deleteOperator = createEffect(() =>\r\n // this.actions.pipe(\r\n // ofType(OperatorAction.DeleteOperator),\r\n // exhaustMap((action) => {\r\n // return this.lpgClient.deleteLPGOperatorInput(action.id).pipe(\r\n // concatMap((res) => [\r\n // OperatorAction.DeleteOperatorSuccess(res),\r\n // OperatorAction.ListOperator({ startTime: action.startTime }),\r\n // notificationActions.showNotification({ isSuccess: true }),\r\n // ]),\r\n // catchError((err) => [\r\n // of(OperatorAction.DeleteOperatorFailure(err)),\r\n // notificationActions.showNotification({ isSuccess: false }),\r\n // ])\r\n // );\r\n // })\r\n // )\r\n // );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as FuelGasFlaringAction from './lpg-data.actions';\r\nimport { LPGDataDTO } from 'src/app/web-api-client';\r\n\r\nexport interface LPGDataState {\r\n data: LPGDataDTO | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: LPGDataState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const LPGDataReducer = createReducer(\r\n initialState,\r\n on(FuelGasFlaringAction.LPGData, (state, result) => ({\r\n ...state,\r\n data: null,\r\n isLoading: true,\r\n })),\r\n on(FuelGasFlaringAction.LPGDataSuccess, (state, result) => ({\r\n ...state,\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(FuelGasFlaringAction.LPGDataFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../../core/models/appState.model';\r\nimport {\r\n LPGDataDTO,\r\n LPGDataForAnalystDTO,\r\n LPGGasType,\r\n} from 'src/app/web-api-client';\r\nimport {\r\n AnalystReportType,\r\n BulletsReportType,\r\n LPGDataReportType,\r\n} from 'src/app/core/models/lpgDataReport.model';\r\n\r\nexport const LPGDataSelector = createSelector(\r\n (state: AppState) => state.lpgData.data,\r\n (list: LPGDataDTO | null) => {\r\n let data1: LPGDataReportType = {\r\n table1: {\r\n dry: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName ===\r\n 'Total flared gas from LPG Park for Monthly Flaring report' &&\r\n x.gasType === LPGGasType.Dry\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n propane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName ===\r\n 'Total flared gas from LPG Park for Monthly Flaring report' &&\r\n x.gasType === LPGGasType.Propane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n butane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName ===\r\n 'Total flared gas from LPG Park for Monthly Flaring report' &&\r\n x.gasType === LPGGasType.Butane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n },\r\n table2: {\r\n propane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'Old (KTL) LPG park' &&\r\n x.gasType === LPGGasType.Propane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n butane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'Old (KTL) LPG park' &&\r\n x.gasType === LPGGasType.Butane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n },\r\n table3: {\r\n propane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'New (SGP) LPG park' &&\r\n x.gasType === LPGGasType.Propane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n butane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'New (SGP) LPG park' &&\r\n x.gasType === LPGGasType.Butane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n },\r\n table4: {\r\n propane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName ===\r\n 'E-909 and flaring from bullets during PSVs repair work' &&\r\n x.gasType === LPGGasType.Propane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n butane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName ===\r\n 'E-909 and flaring from bullets during PSVs repair work' &&\r\n x.gasType === LPGGasType.Butane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n },\r\n table5: {\r\n propane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'SGP LPG Equalizing Line flaring' &&\r\n x.gasType === LPGGasType.Propane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n butane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'SGP LPG Equalizing Line flaring' &&\r\n x.gasType === LPGGasType.Butane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n },\r\n table6: {\r\n propane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'Data for PDV Daily Monitoring' &&\r\n x.gasType === LPGGasType.Propane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n butane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'Data for PDV Daily Monitoring' &&\r\n x.gasType === LPGGasType.Butane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n },\r\n table7: {\r\n propane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'Data for Accounting Analyst: Old Park' &&\r\n x.gasType === LPGGasType.Propane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n butane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'Data for Accounting Analyst: Old Park' &&\r\n x.gasType === LPGGasType.Butane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n },\r\n table8: {\r\n propane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'Data for Accounting Analyst: New' &&\r\n x.gasType === LPGGasType.Propane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n butane: list?.lpgData\r\n .filter(\r\n (x) =>\r\n x.elementName === 'Data for Accounting Analyst: New' &&\r\n x.gasType === LPGGasType.Butane\r\n )\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n },\r\n table9: list?.lpgData\r\n .filter((x) => x.elementName === 'Fuel Gas Flaring')\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n };\r\n let data2: AnalystReportType = {\r\n table1: {\r\n propane: list?.forAnalysts.filter(\r\n (x) => x.gasType === LPGGasType.Propane\r\n ),\r\n butane: list?.forAnalysts.filter(\r\n (x) => x.gasType === LPGGasType.Butane\r\n ),\r\n },\r\n table2: new Array(\r\n list?.forAnalysts[4]!,\r\n list?.forAnalysts[5]!\r\n ),\r\n table3: new Array(\r\n list?.forAnalysts[6]!,\r\n list?.forAnalysts[7]!,\r\n list?.forAnalysts[8]!\r\n ),\r\n };\r\n let data3: BulletsReportType = {\r\n table1: list?.bulletsEntry\r\n .filter((x) => x.elementName === 'Old LPG Park - RTC Loaded')\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n table2: list?.bulletsEntry\r\n .filter((x) => x.elementName === 'New LPG Park - RTC Loaded')\r\n .sort((a, b) => a.timeStamp.getTime() - b.timeStamp.getTime()),\r\n };\r\n return { data1, data2, data3 };\r\n }\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport {\r\n LPGOperatorInputDTO,\r\n ILPGOperatorInputDTO,\r\n} from 'src/app/web-api-client';\r\n\r\nexport const ListOperator = createAction(\r\n '[Operator] List Operator',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const ListOperatorSuccess = createAction(\r\n '[Operator] List Operator Success',\r\n props<{ data: LPGOperatorInputDTO[] }>()\r\n);\r\nexport const ListOperatorFailure = createAction(\r\n '[Operator] List Operator Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const AddOperator = createAction(\r\n '[Operator] Add Operator',\r\n props()\r\n);\r\nexport const AddOperatorSuccess = createAction(\r\n '[Operator] Add Operator Success',\r\n props()\r\n);\r\nexport const AddOperatorFailure = createAction(\r\n '[Operator] Add Operator Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const EditOperator = createAction(\r\n '[Operator] Edit Operator',\r\n props()\r\n);\r\nexport const EditOperatorSuccess = createAction(\r\n '[Operator] Edit Operator Success',\r\n props()\r\n);\r\nexport const EditOperatorFailure = createAction(\r\n '[Operator] Edit Operator Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const DeleteOperator = createAction(\r\n '[Operator] Delete Operator',\r\n props<{ id: number; startTime: Date }>()\r\n);\r\nexport const DeleteOperatorSuccess = createAction(\r\n '[Operator] Delete Operator Success',\r\n props()\r\n);\r\nexport const DeleteOperatorFailure = createAction(\r\n '[Operator] Delete Operator Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, act, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n mergeMap,\r\n concatMap,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as OperatorAction from './operator.actions';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { LPGClient, LPGOperatorInputDTO } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OperatorEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n\r\n listOperator = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(OperatorAction.ListOperator),\r\n exhaustMap((action) => {\r\n return this.lpgClient\r\n .monthlyOperatorRecords(new Date(action.startTime))\r\n .pipe(\r\n map((res) => OperatorAction.ListOperatorSuccess({ data: res })),\r\n catchError((err) => of(OperatorAction.ListOperatorFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n addOperator = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(OperatorAction.AddOperator),\r\n exhaustMap((action) => {\r\n return this.lpgClient.addLPGOperatorInput(action).pipe(\r\n concatMap((res) => [\r\n OperatorAction.AddOperatorSuccess(res),\r\n OperatorAction.ListOperator({\r\n startTime: action.startTime,\r\n }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(OperatorAction.AddOperatorFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n editOperator = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(OperatorAction.EditOperator),\r\n exhaustMap((action) => {\r\n return this.lpgClient.editLPGOperatorInput(action).pipe(\r\n concatMap((res) => [\r\n OperatorAction.EditOperatorSuccess(res),\r\n OperatorAction.ListOperator({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(OperatorAction.EditOperatorFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n deleteOperator = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(OperatorAction.DeleteOperator),\r\n exhaustMap((action) => {\r\n return this.lpgClient.deleteLPGOperatorInput(action.id).pipe(\r\n concatMap((res) => [\r\n OperatorAction.DeleteOperatorSuccess(res),\r\n OperatorAction.ListOperator({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(OperatorAction.DeleteOperatorFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as OperatorAction from './operator.actions';\r\nimport { LPGOperatorInputDTO } from 'src/app/web-api-client';\r\n\r\nexport interface OperatorState {\r\n data: LPGOperatorInputDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: OperatorState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const OperatorReducer = createReducer(\r\n initialState,\r\n on(OperatorAction.AddOperator, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(OperatorAction.AddOperatorSuccess, (state, result) => ({\r\n data: result,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(OperatorAction.AddOperatorFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(OperatorAction.ListOperator, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(OperatorAction.ListOperatorSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(OperatorAction.ListOperatorFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(OperatorAction.EditOperator, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(OperatorAction.EditOperatorSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(OperatorAction.EditOperatorFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(OperatorAction.DeleteOperator, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(OperatorAction.DeleteOperatorSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(OperatorAction.DeleteOperatorFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { LPGPEInputDTO } from 'src/app/web-api-client';\r\n\r\nexport const PEList = createAction(\r\n '[Process Engineer] PE List',\r\n props<{ startTime: Date }>()\r\n);\r\nexport const PEListSuccess = createAction(\r\n '[Process Engineer] PE List Success',\r\n props<{ data: LPGPEInputDTO[] }>()\r\n);\r\nexport const PEListFailure = createAction(\r\n '[Process Engineer] PE List Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const PEAdd = createAction(\r\n '[Process Engineer] PE Add',\r\n props()\r\n);\r\nexport const PEAddSuccess = createAction(\r\n '[Process Engineer] PE Add Success',\r\n props()\r\n);\r\nexport const PEAddFailure = createAction(\r\n '[Process Engineer] PE Add Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const PEEdit = createAction(\r\n '[Process Engineer] PE Edit',\r\n props()\r\n);\r\nexport const PEEditSuccess = createAction(\r\n '[Process Engineer] PE Edit Success',\r\n props()\r\n);\r\nexport const PEEditFailure = createAction(\r\n '[Process Engineer] PE Edit Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const PEDelete = createAction(\r\n '[Process Engineer] PE Delete',\r\n props<{ id: number; startTime: Date }>()\r\n);\r\nexport const PEDeleteSuccess = createAction(\r\n '[Process Engineer] PE Delete Success',\r\n props()\r\n);\r\nexport const PEDeleteFailure = createAction(\r\n '[Process Engineer] PE Delete Failure',\r\n props<{ message: string }>()\r\n);\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport { map, exhaustMap, catchError, concatMap } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as PEAction from './pe.action';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { LPGClient } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PEEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n\r\n listPE = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(PEAction.PEList),\r\n exhaustMap((action) => {\r\n return this.lpgClient.monthlyPERecords(new Date(action.startTime)).pipe(\r\n map((res) => PEAction.PEListSuccess({ data: res })),\r\n catchError((err) => of(PEAction.PEListFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n addPE = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(PEAction.PEAdd),\r\n exhaustMap((action) => {\r\n return this.lpgClient.addLPGPEInput(action).pipe(\r\n concatMap((res) => [\r\n PEAction.PEAddSuccess(res),\r\n PEAction.PEList({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(PEAction.PEAddFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n editPE = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(PEAction.PEEdit),\r\n exhaustMap((action) => {\r\n return this.lpgClient.editLPGPEInput(action).pipe(\r\n concatMap((res) => [\r\n PEAction.PEEditSuccess(res),\r\n PEAction.PEList({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(PEAction.PEEditFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n\r\n deletePE = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(PEAction.PEDelete),\r\n exhaustMap((action) => {\r\n return this.lpgClient.deleteLPGPEInput(action.id).pipe(\r\n concatMap((res) => [\r\n PEAction.PEDeleteSuccess(res),\r\n PEAction.PEList({ startTime: action.startTime }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(PEAction.PEDeleteFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as PEAction from './pe.action';\r\nimport { LPGPEInputDTO } from 'src/app/web-api-client';\r\n\r\nexport interface PEState {\r\n data: LPGPEInputDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: PEState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const PEReducer = createReducer(\r\n initialState,\r\n on(PEAction.PEAdd, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(PEAction.PEAddSuccess, (state, result) => ({\r\n data: result,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(PEAction.PEAddFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(PEAction.PEList, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(PEAction.PEListSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(PEAction.PEListFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(PEAction.PEEdit, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(PEAction.PEEditSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(PEAction.PEEditFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(PEAction.PEDelete, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(PEAction.PEDeleteSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(PEAction.PEDeleteFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { LPGTargetPermitInputDTO } from 'src/app/web-api-client';\r\n\r\nexport const ListTargetPermit = createAction(\r\n '[TargetPermit] List TargetPermit',\r\n props<{ year: number }>()\r\n);\r\nexport const ListTargetPermitSuccess = createAction(\r\n '[TargetPermit] List TargetPermit Success',\r\n props<{ data: LPGTargetPermitInputDTO[] }>()\r\n);\r\nexport const ListTargetPermitFailure = createAction(\r\n '[TargetPermit] List TargetPermit Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const AddTargetPermit = createAction(\r\n '[TargetPermit] Add TargetPermit',\r\n props()\r\n);\r\nexport const AddTargetPermitSuccess = createAction(\r\n '[TargetPermit] Add TargetPermit Success',\r\n props()\r\n);\r\nexport const AddTargetPermitFailure = createAction(\r\n '[TargetPermit] Add TargetPermit Failure',\r\n props<{ message: string }>()\r\n);","import { Injectable } from '@angular/core';\r\nimport { Actions, act, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n mergeMap,\r\n concatMap,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\nimport * as TargetPermitAction from './target-permit.actions';\r\nimport * as notificationActions from '../../notification/notification.action';\r\nimport { LPGClient, LPGTargetPermitInputDTO } from '../../../web-api-client';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class TargetPermitEffects {\r\n constructor(private actions: Actions, private lpgClient: LPGClient) {}\r\n\r\n listTargetPermit = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(TargetPermitAction.ListTargetPermit),\r\n exhaustMap((action) => {\r\n return this.lpgClient\r\n .getTargetPermitInputs(action.year)\r\n .pipe(\r\n map((res) => TargetPermitAction.ListTargetPermitSuccess({ data: res })),\r\n catchError((err) => of(TargetPermitAction.ListTargetPermitFailure(err)))\r\n );\r\n })\r\n )\r\n );\r\n\r\n addTargetPermit = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(TargetPermitAction.AddTargetPermit),\r\n exhaustMap((action) => {\r\n return this.lpgClient.addTargetPermitInput(action).pipe(\r\n concatMap((res) => [\r\n TargetPermitAction.AddTargetPermitSuccess(res),\r\n TargetPermitAction.ListTargetPermit({ year: action.year }),\r\n notificationActions.showNotification({ isSuccess: true }),\r\n ]),\r\n catchError((err) => [\r\n of(TargetPermitAction.AddTargetPermitFailure(err)),\r\n notificationActions.showNotification({ isSuccess: false }),\r\n ])\r\n );\r\n })\r\n )\r\n );\r\n}","import { Action, createReducer, on } from '@ngrx/store';\r\nimport * as TargetPermitAction from './target-permit.actions';\r\nimport { LPGTargetPermitInputDTO } from 'src/app/web-api-client';\r\n\r\nexport interface TargetPermitState {\r\n data: LPGTargetPermitInputDTO[] | null;\r\n result: any;\r\n isLoading: boolean;\r\n isLoadingSuccess: boolean;\r\n isLoadingFailure: boolean;\r\n}\r\n\r\nconst initialState: TargetPermitState = {\r\n data: null,\r\n result: '',\r\n isLoading: false,\r\n isLoadingSuccess: false,\r\n isLoadingFailure: false,\r\n};\r\n\r\nexport const TargetPermitReducer = createReducer(\r\n initialState,\r\n on(TargetPermitAction.AddTargetPermit, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(TargetPermitAction.AddTargetPermitSuccess, (state, result) => ({\r\n data: result,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(TargetPermitAction.AddTargetPermitFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n })),\r\n on(TargetPermitAction.ListTargetPermit, (state, result) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(TargetPermitAction.ListTargetPermitSuccess, (state, result) => ({\r\n data: result.data,\r\n result,\r\n isLoading: false,\r\n isLoadingSuccess: true,\r\n isLoadingFailure: false,\r\n })),\r\n on(TargetPermitAction.ListTargetPermitFailure, (state, result) => ({\r\n ...state,\r\n result,\r\n isLoading: false,\r\n isLoadingFailure: true,\r\n }))\r\n);\r\n","import { createAction, props } from '@ngrx/store';\r\n\r\nexport const showNotification = createAction(\r\n '[Notify] Show Notification',\r\n props<{ isSuccess: boolean, message?: string }>()\r\n);\r\n\r\nexport const showNotificationSuccess = createAction(\r\n '[Notify] Show Success',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const showNotificationFailure = createAction(\r\n '[Notify] Show Failure',\r\n props<{ message: string }>()\r\n);\r\n\r\nexport const showCustomNotification = createAction(\r\n '[Notify] Show Custom Notification',\r\n props<{ isSuccess: boolean; message: string }>()\r\n);\r\n\r\nexport const clearNotification = createAction('[Notify] Cleared');\r\n\r\nexport const startLoading = createAction('[Loading] Start Loading');\r\nexport const stopLoading = createAction('[Loading] Stop Loading');\r\n","import { Injectable } from '@angular/core';\r\nimport { Actions, createEffect, ofType } from '@ngrx/effects';\r\nimport {\r\n map,\r\n exhaustMap,\r\n catchError,\r\n switchMap,\r\n mergeMap,\r\n} from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\n\r\nimport * as notificationActions from './notification.action';\r\nimport * as analystActions from '../lpg/analyst/analyst.actions';\r\nimport * as operatorActions from '../lpg/operator/operator.actions';\r\nimport * as peActions from '../lpg/pe/pe.action';\r\nimport * as chartActions from '../chartjs/chartjs.action';\r\nimport * as ccActions from '../lpg/cc/cc.actions';\r\nimport * as fuelGasFlaringActions from '../lpg/fuel-gas-flaring/fuel-gas-flaring.actions';\r\nimport * as flaringReportActions from '../lpg/flaring-report/flaring-report.actions';\r\nimport * as lpgDataActions from '../lpg/lpg-data/lpg-data.actions';\r\nimport * as projectedDataActions from '../ktlsgp/projected-data/projected-data.actions';\r\nimport * as so2EmissionsActions from '../ktlsgp/so2-emissions/so2-emissions.actions';\r\nimport * as so2ChartsActions from '../ktlsgp/so2-charts/so2-charts.action';\r\nimport * as so2RecalculationActions from '../ktlsgp/so2-emissions-recalculation/so2-emissions-recalculation.actions';\r\nimport * as TargetPermitActions from '../lpg/target-permit/target-permit.actions';\r\nimport * as approveActions from '../lpg/approve/approve.actions';\r\nimport * as FlowmeterCalcActions from '../lpg/flowmeter-calculation/flowmeter-calculation.action';\r\nimport * as SgiActions from '../../features/tco/processeng/fd/sgi/store/sgi.action';\r\nimport * as FuelGasActions from '../../features/tco/processeng/fgd/sgp/fuel-gas-dashboard/state/fuel-gas.actions';\r\nimport * as KTLFGDFuelGasActions from '../../features/tco/processeng/fgd/ktl/production-gas-balance/state/ktl-fgd-fuel-gas.actions';\r\nimport * as InternalUsageActions from '../../features/tco/processeng/fgd/ius/store/internal-usage.action';\r\nimport * as KTLFDFlaringActions from '../../features/tco/processeng/fd/ktl/input/process-engineer/flaring/state/flaring.actions';\r\nimport * as KTLFDDailyReportActions from '../../features/tco/processeng/fd/ktl/daily-report/state/daily-report.actions';\r\nimport * as GURActions from '../../features/tco/processeng/fgd/sgp/gas-usage-report/state/gas-usage-report.actions';\r\nimport * as F205Actions from '../../features/tco/processeng/fd/ktl/f-205/state/f-205.actions';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class NotificationEffects {\r\n constructor(private actions: Actions) {}\r\n\r\n showNotification = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(notificationActions.showNotification),\r\n switchMap((action) => {\r\n if (action.isSuccess)\r\n return [\r\n notificationActions.showNotificationSuccess({\r\n message: action.message ?? 'Success: Your action was successful!',\r\n }),\r\n ];\r\n else\r\n return [\r\n notificationActions.showNotificationFailure({\r\n message: action.message ?? 'Error: Something went wrong. Please try again.',\r\n }),\r\n ];\r\n })\r\n )\r\n );\r\n\r\n showCustomNotification = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(notificationActions.showCustomNotification),\r\n switchMap((action) => {\r\n console.log(action);\r\n if (action.isSuccess)\r\n return [\r\n notificationActions.showNotificationSuccess({\r\n message: action.message,\r\n }),\r\n ];\r\n else\r\n return [\r\n notificationActions.showNotificationFailure({\r\n message: action.message,\r\n }),\r\n ];\r\n })\r\n )\r\n );\r\n\r\n loadingEffect$ = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(\r\n analystActions.AddAnalyst,\r\n analystActions.ListAnalyst,\r\n analystActions.EditAnalyst,\r\n analystActions.DeleteAnalyst,\r\n operatorActions.AddOperator,\r\n operatorActions.DeleteOperator,\r\n operatorActions.EditOperator,\r\n operatorActions.ListOperator,\r\n peActions.PEAdd,\r\n peActions.PEEdit,\r\n peActions.PEDelete,\r\n peActions.PEList,\r\n chartActions.getChartData,\r\n ccActions.GetCCData,\r\n fuelGasFlaringActions.FuelGasFlaringData,\r\n fuelGasFlaringActions.EditFuelGasFlaringData,\r\n flaringReportActions.FlaringReportData,\r\n lpgDataActions.LPGData,\r\n projectedDataActions.AddProjectedData,\r\n projectedDataActions.ListProjectedData,\r\n projectedDataActions.DeleteProjectedData,\r\n so2EmissionsActions.ListSO2Emissions,\r\n so2EmissionsActions.SO2EmissionsEdit,\r\n so2ChartsActions.getSO2EmissionsFlowmeterGraph,\r\n so2RecalculationActions.ListSO2EmissionsRecalculation,\r\n so2RecalculationActions.AddSO2EmissionsRecalculation,\r\n so2RecalculationActions.DeleteSO2EmissionsRecalculation,\r\n TargetPermitActions.AddTargetPermit,\r\n TargetPermitActions.ListTargetPermit,\r\n approveActions.LPGApproveByChef,\r\n FlowmeterCalcActions.LPGFlowmeterCalculationInputAdd,\r\n SgiActions.getDailyFlareReport,\r\n SgiActions.saveManualRecord,\r\n SgiActions.approveSgiFlareReport,\r\n SgiActions.getBlowDownRecords,\r\n SgiActions.saveBlowDownRecord,\r\n SgiActions.deleteBlowDownRecord,\r\n SgiActions.getTargetPermitRecords,\r\n SgiActions.saveTargetPermitRecord,\r\n SgiActions.getChemicalCompositionRecords,\r\n SgiActions.exportMonthlyReport,\r\n SgiActions.editFlareRecordVolume,\r\n SgiActions.deleteFlareRecordVolume,\r\n FuelGasActions.FGDSGPManualRecord,\r\n FuelGasActions.AddOverrideManualRecord,\r\n InternalUsageActions.getBoilerRecords,\r\n InternalUsageActions.getHeaterRecords,\r\n InternalUsageActions.getMetersRecords,\r\n InternalUsageActions.getMonthlyReports,\r\n InternalUsageActions.approveMonthlyReport,\r\n KTLFDFlaringActions.AddManualRecord,\r\n KTLFDDailyReportActions.AddGenerateReports,\r\n GURActions.getGUR,\r\n GURActions.FGDSGPGURManualRecord,\r\n F205Actions.getF205\r\n ), // Customize this to your actions\r\n mergeMap(() => {\r\n // Dispatch the start loading action\r\n return of(notificationActions.startLoading());\r\n })\r\n )\r\n );\r\n\r\n stopLoadingEffect$ = createEffect(() =>\r\n this.actions.pipe(\r\n ofType(\r\n analystActions.AddAnalystSuccess,\r\n analystActions.AddAnalystFailure,\r\n analystActions.DeleteAnalystSuccess,\r\n analystActions.DeleteAnalystFailure,\r\n analystActions.EditAnalystSuccess,\r\n analystActions.EditAnalystFailure,\r\n analystActions.ListAnalystSuccess,\r\n analystActions.ListAnalystFailure,\r\n operatorActions.AddOperatorSuccess,\r\n operatorActions.AddOperatorFailure,\r\n operatorActions.DeleteOperatorSuccess,\r\n operatorActions.DeleteOperatorFailure,\r\n operatorActions.EditOperatorSuccess,\r\n operatorActions.EditOperatorFailure,\r\n operatorActions.ListOperatorSuccess,\r\n operatorActions.ListOperatorFailure,\r\n peActions.PEAddSuccess,\r\n peActions.PEAddFailure,\r\n peActions.PEEditSuccess,\r\n peActions.PEEditFailure,\r\n peActions.PEDeleteSuccess,\r\n peActions.PEDeleteFailure,\r\n peActions.PEListSuccess,\r\n peActions.PEListFailure,\r\n chartActions.getChartDataSuccess,\r\n chartActions.getChartDataFailure,\r\n ccActions.GetCCDataSuccess,\r\n ccActions.GetCCDataFailure,\r\n fuelGasFlaringActions.FuelGasFlaringDataSuccess,\r\n fuelGasFlaringActions.FuelGasFlaringDataFailure,\r\n fuelGasFlaringActions.EditFuelGasFlaringDataSuccess,\r\n fuelGasFlaringActions.EditFuelGasFlaringDataFailure,\r\n flaringReportActions.FlaringReportDataSuccess,\r\n flaringReportActions.FlaringReportDataFailure,\r\n lpgDataActions.LPGDataSuccess,\r\n lpgDataActions.LPGDataFailure,\r\n projectedDataActions.AddProjectedDataSuccess,\r\n projectedDataActions.AddProjectedDataFailure,\r\n projectedDataActions.ListProjectedDataSuccess,\r\n projectedDataActions.ListProjectedDataFailure,\r\n projectedDataActions.DeleteProjectedDataSuccess,\r\n projectedDataActions.DeleteProjectedDataFailure,\r\n so2EmissionsActions.ListSO2EmissionsSuccess,\r\n so2EmissionsActions.ListSO2EmissionsFailure,\r\n so2EmissionsActions.SO2EmissionsEditSuccess,\r\n so2EmissionsActions.SO2EmissionsEditFailure,\r\n so2ChartsActions.getSO2EmissionsFlowmeterGraphSuccess,\r\n so2ChartsActions.getSO2EmissionsFlowmeterGraphFailure,\r\n so2RecalculationActions.AddSO2EmissionsRecalculationSuccess,\r\n so2RecalculationActions.AddSO2EmissionsRecalculationFailure,\r\n so2RecalculationActions.ListSO2EmissionsRecalculationSuccess,\r\n so2RecalculationActions.ListSO2EmissionsRecalculationFailure,\r\n so2RecalculationActions.DeleteSO2EmissionsRecalculationSuccess,\r\n so2RecalculationActions.AddSO2EmissionsRecalculationFailure,\r\n TargetPermitActions.AddTargetPermitSuccess,\r\n TargetPermitActions.AddTargetPermitFailure,\r\n TargetPermitActions.ListTargetPermitSuccess,\r\n TargetPermitActions.ListTargetPermitFailure,\r\n approveActions.LPGApproveByChefSuccess,\r\n approveActions.LPGApproveByChefFailure,\r\n FlowmeterCalcActions.LPGFlowmeterCalculationInputAddSuccess,\r\n FlowmeterCalcActions.LPGFlowmeterCalculationInputAddFailure,\r\n SgiActions.getDailyFlareReportSuccess,\r\n SgiActions.getDailyFlareReportFailure,\r\n SgiActions.saveManualRecordSuccess,\r\n SgiActions.saveManualRecordFailure,\r\n SgiActions.approveSgiFlareReportSuccess,\r\n SgiActions.approveSgiFlareReportFailure,\r\n SgiActions.getBlowDownRecordsSuccess,\r\n SgiActions.getBlowDownRecordsFailure,\r\n SgiActions.saveBlowDownRecordSuccess,\r\n SgiActions.saveBlowDownRecordFailure,\r\n SgiActions.deleteBlowDownRecordSuccess,\r\n SgiActions.deleteBlowDownRecordFailure,\r\n SgiActions.getTargetPermitRecordsSuccess,\r\n SgiActions.getTargetPermitRecordsFailure,\r\n SgiActions.saveTargetPermitRecordSuccess,\r\n SgiActions.saveTargetPermitRecordFailure,\r\n SgiActions.getChemicalCompositionRecordsSuccess,\r\n SgiActions.getChemicalCompositionRecordsFailure,\r\n SgiActions.exportMonthlyReportSuccess,\r\n SgiActions.exportMonthlyReportFailure,\r\n SgiActions.editFlareRecordVolumeSuccess,\r\n SgiActions.editFlareRecordVolumeFailure,\r\n SgiActions.deleteFlareRecordVolumeSuccess,\r\n SgiActions.deleteFlareRecordVolumeFailure,\r\n FuelGasActions.FGDSGPManualRecordSuccess,\r\n FuelGasActions.FGDSGPManualRecordFailure,\r\n FuelGasActions.AddOverrideManualRecordSuccess,\r\n FuelGasActions.AddOverrideManualRecordFailure,\r\n InternalUsageActions.getBoilerRecordsSuccess,\r\n InternalUsageActions.getBoilerRecordsFailure,\r\n InternalUsageActions.getHeaterRecordsSuccess,\r\n InternalUsageActions.getHeaterRecordsFailure,\r\n InternalUsageActions.getMetersRecordsSuccess,\r\n InternalUsageActions.getMetersRecordsFailure,\r\n InternalUsageActions.getMonthlyReportsSuccess,\r\n InternalUsageActions.getMonthlyReportsFailure,\r\n InternalUsageActions.approveMonthlyReportSuccess,\r\n InternalUsageActions.approveMonthlyReportFailure,\r\n KTLFDFlaringActions.AddManualRecordSuccess,\r\n KTLFDFlaringActions.AddManualRecordFailure,\r\n KTLFDDailyReportActions.AddGenerateReportsSuccess,\r\n KTLFDDailyReportActions.AddGenerateReportsFailure,\r\n GURActions.getGURSuccess,\r\n GURActions.getGURFailure,\r\n GURActions.FGDSGPGURManualRecordSuccess,\r\n GURActions.FGDSGPGURManualRecordFailure,\r\n F205Actions.getF205Success,\r\n F205Actions.getF205Failure\r\n ), // Customize this to your actions\r\n mergeMap(() => {\r\n // Dispatch the stop loading action\r\n return of(notificationActions.stopLoading());\r\n })\r\n )\r\n );\r\n}\r\n","import { Action, createReducer, createSelector, on } from '@ngrx/store';\r\nimport * as notificationActions from './notification.action';\r\n\r\nexport interface NotificationState {\r\n message: string;\r\n isSuccess: boolean;\r\n isFailure: boolean;\r\n showNotification: boolean;\r\n isLoading: boolean;\r\n}\r\n\r\nconst initialState: NotificationState = {\r\n message: '',\r\n isSuccess: false,\r\n isFailure: false,\r\n showNotification: false,\r\n isLoading: false,\r\n};\r\n\r\nexport const NotificationReducer = createReducer(\r\n initialState,\r\n on(notificationActions.showNotificationSuccess, (state, result) => ({\r\n ...state,\r\n message: result.message,\r\n showNotification: true,\r\n isSuccess: true,\r\n isFailure: false,\r\n isLoading: false,\r\n })),\r\n on(notificationActions.showNotificationFailure, (state, result) => ({\r\n ...state,\r\n message: result.message,\r\n showNotification: true,\r\n isSuccess: false,\r\n isFailure: true,\r\n isLoading: false,\r\n })),\r\n on(notificationActions.clearNotification, (state) => ({\r\n ...state,\r\n message: '',\r\n showNotification: false,\r\n isSuccess: false,\r\n isFailure: false,\r\n isLoading: false,\r\n })),\r\n on(notificationActions.startLoading, (state) => ({\r\n ...state,\r\n isLoading: true,\r\n })),\r\n on(notificationActions.stopLoading, (state) => ({\r\n ...state,\r\n isLoading: false,\r\n }))\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\nimport { AppState } from '../../core/models/appState.model';\r\nimport { NotificationState } from './notification.reducer';\r\n\r\nexport const notificationSelector = createSelector(\r\n (state: AppState) => state.notification,\r\n (notify: NotificationState) => notify\r\n);\r\n","import { NgModule } from '@angular/core';\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { StoreDevtoolsModule } from '@ngrx/store-devtools';\r\n//reducers\r\nimport { chartJsReducer } from '../state/chartjs/chartjs.reducer';\r\nimport { PEReducer } from '../state/lpg/pe/pe.reducer';\r\nimport { AnalystReducer } from '../state/lpg/analyst/analyst.reducer';\r\nimport { OperatorReducer } from '../state/lpg/operator/operator.reducer';\r\nimport { NotificationReducer } from '../state/notification/notification.reducer';\r\nimport { CCReducer } from './lpg/cc/cc.reducer';\r\nimport { FuelGasFlaringReducer } from './lpg/fuel-gas-flaring/fuel-gas-flaring.reducer';\r\nimport { FlaringReportReducer } from './lpg/flaring-report/flaring-report.reducer';\r\nimport { LPGDataReducer } from './lpg/lpg-data/lpg-data.reducer';\r\nimport { ProjectedDataReducer } from './ktlsgp/projected-data/projected-data.reducer';\r\nimport { SO2EmissionsReducer } from './ktlsgp/so2-emissions/so2-emissions.reducer';\r\nimport { SO2EmissionsRecalculationReducer } from './ktlsgp/so2-emissions-recalculation/so2-emissions-recalculation.reducer';\r\nimport { SO2ChartsReducer } from './ktlsgp/so2-charts/so2-charts.reducer';\r\nimport { TargetPermitReducer } from './lpg/target-permit/target-permit.reducer';\r\nimport { ApproveReducer } from './lpg/approve/approve.reducer';\r\nimport { GURReducer } from '../features/tco/processeng/fgd/sgp/gas-usage-report/state/gas-usage-report.reducer';\r\nimport { AuthReducer } from '../state/auth/auth.reducer';\r\n//effects\r\nimport { ChartJsEffects } from '../state/chartjs/chartjs.effects';\r\nimport { PEEffects } from '../state/lpg/pe/pe.effects';\r\nimport { AnalystEffects } from '../state/lpg/analyst/analyst.effects';\r\nimport { OperatorEffects } from '../state/lpg/operator/operator.effects';\r\nimport { NotificationEffects } from '../state/notification/notification.effects';\r\nimport { CCEffects } from './lpg/cc/cc.effects';\r\nimport { FuelGasFlaringEffects } from './lpg/fuel-gas-flaring/fuel-gas-flaring.effects';\r\nimport { FlaringReportEffects } from './lpg/flaring-report/flaring-report.effects';\r\nimport { LPGDataEffects } from './lpg/lpg-data/lpg-data.effects';\r\nimport { ProjectedDataEffects } from './ktlsgp/projected-data/projected-data.effects';\r\nimport { SO2EmissionsEffects } from './ktlsgp/so2-emissions/so2-emissions.effects';\r\nimport { SO2EmissionsRecalculationEffects } from './ktlsgp/so2-emissions-recalculation/so2-emissions-recalculation.effects';\r\nimport { SO2ChartsEffects } from './ktlsgp/so2-charts/so2-charts.effects';\r\nimport { TargetPermitEffects } from './lpg/target-permit/target-permit.effects';\r\nimport { ApproveEffects } from './lpg/approve/approve.effects';\r\nimport { flowmeterCalculationReducer } from './lpg/flowmeter-calculation/flowmeter-calculation.reducer';\r\nimport { FlowmeterCalculationEffects } from './lpg/flowmeter-calculation/flowmeter-calculation.effects';\r\nimport { FuelGasEffects } from '../features/tco/processeng/fgd/sgp/fuel-gas-dashboard/state/fuel-gas.effects';\r\nimport { FuelGasReducer } from '../features/tco/processeng/fgd/sgp/fuel-gas-dashboard/state/fuel-gas.reducer';\r\nimport { KTLFGDFuelGasReducer } from '../features/tco/processeng/fgd/ktl/production-gas-balance/state/ktl-fgd-fuel-gas.reducer';\r\nimport { KTLFGDFuelGasEffects } from '../features/tco/processeng/fgd/ktl/production-gas-balance/state/ktl-fgd-fuel-gas.effects';\r\nimport { FlaringReducer } from '../features/tco/processeng/fd/ktl/input/process-engineer/flaring/state/flaring.reducer';\r\nimport { FlaringEffects } from '../features/tco/processeng/fd/ktl/input/process-engineer/flaring/state/flaring.effects';\r\nimport { SGPFlaringReducer } from '../features/tco/processeng/fd/sgp/input/process-engineer/flaring/state/flaring.reducer';\r\nimport { SGPFlaringEffects } from '../features/tco/processeng/fd/sgp/input/process-engineer/flaring/state/flaring.effects';\r\nimport { DailyReportReducer } from '../features/tco/processeng/fd/ktl/daily-report/state/daily-report.reducer';\r\nimport { DailyReportEffects } from '../features/tco/processeng/fd/ktl/daily-report/state/daily-report.effects';\r\nimport { GUREffects } from '../features/tco/processeng/fgd/sgp/gas-usage-report/state/gas-usage-report.effects';\r\nimport { F205Reducer } from '../features/tco/processeng/fd/ktl/f-205/state/f-205.reducer';\r\nimport { F205Effects } from '../features/tco/processeng/fd/ktl/f-205/state/f-205.effects';\r\nimport { AuthEffects } from '../state/auth/auth.effects';\r\n\r\n@NgModule({\r\n imports: [\r\n StoreModule.forRoot({\r\n chartjs: chartJsReducer,\r\n processEngineer: PEReducer,\r\n analyst: AnalystReducer,\r\n operator: OperatorReducer,\r\n notification: NotificationReducer,\r\n cc: CCReducer,\r\n fuelGasFlaring: FuelGasFlaringReducer,\r\n flaringReport: FlaringReportReducer,\r\n lpgData: LPGDataReducer,\r\n projectedData: ProjectedDataReducer,\r\n so2Emissions: SO2EmissionsReducer, \r\n so2EmissionsRecalculation: SO2EmissionsRecalculationReducer,\r\n so2Charts: SO2ChartsReducer,\r\n targetPermit: TargetPermitReducer,\r\n approve: ApproveReducer,\r\n flowmeterCalc: flowmeterCalculationReducer,\r\n sgpFgdFuelGas: FuelGasReducer,\r\n ktlFgdFuelGas: KTLFGDFuelGasReducer, \r\n ktlFDInput: FlaringReducer,\r\n sgpFDInput: SGPFlaringReducer,\r\n ktlFDDailyReport: DailyReportReducer,\r\n sgpFgdGUR: GURReducer,\r\n ktlFDF205: F205Reducer,\r\n authUserGroups: AuthReducer\r\n }),\r\n EffectsModule.forRoot([\r\n ChartJsEffects,\r\n PEEffects,\r\n AnalystEffects,\r\n OperatorEffects,\r\n NotificationEffects,\r\n CCEffects,\r\n FuelGasFlaringEffects,\r\n FlaringReportEffects,\r\n LPGDataEffects,\r\n ProjectedDataEffects,\r\n SO2EmissionsEffects,\r\n SO2EmissionsRecalculationEffects,\r\n SO2ChartsEffects,\r\n TargetPermitEffects,\r\n ApproveEffects,\r\n FlowmeterCalculationEffects,\r\n FuelGasEffects,\r\n KTLFGDFuelGasEffects,\r\n FlaringEffects,\r\n SGPFlaringEffects,\r\n DailyReportEffects,\r\n GUREffects,\r\n F205Effects,\r\n AuthEffects\r\n ]),\r\n StoreDevtoolsModule.instrument(),\r\n ],\r\n})\r\nexport class StateModule {}\r\n","//----------------------\r\n// \r\n// Generated using the NSwag toolchain v14.1.0.0 (NJsonSchema v11.0.2.0 (Newtonsoft.Json v13.0.0.0)) (http://NSwag.org)\r\n// \r\n//----------------------\r\n\r\n/* tslint:disable */\r\n/* eslint-disable */\r\n// ReSharper disable InconsistentNaming\r\n\r\nimport { mergeMap as _observableMergeMap, catchError as _observableCatch } from 'rxjs/operators';\r\nimport { Observable, throwError as _observableThrow, of as _observableOf } from 'rxjs';\r\nimport { Injectable, Inject, Optional, InjectionToken } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpResponse, HttpResponseBase } from '@angular/common/http';\r\n\r\nexport const API_BASE_URL = new InjectionToken('API_BASE_URL');\r\n\r\nexport interface IFieldClient {\r\n /**\r\n * Consumes 1 Datetime to retrieve data for whole month.\r\n * @param dt (optional) \r\n */\r\n getPurgePilotEntries(dt: Date | undefined): Observable;\r\n /**\r\n * Consumes 1 Datetime to retrieve data for whole month.\r\n * @param dt (optional) \r\n */\r\n getRecordTablesData(dt: Date | undefined): Observable;\r\n flaringReport(area: string | undefined, dt: Date | undefined): Observable;\r\n gasBalanceReport(dt: Date | undefined): Observable;\r\n tGGSValues(startTime: Date | undefined): Observable;\r\n getTotalVolumeMass(startTime: Date | undefined): Observable;\r\n fieldTotals(startTime: Date | undefined): Observable;\r\n getLatestUserAction(startTime: Date | undefined, actionType: ActionTypeEnumDTO | undefined): Observable;\r\n finalReportGasBalance(startTime: Date | undefined): Observable;\r\n finalReportFlaringReport(startTime: Date | undefined, field: string | undefined): Observable;\r\n fieldPurgePilots(startTime: Date | undefined): Observable;\r\n setPurgePilotDays(fdInput: PurgePilotDTO[], startTime: Date | undefined): Observable;\r\n confirmPurgePilotDays(fdInput: PurgePilotDTO[], startTime: Date | undefined): Observable;\r\n addFieldRecord(fdInputDTO: RecordDTO): Observable;\r\n pressureTemperatureGraph(dt: Date | undefined, location: string | undefined): Observable;\r\n addFieldRecord2(fdInputDTO: RecordOperatorDTO): Observable;\r\n getOperatorTableNabor(date: Date | undefined): Observable;\r\n getOperatorTableSzhiganiye(date: Date | undefined): Observable;\r\n getOperatorPurgePilotSwitch(date: Date | undefined): Observable;\r\n changeFieldRecord(fdInputDTO: RecordDTO): Observable;\r\n deleteFieldRecord(id: number | undefined, startTime: Date | null | undefined, userName: string | undefined): Observable;\r\n pBFCC(timestamp: Date | undefined, isPBF: boolean | undefined): Observable;\r\n getPBFCC(timestamp: Date | undefined): Observable;\r\n confirmCalc(startTime: Date | undefined, gasType: string | undefined): Observable;\r\n setMonthlyLeaksToNow(startTime: Date | undefined, gasType: string | undefined): Observable;\r\n approveByChef(startTime: Date | undefined): Observable;\r\n chemicalCompounds(startTime: Date | undefined): Observable;\r\n setFieldToDryFlaredPE(gasBlowdownDTO: RecordBledFullyDTO): Observable;\r\n setFieldToDryFlared(gasBlowdownDTO: RecordBledFullyDTO): Observable;\r\n setBledFully(id: number | undefined, startTime: Date | undefined): Observable;\r\n operatorChangeFieldRecord(fdInputDTO: OperatorRecordDTO): Observable;\r\n operatorDeleteFieldRecord(id: number | undefined, startTime: Date | null | undefined): Observable;\r\n operatorChangePurgePilotRecord(fdInputDTO: RecordOperatorDTO): Observable;\r\n addFieldPermitTargetInput(fieldPermitTargetInputDTO: FieldPermitTargetInputDTO): Observable;\r\n editFieldPermitTargetInput(permitTargetInputEditDTO: PermitTargetInputEditDTO): Observable;\r\n deleteFieldPermitTargetInput(id: number | undefined): Observable;\r\n addPerformanceMetricsPermitTargetInput(performanceMetricsPermitTargetInputDTO: PerformanceMetricsPermitTargetInputDTO): Observable;\r\n deletePerformanceMetricsPermitTargetInput(id: number | undefined): Observable;\r\n exportDryGas(dt: Date | undefined): Observable;\r\n exportReservoirGas(dt: Date | undefined): Observable;\r\n mSLocationsList(): Observable;\r\n exportPurgePilot(dt: Date | undefined): Observable;\r\n exportFuelGas(dt: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class FieldClient implements IFieldClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n /**\r\n * Consumes 1 Datetime to retrieve data for whole month.\r\n * @param dt (optional) \r\n */\r\n getPurgePilotEntries(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/PurgePilotEntries?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPurgePilotEntries(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPurgePilotEntries(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPurgePilotEntries(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(PurgePilotEntriesDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * Consumes 1 Datetime to retrieve data for whole month.\r\n * @param dt (optional) \r\n */\r\n getRecordTablesData(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/RecordsTablesData?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetRecordTablesData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetRecordTablesData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetRecordTablesData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RecordTablesDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n flaringReport(area: string | undefined, dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/FlaringReports?\";\r\n if (area === null)\r\n throw new Error(\"The parameter 'area' cannot be null.\");\r\n else if (area !== undefined)\r\n url_ += \"Area=\" + encodeURIComponent(\"\" + area) + \"&\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFlaringReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFlaringReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFlaringReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n gasBalanceReport(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/GasBalanceReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGasBalanceReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGasBalanceReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGasBalanceReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n tGGSValues(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/3ggsValues?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processTGGSValues(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processTGGSValues(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processTGGSValues(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getTotalVolumeMass(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/GetTotalVolumeAndMass?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTotalVolumeMass(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTotalVolumeMass(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTotalVolumeMass(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n fieldTotals(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/FieldTotals?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFieldTotals(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFieldTotals(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFieldTotals(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(FieldTotal.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getLatestUserAction(startTime: Date | undefined, actionType: ActionTypeEnumDTO | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/LatestUserAction?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (actionType === null)\r\n throw new Error(\"The parameter 'actionType' cannot be null.\");\r\n else if (actionType !== undefined)\r\n url_ += \"ActionType=\" + encodeURIComponent(\"\" + actionType) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLatestUserAction(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLatestUserAction(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLatestUserAction(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n finalReportGasBalance(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/FinalReportGasBalance?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFinalReportGasBalance(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFinalReportGasBalance(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFinalReportGasBalance(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n finalReportFlaringReport(startTime: Date | undefined, field: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/FinalReportFlaringReport?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (field === null)\r\n throw new Error(\"The parameter 'field' cannot be null.\");\r\n else if (field !== undefined)\r\n url_ += \"Field=\" + encodeURIComponent(\"\" + field) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFinalReportFlaringReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFinalReportFlaringReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFinalReportFlaringReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n fieldPurgePilots(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/FieldPurgePilots?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFieldPurgePilots(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFieldPurgePilots(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFieldPurgePilots(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setPurgePilotDays(fdInput: PurgePilotDTO[], startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/SetPurgePilotDays?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(fdInput);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetPurgePilotDays(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetPurgePilotDays(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetPurgePilotDays(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n confirmPurgePilotDays(fdInput: PurgePilotDTO[], startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/ConfirmPurgePilotDays?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(fdInput);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConfirmPurgePilotDays(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConfirmPurgePilotDays(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processConfirmPurgePilotDays(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addFieldRecord(fdInputDTO: RecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/AddFieldRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(fdInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddFieldRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddFieldRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddFieldRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n pressureTemperatureGraph(dt: Date | undefined, location: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/PressureTemperatureGraph?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (location === null)\r\n throw new Error(\"The parameter 'location' cannot be null.\");\r\n else if (location !== undefined)\r\n url_ += \"Location=\" + encodeURIComponent(\"\" + location) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processPressureTemperatureGraph(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processPressureTemperatureGraph(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processPressureTemperatureGraph(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PressureTemperatureGraphDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addFieldRecord2(fdInputDTO: RecordOperatorDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/AddOperatorFieldRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(fdInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddFieldRecord2(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddFieldRecord2(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddFieldRecord2(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getOperatorTableNabor(date: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/GetOperatorTableNabor?\";\r\n if (date === null)\r\n throw new Error(\"The parameter 'date' cannot be null.\");\r\n else if (date !== undefined)\r\n url_ += \"date=\" + encodeURIComponent(date ? \"\" + date.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOperatorTableNabor(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOperatorTableNabor(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOperatorTableNabor(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RecordOperatorDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getOperatorTableSzhiganiye(date: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/GetOperatorTableSzhiganiye?\";\r\n if (date === null)\r\n throw new Error(\"The parameter 'date' cannot be null.\");\r\n else if (date !== undefined)\r\n url_ += \"date=\" + encodeURIComponent(date ? \"\" + date.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOperatorTableSzhiganiye(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOperatorTableSzhiganiye(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOperatorTableSzhiganiye(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RecordOperatorDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getOperatorPurgePilotSwitch(date: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/GetOperatorPurgePilotSwitch?\";\r\n if (date === null)\r\n throw new Error(\"The parameter 'date' cannot be null.\");\r\n else if (date !== undefined)\r\n url_ += \"date=\" + encodeURIComponent(date ? \"\" + date.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetOperatorPurgePilotSwitch(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetOperatorPurgePilotSwitch(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetOperatorPurgePilotSwitch(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RecordOperatorDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n changeFieldRecord(fdInputDTO: RecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/ChangeFieldRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(fdInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processChangeFieldRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processChangeFieldRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processChangeFieldRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteFieldRecord(id: number | undefined, startTime: Date | null | undefined, userName: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/DeleteFieldRecord?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (startTime !== undefined && startTime !== null)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (userName === null)\r\n throw new Error(\"The parameter 'userName' cannot be null.\");\r\n else if (userName !== undefined)\r\n url_ += \"userName=\" + encodeURIComponent(\"\" + userName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteFieldRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteFieldRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteFieldRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n pBFCC(timestamp: Date | undefined, isPBF: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/PBFCC?\";\r\n if (timestamp === null)\r\n throw new Error(\"The parameter 'timestamp' cannot be null.\");\r\n else if (timestamp !== undefined)\r\n url_ += \"timestamp=\" + encodeURIComponent(timestamp ? \"\" + timestamp.toISOString() : \"\") + \"&\";\r\n if (isPBF === null)\r\n throw new Error(\"The parameter 'isPBF' cannot be null.\");\r\n else if (isPBF !== undefined)\r\n url_ += \"isPBF=\" + encodeURIComponent(\"\" + isPBF) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processPBFCC(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processPBFCC(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processPBFCC(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getPBFCC(timestamp: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/PBFCC?\";\r\n if (timestamp === null)\r\n throw new Error(\"The parameter 'timestamp' cannot be null.\");\r\n else if (timestamp !== undefined)\r\n url_ += \"timestamp=\" + encodeURIComponent(timestamp ? \"\" + timestamp.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetPBFCC(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetPBFCC(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetPBFCC(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n confirmCalc(startTime: Date | undefined, gasType: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/ConfirmFieldCalc?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (gasType === null)\r\n throw new Error(\"The parameter 'gasType' cannot be null.\");\r\n else if (gasType !== undefined)\r\n url_ += \"gasType=\" + encodeURIComponent(\"\" + gasType) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConfirmCalc(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConfirmCalc(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processConfirmCalc(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setMonthlyLeaksToNow(startTime: Date | undefined, gasType: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/SetMonthlyLeaksToNow?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (gasType === null)\r\n throw new Error(\"The parameter 'gasType' cannot be null.\");\r\n else if (gasType !== undefined)\r\n url_ += \"gasType=\" + encodeURIComponent(\"\" + gasType) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetMonthlyLeaksToNow(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetMonthlyLeaksToNow(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetMonthlyLeaksToNow(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n approveByChef(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/Approve?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processApproveByChef(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processApproveByChef(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processApproveByChef(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n chemicalCompounds(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/FieldLIMS?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processChemicalCompounds(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processChemicalCompounds(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processChemicalCompounds(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setFieldToDryFlaredPE(gasBlowdownDTO: RecordBledFullyDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/SetFieldToDryFlaredPE\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(gasBlowdownDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetFieldToDryFlaredPE(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetFieldToDryFlaredPE(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetFieldToDryFlaredPE(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setFieldToDryFlared(gasBlowdownDTO: RecordBledFullyDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/SetFieldToDryFlared\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(gasBlowdownDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetFieldToDryFlared(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetFieldToDryFlared(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetFieldToDryFlared(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setBledFully(id: number | undefined, startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/SetBledFully?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetBledFully(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetBledFully(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetBledFully(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n operatorChangeFieldRecord(fdInputDTO: OperatorRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/OperatorChangeFieldRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(fdInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processOperatorChangeFieldRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processOperatorChangeFieldRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processOperatorChangeFieldRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n operatorDeleteFieldRecord(id: number | undefined, startTime: Date | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/OperatorDeleteFieldRecord?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (startTime !== undefined && startTime !== null)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processOperatorDeleteFieldRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processOperatorDeleteFieldRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processOperatorDeleteFieldRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n operatorChangePurgePilotRecord(fdInputDTO: RecordOperatorDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/OperatorChangePurgePilotRecordAsync\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(fdInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processOperatorChangePurgePilotRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processOperatorChangePurgePilotRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processOperatorChangePurgePilotRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addFieldPermitTargetInput(fieldPermitTargetInputDTO: FieldPermitTargetInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/AddFieldPermitTargetInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(fieldPermitTargetInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddFieldPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddFieldPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddFieldPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editFieldPermitTargetInput(permitTargetInputEditDTO: PermitTargetInputEditDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/EditFieldPermitTargetInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(permitTargetInputEditDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditFieldPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditFieldPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditFieldPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteFieldPermitTargetInput(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/DeleteFieldPermitTargetInput?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteFieldPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteFieldPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteFieldPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addPerformanceMetricsPermitTargetInput(performanceMetricsPermitTargetInputDTO: PerformanceMetricsPermitTargetInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/AddPerformanceMetricsPermitTargetInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(performanceMetricsPermitTargetInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddPerformanceMetricsPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddPerformanceMetricsPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddPerformanceMetricsPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deletePerformanceMetricsPermitTargetInput(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/DeletePerformanceMetricsPermitTargetInput?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeletePerformanceMetricsPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeletePerformanceMetricsPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeletePerformanceMetricsPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportDryGas(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/ExportDryGas?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportDryGas(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportDryGas(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportDryGas(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportReservoirGas(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/ExportReservoirGas?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportReservoirGas(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportReservoirGas(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportReservoirGas(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n mSLocationsList(): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/MSLocationsList\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMSLocationsList(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMSLocationsList(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMSLocationsList(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(FacilityLocationListDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportPurgePilot(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/ExportPurgePilot?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportPurgePilot(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportPurgePilot(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportPurgePilot(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportFuelGas(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/Field/ExportFuelGas?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportFuelGas(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportFuelGas(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportFuelGas(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface ICommonClient {\r\n getDatesFrom2Years(): Observable;\r\n getCurrentUser(): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class CommonClient implements ICommonClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n getDatesFrom2Years(): Observable {\r\n let url_ = this.baseUrl + \"/api/Common/DateTime2years\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDatesFrom2Years(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDatesFrom2Years(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDatesFrom2Years(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getCurrentUser(): Observable {\r\n let url_ = this.baseUrl + \"/api/Common/GetCurrentUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCurrentUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCurrentUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCurrentUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface IIntUsClient {\r\n getHeatersRecords(dt: Date | undefined): Observable;\r\n getBoilersRecords(dt: Date | undefined): Observable;\r\n getMetersRecords(dt: Date | undefined): Observable;\r\n getTotalTableRecords(dt: Date | undefined): Observable;\r\n getIBMOARecords(dt: Date | undefined): Observable;\r\n getMonthlyReport(dt: Date | undefined): Observable;\r\n getYearlyReport(dt: Date | undefined): Observable;\r\n addHeatersRecord(recordDTO: HeatersRecordsDTO): Observable;\r\n editHeatersRecord(recordDTO: HeatersRecordsDTO[]): Observable;\r\n addBoilersRecord(recordDTO: BoilerRecordsDTO): Observable;\r\n editBoilersRecord(recordDTO: BoilerRecordsDTO[]): Observable;\r\n updateMotohoursBoilersRecord(recordDTO: BoilerRecordsDTO): Observable;\r\n updateMotohoursHeatersRecord(recordDTO: HeatersRecordsDTO): Observable;\r\n addMetersRecord(recordDTO: MetersRecordsDTO[]): Observable;\r\n editMetersRecord(recordDTO: MetersRecordsDTO): Observable;\r\n addIBMOARecord(recordDTO: IBMOARecordsDTO): Observable;\r\n addReportComments(recordDTO: MonthlyReportCommentsDTO): Observable;\r\n approveMonthlyReport(dt: Date | undefined): Observable;\r\n getLatestApproveMonthly(startTime: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class IntUsClient implements IIntUsClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n getHeatersRecords(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/HeatersRecords?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetHeatersRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetHeatersRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetHeatersRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(HeatersRecordsDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getBoilersRecords(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/BoilersRecords?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetBoilersRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetBoilersRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetBoilersRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(BoilerRecordsDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getMetersRecords(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/MetersRecords?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetMetersRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetMetersRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetMetersRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(MetersRecordsDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getTotalTableRecords(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/TotalTableRecords?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTotalTableRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTotalTableRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTotalTableRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = TotalTableDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getIBMOARecords(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/IBMOARecords?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetIBMOARecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetIBMOARecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetIBMOARecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = IBMOARecordsDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getMonthlyReport(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/MonthlyReport?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetMonthlyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetMonthlyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetMonthlyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = MonthlyReportDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getYearlyReport(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/YearlyReport?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetYearlyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetYearlyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetYearlyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(MonthlyReportDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addHeatersRecord(recordDTO: HeatersRecordsDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/HeatersRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddHeatersRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddHeatersRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddHeatersRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editHeatersRecord(recordDTO: HeatersRecordsDTO[]): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/HeatersRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"patch\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditHeatersRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditHeatersRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditHeatersRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addBoilersRecord(recordDTO: BoilerRecordsDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/BoilersRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddBoilersRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddBoilersRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddBoilersRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editBoilersRecord(recordDTO: BoilerRecordsDTO[]): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/BoilersRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"patch\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditBoilersRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditBoilersRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditBoilersRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n updateMotohoursBoilersRecord(recordDTO: BoilerRecordsDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/BoilersRecordMotohours\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"patch\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateMotohoursBoilersRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateMotohoursBoilersRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateMotohoursBoilersRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n updateMotohoursHeatersRecord(recordDTO: HeatersRecordsDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/HeatersRecordMotohours\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"patch\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processUpdateMotohoursHeatersRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processUpdateMotohoursHeatersRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processUpdateMotohoursHeatersRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addMetersRecord(recordDTO: MetersRecordsDTO[]): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/MetersRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddMetersRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddMetersRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddMetersRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editMetersRecord(recordDTO: MetersRecordsDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/MetersRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"patch\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditMetersRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditMetersRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditMetersRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addIBMOARecord(recordDTO: IBMOARecordsDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/IBMOARecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddIBMOARecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddIBMOARecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddIBMOARecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addReportComments(recordDTO: MonthlyReportCommentsDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/ReportComments\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddReportComments(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddReportComments(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddReportComments(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n approveMonthlyReport(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/ApproveMonthlyReport?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processApproveMonthlyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processApproveMonthlyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processApproveMonthlyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getLatestApproveMonthly(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/InternalUsage/ApproveMonthlyTimestamp?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLatestApproveMonthly(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLatestApproveMonthly(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLatestApproveMonthly(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface IKTLFGDClient {\r\n testSynapseConnection(): Observable;\r\n refreshStreams(isDelta: boolean | undefined): Observable;\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n getMonthlyRecords(startTime: Date | undefined): Observable;\r\n isDailyRecordsExist(startTime: Date | undefined): Observable;\r\n getDailyRecords(startTime: Date | undefined): Observable;\r\n addManualRecord(recordDTO: DailyReportInputRecordDTO): Observable;\r\n addMonthlyManualRecord(recordDTO: MonthlyInputRecordDTO): Observable;\r\n overrideManualRecord(recordDTO: KTLFGDOverrideRecordDTO): Observable;\r\n deleteOverrideRecord(streamId: number | undefined, startTime: Date | undefined): Observable;\r\n exportKTLFGDDailyReports(dt: Date | undefined): Observable;\r\n exportKTLFGDMonthlyReports(dt: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class KTLFGDClient implements IKTLFGDClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n testSynapseConnection(): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/TestSynapseConnection\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processTestSynapseConnection(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processTestSynapseConnection(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processTestSynapseConnection(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n refreshStreams(isDelta: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/RefreshStreams?\";\r\n if (isDelta === null)\r\n throw new Error(\"The parameter 'isDelta' cannot be null.\");\r\n else if (isDelta !== undefined)\r\n url_ += \"isDelta=\" + encodeURIComponent(\"\" + isDelta) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRefreshStreams(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRefreshStreams(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRefreshStreams(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getMonthlyRecords(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/MonthlyRecords?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetMonthlyRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetMonthlyRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetMonthlyRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(CalculatedStreamDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n isDailyRecordsExist(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/IsDailyRecordExist?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processIsDailyRecordsExist(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processIsDailyRecordsExist(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processIsDailyRecordsExist(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getDailyRecords(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/DailyRecords?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDailyRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDailyRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDailyRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(CalculatedStreamDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addManualRecord(recordDTO: DailyReportInputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/ManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addMonthlyManualRecord(recordDTO: MonthlyInputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/MonthlyManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddMonthlyManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddMonthlyManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddMonthlyManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n overrideManualRecord(recordDTO: KTLFGDOverrideRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/OverrideManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processOverrideManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processOverrideManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processOverrideManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteOverrideRecord(streamId: number | undefined, startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/DeleteOverrideRecord?\";\r\n if (streamId === null)\r\n throw new Error(\"The parameter 'streamId' cannot be null.\");\r\n else if (streamId !== undefined)\r\n url_ += \"streamId=\" + encodeURIComponent(\"\" + streamId) + \"&\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteOverrideRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteOverrideRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteOverrideRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportKTLFGDDailyReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/ExportKTLFGDDailyReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportKTLFGDDailyReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportKTLFGDDailyReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportKTLFGDDailyReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportKTLFGDMonthlyReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGD/ExportKTLFGDMonthlyReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportKTLFGDMonthlyReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportKTLFGDMonthlyReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportKTLFGDMonthlyReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface IKTLFGDECClient {\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class KTLFGDECClient implements IKTLFGDECClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLFGDEC/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface IKTLSGPClient {\r\n refreshStreams(plant: Plant | undefined, isDelta: boolean | undefined): Observable;\r\n compareStreamsAFandSQL(isDelta: boolean | undefined): Observable;\r\n setLeaksAndParents(plant: Plant | undefined): Observable;\r\n confirmDailyReport(startTime: Date | undefined): Observable;\r\n confirmMonthlyReport(startTime: Date | undefined): Observable;\r\n approveByChef(startTime: Date | undefined): Observable;\r\n generateReports(startTime: Date | undefined): Observable;\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n switchStream(id: number | undefined, startTime: Date | undefined, switchFrom: string | undefined, switchTo: string | undefined): Observable;\r\n batchSwitchStream(dto: FlareSwitcherDTO): Observable;\r\n batchSwitchStreamSGP(dto: SGPFlareSwitcherDTO): Observable;\r\n getSGPFlareSwitcherHistory(startTime: Date | null | undefined, endTime: Date | null | undefined, isSwitchable: boolean | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable;\r\n getAllNonSwitchableSGPStreams(): Observable;\r\n facilityAndUnitMapping(): Observable;\r\n switchedStreams(startTime: Date | undefined): Observable;\r\n getFlareSwitcherHistory(startTime: Date | undefined, endTime: Date | undefined, facility: KTLTrains | null | undefined, unit: UnitList | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable;\r\n bypass(id: number | undefined, bypass: string | undefined, startTime: Date | undefined, endTime: Date | undefined): Observable;\r\n addManualRecord(record: InputRecordDTO): Observable;\r\n editManualRecord(record: InputRecordDTO): Observable;\r\n commentsDailyReport(record: InputRecordDTO): Observable;\r\n deleteManualRecord(id: number): Observable;\r\n getDailyReport(dt: Date | undefined, flare: string | undefined): Observable;\r\n getF205CalcDetails(starttime: Date | undefined, endtime: Date | undefined): Observable;\r\n getReportDaily(dt: Date | undefined, flare: string | undefined): Observable;\r\n getInputHistory(starttime: Date | null | undefined, endttime: Date | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined, plant: Plant | undefined, flareName: string | null | undefined): Observable;\r\n getChemicalCompoundsID(): Observable;\r\n getChemicalCompoundsEquipment(unitName: UnitList | null | undefined, ktlTrain: TrainList | null | undefined): Observable;\r\n addChemicalCompoundsEquipment(dto: ChemicalCompoundsEquipmentDTO): Observable;\r\n editChemicalCompoundsEquipment(dto: ChemicalCompoundsEquipmentDTO): Observable;\r\n deleteChemicalCompoundsEquipment(id: number | undefined): Observable;\r\n getMonthlyReport(dt: Date | undefined, flare: string | undefined): Observable;\r\n getGasBalance(dt: Date | undefined, flare: string | undefined): Observable;\r\n getChemicalCompounds(timeStamp: Date | undefined): Observable;\r\n getGUR(startTime: Date | undefined): Observable;\r\n postGUR(input: GURInputRecordDTO): Observable;\r\n addKTLSGPPermitTargetInput(kTLSGPPermitTargetInputDTO: KTLSGPPermitTargetInputDTO): Observable;\r\n editKTLSGPPermitTargetInput(permitTargetInputEditDTO: PermitTargetInputEditDTO): Observable;\r\n deleteAddKTLSGPPermitTargetInput(id: number | undefined): Observable;\r\n monthlyReport(dt: Date | undefined): Observable;\r\n setDefaltMW(id: number | undefined, mw: number | undefined): Observable;\r\n getAllStreamMW(plant: Plant | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable;\r\n getAllStreams(): Observable;\r\n getDailyReportStreamDetails(dt: Date | undefined, streamId: number | undefined): Observable;\r\n monthlyReport2(dt: Date | undefined): Observable;\r\n getKTLOperatorInput(dt: Date | null | undefined, unitName: UnitList | null | undefined, train: TrainList | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable;\r\n createKTLOperatorInput(createKTLOperatorDTO: CreateKTLOperatorDTO): Observable;\r\n editKTLOperatorInput(ktlOperatorDTOInputEditDTO: KTLOperatorDTO): Observable;\r\n deleteKTLOperatorInput(id: number | undefined): Observable;\r\n getSGPOperatorInput(dt: Date | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable;\r\n createSGPOperatorInput(createSGPOperatorDTO: SGPOperatorDTO): Observable;\r\n deleteSGPOperatorInput(id: number | undefined): Observable;\r\n getDiagnosticianScreenHistory(startTime: Date | undefined, facility: KTLTrains | undefined, unitType: UnitList | undefined, valveName: string | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable;\r\n getDiagnosticianScreenInputs(startTime: Date | undefined, facility: KTLTrains | undefined, unitType: UnitList | undefined): Observable;\r\n createUpdateDiagnosticianScreenInput(createDiagnosticianInputDTO: CreateDiagnosticianInputDTO[]): Observable;\r\n getDiagnosticianRelation(): Observable;\r\n getLeakageScreenHistory(dateTime: Date | undefined, facility: KTLTrains | undefined, unit: UnitList | null | undefined): Observable;\r\n getLeakageScreenInput(startTime: Date | undefined, facility: KTLTrains | undefined, unitType: UnitList | null | undefined): Observable;\r\n createUpdateLeakageInput(leakageScreenDTOs: LeakageScreenDTO[]): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class KTLSGPClient implements IKTLSGPClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n refreshStreams(plant: Plant | undefined, isDelta: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/RefreshStreams?\";\r\n if (plant === null)\r\n throw new Error(\"The parameter 'plant' cannot be null.\");\r\n else if (plant !== undefined)\r\n url_ += \"plant=\" + encodeURIComponent(\"\" + plant) + \"&\";\r\n if (isDelta === null)\r\n throw new Error(\"The parameter 'isDelta' cannot be null.\");\r\n else if (isDelta !== undefined)\r\n url_ += \"isDelta=\" + encodeURIComponent(\"\" + isDelta) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRefreshStreams(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRefreshStreams(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRefreshStreams(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n compareStreamsAFandSQL(isDelta: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/CompareStreamsAFandSQL?\";\r\n if (isDelta === null)\r\n throw new Error(\"The parameter 'isDelta' cannot be null.\");\r\n else if (isDelta !== undefined)\r\n url_ += \"isDelta=\" + encodeURIComponent(\"\" + isDelta) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCompareStreamsAFandSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCompareStreamsAFandSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCompareStreamsAFandSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setLeaksAndParents(plant: Plant | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/SetLeaksAndParents?\";\r\n if (plant === null)\r\n throw new Error(\"The parameter 'plant' cannot be null.\");\r\n else if (plant !== undefined)\r\n url_ += \"plant=\" + encodeURIComponent(\"\" + plant) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetLeaksAndParents(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetLeaksAndParents(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetLeaksAndParents(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n confirmDailyReport(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/ConfirmDailyReport?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConfirmDailyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConfirmDailyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processConfirmDailyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n confirmMonthlyReport(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/ConfirmMonthlyReport?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConfirmMonthlyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConfirmMonthlyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processConfirmMonthlyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n approveByChef(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/Approve?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processApproveByChef(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processApproveByChef(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processApproveByChef(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n generateReports(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GenerateReports?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGenerateReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGenerateReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGenerateReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n switchStream(id: number | undefined, startTime: Date | undefined, switchFrom: string | undefined, switchTo: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/SwitchStream?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (switchFrom === null)\r\n throw new Error(\"The parameter 'switchFrom' cannot be null.\");\r\n else if (switchFrom !== undefined)\r\n url_ += \"SwitchFrom=\" + encodeURIComponent(\"\" + switchFrom) + \"&\";\r\n if (switchTo === null)\r\n throw new Error(\"The parameter 'switchTo' cannot be null.\");\r\n else if (switchTo !== undefined)\r\n url_ += \"SwitchTo=\" + encodeURIComponent(\"\" + switchTo) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSwitchStream(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSwitchStream(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSwitchStream(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n batchSwitchStream(dto: FlareSwitcherDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/BatchSwitchStream\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(dto);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processBatchSwitchStream(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processBatchSwitchStream(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processBatchSwitchStream(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n batchSwitchStreamSGP(dto: SGPFlareSwitcherDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/BatchSwitchStreamSGP\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(dto);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processBatchSwitchStreamSGP(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processBatchSwitchStreamSGP(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processBatchSwitchStreamSGP(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getSGPFlareSwitcherHistory(startTime: Date | null | undefined, endTime: Date | null | undefined, isSwitchable: boolean | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetSGPFlareSwitcherHistory?\";\r\n if (startTime !== undefined && startTime !== null)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (endTime !== undefined && endTime !== null)\r\n url_ += \"endTime=\" + encodeURIComponent(endTime ? \"\" + endTime.toISOString() : \"\") + \"&\";\r\n if (isSwitchable === null)\r\n throw new Error(\"The parameter 'isSwitchable' cannot be null.\");\r\n else if (isSwitchable !== undefined)\r\n url_ += \"isSwitchable=\" + encodeURIComponent(\"\" + isSwitchable) + \"&\";\r\n if (pageNumber !== undefined && pageNumber !== null)\r\n url_ += \"pageNumber=\" + encodeURIComponent(\"\" + pageNumber) + \"&\";\r\n if (pageSize !== undefined && pageSize !== null)\r\n url_ += \"pageSize=\" + encodeURIComponent(\"\" + pageSize) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSGPFlareSwitcherHistory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSGPFlareSwitcherHistory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSGPFlareSwitcherHistory(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedListOfGetFlareSwitcherDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getAllNonSwitchableSGPStreams(): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetAllNonSwitchableSGPStreams\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllNonSwitchableSGPStreams(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllNonSwitchableSGPStreams(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllNonSwitchableSGPStreams(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(GetFlareSwitcherDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n facilityAndUnitMapping(): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/FacilityAndUnitMapping\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processFacilityAndUnitMapping(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processFacilityAndUnitMapping(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processFacilityAndUnitMapping(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(GetFacilityAndUnitMappingDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n switchedStreams(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/SwitchedOnStreams?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSwitchedStreams(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSwitchedStreams(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSwitchedStreams(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getFlareSwitcherHistory(startTime: Date | undefined, endTime: Date | undefined, facility: KTLTrains | null | undefined, unit: UnitList | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetFlareSwitcherHistory?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (endTime === null)\r\n throw new Error(\"The parameter 'endTime' cannot be null.\");\r\n else if (endTime !== undefined)\r\n url_ += \"endTime=\" + encodeURIComponent(endTime ? \"\" + endTime.toISOString() : \"\") + \"&\";\r\n if (facility !== undefined && facility !== null)\r\n url_ += \"facility=\" + encodeURIComponent(\"\" + facility) + \"&\";\r\n if (unit !== undefined && unit !== null)\r\n url_ += \"unit=\" + encodeURIComponent(\"\" + unit) + \"&\";\r\n if (pageNumber !== undefined && pageNumber !== null)\r\n url_ += \"pageNumber=\" + encodeURIComponent(\"\" + pageNumber) + \"&\";\r\n if (pageSize !== undefined && pageSize !== null)\r\n url_ += \"pageSize=\" + encodeURIComponent(\"\" + pageSize) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFlareSwitcherHistory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFlareSwitcherHistory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetFlareSwitcherHistory(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedListOfGetFlareSwitcherDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n bypass(id: number | undefined, bypass: string | undefined, startTime: Date | undefined, endTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/Bypass?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (bypass === null)\r\n throw new Error(\"The parameter 'bypass' cannot be null.\");\r\n else if (bypass !== undefined)\r\n url_ += \"bypass=\" + encodeURIComponent(\"\" + bypass) + \"&\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (endTime === null)\r\n throw new Error(\"The parameter 'endTime' cannot be null.\");\r\n else if (endTime !== undefined)\r\n url_ += \"endTime=\" + encodeURIComponent(endTime ? \"\" + endTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processBypass(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processBypass(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processBypass(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addManualRecord(record: InputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/AddManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(record);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editManualRecord(record: InputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/EditManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(record);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n commentsDailyReport(record: InputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/CommentsDailyReport\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(record);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCommentsDailyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCommentsDailyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCommentsDailyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteManualRecord(id: number): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/DeleteManualRecord/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getDailyReport(dt: Date | undefined, flare: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/DailyReport?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (flare === null)\r\n throw new Error(\"The parameter 'flare' cannot be null.\");\r\n else if (flare !== undefined)\r\n url_ += \"flare=\" + encodeURIComponent(\"\" + flare) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDailyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDailyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDailyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getF205CalcDetails(starttime: Date | undefined, endtime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/F205KTL2Details?\";\r\n if (starttime === null)\r\n throw new Error(\"The parameter 'starttime' cannot be null.\");\r\n else if (starttime !== undefined)\r\n url_ += \"starttime=\" + encodeURIComponent(starttime ? \"\" + starttime.toISOString() : \"\") + \"&\";\r\n if (endtime === null)\r\n throw new Error(\"The parameter 'endtime' cannot be null.\");\r\n else if (endtime !== undefined)\r\n url_ += \"endtime=\" + encodeURIComponent(endtime ? \"\" + endtime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetF205CalcDetails(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetF205CalcDetails(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetF205CalcDetails(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = F205TotalDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getReportDaily(dt: Date | undefined, flare: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/DailyReporttV2?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (flare === null)\r\n throw new Error(\"The parameter 'flare' cannot be null.\");\r\n else if (flare !== undefined)\r\n url_ += \"flare=\" + encodeURIComponent(\"\" + flare) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetReportDaily(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetReportDaily(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetReportDaily(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = DailyReportDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getInputHistory(starttime: Date | null | undefined, endttime: Date | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined, plant: Plant | undefined, flareName: string | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/InputHistory?\";\r\n if (starttime !== undefined && starttime !== null)\r\n url_ += \"starttime=\" + encodeURIComponent(starttime ? \"\" + starttime.toISOString() : \"\") + \"&\";\r\n if (endttime !== undefined && endttime !== null)\r\n url_ += \"endttime=\" + encodeURIComponent(endttime ? \"\" + endttime.toISOString() : \"\") + \"&\";\r\n if (pageNumber !== undefined && pageNumber !== null)\r\n url_ += \"pageNumber=\" + encodeURIComponent(\"\" + pageNumber) + \"&\";\r\n if (pageSize !== undefined && pageSize !== null)\r\n url_ += \"pageSize=\" + encodeURIComponent(\"\" + pageSize) + \"&\";\r\n if (plant === null)\r\n throw new Error(\"The parameter 'plant' cannot be null.\");\r\n else if (plant !== undefined)\r\n url_ += \"plant=\" + encodeURIComponent(\"\" + plant) + \"&\";\r\n if (flareName !== undefined && flareName !== null)\r\n url_ += \"FlareName=\" + encodeURIComponent(\"\" + flareName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetInputHistory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetInputHistory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetInputHistory(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedListOfInputHistoryDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getChemicalCompoundsID(): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/ChemicalCompoundsID\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetChemicalCompoundsID(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetChemicalCompoundsID(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetChemicalCompoundsID(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ChemicalCompoundsDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getChemicalCompoundsEquipment(unitName: UnitList | null | undefined, ktlTrain: TrainList | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/ChemicalCompoundsEquipment?\";\r\n if (unitName !== undefined && unitName !== null)\r\n url_ += \"unitName=\" + encodeURIComponent(\"\" + unitName) + \"&\";\r\n if (ktlTrain !== undefined && ktlTrain !== null)\r\n url_ += \"ktlTrain=\" + encodeURIComponent(\"\" + ktlTrain) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetChemicalCompoundsEquipment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetChemicalCompoundsEquipment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetChemicalCompoundsEquipment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ChemicalCompoundsEquipmentDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addChemicalCompoundsEquipment(dto: ChemicalCompoundsEquipmentDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/ChemicalCompoundsEquipment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(dto);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddChemicalCompoundsEquipment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddChemicalCompoundsEquipment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddChemicalCompoundsEquipment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ValueTupleOfIntegerAndString.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editChemicalCompoundsEquipment(dto: ChemicalCompoundsEquipmentDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/ChemicalCompoundsEquipment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(dto);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"patch\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditChemicalCompoundsEquipment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditChemicalCompoundsEquipment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditChemicalCompoundsEquipment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ValueTupleOfIntegerAndString.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteChemicalCompoundsEquipment(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/ChemicalCompoundsEquipment?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteChemicalCompoundsEquipment(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteChemicalCompoundsEquipment(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteChemicalCompoundsEquipment(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ValueTupleOfIntegerAndString.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getMonthlyReport(dt: Date | undefined, flare: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/MonthlyReport?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (flare === null)\r\n throw new Error(\"The parameter 'flare' cannot be null.\");\r\n else if (flare !== undefined)\r\n url_ += \"flare=\" + encodeURIComponent(\"\" + flare) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetMonthlyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetMonthlyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetMonthlyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getGasBalance(dt: Date | undefined, flare: string | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GasBalance?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (flare === null)\r\n throw new Error(\"The parameter 'flare' cannot be null.\");\r\n else if (flare !== undefined)\r\n url_ += \"flare=\" + encodeURIComponent(\"\" + flare) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetGasBalance(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetGasBalance(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetGasBalance(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = KTLSGPGasBalanceDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getChemicalCompounds(timeStamp: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/LIMS?\";\r\n if (timeStamp === null)\r\n throw new Error(\"The parameter 'timeStamp' cannot be null.\");\r\n else if (timeStamp !== undefined)\r\n url_ += \"TimeStamp=\" + encodeURIComponent(timeStamp ? \"\" + timeStamp.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetChemicalCompounds(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetChemicalCompounds(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetChemicalCompounds(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getGUR(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GUR?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"StartTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetGUR(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetGUR(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetGUR(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetGURDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n postGUR(input: GURInputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GUR\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(input);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processPostGUR(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processPostGUR(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processPostGUR(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addKTLSGPPermitTargetInput(kTLSGPPermitTargetInputDTO: KTLSGPPermitTargetInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/AddKTLSGPPermitTargetInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(kTLSGPPermitTargetInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddKTLSGPPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddKTLSGPPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddKTLSGPPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editKTLSGPPermitTargetInput(permitTargetInputEditDTO: PermitTargetInputEditDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/EditKTLSGPPermitTargetInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(permitTargetInputEditDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditKTLSGPPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditKTLSGPPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditKTLSGPPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteAddKTLSGPPermitTargetInput(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/DeleteAddKTLSGPPermitTargetInput?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteAddKTLSGPPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteAddKTLSGPPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteAddKTLSGPPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n monthlyReport(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetSGPMonthlyReport?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMonthlyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMonthlyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMonthlyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n setDefaltMW(id: number | undefined, mw: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/SetDefaultMW?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n if (mw === null)\r\n throw new Error(\"The parameter 'mw' cannot be null.\");\r\n else if (mw !== undefined)\r\n url_ += \"mw=\" + encodeURIComponent(\"\" + mw) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processSetDefaltMW(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processSetDefaltMW(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processSetDefaltMW(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getAllStreamMW(plant: Plant | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetAllStreamMW?\";\r\n if (plant !== undefined && plant !== null)\r\n url_ += \"plant=\" + encodeURIComponent(\"\" + plant) + \"&\";\r\n if (pageNumber !== undefined && pageNumber !== null)\r\n url_ += \"pageNumber=\" + encodeURIComponent(\"\" + pageNumber) + \"&\";\r\n if (pageSize !== undefined && pageSize !== null)\r\n url_ += \"pageSize=\" + encodeURIComponent(\"\" + pageSize) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllStreamMW(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllStreamMW(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllStreamMW(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedListOfKTLSGPStreamMWDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getAllStreams(): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetAllStreams\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetAllStreams(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetAllStreams(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetAllStreams(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(KTLSGPStreamDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getDailyReportStreamDetails(dt: Date | undefined, streamId: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/DailyReportStreamDetails?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (streamId === null)\r\n throw new Error(\"The parameter 'streamId' cannot be null.\");\r\n else if (streamId !== undefined)\r\n url_ += \"streamId=\" + encodeURIComponent(\"\" + streamId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDailyReportStreamDetails(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDailyReportStreamDetails(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDailyReportStreamDetails(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = CalculatedStreamInputRecordDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n monthlyReport2(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetKTLMonthlyReport?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMonthlyReport2(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMonthlyReport2(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMonthlyReport2(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getKTLOperatorInput(dt: Date | null | undefined, unitName: UnitList | null | undefined, train: TrainList | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetKTLOperatorInput?\";\r\n if (dt !== undefined && dt !== null)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (unitName !== undefined && unitName !== null)\r\n url_ += \"unitName=\" + encodeURIComponent(\"\" + unitName) + \"&\";\r\n if (train !== undefined && train !== null)\r\n url_ += \"train=\" + encodeURIComponent(\"\" + train) + \"&\";\r\n if (pageNumber !== undefined && pageNumber !== null)\r\n url_ += \"pageNumber=\" + encodeURIComponent(\"\" + pageNumber) + \"&\";\r\n if (pageSize !== undefined && pageSize !== null)\r\n url_ += \"pageSize=\" + encodeURIComponent(\"\" + pageSize) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetKTLOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetKTLOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetKTLOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedListOfGetKTLOperatorDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createKTLOperatorInput(createKTLOperatorDTO: CreateKTLOperatorDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/CreateKTLOperatorInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(createKTLOperatorDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateKTLOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateKTLOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateKTLOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editKTLOperatorInput(ktlOperatorDTOInputEditDTO: KTLOperatorDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/EditKTLOperatorInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(ktlOperatorDTOInputEditDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditKTLOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditKTLOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditKTLOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteKTLOperatorInput(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/DeleteKTLOperatorInput?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteKTLOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteKTLOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteKTLOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getSGPOperatorInput(dt: Date | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetSGPOperatorInput?\";\r\n if (dt !== undefined && dt !== null)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (pageNumber !== undefined && pageNumber !== null)\r\n url_ += \"pageNumber=\" + encodeURIComponent(\"\" + pageNumber) + \"&\";\r\n if (pageSize !== undefined && pageSize !== null)\r\n url_ += \"pageSize=\" + encodeURIComponent(\"\" + pageSize) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSGPOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSGPOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSGPOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedListOfGetSGPOperatorDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createSGPOperatorInput(createSGPOperatorDTO: SGPOperatorDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/CreateSGPOperatorInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(createSGPOperatorDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateSGPOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateSGPOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateSGPOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteSGPOperatorInput(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/DeleteSGPOperatorInput?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteSGPOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteSGPOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteSGPOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getDiagnosticianScreenHistory(startTime: Date | undefined, facility: KTLTrains | undefined, unitType: UnitList | undefined, valveName: string | null | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetDiagnosticianScreenHistory?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (facility === null)\r\n throw new Error(\"The parameter 'facility' cannot be null.\");\r\n else if (facility !== undefined)\r\n url_ += \"facility=\" + encodeURIComponent(\"\" + facility) + \"&\";\r\n if (unitType === null)\r\n throw new Error(\"The parameter 'unitType' cannot be null.\");\r\n else if (unitType !== undefined)\r\n url_ += \"unitType=\" + encodeURIComponent(\"\" + unitType) + \"&\";\r\n if (valveName !== undefined && valveName !== null)\r\n url_ += \"valveName=\" + encodeURIComponent(\"\" + valveName) + \"&\";\r\n if (pageNumber !== undefined && pageNumber !== null)\r\n url_ += \"pageNumber=\" + encodeURIComponent(\"\" + pageNumber) + \"&\";\r\n if (pageSize !== undefined && pageSize !== null)\r\n url_ += \"pageSize=\" + encodeURIComponent(\"\" + pageSize) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDiagnosticianScreenHistory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDiagnosticianScreenHistory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDiagnosticianScreenHistory(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedListOfGetDiagnosticianScreenHistoryDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getDiagnosticianScreenInputs(startTime: Date | undefined, facility: KTLTrains | undefined, unitType: UnitList | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetDiagnosticianScreenInputs?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (facility === null)\r\n throw new Error(\"The parameter 'facility' cannot be null.\");\r\n else if (facility !== undefined)\r\n url_ += \"facility=\" + encodeURIComponent(\"\" + facility) + \"&\";\r\n if (unitType === null)\r\n throw new Error(\"The parameter 'unitType' cannot be null.\");\r\n else if (unitType !== undefined)\r\n url_ += \"unitType=\" + encodeURIComponent(\"\" + unitType) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDiagnosticianScreenInputs(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDiagnosticianScreenInputs(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDiagnosticianScreenInputs(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(GetDiagnosticianScreenInputDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createUpdateDiagnosticianScreenInput(createDiagnosticianInputDTO: CreateDiagnosticianInputDTO[]): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/CreateUpdateDiagnosticianScreenInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(createDiagnosticianInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateUpdateDiagnosticianScreenInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateUpdateDiagnosticianScreenInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateUpdateDiagnosticianScreenInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getDiagnosticianRelation(): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetDiagnosticianRelation\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDiagnosticianRelation(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDiagnosticianRelation(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDiagnosticianRelation(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(DiagnosticianRelationFacilityDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getLeakageScreenHistory(dateTime: Date | undefined, facility: KTLTrains | undefined, unit: UnitList | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetLeakageScreenHistory?\";\r\n if (dateTime === null)\r\n throw new Error(\"The parameter 'dateTime' cannot be null.\");\r\n else if (dateTime !== undefined)\r\n url_ += \"dateTime=\" + encodeURIComponent(dateTime ? \"\" + dateTime.toISOString() : \"\") + \"&\";\r\n if (facility === null)\r\n throw new Error(\"The parameter 'facility' cannot be null.\");\r\n else if (facility !== undefined)\r\n url_ += \"facility=\" + encodeURIComponent(\"\" + facility) + \"&\";\r\n if (unit !== undefined && unit !== null)\r\n url_ += \"unit=\" + encodeURIComponent(\"\" + unit) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLeakageScreenHistory(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLeakageScreenHistory(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLeakageScreenHistory(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(LeakageScreenDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getLeakageScreenInput(startTime: Date | undefined, facility: KTLTrains | undefined, unitType: UnitList | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/GetLeakageScreenInput?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (facility === null)\r\n throw new Error(\"The parameter 'facility' cannot be null.\");\r\n else if (facility !== undefined)\r\n url_ += \"facility=\" + encodeURIComponent(\"\" + facility) + \"&\";\r\n if (unitType !== undefined && unitType !== null)\r\n url_ += \"unitType=\" + encodeURIComponent(\"\" + unitType) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLeakageScreenInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLeakageScreenInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLeakageScreenInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(LeakageScreenDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n createUpdateLeakageInput(leakageScreenDTOs: LeakageScreenDTO[]): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGP/CreateUpdateLeakageInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(leakageScreenDTOs);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processCreateUpdateLeakageInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processCreateUpdateLeakageInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processCreateUpdateLeakageInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface IKTLSGPECClient {\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class KTLSGPECClient implements IKTLSGPECClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/KTLSGPEC/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface ILPGClient {\r\n monthlyOperatorRecords(startTime: Date | undefined): Observable;\r\n addLPGOperatorInput(lPGOperatorInputDTO: LPGOperatorInputDTO): Observable;\r\n editLPGOperatorInput(lPGOperatorInputEditDTO: LPGOperatorInputDTO): Observable;\r\n deleteLPGOperatorInput(id: number | undefined): Observable;\r\n monthlyPERecords(startTime: Date | undefined): Observable;\r\n addPEMonthlyInput(body: LPGMonthlyInputRecordDTO): Observable;\r\n addLPGPEInput(lPGPEInputDTO: LPGPEInputDTO): Observable;\r\n addLPGFlowmeterCalculationInput(lPGPEInputDTO: LPGPEInputDTO): Observable;\r\n getCalculation(startTime: Date | undefined, endTime: Date | undefined, type: LPGFlowmeterCalculateType | undefined, avg: number | undefined, volume: number | undefined, mw: LPGStreamCCType | undefined): Observable;\r\n editLPGPEInput(lPGPEInputEditDTO: LPGPEInputDTO): Observable;\r\n deleteLPGPEInput(id: number | undefined): Observable;\r\n /**\r\n * Consumes StartTime as the date for which Approve must be done.\r\n * @param startTime (optional) \r\n */\r\n approveByChef(startTime: Date | undefined): Observable;\r\n monthlyAnalystRecords(startTime: Date | undefined): Observable;\r\n addLPGAnalystInput(lPGAnalystInputDTO: LPGAnalystInputDTO): Observable;\r\n editLPGAnalystInput(lPGAnalystInputEditDTO: LPGAnalystInputDTO): Observable;\r\n deleteLPGAnalystInput(id: number | undefined): Observable;\r\n dataForAnalyst(startTime: Date | undefined): Observable;\r\n /**\r\n * Consumes StartTime as the date for which Approve action needs to be found.\r\n * @param startTime (optional) \r\n */\r\n latestApprove(startTime: Date | undefined): Observable;\r\n /**\r\n * returns json object with array of timestamp + value in each index.Timestamps can be sent in any timezone, it will convert to local (+5 UTC) under the hood\r\n * @param starttime (optional) \r\n * @param endtime (optional) \r\n * @param graphType (optional) \r\n */\r\n getFlowmeterGraphs(starttime: Date | undefined, endtime: Date | undefined, graphType: LPGFlowmeterGraphTypes | undefined): Observable;\r\n /**\r\n * Returns DTO of type LPGFuelGasFlaringReportDTO which contains timestamp and two objects of Monthly gas flaring report table and fuel gas flaring. Dt - represents any date inside the month, will return values starting from 1st day of the month up until EoM or Today - 1d\r\n * @param dt (optional) \r\n */\r\n getFuelGasFlaring(dt: Date | undefined): Observable;\r\n getFuelGasFlaringDefault(dt: Date | undefined): Observable;\r\n getChemicalCompositions(startTime: Date | undefined): Observable;\r\n exportFlaringReports(dt: Date | undefined): Observable;\r\n /**\r\n * StartTime is any date inside of the month that is needed to calculate.\r\n * @param startTime (optional) \r\n */\r\n hardRefresh(startTime: Date | undefined): Observable;\r\n /**\r\n * Consumes 1 Datetime - any date inside of the year. Will produce all rows for whole year. For Analyst and Bullets entry tables need to specify correct month in dt.\r\n * @param dt (optional) \r\n */\r\n getLPGData(dt: Date | undefined): Observable;\r\n getFlaringReport(startTime: Date | undefined): Observable;\r\n getTargetPermitInputs(year: number | undefined): Observable;\r\n addTargetPermitInput(body: LPGTargetPermitInputDTO): Observable;\r\n getFlowmeterCalculationData(starttime: Date | undefined, endtime: Date | undefined, days: number | undefined): Observable;\r\n exportAnalystReports(dt: Date | undefined): Observable;\r\n exportLPGDataReports(dt: Date | undefined): Observable;\r\n exportFuelGasFlaringReports(dt: Date | undefined): Observable;\r\n exportChemicalCompositionReports(dt: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LPGClient implements ILPGClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n monthlyOperatorRecords(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/MonthlyOperatorRecords?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMonthlyOperatorRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMonthlyOperatorRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMonthlyOperatorRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(LPGOperatorInputDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addLPGOperatorInput(lPGOperatorInputDTO: LPGOperatorInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/AddLPGOperatorInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(lPGOperatorInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddLPGOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddLPGOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddLPGOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editLPGOperatorInput(lPGOperatorInputEditDTO: LPGOperatorInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/EditLPGOperatorInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(lPGOperatorInputEditDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditLPGOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditLPGOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditLPGOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteLPGOperatorInput(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/DeleteLPGOperatorInput?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteLPGOperatorInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteLPGOperatorInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteLPGOperatorInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n monthlyPERecords(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/MonthlyPERecords?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMonthlyPERecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMonthlyPERecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMonthlyPERecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(LPGPEInputDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addPEMonthlyInput(body: LPGMonthlyInputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/AddLPGPEMonthlyInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddPEMonthlyInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddPEMonthlyInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddPEMonthlyInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addLPGPEInput(lPGPEInputDTO: LPGPEInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/AddLPGPEInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(lPGPEInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddLPGPEInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddLPGPEInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddLPGPEInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addLPGFlowmeterCalculationInput(lPGPEInputDTO: LPGPEInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/AddLPGFlowmeterCalculationInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(lPGPEInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddLPGFlowmeterCalculationInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddLPGFlowmeterCalculationInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddLPGFlowmeterCalculationInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getCalculation(startTime: Date | undefined, endTime: Date | undefined, type: LPGFlowmeterCalculateType | undefined, avg: number | undefined, volume: number | undefined, mw: LPGStreamCCType | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/GetCalculation?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (endTime === null)\r\n throw new Error(\"The parameter 'endTime' cannot be null.\");\r\n else if (endTime !== undefined)\r\n url_ += \"endTime=\" + encodeURIComponent(endTime ? \"\" + endTime.toISOString() : \"\") + \"&\";\r\n if (type === null)\r\n throw new Error(\"The parameter 'type' cannot be null.\");\r\n else if (type !== undefined)\r\n url_ += \"type=\" + encodeURIComponent(\"\" + type) + \"&\";\r\n if (avg === null)\r\n throw new Error(\"The parameter 'avg' cannot be null.\");\r\n else if (avg !== undefined)\r\n url_ += \"avg=\" + encodeURIComponent(\"\" + avg) + \"&\";\r\n if (volume === null)\r\n throw new Error(\"The parameter 'volume' cannot be null.\");\r\n else if (volume !== undefined)\r\n url_ += \"volume=\" + encodeURIComponent(\"\" + volume) + \"&\";\r\n if (mw === null)\r\n throw new Error(\"The parameter 'mw' cannot be null.\");\r\n else if (mw !== undefined)\r\n url_ += \"mw=\" + encodeURIComponent(\"\" + mw) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCalculation(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCalculation(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCalculation(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editLPGPEInput(lPGPEInputEditDTO: LPGPEInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/EditLPGPEInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(lPGPEInputEditDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditLPGPEInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditLPGPEInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditLPGPEInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteLPGPEInput(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/DeleteLPGPEInput?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteLPGPEInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteLPGPEInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteLPGPEInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * Consumes StartTime as the date for which Approve must be done.\r\n * @param startTime (optional) \r\n */\r\n approveByChef(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/Approve?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processApproveByChef(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processApproveByChef(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processApproveByChef(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n monthlyAnalystRecords(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/MonthlyAnalystRecords?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMonthlyAnalystRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMonthlyAnalystRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMonthlyAnalystRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(LPGAnalystInputDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addLPGAnalystInput(lPGAnalystInputDTO: LPGAnalystInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/AddLPGAnalystInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(lPGAnalystInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddLPGAnalystInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddLPGAnalystInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddLPGAnalystInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n editLPGAnalystInput(lPGAnalystInputEditDTO: LPGAnalystInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/EditLPGAnalystInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(lPGAnalystInputEditDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processEditLPGAnalystInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processEditLPGAnalystInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processEditLPGAnalystInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteLPGAnalystInput(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/DeleteLPGAnalystInput?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteLPGAnalystInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteLPGAnalystInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteLPGAnalystInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n dataForAnalyst(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/LPGDataForAnalyst?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDataForAnalyst(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDataForAnalyst(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDataForAnalyst(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(LPGDataForAnalystDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * Consumes StartTime as the date for which Approve action needs to be found.\r\n * @param startTime (optional) \r\n */\r\n latestApprove(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/GetLatestApprove?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processLatestApprove(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processLatestApprove(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processLatestApprove(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * returns json object with array of timestamp + value in each index.Timestamps can be sent in any timezone, it will convert to local (+5 UTC) under the hood\r\n * @param starttime (optional) \r\n * @param endtime (optional) \r\n * @param graphType (optional) \r\n */\r\n getFlowmeterGraphs(starttime: Date | undefined, endtime: Date | undefined, graphType: LPGFlowmeterGraphTypes | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/Flowmeter?\";\r\n if (starttime === null)\r\n throw new Error(\"The parameter 'starttime' cannot be null.\");\r\n else if (starttime !== undefined)\r\n url_ += \"starttime=\" + encodeURIComponent(starttime ? \"\" + starttime.toISOString() : \"\") + \"&\";\r\n if (endtime === null)\r\n throw new Error(\"The parameter 'endtime' cannot be null.\");\r\n else if (endtime !== undefined)\r\n url_ += \"endtime=\" + encodeURIComponent(endtime ? \"\" + endtime.toISOString() : \"\") + \"&\";\r\n if (graphType === null)\r\n throw new Error(\"The parameter 'graphType' cannot be null.\");\r\n else if (graphType !== undefined)\r\n url_ += \"graphType=\" + encodeURIComponent(\"\" + graphType) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFlowmeterGraphs(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFlowmeterGraphs(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetFlowmeterGraphs(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = LPGFlowmeterGraphDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * Returns DTO of type LPGFuelGasFlaringReportDTO which contains timestamp and two objects of Monthly gas flaring report table and fuel gas flaring. Dt - represents any date inside the month, will return values starting from 1st day of the month up until EoM or Today - 1d\r\n * @param dt (optional) \r\n */\r\n getFuelGasFlaring(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/FuelGasFlaring?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFuelGasFlaring(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFuelGasFlaring(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetFuelGasFlaring(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = LPGFuelGasFlaringReportDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getFuelGasFlaringDefault(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFuelGasFlaringDefault(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFuelGasFlaringDefault(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetFuelGasFlaringDefault(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = LPGFuelGasFlaringDefaultDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getChemicalCompositions(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/GetChemicalCompositions?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetChemicalCompositions(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetChemicalCompositions(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetChemicalCompositions(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ChemicalCompoundRecord.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportFlaringReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/ExportFlaringReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportFlaringReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportFlaringReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportFlaringReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * StartTime is any date inside of the month that is needed to calculate.\r\n * @param startTime (optional) \r\n */\r\n hardRefresh(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefresh(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefresh(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefresh(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * Consumes 1 Datetime - any date inside of the year. Will produce all rows for whole year. For Analyst and Bullets entry tables need to specify correct month in dt.\r\n * @param dt (optional) \r\n */\r\n getLPGData(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/LPGData?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLPGData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLPGData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLPGData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = LPGDataDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getFlaringReport(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/GetFlaringReport?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFlaringReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFlaringReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetFlaringReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(LPGFlaringReportDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getTargetPermitInputs(year: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/GetLPGTargetPermit?\";\r\n if (year === null)\r\n throw new Error(\"The parameter 'year' cannot be null.\");\r\n else if (year !== undefined)\r\n url_ += \"year=\" + encodeURIComponent(\"\" + year) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetTargetPermitInputs(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetTargetPermitInputs(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetTargetPermitInputs(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(LPGTargetPermitInputDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addTargetPermitInput(body: LPGTargetPermitInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/AddLPGTargetPermitInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddTargetPermitInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddTargetPermitInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddTargetPermitInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getFlowmeterCalculationData(starttime: Date | undefined, endtime: Date | undefined, days: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/GetLPGFlowmeterCalculationData?\";\r\n if (starttime === null)\r\n throw new Error(\"The parameter 'starttime' cannot be null.\");\r\n else if (starttime !== undefined)\r\n url_ += \"starttime=\" + encodeURIComponent(starttime ? \"\" + starttime.toISOString() : \"\") + \"&\";\r\n if (endtime === null)\r\n throw new Error(\"The parameter 'endtime' cannot be null.\");\r\n else if (endtime !== undefined)\r\n url_ += \"endtime=\" + encodeURIComponent(endtime ? \"\" + endtime.toISOString() : \"\") + \"&\";\r\n if (days === null)\r\n throw new Error(\"The parameter 'days' cannot be null.\");\r\n else if (days !== undefined)\r\n url_ += \"days=\" + encodeURIComponent(\"\" + days) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFlowmeterCalculationData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFlowmeterCalculationData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetFlowmeterCalculationData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = LPGFlowmeterGraphDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportAnalystReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/ExportAnalystReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportAnalystReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportAnalystReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportAnalystReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportLPGDataReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/ExportLPGDataReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportLPGDataReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportLPGDataReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportLPGDataReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportFuelGasFlaringReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/ExportFuelGasFlaringReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportFuelGasFlaringReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportFuelGasFlaringReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportFuelGasFlaringReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportChemicalCompositionReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/LPG/ExportChemicalCompositionReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportChemicalCompositionReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportChemicalCompositionReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportChemicalCompositionReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface ISGIClient {\r\n refreshStreams(isDelta: boolean | undefined): Observable;\r\n addManualRecord(sGIInputRecordDTO: SGIInputRecordDTO): Observable;\r\n addEditOverride(sGIInputRecordDTO: SGIEditOverrideDTO): Observable;\r\n deleteEditOverride(sGIInputRecordDTO: SGIEditOverrideDTO): Observable;\r\n addBlowdownRecord(sGIInputRecordDTO: SGIBlowdownInputRecordDTO): Observable;\r\n getBlowdownRecords(from: Date | undefined, to: Date | undefined): Observable;\r\n deleteBlowdownRecord(id: number | undefined): Observable;\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n eCHardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n getDailyReport(startTime: Date | undefined): Observable;\r\n confirmDailyReport(startTime: Date | undefined): Observable;\r\n approve(startTime: Date | undefined): Observable;\r\n getLatestApprove(startTime: Date | undefined): Observable;\r\n addSGIPermitTargetInput(sGIPermitTargetInputDTO: SGIPermitTargetInputDTO): Observable;\r\n getSGIPermitTargetInput(year: number | undefined): Observable;\r\n getChemicalCompounds(startTime: Date | undefined): Observable;\r\n monthlyReport(dt: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SGIClient implements ISGIClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n refreshStreams(isDelta: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/RefreshStreams?\";\r\n if (isDelta === null)\r\n throw new Error(\"The parameter 'isDelta' cannot be null.\");\r\n else if (isDelta !== undefined)\r\n url_ += \"isDelta=\" + encodeURIComponent(\"\" + isDelta) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRefreshStreams(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRefreshStreams(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRefreshStreams(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addManualRecord(sGIInputRecordDTO: SGIInputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/ManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(sGIInputRecordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addEditOverride(sGIInputRecordDTO: SGIEditOverrideDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/EditOverride\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(sGIInputRecordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddEditOverride(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddEditOverride(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddEditOverride(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteEditOverride(sGIInputRecordDTO: SGIEditOverrideDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/EditOverride\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(sGIInputRecordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteEditOverride(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteEditOverride(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteEditOverride(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addBlowdownRecord(sGIInputRecordDTO: SGIBlowdownInputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/BlowdownRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(sGIInputRecordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddBlowdownRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddBlowdownRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddBlowdownRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getBlowdownRecords(from: Date | undefined, to: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/BlowdownRecord?\";\r\n if (from === null)\r\n throw new Error(\"The parameter 'from' cannot be null.\");\r\n else if (from !== undefined)\r\n url_ += \"from=\" + encodeURIComponent(from ? \"\" + from.toISOString() : \"\") + \"&\";\r\n if (to === null)\r\n throw new Error(\"The parameter 'to' cannot be null.\");\r\n else if (to !== undefined)\r\n url_ += \"to=\" + encodeURIComponent(to ? \"\" + to.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetBlowdownRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetBlowdownRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetBlowdownRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SGIBlowdownInputRecordDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteBlowdownRecord(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/BlowdownRecord?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteBlowdownRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteBlowdownRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteBlowdownRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n eCHardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/ECHardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processECHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processECHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processECHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getDailyReport(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/GetDailyReport?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDailyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDailyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDailyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n confirmDailyReport(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/ConfirmDailyReport?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processConfirmDailyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processConfirmDailyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processConfirmDailyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n approve(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/Approve?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"put\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processApprove(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processApprove(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processApprove(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getLatestApprove(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/ApproveTimestamp?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetLatestApprove(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetLatestApprove(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetLatestApprove(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addSGIPermitTargetInput(sGIPermitTargetInputDTO: SGIPermitTargetInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/AddSGIPermitTargetInput\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(sGIPermitTargetInputDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddSGIPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddSGIPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddSGIPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getSGIPermitTargetInput(year: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/GetSGIPermitTargetInput?\";\r\n if (year === null)\r\n throw new Error(\"The parameter 'year' cannot be null.\");\r\n else if (year !== undefined)\r\n url_ += \"year=\" + encodeURIComponent(\"\" + year) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSGIPermitTargetInput(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSGIPermitTargetInput(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSGIPermitTargetInput(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SGIPermitTargetInputDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getChemicalCompounds(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/LIMS?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetChemicalCompounds(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetChemicalCompounds(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetChemicalCompounds(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n monthlyReport(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGI/GetSGIMonthlyReport?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processMonthlyReport(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processMonthlyReport(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processMonthlyReport(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface ISGPFGDClient {\r\n refreshStreams(isDelta: boolean | undefined): Observable;\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n getMonthlyRecords(startTime: Date | undefined): Observable;\r\n isDailyRecordsExist(startTime: Date | undefined): Observable;\r\n getDailyRecords(startTime: Date | undefined): Observable;\r\n addManualRecord(recordDTO: SGPFGDInputRecordDTO): Observable;\r\n overrideManualRecord(recordDTO: SGPFGDOverrideRecordDTO): Observable;\r\n deleteOverrideRecord(streamId: number | undefined, startTime: Date | undefined): Observable;\r\n getGUR(startTime: Date | undefined): Observable;\r\n postGUR(input: GURInputRecordDTO): Observable;\r\n exportSGPFGDDailyReports(dt: Date | undefined): Observable;\r\n exportSGPFGDMonthlyReports(dt: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SGPFGDClient implements ISGPFGDClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n refreshStreams(isDelta: boolean | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/RefreshStreams?\";\r\n if (isDelta === null)\r\n throw new Error(\"The parameter 'isDelta' cannot be null.\");\r\n else if (isDelta !== undefined)\r\n url_ += \"isDelta=\" + encodeURIComponent(\"\" + isDelta) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRefreshStreams(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRefreshStreams(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRefreshStreams(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getMonthlyRecords(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/MonthlyRecords?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetMonthlyRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetMonthlyRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetMonthlyRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SGPFGDCalculatedDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n isDailyRecordsExist(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/IsDailyRecordsExist?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processIsDailyRecordsExist(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processIsDailyRecordsExist(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processIsDailyRecordsExist(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getDailyRecords(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/DailyRecords?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetDailyRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetDailyRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetDailyRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SGPFGDCalculatedDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addManualRecord(recordDTO: SGPFGDInputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/ManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n overrideManualRecord(recordDTO: SGPFGDOverrideRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/OverrideManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processOverrideManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processOverrideManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processOverrideManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteOverrideRecord(streamId: number | undefined, startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/DeleteOverrideRecord?\";\r\n if (streamId === null)\r\n throw new Error(\"The parameter 'streamId' cannot be null.\");\r\n else if (streamId !== undefined)\r\n url_ += \"streamId=\" + encodeURIComponent(\"\" + streamId) + \"&\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteOverrideRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteOverrideRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteOverrideRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getGUR(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/GUR?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"StartTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetGUR(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetGUR(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetGUR(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = GetGURDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n postGUR(input: GURInputRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/GUR\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(input);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processPostGUR(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processPostGUR(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processPostGUR(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportSGPFGDDailyReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/ExportSGPFGDDailyReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportSGPFGDDailyReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportSGPFGDDailyReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportSGPFGDDailyReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n exportSGPFGDMonthlyReports(dt: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGD/ExportSGPFGDMonthlyReports?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processExportSGPFGDMonthlyReports(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processExportSGPFGDMonthlyReports(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processExportSGPFGDMonthlyReports(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface ISGPFGDECClient {\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SGPFGDECClient implements ISGPFGDECClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SGPFGDEC/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface ISO2Client {\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable;\r\n getMonthlyRecords(startTime: Date | undefined): Observable;\r\n addManualRecord(recordDTO: KTLSGPSO2RecordDTO): Observable;\r\n getProjectedData(date: Date | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable;\r\n inputProjectedData(dto: KTLSGPSO2ProjectedDataInputDTO): Observable;\r\n deleteProjectedData(id: number | undefined): Observable;\r\n /**\r\n * returns json object with array of timestamp + value in each index for specific day.\r\n * @param dt (optional) \r\n * @param streamType (optional) \r\n * @param areaType (optional) \r\n */\r\n getFlowmeterGraph(dt: Date | undefined, streamType: Plant | undefined, areaType: SO2StreamGroupChildrenTypes | undefined): Observable;\r\n recalculation(record: KTLSGPSO2RecalculationRecordDTO): Observable;\r\n getSO2RecalculationData(date: Date | undefined, train: SO2StreamGroupChildrenTypes | undefined): Observable;\r\n deleteSO2Recalculation(id: number): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SO2Client implements ISO2Client {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n hardRefreshAFToSQL(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/HardRefreshAFToSQL?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processHardRefreshAFToSQL(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processHardRefreshAFToSQL(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processHardRefreshAFToSQL(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getMonthlyRecords(startTime: Date | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/MonthlyRecords?\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetMonthlyRecords(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetMonthlyRecords(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetMonthlyRecords(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(KTLSGPSO2CalculatedReportDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n addManualRecord(recordDTO: KTLSGPSO2RecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/ManualRecord\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(recordDTO);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processAddManualRecord(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processAddManualRecord(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processAddManualRecord(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getProjectedData(date: Date | undefined, pageNumber: number | null | undefined, pageSize: number | null | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/GetProjectedData?\";\r\n if (date === null)\r\n throw new Error(\"The parameter 'date' cannot be null.\");\r\n else if (date !== undefined)\r\n url_ += \"date=\" + encodeURIComponent(date ? \"\" + date.toISOString() : \"\") + \"&\";\r\n if (pageNumber !== undefined && pageNumber !== null)\r\n url_ += \"pageNumber=\" + encodeURIComponent(\"\" + pageNumber) + \"&\";\r\n if (pageSize !== undefined && pageSize !== null)\r\n url_ += \"pageSize=\" + encodeURIComponent(\"\" + pageSize) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetProjectedData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetProjectedData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetProjectedData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PagedListOfKTLSGPSO2ProjectedDataInputDTO.fromJS(resultData200);\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n inputProjectedData(dto: KTLSGPSO2ProjectedDataInputDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/InputProjectedData\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(dto);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processInputProjectedData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processInputProjectedData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processInputProjectedData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteProjectedData(id: number | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/DeleteProjectedData?\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteProjectedData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteProjectedData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteProjectedData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n /**\r\n * returns json object with array of timestamp + value in each index for specific day.\r\n * @param dt (optional) \r\n * @param streamType (optional) \r\n * @param areaType (optional) \r\n */\r\n getFlowmeterGraph(dt: Date | undefined, streamType: Plant | undefined, areaType: SO2StreamGroupChildrenTypes | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/SO2Flowmeter?\";\r\n if (dt === null)\r\n throw new Error(\"The parameter 'dt' cannot be null.\");\r\n else if (dt !== undefined)\r\n url_ += \"dt=\" + encodeURIComponent(dt ? \"\" + dt.toISOString() : \"\") + \"&\";\r\n if (streamType === null)\r\n throw new Error(\"The parameter 'streamType' cannot be null.\");\r\n else if (streamType !== undefined)\r\n url_ += \"streamType=\" + encodeURIComponent(\"\" + streamType) + \"&\";\r\n if (areaType === null)\r\n throw new Error(\"The parameter 'areaType' cannot be null.\");\r\n else if (areaType !== undefined)\r\n url_ += \"areaType=\" + encodeURIComponent(\"\" + areaType) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetFlowmeterGraph(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetFlowmeterGraph(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetFlowmeterGraph(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SO2FlowmeterGraphDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n recalculation(record: KTLSGPSO2RecalculationRecordDTO): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/SO2Recalculation\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(record);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"post\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processRecalculation(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processRecalculation(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processRecalculation(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getSO2RecalculationData(date: Date | undefined, train: SO2StreamGroupChildrenTypes | undefined): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/GetSO2RecalculationData?\";\r\n if (date === null)\r\n throw new Error(\"The parameter 'date' cannot be null.\");\r\n else if (date !== undefined)\r\n url_ += \"date=\" + encodeURIComponent(date ? \"\" + date.toISOString() : \"\") + \"&\";\r\n if (train === null)\r\n throw new Error(\"The parameter 'train' cannot be null.\");\r\n else if (train !== undefined)\r\n url_ += \"train=\" + encodeURIComponent(\"\" + train) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetSO2RecalculationData(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetSO2RecalculationData(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetSO2RecalculationData(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(KTLSGPSO2RecalculationRecordDTO.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n deleteSO2Recalculation(id: number): Observable {\r\n let url_ = this.baseUrl + \"/api/SO2/DeleteSO2Recalculation\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(id);\r\n\r\n let options_ : any = {\r\n body: content_,\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Content-Type\": \"application/json\",\r\n \"Accept\": \"application/octet-stream\"\r\n })\r\n };\r\n\r\n return this.http.request(\"delete\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processDeleteSO2Recalculation(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processDeleteSO2Recalculation(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processDeleteSO2Recalculation(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\r\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\r\n if (fileName) {\r\n fileName = decodeURIComponent(fileName);\r\n } else {\r\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n }\r\n return _observableOf({ fileName: fileName, data: responseBlob as any, status: status, headers: _headers });\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport interface IUserClient {\r\n getCurrentUser(): Observable;\r\n getCurrentUserGroups(): Observable;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserClient implements IUserClient {\r\n private http: HttpClient;\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {\r\n this.http = http;\r\n this.baseUrl = baseUrl ?? \"\";\r\n }\r\n\r\n getCurrentUser(): Observable {\r\n let url_ = this.baseUrl + \"/api/User/GetCurrentUser\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCurrentUser(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCurrentUser(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCurrentUser(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n\r\n getCurrentUserGroups(): Observable {\r\n let url_ = this.baseUrl + \"/api/User/GetUserGroups\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_ : any = {\r\n observe: \"response\",\r\n responseType: \"blob\",\r\n headers: new HttpHeaders({\r\n \"Accept\": \"application/json\"\r\n })\r\n };\r\n\r\n return this.http.request(\"get\", url_, options_).pipe(_observableMergeMap((response_ : any) => {\r\n return this.processGetCurrentUserGroups(response_);\r\n })).pipe(_observableCatch((response_: any) => {\r\n if (response_ instanceof HttpResponseBase) {\r\n try {\r\n return this.processGetCurrentUserGroups(response_ as any);\r\n } catch (e) {\r\n return _observableThrow(e) as any as Observable;\r\n }\r\n } else\r\n return _observableThrow(response_) as any as Observable;\r\n }));\r\n }\r\n\r\n protected processGetCurrentUserGroups(response: HttpResponseBase): Observable {\r\n const status = response.status;\r\n const responseBlob =\r\n response instanceof HttpResponse ? response.body :\r\n (response as any).error instanceof Blob ? (response as any).error : undefined;\r\n\r\n let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }}\r\n if (status === 200) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(item);\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return _observableOf(result200);\r\n }));\r\n } else if (status !== 200 && status !== 204) {\r\n return blobToText(responseBlob).pipe(_observableMergeMap((_responseText: string) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n }));\r\n }\r\n return _observableOf(null as any);\r\n }\r\n}\r\n\r\nexport class PurgePilotEntriesDTO implements IPurgePilotEntriesDTO {\r\n user!: string;\r\n startTime!: Date;\r\n logged!: Date;\r\n mwTengiz!: number;\r\n mwKorolev!: number;\r\n\r\n constructor(data?: IPurgePilotEntriesDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.user = _data[\"user\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.mwTengiz = _data[\"mwTengiz\"];\r\n this.mwKorolev = _data[\"mwKorolev\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PurgePilotEntriesDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PurgePilotEntriesDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"user\"] = this.user;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"mwTengiz\"] = this.mwTengiz;\r\n data[\"mwKorolev\"] = this.mwKorolev;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPurgePilotEntriesDTO {\r\n user: string;\r\n startTime: Date;\r\n logged: Date;\r\n mwTengiz: number;\r\n mwKorolev: number;\r\n}\r\n\r\nexport class RecordTablesDTO implements IRecordTablesDTO {\r\n id!: number;\r\n referTo!: FieldArea;\r\n startTime!: Date;\r\n endTime?: Date | undefined;\r\n operatorInput!: boolean;\r\n isConfirmed!: boolean;\r\n findAutoInputs!: boolean;\r\n usedNitrogen!: boolean;\r\n p_With_Nitrogen_Initial?: number | undefined;\r\n p_With_Nitrogen_Final?: number | undefined;\r\n p_Nitrogen_Initial?: number | undefined;\r\n p_Nitrogen_Final?: number | undefined;\r\n facility!: string;\r\n reason!: string;\r\n category!: string;\r\n location!: string;\r\n mw!: number;\r\n length?: number | undefined;\r\n diameter?: number | undefined;\r\n pipeWall?: number | undefined;\r\n lineVolume?: number | undefined;\r\n p_Initial?: number | undefined;\r\n p_Initial_Timestamp?: Date | undefined;\r\n p_Final?: number | undefined;\r\n p_Final_Timestamp?: Date | undefined;\r\n t_Initial?: number | undefined;\r\n t_Initial_Timestamp?: Date | undefined;\r\n t_Final?: number | undefined;\r\n t_Final_Timestamp?: Date | undefined;\r\n z_Initial?: number | undefined;\r\n z_Final?: number | undefined;\r\n k1?: number | undefined;\r\n k2?: number | undefined;\r\n isBledFully!: boolean;\r\n volume!: number;\r\n mass!: number;\r\n mrmVolumes!: RecordVolumeDto;\r\n mrmMasses!: RecordMassDto;\r\n type!: FieldRecordManualType;\r\n user!: string;\r\n createdBy!: string;\r\n logged!: Date;\r\n\r\n constructor(data?: IRecordTablesDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.mrmVolumes = new RecordVolumeDto();\r\n this.mrmMasses = new RecordMassDto();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.referTo = _data[\"referTo\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.operatorInput = _data[\"operatorInput\"];\r\n this.isConfirmed = _data[\"isConfirmed\"];\r\n this.findAutoInputs = _data[\"findAutoInputs\"];\r\n this.usedNitrogen = _data[\"usedNitrogen\"];\r\n this.p_With_Nitrogen_Initial = _data[\"p_With_Nitrogen_Initial\"];\r\n this.p_With_Nitrogen_Final = _data[\"p_With_Nitrogen_Final\"];\r\n this.p_Nitrogen_Initial = _data[\"p_Nitrogen_Initial\"];\r\n this.p_Nitrogen_Final = _data[\"p_Nitrogen_Final\"];\r\n this.facility = _data[\"facility\"];\r\n this.reason = _data[\"reason\"];\r\n this.category = _data[\"category\"];\r\n this.location = _data[\"location\"];\r\n this.mw = _data[\"mw\"];\r\n this.length = _data[\"length\"];\r\n this.diameter = _data[\"diameter\"];\r\n this.pipeWall = _data[\"pipeWall\"];\r\n this.lineVolume = _data[\"lineVolume\"];\r\n this.p_Initial = _data[\"p_Initial\"];\r\n this.p_Initial_Timestamp = _data[\"p_Initial_Timestamp\"] ? new Date(_data[\"p_Initial_Timestamp\"].toString()) : undefined;\r\n this.p_Final = _data[\"p_Final\"];\r\n this.p_Final_Timestamp = _data[\"p_Final_Timestamp\"] ? new Date(_data[\"p_Final_Timestamp\"].toString()) : undefined;\r\n this.t_Initial = _data[\"t_Initial\"];\r\n this.t_Initial_Timestamp = _data[\"t_Initial_Timestamp\"] ? new Date(_data[\"t_Initial_Timestamp\"].toString()) : undefined;\r\n this.t_Final = _data[\"t_Final\"];\r\n this.t_Final_Timestamp = _data[\"t_Final_Timestamp\"] ? new Date(_data[\"t_Final_Timestamp\"].toString()) : undefined;\r\n this.z_Initial = _data[\"z_Initial\"];\r\n this.z_Final = _data[\"z_Final\"];\r\n this.k1 = _data[\"k1\"];\r\n this.k2 = _data[\"k2\"];\r\n this.isBledFully = _data[\"isBledFully\"];\r\n this.volume = _data[\"volume\"];\r\n this.mass = _data[\"mass\"];\r\n this.mrmVolumes = _data[\"mrmVolumes\"] ? RecordVolumeDto.fromJS(_data[\"mrmVolumes\"]) : new RecordVolumeDto();\r\n this.mrmMasses = _data[\"mrmMasses\"] ? RecordMassDto.fromJS(_data[\"mrmMasses\"]) : new RecordMassDto();\r\n this.type = _data[\"type\"];\r\n this.user = _data[\"user\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecordTablesDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecordTablesDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"referTo\"] = this.referTo;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"operatorInput\"] = this.operatorInput;\r\n data[\"isConfirmed\"] = this.isConfirmed;\r\n data[\"findAutoInputs\"] = this.findAutoInputs;\r\n data[\"usedNitrogen\"] = this.usedNitrogen;\r\n data[\"p_With_Nitrogen_Initial\"] = this.p_With_Nitrogen_Initial;\r\n data[\"p_With_Nitrogen_Final\"] = this.p_With_Nitrogen_Final;\r\n data[\"p_Nitrogen_Initial\"] = this.p_Nitrogen_Initial;\r\n data[\"p_Nitrogen_Final\"] = this.p_Nitrogen_Final;\r\n data[\"facility\"] = this.facility;\r\n data[\"reason\"] = this.reason;\r\n data[\"category\"] = this.category;\r\n data[\"location\"] = this.location;\r\n data[\"mw\"] = this.mw;\r\n data[\"length\"] = this.length;\r\n data[\"diameter\"] = this.diameter;\r\n data[\"pipeWall\"] = this.pipeWall;\r\n data[\"lineVolume\"] = this.lineVolume;\r\n data[\"p_Initial\"] = this.p_Initial;\r\n data[\"p_Initial_Timestamp\"] = this.p_Initial_Timestamp ? this.p_Initial_Timestamp.toISOString() : undefined;\r\n data[\"p_Final\"] = this.p_Final;\r\n data[\"p_Final_Timestamp\"] = this.p_Final_Timestamp ? this.p_Final_Timestamp.toISOString() : undefined;\r\n data[\"t_Initial\"] = this.t_Initial;\r\n data[\"t_Initial_Timestamp\"] = this.t_Initial_Timestamp ? this.t_Initial_Timestamp.toISOString() : undefined;\r\n data[\"t_Final\"] = this.t_Final;\r\n data[\"t_Final_Timestamp\"] = this.t_Final_Timestamp ? this.t_Final_Timestamp.toISOString() : undefined;\r\n data[\"z_Initial\"] = this.z_Initial;\r\n data[\"z_Final\"] = this.z_Final;\r\n data[\"k1\"] = this.k1;\r\n data[\"k2\"] = this.k2;\r\n data[\"isBledFully\"] = this.isBledFully;\r\n data[\"volume\"] = this.volume;\r\n data[\"mass\"] = this.mass;\r\n data[\"mrmVolumes\"] = this.mrmVolumes ? this.mrmVolumes.toJSON() : undefined;\r\n data[\"mrmMasses\"] = this.mrmMasses ? this.mrmMasses.toJSON() : undefined;\r\n data[\"type\"] = this.type;\r\n data[\"user\"] = this.user;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecordTablesDTO {\r\n id: number;\r\n referTo: FieldArea;\r\n startTime: Date;\r\n endTime?: Date | undefined;\r\n operatorInput: boolean;\r\n isConfirmed: boolean;\r\n findAutoInputs: boolean;\r\n usedNitrogen: boolean;\r\n p_With_Nitrogen_Initial?: number | undefined;\r\n p_With_Nitrogen_Final?: number | undefined;\r\n p_Nitrogen_Initial?: number | undefined;\r\n p_Nitrogen_Final?: number | undefined;\r\n facility: string;\r\n reason: string;\r\n category: string;\r\n location: string;\r\n mw: number;\r\n length?: number | undefined;\r\n diameter?: number | undefined;\r\n pipeWall?: number | undefined;\r\n lineVolume?: number | undefined;\r\n p_Initial?: number | undefined;\r\n p_Initial_Timestamp?: Date | undefined;\r\n p_Final?: number | undefined;\r\n p_Final_Timestamp?: Date | undefined;\r\n t_Initial?: number | undefined;\r\n t_Initial_Timestamp?: Date | undefined;\r\n t_Final?: number | undefined;\r\n t_Final_Timestamp?: Date | undefined;\r\n z_Initial?: number | undefined;\r\n z_Final?: number | undefined;\r\n k1?: number | undefined;\r\n k2?: number | undefined;\r\n isBledFully: boolean;\r\n volume: number;\r\n mass: number;\r\n mrmVolumes: RecordVolumeDto;\r\n mrmMasses: RecordMassDto;\r\n type: FieldRecordManualType;\r\n user: string;\r\n createdBy: string;\r\n logged: Date;\r\n}\r\n\r\nexport enum FieldArea {\r\n Tengiz = 0,\r\n Korolev = 1,\r\n}\r\n\r\nexport class RecordVolumeDto implements IRecordVolumeDto {\r\n tank1!: number;\r\n tank2!: number;\r\n tank3!: number;\r\n tank4!: number;\r\n\r\n constructor(data?: IRecordVolumeDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tank1 = _data[\"tank1\"];\r\n this.tank2 = _data[\"tank2\"];\r\n this.tank3 = _data[\"tank3\"];\r\n this.tank4 = _data[\"tank4\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecordVolumeDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecordVolumeDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tank1\"] = this.tank1;\r\n data[\"tank2\"] = this.tank2;\r\n data[\"tank3\"] = this.tank3;\r\n data[\"tank4\"] = this.tank4;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecordVolumeDto {\r\n tank1: number;\r\n tank2: number;\r\n tank3: number;\r\n tank4: number;\r\n}\r\n\r\nexport class RecordMassDto implements IRecordMassDto {\r\n tank1!: number;\r\n tank2!: number;\r\n tank3!: number;\r\n tank4!: number;\r\n\r\n constructor(data?: IRecordMassDto) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.tank1 = _data[\"tank1\"];\r\n this.tank2 = _data[\"tank2\"];\r\n this.tank3 = _data[\"tank3\"];\r\n this.tank4 = _data[\"tank4\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecordMassDto {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecordMassDto();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"tank1\"] = this.tank1;\r\n data[\"tank2\"] = this.tank2;\r\n data[\"tank3\"] = this.tank3;\r\n data[\"tank4\"] = this.tank4;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecordMassDto {\r\n tank1: number;\r\n tank2: number;\r\n tank3: number;\r\n tank4: number;\r\n}\r\n\r\nexport enum FieldRecordManualType {\r\n DryGasUsage = 0,\r\n DryGasFlaring = 1,\r\n ReservoirGasFlaring = 2,\r\n DryGasMRM = 3,\r\n ReservoirMRM = 4,\r\n KorolevDry = 5,\r\n PurgePilotSwitch = 6,\r\n DryLeakageDaily = 9,\r\n ReservoirLeakageDaily = 10,\r\n DryVolumeFlaring = 11,\r\n ReservoirVolumeFlaring = 12,\r\n DryVolumeUsage = 13,\r\n}\r\n\r\nexport class FieldTotal implements IFieldTotal {\r\n totalMass!: any;\r\n totalVolume!: any;\r\n type!: FieldTotalType;\r\n\r\n constructor(data?: IFieldTotal) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalMass = _data[\"totalMass\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.type = _data[\"type\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FieldTotal {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FieldTotal();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"type\"] = this.type;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFieldTotal {\r\n totalMass: any;\r\n totalVolume: any;\r\n type: FieldTotalType;\r\n}\r\n\r\nexport enum FieldTotalType {\r\n DryGasUsed = 0,\r\n DryGasFlared = 1,\r\n ReservoirGasFlared = 2,\r\n DryGasMRM = 3,\r\n ReservoirMRM = 4,\r\n DryGasUsedFGP = 5,\r\n DryGasFlaredFGP = 6,\r\n ReservoirGasFlaredFGP = 7,\r\n DryGasMRMFGP = 8,\r\n ReservoirMRMFGP = 9,\r\n DryGasUsedTengiz = 10,\r\n DryGasUsedKorolev = 11,\r\n DryGasFlaredTengiz = 12,\r\n DrygasFlaredKorolev = 13,\r\n ReservoirGasFlaredTengiz = 14,\r\n ReservoirGasFlaredKorolev = 15,\r\n}\r\n\r\nexport enum ActionTypeEnumDTO {\r\n ConfirmFieldCalcDryGas = 0,\r\n ConfirmFieldCalcReservoirGas = 1,\r\n Approve = 2,\r\n}\r\n\r\nexport class PurgePilotDTO implements IPurgePilotDTO {\r\n user!: string;\r\n referTo!: FieldArea;\r\n flareStack!: string;\r\n pilotFlowrate!: number;\r\n purgeFlowrate!: number;\r\n totalMassPilot!: number;\r\n totalVolumePilot!: number;\r\n totalMassPurge!: number;\r\n totalVolumePurge!: number;\r\n pilotDays1!: number;\r\n pilotDays2!: number;\r\n pilotDays3!: number;\r\n purgeDays1!: number;\r\n purgeDays2!: number;\r\n purgeDays3!: number;\r\n mw!: number;\r\n pilotFlowingHours!: number;\r\n purgeFlowingHours!: number;\r\n facility!: string;\r\n timeStamp!: Date;\r\n logged!: Date;\r\n\r\n constructor(data?: IPurgePilotDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.user = _data[\"user\"];\r\n this.referTo = _data[\"referTo\"];\r\n this.flareStack = _data[\"flareStack\"];\r\n this.pilotFlowrate = _data[\"pilotFlowrate\"];\r\n this.purgeFlowrate = _data[\"purgeFlowrate\"];\r\n this.totalMassPilot = _data[\"totalMassPilot\"];\r\n this.totalVolumePilot = _data[\"totalVolumePilot\"];\r\n this.totalMassPurge = _data[\"totalMassPurge\"];\r\n this.totalVolumePurge = _data[\"totalVolumePurge\"];\r\n this.pilotDays1 = _data[\"pilotDays1\"];\r\n this.pilotDays2 = _data[\"pilotDays2\"];\r\n this.pilotDays3 = _data[\"pilotDays3\"];\r\n this.purgeDays1 = _data[\"purgeDays1\"];\r\n this.purgeDays2 = _data[\"purgeDays2\"];\r\n this.purgeDays3 = _data[\"purgeDays3\"];\r\n this.mw = _data[\"mw\"];\r\n this.pilotFlowingHours = _data[\"pilotFlowingHours\"];\r\n this.purgeFlowingHours = _data[\"purgeFlowingHours\"];\r\n this.facility = _data[\"facility\"];\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PurgePilotDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PurgePilotDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"user\"] = this.user;\r\n data[\"referTo\"] = this.referTo;\r\n data[\"flareStack\"] = this.flareStack;\r\n data[\"pilotFlowrate\"] = this.pilotFlowrate;\r\n data[\"purgeFlowrate\"] = this.purgeFlowrate;\r\n data[\"totalMassPilot\"] = this.totalMassPilot;\r\n data[\"totalVolumePilot\"] = this.totalVolumePilot;\r\n data[\"totalMassPurge\"] = this.totalMassPurge;\r\n data[\"totalVolumePurge\"] = this.totalVolumePurge;\r\n data[\"pilotDays1\"] = this.pilotDays1;\r\n data[\"pilotDays2\"] = this.pilotDays2;\r\n data[\"pilotDays3\"] = this.pilotDays3;\r\n data[\"purgeDays1\"] = this.purgeDays1;\r\n data[\"purgeDays2\"] = this.purgeDays2;\r\n data[\"purgeDays3\"] = this.purgeDays3;\r\n data[\"mw\"] = this.mw;\r\n data[\"pilotFlowingHours\"] = this.pilotFlowingHours;\r\n data[\"purgeFlowingHours\"] = this.purgeFlowingHours;\r\n data[\"facility\"] = this.facility;\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPurgePilotDTO {\r\n user: string;\r\n referTo: FieldArea;\r\n flareStack: string;\r\n pilotFlowrate: number;\r\n purgeFlowrate: number;\r\n totalMassPilot: number;\r\n totalVolumePilot: number;\r\n totalMassPurge: number;\r\n totalVolumePurge: number;\r\n pilotDays1: number;\r\n pilotDays2: number;\r\n pilotDays3: number;\r\n purgeDays1: number;\r\n purgeDays2: number;\r\n purgeDays3: number;\r\n mw: number;\r\n pilotFlowingHours: number;\r\n purgeFlowingHours: number;\r\n facility: string;\r\n timeStamp: Date;\r\n logged: Date;\r\n}\r\n\r\nexport class RecordDTO implements IRecordDTO {\r\n id!: number;\r\n referTo!: FieldArea;\r\n startTime!: Date;\r\n endTime!: Date;\r\n isConfirmed!: boolean;\r\n operatorInput!: boolean;\r\n findAutoInputs!: boolean;\r\n facility!: string;\r\n gas!: string;\r\n purpose!: string;\r\n type!: FieldRecordManualType;\r\n reason!: string;\r\n category!: string;\r\n location!: string;\r\n lineVolume!: number;\r\n usedNitrogen!: boolean;\r\n p_Nitrogen_Initial!: number;\r\n p_Nitrogen_Final!: number;\r\n p_Initial!: number;\r\n p_Final!: number;\r\n t_Initial!: number;\r\n t_Final!: number;\r\n isBledFully!: boolean;\r\n volume!: number;\r\n isOverwriteVolume!: boolean;\r\n volumes!: RecordVolumeDto;\r\n masses!: RecordMassDto;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.volumes = new RecordVolumeDto();\r\n this.masses = new RecordMassDto();\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.referTo = _data[\"referTo\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.isConfirmed = _data[\"isConfirmed\"];\r\n this.operatorInput = _data[\"operatorInput\"];\r\n this.findAutoInputs = _data[\"findAutoInputs\"];\r\n this.facility = _data[\"facility\"];\r\n this.gas = _data[\"gas\"];\r\n this.purpose = _data[\"purpose\"];\r\n this.type = _data[\"type\"];\r\n this.reason = _data[\"reason\"];\r\n this.category = _data[\"category\"];\r\n this.location = _data[\"location\"];\r\n this.lineVolume = _data[\"lineVolume\"];\r\n this.usedNitrogen = _data[\"usedNitrogen\"];\r\n this.p_Nitrogen_Initial = _data[\"p_Nitrogen_Initial\"];\r\n this.p_Nitrogen_Final = _data[\"p_Nitrogen_Final\"];\r\n this.p_Initial = _data[\"p_Initial\"];\r\n this.p_Final = _data[\"p_Final\"];\r\n this.t_Initial = _data[\"t_Initial\"];\r\n this.t_Final = _data[\"t_Final\"];\r\n this.isBledFully = _data[\"isBledFully\"];\r\n this.volume = _data[\"volume\"];\r\n this.isOverwriteVolume = _data[\"isOverwriteVolume\"];\r\n this.volumes = _data[\"volumes\"] ? RecordVolumeDto.fromJS(_data[\"volumes\"]) : new RecordVolumeDto();\r\n this.masses = _data[\"masses\"] ? RecordMassDto.fromJS(_data[\"masses\"]) : new RecordMassDto();\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"referTo\"] = this.referTo;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"isConfirmed\"] = this.isConfirmed;\r\n data[\"operatorInput\"] = this.operatorInput;\r\n data[\"findAutoInputs\"] = this.findAutoInputs;\r\n data[\"facility\"] = this.facility;\r\n data[\"gas\"] = this.gas;\r\n data[\"purpose\"] = this.purpose;\r\n data[\"type\"] = this.type;\r\n data[\"reason\"] = this.reason;\r\n data[\"category\"] = this.category;\r\n data[\"location\"] = this.location;\r\n data[\"lineVolume\"] = this.lineVolume;\r\n data[\"usedNitrogen\"] = this.usedNitrogen;\r\n data[\"p_Nitrogen_Initial\"] = this.p_Nitrogen_Initial;\r\n data[\"p_Nitrogen_Final\"] = this.p_Nitrogen_Final;\r\n data[\"p_Initial\"] = this.p_Initial;\r\n data[\"p_Final\"] = this.p_Final;\r\n data[\"t_Initial\"] = this.t_Initial;\r\n data[\"t_Final\"] = this.t_Final;\r\n data[\"isBledFully\"] = this.isBledFully;\r\n data[\"volume\"] = this.volume;\r\n data[\"isOverwriteVolume\"] = this.isOverwriteVolume;\r\n data[\"volumes\"] = this.volumes ? this.volumes.toJSON() : undefined;\r\n data[\"masses\"] = this.masses ? this.masses.toJSON() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecordDTO {\r\n id: number;\r\n referTo: FieldArea;\r\n startTime: Date;\r\n endTime: Date;\r\n isConfirmed: boolean;\r\n operatorInput: boolean;\r\n findAutoInputs: boolean;\r\n facility: string;\r\n gas: string;\r\n purpose: string;\r\n type: FieldRecordManualType;\r\n reason: string;\r\n category: string;\r\n location: string;\r\n lineVolume: number;\r\n usedNitrogen: boolean;\r\n p_Nitrogen_Initial: number;\r\n p_Nitrogen_Final: number;\r\n p_Initial: number;\r\n p_Final: number;\r\n t_Initial: number;\r\n t_Final: number;\r\n isBledFully: boolean;\r\n volume: number;\r\n isOverwriteVolume: boolean;\r\n volumes: RecordVolumeDto;\r\n masses: RecordMassDto;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class PressureTemperatureGraphDTO implements IPressureTemperatureGraphDTO {\r\n title!: string;\r\n values!: PressureTemperatureGraphValuesDTO[];\r\n\r\n constructor(data?: IPressureTemperatureGraphDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.values = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.title = _data[\"title\"];\r\n if (Array.isArray(_data[\"values\"])) {\r\n this.values = [] as any;\r\n for (let item of _data[\"values\"])\r\n this.values!.push(PressureTemperatureGraphValuesDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PressureTemperatureGraphDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PressureTemperatureGraphDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"title\"] = this.title;\r\n if (Array.isArray(this.values)) {\r\n data[\"values\"] = [];\r\n for (let item of this.values)\r\n data[\"values\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPressureTemperatureGraphDTO {\r\n title: string;\r\n values: PressureTemperatureGraphValuesDTO[];\r\n}\r\n\r\nexport class PressureTemperatureGraphValuesDTO implements IPressureTemperatureGraphValuesDTO {\r\n timespan!: Date;\r\n pressure!: number;\r\n temperature!: number;\r\n\r\n constructor(data?: IPressureTemperatureGraphValuesDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timespan = _data[\"timespan\"] ? new Date(_data[\"timespan\"].toString()) : undefined;\r\n this.pressure = _data[\"pressure\"];\r\n this.temperature = _data[\"temperature\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PressureTemperatureGraphValuesDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PressureTemperatureGraphValuesDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timespan\"] = this.timespan ? this.timespan.toISOString() : undefined;\r\n data[\"pressure\"] = this.pressure;\r\n data[\"temperature\"] = this.temperature;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPressureTemperatureGraphValuesDTO {\r\n timespan: Date;\r\n pressure: number;\r\n temperature: number;\r\n}\r\n\r\nexport class RecordOperatorDTO implements IRecordOperatorDTO {\r\n id!: number;\r\n referTo!: FieldArea;\r\n startTime!: Date;\r\n endTime!: Date;\r\n operatorInput!: boolean;\r\n findAutoInputs!: boolean;\r\n facility!: string;\r\n gas!: string;\r\n purpose!: string;\r\n type!: FieldRecordManualType;\r\n isConfirmed!: boolean;\r\n reason!: string;\r\n category!: string;\r\n location!: string;\r\n usedNitrogen!: boolean;\r\n p_Nitrogen_Initial!: number;\r\n p_Nitrogen_Final!: number;\r\n p_Initial!: number;\r\n p_Final!: number;\r\n p_BledFully_Initial!: number;\r\n p_BledFully_Final!: number;\r\n isBledFully!: boolean;\r\n bledDate!: Date;\r\n comment!: string;\r\n createdBy!: string;\r\n user!: string;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IRecordOperatorDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.referTo = _data[\"referTo\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.operatorInput = _data[\"operatorInput\"];\r\n this.findAutoInputs = _data[\"findAutoInputs\"];\r\n this.facility = _data[\"facility\"];\r\n this.gas = _data[\"gas\"];\r\n this.purpose = _data[\"purpose\"];\r\n this.type = _data[\"type\"];\r\n this.isConfirmed = _data[\"isConfirmed\"];\r\n this.reason = _data[\"reason\"];\r\n this.category = _data[\"category\"];\r\n this.location = _data[\"location\"];\r\n this.usedNitrogen = _data[\"usedNitrogen\"];\r\n this.p_Nitrogen_Initial = _data[\"p_Nitrogen_Initial\"];\r\n this.p_Nitrogen_Final = _data[\"p_Nitrogen_Final\"];\r\n this.p_Initial = _data[\"p_Initial\"];\r\n this.p_Final = _data[\"p_Final\"];\r\n this.p_BledFully_Initial = _data[\"p_BledFully_Initial\"];\r\n this.p_BledFully_Final = _data[\"p_BledFully_Final\"];\r\n this.isBledFully = _data[\"isBledFully\"];\r\n this.bledDate = _data[\"bledDate\"] ? new Date(_data[\"bledDate\"].toString()) : undefined;\r\n this.comment = _data[\"comment\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.user = _data[\"user\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecordOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecordOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"referTo\"] = this.referTo;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"operatorInput\"] = this.operatorInput;\r\n data[\"findAutoInputs\"] = this.findAutoInputs;\r\n data[\"facility\"] = this.facility;\r\n data[\"gas\"] = this.gas;\r\n data[\"purpose\"] = this.purpose;\r\n data[\"type\"] = this.type;\r\n data[\"isConfirmed\"] = this.isConfirmed;\r\n data[\"reason\"] = this.reason;\r\n data[\"category\"] = this.category;\r\n data[\"location\"] = this.location;\r\n data[\"usedNitrogen\"] = this.usedNitrogen;\r\n data[\"p_Nitrogen_Initial\"] = this.p_Nitrogen_Initial;\r\n data[\"p_Nitrogen_Final\"] = this.p_Nitrogen_Final;\r\n data[\"p_Initial\"] = this.p_Initial;\r\n data[\"p_Final\"] = this.p_Final;\r\n data[\"p_BledFully_Initial\"] = this.p_BledFully_Initial;\r\n data[\"p_BledFully_Final\"] = this.p_BledFully_Final;\r\n data[\"isBledFully\"] = this.isBledFully;\r\n data[\"bledDate\"] = this.bledDate ? this.bledDate.toISOString() : undefined;\r\n data[\"comment\"] = this.comment;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"user\"] = this.user;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecordOperatorDTO {\r\n id: number;\r\n referTo: FieldArea;\r\n startTime: Date;\r\n endTime: Date;\r\n operatorInput: boolean;\r\n findAutoInputs: boolean;\r\n facility: string;\r\n gas: string;\r\n purpose: string;\r\n type: FieldRecordManualType;\r\n isConfirmed: boolean;\r\n reason: string;\r\n category: string;\r\n location: string;\r\n usedNitrogen: boolean;\r\n p_Nitrogen_Initial: number;\r\n p_Nitrogen_Final: number;\r\n p_Initial: number;\r\n p_Final: number;\r\n p_BledFully_Initial: number;\r\n p_BledFully_Final: number;\r\n isBledFully: boolean;\r\n bledDate: Date;\r\n comment: string;\r\n createdBy: string;\r\n user: string;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class RecordBledFullyDTO implements IRecordBledFullyDTO {\r\n blowdownRecordId!: number;\r\n startTime!: Date;\r\n comment!: string;\r\n p_BledFully_Initial!: number;\r\n p_BledFully_Final!: number;\r\n\r\n constructor(data?: IRecordBledFullyDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.blowdownRecordId = _data[\"blowdownRecordId\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.comment = _data[\"comment\"];\r\n this.p_BledFully_Initial = _data[\"p_BledFully_Initial\"];\r\n this.p_BledFully_Final = _data[\"p_BledFully_Final\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RecordBledFullyDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RecordBledFullyDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"blowdownRecordId\"] = this.blowdownRecordId;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"comment\"] = this.comment;\r\n data[\"p_BledFully_Initial\"] = this.p_BledFully_Initial;\r\n data[\"p_BledFully_Final\"] = this.p_BledFully_Final;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRecordBledFullyDTO {\r\n blowdownRecordId: number;\r\n startTime: Date;\r\n comment: string;\r\n p_BledFully_Initial: number;\r\n p_BledFully_Final: number;\r\n}\r\n\r\nexport class OperatorRecordDTO implements IOperatorRecordDTO {\r\n id!: number;\r\n startTime!: Date;\r\n reason!: string;\r\n lineVolume!: number;\r\n location!: string;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IOperatorRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.reason = _data[\"reason\"];\r\n this.lineVolume = _data[\"lineVolume\"];\r\n this.location = _data[\"location\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): OperatorRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OperatorRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"reason\"] = this.reason;\r\n data[\"lineVolume\"] = this.lineVolume;\r\n data[\"location\"] = this.location;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOperatorRecordDTO {\r\n id: number;\r\n startTime: Date;\r\n reason: string;\r\n lineVolume: number;\r\n location: string;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class FieldPermitTargetInputDTO implements IFieldPermitTargetInputDTO {\r\n id!: number;\r\n startTime!: Date;\r\n endTime!: Date;\r\n inputType!: PermitTargetInputType;\r\n gasType?: GasType | undefined;\r\n volume!: number;\r\n areaType!: AreaType;\r\n msInput!: MSInputDTO;\r\n mrmInput!: MRMInputDTO;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IFieldPermitTargetInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.msInput = new MSInputDTO();\r\n this.mrmInput = new MRMInputDTO();\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.inputType = _data[\"inputType\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.volume = _data[\"volume\"];\r\n this.areaType = _data[\"areaType\"];\r\n this.msInput = _data[\"msInput\"] ? MSInputDTO.fromJS(_data[\"msInput\"]) : new MSInputDTO();\r\n this.mrmInput = _data[\"mrmInput\"] ? MRMInputDTO.fromJS(_data[\"mrmInput\"]) : new MRMInputDTO();\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): FieldPermitTargetInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FieldPermitTargetInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"inputType\"] = this.inputType;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"volume\"] = this.volume;\r\n data[\"areaType\"] = this.areaType;\r\n data[\"msInput\"] = this.msInput ? this.msInput.toJSON() : undefined;\r\n data[\"mrmInput\"] = this.mrmInput ? this.mrmInput.toJSON() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFieldPermitTargetInputDTO {\r\n id: number;\r\n startTime: Date;\r\n endTime: Date;\r\n inputType: PermitTargetInputType;\r\n gasType?: GasType | undefined;\r\n volume: number;\r\n areaType: AreaType;\r\n msInput: MSInputDTO;\r\n mrmInput: MRMInputDTO;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum PermitTargetInputType {\r\n Permit = 0,\r\n Target = 1,\r\n}\r\n\r\nexport enum GasType {\r\n Dry = 0,\r\n Reservoir = 1,\r\n}\r\n\r\nexport enum AreaType {\r\n Field = 0,\r\n MRM = 1,\r\n}\r\n\r\nexport class MSInputDTO implements IMSInputDTO {\r\n mS15!: number;\r\n mS09!: number;\r\n mS14!: number;\r\n mS19!: number;\r\n mS08!: number;\r\n mS12!: number;\r\n mS05!: number;\r\n mS20!: number;\r\n mS17!: number;\r\n cfm!: number;\r\n mS21!: number;\r\n mS24!: number;\r\n mS26!: number;\r\n mS31!: number;\r\n mS33!: number;\r\n mS35!: number;\r\n mS52!: number;\r\n mS53!: number;\r\n mS54!: number;\r\n mS55!: number;\r\n kms!: number;\r\n\r\n constructor(data?: IMSInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.mS15 = _data[\"mS15\"];\r\n this.mS09 = _data[\"mS09\"];\r\n this.mS14 = _data[\"mS14\"];\r\n this.mS19 = _data[\"mS19\"];\r\n this.mS08 = _data[\"mS08\"];\r\n this.mS12 = _data[\"mS12\"];\r\n this.mS05 = _data[\"mS05\"];\r\n this.mS20 = _data[\"mS20\"];\r\n this.mS17 = _data[\"mS17\"];\r\n this.cfm = _data[\"cfm\"];\r\n this.mS21 = _data[\"mS21\"];\r\n this.mS24 = _data[\"mS24\"];\r\n this.mS26 = _data[\"mS26\"];\r\n this.mS31 = _data[\"mS31\"];\r\n this.mS33 = _data[\"mS33\"];\r\n this.mS35 = _data[\"mS35\"];\r\n this.mS52 = _data[\"mS52\"];\r\n this.mS53 = _data[\"mS53\"];\r\n this.mS54 = _data[\"mS54\"];\r\n this.mS55 = _data[\"mS55\"];\r\n this.kms = _data[\"kms\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MSInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MSInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"mS15\"] = this.mS15;\r\n data[\"mS09\"] = this.mS09;\r\n data[\"mS14\"] = this.mS14;\r\n data[\"mS19\"] = this.mS19;\r\n data[\"mS08\"] = this.mS08;\r\n data[\"mS12\"] = this.mS12;\r\n data[\"mS05\"] = this.mS05;\r\n data[\"mS20\"] = this.mS20;\r\n data[\"mS17\"] = this.mS17;\r\n data[\"cfm\"] = this.cfm;\r\n data[\"mS21\"] = this.mS21;\r\n data[\"mS24\"] = this.mS24;\r\n data[\"mS26\"] = this.mS26;\r\n data[\"mS31\"] = this.mS31;\r\n data[\"mS33\"] = this.mS33;\r\n data[\"mS35\"] = this.mS35;\r\n data[\"mS52\"] = this.mS52;\r\n data[\"mS53\"] = this.mS53;\r\n data[\"mS54\"] = this.mS54;\r\n data[\"mS55\"] = this.mS55;\r\n data[\"kms\"] = this.kms;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMSInputDTO {\r\n mS15: number;\r\n mS09: number;\r\n mS14: number;\r\n mS19: number;\r\n mS08: number;\r\n mS12: number;\r\n mS05: number;\r\n mS20: number;\r\n mS17: number;\r\n cfm: number;\r\n mS21: number;\r\n mS24: number;\r\n mS26: number;\r\n mS31: number;\r\n mS33: number;\r\n mS35: number;\r\n mS52: number;\r\n mS53: number;\r\n mS54: number;\r\n mS55: number;\r\n kms: number;\r\n}\r\n\r\nexport class MRMInputDTO implements IMRMInputDTO {\r\n hpFlare!: number;\r\n lpFlare!: number;\r\n evergreenBurner!: number;\r\n hpFlareBackUp!: number;\r\n lpFlareBackUp!: number;\r\n evergreenBurnerBackUp!: number;\r\n safetyFlare!: number;\r\n\r\n constructor(data?: IMRMInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.hpFlare = _data[\"hpFlare\"];\r\n this.lpFlare = _data[\"lpFlare\"];\r\n this.evergreenBurner = _data[\"evergreenBurner\"];\r\n this.hpFlareBackUp = _data[\"hpFlareBackUp\"];\r\n this.lpFlareBackUp = _data[\"lpFlareBackUp\"];\r\n this.evergreenBurnerBackUp = _data[\"evergreenBurnerBackUp\"];\r\n this.safetyFlare = _data[\"safetyFlare\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MRMInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MRMInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"hpFlare\"] = this.hpFlare;\r\n data[\"lpFlare\"] = this.lpFlare;\r\n data[\"evergreenBurner\"] = this.evergreenBurner;\r\n data[\"hpFlareBackUp\"] = this.hpFlareBackUp;\r\n data[\"lpFlareBackUp\"] = this.lpFlareBackUp;\r\n data[\"evergreenBurnerBackUp\"] = this.evergreenBurnerBackUp;\r\n data[\"safetyFlare\"] = this.safetyFlare;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMRMInputDTO {\r\n hpFlare: number;\r\n lpFlare: number;\r\n evergreenBurner: number;\r\n hpFlareBackUp: number;\r\n lpFlareBackUp: number;\r\n evergreenBurnerBackUp: number;\r\n safetyFlare: number;\r\n}\r\n\r\nexport class PermitTargetInputEditDTO implements IPermitTargetInputEditDTO {\r\n id!: number;\r\n volume!: number;\r\n\r\n constructor(data?: IPermitTargetInputEditDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.volume = _data[\"volume\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PermitTargetInputEditDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PermitTargetInputEditDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"volume\"] = this.volume;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPermitTargetInputEditDTO {\r\n id: number;\r\n volume: number;\r\n}\r\n\r\nexport class PerformanceMetricsPermitTargetInputDTO implements IPerformanceMetricsPermitTargetInputDTO {\r\n id!: number;\r\n startTime!: Date;\r\n inputType!: PermitTargetInputType;\r\n areaType!: AreaType;\r\n performanceMetricsMonths!: PerformanceMetricsMonthsInputDTO;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IPerformanceMetricsPermitTargetInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.performanceMetricsMonths = new PerformanceMetricsMonthsInputDTO();\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.inputType = _data[\"inputType\"];\r\n this.areaType = _data[\"areaType\"];\r\n this.performanceMetricsMonths = _data[\"performanceMetricsMonths\"] ? PerformanceMetricsMonthsInputDTO.fromJS(_data[\"performanceMetricsMonths\"]) : new PerformanceMetricsMonthsInputDTO();\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PerformanceMetricsPermitTargetInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PerformanceMetricsPermitTargetInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"inputType\"] = this.inputType;\r\n data[\"areaType\"] = this.areaType;\r\n data[\"performanceMetricsMonths\"] = this.performanceMetricsMonths ? this.performanceMetricsMonths.toJSON() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPerformanceMetricsPermitTargetInputDTO {\r\n id: number;\r\n startTime: Date;\r\n inputType: PermitTargetInputType;\r\n areaType: AreaType;\r\n performanceMetricsMonths: PerformanceMetricsMonthsInputDTO;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class PerformanceMetricsMonthsInputDTO implements IPerformanceMetricsMonthsInputDTO {\r\n id!: number;\r\n jan!: number;\r\n feb!: number;\r\n mar!: number;\r\n apr!: number;\r\n may!: number;\r\n jun!: number;\r\n jul!: number;\r\n aug!: number;\r\n sep!: number;\r\n oct!: number;\r\n nov!: number;\r\n dec!: number;\r\n\r\n constructor(data?: IPerformanceMetricsMonthsInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.jan = _data[\"jan\"];\r\n this.feb = _data[\"feb\"];\r\n this.mar = _data[\"mar\"];\r\n this.apr = _data[\"apr\"];\r\n this.may = _data[\"may\"];\r\n this.jun = _data[\"jun\"];\r\n this.jul = _data[\"jul\"];\r\n this.aug = _data[\"aug\"];\r\n this.sep = _data[\"sep\"];\r\n this.oct = _data[\"oct\"];\r\n this.nov = _data[\"nov\"];\r\n this.dec = _data[\"dec\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PerformanceMetricsMonthsInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PerformanceMetricsMonthsInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"jan\"] = this.jan;\r\n data[\"feb\"] = this.feb;\r\n data[\"mar\"] = this.mar;\r\n data[\"apr\"] = this.apr;\r\n data[\"may\"] = this.may;\r\n data[\"jun\"] = this.jun;\r\n data[\"jul\"] = this.jul;\r\n data[\"aug\"] = this.aug;\r\n data[\"sep\"] = this.sep;\r\n data[\"oct\"] = this.oct;\r\n data[\"nov\"] = this.nov;\r\n data[\"dec\"] = this.dec;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPerformanceMetricsMonthsInputDTO {\r\n id: number;\r\n jan: number;\r\n feb: number;\r\n mar: number;\r\n apr: number;\r\n may: number;\r\n jun: number;\r\n jul: number;\r\n aug: number;\r\n sep: number;\r\n oct: number;\r\n nov: number;\r\n dec: number;\r\n}\r\n\r\nexport class FacilityLocationListDTO implements IFacilityLocationListDTO {\r\n area!: FieldArea;\r\n msList!: MSDTO[];\r\n\r\n constructor(data?: IFacilityLocationListDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.msList = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.area = _data[\"area\"];\r\n if (Array.isArray(_data[\"msList\"])) {\r\n this.msList = [] as any;\r\n for (let item of _data[\"msList\"])\r\n this.msList!.push(MSDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): FacilityLocationListDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FacilityLocationListDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"area\"] = this.area;\r\n if (Array.isArray(this.msList)) {\r\n data[\"msList\"] = [];\r\n for (let item of this.msList)\r\n data[\"msList\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFacilityLocationListDTO {\r\n area: FieldArea;\r\n msList: MSDTO[];\r\n}\r\n\r\nexport class MSDTO implements IMSDTO {\r\n name!: string;\r\n locations!: LocationDTO[];\r\n\r\n constructor(data?: IMSDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.locations = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"locations\"])) {\r\n this.locations = [] as any;\r\n for (let item of _data[\"locations\"])\r\n this.locations!.push(LocationDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): MSDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MSDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.locations)) {\r\n data[\"locations\"] = [];\r\n for (let item of this.locations)\r\n data[\"locations\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMSDTO {\r\n name: string;\r\n locations: LocationDTO[];\r\n}\r\n\r\nexport class LocationDTO implements ILocationDTO {\r\n name!: string;\r\n\r\n constructor(data?: ILocationDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LocationDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LocationDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILocationDTO {\r\n name: string;\r\n}\r\n\r\nexport class HeatersRecordsDTO implements IHeatersRecordsDTO {\r\n equipment!: HeatersEquipment;\r\n logged?: Date | undefined;\r\n timestamp!: Date;\r\n motohours!: number;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n capacityNominal!: number;\r\n correlationCoeffficient!: number;\r\n capacityWorking!: number;\r\n energyProduced!: number;\r\n energyProducedMJ!: number;\r\n energyProducedKcal!: number;\r\n lowestHeatCombustion!: number;\r\n volumeGas!: number;\r\n volumeGasEfficiency!: number;\r\n volumeGas0CEfficiency!: number;\r\n efficiency!: number;\r\n isRecordCreated!: boolean;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IHeatersRecordsDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.equipment = _data[\"equipment\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.timestamp = _data[\"timestamp\"] ? new Date(_data[\"timestamp\"].toString()) : undefined;\r\n this.motohours = _data[\"motohours\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.capacityNominal = _data[\"capacityNominal\"];\r\n this.correlationCoeffficient = _data[\"correlationCoeffficient\"];\r\n this.capacityWorking = _data[\"capacityWorking\"];\r\n this.energyProduced = _data[\"energyProduced\"];\r\n this.energyProducedMJ = _data[\"energyProducedMJ\"];\r\n this.energyProducedKcal = _data[\"energyProducedKcal\"];\r\n this.lowestHeatCombustion = _data[\"lowestHeatCombustion\"];\r\n this.volumeGas = _data[\"volumeGas\"];\r\n this.volumeGasEfficiency = _data[\"volumeGasEfficiency\"];\r\n this.volumeGas0CEfficiency = _data[\"volumeGas0CEfficiency\"];\r\n this.efficiency = _data[\"efficiency\"];\r\n this.isRecordCreated = _data[\"isRecordCreated\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): HeatersRecordsDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new HeatersRecordsDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"equipment\"] = this.equipment;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n data[\"motohours\"] = this.motohours;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"capacityNominal\"] = this.capacityNominal;\r\n data[\"correlationCoeffficient\"] = this.correlationCoeffficient;\r\n data[\"capacityWorking\"] = this.capacityWorking;\r\n data[\"energyProduced\"] = this.energyProduced;\r\n data[\"energyProducedMJ\"] = this.energyProducedMJ;\r\n data[\"energyProducedKcal\"] = this.energyProducedKcal;\r\n data[\"lowestHeatCombustion\"] = this.lowestHeatCombustion;\r\n data[\"volumeGas\"] = this.volumeGas;\r\n data[\"volumeGasEfficiency\"] = this.volumeGasEfficiency;\r\n data[\"volumeGas0CEfficiency\"] = this.volumeGas0CEfficiency;\r\n data[\"efficiency\"] = this.efficiency;\r\n data[\"isRecordCreated\"] = this.isRecordCreated;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IHeatersRecordsDTO {\r\n equipment: HeatersEquipment;\r\n logged?: Date | undefined;\r\n timestamp: Date;\r\n motohours: number;\r\n createdBy: string;\r\n updatedBy: string;\r\n capacityNominal: number;\r\n correlationCoeffficient: number;\r\n capacityWorking: number;\r\n energyProduced: number;\r\n energyProducedMJ: number;\r\n energyProducedKcal: number;\r\n lowestHeatCombustion: number;\r\n volumeGas: number;\r\n volumeGasEfficiency: number;\r\n volumeGas0CEfficiency: number;\r\n efficiency: number;\r\n isRecordCreated: boolean;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum HeatersEquipment {\r\n BK1 = 0,\r\n BK2 = 1,\r\n BK3 = 2,\r\n BK4 = 3,\r\n BK5 = 4,\r\n BK6 = 5,\r\n BK7 = 6,\r\n BK8 = 7,\r\n BKCeh = 8,\r\n}\r\n\r\nexport class BoilerRecordsDTO implements IBoilerRecordsDTO {\r\n equipment!: BoilerEquipment;\r\n logged?: Date | undefined;\r\n timestamp!: Date;\r\n motohours!: number;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n capacityNominal!: number;\r\n correlationCoeffficient!: number;\r\n capacityWorking!: number;\r\n energyProduced!: number;\r\n energyProducedMJ!: number;\r\n energyProducedKcal!: number;\r\n lowestHeatCombustion!: number;\r\n volumeGas!: number;\r\n volumeGasEfficiency!: number;\r\n volumeGas0CEfficiency!: number;\r\n efficiency!: number;\r\n isRecordCreated!: boolean;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IBoilerRecordsDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.equipment = _data[\"equipment\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.timestamp = _data[\"timestamp\"] ? new Date(_data[\"timestamp\"].toString()) : undefined;\r\n this.motohours = _data[\"motohours\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.capacityNominal = _data[\"capacityNominal\"];\r\n this.correlationCoeffficient = _data[\"correlationCoeffficient\"];\r\n this.capacityWorking = _data[\"capacityWorking\"];\r\n this.energyProduced = _data[\"energyProduced\"];\r\n this.energyProducedMJ = _data[\"energyProducedMJ\"];\r\n this.energyProducedKcal = _data[\"energyProducedKcal\"];\r\n this.lowestHeatCombustion = _data[\"lowestHeatCombustion\"];\r\n this.volumeGas = _data[\"volumeGas\"];\r\n this.volumeGasEfficiency = _data[\"volumeGasEfficiency\"];\r\n this.volumeGas0CEfficiency = _data[\"volumeGas0CEfficiency\"];\r\n this.efficiency = _data[\"efficiency\"];\r\n this.isRecordCreated = _data[\"isRecordCreated\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): BoilerRecordsDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BoilerRecordsDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"equipment\"] = this.equipment;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n data[\"motohours\"] = this.motohours;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"capacityNominal\"] = this.capacityNominal;\r\n data[\"correlationCoeffficient\"] = this.correlationCoeffficient;\r\n data[\"capacityWorking\"] = this.capacityWorking;\r\n data[\"energyProduced\"] = this.energyProduced;\r\n data[\"energyProducedMJ\"] = this.energyProducedMJ;\r\n data[\"energyProducedKcal\"] = this.energyProducedKcal;\r\n data[\"lowestHeatCombustion\"] = this.lowestHeatCombustion;\r\n data[\"volumeGas\"] = this.volumeGas;\r\n data[\"volumeGasEfficiency\"] = this.volumeGasEfficiency;\r\n data[\"volumeGas0CEfficiency\"] = this.volumeGas0CEfficiency;\r\n data[\"efficiency\"] = this.efficiency;\r\n data[\"isRecordCreated\"] = this.isRecordCreated;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBoilerRecordsDTO {\r\n equipment: BoilerEquipment;\r\n logged?: Date | undefined;\r\n timestamp: Date;\r\n motohours: number;\r\n createdBy: string;\r\n updatedBy: string;\r\n capacityNominal: number;\r\n correlationCoeffficient: number;\r\n capacityWorking: number;\r\n energyProduced: number;\r\n energyProducedMJ: number;\r\n energyProducedKcal: number;\r\n lowestHeatCombustion: number;\r\n volumeGas: number;\r\n volumeGasEfficiency: number;\r\n volumeGas0CEfficiency: number;\r\n efficiency: number;\r\n isRecordCreated: boolean;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum BoilerEquipment {\r\n BAY1 = 0,\r\n BAY2 = 1,\r\n BAY3 = 2,\r\n BAY4 = 3,\r\n ASX = 4,\r\n TCOVTK2 = 5,\r\n TCOVTK3 = 6,\r\n TCOVTK4 = 7,\r\n TCOVTK5 = 8,\r\n TCOVTK6 = 9,\r\n TCOVTK7 = 10,\r\n TCOVTK8 = 11,\r\n TCOVTK9 = 12,\r\n TCOVTK10 = 13,\r\n OLDIbTK1 = 14,\r\n OLDIbTK2 = 15,\r\n OLDIbTK3 = 16,\r\n OLDIbTK4 = 17,\r\n S825M1 = 18,\r\n S825M2 = 19,\r\n S825M3 = 20,\r\n S825M4 = 21,\r\n JASPI1 = 22,\r\n JASPI2 = 23,\r\n NA1 = 24,\r\n NA2 = 25,\r\n NA3 = 26,\r\n}\r\n\r\nexport class MetersRecordsDTO implements IMetersRecordsDTO {\r\n equipment!: MetersEquipment;\r\n logged?: Date | undefined;\r\n timestamp!: Date;\r\n numberStartOfPeriod!: number;\r\n numberEndOfPeriod!: number;\r\n isTransitionWinter!: boolean;\r\n numberTransitionPeriod!: number;\r\n dateTransitionPeriod!: Date;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n consumption!: number;\r\n additionalValue!: number;\r\n pressure!: number;\r\n temperature!: number;\r\n outputValue20C!: number;\r\n outputValue0C!: number;\r\n\r\n constructor(data?: IMetersRecordsDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.equipment = _data[\"equipment\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.timestamp = _data[\"timestamp\"] ? new Date(_data[\"timestamp\"].toString()) : undefined;\r\n this.numberStartOfPeriod = _data[\"numberStartOfPeriod\"];\r\n this.numberEndOfPeriod = _data[\"numberEndOfPeriod\"];\r\n this.isTransitionWinter = _data[\"isTransitionWinter\"];\r\n this.numberTransitionPeriod = _data[\"numberTransitionPeriod\"];\r\n this.dateTransitionPeriod = _data[\"dateTransitionPeriod\"] ? new Date(_data[\"dateTransitionPeriod\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.consumption = _data[\"consumption\"];\r\n this.additionalValue = _data[\"additionalValue\"];\r\n this.pressure = _data[\"pressure\"];\r\n this.temperature = _data[\"temperature\"];\r\n this.outputValue20C = _data[\"outputValue20C\"];\r\n this.outputValue0C = _data[\"outputValue0C\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MetersRecordsDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MetersRecordsDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"equipment\"] = this.equipment;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n data[\"numberStartOfPeriod\"] = this.numberStartOfPeriod;\r\n data[\"numberEndOfPeriod\"] = this.numberEndOfPeriod;\r\n data[\"isTransitionWinter\"] = this.isTransitionWinter;\r\n data[\"numberTransitionPeriod\"] = this.numberTransitionPeriod;\r\n data[\"dateTransitionPeriod\"] = this.dateTransitionPeriod ? this.dateTransitionPeriod.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"consumption\"] = this.consumption;\r\n data[\"additionalValue\"] = this.additionalValue;\r\n data[\"pressure\"] = this.pressure;\r\n data[\"temperature\"] = this.temperature;\r\n data[\"outputValue20C\"] = this.outputValue20C;\r\n data[\"outputValue0C\"] = this.outputValue0C;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMetersRecordsDTO {\r\n equipment: MetersEquipment;\r\n logged?: Date | undefined;\r\n timestamp: Date;\r\n numberStartOfPeriod: number;\r\n numberEndOfPeriod: number;\r\n isTransitionWinter: boolean;\r\n numberTransitionPeriod: number;\r\n dateTransitionPeriod: Date;\r\n createdBy: string;\r\n updatedBy: string;\r\n consumption: number;\r\n additionalValue: number;\r\n pressure: number;\r\n temperature: number;\r\n outputValue20C: number;\r\n outputValue0C: number;\r\n}\r\n\r\nexport enum MetersEquipment {\r\n RPN = 0,\r\n Korolev = 1,\r\n GTES144 = 2,\r\n PromBaza = 3,\r\n PosTCO = 4,\r\n PosShanyrak = 5,\r\n ZCHS = 6,\r\n NSS = 7,\r\n PosOrken = 8,\r\n BetonnyZavod = 9,\r\n}\r\n\r\nexport class TotalTableDTO implements ITotalTableDTO {\r\n logged!: Date;\r\n timestamp!: Date;\r\n total20C!: number;\r\n total0C!: number;\r\n difference20C!: number;\r\n difference0C!: number;\r\n differencePerc20C!: number;\r\n differencePerc0C!: number;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ITotalTableDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.timestamp = _data[\"timestamp\"] ? new Date(_data[\"timestamp\"].toString()) : undefined;\r\n this.total20C = _data[\"total20C\"];\r\n this.total0C = _data[\"total0C\"];\r\n this.difference20C = _data[\"difference20C\"];\r\n this.difference0C = _data[\"difference0C\"];\r\n this.differencePerc20C = _data[\"differencePerc20C\"];\r\n this.differencePerc0C = _data[\"differencePerc0C\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): TotalTableDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TotalTableDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n data[\"total20C\"] = this.total20C;\r\n data[\"total0C\"] = this.total0C;\r\n data[\"difference20C\"] = this.difference20C;\r\n data[\"difference0C\"] = this.difference0C;\r\n data[\"differencePerc20C\"] = this.differencePerc20C;\r\n data[\"differencePerc0C\"] = this.differencePerc0C;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITotalTableDTO {\r\n logged: Date;\r\n timestamp: Date;\r\n total20C: number;\r\n total0C: number;\r\n difference20C: number;\r\n difference0C: number;\r\n differencePerc20C: number;\r\n differencePerc0C: number;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class IBMOARecordsDTO implements IIBMOARecordsDTO {\r\n logged!: Date;\r\n timestamp!: Date;\r\n volumeGasYear!: number;\r\n motoHoursYear!: number;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n monthsRecords!: IBMOAMonthsRows[];\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IIBMOARecordsDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.monthsRecords = [];\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.timestamp = _data[\"timestamp\"] ? new Date(_data[\"timestamp\"].toString()) : undefined;\r\n this.volumeGasYear = _data[\"volumeGasYear\"];\r\n this.motoHoursYear = _data[\"motoHoursYear\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n if (Array.isArray(_data[\"monthsRecords\"])) {\r\n this.monthsRecords = [] as any;\r\n for (let item of _data[\"monthsRecords\"])\r\n this.monthsRecords!.push(IBMOAMonthsRows.fromJS(item));\r\n }\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): IBMOARecordsDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IBMOARecordsDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n data[\"volumeGasYear\"] = this.volumeGasYear;\r\n data[\"motoHoursYear\"] = this.motoHoursYear;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n if (Array.isArray(this.monthsRecords)) {\r\n data[\"monthsRecords\"] = [];\r\n for (let item of this.monthsRecords)\r\n data[\"monthsRecords\"].push(item.toJSON());\r\n }\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIBMOARecordsDTO {\r\n logged: Date;\r\n timestamp: Date;\r\n volumeGasYear: number;\r\n motoHoursYear: number;\r\n createdBy: string;\r\n updatedBy: string;\r\n monthsRecords: IBMOAMonthsRows[];\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class IBMOAMonthsRows implements IIBMOAMonthsRows {\r\n dateMonth!: Date;\r\n daysOfMonth!: number;\r\n volumeGas20C!: number;\r\n volumeGas0C!: number;\r\n\r\n constructor(data?: IIBMOAMonthsRows) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.dateMonth = _data[\"dateMonth\"] ? new Date(_data[\"dateMonth\"].toString()) : undefined;\r\n this.daysOfMonth = _data[\"daysOfMonth\"];\r\n this.volumeGas20C = _data[\"volumeGas20C\"];\r\n this.volumeGas0C = _data[\"volumeGas0C\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): IBMOAMonthsRows {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new IBMOAMonthsRows();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"dateMonth\"] = this.dateMonth ? this.dateMonth.toISOString() : undefined;\r\n data[\"daysOfMonth\"] = this.daysOfMonth;\r\n data[\"volumeGas20C\"] = this.volumeGas20C;\r\n data[\"volumeGas0C\"] = this.volumeGas0C;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIBMOAMonthsRows {\r\n dateMonth: Date;\r\n daysOfMonth: number;\r\n volumeGas20C: number;\r\n volumeGas0C: number;\r\n}\r\n\r\nexport class MonthlyReportDTO implements IMonthlyReportDTO {\r\n logged!: Date;\r\n timestamp!: Date;\r\n rpnReservoirPark20!: number;\r\n rpnReservoirPark0!: number;\r\n rpnReservoirParkComment!: string;\r\n korolev20!: number;\r\n korolev0!: number;\r\n korolevComment!: string;\r\n gteS14420!: number;\r\n gteS1440!: number;\r\n gteS144Comment!: string;\r\n prombaza20!: number;\r\n prombaza0!: number;\r\n prombazaComment!: string;\r\n promTCO20!: number;\r\n promTCO0!: number;\r\n promTCComment!: string;\r\n posShanyrak20!: number;\r\n posShanyrak0!: number;\r\n posShanyrakComment!: string;\r\n posOrken20!: number;\r\n posOrken0!: number;\r\n posOrkenComment!: string;\r\n kotelnayaPromBazi20!: number;\r\n kotelnayaPromBazi0!: number;\r\n kotelnayaPromBaziComment!: string;\r\n kotelnayaIBMOA20!: number;\r\n kotelnayaIBMOA0!: number;\r\n kotelnayaIBMOAComment!: string;\r\n estakada20!: number;\r\n estakada0!: number;\r\n estakadaComment!: string;\r\n tovarniPark20!: number;\r\n tovarniPark0!: number;\r\n tovarniParkComment!: string;\r\n bazaBureniya20!: number;\r\n bazaBureniya0!: number;\r\n bazaBureniyaComment!: string;\r\n betonnyZavod20!: number;\r\n betonnyZavod0!: number;\r\n betonnyZavodComment!: string;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IMonthlyReportDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.timestamp = _data[\"timestamp\"] ? new Date(_data[\"timestamp\"].toString()) : undefined;\r\n this.rpnReservoirPark20 = _data[\"rpnReservoirPark20\"];\r\n this.rpnReservoirPark0 = _data[\"rpnReservoirPark0\"];\r\n this.rpnReservoirParkComment = _data[\"rpnReservoirParkComment\"];\r\n this.korolev20 = _data[\"korolev20\"];\r\n this.korolev0 = _data[\"korolev0\"];\r\n this.korolevComment = _data[\"korolevComment\"];\r\n this.gteS14420 = _data[\"gteS14420\"];\r\n this.gteS1440 = _data[\"gteS1440\"];\r\n this.gteS144Comment = _data[\"gteS144Comment\"];\r\n this.prombaza20 = _data[\"prombaza20\"];\r\n this.prombaza0 = _data[\"prombaza0\"];\r\n this.prombazaComment = _data[\"prombazaComment\"];\r\n this.promTCO20 = _data[\"promTCO20\"];\r\n this.promTCO0 = _data[\"promTCO0\"];\r\n this.promTCComment = _data[\"promTCComment\"];\r\n this.posShanyrak20 = _data[\"posShanyrak20\"];\r\n this.posShanyrak0 = _data[\"posShanyrak0\"];\r\n this.posShanyrakComment = _data[\"posShanyrakComment\"];\r\n this.posOrken20 = _data[\"posOrken20\"];\r\n this.posOrken0 = _data[\"posOrken0\"];\r\n this.posOrkenComment = _data[\"posOrkenComment\"];\r\n this.kotelnayaPromBazi20 = _data[\"kotelnayaPromBazi20\"];\r\n this.kotelnayaPromBazi0 = _data[\"kotelnayaPromBazi0\"];\r\n this.kotelnayaPromBaziComment = _data[\"kotelnayaPromBaziComment\"];\r\n this.kotelnayaIBMOA20 = _data[\"kotelnayaIBMOA20\"];\r\n this.kotelnayaIBMOA0 = _data[\"kotelnayaIBMOA0\"];\r\n this.kotelnayaIBMOAComment = _data[\"kotelnayaIBMOAComment\"];\r\n this.estakada20 = _data[\"estakada20\"];\r\n this.estakada0 = _data[\"estakada0\"];\r\n this.estakadaComment = _data[\"estakadaComment\"];\r\n this.tovarniPark20 = _data[\"tovarniPark20\"];\r\n this.tovarniPark0 = _data[\"tovarniPark0\"];\r\n this.tovarniParkComment = _data[\"tovarniParkComment\"];\r\n this.bazaBureniya20 = _data[\"bazaBureniya20\"];\r\n this.bazaBureniya0 = _data[\"bazaBureniya0\"];\r\n this.bazaBureniyaComment = _data[\"bazaBureniyaComment\"];\r\n this.betonnyZavod20 = _data[\"betonnyZavod20\"];\r\n this.betonnyZavod0 = _data[\"betonnyZavod0\"];\r\n this.betonnyZavodComment = _data[\"betonnyZavodComment\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): MonthlyReportDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MonthlyReportDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n data[\"rpnReservoirPark20\"] = this.rpnReservoirPark20;\r\n data[\"rpnReservoirPark0\"] = this.rpnReservoirPark0;\r\n data[\"rpnReservoirParkComment\"] = this.rpnReservoirParkComment;\r\n data[\"korolev20\"] = this.korolev20;\r\n data[\"korolev0\"] = this.korolev0;\r\n data[\"korolevComment\"] = this.korolevComment;\r\n data[\"gteS14420\"] = this.gteS14420;\r\n data[\"gteS1440\"] = this.gteS1440;\r\n data[\"gteS144Comment\"] = this.gteS144Comment;\r\n data[\"prombaza20\"] = this.prombaza20;\r\n data[\"prombaza0\"] = this.prombaza0;\r\n data[\"prombazaComment\"] = this.prombazaComment;\r\n data[\"promTCO20\"] = this.promTCO20;\r\n data[\"promTCO0\"] = this.promTCO0;\r\n data[\"promTCComment\"] = this.promTCComment;\r\n data[\"posShanyrak20\"] = this.posShanyrak20;\r\n data[\"posShanyrak0\"] = this.posShanyrak0;\r\n data[\"posShanyrakComment\"] = this.posShanyrakComment;\r\n data[\"posOrken20\"] = this.posOrken20;\r\n data[\"posOrken0\"] = this.posOrken0;\r\n data[\"posOrkenComment\"] = this.posOrkenComment;\r\n data[\"kotelnayaPromBazi20\"] = this.kotelnayaPromBazi20;\r\n data[\"kotelnayaPromBazi0\"] = this.kotelnayaPromBazi0;\r\n data[\"kotelnayaPromBaziComment\"] = this.kotelnayaPromBaziComment;\r\n data[\"kotelnayaIBMOA20\"] = this.kotelnayaIBMOA20;\r\n data[\"kotelnayaIBMOA0\"] = this.kotelnayaIBMOA0;\r\n data[\"kotelnayaIBMOAComment\"] = this.kotelnayaIBMOAComment;\r\n data[\"estakada20\"] = this.estakada20;\r\n data[\"estakada0\"] = this.estakada0;\r\n data[\"estakadaComment\"] = this.estakadaComment;\r\n data[\"tovarniPark20\"] = this.tovarniPark20;\r\n data[\"tovarniPark0\"] = this.tovarniPark0;\r\n data[\"tovarniParkComment\"] = this.tovarniParkComment;\r\n data[\"bazaBureniya20\"] = this.bazaBureniya20;\r\n data[\"bazaBureniya0\"] = this.bazaBureniya0;\r\n data[\"bazaBureniyaComment\"] = this.bazaBureniyaComment;\r\n data[\"betonnyZavod20\"] = this.betonnyZavod20;\r\n data[\"betonnyZavod0\"] = this.betonnyZavod0;\r\n data[\"betonnyZavodComment\"] = this.betonnyZavodComment;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMonthlyReportDTO {\r\n logged: Date;\r\n timestamp: Date;\r\n rpnReservoirPark20: number;\r\n rpnReservoirPark0: number;\r\n rpnReservoirParkComment: string;\r\n korolev20: number;\r\n korolev0: number;\r\n korolevComment: string;\r\n gteS14420: number;\r\n gteS1440: number;\r\n gteS144Comment: string;\r\n prombaza20: number;\r\n prombaza0: number;\r\n prombazaComment: string;\r\n promTCO20: number;\r\n promTCO0: number;\r\n promTCComment: string;\r\n posShanyrak20: number;\r\n posShanyrak0: number;\r\n posShanyrakComment: string;\r\n posOrken20: number;\r\n posOrken0: number;\r\n posOrkenComment: string;\r\n kotelnayaPromBazi20: number;\r\n kotelnayaPromBazi0: number;\r\n kotelnayaPromBaziComment: string;\r\n kotelnayaIBMOA20: number;\r\n kotelnayaIBMOA0: number;\r\n kotelnayaIBMOAComment: string;\r\n estakada20: number;\r\n estakada0: number;\r\n estakadaComment: string;\r\n tovarniPark20: number;\r\n tovarniPark0: number;\r\n tovarniParkComment: string;\r\n bazaBureniya20: number;\r\n bazaBureniya0: number;\r\n bazaBureniyaComment: string;\r\n betonnyZavod20: number;\r\n betonnyZavod0: number;\r\n betonnyZavodComment: string;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class MonthlyReportCommentsDTO implements IMonthlyReportCommentsDTO {\r\n logged!: Date;\r\n timestamp!: Date;\r\n rowType!: MonthlyReportRowType;\r\n comment!: string;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IMonthlyReportCommentsDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.timestamp = _data[\"timestamp\"] ? new Date(_data[\"timestamp\"].toString()) : undefined;\r\n this.rowType = _data[\"rowType\"];\r\n this.comment = _data[\"comment\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): MonthlyReportCommentsDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MonthlyReportCommentsDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n data[\"rowType\"] = this.rowType;\r\n data[\"comment\"] = this.comment;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMonthlyReportCommentsDTO {\r\n logged: Date;\r\n timestamp: Date;\r\n rowType: MonthlyReportRowType;\r\n comment: string;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum MonthlyReportRowType {\r\n RPN = 0,\r\n Korolev = 1,\r\n GTES = 2,\r\n PromBaza = 3,\r\n PosTCO = 4,\r\n PosShanyrak = 5,\r\n KotelnayaPrombazi = 6,\r\n KotelnayaIBMOA = 7,\r\n Estakada = 8,\r\n Park = 9,\r\n BazaBurenya = 10,\r\n PosOrken = 11,\r\n BetonnyZavod = 12,\r\n}\r\n\r\nexport class CalculatedStreamDTO implements ICalculatedStreamDTO {\r\n timeStamp!: Date;\r\n isApproved!: boolean;\r\n isConfirmed!: boolean;\r\n totalMass!: number;\r\n totalVolume!: number;\r\n elementName!: string;\r\n streamId!: number;\r\n type!: KTLFGDStreamType;\r\n order!: number;\r\n status!: StreamStatuses;\r\n\r\n constructor(data?: ICalculatedStreamDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.isApproved = _data[\"isApproved\"];\r\n this.isConfirmed = _data[\"isConfirmed\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.elementName = _data[\"elementName\"];\r\n this.streamId = _data[\"streamId\"];\r\n this.type = _data[\"type\"];\r\n this.order = _data[\"order\"];\r\n this.status = _data[\"status\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CalculatedStreamDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CalculatedStreamDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"isApproved\"] = this.isApproved;\r\n data[\"isConfirmed\"] = this.isConfirmed;\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"elementName\"] = this.elementName;\r\n data[\"streamId\"] = this.streamId;\r\n data[\"type\"] = this.type;\r\n data[\"order\"] = this.order;\r\n data[\"status\"] = this.status;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICalculatedStreamDTO {\r\n timeStamp: Date;\r\n isApproved: boolean;\r\n isConfirmed: boolean;\r\n totalMass: number;\r\n totalVolume: number;\r\n elementName: string;\r\n streamId: number;\r\n type: KTLFGDStreamType;\r\n order: number;\r\n status: StreamStatuses;\r\n}\r\n\r\nexport enum KTLFGDStreamType {\r\n Calculates = 0,\r\n DailyInputs = 1,\r\n Flarings = 2,\r\n FromPreviousMonthBalance = 3,\r\n SalesGas = 4,\r\n}\r\n\r\nexport enum StreamStatuses {\r\n Normal = 0,\r\n Modified = 1,\r\n Issue = 2,\r\n}\r\n\r\nexport class DailyReportInputRecordDTO implements IDailyReportInputRecordDTO {\r\n id!: number;\r\n crudeProductionMass!: number;\r\n propaneProductionMass!: number;\r\n butaneProductionMass!: number;\r\n kulsaryCustodyTransferVolumeKsmCube!: number;\r\n sulphurMass!: number;\r\n fuelGasToCNS!: boolean;\r\n y1504A!: boolean;\r\n y1504B!: boolean;\r\n startTime!: Date;\r\n\r\n constructor(data?: IDailyReportInputRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.crudeProductionMass = _data[\"crudeProductionMass\"];\r\n this.propaneProductionMass = _data[\"propaneProductionMass\"];\r\n this.butaneProductionMass = _data[\"butaneProductionMass\"];\r\n this.kulsaryCustodyTransferVolumeKsmCube = _data[\"kulsaryCustodyTransferVolumeKsmCube\"];\r\n this.sulphurMass = _data[\"sulphurMass\"];\r\n this.fuelGasToCNS = _data[\"fuelGasToCNS\"];\r\n this.y1504A = _data[\"y1504A\"];\r\n this.y1504B = _data[\"y1504B\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DailyReportInputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DailyReportInputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"crudeProductionMass\"] = this.crudeProductionMass;\r\n data[\"propaneProductionMass\"] = this.propaneProductionMass;\r\n data[\"butaneProductionMass\"] = this.butaneProductionMass;\r\n data[\"kulsaryCustodyTransferVolumeKsmCube\"] = this.kulsaryCustodyTransferVolumeKsmCube;\r\n data[\"sulphurMass\"] = this.sulphurMass;\r\n data[\"fuelGasToCNS\"] = this.fuelGasToCNS;\r\n data[\"y1504A\"] = this.y1504A;\r\n data[\"y1504B\"] = this.y1504B;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDailyReportInputRecordDTO {\r\n id: number;\r\n crudeProductionMass: number;\r\n propaneProductionMass: number;\r\n butaneProductionMass: number;\r\n kulsaryCustodyTransferVolumeKsmCube: number;\r\n sulphurMass: number;\r\n fuelGasToCNS: boolean;\r\n y1504A: boolean;\r\n y1504B: boolean;\r\n startTime: Date;\r\n}\r\n\r\nexport class MonthlyInputRecordDTO implements IMonthlyInputRecordDTO {\r\n id!: number;\r\n additionalCompanyUse!: number;\r\n customerUse!: number;\r\n fuelGasToKTLandOldBoilerHouse!: number;\r\n dryGasToU800DMCTr5!: number;\r\n startTime!: Date;\r\n\r\n constructor(data?: IMonthlyInputRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.additionalCompanyUse = _data[\"additionalCompanyUse\"];\r\n this.customerUse = _data[\"customerUse\"];\r\n this.fuelGasToKTLandOldBoilerHouse = _data[\"fuelGasToKTLandOldBoilerHouse\"];\r\n this.dryGasToU800DMCTr5 = _data[\"dryGasToU800DMCTr5\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): MonthlyInputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MonthlyInputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"additionalCompanyUse\"] = this.additionalCompanyUse;\r\n data[\"customerUse\"] = this.customerUse;\r\n data[\"fuelGasToKTLandOldBoilerHouse\"] = this.fuelGasToKTLandOldBoilerHouse;\r\n data[\"dryGasToU800DMCTr5\"] = this.dryGasToU800DMCTr5;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMonthlyInputRecordDTO {\r\n id: number;\r\n additionalCompanyUse: number;\r\n customerUse: number;\r\n fuelGasToKTLandOldBoilerHouse: number;\r\n dryGasToU800DMCTr5: number;\r\n startTime: Date;\r\n}\r\n\r\nexport class KTLFGDOverrideRecordDTO implements IKTLFGDOverrideRecordDTO {\r\n streamId!: number;\r\n startTime!: Date;\r\n value!: number;\r\n type!: ValueType;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IKTLFGDOverrideRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.streamId = _data[\"streamId\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.value = _data[\"value\"];\r\n this.type = _data[\"type\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLFGDOverrideRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLFGDOverrideRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"streamId\"] = this.streamId;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"value\"] = this.value;\r\n data[\"type\"] = this.type;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLFGDOverrideRecordDTO {\r\n streamId: number;\r\n startTime: Date;\r\n value: number;\r\n type: ValueType;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum ValueType {\r\n Volume = 0,\r\n Mass = 1,\r\n}\r\n\r\nexport enum Plant {\r\n KTL = 0,\r\n SGP = 1,\r\n}\r\n\r\nexport class FlareSwitcherDTO implements IFlareSwitcherDTO {\r\n unitType!: UnitList;\r\n facility!: KTLTrains;\r\n startTime!: Date;\r\n flare!: string;\r\n\r\n constructor(data?: IFlareSwitcherDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.unitType = _data[\"unitType\"];\r\n this.facility = _data[\"facility\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.flare = _data[\"flare\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FlareSwitcherDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FlareSwitcherDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"unitType\"] = this.unitType;\r\n data[\"facility\"] = this.facility;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"flare\"] = this.flare;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFlareSwitcherDTO {\r\n unitType: UnitList;\r\n facility: KTLTrains;\r\n startTime: Date;\r\n flare: string;\r\n}\r\n\r\nexport enum UnitList {\r\n U200 = 0,\r\n U300 = 1,\r\n U700 = 2,\r\n U800 = 3,\r\n DMC1AND2 = 4,\r\n U400AND500 = 5,\r\n FiveSixHundred = 6,\r\n GTS = 7,\r\n U1700 = 8,\r\n}\r\n\r\nexport enum KTLTrains {\r\n KTL1 = 0,\r\n KTL2 = 1,\r\n KTL1andKTL2 = 2,\r\n SGP = 3,\r\n}\r\n\r\nexport class SGPFlareSwitcherDTO implements ISGPFlareSwitcherDTO {\r\n startTime!: Date;\r\n flare!: SGPFlareType;\r\n\r\n constructor(data?: ISGPFlareSwitcherDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.flare = _data[\"flare\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGPFlareSwitcherDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGPFlareSwitcherDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"flare\"] = this.flare;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGPFlareSwitcherDTO {\r\n startTime: Date;\r\n flare: SGPFlareType;\r\n}\r\n\r\nexport enum SGPFlareType {\r\n LP = 0,\r\n LPReserve = 1,\r\n}\r\n\r\nexport class PagedListOfGetFlareSwitcherDTO implements IPagedListOfGetFlareSwitcherDTO {\r\n pageNumber!: number;\r\n pageSize!: number;\r\n totalCount!: number;\r\n totalPages!: number;\r\n hasPreviousPage!: boolean;\r\n hasNextPage!: boolean;\r\n items!: GetFlareSwitcherDTO[];\r\n\r\n constructor(data?: IPagedListOfGetFlareSwitcherDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.items = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pageNumber = _data[\"pageNumber\"];\r\n this.pageSize = _data[\"pageSize\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n this.totalPages = _data[\"totalPages\"];\r\n this.hasPreviousPage = _data[\"hasPreviousPage\"];\r\n this.hasNextPage = _data[\"hasNextPage\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetFlareSwitcherDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedListOfGetFlareSwitcherDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedListOfGetFlareSwitcherDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pageNumber\"] = this.pageNumber;\r\n data[\"pageSize\"] = this.pageSize;\r\n data[\"totalCount\"] = this.totalCount;\r\n data[\"totalPages\"] = this.totalPages;\r\n data[\"hasPreviousPage\"] = this.hasPreviousPage;\r\n data[\"hasNextPage\"] = this.hasNextPage;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedListOfGetFlareSwitcherDTO {\r\n pageNumber: number;\r\n pageSize: number;\r\n totalCount: number;\r\n totalPages: number;\r\n hasPreviousPage: boolean;\r\n hasNextPage: boolean;\r\n items: GetFlareSwitcherDTO[];\r\n}\r\n\r\nexport class GetFlareSwitcherDTO extends FlareSwitcherDTO implements IGetFlareSwitcherDTO {\r\n logged?: Date | undefined;\r\n loggedBy!: string;\r\n\r\n constructor(data?: IGetFlareSwitcherDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.loggedBy = _data[\"loggedBy\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): GetFlareSwitcherDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetFlareSwitcherDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"loggedBy\"] = this.loggedBy;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetFlareSwitcherDTO extends IFlareSwitcherDTO {\r\n logged?: Date | undefined;\r\n loggedBy: string;\r\n}\r\n\r\nexport class GetFacilityAndUnitMappingDTO implements IGetFacilityAndUnitMappingDTO {\r\n facility!: KTLTrains;\r\n unitFlareMap!: UnitAndFlareMappingDTO[];\r\n\r\n constructor(data?: IGetFacilityAndUnitMappingDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.unitFlareMap = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.facility = _data[\"facility\"];\r\n if (Array.isArray(_data[\"unitFlareMap\"])) {\r\n this.unitFlareMap = [] as any;\r\n for (let item of _data[\"unitFlareMap\"])\r\n this.unitFlareMap!.push(UnitAndFlareMappingDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetFacilityAndUnitMappingDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetFacilityAndUnitMappingDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"facility\"] = this.facility;\r\n if (Array.isArray(this.unitFlareMap)) {\r\n data[\"unitFlareMap\"] = [];\r\n for (let item of this.unitFlareMap)\r\n data[\"unitFlareMap\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetFacilityAndUnitMappingDTO {\r\n facility: KTLTrains;\r\n unitFlareMap: UnitAndFlareMappingDTO[];\r\n}\r\n\r\nexport class UnitAndFlareMappingDTO implements IUnitAndFlareMappingDTO {\r\n unitType!: UnitList;\r\n flare!: string[];\r\n\r\n constructor(data?: IUnitAndFlareMappingDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.flare = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.unitType = _data[\"unitType\"];\r\n if (Array.isArray(_data[\"flare\"])) {\r\n this.flare = [] as any;\r\n for (let item of _data[\"flare\"])\r\n this.flare!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): UnitAndFlareMappingDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UnitAndFlareMappingDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"unitType\"] = this.unitType;\r\n if (Array.isArray(this.flare)) {\r\n data[\"flare\"] = [];\r\n for (let item of this.flare)\r\n data[\"flare\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUnitAndFlareMappingDTO {\r\n unitType: UnitList;\r\n flare: string[];\r\n}\r\n\r\nexport class ChemicalCompounds implements IChemicalCompounds {\r\n mw!: number;\r\n c1!: number;\r\n c2!: number;\r\n c2H5SH!: number;\r\n c3!: number;\r\n c4H9SH!: number;\r\n c6Plus!: number;\r\n cH3SH!: number;\r\n cO2!: number;\r\n cos!: number;\r\n h2O!: number;\r\n h2S!: number;\r\n iC3H7SH!: number;\r\n iC4!: number;\r\n iC5!: number;\r\n n2!: number;\r\n h2!: number;\r\n he!: number;\r\n nC3H7SH!: number;\r\n nC4!: number;\r\n nC5!: number;\r\n o2!: number;\r\n\r\n constructor(data?: IChemicalCompounds) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.mw = _data[\"mw\"];\r\n this.c1 = _data[\"c1\"];\r\n this.c2 = _data[\"c2\"];\r\n this.c2H5SH = _data[\"c2H5SH\"];\r\n this.c3 = _data[\"c3\"];\r\n this.c4H9SH = _data[\"c4H9SH\"];\r\n this.c6Plus = _data[\"c6Plus\"];\r\n this.cH3SH = _data[\"cH3SH\"];\r\n this.cO2 = _data[\"cO2\"];\r\n this.cos = _data[\"cos\"];\r\n this.h2O = _data[\"h2O\"];\r\n this.h2S = _data[\"h2S\"];\r\n this.iC3H7SH = _data[\"iC3H7SH\"];\r\n this.iC4 = _data[\"iC4\"];\r\n this.iC5 = _data[\"iC5\"];\r\n this.n2 = _data[\"n2\"];\r\n this.h2 = _data[\"h2\"];\r\n this.he = _data[\"he\"];\r\n this.nC3H7SH = _data[\"nC3H7SH\"];\r\n this.nC4 = _data[\"nC4\"];\r\n this.nC5 = _data[\"nC5\"];\r\n this.o2 = _data[\"o2\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChemicalCompounds {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChemicalCompounds();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"mw\"] = this.mw;\r\n data[\"c1\"] = this.c1;\r\n data[\"c2\"] = this.c2;\r\n data[\"c2H5SH\"] = this.c2H5SH;\r\n data[\"c3\"] = this.c3;\r\n data[\"c4H9SH\"] = this.c4H9SH;\r\n data[\"c6Plus\"] = this.c6Plus;\r\n data[\"cH3SH\"] = this.cH3SH;\r\n data[\"cO2\"] = this.cO2;\r\n data[\"cos\"] = this.cos;\r\n data[\"h2O\"] = this.h2O;\r\n data[\"h2S\"] = this.h2S;\r\n data[\"iC3H7SH\"] = this.iC3H7SH;\r\n data[\"iC4\"] = this.iC4;\r\n data[\"iC5\"] = this.iC5;\r\n data[\"n2\"] = this.n2;\r\n data[\"h2\"] = this.h2;\r\n data[\"he\"] = this.he;\r\n data[\"nC3H7SH\"] = this.nC3H7SH;\r\n data[\"nC4\"] = this.nC4;\r\n data[\"nC5\"] = this.nC5;\r\n data[\"o2\"] = this.o2;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChemicalCompounds {\r\n mw: number;\r\n c1: number;\r\n c2: number;\r\n c2H5SH: number;\r\n c3: number;\r\n c4H9SH: number;\r\n c6Plus: number;\r\n cH3SH: number;\r\n cO2: number;\r\n cos: number;\r\n h2O: number;\r\n h2S: number;\r\n iC3H7SH: number;\r\n iC4: number;\r\n iC5: number;\r\n n2: number;\r\n h2: number;\r\n he: number;\r\n nC3H7SH: number;\r\n nC4: number;\r\n nC5: number;\r\n o2: number;\r\n}\r\n\r\nexport class ChemicalCompoundKTLSGP extends ChemicalCompounds implements IChemicalCompoundKTLSGP {\r\n c2H5SSC2H5!: number;\r\n c3H7SSC3H7!: number;\r\n cH3SSCH3!: number;\r\n c4H9SSC4H9!: number;\r\n\r\n constructor(data?: IChemicalCompoundKTLSGP) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.c2H5SSC2H5 = _data[\"c2H5SSC2H5\"];\r\n this.c3H7SSC3H7 = _data[\"c3H7SSC3H7\"];\r\n this.cH3SSCH3 = _data[\"cH3SSCH3\"];\r\n this.c4H9SSC4H9 = _data[\"c4H9SSC4H9\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): ChemicalCompoundKTLSGP {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChemicalCompoundKTLSGP();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"c2H5SSC2H5\"] = this.c2H5SSC2H5;\r\n data[\"c3H7SSC3H7\"] = this.c3H7SSC3H7;\r\n data[\"cH3SSCH3\"] = this.cH3SSCH3;\r\n data[\"c4H9SSC4H9\"] = this.c4H9SSC4H9;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChemicalCompoundKTLSGP extends IChemicalCompounds {\r\n c2H5SSC2H5: number;\r\n c3H7SSC3H7: number;\r\n cH3SSCH3: number;\r\n c4H9SSC4H9: number;\r\n}\r\n\r\nexport class InputRecordDTO extends ChemicalCompoundKTLSGP implements IInputRecordDTO {\r\n id!: number;\r\n inputType!: InputRecordType;\r\n streamid!: string;\r\n startTime!: Date;\r\n endTime?: Date | undefined;\r\n category!: string;\r\n comments!: string;\r\n reason!: string;\r\n value!: number;\r\n totalMass!: number;\r\n isUsingCC!: number;\r\n isPermitForm!: boolean;\r\n permitInput!: boolean;\r\n gasType!: string;\r\n plant!: string;\r\n flare!: string;\r\n editType!: string;\r\n ccType!: string;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IInputRecordDTO) {\r\n super(data);\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.inputType = _data[\"inputType\"];\r\n this.streamid = _data[\"streamid\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.category = _data[\"Category\"];\r\n this.comments = _data[\"Comments\"];\r\n this.reason = _data[\"Reason\"];\r\n this.value = _data[\"Value\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n this.isUsingCC = _data[\"isUsingCC\"];\r\n this.isPermitForm = _data[\"isPermitForm\"];\r\n this.permitInput = _data[\"permitInput\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.plant = _data[\"plant\"];\r\n this.flare = _data[\"flare\"];\r\n this.editType = _data[\"editType\"];\r\n this.ccType = _data[\"ccType\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static override fromJS(data: any): InputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"inputType\"] = this.inputType;\r\n data[\"streamid\"] = this.streamid;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"Category\"] = this.category;\r\n data[\"Comments\"] = this.comments;\r\n data[\"Reason\"] = this.reason;\r\n data[\"Value\"] = this.value;\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"isUsingCC\"] = this.isUsingCC;\r\n data[\"isPermitForm\"] = this.isPermitForm;\r\n data[\"permitInput\"] = this.permitInput;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"plant\"] = this.plant;\r\n data[\"flare\"] = this.flare;\r\n data[\"editType\"] = this.editType;\r\n data[\"ccType\"] = this.ccType;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInputRecordDTO extends IChemicalCompoundKTLSGP {\r\n id: number;\r\n inputType: InputRecordType;\r\n streamid: string;\r\n startTime: Date;\r\n endTime?: Date | undefined;\r\n category: string;\r\n comments: string;\r\n reason: string;\r\n value: number;\r\n totalMass: number;\r\n isUsingCC: number;\r\n isPermitForm: boolean;\r\n permitInput: boolean;\r\n gasType: string;\r\n plant: string;\r\n flare: string;\r\n editType: string;\r\n ccType: string;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum InputRecordType {\r\n Flaring = 0,\r\n Leakage = 1,\r\n Constant = 2,\r\n Bypass = 3,\r\n Switching = 4,\r\n Target = 5,\r\n Permit = 6,\r\n}\r\n\r\nexport class F205TotalDTO implements IF205TotalDTO {\r\n startTime!: Date;\r\n endTime!: Date;\r\n f205_1!: F205DTO;\r\n f205_2!: F205DTO;\r\n f205_3!: F205DTO;\r\n f205_4!: F205DTO;\r\n f205_5!: F205DTO;\r\n\r\n constructor(data?: IF205TotalDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.f205_1 = new F205DTO();\r\n this.f205_2 = new F205DTO();\r\n this.f205_3 = new F205DTO();\r\n this.f205_4 = new F205DTO();\r\n this.f205_5 = new F205DTO();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.f205_1 = _data[\"f205_1\"] ? F205DTO.fromJS(_data[\"f205_1\"]) : new F205DTO();\r\n this.f205_2 = _data[\"f205_2\"] ? F205DTO.fromJS(_data[\"f205_2\"]) : new F205DTO();\r\n this.f205_3 = _data[\"f205_3\"] ? F205DTO.fromJS(_data[\"f205_3\"]) : new F205DTO();\r\n this.f205_4 = _data[\"f205_4\"] ? F205DTO.fromJS(_data[\"f205_4\"]) : new F205DTO();\r\n this.f205_5 = _data[\"f205_5\"] ? F205DTO.fromJS(_data[\"f205_5\"]) : new F205DTO();\r\n }\r\n }\r\n\r\n static fromJS(data: any): F205TotalDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new F205TotalDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"f205_1\"] = this.f205_1 ? this.f205_1.toJSON() : undefined;\r\n data[\"f205_2\"] = this.f205_2 ? this.f205_2.toJSON() : undefined;\r\n data[\"f205_3\"] = this.f205_3 ? this.f205_3.toJSON() : undefined;\r\n data[\"f205_4\"] = this.f205_4 ? this.f205_4.toJSON() : undefined;\r\n data[\"f205_5\"] = this.f205_5 ? this.f205_5.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IF205TotalDTO {\r\n startTime: Date;\r\n endTime: Date;\r\n f205_1: F205DTO;\r\n f205_2: F205DTO;\r\n f205_3: F205DTO;\r\n f205_4: F205DTO;\r\n f205_5: F205DTO;\r\n}\r\n\r\nexport class F205DTO implements IF205DTO {\r\n name!: string;\r\n stableCount!: number;\r\n unstableCount!: number;\r\n totalCount!: number;\r\n stableDeltaL!: number[];\r\n unstableDeltaL!: F205UnstableDTO[];\r\n stableCalc!: F205CalcDTO;\r\n unstableCalc!: F205CalcDTO;\r\n totalCalc!: F205TotalCalcDTO;\r\n\r\n constructor(data?: IF205DTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.stableDeltaL = [];\r\n this.unstableDeltaL = [];\r\n this.stableCalc = new F205CalcDTO();\r\n this.unstableCalc = new F205CalcDTO();\r\n this.totalCalc = new F205TotalCalcDTO();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.stableCount = _data[\"stableCount\"];\r\n this.unstableCount = _data[\"unstableCount\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n if (Array.isArray(_data[\"stableDeltaL\"])) {\r\n this.stableDeltaL = [] as any;\r\n for (let item of _data[\"stableDeltaL\"])\r\n this.stableDeltaL!.push(item);\r\n }\r\n if (Array.isArray(_data[\"unstableDeltaL\"])) {\r\n this.unstableDeltaL = [] as any;\r\n for (let item of _data[\"unstableDeltaL\"])\r\n this.unstableDeltaL!.push(F205UnstableDTO.fromJS(item));\r\n }\r\n this.stableCalc = _data[\"stableCalc\"] ? F205CalcDTO.fromJS(_data[\"stableCalc\"]) : new F205CalcDTO();\r\n this.unstableCalc = _data[\"unstableCalc\"] ? F205CalcDTO.fromJS(_data[\"unstableCalc\"]) : new F205CalcDTO();\r\n this.totalCalc = _data[\"totalCalc\"] ? F205TotalCalcDTO.fromJS(_data[\"totalCalc\"]) : new F205TotalCalcDTO();\r\n }\r\n }\r\n\r\n static fromJS(data: any): F205DTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new F205DTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"stableCount\"] = this.stableCount;\r\n data[\"unstableCount\"] = this.unstableCount;\r\n data[\"totalCount\"] = this.totalCount;\r\n if (Array.isArray(this.stableDeltaL)) {\r\n data[\"stableDeltaL\"] = [];\r\n for (let item of this.stableDeltaL)\r\n data[\"stableDeltaL\"].push(item);\r\n }\r\n if (Array.isArray(this.unstableDeltaL)) {\r\n data[\"unstableDeltaL\"] = [];\r\n for (let item of this.unstableDeltaL)\r\n data[\"unstableDeltaL\"].push(item.toJSON());\r\n }\r\n data[\"stableCalc\"] = this.stableCalc ? this.stableCalc.toJSON() : undefined;\r\n data[\"unstableCalc\"] = this.unstableCalc ? this.unstableCalc.toJSON() : undefined;\r\n data[\"totalCalc\"] = this.totalCalc ? this.totalCalc.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IF205DTO {\r\n name: string;\r\n stableCount: number;\r\n unstableCount: number;\r\n totalCount: number;\r\n stableDeltaL: number[];\r\n unstableDeltaL: F205UnstableDTO[];\r\n stableCalc: F205CalcDTO;\r\n unstableCalc: F205CalcDTO;\r\n totalCalc: F205TotalCalcDTO;\r\n}\r\n\r\nexport class F205UnstableDTO implements IF205UnstableDTO {\r\n value!: number;\r\n timeStamp!: Date;\r\n\r\n constructor(data?: IF205UnstableDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.value = _data[\"value\"];\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): F205UnstableDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new F205UnstableDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"value\"] = this.value;\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IF205UnstableDTO {\r\n value: number;\r\n timeStamp: Date;\r\n}\r\n\r\nexport class F205CalcDTO implements IF205CalcDTO {\r\n lDelta!: number;\r\n pAverage!: number;\r\n tAverage!: number;\r\n insideDiameter!: number;\r\n tangent!: number;\r\n l1minusL2!: number;\r\n l2minusBottomLine!: number;\r\n intermediateVals!: number[];\r\n heightOfLiquid!: number;\r\n cylindricalVolume!: number;\r\n numsOpenings!: number;\r\n headVolume!: number;\r\n volumeLiquid!: number;\r\n\r\n constructor(data?: IF205CalcDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.intermediateVals = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.lDelta = _data[\"lDelta\"];\r\n this.pAverage = _data[\"pAverage\"];\r\n this.tAverage = _data[\"tAverage\"];\r\n this.insideDiameter = _data[\"insideDiameter\"];\r\n this.tangent = _data[\"tangent\"];\r\n this.l1minusL2 = _data[\"l1minusL2\"];\r\n this.l2minusBottomLine = _data[\"l2minusBottomLine\"];\r\n if (Array.isArray(_data[\"intermediateVals\"])) {\r\n this.intermediateVals = [] as any;\r\n for (let item of _data[\"intermediateVals\"])\r\n this.intermediateVals!.push(item);\r\n }\r\n this.heightOfLiquid = _data[\"heightOfLiquid\"];\r\n this.cylindricalVolume = _data[\"cylindricalVolume\"];\r\n this.numsOpenings = _data[\"numsOpenings\"];\r\n this.headVolume = _data[\"headVolume\"];\r\n this.volumeLiquid = _data[\"volumeLiquid\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): F205CalcDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new F205CalcDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"lDelta\"] = this.lDelta;\r\n data[\"pAverage\"] = this.pAverage;\r\n data[\"tAverage\"] = this.tAverage;\r\n data[\"insideDiameter\"] = this.insideDiameter;\r\n data[\"tangent\"] = this.tangent;\r\n data[\"l1minusL2\"] = this.l1minusL2;\r\n data[\"l2minusBottomLine\"] = this.l2minusBottomLine;\r\n if (Array.isArray(this.intermediateVals)) {\r\n data[\"intermediateVals\"] = [];\r\n for (let item of this.intermediateVals)\r\n data[\"intermediateVals\"].push(item);\r\n }\r\n data[\"heightOfLiquid\"] = this.heightOfLiquid;\r\n data[\"cylindricalVolume\"] = this.cylindricalVolume;\r\n data[\"numsOpenings\"] = this.numsOpenings;\r\n data[\"headVolume\"] = this.headVolume;\r\n data[\"volumeLiquid\"] = this.volumeLiquid;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IF205CalcDTO {\r\n lDelta: number;\r\n pAverage: number;\r\n tAverage: number;\r\n insideDiameter: number;\r\n tangent: number;\r\n l1minusL2: number;\r\n l2minusBottomLine: number;\r\n intermediateVals: number[];\r\n heightOfLiquid: number;\r\n cylindricalVolume: number;\r\n numsOpenings: number;\r\n headVolume: number;\r\n volumeLiquid: number;\r\n}\r\n\r\nexport class F205TotalCalcDTO implements IF205TotalCalcDTO {\r\n totalLiqVolume!: number;\r\n liquidN!: number;\r\n liquidFromF205!: number;\r\n massDensity!: number;\r\n molarFlow!: number;\r\n gasMolarFlow!: number;\r\n gasN!: number;\r\n volumeOfFlaredGaskNm3!: number;\r\n molWeightOfFlaredGas!: number;\r\n massOfFlaredGasTon!: number;\r\n\r\n constructor(data?: IF205TotalCalcDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.totalLiqVolume = _data[\"totalLiqVolume\"];\r\n this.liquidN = _data[\"liquidN\"];\r\n this.liquidFromF205 = _data[\"liquidFromF205\"];\r\n this.massDensity = _data[\"massDensity\"];\r\n this.molarFlow = _data[\"molarFlow\"];\r\n this.gasMolarFlow = _data[\"gasMolarFlow\"];\r\n this.gasN = _data[\"gasN\"];\r\n this.volumeOfFlaredGaskNm3 = _data[\"volumeOfFlaredGaskNm3\"];\r\n this.molWeightOfFlaredGas = _data[\"molWeightOfFlaredGas\"];\r\n this.massOfFlaredGasTon = _data[\"massOfFlaredGasTon\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): F205TotalCalcDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new F205TotalCalcDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"totalLiqVolume\"] = this.totalLiqVolume;\r\n data[\"liquidN\"] = this.liquidN;\r\n data[\"liquidFromF205\"] = this.liquidFromF205;\r\n data[\"massDensity\"] = this.massDensity;\r\n data[\"molarFlow\"] = this.molarFlow;\r\n data[\"gasMolarFlow\"] = this.gasMolarFlow;\r\n data[\"gasN\"] = this.gasN;\r\n data[\"volumeOfFlaredGaskNm3\"] = this.volumeOfFlaredGaskNm3;\r\n data[\"molWeightOfFlaredGas\"] = this.molWeightOfFlaredGas;\r\n data[\"massOfFlaredGasTon\"] = this.massOfFlaredGasTon;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IF205TotalCalcDTO {\r\n totalLiqVolume: number;\r\n liquidN: number;\r\n liquidFromF205: number;\r\n massDensity: number;\r\n molarFlow: number;\r\n gasMolarFlow: number;\r\n gasN: number;\r\n volumeOfFlaredGaskNm3: number;\r\n molWeightOfFlaredGas: number;\r\n massOfFlaredGasTon: number;\r\n}\r\n\r\nexport class DailyReportDTO implements IDailyReportDTO {\r\n report!: ReportDTO[];\r\n totalVolume!: number;\r\n totalMass!: number;\r\n\r\n constructor(data?: IDailyReportDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.report = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"report\"])) {\r\n this.report = [] as any;\r\n for (let item of _data[\"report\"])\r\n this.report!.push(ReportDTO.fromJS(item));\r\n }\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DailyReportDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DailyReportDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.report)) {\r\n data[\"report\"] = [];\r\n for (let item of this.report)\r\n data[\"report\"].push(item.toJSON());\r\n }\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"totalMass\"] = this.totalMass;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDailyReportDTO {\r\n report: ReportDTO[];\r\n totalVolume: number;\r\n totalMass: number;\r\n}\r\n\r\nexport class ReportDTO implements IReportDTO {\r\n streamId!: number;\r\n streamName!: string;\r\n function!: string;\r\n flareName!: string;\r\n gasType!: string;\r\n groupType!: string;\r\n startTime!: Date;\r\n endTime?: Date | undefined;\r\n timeStamp!: Date;\r\n onStreamTime!: number;\r\n totalVolume!: number;\r\n totalMass!: number;\r\n inputCategory!: string;\r\n inputComment!: string;\r\n inputReason!: string;\r\n state!: string;\r\n bypassable!: boolean;\r\n bypassed!: boolean;\r\n childStreams!: ReportDTO[];\r\n\r\n constructor(data?: IReportDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.childStreams = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.streamId = _data[\"streamId\"];\r\n this.streamName = _data[\"streamName\"];\r\n this.function = _data[\"function\"];\r\n this.flareName = _data[\"flareName\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.groupType = _data[\"groupType\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.onStreamTime = _data[\"onStreamTime\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n this.inputCategory = _data[\"inputCategory\"];\r\n this.inputComment = _data[\"inputComment\"];\r\n this.inputReason = _data[\"inputReason\"];\r\n this.state = _data[\"state\"];\r\n this.bypassable = _data[\"bypassable\"];\r\n this.bypassed = _data[\"bypassed\"];\r\n if (Array.isArray(_data[\"childStreams\"])) {\r\n this.childStreams = [] as any;\r\n for (let item of _data[\"childStreams\"])\r\n this.childStreams!.push(ReportDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ReportDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ReportDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"streamId\"] = this.streamId;\r\n data[\"streamName\"] = this.streamName;\r\n data[\"function\"] = this.function;\r\n data[\"flareName\"] = this.flareName;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"groupType\"] = this.groupType;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"onStreamTime\"] = this.onStreamTime;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"inputCategory\"] = this.inputCategory;\r\n data[\"inputComment\"] = this.inputComment;\r\n data[\"inputReason\"] = this.inputReason;\r\n data[\"state\"] = this.state;\r\n data[\"bypassable\"] = this.bypassable;\r\n data[\"bypassed\"] = this.bypassed;\r\n if (Array.isArray(this.childStreams)) {\r\n data[\"childStreams\"] = [];\r\n for (let item of this.childStreams)\r\n data[\"childStreams\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IReportDTO {\r\n streamId: number;\r\n streamName: string;\r\n function: string;\r\n flareName: string;\r\n gasType: string;\r\n groupType: string;\r\n startTime: Date;\r\n endTime?: Date | undefined;\r\n timeStamp: Date;\r\n onStreamTime: number;\r\n totalVolume: number;\r\n totalMass: number;\r\n inputCategory: string;\r\n inputComment: string;\r\n inputReason: string;\r\n state: string;\r\n bypassable: boolean;\r\n bypassed: boolean;\r\n childStreams: ReportDTO[];\r\n}\r\n\r\nexport class PagedListOfInputHistoryDTO implements IPagedListOfInputHistoryDTO {\r\n pageNumber!: number;\r\n pageSize!: number;\r\n totalCount!: number;\r\n totalPages!: number;\r\n hasPreviousPage!: boolean;\r\n hasNextPage!: boolean;\r\n items!: InputHistoryDTO[];\r\n\r\n constructor(data?: IPagedListOfInputHistoryDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.items = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pageNumber = _data[\"pageNumber\"];\r\n this.pageSize = _data[\"pageSize\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n this.totalPages = _data[\"totalPages\"];\r\n this.hasPreviousPage = _data[\"hasPreviousPage\"];\r\n this.hasNextPage = _data[\"hasNextPage\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(InputHistoryDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedListOfInputHistoryDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedListOfInputHistoryDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pageNumber\"] = this.pageNumber;\r\n data[\"pageSize\"] = this.pageSize;\r\n data[\"totalCount\"] = this.totalCount;\r\n data[\"totalPages\"] = this.totalPages;\r\n data[\"hasPreviousPage\"] = this.hasPreviousPage;\r\n data[\"hasNextPage\"] = this.hasNextPage;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedListOfInputHistoryDTO {\r\n pageNumber: number;\r\n pageSize: number;\r\n totalCount: number;\r\n totalPages: number;\r\n hasPreviousPage: boolean;\r\n hasNextPage: boolean;\r\n items: InputHistoryDTO[];\r\n}\r\n\r\nexport class CCBase implements ICCBase {\r\n mw!: number;\r\n c1!: number;\r\n c2!: number;\r\n c2H5SH!: number;\r\n c3!: number;\r\n c4H9SH!: number;\r\n c6Plus!: number;\r\n cH3SH!: number;\r\n cO2!: number;\r\n cos!: number;\r\n h2O!: number;\r\n h2S!: number;\r\n iC3H7SH!: number;\r\n iC4!: number;\r\n iC5!: number;\r\n n2!: number;\r\n nC3H7SH!: number;\r\n nC4!: number;\r\n nC5!: number;\r\n o2!: number;\r\n\r\n constructor(data?: ICCBase) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.mw = _data[\"mw\"];\r\n this.c1 = _data[\"c1\"];\r\n this.c2 = _data[\"c2\"];\r\n this.c2H5SH = _data[\"c2H5SH\"];\r\n this.c3 = _data[\"c3\"];\r\n this.c4H9SH = _data[\"c4H9SH\"];\r\n this.c6Plus = _data[\"c6Plus\"];\r\n this.cH3SH = _data[\"cH3SH\"];\r\n this.cO2 = _data[\"cO2\"];\r\n this.cos = _data[\"cos\"];\r\n this.h2O = _data[\"h2O\"];\r\n this.h2S = _data[\"h2S\"];\r\n this.iC3H7SH = _data[\"iC3H7SH\"];\r\n this.iC4 = _data[\"iC4\"];\r\n this.iC5 = _data[\"iC5\"];\r\n this.n2 = _data[\"n2\"];\r\n this.nC3H7SH = _data[\"nC3H7SH\"];\r\n this.nC4 = _data[\"nC4\"];\r\n this.nC5 = _data[\"nC5\"];\r\n this.o2 = _data[\"o2\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CCBase {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CCBase();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"mw\"] = this.mw;\r\n data[\"c1\"] = this.c1;\r\n data[\"c2\"] = this.c2;\r\n data[\"c2H5SH\"] = this.c2H5SH;\r\n data[\"c3\"] = this.c3;\r\n data[\"c4H9SH\"] = this.c4H9SH;\r\n data[\"c6Plus\"] = this.c6Plus;\r\n data[\"cH3SH\"] = this.cH3SH;\r\n data[\"cO2\"] = this.cO2;\r\n data[\"cos\"] = this.cos;\r\n data[\"h2O\"] = this.h2O;\r\n data[\"h2S\"] = this.h2S;\r\n data[\"iC3H7SH\"] = this.iC3H7SH;\r\n data[\"iC4\"] = this.iC4;\r\n data[\"iC5\"] = this.iC5;\r\n data[\"n2\"] = this.n2;\r\n data[\"nC3H7SH\"] = this.nC3H7SH;\r\n data[\"nC4\"] = this.nC4;\r\n data[\"nC5\"] = this.nC5;\r\n data[\"o2\"] = this.o2;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICCBase {\r\n mw: number;\r\n c1: number;\r\n c2: number;\r\n c2H5SH: number;\r\n c3: number;\r\n c4H9SH: number;\r\n c6Plus: number;\r\n cH3SH: number;\r\n cO2: number;\r\n cos: number;\r\n h2O: number;\r\n h2S: number;\r\n iC3H7SH: number;\r\n iC4: number;\r\n iC5: number;\r\n n2: number;\r\n nC3H7SH: number;\r\n nC4: number;\r\n nC5: number;\r\n o2: number;\r\n}\r\n\r\nexport class CCBaseKTLSGP extends CCBase implements ICCBaseKTLSGP {\r\n c2H5SSC2H5!: number;\r\n c3H7SSC3H7!: number;\r\n cH3SSCH3!: number;\r\n c4H9SSC4H9!: number;\r\n\r\n constructor(data?: ICCBaseKTLSGP) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.c2H5SSC2H5 = _data[\"c2H5SSC2H5\"];\r\n this.c3H7SSC3H7 = _data[\"c3H7SSC3H7\"];\r\n this.cH3SSCH3 = _data[\"cH3SSCH3\"];\r\n this.c4H9SSC4H9 = _data[\"c4H9SSC4H9\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): CCBaseKTLSGP {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CCBaseKTLSGP();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"c2H5SSC2H5\"] = this.c2H5SSC2H5;\r\n data[\"c3H7SSC3H7\"] = this.c3H7SSC3H7;\r\n data[\"cH3SSCH3\"] = this.cH3SSCH3;\r\n data[\"c4H9SSC4H9\"] = this.c4H9SSC4H9;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICCBaseKTLSGP extends ICCBase {\r\n c2H5SSC2H5: number;\r\n c3H7SSC3H7: number;\r\n cH3SSCH3: number;\r\n c4H9SSC4H9: number;\r\n}\r\n\r\nexport class InputHistoryDTO extends CCBaseKTLSGP implements IInputHistoryDTO {\r\n id!: number;\r\n streamId!: number;\r\n streamName!: string;\r\n flareName!: string;\r\n function!: string;\r\n gasType!: string;\r\n startTime!: Date;\r\n endTime?: Date | undefined;\r\n inputCategory!: string;\r\n inputComment!: string;\r\n inputReason!: string;\r\n active!: number;\r\n totalVolume!: number;\r\n totalMass!: number;\r\n logged!: Date;\r\n user!: string;\r\n inputType!: string;\r\n isPermitForm!: boolean;\r\n\r\n constructor(data?: IInputHistoryDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.streamId = _data[\"streamId\"];\r\n this.streamName = _data[\"streamName\"];\r\n this.flareName = _data[\"flareName\"];\r\n this.function = _data[\"function\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.inputCategory = _data[\"inputCategory\"];\r\n this.inputComment = _data[\"inputComment\"];\r\n this.inputReason = _data[\"inputReason\"];\r\n this.active = _data[\"active\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.user = _data[\"user\"];\r\n this.inputType = _data[\"inputType\"];\r\n this.isPermitForm = _data[\"isPermitForm\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): InputHistoryDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InputHistoryDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"streamId\"] = this.streamId;\r\n data[\"streamName\"] = this.streamName;\r\n data[\"flareName\"] = this.flareName;\r\n data[\"function\"] = this.function;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"inputCategory\"] = this.inputCategory;\r\n data[\"inputComment\"] = this.inputComment;\r\n data[\"inputReason\"] = this.inputReason;\r\n data[\"active\"] = this.active;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"user\"] = this.user;\r\n data[\"inputType\"] = this.inputType;\r\n data[\"isPermitForm\"] = this.isPermitForm;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInputHistoryDTO extends ICCBaseKTLSGP {\r\n id: number;\r\n streamId: number;\r\n streamName: string;\r\n flareName: string;\r\n function: string;\r\n gasType: string;\r\n startTime: Date;\r\n endTime?: Date | undefined;\r\n inputCategory: string;\r\n inputComment: string;\r\n inputReason: string;\r\n active: number;\r\n totalVolume: number;\r\n totalMass: number;\r\n logged: Date;\r\n user: string;\r\n inputType: string;\r\n isPermitForm: boolean;\r\n}\r\n\r\nexport class ChemicalCompoundsDTO extends CCBaseKTLSGP implements IChemicalCompoundsDTO {\r\n id!: number;\r\n stream!: string;\r\n gasType!: string;\r\n\r\n constructor(data?: IChemicalCompoundsDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.stream = _data[\"stream\"];\r\n this.gasType = _data[\"gasType\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): ChemicalCompoundsDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChemicalCompoundsDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"stream\"] = this.stream;\r\n data[\"gasType\"] = this.gasType;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChemicalCompoundsDTO extends ICCBaseKTLSGP {\r\n id: number;\r\n stream: string;\r\n gasType: string;\r\n}\r\n\r\nexport class ChemicalCompoundsEquipmentDTO implements IChemicalCompoundsEquipmentDTO {\r\n id!: number;\r\n equipment!: string;\r\n volume!: number;\r\n mass!: number;\r\n gasType!: string;\r\n sourceComposition!: string;\r\n mw!: number;\r\n n2!: number;\r\n cO2!: number;\r\n c1!: number;\r\n c2!: number;\r\n c3!: number;\r\n iC4!: number;\r\n nC4!: number;\r\n iC5!: number;\r\n nC5!: number;\r\n c6Plus!: number;\r\n h2S!: number;\r\n cH3SH!: number;\r\n c2H5SH!: number;\r\n iC3H7SH!: number;\r\n nC3H7SH!: number;\r\n c4H9SH!: number;\r\n h2O!: number;\r\n cos!: number;\r\n o2!: number;\r\n blowingReasonType?: BlowingReasonType | undefined;\r\n collectorType?: CollectorType | undefined;\r\n trains?: string | undefined;\r\n unit?: UnitList | undefined;\r\n equipmentCategory?: PermitTargetInputCategory | undefined;\r\n\r\n constructor(data?: IChemicalCompoundsEquipmentDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.equipment = _data[\"equipment\"];\r\n this.volume = _data[\"volume\"];\r\n this.mass = _data[\"mass\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.sourceComposition = _data[\"sourceComposition\"];\r\n this.mw = _data[\"mw\"];\r\n this.n2 = _data[\"n2\"];\r\n this.cO2 = _data[\"cO2\"];\r\n this.c1 = _data[\"c1\"];\r\n this.c2 = _data[\"c2\"];\r\n this.c3 = _data[\"c3\"];\r\n this.iC4 = _data[\"iC4\"];\r\n this.nC4 = _data[\"nC4\"];\r\n this.iC5 = _data[\"iC5\"];\r\n this.nC5 = _data[\"nC5\"];\r\n this.c6Plus = _data[\"c6Plus\"];\r\n this.h2S = _data[\"h2S\"];\r\n this.cH3SH = _data[\"cH3SH\"];\r\n this.c2H5SH = _data[\"c2H5SH\"];\r\n this.iC3H7SH = _data[\"iC3H7SH\"];\r\n this.nC3H7SH = _data[\"nC3H7SH\"];\r\n this.c4H9SH = _data[\"c4H9SH\"];\r\n this.h2O = _data[\"h2O\"];\r\n this.cos = _data[\"cos\"];\r\n this.o2 = _data[\"o2\"];\r\n this.blowingReasonType = _data[\"blowingReasonType\"];\r\n this.collectorType = _data[\"collectorType\"];\r\n this.trains = _data[\"trains\"];\r\n this.unit = _data[\"unit\"];\r\n this.equipmentCategory = _data[\"equipmentCategory\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChemicalCompoundsEquipmentDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChemicalCompoundsEquipmentDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"equipment\"] = this.equipment;\r\n data[\"volume\"] = this.volume;\r\n data[\"mass\"] = this.mass;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"sourceComposition\"] = this.sourceComposition;\r\n data[\"mw\"] = this.mw;\r\n data[\"n2\"] = this.n2;\r\n data[\"cO2\"] = this.cO2;\r\n data[\"c1\"] = this.c1;\r\n data[\"c2\"] = this.c2;\r\n data[\"c3\"] = this.c3;\r\n data[\"iC4\"] = this.iC4;\r\n data[\"nC4\"] = this.nC4;\r\n data[\"iC5\"] = this.iC5;\r\n data[\"nC5\"] = this.nC5;\r\n data[\"c6Plus\"] = this.c6Plus;\r\n data[\"h2S\"] = this.h2S;\r\n data[\"cH3SH\"] = this.cH3SH;\r\n data[\"c2H5SH\"] = this.c2H5SH;\r\n data[\"iC3H7SH\"] = this.iC3H7SH;\r\n data[\"nC3H7SH\"] = this.nC3H7SH;\r\n data[\"c4H9SH\"] = this.c4H9SH;\r\n data[\"h2O\"] = this.h2O;\r\n data[\"cos\"] = this.cos;\r\n data[\"o2\"] = this.o2;\r\n data[\"blowingReasonType\"] = this.blowingReasonType;\r\n data[\"collectorType\"] = this.collectorType;\r\n data[\"trains\"] = this.trains;\r\n data[\"unit\"] = this.unit;\r\n data[\"equipmentCategory\"] = this.equipmentCategory;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChemicalCompoundsEquipmentDTO {\r\n id: number;\r\n equipment: string;\r\n volume: number;\r\n mass: number;\r\n gasType: string;\r\n sourceComposition: string;\r\n mw: number;\r\n n2: number;\r\n cO2: number;\r\n c1: number;\r\n c2: number;\r\n c3: number;\r\n iC4: number;\r\n nC4: number;\r\n iC5: number;\r\n nC5: number;\r\n c6Plus: number;\r\n h2S: number;\r\n cH3SH: number;\r\n c2H5SH: number;\r\n iC3H7SH: number;\r\n nC3H7SH: number;\r\n c4H9SH: number;\r\n h2O: number;\r\n cos: number;\r\n o2: number;\r\n blowingReasonType?: BlowingReasonType | undefined;\r\n collectorType?: CollectorType | undefined;\r\n trains?: string | undefined;\r\n unit?: UnitList | undefined;\r\n equipmentCategory?: PermitTargetInputCategory | undefined;\r\n}\r\n\r\nexport enum BlowingReasonType {\r\n FilterReplacement = 0,\r\n HeavyHCDrainage = 1,\r\n Maintenance = 2,\r\n Other = 3,\r\n}\r\n\r\nexport enum CollectorType {\r\n BD = 0,\r\n BF = 1,\r\n BFH = 2,\r\n DHC = 3,\r\n BDBF = 4,\r\n}\r\n\r\nexport enum PermitTargetInputCategory {\r\n V6 = 0,\r\n V7 = 1,\r\n V8 = 2,\r\n V9 = 3,\r\n}\r\n\r\nexport enum TrainList {\r\n KtlTrainOne = 1,\r\n KtlTrainTwo = 2,\r\n KtlTrainThree = 3,\r\n KtlTrainFour = 4,\r\n KtlTrainFive = 5,\r\n KTLTrainOneAndTwo = 6,\r\n KTLTrainThreeAndFour = 7,\r\n}\r\n\r\nexport class ValueTupleOfIntegerAndString implements IValueTupleOfIntegerAndString {\r\n\r\n constructor(data?: IValueTupleOfIntegerAndString) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n }\r\n\r\n static fromJS(data: any): ValueTupleOfIntegerAndString {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ValueTupleOfIntegerAndString();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IValueTupleOfIntegerAndString {\r\n}\r\n\r\nexport class KTLSGPGasBalanceDTO implements IKTLSGPGasBalanceDTO {\r\n gasBalance!: number;\r\n rateTotal!: number;\r\n difference!: number;\r\n differencePct!: number;\r\n\r\n constructor(data?: IKTLSGPGasBalanceDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.gasBalance = _data[\"gasBalance\"];\r\n this.rateTotal = _data[\"rateTotal\"];\r\n this.difference = _data[\"difference\"];\r\n this.differencePct = _data[\"differencePct\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLSGPGasBalanceDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLSGPGasBalanceDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"gasBalance\"] = this.gasBalance;\r\n data[\"rateTotal\"] = this.rateTotal;\r\n data[\"difference\"] = this.difference;\r\n data[\"differencePct\"] = this.differencePct;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLSGPGasBalanceDTO {\r\n gasBalance: number;\r\n rateTotal: number;\r\n difference: number;\r\n differencePct: number;\r\n}\r\n\r\nexport class GetGURDTO implements IGetGURDTO {\r\n hrsgOpc!: string;\r\n hrsgTpc!: string;\r\n pUpc!: string;\r\n gtOpc!: string;\r\n gtTpc!: string;\r\n gur!: GURDTO[];\r\n\r\n constructor(data?: IGetGURDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.gur = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.hrsgOpc = _data[\"hrsgOpc\"];\r\n this.hrsgTpc = _data[\"hrsgTpc\"];\r\n this.pUpc = _data[\"pUpc\"];\r\n this.gtOpc = _data[\"gtOpc\"];\r\n this.gtTpc = _data[\"gtTpc\"];\r\n if (Array.isArray(_data[\"gur\"])) {\r\n this.gur = [] as any;\r\n for (let item of _data[\"gur\"])\r\n this.gur!.push(GURDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetGURDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetGURDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"hrsgOpc\"] = this.hrsgOpc;\r\n data[\"hrsgTpc\"] = this.hrsgTpc;\r\n data[\"pUpc\"] = this.pUpc;\r\n data[\"gtOpc\"] = this.gtOpc;\r\n data[\"gtTpc\"] = this.gtTpc;\r\n if (Array.isArray(this.gur)) {\r\n data[\"gur\"] = [];\r\n for (let item of this.gur)\r\n data[\"gur\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetGURDTO {\r\n hrsgOpc: string;\r\n hrsgTpc: string;\r\n pUpc: string;\r\n gtOpc: string;\r\n gtTpc: string;\r\n gur: GURDTO[];\r\n}\r\n\r\nexport class GURDTO implements IGURDTO {\r\n timeStamp!: string;\r\n /** KTL + SGP, Volume Credibles Daily */\r\n measuredGas!: number;\r\n measuredGas21!: number;\r\n /** GT1 Allocated Volume */\r\n gtoVolume!: number;\r\n /** GT2 Allocated Volume */\r\n gtTwVolume!: number;\r\n /** GT1 Run time */\r\n gtoRuntime!: number;\r\n /** GT2 Run time */\r\n gttRuntime!: number;\r\n /** HRSG-1 Allocated Volume */\r\n hrsgoVolume!: number;\r\n /** HRSG-2 Allocated Volume */\r\n hrsgtVolume!: number;\r\n /** HRSG-1 Run time */\r\n hrsgoRuntime!: number;\r\n /** HRSG-2 Run time */\r\n hrsgtRuntime!: number;\r\n buranBoilerVolume!: number;\r\n /** PU-9147 Allocated Volume */\r\n puVolume!: number;\r\n /** PU-9147 Run time */\r\n puRuntime!: number;\r\n /** KTL Volume */\r\n fGtoPPKTL!: number;\r\n /** SGP Volume */\r\n fGtoPPSGP!: number;\r\n pilotVolume!: number;\r\n purgedVolume!: number;\r\n /** Volume Measured Daily */\r\n fGtoPP!: number;\r\n /** Credible-Measured Deviation */\r\n ktlfGtoPP!: number;\r\n\r\n constructor(data?: IGURDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeStamp = _data[\"timeStamp\"];\r\n this.measuredGas = _data[\"measuredGas\"];\r\n this.measuredGas21 = _data[\"measuredGas21\"];\r\n this.gtoVolume = _data[\"gtoVolume\"];\r\n this.gtTwVolume = _data[\"gtTwVolume\"];\r\n this.gtoRuntime = _data[\"gtoRuntime\"];\r\n this.gttRuntime = _data[\"gttRuntime\"];\r\n this.hrsgoVolume = _data[\"hrsgoVolume\"];\r\n this.hrsgtVolume = _data[\"hrsgtVolume\"];\r\n this.hrsgoRuntime = _data[\"hrsgoRuntime\"];\r\n this.hrsgtRuntime = _data[\"hrsgtRuntime\"];\r\n this.buranBoilerVolume = _data[\"buranBoilerVolume\"];\r\n this.puVolume = _data[\"puVolume\"];\r\n this.puRuntime = _data[\"puRuntime\"];\r\n this.fGtoPPKTL = _data[\"fGtoPPKTL\"];\r\n this.fGtoPPSGP = _data[\"fGtoPPSGP\"];\r\n this.pilotVolume = _data[\"pilotVolume\"];\r\n this.purgedVolume = _data[\"purgedVolume\"];\r\n this.fGtoPP = _data[\"fGtoPP\"];\r\n this.ktlfGtoPP = _data[\"ktlfGtoPP\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GURDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GURDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeStamp\"] = this.timeStamp;\r\n data[\"measuredGas\"] = this.measuredGas;\r\n data[\"measuredGas21\"] = this.measuredGas21;\r\n data[\"gtoVolume\"] = this.gtoVolume;\r\n data[\"gtTwVolume\"] = this.gtTwVolume;\r\n data[\"gtoRuntime\"] = this.gtoRuntime;\r\n data[\"gttRuntime\"] = this.gttRuntime;\r\n data[\"hrsgoVolume\"] = this.hrsgoVolume;\r\n data[\"hrsgtVolume\"] = this.hrsgtVolume;\r\n data[\"hrsgoRuntime\"] = this.hrsgoRuntime;\r\n data[\"hrsgtRuntime\"] = this.hrsgtRuntime;\r\n data[\"buranBoilerVolume\"] = this.buranBoilerVolume;\r\n data[\"puVolume\"] = this.puVolume;\r\n data[\"puRuntime\"] = this.puRuntime;\r\n data[\"fGtoPPKTL\"] = this.fGtoPPKTL;\r\n data[\"fGtoPPSGP\"] = this.fGtoPPSGP;\r\n data[\"pilotVolume\"] = this.pilotVolume;\r\n data[\"purgedVolume\"] = this.purgedVolume;\r\n data[\"fGtoPP\"] = this.fGtoPP;\r\n data[\"ktlfGtoPP\"] = this.ktlfGtoPP;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGURDTO {\r\n timeStamp: string;\r\n /** KTL + SGP, Volume Credibles Daily */\r\n measuredGas: number;\r\n measuredGas21: number;\r\n /** GT1 Allocated Volume */\r\n gtoVolume: number;\r\n /** GT2 Allocated Volume */\r\n gtTwVolume: number;\r\n /** GT1 Run time */\r\n gtoRuntime: number;\r\n /** GT2 Run time */\r\n gttRuntime: number;\r\n /** HRSG-1 Allocated Volume */\r\n hrsgoVolume: number;\r\n /** HRSG-2 Allocated Volume */\r\n hrsgtVolume: number;\r\n /** HRSG-1 Run time */\r\n hrsgoRuntime: number;\r\n /** HRSG-2 Run time */\r\n hrsgtRuntime: number;\r\n buranBoilerVolume: number;\r\n /** PU-9147 Allocated Volume */\r\n puVolume: number;\r\n /** PU-9147 Run time */\r\n puRuntime: number;\r\n /** KTL Volume */\r\n fGtoPPKTL: number;\r\n /** SGP Volume */\r\n fGtoPPSGP: number;\r\n pilotVolume: number;\r\n purgedVolume: number;\r\n /** Volume Measured Daily */\r\n fGtoPP: number;\r\n /** Credible-Measured Deviation */\r\n ktlfGtoPP: number;\r\n}\r\n\r\nexport class GURInputRecordDTO implements IGURInputRecordDTO {\r\n id!: number;\r\n startTime!: Date;\r\n value!: number;\r\n type!: GURInputRecordType;\r\n runtime!: number;\r\n isdelete!: boolean;\r\n\r\n constructor(data?: IGURInputRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.value = _data[\"value\"];\r\n this.type = _data[\"type\"];\r\n this.runtime = _data[\"runtime\"];\r\n this.isdelete = _data[\"isdelete\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GURInputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GURInputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"value\"] = this.value;\r\n data[\"type\"] = this.type;\r\n data[\"runtime\"] = this.runtime;\r\n data[\"isdelete\"] = this.isdelete;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGURInputRecordDTO {\r\n id: number;\r\n startTime: Date;\r\n value: number;\r\n type: GURInputRecordType;\r\n runtime: number;\r\n isdelete: boolean;\r\n}\r\n\r\nexport enum GURInputRecordType {\r\n GTO = 0,\r\n GTT = 1,\r\n HRSGO = 2,\r\n HRSGT = 3,\r\n PURuntime = 4,\r\n FGKTL = 5,\r\n FGSGP = 6,\r\n VolumeBB = 7,\r\n}\r\n\r\nexport class KTLSGPPermitTargetInputDTO implements IKTLSGPPermitTargetInputDTO {\r\n id!: number;\r\n startTime!: Date;\r\n targetPermitType!: PermitTargetInputType;\r\n plant!: Plant;\r\n inputType!: PermitTargetInput;\r\n inputValue!: PermitTargetInputValue;\r\n year?: number | undefined;\r\n jan?: number | undefined;\r\n feb?: number | undefined;\r\n mar?: number | undefined;\r\n apr?: number | undefined;\r\n may?: number | undefined;\r\n jun?: number | undefined;\r\n jul?: number | undefined;\r\n aug?: number | undefined;\r\n sep?: number | undefined;\r\n oct?: number | undefined;\r\n nov?: number | undefined;\r\n dec?: number | undefined;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IKTLSGPPermitTargetInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.targetPermitType = _data[\"targetPermitType\"];\r\n this.plant = _data[\"plant\"];\r\n this.inputType = _data[\"inputType\"];\r\n this.inputValue = _data[\"inputValue\"];\r\n this.year = _data[\"year\"];\r\n this.jan = _data[\"jan\"];\r\n this.feb = _data[\"feb\"];\r\n this.mar = _data[\"mar\"];\r\n this.apr = _data[\"apr\"];\r\n this.may = _data[\"may\"];\r\n this.jun = _data[\"jun\"];\r\n this.jul = _data[\"jul\"];\r\n this.aug = _data[\"aug\"];\r\n this.sep = _data[\"sep\"];\r\n this.oct = _data[\"oct\"];\r\n this.nov = _data[\"nov\"];\r\n this.dec = _data[\"dec\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLSGPPermitTargetInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLSGPPermitTargetInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"targetPermitType\"] = this.targetPermitType;\r\n data[\"plant\"] = this.plant;\r\n data[\"inputType\"] = this.inputType;\r\n data[\"inputValue\"] = this.inputValue;\r\n data[\"year\"] = this.year;\r\n data[\"jan\"] = this.jan;\r\n data[\"feb\"] = this.feb;\r\n data[\"mar\"] = this.mar;\r\n data[\"apr\"] = this.apr;\r\n data[\"may\"] = this.may;\r\n data[\"jun\"] = this.jun;\r\n data[\"jul\"] = this.jul;\r\n data[\"aug\"] = this.aug;\r\n data[\"sep\"] = this.sep;\r\n data[\"oct\"] = this.oct;\r\n data[\"nov\"] = this.nov;\r\n data[\"dec\"] = this.dec;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLSGPPermitTargetInputDTO {\r\n id: number;\r\n startTime: Date;\r\n targetPermitType: PermitTargetInputType;\r\n plant: Plant;\r\n inputType: PermitTargetInput;\r\n inputValue: PermitTargetInputValue;\r\n year?: number | undefined;\r\n jan?: number | undefined;\r\n feb?: number | undefined;\r\n mar?: number | undefined;\r\n apr?: number | undefined;\r\n may?: number | undefined;\r\n jun?: number | undefined;\r\n jul?: number | undefined;\r\n aug?: number | undefined;\r\n sep?: number | undefined;\r\n oct?: number | undefined;\r\n nov?: number | undefined;\r\n dec?: number | undefined;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum PermitTargetInput {\r\n Category = 0,\r\n Total = 1,\r\n Flares = 2,\r\n GasType = 3,\r\n F750 = 4,\r\n SO2Emissions = 5,\r\n Leakage = 6,\r\n}\r\n\r\nexport enum PermitTargetInputValue {\r\n V6 = 0,\r\n V7 = 1,\r\n V8 = 2,\r\n V9 = 3,\r\n Total = 4,\r\n HP = 5,\r\n LP = 6,\r\n T200 = 7,\r\n T201 = 8,\r\n T1 = 9,\r\n T2 = 10,\r\n T3 = 11,\r\n T4 = 12,\r\n T5 = 13,\r\n ACID = 14,\r\n BUTANE = 15,\r\n DRY = 16,\r\n PROPANE = 17,\r\n SOUR = 18,\r\n SWEET = 19,\r\n F750 = 20,\r\n SO2Emissions = 21,\r\n KTL1Emissions = 22,\r\n KTL2Emissions = 23,\r\n LeakageTotal = 24,\r\n}\r\n\r\nexport class PagedListOfKTLSGPStreamMWDTO implements IPagedListOfKTLSGPStreamMWDTO {\r\n pageNumber!: number;\r\n pageSize!: number;\r\n totalCount!: number;\r\n totalPages!: number;\r\n hasPreviousPage!: boolean;\r\n hasNextPage!: boolean;\r\n items!: KTLSGPStreamMWDTO[];\r\n\r\n constructor(data?: IPagedListOfKTLSGPStreamMWDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.items = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pageNumber = _data[\"pageNumber\"];\r\n this.pageSize = _data[\"pageSize\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n this.totalPages = _data[\"totalPages\"];\r\n this.hasPreviousPage = _data[\"hasPreviousPage\"];\r\n this.hasNextPage = _data[\"hasNextPage\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(KTLSGPStreamMWDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedListOfKTLSGPStreamMWDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedListOfKTLSGPStreamMWDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pageNumber\"] = this.pageNumber;\r\n data[\"pageSize\"] = this.pageSize;\r\n data[\"totalCount\"] = this.totalCount;\r\n data[\"totalPages\"] = this.totalPages;\r\n data[\"hasPreviousPage\"] = this.hasPreviousPage;\r\n data[\"hasNextPage\"] = this.hasNextPage;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedListOfKTLSGPStreamMWDTO {\r\n pageNumber: number;\r\n pageSize: number;\r\n totalCount: number;\r\n totalPages: number;\r\n hasPreviousPage: boolean;\r\n hasNextPage: boolean;\r\n items: KTLSGPStreamMWDTO[];\r\n}\r\n\r\nexport class KTLSGPStreamMWDTO implements IKTLSGPStreamMWDTO {\r\n id!: number;\r\n streamName!: string;\r\n mwValue!: number;\r\n\r\n constructor(data?: IKTLSGPStreamMWDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.streamName = _data[\"streamName\"];\r\n this.mwValue = _data[\"mwValue\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLSGPStreamMWDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLSGPStreamMWDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"streamName\"] = this.streamName;\r\n data[\"mwValue\"] = this.mwValue;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLSGPStreamMWDTO {\r\n id: number;\r\n streamName: string;\r\n mwValue: number;\r\n}\r\n\r\nexport class KTLSGPStreamDTO implements IKTLSGPStreamDTO {\r\n id!: number;\r\n streamName!: string;\r\n flareName!: string;\r\n function!: string;\r\n gasType!: string;\r\n inputType!: KTLSGPStreamInputType;\r\n groupType!: KTLSGPStreamGroupType;\r\n limsType!: KTLSGPLIMSType;\r\n ccId?: number | undefined;\r\n defaultMW!: number;\r\n switchable!: boolean;\r\n bypassable!: boolean;\r\n\r\n constructor(data?: IKTLSGPStreamDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.streamName = _data[\"streamName\"];\r\n this.flareName = _data[\"flareName\"];\r\n this.function = _data[\"function\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.inputType = _data[\"inputType\"];\r\n this.groupType = _data[\"groupType\"];\r\n this.limsType = _data[\"limsType\"];\r\n this.ccId = _data[\"ccId\"];\r\n this.defaultMW = _data[\"defaultMW\"];\r\n this.switchable = _data[\"switchable\"];\r\n this.bypassable = _data[\"bypassable\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLSGPStreamDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLSGPStreamDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"streamName\"] = this.streamName;\r\n data[\"flareName\"] = this.flareName;\r\n data[\"function\"] = this.function;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"inputType\"] = this.inputType;\r\n data[\"groupType\"] = this.groupType;\r\n data[\"limsType\"] = this.limsType;\r\n data[\"ccId\"] = this.ccId;\r\n data[\"defaultMW\"] = this.defaultMW;\r\n data[\"switchable\"] = this.switchable;\r\n data[\"bypassable\"] = this.bypassable;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLSGPStreamDTO {\r\n id: number;\r\n streamName: string;\r\n flareName: string;\r\n function: string;\r\n gasType: string;\r\n inputType: KTLSGPStreamInputType;\r\n groupType: KTLSGPStreamGroupType;\r\n limsType: KTLSGPLIMSType;\r\n ccId?: number | undefined;\r\n defaultMW: number;\r\n switchable: boolean;\r\n bypassable: boolean;\r\n}\r\n\r\nexport enum KTLSGPStreamInputType {\r\n Flaring = 0,\r\n Leakage = 1,\r\n Constant = 2,\r\n}\r\n\r\nexport enum KTLSGPStreamGroupType {\r\n Standalone = 0,\r\n Parent = 1,\r\n Child = 2,\r\n NotShown = 3,\r\n}\r\n\r\nexport enum KTLSGPLIMSType {\r\n KTL1 = 0,\r\n KTL2 = 1,\r\n KTL3 = 2,\r\n KTLAvg = 3,\r\n SGP = 4,\r\n Propane = 5,\r\n Butane = 6,\r\n Nothing = 7,\r\n}\r\n\r\nexport class CalculatedStreamInputRecordDTO extends CCBaseKTLSGP implements ICalculatedStreamInputRecordDTO {\r\n streamId!: number;\r\n streamName!: string;\r\n flareName!: string;\r\n function!: string;\r\n gasType!: string;\r\n startTime!: Date;\r\n endTime?: Date | undefined;\r\n timeStamp!: Date;\r\n totalVolume!: number;\r\n totalMass!: number;\r\n inputCategory!: string;\r\n inputComment!: string;\r\n inputReason!: string;\r\n isConfirmed!: boolean;\r\n isApproved!: boolean;\r\n isPermitForm!: boolean;\r\n state!: string;\r\n\r\n constructor(data?: ICalculatedStreamInputRecordDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.streamId = _data[\"streamId\"];\r\n this.streamName = _data[\"streamName\"];\r\n this.flareName = _data[\"flareName\"];\r\n this.function = _data[\"function\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n this.inputCategory = _data[\"inputCategory\"];\r\n this.inputComment = _data[\"inputComment\"];\r\n this.inputReason = _data[\"inputReason\"];\r\n this.isConfirmed = _data[\"isConfirmed\"];\r\n this.isApproved = _data[\"isApproved\"];\r\n this.isPermitForm = _data[\"isPermitForm\"];\r\n this.state = _data[\"state\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): CalculatedStreamInputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CalculatedStreamInputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"streamId\"] = this.streamId;\r\n data[\"streamName\"] = this.streamName;\r\n data[\"flareName\"] = this.flareName;\r\n data[\"function\"] = this.function;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"inputCategory\"] = this.inputCategory;\r\n data[\"inputComment\"] = this.inputComment;\r\n data[\"inputReason\"] = this.inputReason;\r\n data[\"isConfirmed\"] = this.isConfirmed;\r\n data[\"isApproved\"] = this.isApproved;\r\n data[\"isPermitForm\"] = this.isPermitForm;\r\n data[\"state\"] = this.state;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICalculatedStreamInputRecordDTO extends ICCBaseKTLSGP {\r\n streamId: number;\r\n streamName: string;\r\n flareName: string;\r\n function: string;\r\n gasType: string;\r\n startTime: Date;\r\n endTime?: Date | undefined;\r\n timeStamp: Date;\r\n totalVolume: number;\r\n totalMass: number;\r\n inputCategory: string;\r\n inputComment: string;\r\n inputReason: string;\r\n isConfirmed: boolean;\r\n isApproved: boolean;\r\n isPermitForm: boolean;\r\n state: string;\r\n}\r\n\r\nexport class PagedListOfGetKTLOperatorDTO implements IPagedListOfGetKTLOperatorDTO {\r\n pageNumber!: number;\r\n pageSize!: number;\r\n totalCount!: number;\r\n totalPages!: number;\r\n hasPreviousPage!: boolean;\r\n hasNextPage!: boolean;\r\n items!: GetKTLOperatorDTO[];\r\n\r\n constructor(data?: IPagedListOfGetKTLOperatorDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.items = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pageNumber = _data[\"pageNumber\"];\r\n this.pageSize = _data[\"pageSize\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n this.totalPages = _data[\"totalPages\"];\r\n this.hasPreviousPage = _data[\"hasPreviousPage\"];\r\n this.hasNextPage = _data[\"hasNextPage\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetKTLOperatorDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedListOfGetKTLOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedListOfGetKTLOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pageNumber\"] = this.pageNumber;\r\n data[\"pageSize\"] = this.pageSize;\r\n data[\"totalCount\"] = this.totalCount;\r\n data[\"totalPages\"] = this.totalPages;\r\n data[\"hasPreviousPage\"] = this.hasPreviousPage;\r\n data[\"hasNextPage\"] = this.hasNextPage;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedListOfGetKTLOperatorDTO {\r\n pageNumber: number;\r\n pageSize: number;\r\n totalCount: number;\r\n totalPages: number;\r\n hasPreviousPage: boolean;\r\n hasNextPage: boolean;\r\n items: GetKTLOperatorDTO[];\r\n}\r\n\r\nexport class BaseKTLOperatorDTO implements IBaseKTLOperatorDTO {\r\n startTime!: Date;\r\n endTime!: Date;\r\n train!: TrainList;\r\n unitName!: UnitList;\r\n environmentType!: EnvironmentType;\r\n collectorType!: CollectorType;\r\n valvePosition!: ValvePosition;\r\n gasType?: OperatorGasType | undefined;\r\n liquidType?: KTLSGPLiquidType | undefined;\r\n startPressureValue?: number | undefined;\r\n endPressureValue?: number | undefined;\r\n startTemperatureValue?: number | undefined;\r\n endTemperatureValue?: number | undefined;\r\n multiplicity!: number;\r\n blowingReasonType!: BlowingReasonType;\r\n notes?: string | undefined;\r\n equipmentCategory?: PermitTargetInputCategory | undefined;\r\n\r\n constructor(data?: IBaseKTLOperatorDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.train = _data[\"train\"];\r\n this.unitName = _data[\"unitName\"];\r\n this.environmentType = _data[\"environmentType\"];\r\n this.collectorType = _data[\"collectorType\"];\r\n this.valvePosition = _data[\"valvePosition\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.liquidType = _data[\"liquidType\"];\r\n this.startPressureValue = _data[\"startPressureValue\"];\r\n this.endPressureValue = _data[\"endPressureValue\"];\r\n this.startTemperatureValue = _data[\"startTemperatureValue\"];\r\n this.endTemperatureValue = _data[\"endTemperatureValue\"];\r\n this.multiplicity = _data[\"multiplicity\"];\r\n this.blowingReasonType = _data[\"blowingReasonType\"];\r\n this.notes = _data[\"notes\"];\r\n this.equipmentCategory = _data[\"equipmentCategory\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BaseKTLOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BaseKTLOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"train\"] = this.train;\r\n data[\"unitName\"] = this.unitName;\r\n data[\"environmentType\"] = this.environmentType;\r\n data[\"collectorType\"] = this.collectorType;\r\n data[\"valvePosition\"] = this.valvePosition;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"liquidType\"] = this.liquidType;\r\n data[\"startPressureValue\"] = this.startPressureValue;\r\n data[\"endPressureValue\"] = this.endPressureValue;\r\n data[\"startTemperatureValue\"] = this.startTemperatureValue;\r\n data[\"endTemperatureValue\"] = this.endTemperatureValue;\r\n data[\"multiplicity\"] = this.multiplicity;\r\n data[\"blowingReasonType\"] = this.blowingReasonType;\r\n data[\"notes\"] = this.notes;\r\n data[\"equipmentCategory\"] = this.equipmentCategory;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBaseKTLOperatorDTO {\r\n startTime: Date;\r\n endTime: Date;\r\n train: TrainList;\r\n unitName: UnitList;\r\n environmentType: EnvironmentType;\r\n collectorType: CollectorType;\r\n valvePosition: ValvePosition;\r\n gasType?: OperatorGasType | undefined;\r\n liquidType?: KTLSGPLiquidType | undefined;\r\n startPressureValue?: number | undefined;\r\n endPressureValue?: number | undefined;\r\n startTemperatureValue?: number | undefined;\r\n endTemperatureValue?: number | undefined;\r\n multiplicity: number;\r\n blowingReasonType: BlowingReasonType;\r\n notes?: string | undefined;\r\n equipmentCategory?: PermitTargetInputCategory | undefined;\r\n}\r\n\r\nexport class KTLOperatorDTO extends BaseKTLOperatorDTO implements IKTLOperatorDTO {\r\n id?: number | undefined;\r\n chemicalCompoundsEquipmentId?: number | undefined;\r\n chemicalCompoundsEquipmentName?: string | undefined;\r\n customName?: string | undefined;\r\n\r\n constructor(data?: IKTLOperatorDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.chemicalCompoundsEquipmentId = _data[\"chemicalCompoundsEquipmentId\"];\r\n this.chemicalCompoundsEquipmentName = _data[\"chemicalCompoundsEquipmentName\"];\r\n this.customName = _data[\"customName\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): KTLOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"chemicalCompoundsEquipmentId\"] = this.chemicalCompoundsEquipmentId;\r\n data[\"chemicalCompoundsEquipmentName\"] = this.chemicalCompoundsEquipmentName;\r\n data[\"customName\"] = this.customName;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLOperatorDTO extends IBaseKTLOperatorDTO {\r\n id?: number | undefined;\r\n chemicalCompoundsEquipmentId?: number | undefined;\r\n chemicalCompoundsEquipmentName?: string | undefined;\r\n customName?: string | undefined;\r\n}\r\n\r\nexport class GetKTLOperatorDTO extends KTLOperatorDTO implements IGetKTLOperatorDTO {\r\n volume?: number | undefined;\r\n mass?: number | undefined;\r\n loggedBy!: string;\r\n dateTime?: Date | undefined;\r\n\r\n constructor(data?: IGetKTLOperatorDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.volume = _data[\"volume\"];\r\n this.mass = _data[\"mass\"];\r\n this.loggedBy = _data[\"loggedBy\"];\r\n this.dateTime = _data[\"dateTime\"] ? new Date(_data[\"dateTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static override fromJS(data: any): GetKTLOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetKTLOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"volume\"] = this.volume;\r\n data[\"mass\"] = this.mass;\r\n data[\"loggedBy\"] = this.loggedBy;\r\n data[\"dateTime\"] = this.dateTime ? this.dateTime.toISOString() : undefined;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetKTLOperatorDTO extends IKTLOperatorDTO {\r\n volume?: number | undefined;\r\n mass?: number | undefined;\r\n loggedBy: string;\r\n dateTime?: Date | undefined;\r\n}\r\n\r\nexport enum EnvironmentType {\r\n GAS = 0,\r\n LIQUID = 1,\r\n}\r\n\r\nexport enum ValvePosition {\r\n Manual = 0,\r\n Other = 1,\r\n}\r\n\r\nexport enum OperatorGasType {\r\n NITROGEN = 0,\r\n BUTANE = 1,\r\n DRY = 2,\r\n PROPANE = 3,\r\n SOUR = 4,\r\n SWEET = 5,\r\n FUEL = 6,\r\n OTHER = 7,\r\n}\r\n\r\nexport enum KTLSGPLiquidType {\r\n OIL = 0,\r\n PROPANE = 1,\r\n BUTANE = 2,\r\n ACID = 3,\r\n WFLH = 4,\r\n OTHER = 5,\r\n}\r\n\r\nexport class CreateKTLOperatorDTO extends BaseKTLOperatorDTO implements ICreateKTLOperatorDTO {\r\n chemicalCompoundsEquipmentId?: number | undefined;\r\n customName?: string | undefined;\r\n\r\n constructor(data?: ICreateKTLOperatorDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.chemicalCompoundsEquipmentId = _data[\"chemicalCompoundsEquipmentId\"];\r\n this.customName = _data[\"customName\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): CreateKTLOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateKTLOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"chemicalCompoundsEquipmentId\"] = this.chemicalCompoundsEquipmentId;\r\n data[\"customName\"] = this.customName;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateKTLOperatorDTO extends IBaseKTLOperatorDTO {\r\n chemicalCompoundsEquipmentId?: number | undefined;\r\n customName?: string | undefined;\r\n}\r\n\r\nexport class PagedListOfGetSGPOperatorDTO implements IPagedListOfGetSGPOperatorDTO {\r\n pageNumber!: number;\r\n pageSize!: number;\r\n totalCount!: number;\r\n totalPages!: number;\r\n hasPreviousPage!: boolean;\r\n hasNextPage!: boolean;\r\n items!: GetSGPOperatorDTO[];\r\n\r\n constructor(data?: IPagedListOfGetSGPOperatorDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.items = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pageNumber = _data[\"pageNumber\"];\r\n this.pageSize = _data[\"pageSize\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n this.totalPages = _data[\"totalPages\"];\r\n this.hasPreviousPage = _data[\"hasPreviousPage\"];\r\n this.hasNextPage = _data[\"hasNextPage\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetSGPOperatorDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedListOfGetSGPOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedListOfGetSGPOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pageNumber\"] = this.pageNumber;\r\n data[\"pageSize\"] = this.pageSize;\r\n data[\"totalCount\"] = this.totalCount;\r\n data[\"totalPages\"] = this.totalPages;\r\n data[\"hasPreviousPage\"] = this.hasPreviousPage;\r\n data[\"hasNextPage\"] = this.hasNextPage;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedListOfGetSGPOperatorDTO {\r\n pageNumber: number;\r\n pageSize: number;\r\n totalCount: number;\r\n totalPages: number;\r\n hasPreviousPage: boolean;\r\n hasNextPage: boolean;\r\n items: GetSGPOperatorDTO[];\r\n}\r\n\r\nexport class SGPOperatorDTO implements ISGPOperatorDTO {\r\n startTime!: Date;\r\n endTime!: Date;\r\n environmentType!: EnvironmentType;\r\n collectorType!: SGPCollectorType;\r\n gasType?: SGPGasType | undefined;\r\n liquidType?: SGPLiquidType | undefined;\r\n multiplicityType!: MultiplicityType;\r\n valvePosition!: string;\r\n equipmentAndLineName!: string;\r\n startPressureValue?: number | undefined;\r\n endPressureValue?: number | undefined;\r\n startTemperatureValue?: number | undefined;\r\n endTemperatureValue?: number | undefined;\r\n blowingReasonType!: string;\r\n notes?: string | undefined;\r\n\r\n constructor(data?: ISGPOperatorDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.environmentType = _data[\"environmentType\"];\r\n this.collectorType = _data[\"collectorType\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.liquidType = _data[\"liquidType\"];\r\n this.multiplicityType = _data[\"multiplicityType\"];\r\n this.valvePosition = _data[\"valvePosition\"];\r\n this.equipmentAndLineName = _data[\"equipmentAndLineName\"];\r\n this.startPressureValue = _data[\"startPressureValue\"];\r\n this.endPressureValue = _data[\"endPressureValue\"];\r\n this.startTemperatureValue = _data[\"startTemperatureValue\"];\r\n this.endTemperatureValue = _data[\"endTemperatureValue\"];\r\n this.blowingReasonType = _data[\"blowingReasonType\"];\r\n this.notes = _data[\"notes\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGPOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGPOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"environmentType\"] = this.environmentType;\r\n data[\"collectorType\"] = this.collectorType;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"liquidType\"] = this.liquidType;\r\n data[\"multiplicityType\"] = this.multiplicityType;\r\n data[\"valvePosition\"] = this.valvePosition;\r\n data[\"equipmentAndLineName\"] = this.equipmentAndLineName;\r\n data[\"startPressureValue\"] = this.startPressureValue;\r\n data[\"endPressureValue\"] = this.endPressureValue;\r\n data[\"startTemperatureValue\"] = this.startTemperatureValue;\r\n data[\"endTemperatureValue\"] = this.endTemperatureValue;\r\n data[\"blowingReasonType\"] = this.blowingReasonType;\r\n data[\"notes\"] = this.notes;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGPOperatorDTO {\r\n startTime: Date;\r\n endTime: Date;\r\n environmentType: EnvironmentType;\r\n collectorType: SGPCollectorType;\r\n gasType?: SGPGasType | undefined;\r\n liquidType?: SGPLiquidType | undefined;\r\n multiplicityType: MultiplicityType;\r\n valvePosition: string;\r\n equipmentAndLineName: string;\r\n startPressureValue?: number | undefined;\r\n endPressureValue?: number | undefined;\r\n startTemperatureValue?: number | undefined;\r\n endTemperatureValue?: number | undefined;\r\n blowingReasonType: string;\r\n notes?: string | undefined;\r\n}\r\n\r\nexport class GetSGPOperatorDTO extends SGPOperatorDTO implements IGetSGPOperatorDTO {\r\n id!: number;\r\n createdBy?: string | undefined;\r\n logged?: Date | undefined;\r\n\r\n constructor(data?: IGetSGPOperatorDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static override fromJS(data: any): GetSGPOperatorDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetSGPOperatorDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetSGPOperatorDTO extends ISGPOperatorDTO {\r\n id: number;\r\n createdBy?: string | undefined;\r\n logged?: Date | undefined;\r\n}\r\n\r\nexport enum SGPCollectorType {\r\n BD = 0,\r\n BFH = 1,\r\n BFL = 2,\r\n DHC = 3,\r\n DMD = 4,\r\n}\r\n\r\nexport enum SGPGasType {\r\n Sour = 0,\r\n Fuel = 1,\r\n Nitrogen = 2,\r\n Acid = 3,\r\n Sweet = 4,\r\n Propane = 5,\r\n Butane = 6,\r\n SpentAir = 7,\r\n LPG = 8,\r\n Reg = 9,\r\n}\r\n\r\nexport enum SGPLiquidType {\r\n CrudeOil = 0,\r\n Prone = 1,\r\n Butane = 2,\r\n SourWater = 3,\r\n WSLH = 4,\r\n PLG = 5,\r\n RinseWater = 6,\r\n HCLiquids = 7,\r\n}\r\n\r\nexport enum MultiplicityType {\r\n One = 0,\r\n Two = 1,\r\n Three = 2,\r\n Four = 3,\r\n Five = 4,\r\n Constant = 5,\r\n Repeated = 6,\r\n Periodic = 7,\r\n}\r\n\r\nexport class PagedListOfGetDiagnosticianScreenHistoryDTO implements IPagedListOfGetDiagnosticianScreenHistoryDTO {\r\n pageNumber!: number;\r\n pageSize!: number;\r\n totalCount!: number;\r\n totalPages!: number;\r\n hasPreviousPage!: boolean;\r\n hasNextPage!: boolean;\r\n items!: GetDiagnosticianScreenHistoryDTO[];\r\n\r\n constructor(data?: IPagedListOfGetDiagnosticianScreenHistoryDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.items = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pageNumber = _data[\"pageNumber\"];\r\n this.pageSize = _data[\"pageSize\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n this.totalPages = _data[\"totalPages\"];\r\n this.hasPreviousPage = _data[\"hasPreviousPage\"];\r\n this.hasNextPage = _data[\"hasNextPage\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(GetDiagnosticianScreenHistoryDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedListOfGetDiagnosticianScreenHistoryDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedListOfGetDiagnosticianScreenHistoryDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pageNumber\"] = this.pageNumber;\r\n data[\"pageSize\"] = this.pageSize;\r\n data[\"totalCount\"] = this.totalCount;\r\n data[\"totalPages\"] = this.totalPages;\r\n data[\"hasPreviousPage\"] = this.hasPreviousPage;\r\n data[\"hasNextPage\"] = this.hasNextPage;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedListOfGetDiagnosticianScreenHistoryDTO {\r\n pageNumber: number;\r\n pageSize: number;\r\n totalCount: number;\r\n totalPages: number;\r\n hasPreviousPage: boolean;\r\n hasNextPage: boolean;\r\n items: GetDiagnosticianScreenHistoryDTO[];\r\n}\r\n\r\nexport class GetDiagnosticianHistoryChildDTO implements IGetDiagnosticianHistoryChildDTO {\r\n createdBy!: string;\r\n logged?: Date | undefined;\r\n inletSize?: number | undefined;\r\n isGateValve?: boolean | undefined;\r\n isBallValve?: boolean | undefined;\r\n startTime!: Date;\r\n pressureDifference?: number | undefined;\r\n signalLevel?: number | undefined;\r\n coefficient?: number | undefined;\r\n leakLMin?: number | undefined;\r\n leakSCMH?: number | undefined;\r\n flowRate?: number | undefined;\r\n comments?: string | undefined;\r\n id?: number | undefined;\r\n\r\n constructor(data?: IGetDiagnosticianHistoryChildDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.createdBy = _data[\"createdBy\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.inletSize = _data[\"inletSize\"];\r\n this.isGateValve = _data[\"isGateValve\"];\r\n this.isBallValve = _data[\"isBallValve\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.pressureDifference = _data[\"pressureDifference\"];\r\n this.signalLevel = _data[\"signalLevel\"];\r\n this.coefficient = _data[\"coefficient\"];\r\n this.leakLMin = _data[\"leakLMin\"];\r\n this.leakSCMH = _data[\"leakSCMH\"];\r\n this.flowRate = _data[\"flowRate\"];\r\n this.comments = _data[\"comments\"];\r\n this.id = _data[\"id\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetDiagnosticianHistoryChildDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetDiagnosticianHistoryChildDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"inletSize\"] = this.inletSize;\r\n data[\"isGateValve\"] = this.isGateValve;\r\n data[\"isBallValve\"] = this.isBallValve;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"pressureDifference\"] = this.pressureDifference;\r\n data[\"signalLevel\"] = this.signalLevel;\r\n data[\"coefficient\"] = this.coefficient;\r\n data[\"leakLMin\"] = this.leakLMin;\r\n data[\"leakSCMH\"] = this.leakSCMH;\r\n data[\"flowRate\"] = this.flowRate;\r\n data[\"comments\"] = this.comments;\r\n data[\"id\"] = this.id;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetDiagnosticianHistoryChildDTO {\r\n createdBy: string;\r\n logged?: Date | undefined;\r\n inletSize?: number | undefined;\r\n isGateValve?: boolean | undefined;\r\n isBallValve?: boolean | undefined;\r\n startTime: Date;\r\n pressureDifference?: number | undefined;\r\n signalLevel?: number | undefined;\r\n coefficient?: number | undefined;\r\n leakLMin?: number | undefined;\r\n leakSCMH?: number | undefined;\r\n flowRate?: number | undefined;\r\n comments?: string | undefined;\r\n id?: number | undefined;\r\n}\r\n\r\nexport class GetDiagnosticianScreenHistoryDTO extends GetDiagnosticianHistoryChildDTO implements IGetDiagnosticianScreenHistoryDTO {\r\n valveName!: string;\r\n unitName!: string;\r\n facility?: KTLTrains | undefined;\r\n diagnosticianConstantId!: number;\r\n\r\n constructor(data?: IGetDiagnosticianScreenHistoryDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.valveName = _data[\"valveName\"];\r\n this.unitName = _data[\"unitName\"];\r\n this.facility = _data[\"facility\"];\r\n this.diagnosticianConstantId = _data[\"diagnosticianConstantId\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): GetDiagnosticianScreenHistoryDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetDiagnosticianScreenHistoryDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"valveName\"] = this.valveName;\r\n data[\"unitName\"] = this.unitName;\r\n data[\"facility\"] = this.facility;\r\n data[\"diagnosticianConstantId\"] = this.diagnosticianConstantId;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetDiagnosticianScreenHistoryDTO extends IGetDiagnosticianHistoryChildDTO {\r\n valveName: string;\r\n unitName: string;\r\n facility?: KTLTrains | undefined;\r\n diagnosticianConstantId: number;\r\n}\r\n\r\nexport class GetDiagnosticianScreenInputDTO extends GetDiagnosticianHistoryChildDTO implements IGetDiagnosticianScreenInputDTO {\r\n valveName!: string;\r\n unitName!: string;\r\n facility?: KTLTrains | undefined;\r\n diagnosticianConstantId!: number;\r\n\r\n constructor(data?: IGetDiagnosticianScreenInputDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.valveName = _data[\"valveName\"];\r\n this.unitName = _data[\"unitName\"];\r\n this.facility = _data[\"facility\"];\r\n this.diagnosticianConstantId = _data[\"diagnosticianConstantId\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): GetDiagnosticianScreenInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new GetDiagnosticianScreenInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"valveName\"] = this.valveName;\r\n data[\"unitName\"] = this.unitName;\r\n data[\"facility\"] = this.facility;\r\n data[\"diagnosticianConstantId\"] = this.diagnosticianConstantId;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IGetDiagnosticianScreenInputDTO extends IGetDiagnosticianHistoryChildDTO {\r\n valveName: string;\r\n unitName: string;\r\n facility?: KTLTrains | undefined;\r\n diagnosticianConstantId: number;\r\n}\r\n\r\nexport class DiagnosticianScreenDTO implements IDiagnosticianScreenDTO {\r\n id?: number | undefined;\r\n pressureDifference?: number | undefined;\r\n signalLevel?: number | undefined;\r\n coefficient?: number | undefined;\r\n leakLMin?: number | undefined;\r\n leakSCMH?: number | undefined;\r\n flowRate!: number;\r\n manualInletSize?: number | undefined;\r\n manualIsGateValve?: boolean | undefined;\r\n manualIsBallValve?: boolean | undefined;\r\n comments?: string | undefined;\r\n diagnosticianConstantId!: number;\r\n\r\n constructor(data?: IDiagnosticianScreenDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.pressureDifference = _data[\"pressureDifference\"];\r\n this.signalLevel = _data[\"signalLevel\"];\r\n this.coefficient = _data[\"coefficient\"];\r\n this.leakLMin = _data[\"leakLMin\"];\r\n this.leakSCMH = _data[\"leakSCMH\"];\r\n this.flowRate = _data[\"flowRate\"];\r\n this.manualInletSize = _data[\"manualInletSize\"];\r\n this.manualIsGateValve = _data[\"manualIsGateValve\"];\r\n this.manualIsBallValve = _data[\"manualIsBallValve\"];\r\n this.comments = _data[\"comments\"];\r\n this.diagnosticianConstantId = _data[\"diagnosticianConstantId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DiagnosticianScreenDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DiagnosticianScreenDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"pressureDifference\"] = this.pressureDifference;\r\n data[\"signalLevel\"] = this.signalLevel;\r\n data[\"coefficient\"] = this.coefficient;\r\n data[\"leakLMin\"] = this.leakLMin;\r\n data[\"leakSCMH\"] = this.leakSCMH;\r\n data[\"flowRate\"] = this.flowRate;\r\n data[\"manualInletSize\"] = this.manualInletSize;\r\n data[\"manualIsGateValve\"] = this.manualIsGateValve;\r\n data[\"manualIsBallValve\"] = this.manualIsBallValve;\r\n data[\"comments\"] = this.comments;\r\n data[\"diagnosticianConstantId\"] = this.diagnosticianConstantId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDiagnosticianScreenDTO {\r\n id?: number | undefined;\r\n pressureDifference?: number | undefined;\r\n signalLevel?: number | undefined;\r\n coefficient?: number | undefined;\r\n leakLMin?: number | undefined;\r\n leakSCMH?: number | undefined;\r\n flowRate: number;\r\n manualInletSize?: number | undefined;\r\n manualIsGateValve?: boolean | undefined;\r\n manualIsBallValve?: boolean | undefined;\r\n comments?: string | undefined;\r\n diagnosticianConstantId: number;\r\n}\r\n\r\nexport class CreateDiagnosticianInputDTO extends DiagnosticianScreenDTO implements ICreateDiagnosticianInputDTO {\r\n startTime!: Date;\r\n facility!: KTLTrains;\r\n unitName!: UnitList;\r\n\r\n constructor(data?: ICreateDiagnosticianInputDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.facility = _data[\"facility\"];\r\n this.unitName = _data[\"unitName\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): CreateDiagnosticianInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CreateDiagnosticianInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"facility\"] = this.facility;\r\n data[\"unitName\"] = this.unitName;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICreateDiagnosticianInputDTO extends IDiagnosticianScreenDTO {\r\n startTime: Date;\r\n facility: KTLTrains;\r\n unitName: UnitList;\r\n}\r\n\r\nexport class DiagnosticianRelationFacilityDTO implements IDiagnosticianRelationFacilityDTO {\r\n faciltiy!: KTLTrains;\r\n units!: DiagnosticianRelationUnitDTO[];\r\n\r\n constructor(data?: IDiagnosticianRelationFacilityDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.units = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.faciltiy = _data[\"faciltiy\"];\r\n if (Array.isArray(_data[\"units\"])) {\r\n this.units = [] as any;\r\n for (let item of _data[\"units\"])\r\n this.units!.push(DiagnosticianRelationUnitDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): DiagnosticianRelationFacilityDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DiagnosticianRelationFacilityDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"faciltiy\"] = this.faciltiy;\r\n if (Array.isArray(this.units)) {\r\n data[\"units\"] = [];\r\n for (let item of this.units)\r\n data[\"units\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDiagnosticianRelationFacilityDTO {\r\n faciltiy: KTLTrains;\r\n units: DiagnosticianRelationUnitDTO[];\r\n}\r\n\r\nexport class DiagnosticianRelationUnitDTO implements IDiagnosticianRelationUnitDTO {\r\n unit!: string;\r\n valve!: DiagnosticianRelationValveDTO[];\r\n\r\n constructor(data?: IDiagnosticianRelationUnitDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.valve = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.unit = _data[\"unit\"];\r\n if (Array.isArray(_data[\"valve\"])) {\r\n this.valve = [] as any;\r\n for (let item of _data[\"valve\"])\r\n this.valve!.push(DiagnosticianRelationValveDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): DiagnosticianRelationUnitDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DiagnosticianRelationUnitDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"unit\"] = this.unit;\r\n if (Array.isArray(this.valve)) {\r\n data[\"valve\"] = [];\r\n for (let item of this.valve)\r\n data[\"valve\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDiagnosticianRelationUnitDTO {\r\n unit: string;\r\n valve: DiagnosticianRelationValveDTO[];\r\n}\r\n\r\nexport class DiagnosticianRelationValveDTO implements IDiagnosticianRelationValveDTO {\r\n title!: string;\r\n value!: string;\r\n\r\n constructor(data?: IDiagnosticianRelationValveDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.title = _data[\"title\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): DiagnosticianRelationValveDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DiagnosticianRelationValveDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"title\"] = this.title;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDiagnosticianRelationValveDTO {\r\n title: string;\r\n value: string;\r\n}\r\n\r\nexport class LeakageScreenDTO extends CCBaseKTLSGP implements ILeakageScreenDTO {\r\n id?: number | undefined;\r\n startTime!: Date;\r\n endTime?: Date | undefined;\r\n facility!: KTLTrains;\r\n unit!: UnitList;\r\n diagnosticianValveName!: string;\r\n gasType?: KTLSGPGasType | undefined;\r\n flare?: TrainList | undefined;\r\n volume!: number;\r\n mass!: number;\r\n comments?: string | undefined;\r\n loggedBy!: string;\r\n logged?: Date | undefined;\r\n updatedDate?: Date | undefined;\r\n diagnosticianInputId!: number;\r\n isManualValve!: boolean;\r\n isMatchWithDiagnostician!: boolean;\r\n\r\n constructor(data?: ILeakageScreenDTO) {\r\n super(data);\r\n }\r\n\r\n override init(_data?: any) {\r\n super.init(_data);\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.facility = _data[\"facility\"];\r\n this.unit = _data[\"unit\"];\r\n this.diagnosticianValveName = _data[\"diagnosticianValveName\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.flare = _data[\"flare\"];\r\n this.volume = _data[\"volume\"];\r\n this.mass = _data[\"mass\"];\r\n this.comments = _data[\"comments\"];\r\n this.loggedBy = _data[\"loggedBy\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.updatedDate = _data[\"updatedDate\"] ? new Date(_data[\"updatedDate\"].toString()) : undefined;\r\n this.diagnosticianInputId = _data[\"diagnosticianInputId\"];\r\n this.isManualValve = _data[\"isManualValve\"];\r\n this.isMatchWithDiagnostician = _data[\"isMatchWithDiagnostician\"];\r\n }\r\n }\r\n\r\n static override fromJS(data: any): LeakageScreenDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LeakageScreenDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n override toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"facility\"] = this.facility;\r\n data[\"unit\"] = this.unit;\r\n data[\"diagnosticianValveName\"] = this.diagnosticianValveName;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"flare\"] = this.flare;\r\n data[\"volume\"] = this.volume;\r\n data[\"mass\"] = this.mass;\r\n data[\"comments\"] = this.comments;\r\n data[\"loggedBy\"] = this.loggedBy;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"updatedDate\"] = this.updatedDate ? this.updatedDate.toISOString() : undefined;\r\n data[\"diagnosticianInputId\"] = this.diagnosticianInputId;\r\n data[\"isManualValve\"] = this.isManualValve;\r\n data[\"isMatchWithDiagnostician\"] = this.isMatchWithDiagnostician;\r\n super.toJSON(data);\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILeakageScreenDTO extends ICCBaseKTLSGP {\r\n id?: number | undefined;\r\n startTime: Date;\r\n endTime?: Date | undefined;\r\n facility: KTLTrains;\r\n unit: UnitList;\r\n diagnosticianValveName: string;\r\n gasType?: KTLSGPGasType | undefined;\r\n flare?: TrainList | undefined;\r\n volume: number;\r\n mass: number;\r\n comments?: string | undefined;\r\n loggedBy: string;\r\n logged?: Date | undefined;\r\n updatedDate?: Date | undefined;\r\n diagnosticianInputId: number;\r\n isManualValve: boolean;\r\n isMatchWithDiagnostician: boolean;\r\n}\r\n\r\nexport enum KTLSGPGasType {\r\n ACID = 0,\r\n BUTANE = 1,\r\n DRY = 2,\r\n PROPANE = 3,\r\n SOUR = 4,\r\n SWEET = 5,\r\n}\r\n\r\nexport class LPGOperatorInputDTO implements ILPGOperatorInputDTO {\r\n id!: number;\r\n startTime!: Date;\r\n endTime!: Date;\r\n lpgPark!: LPGPark;\r\n gasType!: LPGGasType;\r\n bullet!: string;\r\n reason!: string;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n other?: string | undefined;\r\n techComments?: string | undefined;\r\n isOperator!: boolean;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ILPGOperatorInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.lpgPark = _data[\"lpgPark\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.bullet = _data[\"bullet\"];\r\n this.reason = _data[\"reason\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.other = _data[\"other\"];\r\n this.techComments = _data[\"techComments\"];\r\n this.isOperator = _data[\"isOperator\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGOperatorInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGOperatorInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"lpgPark\"] = this.lpgPark;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"bullet\"] = this.bullet;\r\n data[\"reason\"] = this.reason;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"other\"] = this.other;\r\n data[\"techComments\"] = this.techComments;\r\n data[\"isOperator\"] = this.isOperator;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGOperatorInputDTO {\r\n id: number;\r\n startTime: Date;\r\n endTime: Date;\r\n lpgPark: LPGPark;\r\n gasType: LPGGasType;\r\n bullet: string;\r\n reason: string;\r\n createdBy: string;\r\n updatedBy: string;\r\n other?: string | undefined;\r\n techComments?: string | undefined;\r\n isOperator: boolean;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum LPGPark {\r\n OldParkKTL = 0,\r\n NewParkSGP = 1,\r\n}\r\n\r\nexport enum LPGGasType {\r\n Dry = 0,\r\n Propane = 1,\r\n Butane = 2,\r\n}\r\n\r\nexport class LPGPEInputDTO implements ILPGPEInputDTO {\r\n id!: number;\r\n startTime!: Date;\r\n endTime!: Date;\r\n lpgPark!: LPGPark;\r\n gasType!: LPGGasType;\r\n purpose!: LPGPurpose;\r\n isAuto!: boolean;\r\n bullet!: string;\r\n other?: string | undefined;\r\n techComments?: string | undefined;\r\n mwSelectionPoint!: LPGStreamCCType;\r\n category?: PermitTargetInputCategory | undefined;\r\n volume!: number;\r\n mass!: number;\r\n reason!: string;\r\n isFlowmeter!: boolean;\r\n isManual!: boolean;\r\n flaringAvgFrom!: Date;\r\n flaringAvgTo!: Date;\r\n flaringAvgVolume!: number;\r\n flaringStartTime!: Date;\r\n flaringEndTime!: Date;\r\n flaredVolume!: number;\r\n flaredMass!: number;\r\n seeq!: string;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n logged!: Date;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ILPGPEInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.lpgPark = _data[\"lpgPark\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.purpose = _data[\"purpose\"];\r\n this.isAuto = _data[\"isAuto\"];\r\n this.bullet = _data[\"bullet\"];\r\n this.other = _data[\"other\"];\r\n this.techComments = _data[\"techComments\"];\r\n this.mwSelectionPoint = _data[\"mwSelectionPoint\"];\r\n this.category = _data[\"category\"];\r\n this.volume = _data[\"volume\"];\r\n this.mass = _data[\"mass\"];\r\n this.reason = _data[\"reason\"];\r\n this.isFlowmeter = _data[\"isFlowmeter\"];\r\n this.isManual = _data[\"isManual\"];\r\n this.flaringAvgFrom = _data[\"flaringAvgFrom\"] ? new Date(_data[\"flaringAvgFrom\"].toString()) : undefined;\r\n this.flaringAvgTo = _data[\"flaringAvgTo\"] ? new Date(_data[\"flaringAvgTo\"].toString()) : undefined;\r\n this.flaringAvgVolume = _data[\"flaringAvgVolume\"];\r\n this.flaringStartTime = _data[\"flaringStartTime\"] ? new Date(_data[\"flaringStartTime\"].toString()) : undefined;\r\n this.flaringEndTime = _data[\"flaringEndTime\"] ? new Date(_data[\"flaringEndTime\"].toString()) : undefined;\r\n this.flaredVolume = _data[\"flaredVolume\"];\r\n this.flaredMass = _data[\"flaredMass\"];\r\n this.seeq = _data[\"seeq\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGPEInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGPEInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"lpgPark\"] = this.lpgPark;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"purpose\"] = this.purpose;\r\n data[\"isAuto\"] = this.isAuto;\r\n data[\"bullet\"] = this.bullet;\r\n data[\"other\"] = this.other;\r\n data[\"techComments\"] = this.techComments;\r\n data[\"mwSelectionPoint\"] = this.mwSelectionPoint;\r\n data[\"category\"] = this.category;\r\n data[\"volume\"] = this.volume;\r\n data[\"mass\"] = this.mass;\r\n data[\"reason\"] = this.reason;\r\n data[\"isFlowmeter\"] = this.isFlowmeter;\r\n data[\"isManual\"] = this.isManual;\r\n data[\"flaringAvgFrom\"] = this.flaringAvgFrom ? this.flaringAvgFrom.toISOString() : undefined;\r\n data[\"flaringAvgTo\"] = this.flaringAvgTo ? this.flaringAvgTo.toISOString() : undefined;\r\n data[\"flaringAvgVolume\"] = this.flaringAvgVolume;\r\n data[\"flaringStartTime\"] = this.flaringStartTime ? this.flaringStartTime.toISOString() : undefined;\r\n data[\"flaringEndTime\"] = this.flaringEndTime ? this.flaringEndTime.toISOString() : undefined;\r\n data[\"flaredVolume\"] = this.flaredVolume;\r\n data[\"flaredMass\"] = this.flaredMass;\r\n data[\"seeq\"] = this.seeq;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGPEInputDTO {\r\n id: number;\r\n startTime: Date;\r\n endTime: Date;\r\n lpgPark: LPGPark;\r\n gasType: LPGGasType;\r\n purpose: LPGPurpose;\r\n isAuto: boolean;\r\n bullet: string;\r\n other?: string | undefined;\r\n techComments?: string | undefined;\r\n mwSelectionPoint: LPGStreamCCType;\r\n category?: PermitTargetInputCategory | undefined;\r\n volume: number;\r\n mass: number;\r\n reason: string;\r\n isFlowmeter: boolean;\r\n isManual: boolean;\r\n flaringAvgFrom: Date;\r\n flaringAvgTo: Date;\r\n flaringAvgVolume: number;\r\n flaringStartTime: Date;\r\n flaringEndTime: Date;\r\n flaredVolume: number;\r\n flaredMass: number;\r\n seeq: string;\r\n createdBy: string;\r\n updatedBy: string;\r\n logged: Date;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum LPGPurpose {\r\n Flared = 0,\r\n Leakage = 1,\r\n}\r\n\r\nexport enum LPGStreamCCType {\r\n Nothing = 0,\r\n Korolev = 1,\r\n KTL1 = 2,\r\n KTL2 = 3,\r\n KTL23 = 4,\r\n KTLAvg = 5,\r\n E902 = 6,\r\n F3501 = 7,\r\n F3502 = 8,\r\n F3503 = 9,\r\n OldParkAvgPropane = 10,\r\n NewParkAvgPropane = 11,\r\n PropaneAvg = 12,\r\n E901 = 13,\r\n F3511 = 14,\r\n F3512 = 15,\r\n F3513 = 16,\r\n OldParkAvgButane = 17,\r\n NewParkAvgButane = 18,\r\n ButaneAvg = 19,\r\n}\r\n\r\nexport class LPGMonthlyInputRecordDTO implements ILPGMonthlyInputRecordDTO {\r\n id!: number;\r\n type!: LPGMonthlyInputRecordType;\r\n volume?: number | undefined;\r\n pilotGasRate?: number | undefined;\r\n purgeRate?: number | undefined;\r\n purgeRate2?: number | undefined;\r\n numberOfFuelGasLine?: number | undefined;\r\n comment!: string;\r\n isAuto!: boolean;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n startTime!: Date;\r\n logged!: Date;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ILPGMonthlyInputRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.type = _data[\"type\"];\r\n this.volume = _data[\"volume\"];\r\n this.pilotGasRate = _data[\"pilotGasRate\"];\r\n this.purgeRate = _data[\"purgeRate\"];\r\n this.purgeRate2 = _data[\"purgeRate2\"];\r\n this.numberOfFuelGasLine = _data[\"numberOfFuelGasLine\"];\r\n this.comment = _data[\"comment\"];\r\n this.isAuto = _data[\"isAuto\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGMonthlyInputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGMonthlyInputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"type\"] = this.type;\r\n data[\"volume\"] = this.volume;\r\n data[\"pilotGasRate\"] = this.pilotGasRate;\r\n data[\"purgeRate\"] = this.purgeRate;\r\n data[\"purgeRate2\"] = this.purgeRate2;\r\n data[\"numberOfFuelGasLine\"] = this.numberOfFuelGasLine;\r\n data[\"comment\"] = this.comment;\r\n data[\"isAuto\"] = this.isAuto;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGMonthlyInputRecordDTO {\r\n id: number;\r\n type: LPGMonthlyInputRecordType;\r\n volume?: number | undefined;\r\n pilotGasRate?: number | undefined;\r\n purgeRate?: number | undefined;\r\n purgeRate2?: number | undefined;\r\n numberOfFuelGasLine?: number | undefined;\r\n comment: string;\r\n isAuto: boolean;\r\n createdBy: string;\r\n updatedBy: string;\r\n startTime: Date;\r\n logged: Date;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum LPGMonthlyInputRecordType {\r\n Smokeless = 0,\r\n Smoke = 1,\r\n Pilot = 2,\r\n FlareHeader = 3,\r\n}\r\n\r\nexport enum LPGFlowmeterCalculateType {\r\n Average = 0,\r\n Volume = 1,\r\n Mass = 2,\r\n}\r\n\r\nexport class LPGAnalystInputDTO implements ILPGAnalystInputDTO {\r\n id!: number;\r\n startTime!: Date;\r\n oldPropane!: number;\r\n oldButane!: number;\r\n newPropane!: number;\r\n newButane!: number;\r\n comment!: string;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n logged!: Date;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ILPGAnalystInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.oldPropane = _data[\"oldPropane\"];\r\n this.oldButane = _data[\"oldButane\"];\r\n this.newPropane = _data[\"newPropane\"];\r\n this.newButane = _data[\"newButane\"];\r\n this.comment = _data[\"comment\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGAnalystInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGAnalystInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"oldPropane\"] = this.oldPropane;\r\n data[\"oldButane\"] = this.oldButane;\r\n data[\"newPropane\"] = this.newPropane;\r\n data[\"newButane\"] = this.newButane;\r\n data[\"comment\"] = this.comment;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGAnalystInputDTO {\r\n id: number;\r\n startTime: Date;\r\n oldPropane: number;\r\n oldButane: number;\r\n newPropane: number;\r\n newButane: number;\r\n comment: string;\r\n createdBy: string;\r\n updatedBy: string;\r\n logged: Date;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class LPGDataForAnalystDTO implements ILPGDataForAnalystDTO {\r\n elementName!: string;\r\n gasType!: LPGGasType;\r\n totalVolume!: number;\r\n totalVolumekSm3!: number;\r\n totalMass!: number;\r\n\r\n constructor(data?: ILPGDataForAnalystDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.elementName = _data[\"elementName\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.totalVolumekSm3 = _data[\"totalVolumekSm3\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGDataForAnalystDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGDataForAnalystDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"elementName\"] = this.elementName;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"totalVolumekSm3\"] = this.totalVolumekSm3;\r\n data[\"totalMass\"] = this.totalMass;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGDataForAnalystDTO {\r\n elementName: string;\r\n gasType: LPGGasType;\r\n totalVolume: number;\r\n totalVolumekSm3: number;\r\n totalMass: number;\r\n}\r\n\r\nexport class LPGFlowmeterGraphDTO implements ILPGFlowmeterGraphDTO {\r\n title!: string;\r\n values!: LPGFlowmeterValuesDTO[];\r\n\r\n constructor(data?: ILPGFlowmeterGraphDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.values = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.title = _data[\"title\"];\r\n if (Array.isArray(_data[\"values\"])) {\r\n this.values = [] as any;\r\n for (let item of _data[\"values\"])\r\n this.values!.push(LPGFlowmeterValuesDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGFlowmeterGraphDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGFlowmeterGraphDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"title\"] = this.title;\r\n if (Array.isArray(this.values)) {\r\n data[\"values\"] = [];\r\n for (let item of this.values)\r\n data[\"values\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGFlowmeterGraphDTO {\r\n title: string;\r\n values: LPGFlowmeterValuesDTO[];\r\n}\r\n\r\nexport class LPGFlowmeterValuesDTO implements ILPGFlowmeterValuesDTO {\r\n timeStamp!: Date;\r\n value!: number;\r\n\r\n constructor(data?: ILPGFlowmeterValuesDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGFlowmeterValuesDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGFlowmeterValuesDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGFlowmeterValuesDTO {\r\n timeStamp: Date;\r\n value: number;\r\n}\r\n\r\nexport enum LPGFlowmeterGraphTypes {\r\n Smokeless = 0,\r\n Smoke = 1,\r\n FlaredGasFlowmeter = 2,\r\n}\r\n\r\nexport class LPGFuelGasFlaringReportDTO implements ILPGFuelGasFlaringReportDTO {\r\n timeStamp!: Date;\r\n monthlyGasFlaringReport!: LPGMonthlyGasFlaringReportDTO[];\r\n fuelGasFlaring!: LPGFuelGasFlaringDTO[];\r\n\r\n constructor(data?: ILPGFuelGasFlaringReportDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.monthlyGasFlaringReport = [];\r\n this.fuelGasFlaring = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"monthlyGasFlaringReport\"])) {\r\n this.monthlyGasFlaringReport = [] as any;\r\n for (let item of _data[\"monthlyGasFlaringReport\"])\r\n this.monthlyGasFlaringReport!.push(LPGMonthlyGasFlaringReportDTO.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"fuelGasFlaring\"])) {\r\n this.fuelGasFlaring = [] as any;\r\n for (let item of _data[\"fuelGasFlaring\"])\r\n this.fuelGasFlaring!.push(LPGFuelGasFlaringDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGFuelGasFlaringReportDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGFuelGasFlaringReportDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n if (Array.isArray(this.monthlyGasFlaringReport)) {\r\n data[\"monthlyGasFlaringReport\"] = [];\r\n for (let item of this.monthlyGasFlaringReport)\r\n data[\"monthlyGasFlaringReport\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.fuelGasFlaring)) {\r\n data[\"fuelGasFlaring\"] = [];\r\n for (let item of this.fuelGasFlaring)\r\n data[\"fuelGasFlaring\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGFuelGasFlaringReportDTO {\r\n timeStamp: Date;\r\n monthlyGasFlaringReport: LPGMonthlyGasFlaringReportDTO[];\r\n fuelGasFlaring: LPGFuelGasFlaringDTO[];\r\n}\r\n\r\nexport class LPGMonthlyGasFlaringReportDTO implements ILPGMonthlyGasFlaringReportDTO {\r\n elementName!: string;\r\n totalVolume!: number;\r\n totalVolumekSm3!: number;\r\n totalMass!: number;\r\n\r\n constructor(data?: ILPGMonthlyGasFlaringReportDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.elementName = _data[\"elementName\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.totalVolumekSm3 = _data[\"totalVolumekSm3\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGMonthlyGasFlaringReportDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGMonthlyGasFlaringReportDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"elementName\"] = this.elementName;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"totalVolumekSm3\"] = this.totalVolumekSm3;\r\n data[\"totalMass\"] = this.totalMass;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGMonthlyGasFlaringReportDTO {\r\n elementName: string;\r\n totalVolume: number;\r\n totalVolumekSm3: number;\r\n totalMass: number;\r\n}\r\n\r\nexport class LPGFuelGasFlaringDTO implements ILPGFuelGasFlaringDTO {\r\n timeStamp!: Date;\r\n totalMass!: number;\r\n totalVolume!: number;\r\n comment!: string;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n elementName!: string;\r\n type!: LPGMonthlyInputRecordType;\r\n status!: string;\r\n\r\n constructor(data?: ILPGFuelGasFlaringDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.totalMass = _data[\"totalMass\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.comment = _data[\"comment\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.elementName = _data[\"elementName\"];\r\n this.type = _data[\"type\"];\r\n this.status = _data[\"status\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGFuelGasFlaringDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGFuelGasFlaringDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"comment\"] = this.comment;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"elementName\"] = this.elementName;\r\n data[\"type\"] = this.type;\r\n data[\"status\"] = this.status;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGFuelGasFlaringDTO {\r\n timeStamp: Date;\r\n totalMass: number;\r\n totalVolume: number;\r\n comment: string;\r\n createdBy: string;\r\n updatedBy: string;\r\n elementName: string;\r\n type: LPGMonthlyInputRecordType;\r\n status: string;\r\n}\r\n\r\nexport class LPGFuelGasFlaringDefaultDTO implements ILPGFuelGasFlaringDefaultDTO {\r\n pilotGasRate?: number | undefined;\r\n purgeRate?: number | undefined;\r\n purgeRate2?: number | undefined;\r\n numberOfFuelGasLine?: number | undefined;\r\n\r\n constructor(data?: ILPGFuelGasFlaringDefaultDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pilotGasRate = _data[\"pilotGasRate\"];\r\n this.purgeRate = _data[\"purgeRate\"];\r\n this.purgeRate2 = _data[\"purgeRate2\"];\r\n this.numberOfFuelGasLine = _data[\"numberOfFuelGasLine\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGFuelGasFlaringDefaultDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGFuelGasFlaringDefaultDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pilotGasRate\"] = this.pilotGasRate;\r\n data[\"purgeRate\"] = this.purgeRate;\r\n data[\"purgeRate2\"] = this.purgeRate2;\r\n data[\"numberOfFuelGasLine\"] = this.numberOfFuelGasLine;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGFuelGasFlaringDefaultDTO {\r\n pilotGasRate?: number | undefined;\r\n purgeRate?: number | undefined;\r\n purgeRate2?: number | undefined;\r\n numberOfFuelGasLine?: number | undefined;\r\n}\r\n\r\nexport class ChemicalCompoundRecord implements IChemicalCompoundRecord {\r\n name!: string;\r\n cc!: ChemicalCompounds;\r\n timeStamp!: Date;\r\n\r\n constructor(data?: IChemicalCompoundRecord) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.cc = new ChemicalCompounds();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.cc = _data[\"cc\"] ? ChemicalCompounds.fromJS(_data[\"cc\"]) : new ChemicalCompounds();\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChemicalCompoundRecord {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChemicalCompoundRecord();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"cc\"] = this.cc ? this.cc.toJSON() : undefined;\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChemicalCompoundRecord {\r\n name: string;\r\n cc: ChemicalCompounds;\r\n timeStamp: Date;\r\n}\r\n\r\nexport class LPGDataDTO implements ILPGDataDTO {\r\n year!: number;\r\n lpgData!: LPGCalculatedStreamDTO[];\r\n forAnalysts!: LPGDataForAnalystDTO[];\r\n bulletsEntry!: LPGDataBulletsEntryDTO[];\r\n\r\n constructor(data?: ILPGDataDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.lpgData = [];\r\n this.forAnalysts = [];\r\n this.bulletsEntry = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.year = _data[\"year\"];\r\n if (Array.isArray(_data[\"lpgData\"])) {\r\n this.lpgData = [] as any;\r\n for (let item of _data[\"lpgData\"])\r\n this.lpgData!.push(LPGCalculatedStreamDTO.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"forAnalysts\"])) {\r\n this.forAnalysts = [] as any;\r\n for (let item of _data[\"forAnalysts\"])\r\n this.forAnalysts!.push(LPGDataForAnalystDTO.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"bulletsEntry\"])) {\r\n this.bulletsEntry = [] as any;\r\n for (let item of _data[\"bulletsEntry\"])\r\n this.bulletsEntry!.push(LPGDataBulletsEntryDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGDataDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGDataDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"year\"] = this.year;\r\n if (Array.isArray(this.lpgData)) {\r\n data[\"lpgData\"] = [];\r\n for (let item of this.lpgData)\r\n data[\"lpgData\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.forAnalysts)) {\r\n data[\"forAnalysts\"] = [];\r\n for (let item of this.forAnalysts)\r\n data[\"forAnalysts\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.bulletsEntry)) {\r\n data[\"bulletsEntry\"] = [];\r\n for (let item of this.bulletsEntry)\r\n data[\"bulletsEntry\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGDataDTO {\r\n year: number;\r\n lpgData: LPGCalculatedStreamDTO[];\r\n forAnalysts: LPGDataForAnalystDTO[];\r\n bulletsEntry: LPGDataBulletsEntryDTO[];\r\n}\r\n\r\nexport class LPGCalculatedStreamDTO implements ILPGCalculatedStreamDTO {\r\n timeStamp!: Date;\r\n isApproved!: boolean;\r\n isConfirmed!: boolean;\r\n totalMass!: number;\r\n totalVolume!: number;\r\n elementName!: string;\r\n status!: string;\r\n gasType!: LPGGasType;\r\n\r\n constructor(data?: ILPGCalculatedStreamDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.isApproved = _data[\"isApproved\"];\r\n this.isConfirmed = _data[\"isConfirmed\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.elementName = _data[\"elementName\"];\r\n this.status = _data[\"status\"];\r\n this.gasType = _data[\"gasType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGCalculatedStreamDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGCalculatedStreamDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"isApproved\"] = this.isApproved;\r\n data[\"isConfirmed\"] = this.isConfirmed;\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"elementName\"] = this.elementName;\r\n data[\"status\"] = this.status;\r\n data[\"gasType\"] = this.gasType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGCalculatedStreamDTO {\r\n timeStamp: Date;\r\n isApproved: boolean;\r\n isConfirmed: boolean;\r\n totalMass: number;\r\n totalVolume: number;\r\n elementName: string;\r\n status: string;\r\n gasType: LPGGasType;\r\n}\r\n\r\nexport class LPGDataBulletsEntryDTO implements ILPGDataBulletsEntryDTO {\r\n timeStamp!: Date;\r\n propane!: number;\r\n butane!: number;\r\n elementName!: string;\r\n\r\n constructor(data?: ILPGDataBulletsEntryDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.propane = _data[\"propane\"];\r\n this.butane = _data[\"butane\"];\r\n this.elementName = _data[\"elementName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGDataBulletsEntryDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGDataBulletsEntryDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"propane\"] = this.propane;\r\n data[\"butane\"] = this.butane;\r\n data[\"elementName\"] = this.elementName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGDataBulletsEntryDTO {\r\n timeStamp: Date;\r\n propane: number;\r\n butane: number;\r\n elementName: string;\r\n}\r\n\r\nexport class LPGFlaringReportDTO implements ILPGFlaringReportDTO {\r\n elementsType!: LPGFlaringReportElementsType;\r\n items!: LPGFlaringReportItemDTO[];\r\n\r\n constructor(data?: ILPGFlaringReportDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.items = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.elementsType = _data[\"elementsType\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(LPGFlaringReportItemDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGFlaringReportDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGFlaringReportDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"elementsType\"] = this.elementsType;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGFlaringReportDTO {\r\n elementsType: LPGFlaringReportElementsType;\r\n items: LPGFlaringReportItemDTO[];\r\n}\r\n\r\nexport enum LPGFlaringReportElementsType {\r\n GasMixture = 0,\r\n DryGas = 1,\r\n Propane = 2,\r\n Butane = 3,\r\n}\r\n\r\nexport class LPGFlaringReportItemDTO implements ILPGFlaringReportItemDTO {\r\n order!: number;\r\n value!: number;\r\n name!: string;\r\n\r\n constructor(data?: ILPGFlaringReportItemDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.order = _data[\"order\"];\r\n this.value = _data[\"value\"];\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGFlaringReportItemDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGFlaringReportItemDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"order\"] = this.order;\r\n data[\"value\"] = this.value;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGFlaringReportItemDTO {\r\n order: number;\r\n value: number;\r\n name: string;\r\n}\r\n\r\nexport class LPGTargetPermitInputDTO implements ILPGTargetPermitInputDTO {\r\n id!: number;\r\n limit!: PermitTargetInputType;\r\n category!: PermitTargetInputCategory;\r\n gasType?: LPGGasType | undefined;\r\n year!: number;\r\n january!: number;\r\n february!: number;\r\n march!: number;\r\n april!: number;\r\n may!: number;\r\n june!: number;\r\n july!: number;\r\n august!: number;\r\n september!: number;\r\n october!: number;\r\n november!: number;\r\n december!: number;\r\n createdBy!: string;\r\n updatedBy!: string;\r\n logged!: Date;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ILPGTargetPermitInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.limit = _data[\"limit\"];\r\n this.category = _data[\"category\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.year = _data[\"year\"];\r\n this.january = _data[\"january\"];\r\n this.february = _data[\"february\"];\r\n this.march = _data[\"march\"];\r\n this.april = _data[\"april\"];\r\n this.may = _data[\"may\"];\r\n this.june = _data[\"june\"];\r\n this.july = _data[\"july\"];\r\n this.august = _data[\"august\"];\r\n this.september = _data[\"september\"];\r\n this.october = _data[\"october\"];\r\n this.november = _data[\"november\"];\r\n this.december = _data[\"december\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.updatedBy = _data[\"updatedBy\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): LPGTargetPermitInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new LPGTargetPermitInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"limit\"] = this.limit;\r\n data[\"category\"] = this.category;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"year\"] = this.year;\r\n data[\"january\"] = this.january;\r\n data[\"february\"] = this.february;\r\n data[\"march\"] = this.march;\r\n data[\"april\"] = this.april;\r\n data[\"may\"] = this.may;\r\n data[\"june\"] = this.june;\r\n data[\"july\"] = this.july;\r\n data[\"august\"] = this.august;\r\n data[\"september\"] = this.september;\r\n data[\"october\"] = this.october;\r\n data[\"november\"] = this.november;\r\n data[\"december\"] = this.december;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"updatedBy\"] = this.updatedBy;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILPGTargetPermitInputDTO {\r\n id: number;\r\n limit: PermitTargetInputType;\r\n category: PermitTargetInputCategory;\r\n gasType?: LPGGasType | undefined;\r\n year: number;\r\n january: number;\r\n february: number;\r\n march: number;\r\n april: number;\r\n may: number;\r\n june: number;\r\n july: number;\r\n august: number;\r\n september: number;\r\n october: number;\r\n november: number;\r\n december: number;\r\n createdBy: string;\r\n updatedBy: string;\r\n logged: Date;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class SGIInputRecordDTO implements ISGIInputRecordDTO {\r\n id!: number;\r\n startTime!: Date;\r\n ignoreFI26001!: boolean;\r\n eGlycolFiredHeaterInService!: boolean;\r\n ejectorInService!: boolean;\r\n weeklyWasteOilDrainedToF1054!: boolean;\r\n useComprAndSGTotalizerTags!: boolean;\r\n pV415HoursToFlare!: number;\r\n pV415HoursToFeed!: number;\r\n leakageSour?: number | undefined;\r\n leakageFuel?: number | undefined;\r\n overallBalanceBasis!: OverallBalanceBasis;\r\n sgiInputRecordWells!: SGIInputRecordWellDTO[];\r\n sgiGasCompositions!: SGIGasCompositionDTO[];\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ISGIInputRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.sgiInputRecordWells = [];\r\n this.sgiGasCompositions = [];\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.ignoreFI26001 = _data[\"ignoreFI26001\"];\r\n this.eGlycolFiredHeaterInService = _data[\"eGlycolFiredHeaterInService\"];\r\n this.ejectorInService = _data[\"ejectorInService\"];\r\n this.weeklyWasteOilDrainedToF1054 = _data[\"weeklyWasteOilDrainedToF1054\"];\r\n this.useComprAndSGTotalizerTags = _data[\"useComprAndSGTotalizerTags\"];\r\n this.pV415HoursToFlare = _data[\"pV415HoursToFlare\"];\r\n this.pV415HoursToFeed = _data[\"pV415HoursToFeed\"];\r\n this.leakageSour = _data[\"leakageSour\"];\r\n this.leakageFuel = _data[\"leakageFuel\"];\r\n this.overallBalanceBasis = _data[\"overallBalanceBasis\"];\r\n if (Array.isArray(_data[\"sgiInputRecordWells\"])) {\r\n this.sgiInputRecordWells = [] as any;\r\n for (let item of _data[\"sgiInputRecordWells\"])\r\n this.sgiInputRecordWells!.push(SGIInputRecordWellDTO.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"sgiGasCompositions\"])) {\r\n this.sgiGasCompositions = [] as any;\r\n for (let item of _data[\"sgiGasCompositions\"])\r\n this.sgiGasCompositions!.push(SGIGasCompositionDTO.fromJS(item));\r\n }\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIInputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIInputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"ignoreFI26001\"] = this.ignoreFI26001;\r\n data[\"eGlycolFiredHeaterInService\"] = this.eGlycolFiredHeaterInService;\r\n data[\"ejectorInService\"] = this.ejectorInService;\r\n data[\"weeklyWasteOilDrainedToF1054\"] = this.weeklyWasteOilDrainedToF1054;\r\n data[\"useComprAndSGTotalizerTags\"] = this.useComprAndSGTotalizerTags;\r\n data[\"pV415HoursToFlare\"] = this.pV415HoursToFlare;\r\n data[\"pV415HoursToFeed\"] = this.pV415HoursToFeed;\r\n data[\"leakageSour\"] = this.leakageSour;\r\n data[\"leakageFuel\"] = this.leakageFuel;\r\n data[\"overallBalanceBasis\"] = this.overallBalanceBasis;\r\n if (Array.isArray(this.sgiInputRecordWells)) {\r\n data[\"sgiInputRecordWells\"] = [];\r\n for (let item of this.sgiInputRecordWells)\r\n data[\"sgiInputRecordWells\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.sgiGasCompositions)) {\r\n data[\"sgiGasCompositions\"] = [];\r\n for (let item of this.sgiGasCompositions)\r\n data[\"sgiGasCompositions\"].push(item.toJSON());\r\n }\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIInputRecordDTO {\r\n id: number;\r\n startTime: Date;\r\n ignoreFI26001: boolean;\r\n eGlycolFiredHeaterInService: boolean;\r\n ejectorInService: boolean;\r\n weeklyWasteOilDrainedToF1054: boolean;\r\n useComprAndSGTotalizerTags: boolean;\r\n pV415HoursToFlare: number;\r\n pV415HoursToFeed: number;\r\n leakageSour?: number | undefined;\r\n leakageFuel?: number | undefined;\r\n overallBalanceBasis: OverallBalanceBasis;\r\n sgiInputRecordWells: SGIInputRecordWellDTO[];\r\n sgiGasCompositions: SGIGasCompositionDTO[];\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum OverallBalanceBasis {\r\n SGPSourGasFeedMeterToSGI = 0,\r\n InjectionCompressorFeedMeter = 1,\r\n WellInjectionMeters = 2,\r\n}\r\n\r\nexport class SGIInputRecordWellDTO implements ISGIInputRecordWellDTO {\r\n id!: number;\r\n name!: string;\r\n wellInService!: boolean;\r\n useManualFlowCalc!: boolean;\r\n useTotalizerTags!: boolean;\r\n\r\n constructor(data?: ISGIInputRecordWellDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.wellInService = _data[\"wellInService\"];\r\n this.useManualFlowCalc = _data[\"useManualFlowCalc\"];\r\n this.useTotalizerTags = _data[\"useTotalizerTags\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIInputRecordWellDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIInputRecordWellDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"wellInService\"] = this.wellInService;\r\n data[\"useManualFlowCalc\"] = this.useManualFlowCalc;\r\n data[\"useTotalizerTags\"] = this.useTotalizerTags;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIInputRecordWellDTO {\r\n id: number;\r\n name: string;\r\n wellInService: boolean;\r\n useManualFlowCalc: boolean;\r\n useTotalizerTags: boolean;\r\n}\r\n\r\nexport class SGIGasCompositionDTO implements ISGIGasCompositionDTO {\r\n n2!: number;\r\n cO2!: number;\r\n c1!: number;\r\n c2!: number;\r\n c3!: number;\r\n iC4!: number;\r\n nC4!: number;\r\n iC5!: number;\r\n nC5!: number;\r\n c6Plus!: number;\r\n h2S!: number;\r\n cH3SH!: number;\r\n c2H5SH!: number;\r\n c2H7SH!: number;\r\n nC3H7SH!: number;\r\n nC4H9SH!: number;\r\n cos!: number;\r\n h2O!: number;\r\n o2!: number;\r\n h2!: number;\r\n he!: number;\r\n mw!: number;\r\n gasType!: SGIGasCompositionType;\r\n\r\n constructor(data?: ISGIGasCompositionDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.n2 = _data[\"n2\"];\r\n this.cO2 = _data[\"cO2\"];\r\n this.c1 = _data[\"c1\"];\r\n this.c2 = _data[\"c2\"];\r\n this.c3 = _data[\"c3\"];\r\n this.iC4 = _data[\"iC4\"];\r\n this.nC4 = _data[\"nC4\"];\r\n this.iC5 = _data[\"iC5\"];\r\n this.nC5 = _data[\"nC5\"];\r\n this.c6Plus = _data[\"c6Plus\"];\r\n this.h2S = _data[\"h2S\"];\r\n this.cH3SH = _data[\"cH3SH\"];\r\n this.c2H5SH = _data[\"c2H5SH\"];\r\n this.c2H7SH = _data[\"c2H7SH\"];\r\n this.nC3H7SH = _data[\"nC3H7SH\"];\r\n this.nC4H9SH = _data[\"nC4H9SH\"];\r\n this.cos = _data[\"cos\"];\r\n this.h2O = _data[\"h2O\"];\r\n this.o2 = _data[\"o2\"];\r\n this.h2 = _data[\"h2\"];\r\n this.he = _data[\"he\"];\r\n this.mw = _data[\"mw\"];\r\n this.gasType = _data[\"gasType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIGasCompositionDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIGasCompositionDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"n2\"] = this.n2;\r\n data[\"cO2\"] = this.cO2;\r\n data[\"c1\"] = this.c1;\r\n data[\"c2\"] = this.c2;\r\n data[\"c3\"] = this.c3;\r\n data[\"iC4\"] = this.iC4;\r\n data[\"nC4\"] = this.nC4;\r\n data[\"iC5\"] = this.iC5;\r\n data[\"nC5\"] = this.nC5;\r\n data[\"c6Plus\"] = this.c6Plus;\r\n data[\"h2S\"] = this.h2S;\r\n data[\"cH3SH\"] = this.cH3SH;\r\n data[\"c2H5SH\"] = this.c2H5SH;\r\n data[\"c2H7SH\"] = this.c2H7SH;\r\n data[\"nC3H7SH\"] = this.nC3H7SH;\r\n data[\"nC4H9SH\"] = this.nC4H9SH;\r\n data[\"cos\"] = this.cos;\r\n data[\"h2O\"] = this.h2O;\r\n data[\"o2\"] = this.o2;\r\n data[\"h2\"] = this.h2;\r\n data[\"he\"] = this.he;\r\n data[\"mw\"] = this.mw;\r\n data[\"gasType\"] = this.gasType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIGasCompositionDTO {\r\n n2: number;\r\n cO2: number;\r\n c1: number;\r\n c2: number;\r\n c3: number;\r\n iC4: number;\r\n nC4: number;\r\n iC5: number;\r\n nC5: number;\r\n c6Plus: number;\r\n h2S: number;\r\n cH3SH: number;\r\n c2H5SH: number;\r\n c2H7SH: number;\r\n nC3H7SH: number;\r\n nC4H9SH: number;\r\n cos: number;\r\n h2O: number;\r\n o2: number;\r\n h2: number;\r\n he: number;\r\n mw: number;\r\n gasType: SGIGasCompositionType;\r\n}\r\n\r\nexport enum SGIGasCompositionType {\r\n Sour = 0,\r\n Sweet = 1,\r\n Fuel = 2,\r\n}\r\n\r\nexport class SGIEditOverrideDTO implements ISGIEditOverrideDTO {\r\n startTime!: Date;\r\n elementName!: string;\r\n value!: number;\r\n type!: ValueType2;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ISGIEditOverrideDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.elementName = _data[\"elementName\"];\r\n this.value = _data[\"value\"];\r\n this.type = _data[\"type\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIEditOverrideDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIEditOverrideDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"elementName\"] = this.elementName;\r\n data[\"value\"] = this.value;\r\n data[\"type\"] = this.type;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIEditOverrideDTO {\r\n startTime: Date;\r\n elementName: string;\r\n value: number;\r\n type: ValueType2;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum ValueType2 {\r\n Volume = 0,\r\n Duration = 1,\r\n}\r\n\r\nexport class SGIBlowdownInputRecordDTO implements ISGIBlowdownInputRecordDTO {\r\n id!: number;\r\n startTime!: Date;\r\n category!: PermitTargetInputCategory;\r\n gasType!: SGIGasCompositionType;\r\n reason!: string;\r\n equipment!: string;\r\n volume!: number;\r\n mass!: number;\r\n sgiGasComposition!: SGIGasComposition;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ISGIBlowdownInputRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.sgiGasComposition = new SGIGasComposition();\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.category = _data[\"category\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.reason = _data[\"reason\"];\r\n this.equipment = _data[\"equipment\"];\r\n this.volume = _data[\"volume\"];\r\n this.mass = _data[\"mass\"];\r\n this.sgiGasComposition = _data[\"sgiGasComposition\"] ? SGIGasComposition.fromJS(_data[\"sgiGasComposition\"]) : new SGIGasComposition();\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIBlowdownInputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIBlowdownInputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"category\"] = this.category;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"reason\"] = this.reason;\r\n data[\"equipment\"] = this.equipment;\r\n data[\"volume\"] = this.volume;\r\n data[\"mass\"] = this.mass;\r\n data[\"sgiGasComposition\"] = this.sgiGasComposition ? this.sgiGasComposition.toJSON() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIBlowdownInputRecordDTO {\r\n id: number;\r\n startTime: Date;\r\n category: PermitTargetInputCategory;\r\n gasType: SGIGasCompositionType;\r\n reason: string;\r\n equipment: string;\r\n volume: number;\r\n mass: number;\r\n sgiGasComposition: SGIGasComposition;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class SGIGasComposition implements ISGIGasComposition {\r\n id!: number;\r\n n2!: number;\r\n cO2!: number;\r\n c1!: number;\r\n c2!: number;\r\n c3!: number;\r\n iC4!: number;\r\n nC4!: number;\r\n iC5!: number;\r\n nC5!: number;\r\n c6Plus!: number;\r\n h2S!: number;\r\n cH3SH!: number;\r\n c2H5SH!: number;\r\n c2H7SH!: number;\r\n nC3H7SH!: number;\r\n nC4H9SH!: number;\r\n cos!: number;\r\n h2O!: number;\r\n o2!: number;\r\n h2!: number;\r\n he!: number;\r\n mw!: number;\r\n gasType!: SGIGasCompositionType;\r\n sgiBlowdownInputRecordId?: number | undefined;\r\n sgiBlowdownInputRecord!: SGIBlowdownInputRecord;\r\n sgiInputRecordId?: number | undefined;\r\n sgiInputRecord!: SGIInputRecord;\r\n\r\n constructor(data?: ISGIGasComposition) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.sgiBlowdownInputRecord = new SGIBlowdownInputRecord();\r\n this.sgiInputRecord = new SGIInputRecord();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.n2 = _data[\"n2\"];\r\n this.cO2 = _data[\"cO2\"];\r\n this.c1 = _data[\"c1\"];\r\n this.c2 = _data[\"c2\"];\r\n this.c3 = _data[\"c3\"];\r\n this.iC4 = _data[\"iC4\"];\r\n this.nC4 = _data[\"nC4\"];\r\n this.iC5 = _data[\"iC5\"];\r\n this.nC5 = _data[\"nC5\"];\r\n this.c6Plus = _data[\"c6Plus\"];\r\n this.h2S = _data[\"h2S\"];\r\n this.cH3SH = _data[\"cH3SH\"];\r\n this.c2H5SH = _data[\"c2H5SH\"];\r\n this.c2H7SH = _data[\"c2H7SH\"];\r\n this.nC3H7SH = _data[\"nC3H7SH\"];\r\n this.nC4H9SH = _data[\"nC4H9SH\"];\r\n this.cos = _data[\"cos\"];\r\n this.h2O = _data[\"h2O\"];\r\n this.o2 = _data[\"o2\"];\r\n this.h2 = _data[\"h2\"];\r\n this.he = _data[\"he\"];\r\n this.mw = _data[\"mw\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.sgiBlowdownInputRecordId = _data[\"sgiBlowdownInputRecordId\"];\r\n this.sgiBlowdownInputRecord = _data[\"sgiBlowdownInputRecord\"] ? SGIBlowdownInputRecord.fromJS(_data[\"sgiBlowdownInputRecord\"]) : new SGIBlowdownInputRecord();\r\n this.sgiInputRecordId = _data[\"sgiInputRecordId\"];\r\n this.sgiInputRecord = _data[\"sgiInputRecord\"] ? SGIInputRecord.fromJS(_data[\"sgiInputRecord\"]) : new SGIInputRecord();\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIGasComposition {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIGasComposition();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"n2\"] = this.n2;\r\n data[\"cO2\"] = this.cO2;\r\n data[\"c1\"] = this.c1;\r\n data[\"c2\"] = this.c2;\r\n data[\"c3\"] = this.c3;\r\n data[\"iC4\"] = this.iC4;\r\n data[\"nC4\"] = this.nC4;\r\n data[\"iC5\"] = this.iC5;\r\n data[\"nC5\"] = this.nC5;\r\n data[\"c6Plus\"] = this.c6Plus;\r\n data[\"h2S\"] = this.h2S;\r\n data[\"cH3SH\"] = this.cH3SH;\r\n data[\"c2H5SH\"] = this.c2H5SH;\r\n data[\"c2H7SH\"] = this.c2H7SH;\r\n data[\"nC3H7SH\"] = this.nC3H7SH;\r\n data[\"nC4H9SH\"] = this.nC4H9SH;\r\n data[\"cos\"] = this.cos;\r\n data[\"h2O\"] = this.h2O;\r\n data[\"o2\"] = this.o2;\r\n data[\"h2\"] = this.h2;\r\n data[\"he\"] = this.he;\r\n data[\"mw\"] = this.mw;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"sgiBlowdownInputRecordId\"] = this.sgiBlowdownInputRecordId;\r\n data[\"sgiBlowdownInputRecord\"] = this.sgiBlowdownInputRecord ? this.sgiBlowdownInputRecord.toJSON() : undefined;\r\n data[\"sgiInputRecordId\"] = this.sgiInputRecordId;\r\n data[\"sgiInputRecord\"] = this.sgiInputRecord ? this.sgiInputRecord.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIGasComposition {\r\n id: number;\r\n n2: number;\r\n cO2: number;\r\n c1: number;\r\n c2: number;\r\n c3: number;\r\n iC4: number;\r\n nC4: number;\r\n iC5: number;\r\n nC5: number;\r\n c6Plus: number;\r\n h2S: number;\r\n cH3SH: number;\r\n c2H5SH: number;\r\n c2H7SH: number;\r\n nC3H7SH: number;\r\n nC4H9SH: number;\r\n cos: number;\r\n h2O: number;\r\n o2: number;\r\n h2: number;\r\n he: number;\r\n mw: number;\r\n gasType: SGIGasCompositionType;\r\n sgiBlowdownInputRecordId?: number | undefined;\r\n sgiBlowdownInputRecord: SGIBlowdownInputRecord;\r\n sgiInputRecordId?: number | undefined;\r\n sgiInputRecord: SGIInputRecord;\r\n}\r\n\r\nexport class SGIBlowdownInputRecord implements ISGIBlowdownInputRecord {\r\n id!: number;\r\n startTime!: Date;\r\n category!: PermitTargetInputCategory;\r\n gasType!: SGIGasCompositionType;\r\n reason!: string;\r\n equipment!: string;\r\n volume!: number;\r\n mass!: number;\r\n sgiGasComposition!: SGIGasComposition;\r\n\r\n constructor(data?: ISGIBlowdownInputRecord) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.sgiGasComposition = new SGIGasComposition();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.category = _data[\"category\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.reason = _data[\"reason\"];\r\n this.equipment = _data[\"equipment\"];\r\n this.volume = _data[\"volume\"];\r\n this.mass = _data[\"mass\"];\r\n this.sgiGasComposition = _data[\"sgiGasComposition\"] ? SGIGasComposition.fromJS(_data[\"sgiGasComposition\"]) : new SGIGasComposition();\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIBlowdownInputRecord {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIBlowdownInputRecord();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"category\"] = this.category;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"reason\"] = this.reason;\r\n data[\"equipment\"] = this.equipment;\r\n data[\"volume\"] = this.volume;\r\n data[\"mass\"] = this.mass;\r\n data[\"sgiGasComposition\"] = this.sgiGasComposition ? this.sgiGasComposition.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIBlowdownInputRecord {\r\n id: number;\r\n startTime: Date;\r\n category: PermitTargetInputCategory;\r\n gasType: SGIGasCompositionType;\r\n reason: string;\r\n equipment: string;\r\n volume: number;\r\n mass: number;\r\n sgiGasComposition: SGIGasComposition;\r\n}\r\n\r\nexport class SGIInputRecord implements ISGIInputRecord {\r\n id!: number;\r\n startTime!: Date;\r\n ignoreFI26001!: boolean;\r\n eGlycolFiredHeaterInService!: boolean;\r\n ejectorInService!: boolean;\r\n weeklyWasteOilDrainedToF1054!: boolean;\r\n useComprAndSGTotalizerTags!: boolean;\r\n pV415HoursToFlare!: number;\r\n pV415HoursToFeed!: number;\r\n leakageSour!: number;\r\n leakageFuel!: number;\r\n overallBalanceBasis!: OverallBalanceBasis;\r\n sgiInputRecordWells!: SGIInputRecordWell[];\r\n sgiGasCompositions!: SGIGasComposition[];\r\n\r\n constructor(data?: ISGIInputRecord) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.sgiInputRecordWells = [];\r\n this.sgiGasCompositions = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.ignoreFI26001 = _data[\"ignoreFI26001\"];\r\n this.eGlycolFiredHeaterInService = _data[\"eGlycolFiredHeaterInService\"];\r\n this.ejectorInService = _data[\"ejectorInService\"];\r\n this.weeklyWasteOilDrainedToF1054 = _data[\"weeklyWasteOilDrainedToF1054\"];\r\n this.useComprAndSGTotalizerTags = _data[\"useComprAndSGTotalizerTags\"];\r\n this.pV415HoursToFlare = _data[\"pV415HoursToFlare\"];\r\n this.pV415HoursToFeed = _data[\"pV415HoursToFeed\"];\r\n this.leakageSour = _data[\"leakageSour\"];\r\n this.leakageFuel = _data[\"leakageFuel\"];\r\n this.overallBalanceBasis = _data[\"overallBalanceBasis\"];\r\n if (Array.isArray(_data[\"sgiInputRecordWells\"])) {\r\n this.sgiInputRecordWells = [] as any;\r\n for (let item of _data[\"sgiInputRecordWells\"])\r\n this.sgiInputRecordWells!.push(SGIInputRecordWell.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"sgiGasCompositions\"])) {\r\n this.sgiGasCompositions = [] as any;\r\n for (let item of _data[\"sgiGasCompositions\"])\r\n this.sgiGasCompositions!.push(SGIGasComposition.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIInputRecord {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIInputRecord();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"ignoreFI26001\"] = this.ignoreFI26001;\r\n data[\"eGlycolFiredHeaterInService\"] = this.eGlycolFiredHeaterInService;\r\n data[\"ejectorInService\"] = this.ejectorInService;\r\n data[\"weeklyWasteOilDrainedToF1054\"] = this.weeklyWasteOilDrainedToF1054;\r\n data[\"useComprAndSGTotalizerTags\"] = this.useComprAndSGTotalizerTags;\r\n data[\"pV415HoursToFlare\"] = this.pV415HoursToFlare;\r\n data[\"pV415HoursToFeed\"] = this.pV415HoursToFeed;\r\n data[\"leakageSour\"] = this.leakageSour;\r\n data[\"leakageFuel\"] = this.leakageFuel;\r\n data[\"overallBalanceBasis\"] = this.overallBalanceBasis;\r\n if (Array.isArray(this.sgiInputRecordWells)) {\r\n data[\"sgiInputRecordWells\"] = [];\r\n for (let item of this.sgiInputRecordWells)\r\n data[\"sgiInputRecordWells\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.sgiGasCompositions)) {\r\n data[\"sgiGasCompositions\"] = [];\r\n for (let item of this.sgiGasCompositions)\r\n data[\"sgiGasCompositions\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIInputRecord {\r\n id: number;\r\n startTime: Date;\r\n ignoreFI26001: boolean;\r\n eGlycolFiredHeaterInService: boolean;\r\n ejectorInService: boolean;\r\n weeklyWasteOilDrainedToF1054: boolean;\r\n useComprAndSGTotalizerTags: boolean;\r\n pV415HoursToFlare: number;\r\n pV415HoursToFeed: number;\r\n leakageSour: number;\r\n leakageFuel: number;\r\n overallBalanceBasis: OverallBalanceBasis;\r\n sgiInputRecordWells: SGIInputRecordWell[];\r\n sgiGasCompositions: SGIGasComposition[];\r\n}\r\n\r\nexport class SGIInputRecordWell implements ISGIInputRecordWell {\r\n id!: number;\r\n name!: string;\r\n wellInService!: boolean;\r\n useManualFlowCalc!: boolean;\r\n useTotalizerTags!: boolean;\r\n sgiInputRecord!: SGIInputRecord;\r\n sgiInputRecordId!: number;\r\n\r\n constructor(data?: ISGIInputRecordWell) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.sgiInputRecord = new SGIInputRecord();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.wellInService = _data[\"wellInService\"];\r\n this.useManualFlowCalc = _data[\"useManualFlowCalc\"];\r\n this.useTotalizerTags = _data[\"useTotalizerTags\"];\r\n this.sgiInputRecord = _data[\"sgiInputRecord\"] ? SGIInputRecord.fromJS(_data[\"sgiInputRecord\"]) : new SGIInputRecord();\r\n this.sgiInputRecordId = _data[\"sgiInputRecordId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIInputRecordWell {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIInputRecordWell();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"wellInService\"] = this.wellInService;\r\n data[\"useManualFlowCalc\"] = this.useManualFlowCalc;\r\n data[\"useTotalizerTags\"] = this.useTotalizerTags;\r\n data[\"sgiInputRecord\"] = this.sgiInputRecord ? this.sgiInputRecord.toJSON() : undefined;\r\n data[\"sgiInputRecordId\"] = this.sgiInputRecordId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIInputRecordWell {\r\n id: number;\r\n name: string;\r\n wellInService: boolean;\r\n useManualFlowCalc: boolean;\r\n useTotalizerTags: boolean;\r\n sgiInputRecord: SGIInputRecord;\r\n sgiInputRecordId: number;\r\n}\r\n\r\nexport class SGIPermitTargetInputDTO implements ISGIPermitTargetInputDTO {\r\n id!: number;\r\n year!: Date;\r\n logged!: Date;\r\n user!: string;\r\n gasType!: SGIPermitTargetInputGasType;\r\n inputType!: SGIPermitTargetInputType;\r\n category?: PermitTargetInputCategory | undefined;\r\n sgiPermitTargetMonthVolumes!: SGIPermitTargetMonthVolumeDTO;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ISGIPermitTargetInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.sgiPermitTargetMonthVolumes = new SGIPermitTargetMonthVolumeDTO();\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.year = _data[\"year\"] ? new Date(_data[\"year\"].toString()) : undefined;\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n this.user = _data[\"user\"];\r\n this.gasType = _data[\"gasType\"];\r\n this.inputType = _data[\"inputType\"];\r\n this.category = _data[\"category\"];\r\n this.sgiPermitTargetMonthVolumes = _data[\"sgiPermitTargetMonthVolumes\"] ? SGIPermitTargetMonthVolumeDTO.fromJS(_data[\"sgiPermitTargetMonthVolumes\"]) : new SGIPermitTargetMonthVolumeDTO();\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIPermitTargetInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIPermitTargetInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"year\"] = this.year ? this.year.toISOString() : undefined;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"user\"] = this.user;\r\n data[\"gasType\"] = this.gasType;\r\n data[\"inputType\"] = this.inputType;\r\n data[\"category\"] = this.category;\r\n data[\"sgiPermitTargetMonthVolumes\"] = this.sgiPermitTargetMonthVolumes ? this.sgiPermitTargetMonthVolumes.toJSON() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIPermitTargetInputDTO {\r\n id: number;\r\n year: Date;\r\n logged: Date;\r\n user: string;\r\n gasType: SGIPermitTargetInputGasType;\r\n inputType: SGIPermitTargetInputType;\r\n category?: PermitTargetInputCategory | undefined;\r\n sgiPermitTargetMonthVolumes: SGIPermitTargetMonthVolumeDTO;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum SGIPermitTargetInputGasType {\r\n Sour = 0,\r\n Fuel = 1,\r\n GasTurbine = 2,\r\n PU9257 = 3,\r\n Sweet = 4,\r\n}\r\n\r\nexport enum SGIPermitTargetInputType {\r\n Permit = 0,\r\n Target = 1,\r\n FuelGasUsage = 2,\r\n}\r\n\r\nexport class SGIPermitTargetMonthVolumeDTO implements ISGIPermitTargetMonthVolumeDTO {\r\n june!: number;\r\n july!: number;\r\n august!: number;\r\n september!: number;\r\n october!: number;\r\n november!: number;\r\n december!: number;\r\n january!: number;\r\n february!: number;\r\n march!: number;\r\n april!: number;\r\n may!: number;\r\n\r\n constructor(data?: ISGIPermitTargetMonthVolumeDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.june = _data[\"june\"];\r\n this.july = _data[\"july\"];\r\n this.august = _data[\"august\"];\r\n this.september = _data[\"september\"];\r\n this.october = _data[\"october\"];\r\n this.november = _data[\"november\"];\r\n this.december = _data[\"december\"];\r\n this.january = _data[\"january\"];\r\n this.february = _data[\"february\"];\r\n this.march = _data[\"march\"];\r\n this.april = _data[\"april\"];\r\n this.may = _data[\"may\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGIPermitTargetMonthVolumeDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGIPermitTargetMonthVolumeDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"june\"] = this.june;\r\n data[\"july\"] = this.july;\r\n data[\"august\"] = this.august;\r\n data[\"september\"] = this.september;\r\n data[\"october\"] = this.october;\r\n data[\"november\"] = this.november;\r\n data[\"december\"] = this.december;\r\n data[\"january\"] = this.january;\r\n data[\"february\"] = this.february;\r\n data[\"march\"] = this.march;\r\n data[\"april\"] = this.april;\r\n data[\"may\"] = this.may;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGIPermitTargetMonthVolumeDTO {\r\n june: number;\r\n july: number;\r\n august: number;\r\n september: number;\r\n october: number;\r\n november: number;\r\n december: number;\r\n january: number;\r\n february: number;\r\n march: number;\r\n april: number;\r\n may: number;\r\n}\r\n\r\nexport class SGPFGDCalculatedDTO implements ISGPFGDCalculatedDTO {\r\n streamId!: number;\r\n type!: string;\r\n timeStamp!: Date;\r\n isApproved!: boolean;\r\n isConfirmed!: boolean;\r\n totalMass!: number;\r\n totalVolume!: number;\r\n elementName!: string;\r\n order!: number;\r\n status!: StreamStatuses;\r\n\r\n constructor(data?: ISGPFGDCalculatedDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.streamId = _data[\"streamId\"];\r\n this.type = _data[\"type\"];\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.isApproved = _data[\"isApproved\"];\r\n this.isConfirmed = _data[\"isConfirmed\"];\r\n this.totalMass = _data[\"totalMass\"];\r\n this.totalVolume = _data[\"totalVolume\"];\r\n this.elementName = _data[\"elementName\"];\r\n this.order = _data[\"order\"];\r\n this.status = _data[\"status\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGPFGDCalculatedDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGPFGDCalculatedDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"streamId\"] = this.streamId;\r\n data[\"type\"] = this.type;\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"isApproved\"] = this.isApproved;\r\n data[\"isConfirmed\"] = this.isConfirmed;\r\n data[\"totalMass\"] = this.totalMass;\r\n data[\"totalVolume\"] = this.totalVolume;\r\n data[\"elementName\"] = this.elementName;\r\n data[\"order\"] = this.order;\r\n data[\"status\"] = this.status;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGPFGDCalculatedDTO {\r\n streamId: number;\r\n type: string;\r\n timeStamp: Date;\r\n isApproved: boolean;\r\n isConfirmed: boolean;\r\n totalMass: number;\r\n totalVolume: number;\r\n elementName: string;\r\n order: number;\r\n status: StreamStatuses;\r\n}\r\n\r\nexport class SGPFGDInputRecordDTO implements ISGPFGDInputRecordDTO {\r\n id!: number;\r\n startTime!: Date;\r\n propaneToExport!: boolean;\r\n butaneToExport!: boolean;\r\n producedDryGas!: boolean;\r\n salesGasToExport!: boolean;\r\n salesGasToSGI!: boolean;\r\n sourGasToSGI!: boolean;\r\n useMeter!: UseMeterSGPFGD;\r\n sgpSalesGasToPowerPlant!: boolean;\r\n ktlSalesGasToPowerPlant!: boolean;\r\n crudeToStorage!: number;\r\n crudeToCRL!: number;\r\n directCrudeExportToCPC!: number;\r\n propaneToExportNum!: number;\r\n butaneToExportNum!: number;\r\n sulfur!: number;\r\n salesGasFQI07018!: number;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ISGPFGDInputRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.propaneToExport = _data[\"propaneToExport\"];\r\n this.butaneToExport = _data[\"butaneToExport\"];\r\n this.producedDryGas = _data[\"producedDryGas\"];\r\n this.salesGasToExport = _data[\"salesGasToExport\"];\r\n this.salesGasToSGI = _data[\"salesGasToSGI\"];\r\n this.sourGasToSGI = _data[\"sourGasToSGI\"];\r\n this.useMeter = _data[\"useMeter\"];\r\n this.sgpSalesGasToPowerPlant = _data[\"sgpSalesGasToPowerPlant\"];\r\n this.ktlSalesGasToPowerPlant = _data[\"ktlSalesGasToPowerPlant\"];\r\n this.crudeToStorage = _data[\"crudeToStorage\"];\r\n this.crudeToCRL = _data[\"crudeToCRL\"];\r\n this.directCrudeExportToCPC = _data[\"directCrudeExportToCPC\"];\r\n this.propaneToExportNum = _data[\"propaneToExportNum\"];\r\n this.butaneToExportNum = _data[\"butaneToExportNum\"];\r\n this.sulfur = _data[\"sulfur\"];\r\n this.salesGasFQI07018 = _data[\"salesGasFQI07018\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGPFGDInputRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGPFGDInputRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"propaneToExport\"] = this.propaneToExport;\r\n data[\"butaneToExport\"] = this.butaneToExport;\r\n data[\"producedDryGas\"] = this.producedDryGas;\r\n data[\"salesGasToExport\"] = this.salesGasToExport;\r\n data[\"salesGasToSGI\"] = this.salesGasToSGI;\r\n data[\"sourGasToSGI\"] = this.sourGasToSGI;\r\n data[\"useMeter\"] = this.useMeter;\r\n data[\"sgpSalesGasToPowerPlant\"] = this.sgpSalesGasToPowerPlant;\r\n data[\"ktlSalesGasToPowerPlant\"] = this.ktlSalesGasToPowerPlant;\r\n data[\"crudeToStorage\"] = this.crudeToStorage;\r\n data[\"crudeToCRL\"] = this.crudeToCRL;\r\n data[\"directCrudeExportToCPC\"] = this.directCrudeExportToCPC;\r\n data[\"propaneToExportNum\"] = this.propaneToExportNum;\r\n data[\"butaneToExportNum\"] = this.butaneToExportNum;\r\n data[\"sulfur\"] = this.sulfur;\r\n data[\"salesGasFQI07018\"] = this.salesGasFQI07018;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGPFGDInputRecordDTO {\r\n id: number;\r\n startTime: Date;\r\n propaneToExport: boolean;\r\n butaneToExport: boolean;\r\n producedDryGas: boolean;\r\n salesGasToExport: boolean;\r\n salesGasToSGI: boolean;\r\n sourGasToSGI: boolean;\r\n useMeter: UseMeterSGPFGD;\r\n sgpSalesGasToPowerPlant: boolean;\r\n ktlSalesGasToPowerPlant: boolean;\r\n crudeToStorage: number;\r\n crudeToCRL: number;\r\n directCrudeExportToCPC: number;\r\n propaneToExportNum: number;\r\n butaneToExportNum: number;\r\n sulfur: number;\r\n salesGasFQI07018: number;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum UseMeterSGPFGD {\r\n UseMeter03029 = 0,\r\n UseMeter29402 = 1,\r\n}\r\n\r\nexport class SGPFGDOverrideRecordDTO implements ISGPFGDOverrideRecordDTO {\r\n streamId!: number;\r\n startTime!: Date;\r\n value!: number;\r\n type!: ValueType3;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: ISGPFGDOverrideRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.streamId = _data[\"streamId\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.value = _data[\"value\"];\r\n this.type = _data[\"type\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SGPFGDOverrideRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SGPFGDOverrideRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"streamId\"] = this.streamId;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"value\"] = this.value;\r\n data[\"type\"] = this.type;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISGPFGDOverrideRecordDTO {\r\n streamId: number;\r\n startTime: Date;\r\n value: number;\r\n type: ValueType3;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum ValueType3 {\r\n Volume = 0,\r\n Mass = 1,\r\n}\r\n\r\nexport class KTLSGPSO2CalculatedReportDTO implements IKTLSGPSO2CalculatedReportDTO {\r\n timeStamp!: Date;\r\n totalVolumeSGP!: number;\r\n totalVolumeKTLTrain1!: number;\r\n totalVolumeKTLTrain2!: number;\r\n totalVolumeKTLTrain3!: number;\r\n totalVolumeKTLTrain4!: number;\r\n inputCommentSGP!: string;\r\n inputCommentKTLTrain1!: string;\r\n inputCommentKTLTrain2!: string;\r\n inputCommentKTLTrain3!: string;\r\n inputCommentKTLTrain4!: string;\r\n updatedKTL!: string;\r\n updatedSGP!: string;\r\n isConfirmed!: boolean;\r\n isApproved!: boolean;\r\n isBadKTLTrain1!: boolean;\r\n isBadKTLTrain2!: boolean;\r\n isBadKTLTrain3!: boolean;\r\n isBadKTLTrain4!: boolean;\r\n isBadSGP!: boolean;\r\n\r\n constructor(data?: IKTLSGPSO2CalculatedReportDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timeStamp = _data[\"timeStamp\"] ? new Date(_data[\"timeStamp\"].toString()) : undefined;\r\n this.totalVolumeSGP = _data[\"totalVolumeSGP\"];\r\n this.totalVolumeKTLTrain1 = _data[\"totalVolumeKTLTrain1\"];\r\n this.totalVolumeKTLTrain2 = _data[\"totalVolumeKTLTrain2\"];\r\n this.totalVolumeKTLTrain3 = _data[\"totalVolumeKTLTrain3\"];\r\n this.totalVolumeKTLTrain4 = _data[\"totalVolumeKTLTrain4\"];\r\n this.inputCommentSGP = _data[\"inputCommentSGP\"];\r\n this.inputCommentKTLTrain1 = _data[\"inputCommentKTLTrain1\"];\r\n this.inputCommentKTLTrain2 = _data[\"inputCommentKTLTrain2\"];\r\n this.inputCommentKTLTrain3 = _data[\"inputCommentKTLTrain3\"];\r\n this.inputCommentKTLTrain4 = _data[\"inputCommentKTLTrain4\"];\r\n this.updatedKTL = _data[\"updatedKTL\"];\r\n this.updatedSGP = _data[\"updatedSGP\"];\r\n this.isConfirmed = _data[\"isConfirmed\"];\r\n this.isApproved = _data[\"isApproved\"];\r\n this.isBadKTLTrain1 = _data[\"isBadKTLTrain1\"];\r\n this.isBadKTLTrain2 = _data[\"isBadKTLTrain2\"];\r\n this.isBadKTLTrain3 = _data[\"isBadKTLTrain3\"];\r\n this.isBadKTLTrain4 = _data[\"isBadKTLTrain4\"];\r\n this.isBadSGP = _data[\"isBadSGP\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLSGPSO2CalculatedReportDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLSGPSO2CalculatedReportDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"totalVolumeSGP\"] = this.totalVolumeSGP;\r\n data[\"totalVolumeKTLTrain1\"] = this.totalVolumeKTLTrain1;\r\n data[\"totalVolumeKTLTrain2\"] = this.totalVolumeKTLTrain2;\r\n data[\"totalVolumeKTLTrain3\"] = this.totalVolumeKTLTrain3;\r\n data[\"totalVolumeKTLTrain4\"] = this.totalVolumeKTLTrain4;\r\n data[\"inputCommentSGP\"] = this.inputCommentSGP;\r\n data[\"inputCommentKTLTrain1\"] = this.inputCommentKTLTrain1;\r\n data[\"inputCommentKTLTrain2\"] = this.inputCommentKTLTrain2;\r\n data[\"inputCommentKTLTrain3\"] = this.inputCommentKTLTrain3;\r\n data[\"inputCommentKTLTrain4\"] = this.inputCommentKTLTrain4;\r\n data[\"updatedKTL\"] = this.updatedKTL;\r\n data[\"updatedSGP\"] = this.updatedSGP;\r\n data[\"isConfirmed\"] = this.isConfirmed;\r\n data[\"isApproved\"] = this.isApproved;\r\n data[\"isBadKTLTrain1\"] = this.isBadKTLTrain1;\r\n data[\"isBadKTLTrain2\"] = this.isBadKTLTrain2;\r\n data[\"isBadKTLTrain3\"] = this.isBadKTLTrain3;\r\n data[\"isBadKTLTrain4\"] = this.isBadKTLTrain4;\r\n data[\"isBadSGP\"] = this.isBadSGP;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLSGPSO2CalculatedReportDTO {\r\n timeStamp: Date;\r\n totalVolumeSGP: number;\r\n totalVolumeKTLTrain1: number;\r\n totalVolumeKTLTrain2: number;\r\n totalVolumeKTLTrain3: number;\r\n totalVolumeKTLTrain4: number;\r\n inputCommentSGP: string;\r\n inputCommentKTLTrain1: string;\r\n inputCommentKTLTrain2: string;\r\n inputCommentKTLTrain3: string;\r\n inputCommentKTLTrain4: string;\r\n updatedKTL: string;\r\n updatedSGP: string;\r\n isConfirmed: boolean;\r\n isApproved: boolean;\r\n isBadKTLTrain1: boolean;\r\n isBadKTLTrain2: boolean;\r\n isBadKTLTrain3: boolean;\r\n isBadKTLTrain4: boolean;\r\n isBadSGP: boolean;\r\n}\r\n\r\nexport class KTLSGPSO2RecordDTO implements IKTLSGPSO2RecordDTO {\r\n startTime!: Date;\r\n totalVolumeSGP!: number;\r\n inputCommentSGP!: string;\r\n totalVolumeKTLTrain1!: number;\r\n totalVolumeKTLTrain2!: number;\r\n totalVolumeKTLTrain3!: number;\r\n totalVolumeKTLTrain4!: number;\r\n inputCommentKTLTrain1!: string;\r\n inputCommentKTLTrain2!: string;\r\n inputCommentKTLTrain3!: string;\r\n inputCommentKTLTrain4!: string;\r\n plant!: Plant;\r\n\r\n constructor(data?: IKTLSGPSO2RecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.totalVolumeSGP = _data[\"totalVolumeSGP\"];\r\n this.inputCommentSGP = _data[\"inputCommentSGP\"];\r\n this.totalVolumeKTLTrain1 = _data[\"totalVolumeKTLTrain1\"];\r\n this.totalVolumeKTLTrain2 = _data[\"totalVolumeKTLTrain2\"];\r\n this.totalVolumeKTLTrain3 = _data[\"totalVolumeKTLTrain3\"];\r\n this.totalVolumeKTLTrain4 = _data[\"totalVolumeKTLTrain4\"];\r\n this.inputCommentKTLTrain1 = _data[\"inputCommentKTLTrain1\"];\r\n this.inputCommentKTLTrain2 = _data[\"inputCommentKTLTrain2\"];\r\n this.inputCommentKTLTrain3 = _data[\"inputCommentKTLTrain3\"];\r\n this.inputCommentKTLTrain4 = _data[\"inputCommentKTLTrain4\"];\r\n this.plant = _data[\"plant\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLSGPSO2RecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLSGPSO2RecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"totalVolumeSGP\"] = this.totalVolumeSGP;\r\n data[\"inputCommentSGP\"] = this.inputCommentSGP;\r\n data[\"totalVolumeKTLTrain1\"] = this.totalVolumeKTLTrain1;\r\n data[\"totalVolumeKTLTrain2\"] = this.totalVolumeKTLTrain2;\r\n data[\"totalVolumeKTLTrain3\"] = this.totalVolumeKTLTrain3;\r\n data[\"totalVolumeKTLTrain4\"] = this.totalVolumeKTLTrain4;\r\n data[\"inputCommentKTLTrain1\"] = this.inputCommentKTLTrain1;\r\n data[\"inputCommentKTLTrain2\"] = this.inputCommentKTLTrain2;\r\n data[\"inputCommentKTLTrain3\"] = this.inputCommentKTLTrain3;\r\n data[\"inputCommentKTLTrain4\"] = this.inputCommentKTLTrain4;\r\n data[\"plant\"] = this.plant;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLSGPSO2RecordDTO {\r\n startTime: Date;\r\n totalVolumeSGP: number;\r\n inputCommentSGP: string;\r\n totalVolumeKTLTrain1: number;\r\n totalVolumeKTLTrain2: number;\r\n totalVolumeKTLTrain3: number;\r\n totalVolumeKTLTrain4: number;\r\n inputCommentKTLTrain1: string;\r\n inputCommentKTLTrain2: string;\r\n inputCommentKTLTrain3: string;\r\n inputCommentKTLTrain4: string;\r\n plant: Plant;\r\n}\r\n\r\nexport class PagedListOfKTLSGPSO2ProjectedDataInputDTO implements IPagedListOfKTLSGPSO2ProjectedDataInputDTO {\r\n pageNumber!: number;\r\n pageSize!: number;\r\n totalCount!: number;\r\n totalPages!: number;\r\n hasPreviousPage!: boolean;\r\n hasNextPage!: boolean;\r\n items!: KTLSGPSO2ProjectedDataInputDTO[];\r\n\r\n constructor(data?: IPagedListOfKTLSGPSO2ProjectedDataInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.items = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pageNumber = _data[\"pageNumber\"];\r\n this.pageSize = _data[\"pageSize\"];\r\n this.totalCount = _data[\"totalCount\"];\r\n this.totalPages = _data[\"totalPages\"];\r\n this.hasPreviousPage = _data[\"hasPreviousPage\"];\r\n this.hasNextPage = _data[\"hasNextPage\"];\r\n if (Array.isArray(_data[\"items\"])) {\r\n this.items = [] as any;\r\n for (let item of _data[\"items\"])\r\n this.items!.push(KTLSGPSO2ProjectedDataInputDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): PagedListOfKTLSGPSO2ProjectedDataInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PagedListOfKTLSGPSO2ProjectedDataInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pageNumber\"] = this.pageNumber;\r\n data[\"pageSize\"] = this.pageSize;\r\n data[\"totalCount\"] = this.totalCount;\r\n data[\"totalPages\"] = this.totalPages;\r\n data[\"hasPreviousPage\"] = this.hasPreviousPage;\r\n data[\"hasNextPage\"] = this.hasNextPage;\r\n if (Array.isArray(this.items)) {\r\n data[\"items\"] = [];\r\n for (let item of this.items)\r\n data[\"items\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPagedListOfKTLSGPSO2ProjectedDataInputDTO {\r\n pageNumber: number;\r\n pageSize: number;\r\n totalCount: number;\r\n totalPages: number;\r\n hasPreviousPage: boolean;\r\n hasNextPage: boolean;\r\n items: KTLSGPSO2ProjectedDataInputDTO[];\r\n}\r\n\r\nexport class KTLSGPSO2ProjectedDataInputDTO implements IKTLSGPSO2ProjectedDataInputDTO {\r\n id!: number;\r\n startTime!: Date;\r\n endTime!: Date;\r\n plant!: Plant;\r\n ktlTrains!: KTLTrains;\r\n volume!: number;\r\n user!: string;\r\n comment!: string;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IKTLSGPSO2ProjectedDataInputDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.plant = _data[\"plant\"];\r\n this.ktlTrains = _data[\"ktlTrains\"];\r\n this.volume = _data[\"volume\"];\r\n this.user = _data[\"user\"];\r\n this.comment = _data[\"comment\"];\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLSGPSO2ProjectedDataInputDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLSGPSO2ProjectedDataInputDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"plant\"] = this.plant;\r\n data[\"ktlTrains\"] = this.ktlTrains;\r\n data[\"volume\"] = this.volume;\r\n data[\"user\"] = this.user;\r\n data[\"comment\"] = this.comment;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLSGPSO2ProjectedDataInputDTO {\r\n id: number;\r\n startTime: Date;\r\n endTime: Date;\r\n plant: Plant;\r\n ktlTrains: KTLTrains;\r\n volume: number;\r\n user: string;\r\n comment: string;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport class SO2FlowmeterGraphDTO implements ISO2FlowmeterGraphDTO {\r\n title!: string;\r\n values!: SO2FlowmeterValuesDTO[];\r\n\r\n constructor(data?: ISO2FlowmeterGraphDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.values = [];\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.title = _data[\"title\"];\r\n if (Array.isArray(_data[\"values\"])) {\r\n this.values = [] as any;\r\n for (let item of _data[\"values\"])\r\n this.values!.push(SO2FlowmeterValuesDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SO2FlowmeterGraphDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SO2FlowmeterGraphDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"title\"] = this.title;\r\n if (Array.isArray(this.values)) {\r\n data[\"values\"] = [];\r\n for (let item of this.values)\r\n data[\"values\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISO2FlowmeterGraphDTO {\r\n title: string;\r\n values: SO2FlowmeterValuesDTO[];\r\n}\r\n\r\nexport class SO2FlowmeterValuesDTO implements ISO2FlowmeterValuesDTO {\r\n timespan!: Date;\r\n value!: number;\r\n\r\n constructor(data?: ISO2FlowmeterValuesDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.timespan = _data[\"timespan\"] ? new Date(_data[\"timespan\"].toString()) : undefined;\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SO2FlowmeterValuesDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SO2FlowmeterValuesDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"timespan\"] = this.timespan ? this.timespan.toISOString() : undefined;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISO2FlowmeterValuesDTO {\r\n timespan: Date;\r\n value: number;\r\n}\r\n\r\nexport enum SO2StreamGroupChildrenTypes {\r\n KTLTrain1 = 0,\r\n KTLTrain2 = 1,\r\n KTLTrain3 = 2,\r\n KTLTrain4 = 3,\r\n SGP = 4,\r\n}\r\n\r\nexport class KTLSGPSO2RecalculationRecordDTO implements IKTLSGPSO2RecalculationRecordDTO {\r\n id!: number;\r\n startTime!: Date;\r\n endTime!: Date;\r\n type!: DataRecoveryType;\r\n method!: RecoveryMethodType;\r\n ratioStartTime?: Date | undefined;\r\n ratioEndTime?: Date | undefined;\r\n margin!: number;\r\n average!: number;\r\n ratio41!: number;\r\n ratio38!: number;\r\n ratio26!: number;\r\n ratio0!: number;\r\n slopeInc!: number;\r\n interceptInc!: number;\r\n slopeDec!: number;\r\n interceptDec!: number;\r\n plantType!: Plant;\r\n area!: SO2StreamGroupChildrenTypes;\r\n user!: string;\r\n comment!: string;\r\n logged!: Date;\r\n properties!: { [key: string]: any; };\r\n\r\n constructor(data?: IKTLSGPSO2RecalculationRecordDTO) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.properties = {};\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.startTime = _data[\"startTime\"] ? new Date(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? new Date(_data[\"endTime\"].toString()) : undefined;\r\n this.type = _data[\"type\"];\r\n this.method = _data[\"method\"];\r\n this.ratioStartTime = _data[\"ratioStartTime\"] ? new Date(_data[\"ratioStartTime\"].toString()) : undefined;\r\n this.ratioEndTime = _data[\"ratioEndTime\"] ? new Date(_data[\"ratioEndTime\"].toString()) : undefined;\r\n this.margin = _data[\"margin\"];\r\n this.average = _data[\"average\"];\r\n this.ratio41 = _data[\"ratio41\"];\r\n this.ratio38 = _data[\"ratio38\"];\r\n this.ratio26 = _data[\"ratio26\"];\r\n this.ratio0 = _data[\"ratio0\"];\r\n this.slopeInc = _data[\"slopeInc\"];\r\n this.interceptInc = _data[\"interceptInc\"];\r\n this.slopeDec = _data[\"slopeDec\"];\r\n this.interceptDec = _data[\"interceptDec\"];\r\n this.plantType = _data[\"plantType\"];\r\n this.area = _data[\"area\"];\r\n this.user = _data[\"user\"];\r\n this.comment = _data[\"comment\"];\r\n this.logged = _data[\"logged\"] ? new Date(_data[\"logged\"].toString()) : undefined;\r\n if (_data[\"properties\"]) {\r\n this.properties = {} as any;\r\n for (let key in _data[\"properties\"]) {\r\n if (_data[\"properties\"].hasOwnProperty(key))\r\n (this.properties)![key] = _data[\"properties\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): KTLSGPSO2RecalculationRecordDTO {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new KTLSGPSO2RecalculationRecordDTO();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n data[\"type\"] = this.type;\r\n data[\"method\"] = this.method;\r\n data[\"ratioStartTime\"] = this.ratioStartTime ? this.ratioStartTime.toISOString() : undefined;\r\n data[\"ratioEndTime\"] = this.ratioEndTime ? this.ratioEndTime.toISOString() : undefined;\r\n data[\"margin\"] = this.margin;\r\n data[\"average\"] = this.average;\r\n data[\"ratio41\"] = this.ratio41;\r\n data[\"ratio38\"] = this.ratio38;\r\n data[\"ratio26\"] = this.ratio26;\r\n data[\"ratio0\"] = this.ratio0;\r\n data[\"slopeInc\"] = this.slopeInc;\r\n data[\"interceptInc\"] = this.interceptInc;\r\n data[\"slopeDec\"] = this.slopeDec;\r\n data[\"interceptDec\"] = this.interceptDec;\r\n data[\"plantType\"] = this.plantType;\r\n data[\"area\"] = this.area;\r\n data[\"user\"] = this.user;\r\n data[\"comment\"] = this.comment;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n if (this.properties) {\r\n data[\"properties\"] = {};\r\n for (let key in this.properties) {\r\n if (this.properties.hasOwnProperty(key))\r\n (data[\"properties\"])[key] = (this.properties)[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IKTLSGPSO2RecalculationRecordDTO {\r\n id: number;\r\n startTime: Date;\r\n endTime: Date;\r\n type: DataRecoveryType;\r\n method: RecoveryMethodType;\r\n ratioStartTime?: Date | undefined;\r\n ratioEndTime?: Date | undefined;\r\n margin: number;\r\n average: number;\r\n ratio41: number;\r\n ratio38: number;\r\n ratio26: number;\r\n ratio0: number;\r\n slopeInc: number;\r\n interceptInc: number;\r\n slopeDec: number;\r\n interceptDec: number;\r\n plantType: Plant;\r\n area: SO2StreamGroupChildrenTypes;\r\n user: string;\r\n comment: string;\r\n logged: Date;\r\n properties: { [key: string]: any; };\r\n}\r\n\r\nexport enum DataRecoveryType {\r\n SO2Concentration = 0,\r\n FlueGasFlowrate = 1,\r\n SO2EmissionsX501 = 2,\r\n SO2StackX501 = 3,\r\n}\r\n\r\nexport enum RecoveryMethodType {\r\n Average20min = 0,\r\n Ratio = 1,\r\n Interpolation = 2,\r\n}\r\n\r\nexport enum UserGroups {\r\n SuperUser_Support = 0,\r\n Chief_Technologist = 1,\r\n Read_OnlyUser = 2,\r\n KTL_Engineer = 3,\r\n KTL_Operator = 4,\r\n KTL_Diagnostic = 5,\r\n SGP_Engineer = 6,\r\n SGP_Operator = 7,\r\n SGP_Diagnostic = 8,\r\n SGI_Engineer = 9,\r\n SGI_Diagnositican = 10,\r\n Field_Engineer = 11,\r\n Field_Operator = 12,\r\n Field_Diagnositican = 13,\r\n Field_ProdPlanAnalyst = 14,\r\n LPG_Engineer = 15,\r\n LPG_Operator = 16,\r\n LPG_Diagnositican = 17,\r\n LPG_ProdPlanAnalyst = 18,\r\n SO2_Engineer = 19,\r\n IU_Engineer = 20,\r\n IU_Operator = 21,\r\n FGP_Engineer = 22,\r\n FGP_Operator = 23,\r\n FGI_Engineer = 24,\r\n FGI_Operator = 25,\r\n}\r\n\r\nexport interface FileResponse {\r\n data: Blob;\r\n status: number;\r\n fileName?: string;\r\n headers?: { [name: string]: any };\r\n}\r\n\r\nexport class ApiException extends Error {\r\n override message: string;\r\n status: number;\r\n response: string;\r\n headers: { [key: string]: any; };\r\n result: any;\r\n\r\n constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {\r\n super();\r\n\r\n this.message = message;\r\n this.status = status;\r\n this.response = response;\r\n this.headers = headers;\r\n this.result = result;\r\n }\r\n\r\n protected isApiException = true;\r\n\r\n static isApiException(obj: any): obj is ApiException {\r\n return obj.isApiException === true;\r\n }\r\n}\r\n\r\nfunction throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): Observable {\r\n if (result !== null && result !== undefined)\r\n return _observableThrow(result);\r\n else\r\n return _observableThrow(new ApiException(message, status, response, headers, null));\r\n}\r\n\r\nfunction blobToText(blob: any): Observable {\r\n return new Observable((observer: any) => {\r\n if (!blob) {\r\n observer.next(\"\");\r\n observer.complete();\r\n } else {\r\n let reader = new FileReader();\r\n reader.onload = event => {\r\n observer.next((event.target as any).result);\r\n observer.complete();\r\n };\r\n reader.readAsText(blob);\r\n }\r\n });\r\n}","\r\n\r\nexport const environment = {\r\n production: false,\r\n API_BASE_URL_Append: '',\r\n envName: 'Development',\r\n cal: {\r\n autoSignIn: false,\r\n popupForLogin: false,\r\n instance: \"https://login.microsoftonline.com/\",\r\n tenantId: \"fd799da1-bfc1-4234-a91c-72b3a1cb9e26\",\r\n graphScopes: [\"User.Read\", \"Directory.Read.All\"],\r\n\r\n clientId: \"5d2ea035-2c03-43da-888b-435414ad2fab\",\r\n oidcScopes: [\"https://gasbalance-test.tengizchevroil.com/user_impersonation\"],\r\n redirectUri: \"https://gasbalance-dev.tengizchevroil.com/\",\r\n cacheLocation: \"localStorage\",\r\n }\r\n};\r\n\r\n","/// \r\n\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\nimport { AppModule } from './app/app.module';\r\n\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n\r\n","var map = {\n\t\"./af\": 85637,\n\t\"./af.js\": 85637,\n\t\"./ar\": 6777,\n\t\"./ar-dz\": 74508,\n\t\"./ar-dz.js\": 74508,\n\t\"./ar-kw\": 67504,\n\t\"./ar-kw.js\": 67504,\n\t\"./ar-ly\": 95373,\n\t\"./ar-ly.js\": 95373,\n\t\"./ar-ma\": 92412,\n\t\"./ar-ma.js\": 92412,\n\t\"./ar-ps\": 78823,\n\t\"./ar-ps.js\": 78823,\n\t\"./ar-sa\": 36670,\n\t\"./ar-sa.js\": 36670,\n\t\"./ar-tn\": 36448,\n\t\"./ar-tn.js\": 36448,\n\t\"./ar.js\": 6777,\n\t\"./az\": 23009,\n\t\"./az.js\": 23009,\n\t\"./be\": 28299,\n\t\"./be.js\": 28299,\n\t\"./bg\": 4685,\n\t\"./bg.js\": 4685,\n\t\"./bm\": 11171,\n\t\"./bm.js\": 11171,\n\t\"./bn\": 23590,\n\t\"./bn-bd\": 5841,\n\t\"./bn-bd.js\": 5841,\n\t\"./bn.js\": 23590,\n\t\"./bo\": 54309,\n\t\"./bo.js\": 54309,\n\t\"./br\": 54130,\n\t\"./br.js\": 54130,\n\t\"./bs\": 8033,\n\t\"./bs.js\": 8033,\n\t\"./ca\": 55294,\n\t\"./ca.js\": 55294,\n\t\"./cs\": 53028,\n\t\"./cs.js\": 53028,\n\t\"./cv\": 5807,\n\t\"./cv.js\": 5807,\n\t\"./cy\": 70342,\n\t\"./cy.js\": 70342,\n\t\"./da\": 38269,\n\t\"./da.js\": 38269,\n\t\"./de\": 11489,\n\t\"./de-at\": 42123,\n\t\"./de-at.js\": 42123,\n\t\"./de-ch\": 17757,\n\t\"./de-ch.js\": 17757,\n\t\"./de.js\": 11489,\n\t\"./dv\": 28152,\n\t\"./dv.js\": 28152,\n\t\"./el\": 7687,\n\t\"./el.js\": 7687,\n\t\"./en-au\": 46668,\n\t\"./en-au.js\": 46668,\n\t\"./en-ca\": 76798,\n\t\"./en-ca.js\": 76798,\n\t\"./en-gb\": 53615,\n\t\"./en-gb.js\": 53615,\n\t\"./en-ie\": 91364,\n\t\"./en-ie.js\": 91364,\n\t\"./en-il\": 79907,\n\t\"./en-il.js\": 79907,\n\t\"./en-in\": 70533,\n\t\"./en-in.js\": 70533,\n\t\"./en-nz\": 33190,\n\t\"./en-nz.js\": 33190,\n\t\"./en-sg\": 51096,\n\t\"./en-sg.js\": 51096,\n\t\"./eo\": 3962,\n\t\"./eo.js\": 3962,\n\t\"./es\": 37726,\n\t\"./es-do\": 65010,\n\t\"./es-do.js\": 65010,\n\t\"./es-mx\": 63654,\n\t\"./es-mx.js\": 63654,\n\t\"./es-us\": 59043,\n\t\"./es-us.js\": 59043,\n\t\"./es.js\": 37726,\n\t\"./et\": 25343,\n\t\"./et.js\": 25343,\n\t\"./eu\": 90728,\n\t\"./eu.js\": 90728,\n\t\"./fa\": 60787,\n\t\"./fa.js\": 60787,\n\t\"./fi\": 71771,\n\t\"./fi.js\": 71771,\n\t\"./fil\": 45335,\n\t\"./fil.js\": 45335,\n\t\"./fo\": 69761,\n\t\"./fo.js\": 69761,\n\t\"./fr\": 1670,\n\t\"./fr-ca\": 28991,\n\t\"./fr-ca.js\": 28991,\n\t\"./fr-ch\": 97280,\n\t\"./fr-ch.js\": 97280,\n\t\"./fr.js\": 1670,\n\t\"./fy\": 24203,\n\t\"./fy.js\": 24203,\n\t\"./ga\": 69858,\n\t\"./ga.js\": 69858,\n\t\"./gd\": 38605,\n\t\"./gd.js\": 38605,\n\t\"./gl\": 27365,\n\t\"./gl.js\": 27365,\n\t\"./gom-deva\": 33896,\n\t\"./gom-deva.js\": 33896,\n\t\"./gom-latn\": 95587,\n\t\"./gom-latn.js\": 95587,\n\t\"./gu\": 97950,\n\t\"./gu.js\": 97950,\n\t\"./he\": 92029,\n\t\"./he.js\": 92029,\n\t\"./hi\": 51897,\n\t\"./hi.js\": 51897,\n\t\"./hr\": 29816,\n\t\"./hr.js\": 29816,\n\t\"./hu\": 22253,\n\t\"./hu.js\": 22253,\n\t\"./hy-am\": 28196,\n\t\"./hy-am.js\": 28196,\n\t\"./id\": 51307,\n\t\"./id.js\": 51307,\n\t\"./is\": 95474,\n\t\"./is.js\": 95474,\n\t\"./it\": 23099,\n\t\"./it-ch\": 45807,\n\t\"./it-ch.js\": 45807,\n\t\"./it.js\": 23099,\n\t\"./ja\": 19127,\n\t\"./ja.js\": 19127,\n\t\"./jv\": 30182,\n\t\"./jv.js\": 30182,\n\t\"./ka\": 10758,\n\t\"./ka.js\": 10758,\n\t\"./kk\": 93444,\n\t\"./kk.js\": 93444,\n\t\"./km\": 72034,\n\t\"./km.js\": 72034,\n\t\"./kn\": 46223,\n\t\"./kn.js\": 46223,\n\t\"./ko\": 83064,\n\t\"./ko.js\": 83064,\n\t\"./ku\": 8714,\n\t\"./ku-kmr\": 10961,\n\t\"./ku-kmr.js\": 10961,\n\t\"./ku.js\": 8714,\n\t\"./ky\": 12062,\n\t\"./ky.js\": 12062,\n\t\"./lb\": 84796,\n\t\"./lb.js\": 84796,\n\t\"./lo\": 19279,\n\t\"./lo.js\": 19279,\n\t\"./lt\": 106,\n\t\"./lt.js\": 106,\n\t\"./lv\": 11840,\n\t\"./lv.js\": 11840,\n\t\"./me\": 42240,\n\t\"./me.js\": 42240,\n\t\"./mi\": 13588,\n\t\"./mi.js\": 13588,\n\t\"./mk\": 15518,\n\t\"./mk.js\": 15518,\n\t\"./ml\": 37823,\n\t\"./ml.js\": 37823,\n\t\"./mn\": 98657,\n\t\"./mn.js\": 98657,\n\t\"./mr\": 61285,\n\t\"./mr.js\": 61285,\n\t\"./ms\": 43014,\n\t\"./ms-my\": 86253,\n\t\"./ms-my.js\": 86253,\n\t\"./ms.js\": 43014,\n\t\"./mt\": 20167,\n\t\"./mt.js\": 20167,\n\t\"./my\": 47940,\n\t\"./my.js\": 47940,\n\t\"./nb\": 50014,\n\t\"./nb.js\": 50014,\n\t\"./ne\": 49023,\n\t\"./ne.js\": 49023,\n\t\"./nl\": 34208,\n\t\"./nl-be\": 71412,\n\t\"./nl-be.js\": 71412,\n\t\"./nl.js\": 34208,\n\t\"./nn\": 81354,\n\t\"./nn.js\": 81354,\n\t\"./oc-lnc\": 40870,\n\t\"./oc-lnc.js\": 40870,\n\t\"./pa-in\": 80389,\n\t\"./pa-in.js\": 80389,\n\t\"./pl\": 7342,\n\t\"./pl.js\": 7342,\n\t\"./pt\": 34774,\n\t\"./pt-br\": 73003,\n\t\"./pt-br.js\": 73003,\n\t\"./pt.js\": 34774,\n\t\"./ro\": 85333,\n\t\"./ro.js\": 85333,\n\t\"./ru\": 73451,\n\t\"./ru.js\": 73451,\n\t\"./sd\": 43921,\n\t\"./sd.js\": 43921,\n\t\"./se\": 59682,\n\t\"./se.js\": 59682,\n\t\"./si\": 80582,\n\t\"./si.js\": 80582,\n\t\"./sk\": 4348,\n\t\"./sk.js\": 4348,\n\t\"./sl\": 95337,\n\t\"./sl.js\": 95337,\n\t\"./sq\": 39358,\n\t\"./sq.js\": 39358,\n\t\"./sr\": 50683,\n\t\"./sr-cyrl\": 69382,\n\t\"./sr-cyrl.js\": 69382,\n\t\"./sr.js\": 50683,\n\t\"./ss\": 51156,\n\t\"./ss.js\": 51156,\n\t\"./sv\": 29855,\n\t\"./sv.js\": 29855,\n\t\"./sw\": 18536,\n\t\"./sw.js\": 18536,\n\t\"./ta\": 15373,\n\t\"./ta.js\": 15373,\n\t\"./te\": 37809,\n\t\"./te.js\": 37809,\n\t\"./tet\": 61297,\n\t\"./tet.js\": 61297,\n\t\"./tg\": 92527,\n\t\"./tg.js\": 92527,\n\t\"./th\": 85862,\n\t\"./th.js\": 85862,\n\t\"./tk\": 79331,\n\t\"./tk.js\": 79331,\n\t\"./tl-ph\": 44387,\n\t\"./tl-ph.js\": 44387,\n\t\"./tlh\": 3592,\n\t\"./tlh.js\": 3592,\n\t\"./tr\": 79732,\n\t\"./tr.js\": 79732,\n\t\"./tzl\": 99570,\n\t\"./tzl.js\": 99570,\n\t\"./tzm\": 83553,\n\t\"./tzm-latn\": 7699,\n\t\"./tzm-latn.js\": 7699,\n\t\"./tzm.js\": 83553,\n\t\"./ug-cn\": 25674,\n\t\"./ug-cn.js\": 25674,\n\t\"./uk\": 69974,\n\t\"./uk.js\": 69974,\n\t\"./ur\": 45773,\n\t\"./ur.js\": 45773,\n\t\"./uz\": 357,\n\t\"./uz-latn\": 77135,\n\t\"./uz-latn.js\": 77135,\n\t\"./uz.js\": 357,\n\t\"./vi\": 20043,\n\t\"./vi.js\": 20043,\n\t\"./x-pseudo\": 40767,\n\t\"./x-pseudo.js\": 40767,\n\t\"./yo\": 80150,\n\t\"./yo.js\": 80150,\n\t\"./zh-cn\": 21828,\n\t\"./zh-cn.js\": 21828,\n\t\"./zh-hk\": 86644,\n\t\"./zh-hk.js\": 86644,\n\t\"./zh-mo\": 79305,\n\t\"./zh-mo.js\": 79305,\n\t\"./zh-tw\": 31860,\n\t\"./zh-tw.js\": 31860\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 35358;"],"names":["CommonModule","RouterModule","FinalReportRoutingModule","TCORoutingModule","TCOComponent","ProcessEngRoutingModule","FDRoutingModule","LPGRoutingModule","FDInputRoutingModule","SharedUnauthorizedPageComponent","TCOMapComponent","routes","path","redirectTo","pathMatch","children","component","loadChildren","then","m","ProcessEngModule","data","title","TCOModule","AppRoutingModule","_","_2","_3","forRoot","imports","i1","exports","NavigationEnd","takeUntilDestroyed","TCOLanguages","i0","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","AppComponent","constructor","_router","_translate","showNavbar","window","location","href","includes","isMainPage","isNotAuthorize","isKTLMonthlyReport","isKTLCC","isKTLSchema","isSGPDailyReport","isSGPMonthlyReport","isSGPCC","isSGPSchema","isSGIFlareReport","isSGITargetPermit","isSGICC","isLPGFuelGasFlaring","isLPGCC","isFlowmeterCalc","isSO2EmissionsMonthlyReport","isFGDKTLInput","isFGDKTLDailyReport","isFGDKTLMonthlyReport","isFGDSGPDailyReport","isFGDSGPMonthlyReport","isSGPGasUsageReport","setDefaultLang","RU","addLangs","EN","KZ","use","events","pipe","subscribe","event","setActiveItemByRoute","urlAfterRedirects","ngOnInit","route","ɵɵdirectiveInject","Router","i2","TranslateService","selectors","decls","vars","consts","template","AppComponent_Template","rf","ctx","ɵɵtemplate","AppComponent_div_0_Template","AppComponent_div_1_Template","AppComponent_div_2_Template","ɵɵproperty","ɵɵadvance","AppInitializer","authSerivce","login","APP_INITIALIZER","HttpClient","HttpClientModule","API_BASE_URL","environment","BrowserModule","BrowserAnimationsModule","StateModule","SharedModule","MaterialModule","FinalReportModule","NavbarComponent","AuthService","TranslateLoader","TranslateModule","TranslateHttpLoader","ToastrModule","HttpLoaderFactory","http","AppModule","bootstrap","provide","useFactory","deps","multi","useValue","API_BASE_URL_Append","defaultLanguage","loader","positionClass","preventDuplicates","declarations","isDevMode","map","selectUserGroups","UserGroups","RedirectTypes","RoleGuard","store","router","canActivate","state","expectedRole","redirectType","push","Chief_Technologist","Read_OnlyUser","SuperUser_Support","jsonData","localStorage","getItem","user","JSON","parse","some","item","select","role","length","navigate","Field","Field_Operator","Field_ProdPlanAnalyst","KTL","KTL_Diagnostic","KTL_Operator","SGP","SGP_Operator","LPG","LPG_Operator","LPG_ProdPlanAnalyst","queryParams","redirectBack","routeConfig","ɵɵinject","Store","factory","ɵfac","providedIn","CCNames","n2","cO2","c1","c2","c3","iC4","nC4","iC5","nC5","c6Plus","h2S","cH3SH","c2H5SH","iC3H7SH","nC3H7SH","c4H9SH","cos","h2O","o2","h2","he","mw","FlaringReportNames","co2","ic4","nc4","ic5","nc5","c6plus","h2s","ch3sh","c2h5sh","ic3h7sh","nc3h7sh","c4h9sh","h2o","AuthActions","dispatch","getUserGroups","moment","BehaviorSubject","fromEvent","LPGGasType","PermitTargetInputCategory","PermitTargetInputType","StreamStatuses","CommonService","MONTH_FORMAT","DATE_FORMAT","DATETIME_FORMAT","_4","DATE_VIEW_FORMAT","_5","DATE_NEW_VIEW_FORMAT","_6","DATETIME_VIEW_FORMAT","_7","DATETIME_VIEW_NEW_FORMAT","selectedRowSubject","selectedRow$","asObservable","convertToDateTimeZ","date","newDate","Date","getFullYear","getMonth","toString","padStart","getDate","getHours","getMinutes","convertDateToMonth","format","manipulateDate","options","isUTC","utc","unit","add","amount","time","set","hours","minutes","seconds","toDate","formatDate","formatDateWithShift","value","isLocal","isValid","toLocaleString","local","convertLocalTimeAsUTC","getCategoryName","category","V6","V7","V8","V9","getGasTypeName","type","Dry","Propane","Butane","getStreamStatusColor","status","Issue","background","Modified","getGasTypeTargetPermitName","getLimitName","Permit","Target","formatNumberCC","formattedValue","minimumFractionDigits","maximumFractionDigits","replace","formatNumberMV","Number","isInteger","formatNumber","digits","setSelectedRow","row","next","closePage","close","getClipboardDataFromDocument","document","clipboardData","getData","console","error","log","getClipboardData","values","split","matchVertical","exec","filter","matchHorizontal","isOperatorLocked","recordDate","today","month","year","start","isBefore","isAfter","_8","_9","BreadcrumbService","breadcrumbs","getBreadcrumbStream","updateBreadcrumb","newItem","currentBreadcrumbs","getValue","newBreadcrumbs","resetBreadcrumbTo","SharedDeleteConfirmationComponent","ModalService","dialog","openDeleteConfirmationDialog","Promise","resolve","dialogRef","open","width","afterClosed","result","MatDialog","TitleService","setTitle","newTitle","Title","ExportService","lpgClient","fieldClient","fgdsgpClient","isLoading","exportFlaringReport","dt","setIsLoading","exportFlaringReports","res","blob","Blob","downloadUrl","URL","createObjectURL","link","createElement","download","fileName","click","exportAnalystReports","exportLPGDataReports","exportFuelGasFlaringReports","exportChemicalCompositionReports","exportFieldDryGasReports","exportDryGas","exportFGDSGPMonthlyFuelGasReports","exportSGPFGDMonthlyReports","exportFGDSGPDailyFuelGasReports","exportSGPFGDDailyReports","loading","getIsLoading","LPGClient","FieldClient","SGPFGDClient","I18NService","_languages$","languages$","setLanguages","languages","FuelGasFlaringEditComponent","FuelGasFlaringService","openEditDialog","OperatorsEditComponent","OperatorService","getParks","Object","keys","getGasesForPark","park","getOptionsForGas","gas","FlowmeterCalculationComponent","LPGStreamCCType","Subject","PEService","getPurpose","purpose","getEntryType","entryType","getFlowMeterEntryType","flowMeterEntryType","getMWSelectionPoints","getCategory","Category","dialogClosedSubject","Flared","Leakage","selectedTableName","editComponent","openFlowmeterCalculationDialog","setSelectedTableName","tableName","formatMWSelectionPoint","OldParkAvgPropane","OldParkAvgButane","NewParkAvgPropane","NewParkAvgButane","E902","F3501","F3502","F3503","E901","F3511","F3512","F3513","Korolev","KTLAvg","Nothing","formatMWSelectionPointToName","LPGModule","KtlSgpModule","FieldModule","SgiModule","FDKTLModule","FDSGPModule","forChild","createAction","props","AddGenerateReports","AddGenerateReportsSuccess","AddGenerateReportsFailure","getDailyReport","getDailyReportSuccess","getDailyReportFailure","getDailyReportStreamDetails","getDailyReportStreamDetailsSuccess","getDailyReportStreamDetailsFailure","createEffect","ofType","exhaustMap","catchError","concatMap","of","DailyReportActions","notificationActions","DailyReportEffects","actions","ktlfdClient","addGenerateReports","action","generateReports","startTime","showNotification","isSuccess","err","DailyReport","startLoading","getReportDaily","flare","stopLoading","dataArray","DailyReportStreamDetails","streamId","Actions","KTLSGPClient","i3","createReducer","on","initialState","isLoadingSuccess","isLoadingFailure","DailyReportReducer","payload","message","getF205","getF205Success","getF205Failure","F205Actions","F205Effects","F205","getF205CalcDetails","startdt","enddt","F205Reducer","getChemicalCompound","getChemicalCompoundSuccess","getChemicalCompoundFailure","getChemicalCompoundsEquipment","getChemicalCompoundsEquipmentSuccess","getChemicalCompoundsEquipmentFailure","getStreamsName","getStreamsNameSuccess","getStreamsNameFailure","AddManualRecord","AddManualRecordSuccess","AddManualRecordFailure","FlaringActions","FlaringEffects","chemicalCompound","getChemicalCompoundsID","chemicalCompoundsEquipment","dataEquipment","StreamsName$","getAllStreams","streams","addManualRecord","FlaringReducer","GetCCData","CCDataSelector","ɵɵtext","key_r9","ɵɵpureFunction0","_c0","_c1","ɵɵtextInterpolate1","ctx_r8","getObjectName","getObjectValue","fuelGasFromSalesGasLine","CcComponent_span_23_tr_13_Template","ctx_r1","ccKeys","key_r11","ctx_r10","fuelGasFromKTL","CcComponent_span_30_tr_30_Template","ctx_r2","key_r13","ctx_r12","dryGasWeightedAverage","CcComponent_span_37_tr_13_Template","ctx_r3","key_r15","ctx_r14","propane","CcComponent_span_45_tr_25_Template","ctx_r4","key_r17","ctx_r16","propaneWeightedAverage","CcComponent_span_52_tr_11_Template","ctx_r5","key_r19","ctx_r18","butane","CcComponent_span_60_tr_25_Template","ctx_r6","key_r21","ctx_r20","butaneWeightedAverage","CcComponent_span_67_tr_11_Template","ctx_r7","CcComponent","commonService","exportService","ccEnum","cc","Average","key","obj","toFixed","monthChange","exportToExcel","getLoading","CcComponent_Template","ɵɵlistener","CcComponent_Template_input_ngModelChange_11_listener","$event","CcComponent_Template_button_click_13_listener","CcComponent_div_15_Template","CcComponent_span_23_Template","CcComponent_span_30_Template","CcComponent_span_37_Template","CcComponent_span_45_Template","CcComponent_span_52_Template","CcComponent_span_60_Template","CcComponent_span_67_Template","FlaringReportComponent","LPGDataComponent","FlaringReportData","FlaringReportSelector","getFlaringReportCCName","items","i_r4","name","FlaringReportComponent_div_26_tr_48_Template","ɵɵtextInterpolate","count","list","Array","FlaringReportComponent_Template","FlaringReportComponent_Template_input_ngModelChange_13_listener","FlaringReportComponent_Template_button_click_16_listener","FlaringReportComponent_div_18_Template","FlaringReportComponent_div_26_Template","LPGData","LPGDataSelector","LPGApproveByChef","LPGApproveStatus","ApproveStatusResponse","approveStatus","ctx_r17","row_r18","timeStamp","data1","table1","dry","i_r19","totalVolume","totalMass","LPGDataComponent_div_20_div_8_tr_30_Template","row_r21","table2","i_r22","LPGDataComponent_div_20_div_16_tr_24_Template","ctx_r23","row_r24","table3","i_r25","LPGDataComponent_div_20_div_24_tr_24_Template","ctx_r26","row_r27","table4","i_r28","LPGDataComponent_div_20_div_32_tr_24_Template","ctx_r29","row_r30","table5","i_r31","LPGDataComponent_div_20_div_40_tr_24_Template","ctx_r32","row_r33","table9","i_r34","LPGDataComponent_div_20_div_48_tr_17_Template","ctx_r35","row_r36","table6","i_r37","LPGDataComponent_div_20_div_56_tr_24_Template","ctx_r9","ctx_r38","row_r39","table7","i_r40","LPGDataComponent_div_20_div_63_tr_24_Template","ctx_r41","row_r42","table8","i_r43","LPGDataComponent_div_20_div_70_tr_24_Template","ctx_r11","ctx_r44","data2","i_r46","elementName","LPGDataComponent_div_20_div_82_tr_24_Template","countItem","row_r48","totalVolumekSm3","LPGDataComponent_div_20_div_86_tr_13_Template","ctx_r13","row_r51","LPGDataComponent_div_20_div_90_tr_11_Template","ctx_r52","row_r53","LPGDataComponent_div_20_div_102_tr_11_Template","ctx_r15","data3","ctx_r54","row_r55","LPGDataComponent_div_20_div_106_tr_11_Template","LPGDataComponent_div_20_div_8_Template","LPGDataComponent_div_20_div_16_Template","LPGDataComponent_div_20_div_24_Template","LPGDataComponent_div_20_div_32_Template","LPGDataComponent_div_20_div_40_Template","LPGDataComponent_div_20_div_48_Template","LPGDataComponent_div_20_div_56_Template","LPGDataComponent_div_20_div_63_Template","LPGDataComponent_div_20_div_70_Template","LPGDataComponent_div_20_div_82_Template","LPGDataComponent_div_20_div_86_Template","LPGDataComponent_div_20_div_90_Template","LPGDataComponent_div_20_div_102_Template","LPGDataComponent_div_20_div_106_Template","number","Approve","LPGDataComponent_Template","LPGDataComponent_Template_input_ngModelChange_11_listener","LPGDataComponent_Template_button_click_13_listener","LPGDataComponent_div_15_Template","LPGDataComponent_Template_button_click_17_listener","LPGDataComponent_div_19_Template","LPGDataComponent_div_20_Template","Validators","MAT_DIALOG_DATA","EditFuelGasFlaringData","LPGFuelGasFlaringDefaultDTO","LPGMonthlyInputRecordDTO","LPGMonthlyInputRecordType","getFuelGasFlaringDefault","fuelGasFlaringDefault","fb","fuelGasFlaringEditForm","group","inputs","volume","pilotGasRate","purgeRate","purgeRate2","numberOfFuelGasLine","defaultValues","enableInputs","required","calculation","comment","defaults","setDefaultValues","initialInputs","getType","Smokeless","Smoke","Pilot","FlareHeader","patchValue","handleSave","valid","newData","isAuto","FormBuilder","MatDialogRef","FuelGasFlaringEditComponent_Template","FuelGasFlaringEditComponent_div_6_Template","FuelGasFlaringEditComponent_div_7_Template","FuelGasFlaringEditComponent_div_8_Template","FuelGasFlaringEditComponent_div_9_Template","FuelGasFlaringEditComponent_div_10_Template","FuelGasFlaringEditComponent_div_11_Template","FuelGasFlaringEditComponent_Template_button_click_18_listener","ɵɵpureFunction1","invalid","FuelGasFlaringData","FuelGasFlaringSelector","item_r27","item_r28","item_r29","item_r30","item_r32","item_r33","item_r34","item_r35","item_r36","updatedBy","FuelGasFlaringComponent_td_66_Template_button_click_1_listener","restoredCtx","ɵɵrestoreView","_r39","item_r37","$implicit","ɵɵnextContext","ɵɵresetView","onEditClick","FuelGasFlaringComponent","breadcrumbService","titleService","fuelGasFlaringService","displayedColumns","displayedColumns2","monthlyGasFlarinReport","monthlyGasFlaringReport","fuelGasFlaring","i4","i5","i6","FuelGasFlaringComponent_Template","FuelGasFlaringComponent_Template_input_ngModelChange_11_listener","FuelGasFlaringComponent_Template_button_click_13_listener","FuelGasFlaringComponent_div_15_Template","ɵɵelementContainerStart","FuelGasFlaringComponent_th_26_Template","FuelGasFlaringComponent_td_27_Template","ɵɵelementContainerEnd","FuelGasFlaringComponent_th_29_Template","FuelGasFlaringComponent_td_30_Template","FuelGasFlaringComponent_th_32_Template","FuelGasFlaringComponent_td_33_Template","FuelGasFlaringComponent_th_35_Template","FuelGasFlaringComponent_td_36_Template","FuelGasFlaringComponent_div_37_Template","FuelGasFlaringComponent_tr_38_Template","FuelGasFlaringComponent_tr_39_Template","FuelGasFlaringComponent_th_50_Template","FuelGasFlaringComponent_td_51_Template","FuelGasFlaringComponent_th_53_Template","FuelGasFlaringComponent_td_54_Template","FuelGasFlaringComponent_th_56_Template","FuelGasFlaringComponent_td_57_Template","FuelGasFlaringComponent_th_59_Template","FuelGasFlaringComponent_td_60_Template","FuelGasFlaringComponent_th_62_Template","FuelGasFlaringComponent_td_63_Template","FuelGasFlaringComponent_th_65_Template","FuelGasFlaringComponent_td_66_Template","FuelGasFlaringComponent_div_67_Template","FuelGasFlaringComponent_tr_68_Template","FuelGasFlaringComponent_tr_69_Template","getFuelGasFlaringDefaultSuccess","getFuelGasFlaringDefaultFailure","createFeatureSelector","createSelector","fuelGasFlaringDefaultFeatureKey","fuelGasFlaringDefaultState","AnalystModule","LPG_Engineer","OperatorModule","PeModule","TargetPermitModule","redirectCase","EditOperator","LPGOperatorInputDTO","LPGPark","park_r10","gas_r11","option_r12","operatorService","parks","selectedPark","gases","selectedGas","selectedOptions","isOtherSelected","otherInputValue","operatorEditForm","endTime","reason","techComments","lpgPark","NewParkSGP","gasType","bullet","other","onOptionChange","onParkChange","onGasChange","body","vals","id","isOperator","OldParkKTL","alert","OperatorsEditComponent_Template","OperatorsEditComponent_div_11_Template","OperatorsEditComponent_div_17_Template","OperatorsEditComponent_Template_select_change_25_listener","OperatorsEditComponent_option_28_Template","OperatorsEditComponent_div_29_Template","OperatorsEditComponent_Template_select_change_34_listener","OperatorsEditComponent_option_37_Template","OperatorsEditComponent_div_38_Template","OperatorsEditComponent_Template_select_change_43_listener","OperatorsEditComponent_option_46_Template","OperatorsEditComponent_div_47_Template","OperatorsEditComponent_div_49_Template","OperatorsEditComponent_div_55_Template","OperatorsEditComponent_Template_button_click_62_listener","tmp_1_0","get","hasError","touched","tmp_2_0","tmp_4_0","tmp_7_0","tmp_10_0","tmp_12_0","LPGFlowmeterCalculationInputAdd","getCalculation","FlowmeterCalculationSelector","LPGFlowmeterCalculateType","LPGPEInputDTO","LPGPurpose","Chart","registerables","zoomPlugin","chartDataSelector","getFlowMeterChartData","park_r17","gas_r18","purpose_r19","entrytype_r20","bullet_r21","point_r22","category_r23","register","dataService","bullets","purposes","entrytypes","MWSelectionPoints","categories","isDisabled","FlaringAverageFrom","FlaringAverageTo","FlaringStartTime","FlaringEndTime","initialTimeUnit","zoomedTimeUnit","teckStepInitial","tickStepZoomed","izZoomed","FlowmeterCalculationForm","linkToSEEQ","FlaredVolume","disabled","min","AverageBeforeFlaring","FlaredMass","mwSelectionPoint","FlaringEndTimeControl","entryTypeControl","valueChanges","selectedEntryType","flaredVolumeControl","enable","disable","xLabels","x","getTime","createChart","onGraphChange","setupFormListeners","onAverageChange","onFlaredVolumeChange","addEventListener","handleBeforeUnload","opener","postMessage","closedManually","origin","newValue","updateFlaringStartTime","updateFlaringEndTime","originalDate","flaringStartTime","setDate","flaringAverageTo","setHours","setMinutes","flaringEndTime","resetBullet","bulletControl","setValue","clearValidators","setValidators","updateValueAndValidity","startControl","endControl","averageControl","calculationType","avg","average","onMassChange","onVolumeChangByDefault","volumeControl","setTimeout","avgValue","Volume","mwControl","massControl","volValue","mwValue","Mass","mass","graphType","updateLink","formControl","linkValue","todayFlaring","previousDay","sixDaysAgo","flaringAverageFromDate","flaringAverageToDate","flaringStartTimeDate","flaringEndTimeDate","formattedSixDaysAgo","formattedPreviosDay","formattedToday","formattedFlaringToday","flaringAverageFrom","nearestTimeRange","val","stepSizes","nearest","diff","forEach","index","Math","abs","oldChart","getChart","undefined","destroy","chart","labels","datasets","label","y","backgroundColor","borderColor","pointBackgroundColor","plugins","zoom","pan","enabled","mode","wheel","pinch","onZoom","scales","max","newStepSize","floor","ticks","stepSize","source","maxRotation","minRotation","autoSkip","display","text","displayFormats","minute","tooltipFormat","newFlowmeterCalc","init","reasonControl","flaringAvgFrom","flaringAvgTo","FlaringAVGvolumeControl","flaringAvgVolume","FlaredvolumeControl","flaredVolume","FlaredmassControl","flaredMass","seeqControl","seeq","isFlowmeter","reset","FlowmeterCalculationComponent_Template","FlowmeterCalculationComponent_Template_input_change_17_listener","FlowmeterCalculationComponent_Template_input_change_23_listener","FlowmeterCalculationComponent_Template_input_change_40_listener","FlowmeterCalculationComponent_Template_input_change_46_listener","FlowmeterCalculationComponent_Template_input_change_59_listener","FlowmeterCalculationComponent_Template_input_change_65_listener","FlowmeterCalculationComponent_Template_input_change_71_listener","FlowmeterCalculationComponent_div_72_Template","FlowmeterCalculationComponent_Template_textarea_blur_84_listener","FlowmeterCalculationComponent_Template_select_change_97_listener","FlowmeterCalculationComponent_option_100_Template","FlowmeterCalculationComponent_div_101_Template","FlowmeterCalculationComponent_Template_select_change_106_listener","FlowmeterCalculationComponent_option_109_Template","FlowmeterCalculationComponent_div_110_Template","FlowmeterCalculationComponent_option_118_Template","FlowmeterCalculationComponent_div_119_Template","FlowmeterCalculationComponent_option_127_Template","FlowmeterCalculationComponent_div_128_Template","FlowmeterCalculationComponent_Template_select_change_133_listener","FlowmeterCalculationComponent_option_136_Template","FlowmeterCalculationComponent_div_137_Template","FlowmeterCalculationComponent_Template_select_change_142_listener","FlowmeterCalculationComponent_option_145_Template","FlowmeterCalculationComponent_div_146_Template","FlowmeterCalculationComponent_option_154_Template","FlowmeterCalculationComponent_div_155_Template","FlowmeterCalculationComponent_div_163_Template","FlowmeterCalculationComponent_div_165_Template","FlowmeterCalculationComponent_Template_button_click_169_listener","tmp_3_0","ɵɵsanitizeUrl","tmp_5_0","tmp_9_0","tmp_11_0","tmp_13_0","tmp_15_0","tmp_17_0","tmp_19_0","tmp_20_0","tmp_22_0","tmp_23_0","FDInputModule","getDailyFlareReport","getDailyFlareReportSuccess","getDailyFlareReportFailure","getChemicalCompositionRecords","getChemicalCompositionRecordsSuccess","getChemicalCompositionRecordsFailure","getBlowDownRecords","getBlowDownRecordsSuccess","getBlowDownRecordsFailure","saveBlowDownRecord","saveBlowDownRecordSuccess","saveBlowDownRecordFailure","deleteBlowDownRecord","deleteBlowDownRecordSuccess","deleteBlowDownRecordFailure","getTargetPermitRecords","getTargetPermitRecordsSuccess","getTargetPermitRecordsFailure","saveTargetPermitRecord","saveTargetPermitRecordSuccess","saveTargetPermitRecordFailure","saveManualRecord","saveManualRecordSuccess","saveManualRecordFailure","approveSgiFlareReport","approveSgiFlareReportSuccess","approveSgiFlareReportFailure","getApproveTimestamp","getApproveTimestampSuccess","getApproveTimestampFailure","exportMonthlyReport","exportMonthlyReportSuccess","exportMonthlyReportFailure","editFlareRecordVolume","editFlareRecordVolumeSuccess","editFlareRecordVolumeFailure","deleteFlareRecordVolume","deleteFlareRecordVolumeSuccess","deleteFlareRecordVolumeFailure","SGPFlaringEffects","sgpfdClient","StreamsName","SGPFlaringReducer","getBoilerRecords","getBoilerRecordsSuccess","getBoilerRecordsFailure","saveBoilersRecord","saveBoilersRecordSuccess","saveBoilersRecordFailure","updateBoilersRecord","updateBoilersRecordSuccess","updateBoilersRecordFailure","updateBoilerMotohours","updateBoilerMotohoursSuccess","updateBoilerMotohoursFailure","bulkResetBoilerRecords","bulkResetBoilerRecordsSuccess","bulkResetBoilerRecordsFailure","getHeaterRecords","getHeaterRecordsSuccess","getHeaterRecordsFailure","saveHeatersRecord","saveHeatersRecordSuccess","saveHeatersRecordFailure","updateHeatersRecords","updateHeatersRecordsSuccess","updateHeatersRecordsFailure","updateHeaterMotohours","updateHeaterMotohoursSuccess","updateHeaterMotohoursFailure","bulkResetHeaterRecords","bulkResetHeaterRecordsSuccess","bulkResetHeaterRecordsFailure","getMetersRecords","getMetersRecordsSuccess","getMetersRecordsFailure","saveMetersRecords","saveMetersRecordsSuccess","saveMetersRecordsFailure","updateMetersRecords","updateMetersRecordsSuccess","updateMetersRecordsFailure","resetMetersData","resetMetersDataSuccess","resetMetersDataFailure","getTotalTableRecords","getTotalTableRecordsSuccess","getTotalTableRecordsFailure","getIBMOARecords","getIBMOARecordsSuccess","getIBMOARecordsFailure","saveIBMOARecord","saveIBMOARecordSuccess","saveIBMOARecordFailure","getMonthlyReports","getMonthlyReportsSuccess","getMonthlyReportsFailure","saveMonthlyReportComments","saveMonthlyReportCommentsSuccess","saveMonthlyReportCommentsFailure","getMonthlyApproveTimestamp","getMonthlyApproveTimestampSuccess","getMonthlyApproveTimestampFailure","approveMonthlyReport","approveMonthlyReportSuccess","approveMonthlyReportFailure","DatePipe","DeleteOverrideRecord","FuelGasEditComponent","sharedService","modalService","FuelGasEditForm","handleDelete","datePipe","transform","ProductionGasBalanceService","FuelGasEditComponent_Template","styles","SharedSaveConfirmationComponent","Day","Month","selectedOptionSource","selectedOption$","selectedMonthSource","selectedMonth$","selectedDateSource","selectedDate$","getPeriods","setSelectedOption","option","setSelectedMonth","setSelectedDate","openSaveDialog","openRefreshDialog","getDailyFuelGas","getDailyFuelGasSuccess","getDailyFuelGasFailure","AddOverrideManualRecords","AddOverrideManualRecordsSuccess","AddOverrideManualRecordsFailure","getIsDailyRecordExist","getIsDailyRecordExistSuccess","getIsDailyRecordExistFailure","DeleteOverrideRecordSuccess","DeleteOverrideRecordFailure","toArray","from","FuelGasActions","KTLFGDFuelGasEffects","ktlfgdClient","dailyFuelGas","getDailyRecords","isDailyRequestExist","isDailyRecordsExist","isDailyRecordExistdata","addOverrideManualRecords","req$","prop","overrideManualRecord","deleteOverrideRecord","KTLFGDClient","KTLFGDFuelGasReducer","getMonthlyFuelGas","getMonthlyFuelGasSuccess","getMonthlyFuelGasFailure","FGDSGPManualRecord","FGDSGPManualRecordSuccess","FGDSGPManualRecordFailure","AddOverrideManualRecord","AddOverrideManualRecordSuccess","AddOverrideManualRecordFailure","FuelGasEffects","sgpfgdClient","monthlyFuelGas","getMonthlyRecords","ManualRecord","addOverrideManualRecord","FuelGasReducer","getGUR","getGURSuccess","getGURFailure","FGDSGPGURManualRecord","FGDSGPGURManualRecordSuccess","FGDSGPGURManualRecordFailure","GURActions","GUREffects","postGUR","GURReducer","FDModule","FgdModule","navigateTo","TCOMapComponent_Template","TCOMapComponent_Template_div_click_0_listener","TCOMapComponent_Template_div_click_12_listener","TCOMapComponent_Template_div_click_18_listener","TCOMapComponent_Template_div_click_24_listener","TCOMapComponent_Template_div_click_30_listener","TCOMapComponent_Template_div_click_42_listener","TCOMapComponent_Template_div_click_48_listener","TCOMapComponent_Template_div_click_54_listener","TCOMapComponent_Template_div_click_60_listener","TCOComponent_div_7_li_9_span_2_Template_span_click_0_listener","_r9","item_r3","expand","TCOComponent_div_7_li_9_span_3_Template_span_click_0_listener","_r12","TCOComponent_div_7_li_9_div_7_li_2_span_2_Template_span_click_0_listener","_r21","child_r14","TCOComponent_div_7_li_9_div_7_li_2_span_3_Template_span_click_0_listener","_r24","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_span_2_Template_span_click_0_listener","_r33","ch_r26","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_span_3_Template_span_click_0_listener","_r36","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_div_7_li_2_span_2_Template_span_click_0_listener","_r44","tch_r38","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_div_7_li_2_span_3_Template_span_click_0_listener","_r47","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_div_7_li_2_span_2_Template","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_div_7_li_2_span_3_Template","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_div_7_li_2_Template_span_click_4_listener","_r49","_c2","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_div_7_li_2_Template","ɵɵclassProp","tchilds","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_span_2_Template","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_span_3_Template","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_Template_span_click_4_listener","_r52","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_div_7_Template","TCOComponent_div_7_li_9_div_7_li_2_div_7_li_2_Template","schilds","TCOComponent_div_7_li_9_div_7_li_2_span_2_Template","TCOComponent_div_7_li_9_div_7_li_2_span_3_Template","TCOComponent_div_7_li_9_div_7_li_2_Template_span_click_4_listener","_r55","TCOComponent_div_7_li_9_div_7_li_2_div_7_Template","TCOComponent_div_7_li_9_div_7_li_2_Template","childs","TCOComponent_div_7_li_9_span_2_Template","TCOComponent_div_7_li_9_span_3_Template","TCOComponent_div_7_li_9_Template_span_click_4_listener","_r58","TCOComponent_div_7_li_9_div_7_Template","TCOComponent_div_7_li_9_Template","group_r1","arr","TCOComponent_Template","TCOComponent_div_7_Template","_c3","NgFor","NgIf","MatDialogModule","MatGridListModule","MatTableModule","MatPaginatorModule","MatIconModule","MatButtonModule","MatMenuModule","MatDividerModule","MatCardModule","MatFormFieldModule","MatInputModule","FormsModule","ReactiveFormsModule","MatDatepickerModule","MatNativeDateModule","MatSelectModule","MatSortModule","NgChartsModule","MatTooltipModule","MatTabsModule","getChartData","ChartjsComponent","ngOnDestroy","ChartjsComponent_Template","forwardRef","FormControl","NG_VALUE_ACCESSOR","CheckboxComponent","checkBoxControl","onChange","checked","onTouched","writeValue","registerOnChange","fn","registerOnTouched","features","ɵɵProvidersFeature","useExisting","CheckboxComponent_Template","HintErrorComponent","HintErrorComponent_Template","ɵɵsanitizeHtml","ɵɵpropertyInterpolate1","i_r2","option_r1","ctx_r0","radioControl","first_r3","last_r4","RadioToggleComponent","RadioToggleComponent_Template","RadioToggleComponent_div_3_Template","ɵɵstyleProp","direction","option_r2","translate","ɵɵpipeBind1","SelectComponent","selectControl","_cdr","markForCheck","selectWidth","ChangeDetectorRef","SelectComponent_Template","SelectComponent_label_1_Template","SelectComponent_option_3_Template","getRouteLink","breadcrumb_r4","TabComponent_ng_container_8_ng_container_1_Template","TabComponent_ng_container_8_ng_template_2_Template","ɵɵtemplateRefExtractor","last_r5","_r7","button_r11","isButtonActive","button_r12","button_r13","TabComponent","pageTitle","buttons","buttons2","buttons3","breadcrumb","button","isActive","isButton2Active","isButton3Active","TabComponent_Template","TabComponent_ng_container_8_Template","TabComponent_a_16_Template","TabComponent_a_19_Template","TabComponent_a_22_Template","SharedAComponent","SharedAComponent_Template","SharedButtonComponent","SharedButtonComponent_Template","DeleteDialogAction","Delete","onCancelClick","onDeleteClick","SharedDeleteConfirmationComponent_Template","SharedDeleteConfirmationComponent_Template_button_click_11_listener","SharedDeleteConfirmationComponent_Template_button_click_13_listener","FormGroup","park_r7","gas_r8","option_r9","SharedDropdownGasParkComponent_div_29_Template_input_ngModelChange_3_listener","_r11","SharedDropdownGasParkComponent","formBuilder","operatorAddForm","gasParkForm","minLength","addControl","SharedDropdownGasParkComponent_Template","SharedDropdownGasParkComponent_Template_select_ngModelChange_5_listener","SharedDropdownGasParkComponent_Template_select_change_5_listener","SharedDropdownGasParkComponent_option_8_Template","SharedDropdownGasParkComponent_div_9_Template","SharedDropdownGasParkComponent_Template_select_ngModelChange_14_listener","SharedDropdownGasParkComponent_Template_select_change_14_listener","SharedDropdownGasParkComponent_option_17_Template","SharedDropdownGasParkComponent_div_18_Template","SharedDropdownGasParkComponent_Template_select_ngModelChange_23_listener","SharedDropdownGasParkComponent_Template_select_change_23_listener","SharedDropdownGasParkComponent_option_26_Template","SharedDropdownGasParkComponent_div_27_Template","SharedDropdownGasParkComponent_div_29_Template","park_r16","gas_r17","purpose_r18","entrytype_r19","bullet_r20","point_r21","category_r22","SharedDropdownPeComponent","peDropdownFormGroup","SharedDropdownPeComponent_Template","SharedDropdownPeComponent_Template_select_change_5_listener","SharedDropdownPeComponent_option_8_Template","SharedDropdownPeComponent_div_9_Template","SharedDropdownPeComponent_Template_select_change_14_listener","SharedDropdownPeComponent_option_17_Template","SharedDropdownPeComponent_div_18_Template","SharedDropdownPeComponent_option_26_Template","SharedDropdownPeComponent_div_27_Template","SharedDropdownPeComponent_option_35_Template","SharedDropdownPeComponent_div_36_Template","SharedDropdownPeComponent_Template_select_change_41_listener","SharedDropdownPeComponent_option_44_Template","SharedDropdownPeComponent_div_45_Template","SharedDropdownPeComponent_option_53_Template","SharedDropdownPeComponent_div_54_Template","SharedDropdownPeComponent_option_62_Template","SharedDropdownPeComponent_div_63_Template","SharedDropdownPeComponent_div_70_Template","SharedDropdownPeComponent_div_72_Template","tmp_6_0","tmp_8_0","tmp_14_0","DynamicTitleComponent","DynamicTitleComponent_Template","SharedHeaderComponent","SharedHeaderComponent_Template","notificationSelector","SharedLoadingSpinnerComponent","cdRef","detectChanges","SharedLoadingSpinnerComponent_Template","SharedLoadingSpinnerComponent_div_0_Template","group_r3","child_r19","NavbarComponent_li_11_div_3_li_8_ul_1_li_1_ng_container_1_Template","NavbarComponent_li_11_div_3_li_8_ul_1_li_1_ng_template_2_Template","_r22","NavbarComponent_li_11_div_3_li_8_ul_1_li_1_Template","item_r16","NavbarComponent_li_11_div_3_li_8_ul_1_Template","child_r30","NavbarComponent_li_11_div_3_li_16_ul_1_li_1_Template","NavbarComponent_li_11_div_3_li_16_ul_1_Template","child_r36","NavbarComponent_li_11_div_3_li_25_ul_1_li_1_Template","NavbarComponent_li_11_div_3_li_25_ul_1_Template","child_r42","NavbarComponent_li_11_div_3_li_33_ul_1_li_1_Template","item_r39","NavbarComponent_li_11_div_3_li_33_ul_1_Template","ctx_r47","child_r48","NavbarComponent_li_11_div_3_li_42_ul_1_li_1_Template","item_r45","NavbarComponent_li_11_div_3_li_42_ul_1_Template","ctx_r53","child_r54","NavbarComponent_li_11_div_3_li_50_ul_1_li_1_Template","item_r51","NavbarComponent_li_11_div_3_li_50_ul_1_Template","NavbarComponent_li_11_div_3_li_8_Template","NavbarComponent_li_11_div_3_li_16_Template","NavbarComponent_li_11_div_3_li_25_Template","NavbarComponent_li_11_div_3_li_33_Template","NavbarComponent_li_11_div_3_li_42_Template","NavbarComponent_li_11_div_3_li_50_Template","ctx_r66","child_r67","NavbarComponent_li_11_div_4_li_8_ul_1_li_1_Template","item_r64","NavbarComponent_li_11_div_4_li_8_ul_1_Template","ctx_r72","child_r73","NavbarComponent_li_11_div_4_li_16_ul_1_li_1_Template","item_r70","NavbarComponent_li_11_div_4_li_16_ul_1_Template","ctx_r78","child_r79","NavbarComponent_li_11_div_4_li_25_ul_1_li_1_Template","item_r76","NavbarComponent_li_11_div_4_li_25_ul_1_Template","ctx_r84","child_r85","NavbarComponent_li_11_div_4_li_32_ul_1_li_1_Template","item_r82","NavbarComponent_li_11_div_4_li_32_ul_1_Template","ctx_r90","child_r91","NavbarComponent_li_11_div_4_li_41_ul_1_li_1_Template","item_r88","NavbarComponent_li_11_div_4_li_41_ul_1_Template","ctx_r96","child_r97","NavbarComponent_li_11_div_4_li_49_ul_1_li_1_Template","item_r94","NavbarComponent_li_11_div_4_li_49_ul_1_Template","NavbarComponent_li_11_div_4_li_8_Template","NavbarComponent_li_11_div_4_li_16_Template","NavbarComponent_li_11_div_4_li_25_Template","NavbarComponent_li_11_div_4_li_32_Template","NavbarComponent_li_11_div_4_li_41_Template","NavbarComponent_li_11_div_4_li_49_Template","NavbarComponent_li_11_a_1_Template","NavbarComponent_li_11_a_2_Template","NavbarComponent_li_11_div_3_Template","NavbarComponent_li_11_div_4_Template","NavbarComponent_div_13_Template_div_click_0_listener","_r103","lang_r101","ctx_r102","selectLang","currentLang","child_r117","ctx_r120","isSubChildActive","NavbarComponent_nav_14_div_3_div_1_div_1_div_1_div_3_ng_container_3_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_1_div_3_ng_template_4_Template","_r119","NavbarComponent_nav_14_div_3_div_1_div_1_div_1_div_3_Template","item_r107","ctx_r124","child_r125","NavbarComponent_nav_14_div_3_div_1_div_1_div_2_div_3_Template","ctx_r127","child_r128","NavbarComponent_nav_14_div_3_div_1_div_1_div_3_div_3_Template","ctx_r130","child_r131","NavbarComponent_nav_14_div_3_div_1_div_1_div_4_div_3_Template","ctx_r133","child_r134","NavbarComponent_nav_14_div_3_div_1_div_1_div_5_div_3_Template","ctx_r138","child_r137","ctx_r139","NavbarComponent_nav_14_div_3_div_1_div_1_div_6_div_3_div_1_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_6_div_3_div_2_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_6_div_3_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_1_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_2_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_3_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_4_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_5_Template","NavbarComponent_nav_14_div_3_div_1_div_1_div_6_Template","ctx_r108","isSubFDSGPActive","isSubFDSGIActive","isSubFDFIELDActive","isSubFDLPGActive","isSubFDSO2EMISSIONSActive","group_r105","isSubFDKTLActive","ctx_r151","child_r152","NavbarComponent_nav_14_div_3_div_1_div_2_div_1_div_3_Template","ctx_r154","child_r155","NavbarComponent_nav_14_div_3_div_1_div_2_div_2_div_3_Template","ctx_r157","child_r158","NavbarComponent_nav_14_div_3_div_1_div_2_div_3_div_3_Template","ctx_r160","child_r161","NavbarComponent_nav_14_div_3_div_1_div_2_div_4_div_3_Template","ctx_r163","child_r164","NavbarComponent_nav_14_div_3_div_1_div_2_div_5_div_3_Template","ctx_r166","child_r167","NavbarComponent_nav_14_div_3_div_1_div_2_div_6_div_3_Template","NavbarComponent_nav_14_div_3_div_1_div_2_div_1_Template","NavbarComponent_nav_14_div_3_div_1_div_2_div_2_Template","NavbarComponent_nav_14_div_3_div_1_div_2_div_3_Template","NavbarComponent_nav_14_div_3_div_1_div_2_div_4_Template","NavbarComponent_nav_14_div_3_div_1_div_2_div_5_Template","NavbarComponent_nav_14_div_3_div_1_div_2_div_6_Template","ctx_r109","isSubFGDSGPActive","isSubFGDSGIActive","isSubFGDFIELDActive","isSubFGDLPGActive","isSubFGDInternalUsageActive","isSubFGDKTLActive","NavbarComponent_nav_14_div_3_div_1_div_1_Template","NavbarComponent_nav_14_div_3_div_1_div_2_Template","ctx_r106","isSubFGDActive","isSubFDActive","NavbarComponent_nav_14_div_3_div_1_Template","NavbarComponent_nav_14_div_3_Template","_i18nService","activeSubItem","selectedItem","currentRouteSub","updateSelectedItem","lang","selectNestedChild","child","currentRoute","startsWith","schild","tchild","isMapActive","groupName","url","childName","NavbarComponent_Template","NavbarComponent_li_11_Template","NavbarComponent_div_13_Template","NavbarComponent_nav_14_Template","SharedNotificationComponent","toastr","isFailure","success","timeOut","tapToDismiss","disableTimeOut","show","ToastrService","SharedNotificationComponent_Template","SaveDialogAction","Save","onSaveClick","SharedSaveConfirmationComponent_Template","SharedSaveConfirmationComponent_div_5_Template","SharedSaveConfirmationComponent_div_6_Template","SharedSaveConfirmationComponent_Template_button_click_8_listener","SharedSaveConfirmationComponent_Template_button_click_10_listener","SharedScrollToTopComponent","scrollToTop","scrollTo","top","behavior","onScroll","showButtonThreshold","shouldShow","scrollY","getElementById","style","hostBindings","SharedScrollToTopComponent_HostBindings","ɵɵresolveWindow","SharedScrollToTopComponent_Template_button_click_1_listener","ctx_r19","tchild_r20","SidebarComponent_div_4_div_2_div_1_div_1_div_1_div_1_div_1_li_4_Template","schild_r7","SidebarComponent_div_4_div_2_div_1_div_1_div_1_div_1_div_1_Template","child_r5","tchild_r27","SidebarComponent_div_4_div_2_div_1_div_1_div_1_div_2_div_1_li_4_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_1_div_2_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_1_div_2_Template","isSubFDKTLInputActive","isSubFDKTLDailyReportActive","isSubFDKTL2F205Active","isSubFDKTL23F205Active","ctx_r36","SidebarComponent_div_4_div_2_div_1_div_1_div_2_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_2_div_2_div_1_Template","ctx_r46","SidebarComponent_div_4_div_2_div_1_div_1_div_2_div_3_div_1_Template","ctx_r51","SidebarComponent_div_4_div_2_div_1_div_1_div_2_div_4_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_2_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_2_div_2_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_2_div_3_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_2_div_4_Template","isSubFDFIELDInputActive","isSubFDFIELDFieldCalcActive","isSubFDFIELDCCActive","isSubFDFIELDFinalReportActive","ctx_r58","tchild_r59","SidebarComponent_div_4_div_2_div_1_div_1_div_3_div_1_div_1_li_4_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_3_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_3_div_1_Template","isSubFDSGPInputActive","ctx_r67","tchild_r68","SidebarComponent_div_4_div_2_div_1_div_1_div_4_div_1_div_1_li_4_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_4_div_1_div_1_Template","ctx_r73","SidebarComponent_div_4_div_2_div_1_div_1_div_4_div_2_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_4_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_4_div_2_Template","isSubFDLPGInputActive","ctx_r80","tchild_r81","SidebarComponent_div_4_div_2_div_1_div_1_div_5_div_1_div_1_li_4_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_5_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_5_div_1_Template","isSubFDSO2EMISSIONSInputctive","ctx_r88","tchild_r89","SidebarComponent_div_4_div_2_div_1_div_1_div_6_div_1_div_1_li_4_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_6_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_6_div_1_Template","isSubFGDInternalUsageInputActive","ctx_r95","SidebarComponent_div_4_div_2_div_1_div_1_div_7_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_7_div_1_Template","isSubFGDInternalUsageCalculationsActive","ctx_r101","SidebarComponent_div_4_div_2_div_1_div_1_div_8_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_8_div_1_Template","isSubFGDInternalUsageMonthlyReportActive","SidebarComponent_div_4_div_2_div_1_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_2_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_3_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_4_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_5_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_6_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_7_Template","SidebarComponent_div_4_div_2_div_1_div_1_div_8_Template","SidebarComponent_div_4_div_2_div_1_div_1_Template","SidebarComponent_div_4_div_2_div_1_Template","SidebarComponent_div_4_div_2_Template","SidebarComponent","isSubFDKTLMonthlyReportActive","isSubFDKTLCCActive","isSubFDKTLSchemaActive","endsWith","SidebarComponent_Template","SidebarComponent_div_4_Template","SharedErrorPageComponent","SharedErrorPageComponent_Template","roles","SharedUnauthorizedPageComponent_Template","getUserGroupsSuccess","getUserGroupsFailure","retry","switchMap","AuthEffects","actions$","userClient","getUserGroups$","storedUser","parseUser","userGroups","getCurrentUserGroups","getUserGroupsSuccess$","setItem","stringify","parsedUser","myUserGroups","UserClient","AuthReducer","authUserGroups","getChartDataSuccess","getChartDataFailure","getFlowMeterChartDataSuccess","getFlowMeterChartDataFailure","chartJsActions","ChartJsEffects","so2Client","loadChartData","getFlowmeterGraphs","getFlowmeterCalculationChart","getFlowmeterCalculationData","SO2Client","chartJsReducer","chartTitleSelector","chartjs","chartDataXLabelSelector","toISOString","chartDataYLabelSelector","ListProjectedData","ListProjectedDataSuccess","ListProjectedDataFailure","AddProjectedData","AddProjectedDataSuccess","AddProjectedDataFailure","DeleteProjectedData","DeleteProjectedDataSuccess","DeleteProjectedDataFailure","ProjectedDataActions","ProjectedDataEffects","addProjectedData","inputProjectedData","listProjectedData","getProjectedData","pageNumber","pageSize","deleteProjectedData","ProjectedDataReducer","getSO2EmissionsFlowmeterGraph","getSO2EmissionsFlowmeterGraphSuccess","getSO2EmissionsFlowmeterGraphFailure","SO2ChartsEffects","so2EmissionFlowmeterGraph","getFlowmeterGraph","plant","areaType","so2ChartsActions","SO2ChartsReducer","ListSO2EmissionsRecalculation","ListSO2EmissionsRecalculationSuccess","ListSO2EmissionsRecalculationFailure","AddSO2EmissionsRecalculation","AddSO2EmissionsRecalculationSuccess","AddSO2EmissionsRecalculationFailure","DeleteSO2EmissionsRecalculation","DeleteSO2EmissionsRecalculationSuccess","DeleteSO2EmissionsRecalculationFailure","SO2EmissionsRecalculationActions","SO2EmissionsActions","SO2ChartsActions","SO2EmissionsRecalculationEffects","listRecalculationSO2Emissions","getSO2RecalculationData","train","recalculationSO2Emissions","recalculation","area","plantType","ListSO2Emissions","deleteRecalculationSO2Emissions","deleteSO2Recalculation","SO2EmissionsRecalculationReducer","ListSO2EmissionsSuccess","ListSO2EmissionsFailure","SO2EmissionsEdit","SO2EmissionsEditSuccess","SO2EmissionsEditFailure","SO2EmissionsEffects","listSO2Emissions","editSO2Emissions","SO2EmissionsReducer","AddAnalyst","AddAnalystSuccess","AddAnalystFailure","ListAnalyst","ListAnalystSuccess","ListAnalystFailure","ForAnalystData","ForAnalystDataSuccess","ForAnalystDataFailure","EditAnalyst","EditAnalystSuccess","EditAnalystFailure","DeleteAnalyst","DeleteAnalystSuccess","DeleteAnalystFailure","analystActions","AnalystEffects","addAnalyst$","addLPGAnalystInput","listAnalyst","monthlyAnalystRecords","forAnalyst","dataForAnalyst","editAnalyst$","editLPGAnalystInput","deleteAnalyst$","deleteLPGAnalystInput","AnalystAction","LPGAnalystInputDTO","record","records","report","AnalystReducer","LPGApproveByChefSuccess","LPGApproveByChefFailure","LPGApproveStatusSuccess","LPGApproveStatusFailure","mergeMap","ApproveActions","ApproveEffects","approveByChef$","approveByChef","fileResponse","approveByChefStatus$","latestApprove","ApproveReducer","approve","GetCCDataSuccess","GetCCDataFailure","CCAction","CCEffects","getCCData","getChemicalCompositions","CCReducer","FlaringReportDataSuccess","FlaringReportDataFailure","flaringReportAction","FlaringReportEffects","fuelGasFlaringData","getFlaringReport","FuelGasFlaringAction","FlaringReportReducer","flaringReport","sorted","newItems","sort","a","b","order","getCalculationSuccess","getCalculationFailure","LPGFlowmeterCalculationInputAddSuccess","LPGFlowmeterCalculationInputAddFailure","PEList","PEListSuccess","PEListFailure","FlowMeterCalculationAction","PEAction","FlowmeterCalculationEffects","addFlowmeterCalculationInput","addLPGPEInput","flowmeterCalculationActions","flowmeterCalculationReducer","getFlowmeterCalculationState","flowmeterCalc","FuelGasFlaringDataSuccess","FuelGasFlaringDataFailure","EditFuelGasFlaringDataSuccess","EditFuelGasFlaringDataFailure","fuelGasFlaringAction","fuelGasFlaringDefaultActions","FuelGasFlaringEffects","getFuelGasFlaring","editFuelGasFlaringData","addPEMonthlyInput","FuelGasFlaringReducer","LPGDataSuccess","LPGDataFailure","lpgDataAction","LPGDataEffects","getLPGData","LPGDataReducer","lpgData","forAnalysts","bulletsEntry","ListOperator","ListOperatorSuccess","ListOperatorFailure","AddOperator","AddOperatorSuccess","AddOperatorFailure","EditOperatorSuccess","EditOperatorFailure","DeleteOperator","DeleteOperatorSuccess","DeleteOperatorFailure","OperatorAction","OperatorEffects","listOperator","monthlyOperatorRecords","addOperator","addLPGOperatorInput","editOperator","editLPGOperatorInput","deleteOperator","deleteLPGOperatorInput","OperatorReducer","PEAdd","PEAddSuccess","PEAddFailure","PEEdit","PEEditSuccess","PEEditFailure","PEDelete","PEDeleteSuccess","PEDeleteFailure","PEEffects","listPE","monthlyPERecords","addPE","editPE","editLPGPEInput","deletePE","deleteLPGPEInput","PEReducer","ListTargetPermit","ListTargetPermitSuccess","ListTargetPermitFailure","AddTargetPermit","AddTargetPermitSuccess","AddTargetPermitFailure","TargetPermitAction","TargetPermitEffects","listTargetPermit","getTargetPermitInputs","addTargetPermit","addTargetPermitInput","TargetPermitReducer","showNotificationSuccess","showNotificationFailure","showCustomNotification","clearNotification","operatorActions","peActions","chartActions","ccActions","fuelGasFlaringActions","flaringReportActions","lpgDataActions","projectedDataActions","so2EmissionsActions","so2RecalculationActions","TargetPermitActions","approveActions","FlowmeterCalcActions","SgiActions","InternalUsageActions","KTLFDFlaringActions","KTLFDDailyReportActions","NotificationEffects","loadingEffect$","stopLoadingEffect$","NotificationReducer","notification","notify","StoreModule","EffectsModule","StoreDevtoolsModule","processEngineer","analyst","operator","projectedData","so2Emissions","so2EmissionsRecalculation","so2Charts","targetPermit","sgpFgdFuelGas","ktlFgdFuelGas","ktlFDInput","sgpFDInput","ktlFDDailyReport","sgpFgdGUR","ktlFDF205","instrument","StoreRootModule","EffectsRootModule","_observableMergeMap","_observableCatch","Observable","throwError","_observableThrow","_observableOf","InjectionToken","HttpHeaders","HttpResponse","HttpResponseBase","baseUrl","jsonParseReviver","getPurgePilotEntries","url_","Error","encodeURIComponent","options_","observe","responseType","headers","request","response_","processGetPurgePilotEntries","e","response","responseBlob","_headers","blobToText","_responseText","result200","resultData200","isArray","PurgePilotEntriesDTO","fromJS","throwException","getRecordTablesData","processGetRecordTablesData","RecordTablesDTO","processFlaringReport","contentDisposition","fileNameMatch","decodeURIComponent","gasBalanceReport","processGasBalanceReport","tGGSValues","processTGGSValues","getTotalVolumeMass","processGetTotalVolumeMass","fieldTotals","processFieldTotals","FieldTotal","getLatestUserAction","actionType","processGetLatestUserAction","finalReportGasBalance","processFinalReportGasBalance","finalReportFlaringReport","field","processFinalReportFlaringReport","fieldPurgePilots","processFieldPurgePilots","setPurgePilotDays","fdInput","content_","processSetPurgePilotDays","confirmPurgePilotDays","processConfirmPurgePilotDays","addFieldRecord","fdInputDTO","processAddFieldRecord","pressureTemperatureGraph","processPressureTemperatureGraph","PressureTemperatureGraphDTO","addFieldRecord2","processAddFieldRecord2","getOperatorTableNabor","processGetOperatorTableNabor","RecordOperatorDTO","getOperatorTableSzhiganiye","processGetOperatorTableSzhiganiye","getOperatorPurgePilotSwitch","processGetOperatorPurgePilotSwitch","changeFieldRecord","processChangeFieldRecord","deleteFieldRecord","userName","processDeleteFieldRecord","pBFCC","timestamp","isPBF","processPBFCC","getPBFCC","processGetPBFCC","confirmCalc","processConfirmCalc","setMonthlyLeaksToNow","processSetMonthlyLeaksToNow","processApproveByChef","chemicalCompounds","processChemicalCompounds","setFieldToDryFlaredPE","gasBlowdownDTO","processSetFieldToDryFlaredPE","setFieldToDryFlared","processSetFieldToDryFlared","setBledFully","processSetBledFully","operatorChangeFieldRecord","processOperatorChangeFieldRecord","operatorDeleteFieldRecord","processOperatorDeleteFieldRecord","operatorChangePurgePilotRecord","processOperatorChangePurgePilotRecord","addFieldPermitTargetInput","fieldPermitTargetInputDTO","processAddFieldPermitTargetInput","editFieldPermitTargetInput","permitTargetInputEditDTO","processEditFieldPermitTargetInput","deleteFieldPermitTargetInput","processDeleteFieldPermitTargetInput","addPerformanceMetricsPermitTargetInput","performanceMetricsPermitTargetInputDTO","processAddPerformanceMetricsPermitTargetInput","deletePerformanceMetricsPermitTargetInput","processDeletePerformanceMetricsPermitTargetInput","processExportDryGas","exportReservoirGas","processExportReservoirGas","mSLocationsList","processMSLocationsList","FacilityLocationListDTO","exportPurgePilot","processExportPurgePilot","exportFuelGas","processExportFuelGas","CommonClient","getDatesFrom2Years","processGetDatesFrom2Years","getCurrentUser","processGetCurrentUser","IntUsClient","getHeatersRecords","processGetHeatersRecords","HeatersRecordsDTO","getBoilersRecords","processGetBoilersRecords","BoilerRecordsDTO","processGetMetersRecords","MetersRecordsDTO","processGetTotalTableRecords","TotalTableDTO","processGetIBMOARecords","IBMOARecordsDTO","getMonthlyReport","processGetMonthlyReport","MonthlyReportDTO","getYearlyReport","processGetYearlyReport","addHeatersRecord","recordDTO","processAddHeatersRecord","editHeatersRecord","processEditHeatersRecord","addBoilersRecord","processAddBoilersRecord","editBoilersRecord","processEditBoilersRecord","updateMotohoursBoilersRecord","processUpdateMotohoursBoilersRecord","updateMotohoursHeatersRecord","processUpdateMotohoursHeatersRecord","addMetersRecord","processAddMetersRecord","editMetersRecord","processEditMetersRecord","addIBMOARecord","processAddIBMOARecord","addReportComments","processAddReportComments","processApproveMonthlyReport","getLatestApproveMonthly","processGetLatestApproveMonthly","testSynapseConnection","processTestSynapseConnection","refreshStreams","isDelta","processRefreshStreams","hardRefreshAFToSQL","processHardRefreshAFToSQL","processGetMonthlyRecords","CalculatedStreamDTO","processIsDailyRecordsExist","processGetDailyRecords","processAddManualRecord","addMonthlyManualRecord","processAddMonthlyManualRecord","processOverrideManualRecord","processDeleteOverrideRecord","exportKTLFGDDailyReports","processExportKTLFGDDailyReports","exportKTLFGDMonthlyReports","processExportKTLFGDMonthlyReports","KTLFGDECClient","compareStreamsAFandSQL","processCompareStreamsAFandSQL","setLeaksAndParents","processSetLeaksAndParents","confirmDailyReport","processConfirmDailyReport","confirmMonthlyReport","processConfirmMonthlyReport","processGenerateReports","switchStream","switchFrom","switchTo","processSwitchStream","batchSwitchStream","dto","processBatchSwitchStream","batchSwitchStreamSGP","processBatchSwitchStreamSGP","getSGPFlareSwitcherHistory","isSwitchable","processGetSGPFlareSwitcherHistory","PagedListOfGetFlareSwitcherDTO","getAllNonSwitchableSGPStreams","processGetAllNonSwitchableSGPStreams","GetFlareSwitcherDTO","facilityAndUnitMapping","processFacilityAndUnitMapping","GetFacilityAndUnitMappingDTO","switchedStreams","processSwitchedStreams","getFlareSwitcherHistory","facility","processGetFlareSwitcherHistory","bypass","processBypass","editManualRecord","processEditManualRecord","commentsDailyReport","processCommentsDailyReport","deleteManualRecord","processDeleteManualRecord","processGetDailyReport","starttime","endtime","processGetF205CalcDetails","F205TotalDTO","processGetReportDaily","DailyReportDTO","getInputHistory","endttime","flareName","processGetInputHistory","PagedListOfInputHistoryDTO","processGetChemicalCompoundsID","ChemicalCompoundsDTO","unitName","ktlTrain","processGetChemicalCompoundsEquipment","ChemicalCompoundsEquipmentDTO","addChemicalCompoundsEquipment","processAddChemicalCompoundsEquipment","ValueTupleOfIntegerAndString","editChemicalCompoundsEquipment","processEditChemicalCompoundsEquipment","deleteChemicalCompoundsEquipment","processDeleteChemicalCompoundsEquipment","getGasBalance","processGetGasBalance","KTLSGPGasBalanceDTO","getChemicalCompounds","processGetChemicalCompounds","processGetGUR","GetGURDTO","input","processPostGUR","addKTLSGPPermitTargetInput","kTLSGPPermitTargetInputDTO","processAddKTLSGPPermitTargetInput","editKTLSGPPermitTargetInput","processEditKTLSGPPermitTargetInput","deleteAddKTLSGPPermitTargetInput","processDeleteAddKTLSGPPermitTargetInput","monthlyReport","processMonthlyReport","setDefaltMW","processSetDefaltMW","getAllStreamMW","processGetAllStreamMW","PagedListOfKTLSGPStreamMWDTO","processGetAllStreams","KTLSGPStreamDTO","processGetDailyReportStreamDetails","CalculatedStreamInputRecordDTO","monthlyReport2","processMonthlyReport2","getKTLOperatorInput","processGetKTLOperatorInput","PagedListOfGetKTLOperatorDTO","createKTLOperatorInput","createKTLOperatorDTO","processCreateKTLOperatorInput","editKTLOperatorInput","ktlOperatorDTOInputEditDTO","processEditKTLOperatorInput","deleteKTLOperatorInput","processDeleteKTLOperatorInput","getSGPOperatorInput","processGetSGPOperatorInput","PagedListOfGetSGPOperatorDTO","createSGPOperatorInput","createSGPOperatorDTO","processCreateSGPOperatorInput","deleteSGPOperatorInput","processDeleteSGPOperatorInput","getDiagnosticianScreenHistory","unitType","valveName","processGetDiagnosticianScreenHistory","PagedListOfGetDiagnosticianScreenHistoryDTO","getDiagnosticianScreenInputs","processGetDiagnosticianScreenInputs","GetDiagnosticianScreenInputDTO","createUpdateDiagnosticianScreenInput","createDiagnosticianInputDTO","processCreateUpdateDiagnosticianScreenInput","getDiagnosticianRelation","processGetDiagnosticianRelation","DiagnosticianRelationFacilityDTO","getLeakageScreenHistory","dateTime","processGetLeakageScreenHistory","LeakageScreenDTO","getLeakageScreenInput","processGetLeakageScreenInput","createUpdateLeakageInput","leakageScreenDTOs","processCreateUpdateLeakageInput","KTLSGPECClient","processMonthlyOperatorRecords","lPGOperatorInputDTO","processAddLPGOperatorInput","lPGOperatorInputEditDTO","processEditLPGOperatorInput","processDeleteLPGOperatorInput","processMonthlyPERecords","processAddPEMonthlyInput","lPGPEInputDTO","processAddLPGPEInput","addLPGFlowmeterCalculationInput","processAddLPGFlowmeterCalculationInput","processGetCalculation","lPGPEInputEditDTO","processEditLPGPEInput","processDeleteLPGPEInput","processMonthlyAnalystRecords","lPGAnalystInputDTO","processAddLPGAnalystInput","lPGAnalystInputEditDTO","processEditLPGAnalystInput","processDeleteLPGAnalystInput","processDataForAnalyst","LPGDataForAnalystDTO","processLatestApprove","processGetFlowmeterGraphs","LPGFlowmeterGraphDTO","processGetFuelGasFlaring","LPGFuelGasFlaringReportDTO","processGetFuelGasFlaringDefault","processGetChemicalCompositions","ChemicalCompoundRecord","processExportFlaringReports","hardRefresh","processHardRefresh","processGetLPGData","LPGDataDTO","processGetFlaringReport","LPGFlaringReportDTO","processGetTargetPermitInputs","LPGTargetPermitInputDTO","processAddTargetPermitInput","days","processGetFlowmeterCalculationData","processExportAnalystReports","processExportLPGDataReports","processExportFuelGasFlaringReports","processExportChemicalCompositionReports","SGIClient","sGIInputRecordDTO","addEditOverride","processAddEditOverride","deleteEditOverride","processDeleteEditOverride","addBlowdownRecord","processAddBlowdownRecord","getBlowdownRecords","to","processGetBlowdownRecords","SGIBlowdownInputRecordDTO","deleteBlowdownRecord","processDeleteBlowdownRecord","eCHardRefreshAFToSQL","processECHardRefreshAFToSQL","processApprove","getLatestApprove","processGetLatestApprove","addSGIPermitTargetInput","sGIPermitTargetInputDTO","processAddSGIPermitTargetInput","getSGIPermitTargetInput","processGetSGIPermitTargetInput","SGIPermitTargetInputDTO","SGPFGDCalculatedDTO","processExportSGPFGDDailyReports","processExportSGPFGDMonthlyReports","SGPFGDECClient","KTLSGPSO2CalculatedReportDTO","processGetProjectedData","PagedListOfKTLSGPSO2ProjectedDataInputDTO","processInputProjectedData","processDeleteProjectedData","streamType","processGetFlowmeterGraph","SO2FlowmeterGraphDTO","processRecalculation","processGetSO2RecalculationData","KTLSGPSO2RecalculationRecordDTO","processDeleteSO2Recalculation","processGetCurrentUserGroups","property","hasOwnProperty","_data","logged","mwTengiz","mwKorolev","toJSON","mrmVolumes","RecordVolumeDto","mrmMasses","RecordMassDto","referTo","operatorInput","isConfirmed","findAutoInputs","usedNitrogen","p_With_Nitrogen_Initial","p_With_Nitrogen_Final","p_Nitrogen_Initial","p_Nitrogen_Final","diameter","pipeWall","lineVolume","p_Initial","p_Initial_Timestamp","p_Final","p_Final_Timestamp","t_Initial","t_Initial_Timestamp","t_Final","t_Final_Timestamp","z_Initial","z_Final","k1","k2","isBledFully","createdBy","FieldArea","tank1","tank2","tank3","tank4","FieldRecordManualType","FieldTotalType","ActionTypeEnumDTO","PurgePilotDTO","flareStack","pilotFlowrate","purgeFlowrate","totalMassPilot","totalVolumePilot","totalMassPurge","totalVolumePurge","pilotDays1","pilotDays2","pilotDays3","purgeDays1","purgeDays2","purgeDays3","pilotFlowingHours","purgeFlowingHours","RecordDTO","volumes","masses","properties","isOverwriteVolume","PressureTemperatureGraphValuesDTO","timespan","pressure","temperature","p_BledFully_Initial","p_BledFully_Final","bledDate","RecordBledFullyDTO","blowdownRecordId","OperatorRecordDTO","FieldPermitTargetInputDTO","msInput","MSInputDTO","mrmInput","MRMInputDTO","inputType","GasType","AreaType","mS15","mS09","mS14","mS19","mS08","mS12","mS05","mS20","mS17","cfm","mS21","mS24","mS26","mS31","mS33","mS35","mS52","mS53","mS54","mS55","kms","hpFlare","lpFlare","evergreenBurner","hpFlareBackUp","lpFlareBackUp","evergreenBurnerBackUp","safetyFlare","PermitTargetInputEditDTO","PerformanceMetricsPermitTargetInputDTO","performanceMetricsMonths","PerformanceMetricsMonthsInputDTO","jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec","msList","MSDTO","locations","LocationDTO","equipment","motohours","capacityNominal","correlationCoeffficient","capacityWorking","energyProduced","energyProducedMJ","energyProducedKcal","lowestHeatCombustion","volumeGas","volumeGasEfficiency","volumeGas0CEfficiency","efficiency","isRecordCreated","HeatersEquipment","BoilerEquipment","numberStartOfPeriod","numberEndOfPeriod","isTransitionWinter","numberTransitionPeriod","dateTransitionPeriod","consumption","additionalValue","outputValue20C","outputValue0C","MetersEquipment","total20C","total0C","difference20C","difference0C","differencePerc20C","differencePerc0C","monthsRecords","volumeGasYear","motoHoursYear","IBMOAMonthsRows","dateMonth","daysOfMonth","volumeGas20C","volumeGas0C","rpnReservoirPark20","rpnReservoirPark0","rpnReservoirParkComment","korolev20","korolev0","korolevComment","gteS14420","gteS1440","gteS144Comment","prombaza20","prombaza0","prombazaComment","promTCO20","promTCO0","promTCComment","posShanyrak20","posShanyrak0","posShanyrakComment","posOrken20","posOrken0","posOrkenComment","kotelnayaPromBazi20","kotelnayaPromBazi0","kotelnayaPromBaziComment","kotelnayaIBMOA20","kotelnayaIBMOA0","kotelnayaIBMOAComment","estakada20","estakada0","estakadaComment","tovarniPark20","tovarniPark0","tovarniParkComment","bazaBureniya20","bazaBureniya0","bazaBureniyaComment","betonnyZavod20","betonnyZavod0","betonnyZavodComment","MonthlyReportCommentsDTO","rowType","MonthlyReportRowType","isApproved","KTLFGDStreamType","DailyReportInputRecordDTO","crudeProductionMass","propaneProductionMass","butaneProductionMass","kulsaryCustodyTransferVolumeKsmCube","sulphurMass","fuelGasToCNS","y1504A","y1504B","MonthlyInputRecordDTO","additionalCompanyUse","customerUse","fuelGasToKTLandOldBoilerHouse","dryGasToU800DMCTr5","KTLFGDOverrideRecordDTO","ValueType","Plant","FlareSwitcherDTO","UnitList","KTLTrains","SGPFlareSwitcherDTO","SGPFlareType","totalCount","totalPages","hasPreviousPage","hasNextPage","loggedBy","unitFlareMap","UnitAndFlareMappingDTO","ChemicalCompounds","ChemicalCompoundKTLSGP","c2H5SSC2H5","c3H7SSC3H7","cH3SSCH3","c4H9SSC4H9","InputRecordDTO","streamid","comments","isUsingCC","isPermitForm","permitInput","editType","ccType","InputRecordType","f205_1","F205DTO","f205_2","f205_3","f205_4","f205_5","stableDeltaL","unstableDeltaL","stableCalc","F205CalcDTO","unstableCalc","totalCalc","F205TotalCalcDTO","stableCount","unstableCount","F205UnstableDTO","intermediateVals","lDelta","pAverage","tAverage","insideDiameter","tangent","l1minusL2","l2minusBottomLine","heightOfLiquid","cylindricalVolume","numsOpenings","headVolume","volumeLiquid","totalLiqVolume","liquidN","liquidFromF205","massDensity","molarFlow","gasMolarFlow","gasN","volumeOfFlaredGaskNm3","molWeightOfFlaredGas","massOfFlaredGasTon","ReportDTO","childStreams","streamName","function","groupType","onStreamTime","inputCategory","inputComment","inputReason","bypassable","bypassed","InputHistoryDTO","CCBase","CCBaseKTLSGP","active","stream","sourceComposition","blowingReasonType","collectorType","trains","equipmentCategory","BlowingReasonType","CollectorType","TrainList","gasBalance","rateTotal","difference","differencePct","gur","hrsgOpc","hrsgTpc","pUpc","gtOpc","gtTpc","GURDTO","measuredGas","measuredGas21","gtoVolume","gtTwVolume","gtoRuntime","gttRuntime","hrsgoVolume","hrsgtVolume","hrsgoRuntime","hrsgtRuntime","buranBoilerVolume","puVolume","puRuntime","fGtoPPKTL","fGtoPPSGP","pilotVolume","purgedVolume","fGtoPP","ktlfGtoPP","GURInputRecordDTO","runtime","isdelete","GURInputRecordType","KTLSGPPermitTargetInputDTO","targetPermitType","inputValue","PermitTargetInput","PermitTargetInputValue","KTLSGPStreamMWDTO","limsType","ccId","defaultMW","switchable","KTLSGPStreamInputType","KTLSGPStreamGroupType","KTLSGPLIMSType","GetKTLOperatorDTO","BaseKTLOperatorDTO","environmentType","valvePosition","liquidType","startPressureValue","endPressureValue","startTemperatureValue","endTemperatureValue","multiplicity","notes","KTLOperatorDTO","chemicalCompoundsEquipmentId","chemicalCompoundsEquipmentName","customName","EnvironmentType","ValvePosition","OperatorGasType","KTLSGPLiquidType","CreateKTLOperatorDTO","GetSGPOperatorDTO","SGPOperatorDTO","multiplicityType","equipmentAndLineName","SGPCollectorType","SGPGasType","SGPLiquidType","MultiplicityType","GetDiagnosticianScreenHistoryDTO","GetDiagnosticianHistoryChildDTO","inletSize","isGateValve","isBallValve","pressureDifference","signalLevel","coefficient","leakLMin","leakSCMH","flowRate","diagnosticianConstantId","DiagnosticianScreenDTO","manualInletSize","manualIsGateValve","manualIsBallValve","CreateDiagnosticianInputDTO","units","faciltiy","DiagnosticianRelationUnitDTO","valve","DiagnosticianRelationValveDTO","diagnosticianValveName","updatedDate","diagnosticianInputId","isManualValve","isMatchWithDiagnostician","KTLSGPGasType","isManual","oldPropane","oldButane","newPropane","newButane","LPGFlowmeterValuesDTO","LPGFlowmeterGraphTypes","LPGMonthlyGasFlaringReportDTO","LPGFuelGasFlaringDTO","LPGCalculatedStreamDTO","LPGDataBulletsEntryDTO","elementsType","LPGFlaringReportItemDTO","LPGFlaringReportElementsType","limit","january","february","march","april","june","july","august","september","october","november","december","SGIInputRecordDTO","sgiInputRecordWells","sgiGasCompositions","ignoreFI26001","eGlycolFiredHeaterInService","ejectorInService","weeklyWasteOilDrainedToF1054","useComprAndSGTotalizerTags","pV415HoursToFlare","pV415HoursToFeed","leakageSour","leakageFuel","overallBalanceBasis","SGIInputRecordWellDTO","SGIGasCompositionDTO","OverallBalanceBasis","wellInService","useManualFlowCalc","useTotalizerTags","c2H7SH","nC4H9SH","SGIGasCompositionType","SGIEditOverrideDTO","ValueType2","sgiGasComposition","SGIGasComposition","sgiBlowdownInputRecord","SGIBlowdownInputRecord","sgiInputRecord","SGIInputRecord","sgiBlowdownInputRecordId","sgiInputRecordId","SGIInputRecordWell","sgiPermitTargetMonthVolumes","SGIPermitTargetMonthVolumeDTO","SGIPermitTargetInputGasType","SGIPermitTargetInputType","SGPFGDInputRecordDTO","propaneToExport","butaneToExport","producedDryGas","salesGasToExport","salesGasToSGI","sourGasToSGI","useMeter","sgpSalesGasToPowerPlant","ktlSalesGasToPowerPlant","crudeToStorage","crudeToCRL","directCrudeExportToCPC","propaneToExportNum","butaneToExportNum","sulfur","salesGasFQI07018","UseMeterSGPFGD","SGPFGDOverrideRecordDTO","ValueType3","totalVolumeSGP","totalVolumeKTLTrain1","totalVolumeKTLTrain2","totalVolumeKTLTrain3","totalVolumeKTLTrain4","inputCommentSGP","inputCommentKTLTrain1","inputCommentKTLTrain2","inputCommentKTLTrain3","inputCommentKTLTrain4","updatedKTL","updatedSGP","isBadKTLTrain1","isBadKTLTrain2","isBadKTLTrain3","isBadKTLTrain4","isBadSGP","KTLSGPSO2RecordDTO","KTLSGPSO2ProjectedDataInputDTO","ktlTrains","SO2FlowmeterValuesDTO","SO2StreamGroupChildrenTypes","method","ratioStartTime","ratioEndTime","margin","ratio41","ratio38","ratio26","ratio0","slopeInc","interceptInc","slopeDec","interceptDec","DataRecoveryType","RecoveryMethodType","ApiException","isApiException","observer","complete","reader","FileReader","onload","target","readAsText","production","envName","cal","autoSignIn","popupForLogin","instance","tenantId","graphScopes","clientId","oidcScopes","redirectUri","cacheLocation","__NgCli_bootstrap_1","platformBrowser","bootstrapModule","catch"],"sourceRoot":"webpack:///","x_google_ignoreList":[179]}