{"version":3,"sources":["./$_lazy_route_resource lazy namespace object","./src/app/auth/login/login.component.html","./src/app/body/body.component.html","./src/app/body/mobile.body.component.html","./src/app/header/header.component.html","./src/app/home/home.component.html","./src/app/home/mobile.home.component.html","./src/app/navigationMenu/mobile.navigation.menu.component.html","./src/app/navigationMenu/navigation.menu.component.html","./src/app/orderGrid/order.grid.component.html","./src/app/patientDetailsScreen/orderDetails/mobile.order.details.component.html","./src/app/patientDetailsScreen/orderDetails/order.details.component.html","./src/app/patientDetailsScreen/orderList/mobile.order.list.component.html","./src/app/patientDetailsScreen/orderList/order.list.component.html","./src/app/patientDetailsScreen/patient.details.component.html","./src/app/patientDetailsScreen/patientInfo/mobile.patient.info.component.html","./src/app/patientDetailsScreen/patientInfo/patient.info.component.html","./src/app/popups/orderPopup/order.popup.component.html","./src/app/popups/patientPopup/patient.popup.component.html","./src/app/profile/profile.component.html","./src/app/searchBar/mobile.search.bar.component.html","./src/app/searchBar/search.bar.component.html","./src/app/_helpers/object.helper.service.ts","./src/app/_models/grid.order.search.ts","./src/app/_models/grid.page.and.sort.settings.ts","./src/app/_models/grid.patient.search.ts","./src/app/_models/grid.request.ts","./src/app/_services/order.controller.service.ts","./src/app/_services/patient.controller.service.ts","./src/app/_services/report.controller.service.ts","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/app.routing.module.ts","./src/app/auth/auth.guard.ts","./src/app/auth/auth.interceptor.ts","./src/app/auth/auth.module.ts","./src/app/auth/login/login.component.ts","./src/app/auth/login/login.service.ts","./src/app/body/body.component.ts","./src/app/body/body.service.ts","./src/app/body/mobile.body.component.ts","./src/app/common/server.error.handler.ts","./src/app/header/header.component.ts","./src/app/header/index.ts","./src/app/home/home.component.ts","./src/app/home/mobile.home.component.ts","./src/app/navigationMenu/mobile.navigation.menu.component.ts","./src/app/navigationMenu/navigation.menu.component.ts","./src/app/orderGrid/order.grid.column.helper.service.ts","./src/app/orderGrid/order.grid.component.ts","./src/app/patientDetailsScreen/orderDetails/mobile.order.details.component.ts","./src/app/patientDetailsScreen/orderDetails/order.details.component.ts","./src/app/patientDetailsScreen/orderList/mobile.order.list.component.ts","./src/app/patientDetailsScreen/orderList/order.list.component.ts","./src/app/patientDetailsScreen/patient.details.component.ts","./src/app/patientDetailsScreen/patient.details.resolver.ts","./src/app/patientDetailsScreen/patientInfo/mobile.patient.info.component.ts","./src/app/patientDetailsScreen/patientInfo/patient.info.component.ts","./src/app/popups/orderPopup/index.ts","./src/app/popups/orderPopup/order.popup.component.ts","./src/app/popups/orderPopup/order.popup.service.ts","./src/app/popups/patientPopup/index.ts","./src/app/popups/patientPopup/patient.popup.component.ts","./src/app/popups/patientPopup/patient.popup.service.ts","./src/app/profile/index.ts","./src/app/profile/profile.component.ts","./src/app/profile/profile.service.ts","./src/app/searchBar/index.ts","./src/app/searchBar/mobile.search.bar.component.ts","./src/app/searchBar/search.bar.component.ts","./src/app/searchBar/search.bar.service.ts","./src/environments/application.state.service.ts","./src/environments/environment.ts","./src/main.ts"],"names":[],"mappings":"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","file":"main-es5.js","sourcesContent":["function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./$$_lazy_route_resource lazy recursive\";","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
Username is required.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
Password is required.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\"","module.exports = \"
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n
>\\r\\n
\\r\\n \\r\\n
\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n \\r\\n
\"","module.exports = \"
\\r\\n \\r\\n
\"","module.exports = \"
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\"","module.exports = \"
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\"","module.exports = \"\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
Assisted by: {{currentOrder.Assistant}}
\\r\\n
Radiologist(s): {{currentOrder.Radiologist}}
\\r\\n
Additional Referrers: {{currentOrder.AllReferrerMembers}}
\\r\\n
Referrer: {{currentOrder.MainReferrer}}
\\r\\n
Exam Type: {{currentOrder.ExamTypeDescription}}
\\r\\n
\\r\\n
Body Part: {{currentOrder.BodyPartName}}
\\r\\n
Side: {{currentOrder.SideName}}
\\r\\n
\\r\\n
Contrast: {{currentOrder.ContrastName}}
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n
\\r\\n
Assisted by: {{currentOrder.Assistant}}
\\r\\n
Radiologist(s): {{currentOrder.Radiologist}}
\\r\\n
Additional Referrers: {{currentOrder.AllReferrerMembers}}
\\r\\n
Referrer: {{currentOrder.MainReferrer}}
\\r\\n
Exam Type: {{currentOrder.ExamTypeDescription}}
\\r\\n
\\r\\n
Body Part: {{currentOrder.BodyPartName}}
\\r\\n
Side: {{currentOrder.SideName}}
\\r\\n
\\r\\n
Contrast: {{currentOrder.ContrastName}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n \\r\\n\\r\\n
\\r\\n
{{item.AccessionNumber}}
\\r\\n
{{item.ExamTypeDescription}}
\\r\\n
{{convertDate(item.DateOfService)}}
\\r\\n
{{item.BodyPartName}}
\\r\\n
\\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n \\r\\n \\r\\n
\\r\\n
{{item.AccessionNumber}}
\\r\\n
{{item.ExamTypeDescription}}
\\r\\n
{{convertDate(item.DateOfService)}}
\\r\\n
{{item.BodyPartName}}
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\"","module.exports = \"\"","module.exports = \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Patient
{{patient.LastName}}, {{patient.FirstName}}\\r\\n
\\r\\n
\\r\\n
Born
{{convertDate(patient.Birthday)}}\\r\\n
\\r\\n
\\r\\n
Current age
{{patientAge}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Sex
{{gender[patient.Gender]}}\\r\\n
\\r\\n
\\r\\n
Medical record number
{{patient.MedicalRecordNumber}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\"","module.exports = \"
\\r\\n
Patient
{{patient.LastName}}, {{patient.FirstName}}
\\r\\n
Born
{{convertDate(patient.Birthday)}}
\\r\\n
Current age
{{patientAge}}
\\r\\n
Sex
{{gender[patient.Gender]}}
\\r\\n
Medical record number
{{patient.MedicalRecordNumber}}
\\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\"","module.exports = \"\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\"","module.exports = \"\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","module.exports = \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ObjectHelperService {\r\n\r\n isObjectEmpty(objectToCheck) {\r\n for (var prop in objectToCheck) {\r\n if (objectToCheck.hasOwnProperty(prop)) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n}","import { IDeserializable } from './deserializable';\r\n\r\nexport class GridOrderSearch implements IDeserializable{\r\n startDate: Date;\r\n endDate: Date;\r\n lastNameEnabled: boolean;\r\n patientLastName: string;\r\n\r\n deserialize(input: any) {\r\n Object.assign(this, input);\r\n return this;\r\n }\r\n}","import { IDeserializable } from './deserializable';\r\n\r\nexport class GridPageAndSortSettings implements IDeserializable{\r\n skip: number;\r\n take: number;\r\n orderBy: string;\r\n desc: boolean;\r\n\r\n deserialize(input) {\r\n Object.assign(this, input);\r\n return this;\r\n }\r\n}","import { IDeserializable } from './deserializable'\r\n\r\nexport class GridPatientSearch implements IDeserializable{\r\n patientLastName: string;\r\n patientFirstName: string;\r\n medicalRecordNumber: string;\r\n birthday: Date;\r\n\r\n deserialize(input) {\r\n Object.assign(this, input);\r\n return this;\r\n }\r\n}","import { GridOrderSearch } from './grid.order.search';\r\nimport { GridPageAndSortSettings } from './grid.page.and.sort.settings';\r\nimport { GridPatientSearch } from './grid.patient.search';\r\nimport { IDeserializable } from './deserializable';\r\n\r\nexport class GridRequest implements IDeserializable{\r\n pageAndSortSettings: GridPageAndSortSettings;\r\n orderSearchFilter?: GridOrderSearch;\r\n patientFilter?: GridPatientSearch;\r\n\r\n deserialize(input) {\r\n Object.assign(this, input);\r\n this.pageAndSortSettings = new GridPageAndSortSettings().deserialize(input.pageAndSortSettings);\r\n this.orderSearchFilter = new GridOrderSearch().deserialize(input.orderSearchFilter);\r\n this.patientFilter = new GridPatientSearch().deserialize(input.patientFilter);\r\n return this;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { PatientDetails } from \"src/app/_models/patient.details\";\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class OrderControllerService {\r\n private orderPath = 'api/Order';\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getFilteredOrders(parameters) {\r\n return this.http.post(this.orderPath + '/ReceiveFilteredOrders', parameters);\r\n }\r\n\r\n getOrdersBySearchCriteria(parameters) {\r\n return this.http.post(this.orderPath + '/ReceiveOrdersBySearchCriteria', parameters);\r\n }\r\n\r\n getReferrerOrdersByPatient(patientId, searchValue) {\r\n return this.http.get(this.orderPath + '/GetReferrerOrdersByPatient', { params: { id: patientId, searchValue: searchValue } });\r\n }\r\n\r\n getById(id) {\r\n return this.http.get(this.orderPath + '/GetById', { params: { id: id } });\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { PatientDetails } from '../_models/patient.details';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PatientControllerService {\r\n private patientPath = 'api/Patient';\r\n\r\n constructor(private http: HttpClient) {}\r\n\r\n searchByPatient(parameters) {\r\n return this.http.post(this.patientPath + '/ReceivePatientsBySearchCriteria', parameters);\r\n }\r\n\r\n searchPatients(parameters) {\r\n return this.http.post(this.patientPath + '/SearchPatients', parameters);\r\n }\r\n\r\n getPatientById(patientId) {\r\n return this.http.get(this.patientPath + '/GetPatient', { params: { id: patientId } });\r\n }\r\n\r\n savePatient(patientInfo) {\r\n return this.http.post(this.patientPath + '/SavePatient', patientInfo);\r\n }\r\n\r\n getPatientExamLink(patientId) {\r\n return this.http.get(this.patientPath + '/GetPatientExamLink', { params: { patientId: patientId } });\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Report } from '../_models/report';\r\nimport { ReportName } from '../_models/report.name';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ReportControllerService {\r\n private reportPath = 'api/Report';\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getReportByOrderId(orderId) {\r\n return this.http.get(this.reportPath + '/GetReport', { params: { orderId: orderId } });\r\n }\r\n\r\n saveReport(params) {\r\n return this.http.post(this.reportPath + '/SaveReport', params).subscribe();\r\n }\r\n\r\n getReportNames(orderId) {\r\n return this.http.get(this.reportPath + '/GetReportNamesByOrder', { params: { orderId: orderId } });\r\n }\r\n\r\n getReportById(reportId) {\r\n return this.http.get(this.reportPath + '/GetReportById', { params: { reportId: reportId } });\r\n }\r\n\r\n exportReport(orderId) {\r\n return this.http.get(this.reportPath + '/GetPdfReport', { params: { reportId: orderId }, responseType: 'arraybuffer' });\r\n }\r\n}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n template: `\r\n \r\n `,\r\n styles: []\r\n})\r\nexport class AppComponent {\r\n title = 'Angular';\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\n\r\nimport { Router } from '@angular/router';\r\n\r\nimport { AppComponent } from './app.component';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { MobileHomeComponent } from './home/mobile.home.component';\r\nimport { SearchBarComponent } from './searchBar';\r\nimport { HeaderComponent } from './header';\r\nimport { BodyComponent } from './body/body.component';\r\nimport { MobileBodyComponent } from './body/mobile.body.component';\r\nimport { NavigationMenuComponent } from './navigationMenu/navigation.menu.component';\r\nimport { MobileNavigationMenuComponent } from './navigationMenu/mobile.navigation.menu.component';\r\nimport { OrderPopupComponent } from './popups/orderPopup';\r\nimport { PatientPopupComponent } from './popups/patientPopup';\r\nimport { ProfileComponent } from './profile';\r\nimport { PatientDetailsComponent } from './patientDetailsScreen/patient.details.component';\r\nimport { PatientInfoComponent } from './patientDetailsScreen/patientInfo/patient.info.component';\r\nimport { OrderListComponent } from './patientDetailsScreen/orderList/order.list.component';\r\nimport { MobileOrderListComponent } from './patientDetailsScreen/orderList/mobile.order.list.component';\r\nimport { OrderDetailsComponent } from './patientDetailsScreen/orderDetails/order.details.component';\r\nimport { MobileOrderDetailsComponent } from './patientDetailsScreen/orderDetails/mobile.order.details.component';\r\nimport { OrderGridComponent } from './orderGrid/order.grid.component';\r\nimport { MobilePatientInfoComponent } from './patientDetailsScreen/patientInfo/mobile.patient.info.component';\r\nimport { MobileSearchBarComponent } from './searchBar/mobile.search.bar.component';\r\nimport {\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxNumberBoxModule,\r\n DxDateBoxModule,\r\n DxPopupModule,\r\n DxDropDownButtonModule,\r\n DxToolbarModule,\r\n DxSelectBoxModule,\r\n DxCheckBoxModule,\r\n DxListModule,\r\n DxHtmlEditorModule,\r\n DxTabPanelModule,\r\n DxTemplateModule,\r\n DxDrawerModule,\r\n DxDataGridModule\r\n} from 'devextreme-angular';\r\n\r\nimport { AuthModule } from './auth/auth.module';\r\nimport { AuthInterceptor } from './auth/auth.interceptor';\r\n\r\nimport { AppRoutingModule } from './app.routing.module';\r\nimport { ServerErrorHandler } from \"src/app/common/server.error.handler\";\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HomeComponent,\r\n MobileHomeComponent,\r\n SearchBarComponent,\r\n HeaderComponent,\r\n BodyComponent,\r\n MobileBodyComponent,\r\n NavigationMenuComponent,\r\n MobileNavigationMenuComponent,\r\n OrderPopupComponent,\r\n PatientPopupComponent,\r\n ProfileComponent,\r\n PatientDetailsComponent,\r\n PatientInfoComponent,\r\n OrderListComponent,\r\n OrderDetailsComponent,\r\n OrderGridComponent,\r\n MobilePatientInfoComponent,\r\n MobileOrderListComponent,\r\n MobileOrderDetailsComponent,\r\n MobileSearchBarComponent\r\n ],\r\n imports: [\r\n AuthModule,\r\n AppRoutingModule,\r\n BrowserModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n HttpClientModule,\r\n DxButtonModule,\r\n DxTextBoxModule,\r\n DxNumberBoxModule,\r\n DxDateBoxModule,\r\n DxPopupModule,\r\n DxDropDownButtonModule,\r\n DxToolbarModule,\r\n DxSelectBoxModule,\r\n DxCheckBoxModule,\r\n DxListModule,\r\n DxHtmlEditorModule,\r\n DxTabPanelModule,\r\n DxTemplateModule,\r\n DxDrawerModule,\r\n DxDataGridModule\r\n ],\r\n entryComponents: [\r\n MobileHomeComponent,\r\n MobilePatientInfoComponent,\r\n MobileOrderDetailsComponent,\r\n MobileSearchBarComponent\r\n ],\r\n providers: [\r\n { provide: HTTP_INTERCEPTORS, useClass: ServerErrorHandler, multi: true },\r\n { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true }\r\n ],\r\n bootstrap: [ AppComponent ]\r\n})\r\n \r\nexport class AppModule {}","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes, Router } from '@angular/router';\r\nimport { HomeComponent } from \"./home/home.component\";\r\nimport { MobileHomeComponent } from \"./home/mobile.home.component\";\r\nimport { AuthGuard } from './auth/auth.guard';\r\nimport { OrderGridComponent } from './orderGrid/order.grid.component';\r\nimport { MobileOrderDetailsComponent } from './patientDetailsScreen/orderDetails/mobile.order.details.component';\r\nimport { LoginComponent } from './auth/login/login.component';\r\nimport { ApplicationStateService } from '../environments/application.state.service';\r\nimport { PatientDetailsComponent } from './patientDetailsScreen/patient.details.component';\r\nimport { PatientDetailsResolverService } from './patientDetailsScreen/patient.details.resolver';\r\nimport { PatientInfoComponent } from './patientDetailsScreen/patientInfo/patient.info.component';\r\nimport { MobilePatientInfoComponent } from './patientDetailsScreen/patientInfo/mobile.patient.info.component';\r\n\r\nconst desktopAppRoutes: Routes = [\r\n { path: '', redirectTo: '/login', pathMatch: 'full' },\r\n { path: 'login', component: LoginComponent },\r\n {\r\n path: 'home',\r\n component: HomeComponent,\r\n canActivate: [AuthGuard],\r\n children: [\r\n { path: 'grid', component: OrderGridComponent, canActivate: [AuthGuard] },\r\n {\r\n path: 'details',\r\n component: PatientDetailsComponent,\r\n children: [\r\n {\r\n path: ':id',\r\n component: PatientInfoComponent,\r\n resolve: {\r\n patient: PatientDetailsResolverService\r\n }\r\n }]\r\n }\r\n ]\r\n }];\r\nconst mobileAppRoutes: Routes = [\r\n { path: '', redirectTo: '/login', pathMatch: 'full' },\r\n { path: 'login', component: LoginComponent },\r\n {\r\n path: 'home',\r\n component: MobileHomeComponent,\r\n canActivate: [AuthGuard],\r\n children: [\r\n { path: 'grid', component: OrderGridComponent, canActivate: [AuthGuard] },\r\n {\r\n path: 'details/:id', component: MobilePatientInfoComponent, canActivate: [AuthGuard],\r\n resolve: {\r\n patient: PatientDetailsResolverService\r\n }\r\n },\r\n {\r\n path: 'orderDetails/:id', component: MobileOrderDetailsComponent, canActivate: [AuthGuard]\r\n }\r\n ]\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n RouterModule.forRoot(\r\n desktopAppRoutes,\r\n {\r\n enableTracing: false\r\n })\r\n ],\r\n exports: [\r\n RouterModule\r\n ]\r\n})\r\nexport class AppRoutingModule {\r\n public constructor(private router: Router,\r\n private applicationStateService: ApplicationStateService) {\r\n if (applicationStateService.getIsMobileResolution()) {\r\n router.resetConfig(mobileAppRoutes);\r\n }\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from '@angular/router';\r\n\r\n@Injectable({providedIn: 'root'})\r\nexport class AuthGuard implements CanActivate {\r\n constructor(private router: Router) { }\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): boolean {\r\n if (localStorage.getItem('userToken') != null)\r\n return true;\r\n this.router.navigate(['/login']);\r\n return false;\r\n }\r\n}","import { HttpInterceptor, HttpRequest, HttpHandler, HttpUserEvent, HttpEvent } from \"@angular/common/http\";\r\nimport { Observable } from \"rxjs\";\r\nimport { tap } from 'rxjs/operators';\r\nimport { Injectable } from \"@angular/core\";\r\nimport { Router } from \"@angular/router\";\r\n\r\n@Injectable()\r\nexport class AuthInterceptor implements HttpInterceptor {\r\n\r\n constructor(private router: Router) { }\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n if (req.headers.get('No-Auth') == \"True\")\r\n return next.handle(req.clone());\r\n\r\n if (localStorage.getItem('userToken') != null) {\r\n const clonedreq = req.clone({\r\n headers: req.headers.set(\"Authorization\", \"Bearer \" + localStorage.getItem('userToken'))\r\n });\r\n return next.handle(clonedreq).pipe(\r\n tap(\r\n succ => { },\r\n err => {\r\n if (err.status === 401)\r\n this.router.navigateByUrl('/login');\r\n }\r\n ));\r\n }\r\n else {\r\n this.router.navigateByUrl('/login');\r\n }\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\n\r\nimport { LoginComponent } from './login/login.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule\r\n ],\r\n declarations: [\r\n LoginComponent\r\n ]\r\n})\r\nexport class AuthModule { }","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { FormBuilder, FormGroup, Validators, AbstractControl } from '@angular/forms';\r\nimport { LoginService } from './login.service';\r\nimport { alert } from 'devextreme/ui/dialog';\r\n\r\n\r\n@Component({ selector: 'login', templateUrl: 'login.component.html' })\r\nexport class LoginComponent implements OnInit {\r\n loginForm: FormGroup;\r\n returnUrl: string;\r\n loading = false;\r\n submitted = false;\r\n counter = 0;\r\n\r\n constructor(\r\n private formBuider: FormBuilder,\r\n private loginService: LoginService,\r\n private router: Router\r\n ) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.loginForm = this.formBuider.group({\r\n username: ['', Validators.required],\r\n password: ['', Validators.required]\r\n });\r\n }\r\n\r\n get formControls() {\r\n return this.loginForm.controls;\r\n }\r\n\r\n onSubmit() {\r\n this.submitted = true;\r\n if (this.loginForm.invalid) {\r\n return;\r\n }\r\n\r\n this.loading = true;\r\n this.loginService.login(this.formControls.username.value, this.formControls.password.value)\r\n .subscribe((data: any) => {\r\n localStorage.setItem('userToken', data.access_token);\r\n this.router.navigate(['/home']);\r\n },\r\n (err: any) => {\r\n this.showDialog(\"Login failed\", \"Error\");\r\n this.clearFields();\r\n }\r\n );\r\n }\r\n\r\n clearFields() {\r\n this.clearField(this.loginForm.controls.username);\r\n this.clearField(this.loginForm.controls.password);\r\n }\r\n\r\n clearField(control: AbstractControl) {\r\n control.setValue(\"\");\r\n control.setErrors(null);\r\n }\r\n\r\n showDialog(message: string, title: string, promise?) {\r\n let result = alert(message, title);\r\n result.then(promise);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpHeaders } from '@angular/common/http';\r\nimport { HttpClient, HttpBackend } from '@angular/common/http';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class LoginService {\r\n private http: HttpClient;\r\n\r\n constructor(handler: HttpBackend,\r\n private router: Router) {\r\n this.http = new HttpClient(handler);\r\n }\r\n\r\n login(username: string, password: string) {\r\n var data = \"username=\" + username + \"&password=\" + password + \"&grant_type=password\";\r\n var reqHeader = new HttpHeaders({ 'Content-Type': 'application/x-www-urlencoded', 'No-Auth': 'True' });\r\n return this.http.post('/token', data, { headers: reqHeader });\r\n }\r\n\r\n logout() {\r\n localStorage.removeItem('userToken');\r\n this.router.navigate(['/login']);\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { BodyService } from './body.service';\r\n\r\n\r\n@Component({ selector: 'app-body', templateUrl: 'body.component.html' })\r\nexport class BodyComponent {\r\n orderDetailsPopupVisible: boolean;\r\n currentPatientId: any;\r\n orderId: any;\r\n patientSelected: boolean = false;\r\n\r\n constructor(\r\n private bodyService: BodyService) {\r\n this.patientSelected = false;\r\n this.orderDetailsPopupVisible = false;\r\n this.bodyService.patientDetails.subscribe(value => this.popupShowSubscription(value));\r\n }\r\n\r\n showHideGrid() {\r\n this.patientSelected = !this.patientSelected;\r\n }\r\n\r\n popupShowSubscription(idValue) {\r\n if (typeof idValue === 'number') {\r\n this.patientSelected = true;\r\n this.currentPatientId = idValue;\r\n }\r\n }\r\n\r\n receivePatientMessage($event) {\r\n this.patientSelected = $event;\r\n }\r\n\r\n receiveOrderMessage($event) {\r\n this.orderDetailsPopupVisible = $event;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class BodyService {\r\n private patientDataSource = new BehaviorSubject(new Object());\r\n patientDetails = this.patientDataSource.asObservable();\r\n private orderDataSource = new BehaviorSubject(new Object());\r\n orderDetails = this.orderDataSource.asObservable();\r\n\r\n openPatientDetailsPopup(patientId) {\r\n this.patientDataSource.next(patientId);\r\n }\r\n\r\n openOrderDetailsPopup(orderId) {\r\n this.orderDataSource.next(orderId);\r\n }\r\n}","import { Component } from '@angular/core';\r\nimport { BodyComponent } from './body.component';\r\n\r\n@Component({\r\n selector: 'mobile-body',\r\n templateUrl: './mobile.body.component.html'\r\n})\r\nexport class MobileBodyComponent extends BodyComponent {\r\n \r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpEvent, HttpRequest, HttpHandler, HttpInterceptor, HttpErrorResponse } from '@angular/common/http';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { Constants } from './constants';\r\nimport notify from 'devextreme/ui/notify';\r\n\r\n\r\n@Injectable()\r\nexport class ServerErrorHandler implements HttpInterceptor {\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n return next.handle(req).pipe(\r\n catchError((error: HttpErrorResponse) => {\r\n if (error) {\r\n notify(error.statusText, 'error', 1500);\r\n } else {\r\n return throwError(error);\r\n }\r\n })\r\n );\r\n }\r\n}","import { Component } from '@angular/core';\r\n\r\n\r\n@Component({ selector: 'app-header', templateUrl: 'header.component.html' })\r\nexport class HeaderComponent {}","export * from './header.component';","import { Component } from '@angular/core';\r\n\r\n@Component({ selector: 'home', templateUrl: 'home.component.html' })\r\nexport class HomeComponent {\r\n}","import { Component } from '@angular/core';\r\nimport { HomeComponent } from './home.component';\r\n\r\n@Component({\r\n selector: 'mobile-home',\r\n templateUrl: './mobile.home.component.html'\r\n})\r\nexport class MobileHomeComponent extends HomeComponent {\r\n\r\n}","import { Component, ViewChild } from '@angular/core';\r\nimport { Location } from '@angular/common';\r\nimport { NavigationMenuComponent } from './navigation.menu.component';\r\nimport { LoginService } from '../auth/login/login.service';\r\nimport { DxDrawerComponent } from 'devextreme-angular';\r\n\r\n@Component({\r\n selector: 'mobile-nav-menu',\r\n templateUrl: './mobile.navigation.menu.component.html'\r\n})\r\nexport class MobileNavigationMenuComponent extends NavigationMenuComponent{\r\n @ViewChild(DxDrawerComponent, { static: false }) drawer: DxDrawerComponent;\r\n orders = 'Orders';\r\n patients = 'Patients';\r\n logout = 'Logout';\r\n navigation = [\r\n { id: 1, text: this.orders, icon: 'orders' },\r\n { id: 2, text: this.patients, icon: 'patients' },\r\n { id: 3, text: this.logout, icon: 'runner'}\r\n ];\r\n toolbarContent = [{\r\n widget: 'dxButton',\r\n location: 'before',\r\n options: {\r\n icon: 'menu',\r\n onClick: () => this.drawer.instance.toggle()\r\n }\r\n }];\r\n\r\n constructor(private loginService: LoginService,\r\n private location: Location) {\r\n super();\r\n }\r\n\r\n onClick(selectedItem) {\r\n switch (selectedItem.itemData.text) {\r\n case this.orders: this.ordersSearch();\r\n break;\r\n case this.patients: this.patientsSearch();\r\n break;\r\n case this.logout: this.logoutUser();\r\n break;\r\n }\r\n this.drawer.instance.toggle();\r\n }\r\n\r\n onBackClick() {\r\n this.location.back();\r\n }\r\n\r\n widthCalculate() {\r\n return window.innerWidth;\r\n }\r\n\r\n logoutUser() {\r\n this.loginService.logout();\r\n }\r\n}","import { Component } from '@angular/core';\r\n\r\n\r\n@Component({ selector: 'navigation-menu', templateUrl: 'navigation.menu.component.html' })\r\nexport class NavigationMenuComponent {\r\n orderPopupVisible: boolean;\r\n patientPopupVisible: boolean;\r\n\r\n constructor() {\r\n this.orderPopupVisible = false;\r\n this.patientPopupVisible = false;\r\n }\r\n\r\n ordersSearch() {\r\n this.orderPopupVisible = true;\r\n }\r\n\r\n receiveOrderMessage($event) {\r\n this.orderPopupVisible = $event;\r\n }\r\n\r\n patientsSearch() {\r\n this.patientPopupVisible = true;\r\n }\r\n\r\n receivePatientMessage($event) {\r\n this.patientPopupVisible = $event;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { ApplicationStateService } from '../../environments/application.state.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class OrderGridColumnHelperService {\r\n private isMobile: boolean;\r\n\r\n constructor(private applicationStateService: ApplicationStateService) {\r\n this.isMobile = applicationStateService.getIsMobileResolution();\r\n }\r\n\r\n getDefaultColumns() {\r\n return defaultColumns;\r\n }\r\n\r\n getOrderSearchColumns() {\r\n return this.isMobile ? mobileOrderSearchColumns : orderSearchColumns;\r\n }\r\n\r\n getPatientSearchColumns() {\r\n return patientSearchColumns;\r\n }\r\n}\r\n\r\nlet defaultColumns = [\r\n {\r\n dataField: 'Id',\r\n visible: false\r\n }, {\r\n dataField: 'Priority',\r\n allowEditing: false,\r\n allowResizing: true\r\n }, {\r\n dataField: 'AccNo',\r\n allowEditing: false,\r\n allowResizing: true,\r\n }, {\r\n dataField: 'MRN',\r\n allowEditing: false,\r\n allowResizing: true\r\n }, {\r\n dataField: 'LastName',\r\n allowEditing: false,\r\n allowResizing: true\r\n }, {\r\n dataField: 'FirstName',\r\n allowEditing: false,\r\n allowResizing: true\r\n }, {\r\n dataField: 'ExamType',\r\n allowEditing: false,\r\n allowResizing: true,\r\n allowSorting: false\r\n }, {\r\n dataField: 'Referrer',\r\n allowEditing: false,\r\n allowResizing: true,\r\n allowSorting: false\r\n }, {\r\n dataField: 'MedicalNecessity',\r\n allowEditing: false,\r\n allowResizing: true\r\n }, {\r\n dataField: 'Comments',\r\n allowEditing: false,\r\n allowResizing: true\r\n }, {\r\n dataField: 'DOS',\r\n allowEditing: false,\r\n allowResizing: true\r\n }, {\r\n dataField: 'Status',\r\n allowEditing: false,\r\n allowResizing: true,\r\n allowSorting: false\r\n }, {\r\n dataField: 'Radiologist',\r\n allowEditing: false,\r\n allowResizing: true,\r\n allowSorting: false\r\n }, {\r\n dataField: 'Site',\r\n allowEditing: false,\r\n allowResizing: true,\r\n allowSorting: false\r\n }, {\r\n dataField: 'Actions',\r\n allowEditing: false,\r\n allowSorting: false\r\n }\r\n];\r\n\r\nlet orderSearchColumns = [\r\n {\r\n dataField: 'Id',\r\n visible: false\r\n }, {\r\n dataField: 'AccNo',\r\n allowEditing: false,\r\n cssClass: 'underlined'\r\n }, {\r\n dataField: 'LastName',\r\n allowEditing: false\r\n }, {\r\n dataField: 'FirstName',\r\n allowEditing: false\r\n }, {\r\n dataField: 'ExamType',\r\n allowEditing: false,\r\n allowSorting: false\r\n }, {\r\n dataField: 'BodyPart',\r\n allowEditing: false,\r\n allowSorting: false\r\n }, {\r\n dataField: 'DOS',\r\n dataType: 'date',\r\n allowEditing: false\r\n }, {\r\n dataField: 'Status',\r\n allowEditing: false,\r\n allowSorting: false\r\n }, {\r\n dataField: 'Site',\r\n allowEditing: false\r\n }, {\r\n dataField: 'History',\r\n allowEditing: false,\r\n allowSorting: false\r\n }\r\n];\r\n\r\nlet mobileOrderSearchColumns = [\r\n {\r\n dataField: 'Id',\r\n visible: false\r\n }, {\r\n dataField: 'AccNo',\r\n allowEditing: false,\r\n cssClass: 'underlined'\r\n }, {\r\n dataField: 'LastName',\r\n allowEditing: false\r\n }, {\r\n dataField: 'FirstName',\r\n allowEditing: false\r\n }, {\r\n dataField: 'ExamType',\r\n allowEditing: false,\r\n allowSorting: false\r\n }\r\n];\r\n\r\nlet patientSearchColumns = [\r\n {\r\n dataField: 'Id',\r\n visible: false\r\n }, {\r\n dataField: 'MedicalRecordNumber',\r\n allowEditing: false,\r\n cssClass: 'underlined'\r\n }, {\r\n dataField: 'LastName',\r\n allowEditing: false\r\n }, {\r\n dataField: 'FirstName',\r\n allowEditing: false\r\n }, {\r\n dataField: 'Birthday',\r\n dataType: 'date',\r\n allowEditing: false\r\n }, {\r\n dataField: 'Site',\r\n allowEditing: false\r\n }\r\n];","import { Component, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { OrderControllerService } from '../_services/order.controller.service';\r\nimport { OrderGridColumnHelperService } from './order.grid.column.helper.service';\r\nimport { OrderPopupService } from '../popups/orderPopup/order.popup.service';\r\nimport { SearchBarService } from '../searchBar/search.bar.service';\r\nimport { PatientControllerService } from '../_services/patient.controller.service';\r\nimport { PatientPopupService } from '../popups/patientPopup/patient.popup.service';\r\nimport { ObjectHelperService } from '../_helpers/object.helper.service';\r\nimport { GridRequest } from '../_models/grid.request';\r\nimport { ApplicationStateService } from '../../environments/application.state.service';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport DataGrid from 'devextreme/ui/data_grid';\r\n\r\n\r\n@Component({ selector: 'order-grid', templateUrl: 'order.grid.component.html' })\r\nexport class OrderGridComponent implements OnInit {\r\n data: any = {};\r\n columns: any = [];\r\n dataGridInstance: DataGrid;\r\n allowedPageSizes: number[];\r\n\r\n constructor(private orderControllerService: OrderControllerService,\r\n private orderPopupService: OrderPopupService,\r\n private patientPopupService: PatientPopupService,\r\n private columnHelper: OrderGridColumnHelperService,\r\n private patientControllerService: PatientControllerService,\r\n private searchBarService: SearchBarService,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private objectHelperService: ObjectHelperService,\r\n private appStateService: ApplicationStateService) {\r\n if (this.appStateService.getIsMobileResolution()) {\r\n this.allowedPageSizes = [10];\r\n } else {\r\n this.allowedPageSizes = [10, 20];\r\n }\r\n }\r\n\r\n saveGridInstance(e) {\r\n this.dataGridInstance = e.component;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.route.paramMap.subscribe(params => {\r\n const gridType = params.get('type');\r\n this.loadInitialDataToGrid(gridType);\r\n this.orderPopupService.currentData.subscribe(value => this.loadSearchOrdersResult(value, gridType));\r\n this.patientPopupService.currentData.subscribe(value => this.loadSearchPatientsResult(value, gridType));\r\n this.searchBarService.currentData.subscribe(value => this.loadSearchPatientsResults(value, gridType));\r\n });\r\n }\r\n\r\n loadInitialDataToGrid(gridType) {\r\n switch (gridType) {\r\n case 'patients':\r\n this.columns = this.columnHelper.getPatientSearchColumns();\r\n break;\r\n case 'orders':\r\n this.columns = this.columnHelper.getOrderSearchColumns();\r\n break;\r\n default:\r\n this.columns = this.columnHelper.getDefaultColumns();\r\n }\r\n }\r\n\r\n loadSearchPatientsResult(searchCriteria, gridType) {\r\n if (this.data && !this.objectHelperService.isObjectEmpty(searchCriteria) && gridType === 'patients') {\r\n this.data = {};\r\n this.columns = this.columnHelper.getPatientSearchColumns();\r\n this.requestGridData(this.patientControllerService.searchByPatient.bind(this.patientControllerService), searchCriteria);\r\n }\r\n }\r\n\r\n loadSearchPatientsResults(searchCriteria, gridType) {\r\n if (this.data && !this.objectHelperService.isObjectEmpty(searchCriteria) && gridType === 'patients') {\r\n this.data = {};\r\n this.columns = this.columnHelper.getPatientSearchColumns();\r\n this.requestGridData(this.patientControllerService.searchPatients.bind(this.patientControllerService), searchCriteria);\r\n }\r\n }\r\n\r\n handleCellClick(cellInfo) {\r\n switch (cellInfo.column.dataField) {\r\n case 'AccNo': this.openOrderDetailsPopup(cellInfo);\r\n break;\r\n case 'MedicalRecordNumber': this.openPatientDetails(cellInfo);\r\n break;\r\n default:\r\n return;\r\n }\r\n }\r\n\r\n openOrderDetailsPopup(cellInfo) {\r\n if (this.appStateService.getIsMobileResolution()) {\r\n this.router.navigate(['../orderDetails', cellInfo.data.Id], { relativeTo: this.route });\r\n } else {\r\n this.router.navigate(['../details', cellInfo.data.PatientId],\r\n { relativeTo: this.route, state: { data: cellInfo.data.AccNo } });\r\n }\r\n }\r\n\r\n openPatientDetails(cellInfo) {\r\n this.router.navigate(['../details', cellInfo.data.Id], { relativeTo: this.route });\r\n }\r\n\r\n loadSearchOrdersResult(searchCriteria, gridType) {\r\n if (this.data && !this.objectHelperService.isObjectEmpty(searchCriteria) && gridType === 'orders') {\r\n this.data = {};\r\n this.columns = this.columnHelper.getOrderSearchColumns();\r\n this.requestGridData(this.orderControllerService.getOrdersBySearchCriteria.bind(this.orderControllerService), searchCriteria);\r\n }\r\n }\r\n\r\n requestGridData(callback: (gridRequest: GridRequest) => any, searchParams: any) {\r\n var me = this;\r\n me.data.store = new CustomStore({\r\n load: function(loadOptions: any) {\r\n var params = me.getPageAndSortParams(loadOptions);\r\n me.populateWithExtraParams(params, searchParams);\r\n return callback(params).toPromise().then((data: any) => {\r\n return {\r\n data: data.Data,\r\n totalCount: data.TotalCount\r\n }\r\n }).catch(error => { throw 'Data Loading Error' });\r\n }\r\n });\r\n }\r\n\r\n populateWithExtraParams(paramsToPopulate: GridRequest, searchParams: any) {\r\n if (searchParams != null) {\r\n //check type, so there won't be two set values\r\n paramsToPopulate.patientFilter = searchParams;\r\n paramsToPopulate.orderSearchFilter = searchParams;\r\n }\r\n }\r\n\r\n getPageAndSortParams(loadOptions): GridRequest {\r\n var result = {\r\n pageAndSortSettings: {\r\n skip: loadOptions.skip,\r\n take: loadOptions.take,\r\n orderBy: loadOptions.sort ? loadOptions.sort[0].selector : null,\r\n desc: loadOptions.sort ? loadOptions.sort[0].desc : null\r\n },\r\n orderSearchFilter: null,\r\n patientFilter: null\r\n }\r\n return new GridRequest().deserialize(result);\r\n }\r\n}","import { Component } from '@angular/core';\r\nimport { ActivatedRoute, ParamMap } from '@angular/router';\r\nimport { switchMap } from 'rxjs/operators';\r\nimport { Observable } from 'rxjs';\r\n\r\nimport { OrderDetailsComponent } from './order.details.component';\r\nimport { ReportName } from '../../_models/report.name';\r\nimport { ReportControllerService } from '../../_services/report.controller.service';\r\nimport { OrderControllerService } from '../../_services/order.controller.service';\r\nimport { PatientControllerService } from '../../_services/patient.controller.service';\r\nimport { ApplicationStateService } from \"../../../environments/application.state.service\";\r\n\r\n@Component({ selector: 'mobile-order-details', templateUrl: './mobile.order.details.component.html' })\r\nexport class MobileOrderDetailsComponent extends OrderDetailsComponent {\r\n orderDetails$: Observable;\r\n reportValue: any;\r\n reportId: number;\r\n uniViewLink: string;\r\n reportNames: ReportName[];\r\n\r\n constructor(reportControllerService: ReportControllerService,\r\n private route: ActivatedRoute,\r\n private orderControllerService: OrderControllerService,\r\n private patientControllerService: PatientControllerService,\r\n appStateService: ApplicationStateService\r\n ) {\r\n super(reportControllerService, appStateService);\r\n }\r\n\r\n ngOnInit(): void {\r\n this.orderDetails$ = this.route.paramMap.pipe(\r\n switchMap((params: ParamMap) =>\r\n this.orderControllerService.getById(params.get('id')))\r\n );\r\n this.orderDetails$.subscribe(res => {\r\n this.patientControllerService.getPatientExamLink(res.PatientId).subscribe(res => {\r\n this.uniViewLink = res.toString();\r\n });\r\n });\r\n this.route.paramMap.pipe(\r\n switchMap((params: ParamMap) =>\r\n this.reportControllerService.getReportNames(params.get('id'))))\r\n .subscribe(res => this.reportNames = res);\r\n this.route.paramMap.pipe(\r\n switchMap((params: ParamMap) =>\r\n this.reportControllerService.getReportByOrderId(params.get('id')))\r\n ).subscribe(this.setReport.bind(this));\r\n }\r\n\r\n setReport(report) {\r\n if (report) {\r\n this.reportValue = report.Data;\r\n this.reportId = report.Id;\r\n } else {\r\n this.reportValue = null;\r\n this.reportId = null;\r\n this.reportNames = null;\r\n }\r\n }\r\n\r\n switchReport(event) {\r\n this.reportControllerService.getReportById(event.selectedItem.Id).subscribe(this.setReport.bind(this));\r\n }\r\n\r\n openUniview(button) {\r\n window.open(this.uniViewLink);\r\n }\r\n}","import { Component, OnInit, Input } from '@angular/core';\r\nimport { ReportControllerService } from '../../_services/report.controller.service';\r\nimport { ApplicationStateService } from '../../../environments/application.state.service';\r\nimport { ReportName } from '../../_models/report.name';\r\nimport { Report } from '../../_models/report';\r\nimport * as $ from 'jquery';\r\n\r\n@Component({ selector: 'order-details', templateUrl: './order.details.component.html' })\r\nexport class OrderDetailsComponent implements OnInit {\r\n _currentOrder: any;\r\n height: any;\r\n reportNames: ReportName[];\r\n @Input()\r\n set currentOrder(currentOrder: any) {\r\n this._currentOrder = currentOrder;\r\n this.reportControllerService.getReportNames(this._currentOrder.Id).subscribe(res => {\r\n this.reportNames = res;\r\n });\r\n this.reportControllerService.getReportByOrderId(currentOrder.Id).subscribe(this.setReport.bind(this));\r\n }\r\n\r\n get currentOrder() { return this._currentOrder }\r\n\r\n tabs: any;\r\n currentReportValue: string;\r\n currentReportId: number;\r\n\r\n constructor(protected reportControllerService: ReportControllerService,\r\n private appStateService: ApplicationStateService) {\r\n this.tabs = [\r\n { id: 1, title: 'Order Info', template: 'orderInfo' },\r\n { id: 2, title: 'Report', template: 'report' }\r\n ];\r\n\r\n if (!appStateService.getIsMobileResolution()) {\r\n $(document).ready(\r\n () => {\r\n this.resizeContent(80);\r\n\r\n $(window).resize(function() {\r\n this.resizeContent(80);\r\n });\r\n });\r\n } else {\r\n this.resizeContent(70);\r\n $(window).resize(function () {\r\n this.resizeContent(70);\r\n });\r\n }\r\n }\r\n\r\n resizeContent(percents: number): void {\r\n this.height = $(window).height() * percents / 100;\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n }\r\n\r\n exportPdf() {\r\n this.reportControllerService.exportReport(this.currentReportId).subscribe(data => this.downloadFile(data));\r\n }\r\n\r\n downloadFile(data: any) {\r\n const blob = new Blob([data], { type: 'application/pdf' });\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n var fileName = this.currentOrder.AccessionNumber + \".pdf\";\r\n window.navigator.msSaveOrOpenBlob(blob, fileName);\r\n }\r\n const url = window.URL.createObjectURL(blob);\r\n window.open(url);\r\n }\r\n\r\n switchReport(event) {\r\n this.reportControllerService.getReportById(event.selectedItem.Id).subscribe(this.setReport.bind(this));\r\n }\r\n\r\n setReport(report) {\r\n if (report) {\r\n this.currentReportValue = report.Data;\r\n this.currentReportId = report.Id;\r\n } else {\r\n this.currentReportValue = null;\r\n this.currentReportId = null;\r\n this.reportNames = null;\r\n }\r\n }\r\n\r\n saveReport() {\r\n var report = {\r\n Data: this.currentReportValue,\r\n Id: this.currentReportId\r\n }\r\n this.reportControllerService.saveReport(report);\r\n }\r\n}","import { Component, IterableDiffers } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { OrderListComponent } from './order.list.component';\r\nimport { OrderControllerService } from '../../_services/order.controller.service';\r\nimport { ApplicationStateService } from '../../../environments/application.state.service';\r\nimport * as $ from 'jquery';\r\n\r\n@Component({\r\n selector: 'mobile-order-list',\r\n templateUrl: './mobile.order.list.component.html'\r\n})\r\nexport class MobileOrderListComponent extends OrderListComponent {\r\n constructor(orderControllerService: OrderControllerService,\r\n appStateService: ApplicationStateService,\r\n differs: IterableDiffers,\r\n protected router: Router,\r\n private route: ActivatedRoute) {\r\n super(orderControllerService, appStateService, router, differs);\r\n\r\n $(document).ready(\r\n function () {\r\n resizeContent();\r\n\r\n $(window).resize(function () {\r\n resizeContent();\r\n });\r\n });\r\n\r\n function resizeContent() {\r\n var height = $(window).height() * 60 / 100;\r\n $('#OrderList').height(height);\r\n }\r\n }\r\n\r\n getOrderDetails(e): void {\r\n this.router.navigate(['../../orderDetails', e.addedItems[0].Id], { relativeTo: this.route });\r\n }\r\n}","import { Component, OnInit, Input, IterableDiffers, DoCheck, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { OrderControllerService } from '../../_services/order.controller.service';\r\nimport { ApplicationStateService } from '../../../environments/application.state.service';\r\nimport { DxListComponent } from 'devextreme-angular';\r\n\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport CustomStore from 'devextreme/data/custom_store';\r\nimport * as $ from 'jquery';\r\n\r\n\r\n@Component({ selector: 'order-list', templateUrl: './order.list.component.html' })\r\nexport class OrderListComponent implements OnInit {\r\n @Input('patient') patient: any;\r\n @ViewChild(\"DxList\", {static: false }) list: DxListComponent;\r\n listData: any;\r\n currentOrder: any;\r\n reportOpened: boolean;\r\n differ: any;\r\n valueToSelect: string;\r\n\r\n constructor(private orderControllerService: OrderControllerService,\r\n private appStateService: ApplicationStateService,\r\n protected router: Router,\r\n differs: IterableDiffers) {\r\n const navigation = this.router.getCurrentNavigation();\r\n if (navigation.extras.state) {\r\n const state = navigation.extras.state as { data: string };\r\n this.valueToSelect = state.data;\r\n }\r\n if (!appStateService.getIsMobileResolution()) {\r\n $(document).ready(\r\n () => {\r\n this.resizeContent();\r\n\r\n $(window).resize(function () {\r\n this.resizeContent();\r\n });\r\n });\r\n }\r\n this.differ = differs.find([]).create(null);\r\n }\r\n\r\n ngDoCheck() {\r\n const change = this.differ.diff(this.listData._items);\r\n if (change && this.valueToSelect) {\r\n this.selectRequiredValue(change.collection.findIndex(this.findValueInCollection.bind(this)));\r\n }\r\n }\r\n\r\n findValueInCollection(element, index, array) {\r\n if (element.AccessionNumber === this.valueToSelect) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n resizeContent(): void {\r\n var height = $(window).height() * 80 / 100;\r\n $('#OrderList').height(height);\r\n }\r\n\r\n ngOnInit(): void {\r\n var me = this;\r\n me.listData = new DataSource({\r\n store: new CustomStore({\r\n load: function (loadOptions: any) {\r\n if (loadOptions.searchValue == null) {\r\n loadOptions.searchValue = '';\r\n }\r\n return me.orderControllerService.getReferrerOrdersByPatient(me.patient.Id, loadOptions.searchValue).toPromise().then((data: any) => {\r\n return {\r\n data: data\r\n }\r\n });\r\n }\r\n })\r\n });\r\n }\r\n\r\n convertDate(value: any): string {\r\n var dateValue = new Date(value);\r\n return dateValue.toLocaleDateString();\r\n }\r\n\r\n selectRequiredValue(indexToSelect) {\r\n this.list.instance.selectItem(indexToSelect);\r\n }\r\n\r\n getOrderDetails(e) {\r\n this.currentOrder = e.addedItems[0];\r\n }\r\n}","import { Component } from '@angular/core';\r\n\r\n\r\n\r\n@Component({ selector: 'patient-details', templateUrl: './patient.details.component.html' })\r\nexport class PatientDetailsComponent{}","import { Injectable } from '@angular/core';\r\nimport {\r\n Router, Resolve,\r\n RouterStateSnapshot,\r\n ActivatedRouteSnapshot\r\n} from '@angular/router';\r\nimport { Observable, of, EMPTY } from 'rxjs';\r\nimport { mergeMap, take } from 'rxjs/operators';\r\nimport { PatientDetails } from '../_models/patient.details';\r\nimport { PatientControllerService } from '../_services/patient.controller.service';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PatientDetailsResolverService implements Resolve {\r\n constructor(private router: Router,\r\n private patientControllerService: PatientControllerService) { }\r\n\r\n resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable {\r\n let id = route.paramMap.get('id');\r\n\r\n return this.patientControllerService.getPatientById(id).pipe(\r\n take(1),\r\n mergeMap(patient => {\r\n if (patient) {\r\n return of(patient);\r\n } else { // id not found\r\n this.router.navigate(['/grid']);\r\n return EMPTY;\r\n }\r\n })\r\n );\r\n }\r\n}","import { Component } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { PatientInfoComponent } from './patient.info.component';\r\nimport { PatientControllerService } from '../../_services/patient.controller.service';\r\nimport { ObjectHelperService } from '../../_helpers/object.helper.service';\r\n\r\n@Component({\r\n selector: 'mobile-patient-info',\r\n templateUrl: 'mobile.patient.info.component.html'\r\n})\r\nexport class MobilePatientInfoComponent extends PatientInfoComponent {\r\n constructor(route: ActivatedRoute,\r\n patientControllerService: PatientControllerService,\r\n objectHelperService: ObjectHelperService) {\r\n super(route, patientControllerService, objectHelperService);\r\n }\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { PatientControllerService } from '../../_services/patient.controller.service';\r\nimport { PatientDetails } from '../../_models/patient.details';\r\nimport { ObjectHelperService } from '../../_helpers/object.helper.service';\r\n\r\n\r\n@Component({ selector: 'patient-info', templateUrl: 'patient.info.component.html' })\r\nexport class PatientInfoComponent implements OnInit {\r\n patient: PatientDetails;\r\n patientAge: number;\r\n uniViewLink: string;\r\n now: Date = new Date();\r\n gender = {\r\n 0: 'Female',\r\n 1: 'Male'\r\n };\r\n\r\n constructor(private route: ActivatedRoute,\r\n private patientControllerService: PatientControllerService,\r\n private objectHelperService: ObjectHelperService) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.route.data.subscribe((data: { patient: PatientDetails }) => {\r\n \r\n if (data && !this.objectHelperService.isObjectEmpty(data)) {\r\n this.patient = data.patient;\r\n this.calculateAge(this.patient.Birthday);\r\n }\r\n });\r\n this.patientControllerService.getPatientExamLink(this.patient.Id).subscribe(res => {\r\n this.uniViewLink = res.toString();\r\n });\r\n }\r\n\r\n private calculateAge(dateOfBirth: Date): void {\r\n const birthday = new Date(dateOfBirth);\r\n let age = this.now.getFullYear() - birthday.getFullYear();\r\n const m = this.now.getMonth() - birthday.getMonth();\r\n if (m < 0 || (m === 0 && this.now.getDate() < birthday.getDate())) {\r\n age--;\r\n }\r\n this.patientAge = age;\r\n }\r\n\r\n convertDate(value: any): string {\r\n var dateValue = new Date(value);\r\n return dateValue.toLocaleDateString();\r\n }\r\n\r\n openUniview() {\r\n window.open(this.uniViewLink);\r\n }\r\n}","export * from './order.popup.component';","import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { OrderPopupService } from './order.popup.service';\r\nimport { ApplicationStateService } from '../../../environments/application.state.service';\r\n\r\n@Component({\r\n selector: 'order-popup',\r\n templateUrl: './order.popup.component.html'\r\n})\r\n\r\nexport class OrderPopupComponent implements OnInit {\r\n @Input('orderPopupVisible') popupVisible: boolean;\r\n @Output() messageEvent = new EventEmitter();\r\n searchForm: FormGroup;\r\n now: Date = new Date();\r\n\r\n constructor(private formBuilder: FormBuilder,\r\n private data: OrderPopupService,\r\n private router: Router,\r\n private applicationStateService: ApplicationStateService) {\r\n this.popupVisible = false;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.searchForm = this.formBuilder.group({\r\n startDate: [this.now, Validators.required],\r\n endDate: [this.now, Validators.required],\r\n patientLastName: ['']\r\n });\r\n }\r\n\r\n get formControls() {\r\n return this.searchForm.controls;\r\n }\r\n\r\n widthCalculate() {\r\n return this.applicationStateService.getIsMobileResolution() ? window.innerWidth / 1.4 : 400;\r\n }\r\n\r\n cancel() {\r\n this.messageEvent.emit(false);\r\n }\r\n\r\n onSubmit() {\r\n var sendSearchOptions = {\r\n startDate: this.formControls.startDate.value,\r\n endDate: this.formControls.endDate.value,\r\n patientLastName: this.formControls.patientLastName.value\r\n };\r\n\r\n this.router.navigate(['/home/grid', { type: 'orders' }]);\r\n this.data.startSearchByOrder(sendSearchOptions);\r\n this.messageEvent.emit(false);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class OrderPopupService {\r\n private dataSource = new BehaviorSubject(new Object());\r\n currentData = this.dataSource.asObservable();\r\n\r\n startSearchByOrder(data) {\r\n this.dataSource.next(data);\r\n }\r\n}","export * from './patient.popup.component';","import { Component, Input, Output, EventEmitter, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators, FormsModule } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { PatientPopupService } from './patient.popup.service';\r\nimport { ApplicationStateService } from '../../../environments/application.state.service';\r\n\r\n@Component({\r\n selector: 'patient-popup',\r\n templateUrl: './patient.popup.component.html'\r\n})\r\n\r\nexport class PatientPopupComponent implements OnInit {\r\n @Input('patientPopupVisible') popupVisible: boolean;\r\n @Output() messageEvent = new EventEmitter();\r\n searchForm: FormGroup;\r\n now: Date = new Date();\r\n\r\n constructor(private formBuilder: FormBuilder,\r\n private data: PatientPopupService,\r\n private router: Router,\r\n private applicationStateService: ApplicationStateService) {\r\n this.popupVisible = false;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.searchForm = this.formBuilder.group({\r\n patientLastName: [''],\r\n patientFirstName: [''],\r\n medicalRecordNumber: [''],\r\n birthday: [null]\r\n });\r\n }\r\n\r\n get formControls() {\r\n return this.searchForm.controls;\r\n }\r\n\r\n cancel() {\r\n this.messageEvent.emit(false);\r\n }\r\n\r\n widthCalculate() {\r\n return this.applicationStateService.getIsMobileResolution() ? window.innerWidth / 1.4 : 400;\r\n }\r\n\r\n onSubmit() {\r\n var sendSearchOptions = {\r\n patientLastName: this.formControls.patientLastName.value,\r\n patientFirstName: this.formControls.patientFirstName.value,\r\n medicalRecordNumber: this.formControls.medicalRecordNumber.value,\r\n birthday: this.formControls.birthday.value != null && this.formControls.birthday.value != '' ? this.formControls.birthday.value : null,\r\n };\r\n this.formControls.birthday.setValue(null);\r\n this.router.navigate(['/home/grid', { type: 'patients' }]);\r\n this.data.startSearchByPatient(sendSearchOptions);\r\n this.messageEvent.emit(false);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class PatientPopupService {\r\n private dataSource = new BehaviorSubject(new Object());\r\n currentData = this.dataSource.asObservable();\r\n\r\n startSearchByPatient(data) {\r\n this.dataSource.next(data);\r\n }\r\n}","export * from './profile.component';","import { Component } from '@angular/core';\r\nimport { ProfileService } from \"./profile.service\";\r\nimport { LoginService } from '../auth/login/login.service';\r\n\r\n@Component({ selector: 'profile', templateUrl: 'profile.component.html' })\r\nexport class ProfileComponent {\r\n username = '';\r\n logout = \"Logout\";\r\n profileOptions = [this.logout];\r\n\r\n constructor(private profileService: ProfileService,\r\n private loginService: LoginService) {\r\n this.profileService.getUsername().subscribe(res => this.username = res.toString());\r\n }\r\n\r\n onItemClick(e) {\r\n if (e.itemData == this.logout) {\r\n this.loginService.logout();\r\n }\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ProfileService {\r\n private profileController = 'api/Profile';\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getUsername() {\r\n return this.http.get(this.profileController + '/GetUserName');\r\n }\r\n}","export * from './search.bar.component';","import { Component } from '@angular/core';\r\nimport { PatientPopupService } from '../popups/patientPopup/patient.popup.service';\r\nimport { SearchBarComponent } from './search.bar.component';\r\nimport { FormBuilder } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({ selector: 'mobile-search-bar', templateUrl: 'mobile.search.bar.component.html' })\r\nexport class MobileSearchBarComponent extends SearchBarComponent {\r\n constructor(patientPopupService: PatientPopupService,\r\n formBuilder: FormBuilder,\r\n router: Router) {\r\n super(patientPopupService, formBuilder, router);\r\n }\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { PatientPopupService } from '../popups/patientPopup/patient.popup.service';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({ selector: 'search-bar', templateUrl: 'search.bar.component.html' })\r\nexport class SearchBarComponent implements OnInit {\r\n searchForm: FormGroup;\r\n\r\n constructor(private patientPopupService: PatientPopupService,\r\n private formBuilder: FormBuilder,\r\n private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n this.searchForm = this.formBuilder.group({\r\n patientFirstName: [''],\r\n patientLastName: ['']\r\n }, {validator: this.emptySearchControlsValidation('patientFirstName', 'patientLastName')});\r\n }\r\n\r\n get formControls() {\r\n return this.searchForm.controls;\r\n }\r\n\r\n onInitialized(e) {\r\n e.component.registerKeyHandler(\"enter\", ea => {\r\n console.log(ea); \r\n this.onSubmit(e);\r\n });\r\n } \r\n\r\n onSubmit(button) {\r\n if (this.searchForm.invalid) {\r\n return;\r\n }\r\n var sendSearchOptions = {\r\n patientFirstName: this.formControls.patientFirstName.value ? this.formControls.patientFirstName.value : '',\r\n patientLastName: this.formControls.patientLastName.value ? this.formControls.patientLastName.value : ''\r\n };\r\n\r\n this.router.navigate(['/home/grid', { type: 'patients' }]);\r\n this.patientPopupService.startSearchByPatient(sendSearchOptions);\r\n this.dropFromValues();\r\n button.currentTarget.blur();\r\n }\r\n\r\n emptySearchControlsValidation(firstNameKey: string, lastNameKey: string) {\r\n return (group: FormGroup): { [key: string]: any } => {\r\n let firstName = group.controls[firstNameKey];\r\n let lastName = group.controls[lastNameKey];\r\n\r\n if (firstName.value.length < 2 && lastName.value.length < 2) {\r\n return {\r\n emptySearchControl: true\r\n }\r\n }\r\n }\r\n }\r\n\r\n dropFromValues() {\r\n this.formControls.patientFirstName.setValue('');\r\n this.formControls.patientLastName.setValue('');\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class SearchBarService {\r\n private dataSource = new BehaviorSubject(new Object());\r\n currentData = this.dataSource.asObservable();\r\n\r\n startPatientsSearch(searchQuery) {\r\n this.dataSource.next(searchQuery);\r\n }\r\n}","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApplicationStateService {\r\n private isMobileResolution: boolean;\r\n\r\n constructor() {\r\n if (window.innerWidth < 768) {\r\n this.isMobileResolution = true;\r\n } else {\r\n this.isMobileResolution = false;\r\n }\r\n }\r\n\r\n public getIsMobileResolution(): boolean {\r\n return this.isMobileResolution;\r\n }\r\n}","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n"],"sourceRoot":""}