{"version":3,"sources":["/./src/app/admin/admin-panel.component.html","/./src/app/admin/create-user.component.html","/./src/app/admin/layover-form.component.html","/./src/app/admin/layover-management.component.html","/./src/app/app.component.html","/./src/app/common/autocomplete/autocomplete.component.html","/./src/app/common/checkbox/checkbox.component.html","/./src/app/common/dropdown/select.component.html","/./src/app/common/notifications/notification.component.html","/./src/app/common/part-info/part-info.component.html","/./src/app/common/peoplePicker/people-picker.component.html","/./src/app/common/radioInput/radio-ng-model.html","/./src/app/header/header.component.html","/./src/app/home/home.component.html","/./src/app/home/home.container.html","/./src/app/nav-menu/tabs/tab-group.component.html","/./src/app/overview/overview.component.html","/./src/app/overview/overview.container.html","/./src/app/preferences/user-preferences.html","/./src/app/rectification/rectification.component.html","/./src/app/rectification/rectification.container.html","/./src/app/steps/steps.component.html","/./src/app/steps/steps.container.html","/./src/app/what-where-2/what-where.component.html","/./src/app/what-where-2/what-where.container.html","/./src/$_lazy_route_resource lazy namespace object","/./src/app/admin/admin-panel.component.ts","/./src/app/admin/create-user.component.ts","/./src/app/admin/layover-form.component.ts","/./src/app/admin/layover-management.component.ts","/./src/app/app-material.module.ts","/./src/app/app-routing.module.ts","/./src/app/app.component.ts","/./src/app/app.module.ts","/./src/app/auth-guard.service.ts","/./src/app/authcallback/authcallback.ts","/./src/app/common/autocomplete/autocomplete.component.ts","/./src/app/common/checkbox/checkbox.component.ts","/./src/app/common/dialogs/dialogs.component.ts","/./src/app/common/dialogs/new-ticket.component.ts","/./src/app/common/dialogs/newJC.component.ts","/./src/app/common/dropdown/select.component.ts","/./src/app/common/notifications/notification.component.ts","/./src/app/common/part-info/part-info.component.ts","/./src/app/common/peoplePicker/people-picker.component.ts","/./src/app/common/radioInput/radio-ng-model.ts","/./src/app/common/spinner/spinner.ts","/./src/app/forms.service.ts","/./src/app/header/header.component.ts","/./src/app/home/home.component.ts","/./src/app/home/home.container.ts","/./src/app/login/login.component.ts","/./src/app/logout/logout.ts","/./src/app/nav-menu/tabs/tab-group.component.ts","/./src/app/nonRoutineItem.service.ts","/./src/app/overview/overview.component.ts","/./src/app/overview/overview.container.ts","/./src/app/overview/overview.presenter.ts","/./src/app/preferences/user-preferences.ts","/./src/app/rectification/html-templates.service.ts","/./src/app/rectification/rectification.component.ts","/./src/app/rectification/rectification.container.ts","/./src/app/steps/steps.component.ts","/./src/app/steps/steps.container.ts","/./src/app/what-where-2/what-where.component.ts","/./src/app/what-where-2/what-where.container.ts","/./src/app/what-where-2/what-where.presenter.ts","/./src/environments/environment.ts","/./src/main.ts"],"names":[],"mappings":"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","file":"main-es2015.js","sourcesContent":["module.exports = \"\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n Added users:
\\r\\n \\r\\n \\r\\n Name: | \\r\\n Email: | \\r\\n Stations: | \\r\\n Delete | \\r\\n
\\r\\n \\r\\n \\r\\n {{item.name}}\\r\\n \\r\\n | \\r\\n \\r\\n {{item.email}}\\r\\n | \\r\\n \\r\\n {{returnStations(item.userWorkStation)}}\\r\\n\\r\\n | \\r\\n \\r\\n Delete\\r\\n | \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\nAdd user\\r\\n \\r\\n\\r\\n\"","module.exports = \"\\r\\n\\r\\n\"","module.exports = \"Create layover
\\r\\nView layover
\\r\\n\\r\\n\\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 Layovers:
\\r\\n \\r\\n \\r\\n Sales Order | \\r\\n Bay | \\r\\n Customer | \\r\\n Layover type | \\r\\n | \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{item.salesOrder}}\\r\\n | \\r\\n \\r\\n {{item.bay}}\\r\\n | \\r\\n \\r\\n {{item.customer}}\\r\\n | \\r\\n \\r\\n {{item.layoverType}}\\r\\n | \\r\\n \\r\\n \\r\\n \\r\\n | \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
Create layover \\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\"","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\"","module.exports = \"\\r\\n {{option.name}}\\r\\n\\r\\n\"","module.exports = \"\\r\\n \\r\\n \\r\\n {{opt.name }}\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n {{opt.name}}\\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 {{alertMessage}}\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n {{alertMessage}}\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\"","module.exports = \"\\r\\n\"","module.exports = \"\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\"","module.exports = \"\\r\\n\\r\\n\\r\\n \\r\\n {{option.name}}\\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\"","module.exports = \"\\r\\n \\r\\n
\\r\\n\\r\\n
Create Non-Routine Item\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
Leading work station:{{item.leadingWorkStation}}
\\r\\n
\\r\\n Involved work stations:\\r\\n {{item.involvedWorkStation}}\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\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 \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\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\"","module.exports = \"\\r\\n\\r\\n\\r\\n\"","module.exports = \"\\r\\n\\r\\n
Settings
\\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 Something went wrong,please try again!\\r\\n
\\r\\n\"","module.exports = \"\\r\\n\\r\\n\\r\\n\"","module.exports = \"\\r\\n
\\r\\n
Additional Operations
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n Something went wrong,please try again!\\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
\\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\"","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 = \"./src/$$_lazy_route_resource lazy recursive\";","import { Component, OnInit, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';\r\nimport { FixedSizeVirtualScrollStrategy, VIRTUAL_SCROLL_STRATEGY } from '@angular/cdk/scrolling';\r\nimport { Subscription, Observable } from 'rxjs';\r\nimport { NonRoutineItemService } from '../nonRoutineItem.service';\r\nimport { User} from '../models';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { DialogDeleteComponent } from '../common/dialogs/dialogs.component';\r\n\r\nexport class CustomVirtualScrollStrategy extends FixedSizeVirtualScrollStrategy {\r\n constructor() {\r\n super(0, 0, 0);\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'admin-panel',\r\n templateUrl: 'admin-panel.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [{ provide: VIRTUAL_SCROLL_STRATEGY, useClass: CustomVirtualScrollStrategy }]\r\n})\r\n\r\nexport class AdminPanelComponent implements OnInit {\r\n user;\r\n vUsers;\r\n usersData = [];\r\n allUsersSubscr: Subscription;\r\n constructor(private api: NonRoutineItemService, public dialog: MatDialog, private cdRef: ChangeDetectorRef) { }\r\n \r\n returnStations(arr) {\r\n \r\n let stations=[];\r\n arr.forEach(item => {\r\n stations.push(item.workStation.name)\r\n })\r\n\r\n\r\n return stations.join(\", \")\r\n }\r\n\r\n deleteUser(id:number,e,i) {\r\n e.preventDefault();\r\n\r\n\r\n const dialogRef = this.dialog.open(DialogDeleteComponent, {\r\n width: '350px',\r\n });\r\n dialogRef.afterClosed().subscribe(result => {\r\n \r\n if (result) {\r\n this.usersData.splice(i, 1);\r\n this.usersData = [...this.usersData]\r\n this.cdRef.detectChanges();\r\n this.api.deleteUser(Number(id)).subscribe();\r\n }\r\n });\r\n }\r\n getSelectedUser(user) {\r\n this.user = user\r\n\r\n\r\n }\r\n \r\n \r\n ngOnInit() {\r\n this.allUsersSubscr = this.api.getUser().subscribe(result => {\r\n if (result) {\r\n this.usersData = result;\r\n \r\n this.cdRef.detectChanges();\r\n \r\n }\r\n });\r\n\r\n \r\n\r\n }\r\n ngOnDestroy() {\r\n this.allUsersSubscr.unsubscribe();\r\n }\r\n \r\n}\r\n","import { Component, OnInit, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';\r\nimport { NonRoutineItemService } from '../nonRoutineItem.service';\r\nimport { Subscription, Observable } from 'rxjs';\r\nimport { FormGroup, FormControl, FormArray, Validators, FormBuilder } from '@angular/forms';\r\nimport { WorkStation, UserWorkStation, User } from '../models';\r\nimport { Router } from '@angular/router';\r\nimport { ActivatedRoute } from \"@angular/router\";\r\n@Component({\r\n selector: 'create-user',\r\n templateUrl: 'create-user.component.html'\r\n\r\n})\r\n\r\n\r\nexport class CreateUserComponent {\r\n constructor(private api: NonRoutineItemService, private fb: FormBuilder, private router: Router, private route: ActivatedRoute) {\r\n\r\n this.userData = this.fb.group({\r\n name: new FormControl('', Validators.required),\r\n email: new FormControl('', Validators.required),\r\n id: new FormControl(),\r\n userWorkStation: new FormControl('', Validators.required),\r\n metricSystem: new FormControl(),\r\n defManAdmin: new FormControl(),\r\n })\r\n }\r\n submitted: boolean;\r\n user;\r\n isCreate: boolean;\r\n workStationsArr: UserWorkStation[]\r\n selectedUser;\r\n userData: FormGroup;\r\n createSubsc: Subscription;\r\n updateSubsc: Subscription\r\n userSubscr: Subscription;\r\n show: boolean = false;\r\n adminRole;\r\n warning=null;\r\n userCheckSubscr: Subscription;\r\n stationsData$: Observable = this.api.getWorkStation();\r\n metric = [{ id: 1, name: 'Millimeters ', value: true }, { id: 2, name: 'Inches', value: false }]\r\n selectedMetric;\r\n routeParamsSubsc: Subscription;\r\n public role = [\r\n { id: 'yes', name: 'Yes', value: true, radioGroup: 'roleOptions' },\r\n { id: 'no', name: 'No', value: false, radioGroup: 'roleOptions' },\r\n \r\n ];\r\n getSelectedUser(message) {\r\n\r\n this.selectedUser = message\r\n \r\n }\r\n saveInfo() {\r\n\r\n }\r\n joinArrId(arr) {\r\n if (arr) {\r\n let stations = [];\r\n arr.forEach(item => {\r\n if (item.workStation) {\r\n stations.push(item.workStation.id)\r\n } else {\r\n stations.push(item.workStationId)\r\n \r\n }\r\n \r\n })\r\n \r\n return stations\r\n \r\n }\r\n }\r\n getRole(message) {\r\n if (message.id == 'yes' && message.checked) {\r\n this.userData.controls['defManAdmin'].setValue(true)\r\n }\r\n if (message.id == 'no' && message.checked) {\r\n this.userData.controls['defManAdmin'].setValue(false)\r\n }\r\n \r\n }\r\n getMetric(message) {\r\n if (message.value) {\r\n this.userData.controls['metricSystem'].setValue(true)\r\n } else {\r\n this.userData.controls['metricSystem'].setValue(false)\r\n }\r\n }\r\n saveUser(data: FormGroup) {\r\n this.submitted = true;\r\n if (data.valid) {\r\n let dataToSend: User = data.value;\r\n this.updateSubsc = this.api.updateUser(dataToSend).subscribe(result => {\r\n \r\n this.router.navigate(['/admin']);\r\n }, err => {\r\n console.log(err)\r\n \r\n });\r\n }\r\n \r\n \r\n \r\n }\r\n saveMultiple(message) {\r\n let workStations: UserWorkStation[]=[];\r\n message.forEach((item,index) => {\r\n workStations.push({ userId: this.userData.controls['id'].value , workStationId: message[index] })\r\n })\r\n this.userData.controls['userWorkStation'].setValue(workStations)\r\n }\r\n\r\n\r\n cancelUser(e) {\r\n e.preventDefault();\r\n if (!this.isCreate) {\r\n this.router.navigate(['/admin']);\r\n } else {\r\n if (this.userData.controls[\"id\"].value) {\r\n this.api.deleteUser(Number(this.userData.controls[\"id\"].value)).subscribe(result => {\r\n this.router.navigate(['/admin']);\r\n });\r\n } else {\r\n this.router.navigate(['/admin']);\r\n }\r\n }\r\n }\r\n addUser(e) {\r\n e.preventDefault();\r\n\r\n this.userCheckSubscr = this.api.getExistingUser(this.selectedUser.userPrincipalName).subscribe(result => {\r\n if (result.length == 0) {\r\n this.warning = null;\r\n if (this.selectedUser.displayName && this.selectedUser.userPrincipalName) {\r\n this.createSubsc = this.api.createUser().subscribe(result => {\r\n if (result) {\r\n\r\n this.userData.controls['id'].setValue(result.id)\r\n this.userData.controls['name'].setValue(this.selectedUser.displayName)\r\n this.userData.controls['email'].setValue(this.selectedUser.userPrincipalName)\r\n this.show = true\r\n }\r\n })\r\n }\r\n } else {\r\n this.warning = \"User already exists!\";\r\n }\r\n \r\n })\r\n \r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.routeParamsSubsc = this.route.params.subscribe(params => {\r\n if (params.id) {\r\n\r\n this.isCreate = false;\r\n this.userSubscr = this.api.getUserById(Number(params.id)).subscribe(result => {\r\n if (result && result[0]) {\r\n this.userData.patchValue(result[0])\r\n if (this.userData.controls['defManAdmin'].value) {\r\n this.adminRole=\"Yes\"\r\n } else {\r\n this.adminRole = \"No\"\r\n }\r\n if (this.userData.controls['metricSystem'].value) {\r\n this.selectedMetric = { id: 1, name: 'Millimeters', value: true }\r\n } else {\r\n this.selectedMetric ={ id: 2, name: 'Inches', value: false }\r\n }\r\n }\r\n \r\n });\r\n this.show = true;\r\n \r\n\r\n } else {\r\n this.isCreate = true;\r\n }\r\n });\r\n }\r\n ngOnDestroy() {\r\n if (this.createSubsc) {\r\n this.createSubsc.unsubscribe();\r\n }\r\n if (this.userSubscr) {\r\n this.userSubscr.unsubscribe();\r\n }\r\n if (this.updateSubsc) {\r\n this.updateSubsc.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { FormGroup, NgForm, FormArray, FormBuilder, FormControl, Validators } from '@angular/forms';\r\nimport { Component, ViewChild } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { ActivatedRoute } from \"@angular/router\";\r\nimport { Subscription } from 'rxjs';\r\nimport { NonRoutineItemService } from '../nonRoutineItem.service';\r\nimport { FormsService} from '../forms.service';\r\nimport { EventModel } from '../../app/models';\r\nimport { NativeDateAdapter } from '@angular/material';\r\nimport { MatDateFormats } from '@angular/material/core';\r\nimport { DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';\r\n\r\n\r\nexport class AppDateAdapter extends NativeDateAdapter {\r\n\r\n format(date: Date, displayFormat: Object): string {\r\n if (displayFormat === 'input') {\r\n let day: string = date.getDate().toString();\r\n day = +day < 10 ? '0' + day : day;\r\n let month: string = (date.getMonth() + 1).toString();\r\n month = +month < 10 ? '0' + month : month;\r\n let year = date.getFullYear();\r\n return `${day}.${month}.${year}`;\r\n }\r\n return date.toDateString();\r\n }\r\n}\r\nexport const APP_DATE_FORMATS: MatDateFormats = {\r\n parse: {\r\n dateInput: { month: 'short', year: 'numeric', day: 'numeric' },\r\n },\r\n display: {\r\n dateInput: 'input',\r\n monthYearLabel: { year: 'numeric', month: 'numeric' },\r\n dateA11yLabel: {\r\n year: 'numeric', month: 'long', day: 'numeric'\r\n },\r\n monthYearA11yLabel: { year: 'numeric', month: 'long' },\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'layover-form',\r\n templateUrl: 'layover-form.component.html',\r\n providers: [\r\n { provide: DateAdapter, useClass: AppDateAdapter },\r\n { provide: MAT_DATE_FORMATS, useValue: APP_DATE_FORMATS }\r\n ]\r\n})\r\n\r\nexport class LayoverFormComponent {\r\n\r\n layoverData: FormGroup;\r\n @ViewChild('f', { static: false }) public form: NgForm;\r\n id;\r\n alertMessage: string;\r\n model;\r\n isSuccess: boolean;\r\n showNotification: boolean = false;\r\n isCreate: boolean;\r\n submitted: boolean = false;\r\n routeParamsSubsc: Subscription;\r\n eventSubscr: Subscription;\r\n tatSubscr: Subscription;\r\n startSubscr: Subscription;\r\n customerWPIssueDate;\r\n layoverStartDate;\r\n layoverEndDate;\r\n tat;\r\n\r\n\r\n constructor(private fb: FormBuilder, private router: Router, private route: ActivatedRoute, private api: NonRoutineItemService, private fservice: FormsService) {\r\n this.layoverData = this.fb.group({\r\n id: new FormControl(),\r\n aircraft: new FormControl(),\r\n aircraftId: new FormControl('', Validators.required),\r\n aipcRevision: new FormControl(),\r\n ammRevision: new FormControl(),\r\n bay: new FormControl(),\r\n customer: new FormControl(),\r\n customerWP: new FormControl(),\r\n customerWPIssueDate: new FormControl(),\r\n espmRevision: new FormControl(),\r\n layoverStartDate: new FormControl('', Validators.required),\r\n layoverTAT: new FormControl(),\r\n layoverType: new FormControl(),\r\n mpdRevision: new FormControl(),\r\n msRevision: new FormControl(),\r\n msTemporaryRevision: new FormControl(),\r\n ntmRevision: new FormControl(),\r\n plant: new FormControl(),\r\n salesOrder: new FormControl('', Validators.required),\r\n srmRevision: new FormControl(),\r\n tsmRevision: new FormControl(),\r\n layoverEndDate: new FormControl({value:'',disabled:true}, Validators.required),\r\n originatingServiceOrder: new FormControl('', Validators.required),\r\n cri: new FormControl('', Validators.required)\r\n })\r\n\r\n }\r\n getAircraft(message) {\r\n // this.layoverData.controls['aircraft'].markAsDirty();\r\n this.layoverData.controls['aircraft'].setValue(message)\r\n this.layoverData.controls['aircraftId'].setValue(message.id)\r\n this.layoverData.controls['aircraftId'].markAsDirty();\r\n \r\n }\r\n\r\n dateSelected(date: string, fcName: string) {\r\n if (fcName == 'customerWPIssueDate') {\r\n this.customerWPIssueDate = date;\r\n }\r\n if (fcName == 'layoverStartDate') {\r\n this.layoverStartDate = date\r\n \r\n }\r\n //if (fcName == 'layoverEndDate') {\r\n // this.layoverEndDate = date\r\n //}\r\n\r\n }\r\n cancel() {\r\n \r\n this.router.navigate(['/layover-management']);\r\n \r\n }\r\n convertStrintToDate(dateString) {\r\n let stringArr = dateString.split(\".\")\r\n let convertedDate = stringArr[2] + \"-\" + stringArr[1] + \"-\" + stringArr[0] +\"T00:00:00.000Z\"\r\n return convertedDate;\r\n\r\n }\r\n getDateWithoutH(dateString: string) {\r\n\r\n let date = new Date(dateString);\r\n let day = this.format_two_digits(date.getDate());\r\n let month = this.format_two_digits(date.getMonth() + 1);\r\n let year = date.getFullYear();\r\n\r\n\r\n let transformedDate = day + '.' + month + '.' + year\r\n\r\n return transformedDate;\r\n }\r\n format_two_digits(n) {\r\n return n < 10 ? '0' + n : n;\r\n }\r\n onSubmit(layoverData: FormGroup) {\r\n this.submitted = true;\r\n if (layoverData.dirty && this.isCreate && layoverData.valid) {\r\n \r\n let dataToSend: EventModel = this.fservice.submitChangedData(layoverData);\r\n\r\n if (dataToSend.customerWPIssueDate && this.customerWPIssueDate) {\r\n dataToSend.customerWPIssueDate = this.convertStrintToDate(this.customerWPIssueDate)\r\n }\r\n if (dataToSend.layoverStartDate && this.layoverStartDate) {\r\n dataToSend.layoverStartDate = this.convertStrintToDate(this.layoverStartDate)\r\n }\r\n if (dataToSend.layoverEndDate && this.layoverEndDate) {\r\n dataToSend.layoverEndDate = this.convertStrintToDate(this.layoverEndDate)\r\n }\r\n this.api.createEvent(dataToSend).subscribe(result => {\r\n this.alertMessage = \"Successfully created layover!\"\r\n this.isSuccess = true;\r\n this.showNotification = true;\r\n this.submitted = false;\r\n }, err => {\r\n this.alertMessage = \"Something whent wrong,please try again!\"\r\n this.isSuccess = false;\r\n this.showNotification = true;\r\n });\r\n \r\n }\r\n if (layoverData.dirty && !this.isCreate && layoverData.valid) {\r\n layoverData.controls['id'].markAsDirty();\r\n let dataToSend: EventModel = this.fservice.submitChangedData(layoverData);\r\n if (dataToSend.customerWPIssueDate && this.customerWPIssueDate) {\r\n dataToSend.customerWPIssueDate = this.convertStrintToDate(this.customerWPIssueDate)\r\n }\r\n if (dataToSend.layoverStartDate && this.layoverStartDate) {\r\n dataToSend.layoverStartDate = this.convertStrintToDate(this.layoverStartDate)\r\n }\r\n if (dataToSend.layoverEndDate && this.layoverEndDate) {\r\n dataToSend.layoverEndDate = this.convertStrintToDate(this.layoverEndDate)\r\n }\r\n this.api.updateEvent(dataToSend).subscribe(\r\n result => {\r\n this.alertMessage = \"Successfully saved changes!\"\r\n this.isSuccess = true;\r\n this.showNotification = true;\r\n this.submitted = false;\r\n \r\n },\r\n err => {\r\n this.alertMessage = \"Something whent wrong,please try again!\"\r\n this.isSuccess = false;\r\n this.showNotification = true;\r\n });\r\n }\r\n\r\n }\r\n \r\n ngOnInit() {\r\n \r\n this.routeParamsSubsc = this.route.params.subscribe(params => {\r\n if (params.id) {\r\n\r\n this.isCreate = false;\r\n \r\n this.eventSubscr = this.api.getEventById(Number(params.id)).subscribe(result => {\r\n if (result) {\r\n \r\n this.layoverData.patchValue(result[0])\r\n if (this.layoverData.controls['aircraft'].value) {\r\n this.layoverData.controls['aircraftId'].setValue(this.layoverData.controls['aircraft'].value.id)\r\n }\r\n //if (this.layoverData.controls['customerWPIssueDate'].value) {\r\n // this.layoverData.controls['customerWPIssueDate'].setValue(this.getDateWithoutH(this.layoverData.controls['customerWPIssueDate'].value))\r\n //}\r\n //if (this.layoverData.controls['layoverStartDate'].value) {\r\n // this.layoverData.controls['layoverStartDate'].setValue(this.getDateWithoutH(this.layoverData.controls['layoverStartDate'].value))\r\n //}\r\n //if (this.layoverData.controls['layoverEndDate'].value) {\r\n // this.layoverData.controls['layoverEndDate'].setValue(this.getDateWithoutH(this.layoverData.controls['layoverEndDate'].value))\r\n //}\r\n \r\n \r\n }\r\n })\r\n } else {\r\n this.isCreate = true;\r\n }\r\n \r\n \r\n });\r\n\r\n this.startSubscr = this.layoverData.controls['layoverStartDate'].valueChanges.subscribe(data => {\r\n \r\n if (this.layoverData.controls['layoverStartDate'].value && this.tat) {\r\n let newDate: Date = new Date(this.layoverData.controls['layoverStartDate'].value)\r\n\r\n newDate.setDate(newDate.getDate() + Number(this.tat))\r\n this.layoverEndDate = newDate\r\n\r\n this.layoverData.controls['layoverEndDate'].setValue(this.layoverEndDate)\r\n }\r\n\r\n\r\n });\r\n this.tatSubscr = this.layoverData.controls['layoverTAT'].valueChanges.subscribe(data => {\r\n this.tat = data\r\n \r\n if (this.layoverData.controls['layoverTAT'].value && this.layoverData.controls['layoverStartDate'].value) {\r\n let newDate: Date = new Date(this.layoverData.controls['layoverStartDate'].value)\r\n newDate.setDate(newDate.getDate() + Number(this.tat))\r\n this.layoverEndDate = newDate\r\n this.layoverData.controls['layoverEndDate'].setValue(this.layoverEndDate)\r\n }\r\n\r\n\r\n });\r\n\r\n }\r\n ngOnDestroy() {\r\n this.startSubscr.unsubscribe();\r\n this.tatSubscr.unsubscribe();\r\n this.routeParamsSubsc.unsubscribe();\r\n if (this.eventSubscr) {\r\n this.eventSubscr.unsubscribe();\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, ChangeDetectionStrategy, ChangeDetectorRef, ViewChild } from '@angular/core';\r\nimport { FixedSizeVirtualScrollStrategy, VIRTUAL_SCROLL_STRATEGY } from '@angular/cdk/scrolling';\r\nimport { Subscription } from 'rxjs';\r\nimport {NonRoutineItemService } from '../../app/nonRoutineItem.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { DialogDeleteComponent } from '../common/dialogs/dialogs.component';\r\n\r\nexport class CustomVirtualScrollStrategy extends FixedSizeVirtualScrollStrategy {\r\n constructor() {\r\n super(0, 0, 0);\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'layover-management',\r\n templateUrl: 'layover-management.component.html',\r\n providers: [{ provide: VIRTUAL_SCROLL_STRATEGY, useClass: CustomVirtualScrollStrategy }]\r\n\r\n})\r\n\r\nexport class LayoverManagementComponent{\r\n allLayoversSubscr: Subscription;\r\n excelDataSubscr: Subscription;\r\n constructor(private api: NonRoutineItemService, public dialog: MatDialog, private cdRef: ChangeDetectorRef) {\r\n }\r\n deleteUser(i) { }\r\n \r\n allLayovers = [];\r\n openDialog(e, i, id) {\r\n e.preventDefault();\r\n const dialogRef = this.dialog.open(DialogDeleteComponent, {\r\n width: '350px',\r\n });\r\n dialogRef.afterClosed().subscribe(result => {\r\n if (result) {\r\n this.allLayovers.splice(i, 1);\r\n this.allLayovers = [...this.allLayovers]\r\n this.cdRef.detectChanges();\r\n this.api.deleteEvent(Number(id)).subscribe();\r\n }\r\n });\r\n }\r\n generateExcel(eventId: number) {\r\n \r\n this.excelDataSubscr = this.api.getExcelData(eventId).subscribe(result => {\r\n if (result) {\r\n let sampleArr = this.base64ToArrayBuffer(result);\r\n this.saveByteArray(\"LHT-SAP-Defects\", sampleArr);\r\n \r\n }\r\n })\r\n\r\n }\r\n//Convert byteArrray \r\n base64ToArrayBuffer(base64) {\r\n let binaryString = window.atob(base64);\r\n let binaryLen = binaryString.length;\r\n let bytes = new Uint8Array(binaryLen);\r\n for (let i = 0; i < binaryLen; i++) {\r\n var ascii = binaryString.charCodeAt(i);\r\n bytes[i] = ascii;\r\n }\r\n return bytes;\r\n}\r\n\r\n//Create 'Save as' functionality\r\n saveByteArray(reportName, byte) {\r\n let fileName = reportName + \".xlsx\";\r\n let blob = new Blob([byte]);\r\n if (navigator.appVersion.toString().indexOf('.NET') > 0) {\r\n window.navigator.msSaveOrOpenBlob(blob, fileName);\r\n }\r\n else {\r\n let link = document.createElement('a');\r\n document.body.appendChild(link);\r\n link.href = window.URL.createObjectURL(blob);\r\n link.download = fileName;\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n};\r\n checkActiveDates(startPeriodDate, endPeriodDate) {\r\n\r\n let minDate = new Date(startPeriodDate);\r\n let maxDate = new Date(endPeriodDate);\r\n let currDate = new Date();\r\n if (currDate > minDate && currDate < maxDate) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n\r\n\r\n }\r\n ngOnInit() {\r\n \r\n \r\n this.allLayoversSubscr = this.api.getAllEvents().subscribe(result => {\r\n if (result) {\r\n this.allLayovers = result; \r\n }\r\n })\r\n }\r\n ngOnDestroy() {\r\n if (this.excelDataSubscr) {\r\n this.excelDataSubscr.unsubscribe();\r\n }\r\n this.allLayoversSubscr.unsubscribe();\r\n\r\n\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport {MatStepperModule} from '@angular/material/stepper';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\n\r\n\r\n@NgModule({\r\n \r\n exports: [MatAutocompleteModule,\r\n MatCheckboxModule,\r\n MatCardModule,\r\n MatTabsModule,\r\n MatRadioModule,\r\n MatSelectModule,\r\n MatExpansionModule,\r\n MatInputModule,\r\n MatDialogModule,\r\n MatStepperModule,\r\n MatProgressSpinnerModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule\r\n\r\n ]\r\n})\r\nexport class AppMaterialModule { }\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\n//import { AdalGuard } from 'adal-angular4';\r\nimport {CanDeactivateGuard } from '../app/auth-guard.service';\r\nimport { HomeContainer } from '../app/home/home.container';\r\nimport { TabGroup } from '../app/nav-menu/tabs/tab-group.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { LogoutComponent } from './logout/logout';\r\nimport { AuthCallbackComponent } from '../app/authcallback/authcallback';\r\nimport { AuthGuardService as AdalGuard } from '../app/auth-guard.service';\r\nimport { UserPreferencesComponent} from '../app/preferences/user-preferences';\r\nimport { LayoverManagementComponent } from '../app/admin/layover-management.component';\r\nimport { LayoverFormComponent } from '../app/admin/layover-form.component';\r\nimport { AdminPanelComponent } from '../app/admin/admin-panel.component';\r\nimport {CreateUserComponent } from '../app/admin/create-user.component';\r\nconst routes: Routes = [\r\n {path: '',redirectTo: 'home', pathMatch: 'full',},\r\n { path: 'login', component: LoginComponent },\r\n\r\n { path: 'logout', component: AuthCallbackComponent },\r\n { path: 'settings', component: UserPreferencesComponent, canActivate: [AdalGuard] },\r\n \r\n { path: 'home', component: HomeContainer, canActivate: [AdalGuard] },\r\n { path: 'create', component: TabGroup, canActivate: [AdalGuard], canDeactivate: [CanDeactivateGuard] },\r\n { path: 'view/:id', component: TabGroup, canActivate: [AdalGuard] },\r\n { path: 'auth-callback', component: AuthCallbackComponent },\r\n { path: 'admin', component: AdminPanelComponent, canActivate: [AdalGuard] },\r\n { path: 'layover-management', component: LayoverManagementComponent, canActivate: [AdalGuard] },\r\n { path: 'layover-management/layover-form', component: LayoverFormComponent, canActivate: [AdalGuard] },\r\n { path: 'layover-management/layover-form/:id', component: LayoverFormComponent, canActivate: [AdalGuard] },\r\n { path: 'admin/user-form', component: CreateUserComponent, canActivate: [AdalGuard] },\r\n { path: 'admin/user-form/:id', component: CreateUserComponent, canActivate: [AdalGuard] }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule],\r\n providers: [CanDeactivateGuard]\r\n})\r\nexport class AppRoutingModule { }\r\n\r\n","import { Component } from '@angular/core';\r\nimport { AdalService } from 'adal-angular4';\r\nimport { Router } from '@angular/router';\r\n\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html'\r\n\r\n})\r\nexport class AppComponent{\r\n mainUrl = window.location.origin;\r\n title = 'app';\r\n \r\n\r\n adalConfig= {\r\n tenant: '1e699703-f2ca-4bf1-9057-eb673861d4d6',\r\n clientId: '1103419b-5685-4339-84d6-86ba8699259c',\r\n redirectUri:\r\n this.mainUrl + '/auth-callback',\r\n postLogoutRedirectUri: this.mainUrl + '/logout'\r\n// endpoints: {\r\n// 'WEB_API_URL': this.mainUrl\r\n//}\r\n }\r\n\r\n\r\n constructor(private adal: AdalService) {\r\n this.adal.init(this.adalConfig);\r\n }\r\n ngOnInit() {\r\n\r\n }\r\n ngOnDestroy() {\r\n let storage = window.localStorage\r\n storage.clear();\r\n }\r\n}\r\n\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AppComponent } from './app.component';\r\nimport { HeaderComponent } from './header/header.component';\r\nimport { OverviewComponent } from './overview/overview.component';\r\nimport { OverviewContainer} from './overview/overview.container';\r\nimport { RectificationComponent } from './rectification/rectification.component';\r\nimport { ScrollingModule } from '@angular/cdk/scrolling';\r\nimport { PartInfoComponent } from './common/part-info/part-info.component';\r\nimport { StepContainer } from './steps/steps.container';\r\nimport { StepComponent } from './steps/steps.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport {NotificationComponent } from '../app/common/notifications/notification.component';\r\nimport { TabGroup } from './nav-menu/tabs/tab-group.component';\r\nimport { LayoverManagementComponent } from '../app/admin/layover-management.component';\r\nimport { LayoverFormComponent } from '../app/admin/layover-form.component';\r\nimport { CreateUserComponent } from '../app/admin/create-user.component';\r\nimport { PeoplePickerComponent } from '../app/common/peoplePicker/people-picker.component';\r\nimport { AdminPanelComponent } from '../app/admin/admin-panel.component'; \r\nimport { HomeComponent } from './home/home.component';\r\nimport { HomeContainer } from './home/home.container'\r\n\r\nimport { RadioNgModelExample } from './common/radioInput/radio-ng-model';\r\nimport { AutocompleteComponent } from './common/autocomplete/autocomplete.component';\r\n\r\n\r\n\r\n\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { SelectComponent } from './common/dropdown/select.component';\r\nimport { CheckboxComponent } from './common/checkbox/checkbox.component';\r\nimport {NewJCComponent } from '../app/common/dialogs/newJC.component';\r\nimport { DialogDeleteComponent } from './common/dialogs/dialogs.component';\r\nimport {AppMaterialModule } from './app-material.module';\r\nimport { RectificationContainer } from './rectification/rectification.container';\r\nimport { LoginComponent } from '../app/login/login.component';\r\nimport { FormsService } from '../app/forms.service';\r\nimport { NonRoutineItemService } from '../app/nonRoutineItem.service';\r\nimport { AppRoutingModule } from '../app/app-routing.module';\r\nimport { HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { AuthCallbackComponent } from '../app/authcallback/authcallback';\r\nimport { AdalService, AdalInterceptor } from 'adal-angular4';\r\nimport { AuthGuardService as AdalGuard } from '../app/auth-guard.service';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { HtmlTemplatesService} from '../app/rectification/html-templates.service';\r\nimport { WhatWhereComponent } from '../app/what-where-2/what-where.component';\r\nimport { WhatWhereContainer } from '../app/what-where-2/what-where.container';\r\nimport { LogoutComponent } from '../app/logout/logout';\r\n\r\nimport { SpinnerComponent } from '../app/common/spinner/spinner';\r\nimport { UserPreferencesComponent } from '../app/preferences/user-preferences';\r\n\r\n\r\nimport { NewTicketComponent } from '../app/common/dialogs/new-ticket.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n LayoverManagementComponent,\r\n AdminPanelComponent,\r\n AuthCallbackComponent,\r\n HomeComponent,\r\n PeoplePickerComponent,\r\n HeaderComponent,\r\n HomeContainer,\r\n LoginComponent,\r\n CheckboxComponent,\r\n OverviewComponent,\r\n LayoverFormComponent,\r\n OverviewContainer,\r\n RectificationComponent,\r\n RectificationContainer,\r\n\r\n PartInfoComponent,\r\n LogoutComponent,\r\n CreateUserComponent,\r\n //WhatWhereContainer,\r\n //WhatWhereComponent,\r\n NewTicketComponent,\r\n WhatWhereContainer,\r\n WhatWhereComponent,\r\n SelectComponent,\r\n \r\n TabGroup,\r\n SpinnerComponent,\r\n RadioNgModelExample,\r\n StepComponent,\r\n NotificationComponent,\r\n StepContainer,\r\n AutocompleteComponent,\r\n DialogDeleteComponent,\r\n UserPreferencesComponent,\r\n NewJCComponent\r\n ],\r\n entryComponents: [\r\n DialogDeleteComponent,\r\n NewTicketComponent,\r\n NewJCComponent\r\n ],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }),\r\n HttpClientModule,\r\n ScrollingModule,\r\n AppMaterialModule,\r\n \r\n NgbModule,\r\n\r\n BrowserAnimationsModule,\r\n \r\n \r\n FormsModule,\r\n ReactiveFormsModule,\r\n\r\n AppRoutingModule\r\n\r\n\r\n\r\n ],\r\n providers: [FormsService, NonRoutineItemService, AdalService, HtmlTemplatesService, AdalGuard, { provide: HTTP_INTERCEPTORS, useClass: AdalInterceptor, multi: true }\r\n\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate } from '@angular/router';\r\nimport { AdalService } from 'adal-angular4';\r\nimport { BehaviorSubject, Observable } from 'rxjs';\r\nimport { CanDeactivate } from '@angular/router';\r\n\r\n@Injectable()\r\nexport class AuthGuardService implements CanActivate {\r\n private user = new BehaviorSubject('');\r\n cast = this.user.asObservable();\r\n\r\n updateUser(loggedUser) {\r\n this.user.next(loggedUser)\r\n }\r\n\r\n constructor(public auth: AdalService, public router: Router) {}\r\n private originalUrl = window.localStorage;\r\n canActivate(): boolean {\r\n \r\n \r\n\r\n if (!this.auth.userInfo.authenticated) {\r\n\r\n this.originalUrl.setItem('originalUrl', window.location.href);\r\n this.router.navigate(['auth-callback']);\r\n \r\n return false;\r\n }\r\n this.updateUser(this.auth.userInfo)\r\n return true;\r\n }\r\n\r\n}\r\n\r\nexport interface CanComponentDeactivate {\r\n canDeactivate: () => Observable | Promise | boolean;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\n\r\nexport class CanDeactivateGuard implements\r\n CanDeactivate {\r\n\r\n canDeactivate(component: CanComponentDeactivate) {\r\n return component.canDeactivate ? component.canDeactivate() : true;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AdalService } from 'adal-angular4';\r\nimport { Router } from '@angular/router';\r\n@Component({\r\n selector: 'app-auth-callback',\r\n template: ` `\r\n})\r\nexport class AuthCallbackComponent implements OnInit {\r\n \r\n constructor(private adal: AdalService, private router: Router) { }\r\n \r\n ngOnInit() {\r\n this.adal.handleWindowCallback();\r\n if (!this.adal.userInfo.authenticated) {\r\n this.adal.login();\r\n // this.router.navigate(['login']);\r\n } else {\r\n let storage = window.localStorage\r\n let redirect: string = storage.getItem('originalUrl');\r\n if (redirect) {\r\n window.location.href = redirect;\r\n } else {\r\n this.router.navigate(['home']);\r\n }\r\n \r\n \r\n }\r\n\r\n\r\n\r\n }\r\n \r\n}\r\n","import { FormControl } from '@angular/forms';\r\nimport { Component, Input, Output, EventEmitter, ViewChild } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { Parts } from '../../models';\r\nimport { NonRoutineItemService } from '../../nonRoutineItem.service';\r\nimport { FormsService } from '../../forms.service';\r\nimport { MatAutocompleteTrigger } from '@angular/material/autocomplete';\r\n@Component({\r\n selector: 'autocomplete-component',\r\n templateUrl: 'autocomplete.component.html'\r\n\r\n})\r\nexport class AutocompleteComponent {\r\n @ViewChild(MatAutocompleteTrigger, { static: false }) autocomplete: MatAutocompleteTrigger;\r\n\r\n private _partName: string;\r\n private _zone;\r\n private _actionType;\r\n private _chapter;\r\n private _aircraft;\r\n private _layover;\r\n private _disabled;\r\n showLoader: boolean = false;\r\n showPanel: boolean = false;\r\n\r\n allParts;\r\n filtered;\r\n allZones;\r\n filteredZones;\r\n allActionTypes;\r\n filteredActionTypes;\r\n allAircrafts;\r\n filteredAircrafts;\r\n allLayovers;\r\n filteredLayovers;\r\n\r\n\r\n options;\r\n\r\n partsSubsc: Subscription;\r\n actionsSubsc: Subscription;\r\n ataSubscription: Subscription;\r\n zonesSubsc: Subscription;\r\n layoverSubscr: Subscription;\r\n aircraftSubscr: Subscription;\r\n color = 'primary';\r\n mode = 'indeterminate';\r\n value = 2;\r\n //disable\r\n\r\n @Input() set disabled(val: boolean) {\r\n this._disabled = val;\r\n if (this._disabled) {\r\n this.chapterControl.disable();\r\n this.partControl.disable();\r\n this.zoneControl.disable();\r\n this.actionTypeControl.disable();\r\n this.aircraftControl.disable();\r\n this.layoverControl.disable();\r\n } else {\r\n this.chapterControl.enable();\r\n this.partControl.enable();\r\n this.zoneControl.enable();\r\n this.actionTypeControl.enable();\r\n this.aircraftControl.enable();\r\n this.layoverControl.enable();\r\n }\r\n }\r\n get disabled(): boolean {\r\n return this._disabled\r\n }\r\n\r\n //aircraft\r\n\r\n @Input() set layover(val: string) {\r\n this._layover = val;\r\n this.layoverControl.setValue(this._layover)\r\n }\r\n get layover(): string {\r\n return this._layover\r\n }\r\n\r\n //aircraft\r\n\r\n @Input() set aircraft(val: string) {\r\n this._aircraft = val;\r\n this.aircraftControl.setValue(this._aircraft)\r\n }\r\n get aircraft(): string {\r\n return this._aircraft\r\n }\r\n\r\n\r\n //actionTypes\r\n\r\n \r\n @Input() set actionType(val: string) {\r\n this._actionType = val;\r\n this.actionTypeControl.setValue(this._actionType)\r\n }\r\n get actionType(): string {\r\n return this._actionType\r\n }\r\n //parts\r\n @Input() set partName(val: string) {\r\n this._partName = val;\r\n this.partControl.setValue(this._partName)\r\n }\r\n get partName(): string {\r\n return this._partName\r\n }\r\n //chapter\r\n @Input() set chapter(val: string) {\r\n this._chapter = val;\r\n this.chapterControl.setValue(this._chapter)\r\n }\r\n get chapter(): string {\r\n return this._chapter\r\n }\r\n //zones\r\n\r\n @Input() set zone(val: string) {\r\n this._zone = val;\r\n this.zoneControl.setValue(this._zone)\r\n }\r\n get zone(): string {\r\n return this._zone\r\n }\r\n\r\n @Input() autocompleteType;\r\n\r\n @Output() partChosen: EventEmitter = new EventEmitter();\r\n @Output() selectChapter = new EventEmitter();\r\n @Output() selectZone = new EventEmitter();\r\n @Output() selectAction = new EventEmitter();\r\n @Output() selectAircraft = new EventEmitter();\r\n @Output() selectLayover = new EventEmitter();\r\n\r\n chapterControl = new FormControl();\r\n partControl = new FormControl();\r\n zoneControl = new FormControl();\r\n actionTypeControl = new FormControl();\r\n aircraftControl = new FormControl();\r\n layoverControl = new FormControl();\r\n constructor(private service: NonRoutineItemService, private fservice: FormsService) { }\r\n\r\n displayFnAircraft(aircraft?): string | undefined {\r\n return (aircraft && aircraft.registration) ? aircraft.registration : aircraft;\r\n }\r\n displayFnPart(part?): string | undefined {\r\n return (part && part.name) ? part.name : part;\r\n }\r\n displayFnChapter(ata?): string | undefined {\r\n return (ata && ata.chapter) ? ata.chapter : ata;\r\n }\r\n displayFnAction(action?): string | undefined {\r\n if (action) {\r\n return action.name ? action.abbreviation + ' - ' + action.name : action;\r\n }\r\n } \r\n displayFnZone(zone?): string | undefined {\r\n \r\n return (zone && zone.zoneName) ? zone.zoneID + ' - ' + zone.zoneName + ' - ' + zone.handPositioning : zone;\r\n \r\n }\r\n displayFnLayover(layover?): string | undefined {\r\n\r\n return (layover && layover.salesOrder) ? layover.salesOrder : layover;\r\n\r\n }\r\n\r\n aircraftType() {\r\n this.showLoader = true;\r\n if (!this.aircraftSubscr) {\r\n if (this.aircraftControl.value.length >= 3) {\r\n\r\n this.aircraftSubscr = this.service.getAircraft(this.aircraftControl.value).subscribe(item => {\r\n\r\n this.allAircrafts = item\r\n this.filterAircrafts(this.aircraftControl.value.toLowerCase())\r\n })\r\n\r\n }\r\n\r\n } else {\r\n if (this.aircraftControl.value.length == 3) {\r\n\r\n this.aircraftSubscr = this.service.getAircraft(this.aircraftControl.value).subscribe(item => {\r\n\r\n this.allAircrafts = item\r\n this.filterAircrafts(this.aircraftControl.value.toLowerCase())\r\n })\r\n }\r\n if (this.aircraftControl.value.length > 3) {\r\n\r\n this.filterAircrafts(this.aircraftControl.value.toLowerCase())\r\n\r\n }\r\n if (this.aircraftControl.value.length < 3) {\r\n this.showLoader = false;\r\n this.autocomplete.closePanel();\r\n }\r\n\r\n }\r\n\r\n }\r\nlayoverType() {\r\n this.showLoader = true;\r\n if (!this.layoverSubscr) {\r\n if (this.layoverControl.value.length >= 3) {\r\n \r\n this.layoverSubscr = this.service.getEvent(this.layoverControl.value).subscribe(item => {\r\n \r\n this.allLayovers = item\r\n this.filterLayovers(this.layoverControl.value.toLowerCase())\r\n })\r\n\r\n }\r\n\r\n } else {\r\n if (this.layoverControl.value.length == 3) {\r\n \r\n this.layoverSubscr = this.service.getEvent(this.layoverControl.value).subscribe(item => {\r\n\r\n this.allLayovers = item\r\n this.filterLayovers(this.layoverControl.value.toLowerCase())\r\n })\r\n }\r\n if (this.layoverControl.value.length > 3) {\r\n\r\n this.filterLayovers(this.layoverControl.value.toLowerCase())\r\n\r\n }\r\n if (this.layoverControl.value.length < 3) {\r\n this.showLoader = false;\r\n this.autocomplete.closePanel();\r\n }\r\n\r\n }\r\n \r\n }\r\n partsAType() {\r\n this.showLoader = true;\r\n if (!this.partsSubsc) {\r\n if (this.partControl.value.length >= 3) {\r\n this.partsSubsc = this.service.getPart(this.partControl.value).subscribe(item => {\r\n \r\n this.allParts = item\r\n this.filterParts(this.partControl.value.toLowerCase())\r\n })\r\n\r\n }\r\n\r\n } else {\r\n if (this.partControl.value.length == 3) {\r\n this.partsSubsc = this.service.getPart(this.partControl.value).subscribe(item => {\r\n \r\n this.allParts = item\r\n this.filterParts(this.partControl.value.toLowerCase())\r\n })\r\n }\r\n if (this.partControl.value.length > 3) {\r\n \r\n this.filterParts(this.partControl.value.toLowerCase())\r\n\r\n }\r\n if (this.partControl.value.length < 3) {\r\n this.showLoader = false;\r\n this.autocomplete.closePanel();\r\n }\r\n\r\n }\r\n }\r\n\r\n stepsAType() {\r\n this.showLoader = true;\r\n if (!this.actionsSubsc) {\r\n if (this.actionTypeControl.value.length >= 3) {\r\n this.actionsSubsc = this.service.getRectificationActionsTypes(this.actionTypeControl.value).subscribe(item => {\r\n this.allActionTypes = item\r\n this.filterActionType(this.actionTypeControl.value.toLowerCase())\r\n })\r\n\r\n }\r\n\r\n } else {\r\n if (this.actionTypeControl.value.length == 3) {\r\n this.actionsSubsc = this.service.getRectificationActionsTypes(this.actionTypeControl.value).subscribe(item => {\r\n this.allActionTypes = item\r\n this.filterActionType(this.actionTypeControl.value.toLowerCase())\r\n })\r\n } if (this.actionTypeControl.value.length > 3) {\r\n this.filterActionType(this.actionTypeControl.value.toLowerCase())\r\n\r\n }\r\n if (this.actionTypeControl.value.length < 3) {\r\n this.showLoader = false;\r\n this.autocomplete.closePanel();\r\n }\r\n }\r\n }\r\n\r\n ataAType() {\r\n this.showLoader = true;\r\n if (this.chapterControl.value.length == 2) {\r\n let ataChapterInput = this.chapterControl.value + '/00';\r\n this.ataSubscription = this.service.getSketchByAtaChapter(ataChapterInput).subscribe(result => {\r\n this.options = result;\r\n this.showLoader = false;\r\n });\r\n }\r\n if (this.chapterControl.value.length!=2) {\r\n this.showLoader = false;\r\n this.autocomplete.closePanel();\r\n }\r\n }\r\n\r\n zonesAType() {\r\n this.showLoader = true;\r\n if (!this.zonesSubsc) {\r\n if (this.zoneControl.value.length >= 3) {\r\n this.zonesSubsc = this.service.getZone(this.zoneControl.value).subscribe(item => {\r\n this.allZones = item\r\n this.filterStepZone(this.zoneControl.value.toLowerCase())\r\n })\r\n\r\n }\r\n if (this.zoneControl.value.length == 0) {\r\n this.showLoader = false;\r\n }\r\n } else {\r\n if (this.zoneControl.value.length == 3) {\r\n this.zonesSubsc = this.service.getZone(this.zoneControl.value).subscribe(item => {\r\n this.allZones = item\r\n this.filterStepZone(this.zoneControl.value.toLowerCase())\r\n })\r\n } if (this.zoneControl.value.length > 3) {\r\n this.filterStepZone(this.zoneControl.value.toLowerCase())\r\n\r\n }\r\n if (this.zoneControl.value.length < 3) {\r\n this.showLoader = false;\r\n this.autocomplete.closePanel();\r\n }\r\n }\r\n }\r\n filterAircrafts(inputVal) {\r\n if (this.allAircrafts) {\r\n this.filteredAircrafts = this.allAircrafts.filter(option =>\r\n option.registration.toLowerCase().includes(inputVal)\r\n )\r\n this.showLoader = false;\r\n }\r\n \r\n }\r\n filterLayovers(inputVal) {\r\n if (this.allLayovers) {\r\n this.filteredLayovers = this.allLayovers.filter(option =>\r\n option.salesOrder.toLowerCase().includes(inputVal) ||\r\n option.aircraft.registration.toLowerCase().includes(inputVal)\r\n )\r\n this.showLoader = false;\r\n }\r\n \r\n }\r\n filterParts(inputVal) {\r\n if (this.allParts) {\r\n this.filtered = this.allParts.filter(option =>\r\n option.number.toLowerCase().includes(inputVal) ||\r\n option.name.toLowerCase().includes(inputVal) ||\r\n option.fin.toLowerCase().includes(inputVal)\r\n )\r\n this.showLoader = false;\r\n }\r\n \r\n \r\n }\r\n filterStepZone(inputVal) {\r\n if (this.allZones) {\r\n this.filteredZones = this.allZones.filter(option =>\r\n option.zoneName.toLowerCase().includes(inputVal) ||\r\n option.zoneID.toLowerCase().includes(inputVal)\r\n )\r\n this.showLoader = false;\r\n }\r\n \r\n }\r\n filterActionType(inputVal) {\r\n if (this.allActionTypes) {\r\n\r\n this.filteredActionTypes = this.allActionTypes.filter(option =>\r\n option.name.toLowerCase().includes(inputVal) ||\r\n option.abbreviation.toLowerCase().includes(inputVal)\r\n )\r\n this.showLoader = false;\r\n }\r\n \r\n }\r\n\r\n closeLoader(e) {\r\n this.showLoader = false;\r\n }\r\n ngOnInit() {\r\n \r\n\r\n\r\n }\r\n ngOnDestroy() {\r\n if (this.partsSubsc) {\r\n this.partsSubsc.unsubscribe();\r\n }\r\n if (this.ataSubscription) {\r\n this.ataSubscription.unsubscribe();\r\n }\r\n if (this.actionsSubsc) {\r\n this.actionsSubsc.unsubscribe();\r\n }\r\n if (this.zonesSubsc) {\r\n this.zonesSubsc.unsubscribe();\r\n }\r\n }\r\n\r\n}\r\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { MatCheckboxChange } from '@angular/material/checkbox';\r\n\r\n/**\r\n * @title Configurable checkbox\r\n */\r\n@Component({\r\n selector: 'checkbox-component',\r\n templateUrl: 'checkbox.component.html'\r\n\r\n})\r\nexport class CheckboxComponent {\r\n @Input() types;\r\n @Output() checkboxVal: EventEmitter