{"version":3,"sources":["./src/app/app.component.html","./src/app/common/dialogpopup/dialogpopup.component.html","./src/app/common/dialogrequest/dialogrequest.component.html","./src/app/common/request-access/request-access.component.html","./src/app/components/admin-notification/admin-notification.component.html","./src/app/components/admin/admin.component.html","./src/app/components/allspecs/allspecs.component.html","./src/app/components/footer/footer.component.html","./src/app/components/header/header.component.html","./src/app/components/historical-maintenance/historical-maintenance.component.html","./src/app/components/home/home.component.html","./src/app/components/invoice-edit/invoice-edit.component.html","./src/app/components/invoice-information/invoice-information.component.html","./src/app/components/invoice-selection/invoice-selection.component.html","./src/app/components/invoice-total/invoice-total.component.html","./src/app/components/login-test/login-test.component.html","./src/app/components/login/login.component.html","./src/app/components/logout/logout.component.html","./src/app/components/overview/overview.component.html","./src/app/components/rail-car-info-edit/rail-car-info-edit.component.html","./src/app/components/rail-car-info-selection/rail-car-info-selection.component.html","./src/app/components/rail-car-information/rail-car-information.component.html","./src/app/components/rail-car-modify/rail-car-modify.component.html","./src/app/components/railcar-links/railcar-links.component.html","./src/app/components/railcar-urls/railcar-urls.component.html","./src/app/components/user-management/user-form/user-form.component.html","./src/app/components/user-management/user-management/user-management.component.html","./src/app/components/users/user-popup/user-popup.component.html","./src/app/components/users/user-screen/user-screen.component.html","./src/app/components/view-attachments/view-attachments.component.html","./src/app/documents-link/documents-link.component.html","./src/app/documenturls-master/documenturls-form/documenturls-form.component.html","./src/app/documenturls-master/documenturls-master/documenturls-master.component.html","./src/app/railcarurls-master/railcarurls-form/railcarurls-form.component.html","./src/app/railcarurls-master/railcarurls-master/railcarurls-master.component.html","./src/$_lazy_route_resource lazy namespace object","./src/app/_helpers/auth.guard.ts","./src/app/_helpers/httpconfig.interceptor.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/common/dialogpopup/dialogpopup.component.css","./src/app/common/dialogpopup/dialogpopup.component.ts","./src/app/common/dialogrequest/dialogrequest.component.css","./src/app/common/dialogrequest/dialogrequest.component.ts","./src/app/common/request-access/request-access.component.css","./src/app/common/request-access/request-access.component.ts","./src/app/components/admin-notification/admin-notification.component.css","./src/app/components/admin-notification/admin-notification.component.ts","./src/app/components/admin/admin.component.css","./src/app/components/admin/admin.component.ts","./src/app/components/allspecs/allspecs.component.css","./src/app/components/allspecs/allspecs.component.ts","./src/app/components/footer/footer.component.css","./src/app/components/footer/footer.component.ts","./src/app/components/header/header.component.css","./src/app/components/header/header.component.ts","./src/app/components/historical-maintenance/historical-maintenance.component.css","./src/app/components/historical-maintenance/historical-maintenance.component.ts","./src/app/components/home/home.component.css","./src/app/components/home/home.component.ts","./src/app/components/invoice-edit/invoice-edit.component.css","./src/app/components/invoice-edit/invoice-edit.component.ts","./src/app/components/invoice-information/invoice-information.component.css","./src/app/components/invoice-information/invoice-information.component.ts","./src/app/components/invoice-selection/invoice-selection.component.css","./src/app/components/invoice-selection/invoice-selection.component.ts","./src/app/components/invoice-total/invoice-total.component.css","./src/app/components/invoice-total/invoice-total.component.ts","./src/app/components/login-test/login-test.component.css","./src/app/components/login-test/login-test.component.ts","./src/app/components/login/login.component.css","./src/app/components/login/login.component.ts","./src/app/components/logout/logout.component.css","./src/app/components/logout/logout.component.ts","./src/app/components/overview/overview.component.css","./src/app/components/overview/overview.component.ts","./src/app/components/rail-car-info-edit/rail-car-info-edit.component.css","./src/app/components/rail-car-info-edit/rail-car-info-edit.component.ts","./src/app/components/rail-car-info-selection/rail-car-info-selection.component.css","./src/app/components/rail-car-info-selection/rail-car-info-selection.component.ts","./src/app/components/rail-car-information/rail-car-information.component.css","./src/app/components/rail-car-information/rail-car-information.component.ts","./src/app/components/rail-car-modify/rail-car-modify.component.css","./src/app/components/rail-car-modify/rail-car-modify.component.ts","./src/app/components/railcar-links/railcar-links.component.css","./src/app/components/railcar-links/railcar-links.component.ts","./src/app/components/railcar-urls/railcar-urls.component.css","./src/app/components/railcar-urls/railcar-urls.component.ts","./src/app/components/user-management/user-form/user-form.component.css","./src/app/components/user-management/user-form/user-form.component.ts","./src/app/components/user-management/user-management/user-management.component.css","./src/app/components/user-management/user-management/user-management.component.ts","./src/app/components/users/user-popup/user-popup.component.css","./src/app/components/users/user-popup/user-popup.component.ts","./src/app/components/users/user-screen/user-screen.component.css","./src/app/components/users/user-screen/user-screen.component.ts","./src/app/components/view-attachments/view-attachments.component.css","./src/app/components/view-attachments/view-attachments.component.ts","./src/app/documents-link/documents-link.component.css","./src/app/documents-link/documents-link.component.ts","./src/app/documenturls-master/documenturls-form/documenturls-form.component.css","./src/app/documenturls-master/documenturls-form/documenturls-form.component.ts","./src/app/documenturls-master/documenturls-master/documenturls-master.component.css","./src/app/documenturls-master/documenturls-master/documenturls-master.component.ts","./src/app/global.ts","./src/app/railcarurls-master/railcarurls-form/railcarurls-form.component.css","./src/app/railcarurls-master/railcarurls-form/railcarurls-form.component.ts","./src/app/railcarurls-master/railcarurls-master/railcarurls-master.component.css","./src/app/railcarurls-master/railcarurls-master/railcarurls-master.component.ts","./src/environments/environment.ts","./src/main.ts","./src/services/authentication-service.service.ts","./src/services/drag-drop.directive.ts","./src/services/rail-fleet.service.ts","fs (ignored)","crypto (ignored)","stream (ignored)"],"names":[],"mappings":"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","file":"main-es2015.js","sourcesContent":["export default \"\\r\\n\\r\\n
\\r\\n

You don't have access to this application. Contact\\r\\n Application administrator

\\r\\n
\\r\\n\"","export default \"

{{data.title}}

\\r\\n\\r\\n {{data.message}}\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"

{{data.title}}

\\r\\n\\r\\n {{data.message}}\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n

Please submit your details

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Basf ID\\r\\n \\r\\n Basf ID is required\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n First Name\\r\\n \\r\\n FirstName is required\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Last Name\\r\\n \\r\\n LastName is required\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Email\\r\\n \\r\\n \\r\\n Please enter a valid email address\\r\\n \\r\\n \\r\\n Email is required\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n BU\\r\\n \\r\\n {{bu.bu}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n Notification\\r\\n Messages\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Message\\r\\n Last date to Show\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{notification.notificationMessage}}\\r\\n {{notification.lastDate | date}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\"","export default \"
\\r\\n \\r\\n
\\r\\n

All Specs Data:

\\r\\n

{{titile}}

\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n Air_Brake_Test_Due:\\r\\n {{element.air_Brake_Test_Due}}
\\r\\n Auxiliary_BOV_Size:\\r\\n {{element.auxiliary_BOV_Size}}
\\r\\n Auxiliary_BOV_Type:\\r\\n {{element.auxiliary_BOV_Type}}
\\r\\n Bottom_Outlet_Valve_Size:\\r\\n {{element.bottom_Outlet_Valve_Size}}
\\r\\n Bottom_Outlet_Valve_Type:\\r\\n {{element.bottom_Outlet_Valve_Type}}
\\r\\n Centerband_Materials:\\r\\n {{element.centerband_Materials}}
\\r\\n Certification_Date:\\r\\n {{element.certification_Date}}
\\r\\n Certification_Type:\\r\\n {{element.certification_Type}}
\\r\\n Coil_Type:\\r\\n {{element.coil_Type}}
\\r\\n Coils:\\r\\n {{element.coils}}
\\r\\n Contract_FMV:\\r\\n {{element.contract_FMV}}
\\r\\n Fleet_Obj_Height:\\r\\n {{element.fleet_Obj_Height}}
\\r\\n Fleet_Obj_Height_Unit:\\r\\n {{element.fleet_Obj_Height_Unit}}
\\r\\n Fleet_Obj_Width:\\r\\n {{element.fleet_Obj_Width}}
\\r\\n Fleet_Obj_Width_Unit:\\r\\n {{element.fleet_Obj_Width_Unit}}
\\r\\n Fleet_Object_Type:\\r\\n {{element.fleet_Object_Type}}
\\r\\n Gasket_Type_Flat_Surf:\\r\\n {{element.gasket_Type_Flat_Surf}}
\\r\\n Hatch_Size:\\r\\n {{element.hatch_Size}}
\\r\\n Hatch_Type:\\r\\n {{element.hatch_Type}}
\\r\\n Hatch_Vent_Cover:\\r\\n {{element.hatch_Vent_Cover}}
\\r\\n Insulation_Thickness:\\r\\n {{element.insulation_Thickness}}
\\r\\n Insulation_Type:\\r\\n {{element.insulation_Type}}
\\r\\n Last_Fleet_Sizing:\\r\\n {{element.last_Fleet_Sizing}}
\\r\\n Last_Paint:\\r\\n {{element.last_Paint}}
\\r\\n Lining_Last_Date:\\r\\n {{element.lining_Last_Date}}
\\r\\n Lining_Product:\\r\\n {{element.lining_Product}}
\\r\\n Load_Volume:\\r\\n {{element.load_Volume}}
\\r\\n Max_Load_Weight:\\r\\n {{element.max_Load_Weight}}
\\r\\n Max_Load_weight_Unit:\\r\\n {{element.max_Load_weight_Unit}}
\\r\\n Mileage_Credit_Rate:\\r\\n {{element.mileage_Credit_Rate}}
\\r\\n Object_Length:\\r\\n {{element.object_Length}}
\\r\\n Object_Length_Unit:\\r\\n {{element.object_Length_Unit}}
\\r\\n Outage_Table:\\r\\n {{element.outage_Table}}
\\r\\n Outlet_Gate_1_Size:\\r\\n {{element.outlet_Gate_1_Size}}
\\r\\n Outlet_Gate_1_Type:\\r\\n {{element.outlet_Gate_1_Type}}
\\r\\n Outlet_Gate_2_Size:\\r\\n {{element.outlet_Gate_2_Size}}
\\r\\n Outlet_Gate_2_Type:\\r\\n {{element.outlet_Gate_2_Type}}
\\r\\n Outlet_Gate_3_Size:\\r\\n {{element.outlet_Gate_3_Size}}
\\r\\n Outlet_Gate_3_Type:\\r\\n {{element.outlet_Gate_3_Type}}
\\r\\n Outlet_Gate_4_Type:\\r\\n {{element.outlet_Gate_4_Type}}
\\r\\n Outlet_Gate_4_Type1:\\r\\n {{element.outlet_Gate_4_Type1}}
\\r\\n Paint_Product:\\r\\n {{element.paint_Product}}
\\r\\n Rule_88_Due:\\r\\n {{element.rule_88_Due}}
\\r\\n Rupture_Disc:\\r\\n {{element.rupture_Disc}}
\\r\\n SS-3_Due:\\r\\n {{element.sS_3_Due}}
\\r\\n Safety_Valve_Size:\\r\\n {{element.safety_Valve_Size}}
\\r\\n Safety_Valve_Test_Due:\\r\\n {{element.safety_Valve_Test_Due}}
\\r\\n Safety_Valve_Type:\\r\\n {{element.safety_Valve_Type}}
\\r\\n Skid_Protection:\\r\\n {{element.skid_Protection}}
\\r\\n Status_Code:\\r\\n {{element.status_Code}}
\\r\\n Status_Comment:\\r\\n {{element.status_Comment}}
\\r\\n Status_Date:\\r\\n {{element.status_Date}}
\\r\\n Tank_Qualified:\\r\\n {{element.tank_Qualified}}
\\r\\n Tank_Test_Due:\\r\\n {{element.tank_Test_Due}}
\\r\\n Tare_Weight:\\r\\n {{element.tare_Weight}}
\\r\\n Tickness_Test:\\r\\n {{element.tickness_Test}}
\\r\\n Top_unload_valve_size:\\r\\n {{element.top_unload_valve_size}}
\\r\\n Top_unload_valve_type:\\r\\n {{element.top_unload_valve_type}}
\\r\\n Top_vent_valve_size:\\r\\n {{element.top_vent_valve_size}}
\\r\\n Top_vent_valve_type:\\r\\n {{element.top_vent_valve_type}}
\\r\\n Total_Weight:\\r\\n {{element.total_Weight}}
\\r\\n Total_Weight_Unit:\\r\\n {{element.total_Weight_Unit}}
\\r\\n Weight_Unit:\\r\\n {{element.weight_Unit}}
\\r\\n Y_PMTMEQRL_PRD_O_RING_MATERIAL:\\r\\n {{element.y_PMTMEQRL_PRD_O_RING_MATERIAL}}
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n Copyright © {{currentYear}} BASF Corporation    |     Privacy policy    ⧁  US     ⧁   Canada\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n
\\r\\n
\\r\\n
0\\\" class=\\\"col-md-12 mt-1 mb-1 p-0\\\">\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n   \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{col.header}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
Select All {{dt.totalRecords}}
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{rowData[col.field]}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n

Total Railcars : {{railcarIDCount}}    Sum Total $ {{sumTotal | number : '1.0-2'}}

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\"","export default \"\\r\\n
\\r\\n \\r\\n
\\r\\n\"","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{col.header}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n Invalid\\r\\n value, please\\r\\n provide numerical value\\r\\n Invalid\\r\\n value, please provide numerical value\\r\\n \\r\\n Invalid\\r\\n value, please provide\\r\\n numerical value\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n {{rowData.status}}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\"","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0 || autoApproved.length > 0)\\\"\\r\\n (invoiceDetails)=\\\"refresh($event)\\\">\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{col.header}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Select All {{totalRecords}}
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{option.label == 'Blanks' ? option.label : (option.value | number : '1.2-2')}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n {{rowData[col?.field]}}\\r\\n

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

\\r\\n {{rowData[col?.field] | number : '1.2-2'}}

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

\\r\\n {{rowData[col?.field]}}

\\r\\n

\\r\\n {{rowData[col?.field]}}\\r\\n

\\r\\n

\\r\\n {{rowData[col?.field]}}

\\r\\n
\\r\\n
{{rowData[col?.field]}}\\r\\n
\\r\\n \\r\\n
\\r\\n

\\r\\n {{rowData[col?.field] | date: 'shortDate'}}

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n Invoice Ref : \\r\\n | \\r\\n Accepted Total : \\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\"","export default \"
\\r\\n
\\r\\n

You are not authorized to login.

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

Your request is already pending. If 1 business day has elapsed you may contact railfleet@basf.com for status.

\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\"","export default \"

You have successfully logged out from this application. Click here to login

\"","export default \"
\\r\\n
\\r\\n

You are not authorized to View this Page.

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

Current Fleet

\\r\\n
\\r\\n\\r\\n 0\\\">\\r\\n \\r\\n \\r\\n Fleet\\r\\n \\r\\n
BU
\\r\\n \\r\\n \\r\\n {{owner.owner}}\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{owner.fleet}}\\r\\n {{owner.bu}}\\r\\n {{owner[ow.owner]}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n

Regulatory Outlook

\\r\\n
\\r\\n 0\\\">\\r\\n \\r\\n \\r\\n Fleet\\r\\n \\r\\n
BU
\\r\\n \\r\\n \\r\\n {{ex.expiration}}\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n {{expiration.fleet}}\\r\\n {{expiration.bu}}\\r\\n {{expiration[exyr.expiration]}}\\r\\n \\r\\n \\r\\n
\\r\\n
\"","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{col.header}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n Invalid\\r\\n value, please\\r\\n provide numerical value\\r\\n Invalid\\r\\n value, please provide numerical value\\r\\n \\r\\n Invalid\\r\\n value, please provide\\r\\n numerical value\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
0\\\" class=\\\"col-md-12 mt-1 mb-1 p-0\\\">\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{col.header}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Select All {{dt.totalRecords}}
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n \\r\\n {{rowData[col.field]}}  \\r\\n \\r\\n

\\r\\n

{{rowData[col.field]}}

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

3 ? '400px': '100px'\\\"\\r\\n style=\\\"max-width: 400px;white-space: break-spaces;;text-align: left;display:flex;flex-wrap: wrap;\\\">\\r\\n \\r\\n {{pc.permittedcommodities}},\\r\\n \\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n {{rowData[col.field]}}\\r\\n
\\r\\n
\\r\\n {{rowData[col.field]}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n Invalid\\r\\n value, please\\r\\n provide numerical value\\r\\n \\r\\n \\r\\n Invalid\\r\\n value, please provide numerical value\\r\\n \\r\\n \\r\\n Invalid\\r\\n value, please provide\\r\\n numerical value\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"{{updateAPIResp}}\\\"
\\r\\n
\\r\\n \\r\\n
{{rowData[label.field]}}\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Invalid value,\\r\\n please\\r\\n provide numerical value\\r\\n Invalid\\r\\n value, please provide numerical value\\r\\n \\r\\n Invalid value, please\\r\\n provide\\r\\n numerical value\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n {{dialogHeader}}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\"","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n

Hot Links

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n {{dialogHeader}}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\"","export default \"
\\r\\n

{{newUser?'Create User':'Update User'}}

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Basf ID\\r\\n \\r\\n Basf ID is required\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n First Name\\r\\n \\r\\n FirstName is required\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Last Name\\r\\n \\r\\n LastName is required\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Role\\r\\n \\r\\n {{role.roleName}}\\r\\n \\r\\n Please select a role\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Email\\r\\n \\r\\n \\r\\n Please enter a valid email address\\r\\n \\r\\n \\r\\n Email is required\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n BU\\r\\n \\r\\n {{bu.bu}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\"","export default \"
\\r\\n
\\r\\n

You are not authorized to View this Page.

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

\\r\\n User List:\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n Search Users\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n BASF ID\\r\\n {{element.basfUserID}} \\r\\n FirstName\\r\\n {{element.firstName}} \\r\\n LastName\\r\\n {{element.lastName}} \\r\\n RoleName\\r\\n \\r\\n \\r\\n {{item.roleName}} \\r\\n \\r\\n \\r\\n Email\\r\\n {{element.email}} \\r\\n Bu\\r\\n \\r\\n \\r\\n {{item.bu}} \\r\\n \\r\\n \\r\\n Edit\\r\\n \\r\\n Remove\\r\\n \\r\\n Status\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Loading data
\\r\\n\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n Fill BASF ID\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n Fill First Name\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n Fill Last Name\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n Fill Email\\r\\n
\\r\\n
\\r\\n Enter Valid Email\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n Select Position Country\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Assign Roles\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n Hiring Managers - {{selectedHMUsers.length}} Selected\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n HR - {{selectedHRUsers.length}} Selected\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{col.header}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

{{rowData[col.field]}}

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

View Attachments Url

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\"","export default \"
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{col.header}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

\\r\\n {{rowData[col.field]}}\\r\\n

\\r\\n

\\r\\n {{rowData[col.field]}}

\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n

{{newUser?'Create Link':'Update Link'}}

\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Description Name\\r\\n \\r\\n Description Name is required\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n URL\\r\\n \\r\\n URL is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\"","export default \"
\\r\\n
\\r\\n

You are not authorized to View this Page.

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

\\r\\n Document Links:\\r\\n

\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Search Document Links\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n Description Name\\r\\n {{element.descriptionName}} \\r\\n URL\\r\\n \\r\\n {{element.url}} \\r\\n Edit\\r\\n \\r\\n Remove\\r\\n
Loading data
\\r\\n\\r\\n
\\r\\n
\\r\\n\"","export default \"
\\r\\n

{{newUser?'Create Link':'Update Link'}}

\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Description Name\\r\\n \\r\\n Description Name is required\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n URL\\r\\n \\r\\n URL is required\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n  \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\"","export default \"
\\r\\n
\\r\\n

You are not authorized to View this Page.

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

\\r\\n RailCar Links:\\r\\n

\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Search RailCar Links\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n Description Name\\r\\n {{element.descriptionName}} \\r\\n URL\\r\\n \\r\\n {{element.url}} \\r\\n Edit\\r\\n \\r\\n Remove\\r\\n
Loading data
\\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 { Injectable } from \"@angular/core\";\r\nimport { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot, UrlTree } from \"@angular/router\";\r\nimport { Observable } from \"rxjs\";\r\nimport { AuthenticationServiceService } from \"src/services/authentication-service.service\";\r\nimport { RailFleetService } from \"src/services/rail-fleet.service\";\r\n\r\n@Injectable({\r\n providedIn:'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n /**\r\n *\r\n */\r\n constructor(private router: Router, private _service: RailFleetService, private auth: AuthenticationServiceService) {\r\n\r\n\r\n }\r\n\r\n canActivate(route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): boolean | UrlTree | Observable | Promise {\r\n this._service.getUserInfo(sessionStorage.getItem('userId')).subscribe((response: any[]) => {\r\n //console.log(response, \"AuthGaurdResp\")\r\n if (response.length > 0) {\r\n return true;\r\n } else {\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n }\r\n })\r\n return true;\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpInterceptor, HttpRequest, HttpResponse, HttpHandler, HttpEvent, HttpErrorResponse } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { CookieService } from 'ngx-cookie-service';\r\n@Injectable()\r\n\r\nexport class HttpConfigInterceptor implements HttpInterceptor {\r\n constructor(\r\n private cookieService: CookieService\r\n ) {}\r\n \r\n private router:Router \r\n intercept(request: HttpRequest, next: HttpHandler): Observable> {\r\n let tokenInfo = JSON.parse(localStorage.getItem('TokenInfo'));\r\n\r\n if (!request.url.includes('add')) {\r\n if (!request.headers.has('Content-Type')) {\r\n request = request.clone({ headers: request.headers.set('Content-Type', 'application/json') });\r\n request = request.clone({ headers: request.headers.set('Accept', 'application/json') });\r\n request = request.clone({ headers: request.headers.set('Cache-Control', 'no-cache') });\r\n request = request.clone({ headers: request.headers.set('Pragma', 'no-cache') });\r\n request = request.clone({ headers: request.headers.set('Expires', 'Sat, 01 Jan 2000 00:00:00 GMT') });\r\n request = request.clone({ headers: request.headers.set('If-Modified-Since', '0') });\r\n }\r\n request = request.clone({ headers: request.headers.set('Access-Control-Allow-Origin', '*') });\r\n }\r\n if(tokenInfo!=null)\r\n request = request.clone({ headers: request.headers.set('Authorization', `Bearer ${tokenInfo.token}`) });\r\n\r\n var cooval=this.cookieService.get(\"Authorizarion\");\r\n if(cooval!=\"\" && cooval!=null && cooval!=undefined)\r\n {\r\n if(cooval.length>0)\r\n {\r\n request = request.clone({ headers: request.headers.set('Authorization', cooval.replace(\"Bearer \",\"\").toString()) });\r\n }\r\n }\r\n return next.handle(request).pipe(\r\n tap(\r\n event => {\r\n if (event instanceof HttpResponse) {\r\n console.log(\"api call success :\", event);\r\n }\r\n },\r\n error => {\r\n if (error instanceof HttpErrorResponse) {\r\n if (error.status == 401 || error.status == 0) {\r\n this.router.navigate(['/home']);\r\n }\r\n }\r\n },\r\n\r\n )\r\n );\r\n }\r\n\r\n}","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { HomeComponent } from '../app/components/home/home.component';\r\n\r\nimport { LoginComponent } from './components/login/login.component';\r\n\r\nimport { LogoutComponent } from './components/logout/logout.component';\r\nimport { RailCarInformationComponent } from './components/rail-car-information/rail-car-information.component';\r\nimport { RailCarInfoSelectionComponent } from './components/rail-car-info-selection/rail-car-info-selection.component';\r\nimport { RailCarModifyComponent } from './components/rail-car-modify/rail-car-modify.component';\r\nimport { ViewAttachmentsComponent } from './components/view-attachments/view-attachments.component';\r\nimport { AdminComponent } from './components/admin/admin.component';\r\nimport { UserManagementComponent } from './components/user-management/user-management/user-management.component';\r\nimport { RailcarUrlsComponent } from './components/railcar-urls/railcar-urls.component';\r\nimport { RailcarLinksComponent } from './components/railcar-links/railcar-links.component';\r\nimport { RailcarurlsMasterComponent } from './railcarurls-master/railcarurls-master/railcarurls-master.component';\r\nimport { DocumentsLinkComponent } from './documents-link/documents-link.component';\r\nimport { DocumenturlsMasterComponent } from './documenturls-master/documenturls-master/documenturls-master.component';\r\nimport { OverviewComponent } from './components/overview/overview.component';\r\nimport { AdminNotificationComponent } from './components/admin-notification/admin-notification.component';\r\nimport { AuthGuard } from './_helpers/auth.guard';\r\nimport { InvoiceSelectionComponent } from './components/invoice-selection/invoice-selection.component';\r\nimport { InvoiceInformationComponent } from './components/invoice-information/invoice-information.component';\r\nimport { LoginTestComponent } from './components/login-test/login-test.component'\r\nimport { HistoricalMaintenanceComponent } from './components/historical-maintenance/historical-maintenance.component';\r\nconst routes: Routes = [\r\n {\r\n path: '', pathMatch: 'full', redirectTo: '/home'\r\n },\r\n {\r\n path: 'home', canActivate: [AuthGuard],component: HomeComponent\r\n },\r\n {\r\n path: 'rail-car',canActivate: [AuthGuard], component: RailCarInformationComponent\r\n },\r\n {\r\n path: 'rail-car/info',canActivate: [AuthGuard], component: RailCarModifyComponent\r\n },\r\n {\r\n path: 'active-cars',canActivate: [AuthGuard], component: RailCarInfoSelectionComponent\r\n },\r\n {\r\n path: 'invoice',canActivate: [AuthGuard], component: InvoiceInformationComponent\r\n },\r\n {\r\n path: 'overview',canActivate: [AuthGuard], component: OverviewComponent\r\n },\r\n {\r\n path: 'login', component: LoginComponent\r\n },\r\n {\r\n path: 'view-attachment',canActivate: [AuthGuard], component: ViewAttachmentsComponent\r\n }, \r\n {\r\n path: 'logout',canActivate: [AuthGuard], component: LogoutComponent\r\n }, \r\n {\r\n path: 'admin',canActivate: [AuthGuard], component: AdminComponent\r\n },\r\n {\r\n path: 'usermanagement',canActivate: [AuthGuard], component:UserManagementComponent\r\n },\r\n {\r\n path: 'notification', component:AdminNotificationComponent\r\n },\r\n {\r\n path: 'notification', component:AdminNotificationComponent\r\n },\r\n {\r\n path: 'railcar-urls', component:RailcarUrlsComponent\r\n },\r\n {\r\n path: 'railcar-links',canActivate: [AuthGuard], component:RailcarLinksComponent //General\r\n },\r\n {\r\n path: 'railcarlinks-master',canActivate: [AuthGuard], component:RailcarurlsMasterComponent\r\n },\r\n {\r\n path: 'documents-links',canActivate: [AuthGuard], component:DocumentsLinkComponent //General \r\n },\r\n {\r\n path: 'documentslinks-master',canActivate: [AuthGuard], component:DocumenturlsMasterComponent \r\n },\r\n {\r\n path: 'historical-maintenance', canActivate: [AuthGuard], component: HistoricalMaintenanceComponent\r\n },\r\n //{\r\n // path: 'loginTest', component: LoginTestComponent\r\n //}\r\n\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, { useHash: true })],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Component } from '@angular/core';\r\nimport { Router, NavigationEnd } from '@angular/router';\r\nimport { filter } from 'rxjs/operators';\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 enableBg = true;\r\n userAccess = false;\r\n userAdmin = false;\r\n\r\n unAuthorised = false;\r\n constructor(\r\n private router: Router\r\n ) {\r\n router.events.pipe(\r\n filter(event => event instanceof NavigationEnd) \r\n ).subscribe((event: NavigationEnd) => {\r\n if(event.url == '/login-test' || event.url == '/login' || event.url == '/logout') {\r\n this.userAccess = false;\r\n sessionStorage.setItem('governanceEvaluationAccess', \"false\");\r\n sessionStorage.setItem('role','');\r\n } else {\r\n this.userAccess = true;\r\n let role = sessionStorage.getItem('role');\r\n if(role != null && role != undefined && role != '' ) {\r\n if(role.includes('Admin')) {\r\n this.userAdmin = true;\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n }\r\n });\r\n }\r\n title = 'app';\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { HttpConfigInterceptor } from './_helpers/httpconfig.interceptor';\r\nimport { CookieService } from 'ngx-cookie-service';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { NgxSpinnerModule } from 'ngx-spinner';\r\nimport { RouterModule } from '@angular/router';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { HeaderComponent } from './components/header/header.component';\r\nimport { FooterComponent } from './components/footer/footer.component';\r\nimport { HomeComponent } from './components/home/home.component';\r\nimport { LoginTestComponent } from './components/login-test/login-test.component';\r\nimport { LoginComponent } from './components/login/login.component'\r\nimport { UserScreenComponent } from './components/users/user-screen/user-screen.component';\r\nimport { UserPopupComponent } from './components/users/user-popup/user-popup.component';\r\nimport { LogoutComponent } from './components/logout/logout.component';\r\nimport { RailCarInformationComponent } from './components/rail-car-information/rail-car-information.component';\r\nimport { RailCarInfoSelectionComponent } from './components/rail-car-info-selection/rail-car-info-selection.component';\r\nimport { RailCarInfoEditComponent } from './components/rail-car-info-edit/rail-car-info-edit.component';\r\nimport { RailCarModifyComponent } from './components/rail-car-modify/rail-car-modify.component';\r\nimport { ViewAttachmentsComponent } from './components/view-attachments/view-attachments.component';\r\nimport { InvoiceInformationComponent } from './components/invoice-information/invoice-information.component';\r\nimport { InvoiceSelectionComponent } from './components/invoice-selection/invoice-selection.component';\r\nimport { InvoiceEditComponent } from './components/invoice-edit/invoice-edit.component';\r\n\r\nimport { AdminComponent } from './components/admin/admin.component';\r\nimport { ToolbarModule } from 'primeng/toolbar';\r\nimport { AccordionModule } from 'primeng/accordion';\r\nimport { AutoCompleteModule } from 'primeng/autocomplete';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TabViewModule } from 'primeng/tabview';\r\nimport { DynamicDialogModule } from 'primeng/dynamicdialog';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { ListboxModule } from 'primeng/listbox';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { FileUploadModule } from 'primeng/fileupload';\r\nimport { CardModule } from 'primeng/card';\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { DialogModule } from 'primeng/dialog';\r\n\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown'\r\n\r\nimport { AuthenticationServiceService } from '../services/authentication-service.service';\r\nimport { RailFleetService } from '../services/rail-fleet.service';\r\nimport { DragDropDirective } from '../services/drag-drop.directive';\r\nimport { Global } from './global';\r\nimport { UserManagementComponent } from './components/user-management/user-management/user-management.component';\r\nimport { UserFormComponent } from './components/user-management/user-form/user-form.component';\r\nimport { DialogpopupComponent } from './common/dialogpopup/dialogpopup.component';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { RailcarUrlsComponent } from './components/railcar-urls/railcar-urls.component';\r\nimport { RailcarLinksComponent } from './components/railcar-links/railcar-links.component';\r\nimport { AllspecsComponent } from './components/allspecs/allspecs.component';\r\nimport { ConfirmationService, MessageService } from 'primeng/api';\r\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\r\nimport { RadioButtonModule } from 'primeng/radiobutton';\r\nimport { RailcarurlsMasterComponent } from './railcarurls-master/railcarurls-master/railcarurls-master.component';\r\nimport { RailcarurlsFormComponent } from './railcarurls-master/railcarurls-form/railcarurls-form.component';\r\nimport {MatRadioModule} from '@angular/material/radio';\r\nimport { TooltipModule } from \"primeng/tooltip\";\r\nimport { DocumentsLinkComponent } from './documents-link/documents-link.component';\r\nimport { DocumenturlsMasterComponent } from './documenturls-master/documenturls-master/documenturls-master.component';\r\nimport { DocumenturlsFormComponent } from './documenturls-master/documenturls-form/documenturls-form.component';\r\nimport { OverviewComponent } from './components/overview/overview.component';\r\nimport { RequestAccessComponent } from './common/request-access/request-access.component';\r\nimport { DialogrequestComponent } from './common/dialogrequest/dialogrequest.component';\r\nimport { AdminNotificationComponent } from './components/admin-notification/admin-notification.component';\r\nimport {PanelModule} from 'primeng/panel';\r\nimport { InvoiceTotalComponent } from './components/invoice-total/invoice-total.component';\nimport { HistoricalMaintenanceComponent } from './components/historical-maintenance/historical-maintenance.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n HeaderComponent,\r\n FooterComponent,\r\n HomeComponent,\r\n LoginTestComponent,\r\n LoginComponent,\r\n UserScreenComponent,\r\n UserPopupComponent,\r\n DragDropDirective,\r\n LogoutComponent,\r\n RailCarInformationComponent,\r\n RailCarInfoSelectionComponent,\r\n RailCarInfoEditComponent,\r\n RailCarModifyComponent,\r\n InvoiceInformationComponent,\r\n InvoiceSelectionComponent,\r\n InvoiceEditComponent,\r\n ViewAttachmentsComponent,\r\n AdminComponent,\r\n UserManagementComponent,\r\n UserFormComponent,\r\n DialogpopupComponent,\r\n RailcarUrlsComponent,\r\n RailcarLinksComponent,\r\n AllspecsComponent,\r\n RailcarurlsMasterComponent,\r\n RailcarurlsFormComponent,\r\n DocumentsLinkComponent,\r\n DocumenturlsMasterComponent,\r\n DocumenturlsFormComponent,\r\n OverviewComponent,\r\n RequestAccessComponent,\r\n DialogrequestComponent,\r\n AdminNotificationComponent,\r\n InvoiceTotalComponent,\r\n HistoricalMaintenanceComponent\r\n ],\r\n\r\n imports: [\r\n BrowserModule,\r\n BrowserAnimationsModule,\r\n AppRoutingModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n HttpClientModule,\r\n RouterModule,\r\n TableModule,\r\n TooltipModule,\r\n ToolbarModule,\r\n AccordionModule,\r\n ToastrModule.forRoot({\r\n timeOut: 5000,\r\n positionClass: 'toast-top-right',\r\n preventDuplicates: true,\r\n closeButton: true\r\n }),\r\n ToastrModule,\r\n NgxSpinnerModule,\r\n TabViewModule,\r\n DynamicDialogModule,\r\n ButtonModule,\r\n InputTextModule,\r\n CheckboxModule,\r\n AutoCompleteModule,\r\n ListboxModule,\r\n DropdownModule,\r\n PanelModule,\r\n FileUploadModule,\r\n CardModule,\r\n BsDropdownModule.forRoot(),\r\n MultiSelectModule,\r\n CalendarModule,\r\n DialogModule,\r\n ConfirmDialogModule,\r\n RadioButtonModule,\r\n MatTabsModule,\r\n MatProgressSpinnerModule,\r\n MatIconModule,\r\n MatAutocompleteModule,\r\n MatChipsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatTableModule,\r\n MatButtonModule,\r\n MatPaginatorModule,\r\n MatSortModule,\r\n MatDialogModule,\r\n MatRadioModule,\r\n MatSnackBarModule,\r\n MatSelectModule,\r\n MatDatepickerModule,\r\n MatStepperModule,\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatCheckboxModule,\r\n MatNativeDateModule,\r\n ],\r\n providers: [ \r\n { provide: HTTP_INTERCEPTORS, useClass: HttpConfigInterceptor, multi: true },\r\n // { provide: HTTP_INTERCEPTORS, useClass: httpInterceptor, multi: true },\r\n \r\n CookieService,\r\n Global,\r\n AuthenticationServiceService,\r\n RailFleetService,\r\n MessageService,\r\n ConfirmationService\r\n ],\r\n bootstrap: [AppComponent],\r\n\r\n entryComponents: [\r\n \r\n UserPopupComponent,\r\n UserFormComponent,\r\n DialogpopupComponent,\r\n AllspecsComponent,\r\n RailcarurlsFormComponent,\r\n DocumenturlsFormComponent,\r\n RequestAccessComponent,\r\n DialogrequestComponent\r\n \r\n ],\r\n\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\r\n\r\n})\r\nexport class AppModule { }\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbW1vbi9kaWFsb2dwb3B1cC9kaWFsb2dwb3B1cC5jb21wb25lbnQuY3NzIn0= */\"","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-dialogpopup',\r\n templateUrl: './dialogpopup.component.html',\r\n styleUrls: ['./dialogpopup.component.css']\r\n})\r\nexport class DialogpopupComponent {\r\n\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: {\r\n message: string,\r\n title: string\r\n }) { }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbW1vbi9kaWFsb2dyZXF1ZXN0L2RpYWxvZ3JlcXVlc3QuY29tcG9uZW50LmNzcyJ9 */\"","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-dialogrequest',\r\n templateUrl: './dialogrequest.component.html',\r\n styleUrls: ['./dialogrequest.component.css']\r\n})\r\nexport class DialogrequestComponent\r\n{\r\n\r\n constructor(@Inject(MAT_DIALOG_DATA) public data: {\r\n message: string,\r\n title: string\r\n }) { }\r\n\r\n}\r\n","export default \".not-activ-btn {\\r\\n background-color: #424549;\\r\\n width: 75px;\\r\\n border-radius: 5px;\\r\\n color: white;\\r\\n}\\r\\n.activ-btn {\\r\\n background-color: #004890;\\r\\n width: 75px;\\r\\n border-radius: 5px;\\r\\n margin-left: 5px;\\r\\n color: white;\\r\\n}\\r\\n::ng-deep body .ui-dialog .ui-dialog-footer {\\r\\n border: 1px solid #c8c8c8;\\r\\n background-color: #ffffff;\\r\\n color: #333333;\\r\\n padding: 0.571em 1em;\\r\\n margin: 0;\\r\\n text-align: right;\\r\\n position: relative;\\r\\n top: -11px !important;\\r\\n}\\r\\n.full-width {\\r\\n width: 100%;\\r\\n}\\r\\n.req\\r\\n{\\r\\n color: red;\\r\\n text-align: right;\\r\\n padding-right: 35px;\\r\\n}\\r\\n.addIcon {\\r\\n font-size: 1.5em;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n color: white;\\r\\n border-radius: 5px;\\r\\n padding: 3px;\\r\\n}\\r\\n.backdrop {\\r\\n background-color:rgba(0,0,0,0.83);\\r\\n position:fixed;\\r\\n top:0;\\r\\n left:0;\\r\\n width:100%;\\r\\n height:100vh;\\r\\n z-index: 9998;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tbW9uL3JlcXVlc3QtYWNjZXNzL3JlcXVlc3QtYWNjZXNzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSx5QkFBeUI7RUFDekIsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixZQUFZO0FBQ2Q7QUFDQTtFQUNFLHlCQUF5QjtFQUN6QixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixZQUFZO0FBQ2Q7QUFDQTtFQUNFLHlCQUF5QjtFQUN6Qix5QkFBeUI7RUFDekIsY0FBYztFQUNkLG9CQUFvQjtFQUNwQixTQUFTO0VBQ1QsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixxQkFBcUI7QUFDdkI7QUFDQTtJQUNJLFdBQVc7QUFDZjtBQUNBOztFQUVFLFVBQVU7RUFDVixpQkFBaUI7RUFDakIsbUJBQW1CO0FBQ3JCO0FBQ0E7SUFDSSxnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLFlBQVk7QUFDaEI7QUFDQTtFQUNFLGlDQUFpQztFQUNqQyxjQUFjO0VBQ2QsS0FBSztFQUNMLE1BQU07RUFDTixVQUFVO0VBQ1YsWUFBWTtFQUNaLGFBQWE7QUFDZiIsImZpbGUiOiJzcmMvYXBwL2NvbW1vbi9yZXF1ZXN0LWFjY2Vzcy9yZXF1ZXN0LWFjY2Vzcy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm5vdC1hY3Rpdi1idG4ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM0MjQ1NDk7XHJcbiAgd2lkdGg6IDc1cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG4uYWN0aXYtYnRuIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gIHdpZHRoOiA3NXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICBtYXJnaW4tbGVmdDogNXB4O1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG46Om5nLWRlZXAgYm9keSAudWktZGlhbG9nIC51aS1kaWFsb2ctZm9vdGVyIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjYzhjOGM4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcbiAgY29sb3I6ICMzMzMzMzM7XHJcbiAgcGFkZGluZzogMC41NzFlbSAxZW07XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0b3A6IC0xMXB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuLmZ1bGwtd2lkdGgge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLnJlcVxyXG57XHJcbiAgY29sb3I6IHJlZDtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxuICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xyXG59XHJcbi5hZGRJY29uIHtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgcGFkZGluZzogM3B4O1xyXG59XHJcbi5iYWNrZHJvcCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuODMpO1xyXG4gIHBvc2l0aW9uOmZpeGVkO1xyXG4gIHRvcDowO1xyXG4gIGxlZnQ6MDtcclxuICB3aWR0aDoxMDAlO1xyXG4gIGhlaWdodDoxMDB2aDtcclxuICB6LWluZGV4OiA5OTk4O1xyXG59XHJcbiJdfQ== */\"","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { UserFormComponent } from 'src/app/components/user-management/user-form/user-form.component';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\nimport { DialogrequestComponent } from '../dialogrequest/dialogrequest.component';\r\n\r\n@Component({\r\n selector: 'app-request-access',\r\n templateUrl: './request-access.component.html',\r\n styleUrls: ['./request-access.component.css']\r\n})\r\nexport class RequestAccessComponent implements OnInit {\r\nuserForm: FormGroup;\r\n bus: any;\r\n constructor(@Inject(MAT_DIALOG_DATA) private Data: any, private dialogRef: MatDialogRef,private matdialog: MatDialog, private _service: RailFleetService, private _toast: ToastrService\r\n ,private spinner:NgxSpinnerService,private _toastr:ToastrService) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.userForm = new FormGroup({\r\n basfUserID: new FormControl(this.Data.basfUserID, [Validators.required]),\r\n firstName: new FormControl(this.Data.firstName, [Validators.required]),\r\n lastName: new FormControl(this.Data.lastName, [Validators.required]),\r\n Email: new FormControl(this.Data.email, [Validators.required, Validators.email]),\r\n buID: new FormControl('', [Validators.required]),\r\n });\r\n this.GetAllBus();\r\n }\r\n\r\n GetAllBus() {\r\n this._service.GetAllBus().subscribe((data: any[]) => {\r\n // console.log(data);\r\n this.bus = data;\r\n });\r\n }\r\n public hasError = (controlName: string, errorName: string) => {\r\n return this.userForm.controls[controlName].hasError(errorName);\r\n }\r\n Sendemail()\r\n {\r\n this.onSend();\r\n this.onEmailSend();\r\n }\r\n onSend() {\r\n // console.log(this.userForm.valid);\r\n if (this.userForm.valid) {\r\n const acPayLoad = {\r\n userID: this.Data.userID ? this.Data.userID : 0,\r\n basfUserID: this.userForm.controls.basfUserID.value,\r\n firstName: this.userForm.controls.firstName.value,\r\n lastName: this.userForm.controls.lastName.value,\r\n roleID: 2,\r\n Email: this.userForm.controls.Email.value,\r\n buID: this.userForm.controls.buID.value,\r\n actionBy: this.userForm.controls.basfUserID.value,\r\n action: \"Request\"\r\n }\r\n acPayLoad.buID = acPayLoad.buID.join(',');\r\n // console.log(acPayLoad);\r\n this._service.updateUser_new(acPayLoad).subscribe(res => { \r\n this._toast.success(\"Your Details Submitted Successfully\") \r\n this.matdialog.open(DialogrequestComponent,\r\n { data: { message: 'Your request is sent. Please note approval may take up to 4 hours.', title: acPayLoad.firstName } })\r\n });\r\n }\r\n\r\n this.dialogRef.close();\r\n }\r\n onEmailSend() {\r\n if (this.userForm.valid) {\r\n const acPayLoad = {\r\n userID: this.Data.userID ? this.Data.userID : 0,\r\n basfUserID: this.userForm.controls.basfUserID.value,\r\n firstName: this.userForm.controls.firstName.value,\r\n lastName: this.userForm.controls.lastName.value,\r\n roleID: 2,\r\n Email: this.userForm.controls.Email.value,\r\n buID: this.userForm.controls.buID.value,\r\n actionBy: this.userForm.controls.basfUserID.value,\r\n action: \"Request\"\r\n }\r\n acPayLoad.buID = acPayLoad.buID.join(',');\r\n this._service.mailRequest(acPayLoad).subscribe(res => { this._toast.success(\"Your Details Submitted Successfully\") });\r\n }\r\n\r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","export default \"textarea {\\r\\n width: 400px;\\r\\n}\\r\\n.add-notification {\\r\\n float: right;\\r\\n}\\r\\n:host ::ng-deep .ui-panel-notification {\\r\\n width: 900px;\\r\\n}\\r\\n.wrapper {\\r\\n display: flex;\\r\\n justify-content: center;\\r\\n}\\r\\n.btn-clear {\\r\\n background: #004890 !important;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hZG1pbi1ub3RpZmljYXRpb24vYWRtaW4tbm90aWZpY2F0aW9uLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxZQUFZO0FBQ2hCO0FBQ0E7SUFDSSxZQUFZO0FBQ2hCO0FBQ0E7SUFDSSxZQUFZO0FBQ2hCO0FBQ0E7SUFDSSxhQUFhO0lBQ2IsdUJBQXVCO0FBQzNCO0FBQ0E7RUFDRSw4QkFBOEI7QUFDaEMiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2FkbWluLW5vdGlmaWNhdGlvbi9hZG1pbi1ub3RpZmljYXRpb24uY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbInRleHRhcmVhIHtcclxuICAgIHdpZHRoOiA0MDBweDtcclxufVxyXG4uYWRkLW5vdGlmaWNhdGlvbiB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbn1cclxuOmhvc3QgOjpuZy1kZWVwIC51aS1wYW5lbC1ub3RpZmljYXRpb24ge1xyXG4gICAgd2lkdGg6IDkwMHB4O1xyXG59XHJcbi53cmFwcGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG4uYnRuLWNsZWFyIHtcclxuICBiYWNrZ3JvdW5kOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbn1cclxuIl19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-admin-notification',\r\n templateUrl: './admin-notification.component.html',\r\n styleUrls: ['./admin-notification.component.css']\r\n})\r\nexport class AdminNotificationComponent implements OnInit {\r\n\r\n form = new FormGroup({\r\n notificationMessage: new FormControl('', Validators.minLength(10)),\r\n lastDate: new FormControl(null, Validators.required),\r\n });\r\n showDialog: boolean = false;\r\n notifications = [];\r\n\r\n constructor(private _Service: RailFleetService) { }\r\n\r\n\r\n ngOnInit() {\r\n this.getNotificationData();\r\n }\r\n onFormSubmit() {\r\n if (!this.form.valid) {\r\n return;\r\n }\r\n let tDate = new Date(this.form.value.lastDate); //to be checked\r\n const data = { lastDate: tDate, notificationMessage: this.form.value.notificationMessage, createdBy: sessionStorage.getItem('userId')};\r\n // console.log(data);\r\n this._Service.addNotification(data).subscribe(val => {\r\n this.showDialog = false;\r\n this.getNotificationData();\r\n });\r\n // this.showDialog = false;\r\n }\r\n addNewNotification() {\r\n this.showDialog = true;\r\n }\r\n getNotificationData() {\r\n this._Service.getAllNotifications().subscribe((response: any) => {\r\n this.notifications = response;\r\n })\r\n }\r\n}\r\n","export default \".header-label {\\r\\n font-size: 20px;\\r\\n font-weight: 600;\\r\\n}\\r\\n.cust-label {\\r\\n font-weight: 500;\\r\\n text-align: end;\\r\\n}\\r\\n#admin-comp .not-activ-btn {\\r\\n background-color: #424549;\\r\\n float: left;\\r\\n width: 75px;\\r\\n border-radius: 5px;\\r\\n color: white;\\r\\n}\\r\\n#admin-comp .activ-btn {\\r\\n background-color: #004890;\\r\\n float: left;\\r\\n width: 75px;\\r\\n border-radius: 5px;\\r\\n margin-left: 10px;\\r\\n color: white;\\r\\n}\\r\\n@media screen and (min-width:320px) and (max-width:480px) {\\r\\n .cust-label{\\r\\n text-align: start;\\r\\n } \\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hZG1pbi9hZG1pbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksZUFBZTtJQUNmLGdCQUFnQjtBQUNwQjtBQUNBO0lBQ0ksZ0JBQWdCO0lBQ2hCLGVBQWU7QUFDbkI7QUFDQTtJQUNJLHlCQUF5QjtJQUN6QixXQUFXO0lBQ1gsV0FBVztJQUNYLGtCQUFrQjtJQUNsQixZQUFZO0FBQ2hCO0FBQ0E7SUFDSSx5QkFBeUI7SUFDekIsV0FBVztJQUNYLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsaUJBQWlCO0lBQ2pCLFlBQVk7QUFDaEI7QUFDQTtHQUNHO09BQ0ksaUJBQWlCO0dBQ3JCO0FBQ0giLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2FkbWluL2FkbWluLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuaGVhZGVyLWxhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLmN1c3QtbGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHRleHQtYWxpZ246IGVuZDtcclxufVxyXG4jYWRtaW4tY29tcCAubm90LWFjdGl2LWJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDI0NTQ5O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogNzVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG4jYWRtaW4tY29tcCAuYWN0aXYtYnRuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTA7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiA3NXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDozMjBweCkgYW5kIChtYXgtd2lkdGg6NDgwcHgpIHtcclxuICAgLmN1c3QtbGFiZWx7XHJcbiAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICAgfSBcclxufSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Global } from 'src/app/global';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-admin',\r\n templateUrl: './admin.component.html',\r\n styleUrls: ['./admin.component.css']\r\n})\r\nexport class AdminComponent implements OnInit {\r\n apiResp: any;\r\n globalUrlInput: any;\r\n globalValue: any;\r\n payLoad: any;\r\n userId: any;\r\n userAdmin: boolean = false;\r\n constructor(private global: Global, private _spinner: NgxSpinnerService, private toastr: ToastrService, private _service: RailFleetService, private router: Router) {\r\n this.globalValue = global;\r\n }\r\n\r\n ngOnInit() {\r\n this.userId = sessionStorage.getItem('userId');\r\n let role = sessionStorage.getItem('role');\r\n if(role != null && role != undefined && role != '' ) {\r\n if(role.includes('Admin')) {\r\n this.userAdmin = true;\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n if (this.userAdmin) {\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n\r\n modify() {\r\n this.global.attachmentsURL = this.globalUrlInput;\r\n this.payLoad = {\r\n \"id\": 0,\r\n \"url\": this.globalUrlInput,\r\n \"actionBy\": \"Nandha\",\r\n \"action\": \"Insert\"\r\n };\r\n this._spinner.show();\r\n this._service.updateAttachmentUrl(this.payLoad).subscribe(response => {\r\n this.apiResp = response;\r\n this.toastr.success(this.apiResp, \"Success!\");\r\n this._spinner.hide();\r\n });\r\n }\r\n}\r\n","export default \"th {\\r\\n font-style: normal;\\r\\n vertical-align: bottom;\\r\\n font-size: 1em;\\r\\n text-align: left;\\r\\n font-weight: normal;\\r\\n }\\r\\ntd\\r\\n{\\r\\ntext-align: center;\\r\\n}\\r\\n.btn-success{\\r\\n float: right;\\r\\n}\\r\\n\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9hbGxzcGVjcy9hbGxzcGVjcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksa0JBQWtCO0lBQ2xCLHNCQUFzQjtJQUN0QixjQUFjO0lBQ2QsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFQUNyQjtBQUNGOztBQUVBLGtCQUFrQjtBQUNsQjtBQUNBO0VBQ0UsWUFBWTtBQUNkIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9hbGxzcGVjcy9hbGxzcGVjcy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsidGgge1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgfVxyXG50ZFxyXG57XHJcbnRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4uYnRuLXN1Y2Nlc3N7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG59XHJcblxyXG4gICJdfQ== */\"","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-allspecs',\r\n templateUrl: './allspecs.component.html',\r\n styleUrls: ['./allspecs.component.css']\r\n})\r\nexport class AllspecsComponent implements OnInit {\r\n dataSource = new MatTableDataSource();\r\n apires:any;\r\n datasets:any;\r\n titile:any;\r\n constructor(@Inject(MAT_DIALOG_DATA) private Data: any, private dataService:RailFleetService) {\r\n \r\n }\r\n ngOnInit(): void {\r\n this.getAllSpecs(this.Data);\r\n }\r\n getAllSpecs(Data)\r\n {\r\n this.titile=Data;\r\n \r\n this.dataService.getAllSpecs(Data).subscribe((res :any)=> {\r\n this.apires=res;\r\n this.datasets=this.apires;\r\n })\r\n }\r\n sendEmail() {\r\n this.dataService.emailAllSpecs(this.Data).subscribe((res: any) => {\r\n this.apires = res;\r\n const blob = this.b64toBlob(this.apires, 'application/pdf');\r\n const blobUrl = URL.createObjectURL(blob);\r\n window.open(blobUrl,'_blank');\r\n })\r\n\r\n }\r\n b64toBlob = (b64Data, contentType='', sliceSize=512) => {\r\n const byteCharacters = atob(b64Data);\r\n const byteArrays = [];\r\n \r\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\r\n const slice = byteCharacters.slice(offset, offset + sliceSize);\r\n \r\n const byteNumbers = new Array(slice.length);\r\n for (let i = 0; i < slice.length; i++) {\r\n byteNumbers[i] = slice.charCodeAt(i);\r\n }\r\n \r\n const byteArray = new Uint8Array(byteNumbers);\r\n byteArrays.push(byteArray);\r\n }\r\n \r\n const blob = new Blob(byteArrays, {type: contentType});\r\n return blob;\r\n }\r\n downloadPdf() {\r\n var mywindow = window.open('', 'PRINT', 'height=400,width=600');\r\n mywindow.document.write('');\r\n mywindow.document.write('');\r\n mywindow.document.write('');\r\n var strEv = \"\";\r\n strEv = strEv + \"\";\r\n \r\n if (this.datasets[0].air_Brake_Test_Due != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n \r\n if (this.datasets[0].auxiliary_BOV_Size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].auxiliary_BOV_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].bottom_Outlet_Valve_Size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].bottom_Outlet_Valve_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].centerband_Materials != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].certification_Date != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].certification_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n } \r\n if (this.datasets[0].coil_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].coils != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].contract_FMV!= undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].fleet_Obj_Height!= undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].fleet_Obj_Height_Unit!= undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].fleet_Obj_Width != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].fleet_Obj_Width_Unit != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].fleet_Object_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].gasket_Type_Flat_Surf != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].hatch_Size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].hatch_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].hatch_Vent_Cover != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].insulation_Thickness != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].insulation_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].last_Fleet_Sizing != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].last_Paint != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].lining_Last_Date != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].lining_Product != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].load_Volume != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].max_Load_Weight != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].max_Load_weight_Unit != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].mileage_Credit_Rate != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].object_Length != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].object_Length_Unit != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outage_Table != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outlet_Gate_1_Size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outlet_Gate_1_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outlet_Gate_2_Size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outlet_Gate_2_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outlet_Gate_3_Size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outlet_Gate_3_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outlet_Gate_4_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].outlet_Gate_4_Type1 != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].paint_Product != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].rule_88_Due!= undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].rupture_Disc != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].sS_3_Due != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].safety_Valve_Size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].safety_Valve_Test_Due != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].safety_Valve_Type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].skid_Protection != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].status_Code!= undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].status_Comment != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].status_Date != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].tank_Qualified!= undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].tank_Test_Due != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].tare_Weight != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].tickness_Test != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].top_unload_valve_size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].top_unload_valve_type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].top_vent_valve_size != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].top_vent_valve_type != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].total_Weight != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if ( this.datasets[0].weight_Unit != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n if (this.datasets[0].y_PMTMEQRL_PRD_O_RING_MATERIAL != undefined)\r\n {\r\n strEv = strEv + \"\";\r\n }else\r\n {\r\n strEv = strEv + \"\";\r\n }\r\n \r\n strEv = strEv + \"

\"+this.titile+\"

Air_Brake_Test_Due:\" + this.datasets[0].air_Brake_Test_Due + \"
Air_Brake_Test_Due:\" +''+ \"
Auxiliary_BOV_Size:\" + this.datasets[0].auxiliary_BOV_Size+ \"
Auxiliary_BOV_Size:\" +''+ \"
Auxiliary_BOV_Type:\" + this.datasets[0].auxiliary_BOV_Type+ \"
Auxiliary_BOV_Type:\" +''+ \"
Bottom_Outlet_Valve_Size:\" + this.datasets[0].bottom_Outlet_Valve_Size + \"
Bottom_Outlet_Valve_Size:\" +''+ \"
Bottom_Outlet_Valve_Type:\" + this.datasets[0].bottom_Outlet_Valve_Type + \"
Bottom_Outlet_Valve_Type:\" +''+ \"
Centerband_Materials:\" + this.datasets[0].centerband_Materials + \"
Centerband_Materials:\" +''+ \"
Certification_Date:\" + this.datasets[0].certification_Date + \"
Certification_Date:\" +''+ \"
Certification_Type:\" + this.datasets[0].certification_Type + \"
Certification_Type:\" +''+ \"
Coil_Type:\" + this.datasets[0].coil_Type+ \"
Coil_Type:\" +''+ \"
Coils:\" + this.datasets[0].coils + \"
Coils:\" +''+ \"
Contract_FMV:\" + this.datasets[0].contract_FMV + \"
Contract_FMV:\" +''+ \"
Fleet_Obj_Height:\" + this.datasets[0].fleet_Obj_Height + \"
Fleet_Obj_Height:\" +''+ \"
Fleet_Obj_Height_Unit:\" + this.datasets[0].fleet_Obj_Height_Unit + \"
Fleet_Obj_Height_Unit:\" +''+ \"
Fleet_Obj_Width:\" + this.datasets[0].fleet_Obj_Width + \"
Fleet_Obj_Width:\" +''+ \"
Fleet_Obj_Width_Unit:\" + this.datasets[0].fleet_Obj_Width_Unit + \"
Fleet_Obj_Width_Unit:\" +''+ \"
Fleet_Object_Type:\" + this.datasets[0].fleet_Object_Type + \"
Fleet_Object_Type:\" +''+ \"
Gasket_Type_Flat_Surf:\" + this.datasets[0].gasket_Type_Flat_Surf + \"
Gasket_Type_Flat_Surf:\" +''+ \"
Hatch_Size:\" + this.datasets[0].hatch_Size + \"
Hatch_Size:\" +''+ \"
Hatch_Type:\" + this.datasets[0].hatch_Type + \"
Hatch_Type:\" +''+ \"
Hatch_Vent_Cover:\" + this.datasets[0].hatch_Vent_Cover + \"
Hatch_Vent_Cover:\" +''+ \"
Insulation_Thickness:\" + this.datasets[0].insulation_Thickness + \"
Insulation_Thickness:\" +''+ \"
Insulation_Type:\" + this.datasets[0].insulation_Type + \"
Insulation_Type:\" +''+ \"
Last_Fleet_Sizing:\" + this.datasets[0].last_Fleet_Sizing + \"
Last_Fleet_Sizing:\" +''+ \"
Last_Paint:\" + this.datasets[0].last_Paint + \"
Last_Paint:\" +''+ \"
Lining_Last_Date:\" + this.datasets[0].lining_Last_Date + \"
Lining_Last_Date:\" +''+ \"
Lining_Product:\" + this.datasets[0].lining_Product + \"
Lining_Product:\" +''+ \"
Load_Volume:\" + this.datasets[0].load_Volume + \"
Load_Volume:\" +''+ \"
Max_Load_Weight:\" + this.datasets[0].max_Load_Weight + \"
Max_Load_Weight:\" +''+ \"
Max_Load_weight_Unit:\" + this.datasets[0].max_Load_weight_Unit + \"
Max_Load_weight_Unit:\" +''+ \"
Mileage_Credit_Rate:\" + this.datasets[0].mileage_Credit_Rate + \"
Mileage_Credit_Rate:\" + + \"
Object_Length:\" + this.datasets[0].object_Length + \"
Object_Length:\" +''+ \"
Object_Length_Unit:\" + this.datasets[0].object_Length_Unit + \"
Object_Length_Unit:\" +''+ \"
Outage_Table:\" + this.datasets[0].outage_Table + \"
Outage_Table:\" +''+ \"
Outlet_Gate_1_Size:\" + this.datasets[0].outlet_Gate_1_Size + \"
Outlet_Gate_1_Size:\" +''+ \"
Outlet_Gate_1_Type:\" + this.datasets[0].outlet_Gate_1_Type + \"
Outlet_Gate_1_Type:\" +''+ \"
Outlet_Gate_2_Size:\" + this.datasets[0].outlet_Gate_2_Size + \"
Outlet_Gate_2_Size:\" +''+ \"
Outlet_Gate_2_Type:\" + this.datasets[0].outlet_Gate_2_Type + \"
Outlet_Gate_2_Type:\" +''+ \"
Outlet_Gate_3_Size:\" + this.datasets[0].outlet_Gate_3_Size + \"
Outlet_Gate_3_Size:\" +''+ \"
Outlet_Gate_3_Type:\" + this.datasets[0].outlet_Gate_3_Type + \"
Outlet_Gate_3_Type:\" +''+ \"
Outlet_Gate_4_Type:\" + this.datasets[0].outlet_Gate_4_Type + \"
Outlet_Gate_4_Type:\" +''+ \"
Outlet_Gate_4_Type1:\" + this.datasets[0].outlet_Gate_4_Type1 + \"
Outlet_Gate_4_Type1:\" +''+ \"
Paint_Product:\" + this.datasets[0].paint_Product + \"
Paint_Product:\" +''+ \"
Rule_88_Due:\" + this.datasets[0].rule_88_Due + \"
Rule_88_Due:\" +''+ \"
Rupture_Disc:\" + this.datasets[0].rupture_Disc + \"
Rupture_Disc:\" +''+ \"
SS-3_Due:\" + this.datasets[0].sS_3_Due + \"
SS-3_Due:\" +''+ \"
Safety_Valve_Size:\" + this.datasets[0].safety_Valve_Size + \"
Safety_Valve_Size:\" +''+ \"
Safety_Valve_Test_Due:\" + this.datasets[0].safety_Valve_Test_Due + \"
Safety_Valve_Test_Due:\" +''+ \"
Safety_Valve_Type:\" + this.datasets[0].safety_Valve_Type + \"
Safety_Valve_Type:\" +''+ \"
Skid_Protection:\" + this.datasets[0].skid_Protection + \"
Skid_Protection:\" +''+ \"
Status_Code:\" + this.datasets[0].status_Code+ \"
Status_Code:\" +''+ \"
Status_Comment:\" + this.datasets[0].status_Comment + \"
Status_Comment:\" +''+ \"
Status_Date:\" + this.datasets[0].status_Date + \"
Status_Date:\" +''+ \"
Tank_Qualified:\" + this.datasets[0].tank_Qualified+ \"
Tank_Qualified:\" +''+ \"
Tank_Test_Due:\" + this.datasets[0].tank_Test_Due + \"
Tank_Test_Due:\" +''+ \"
Tare_Weight:\" + this.datasets[0].tare_Weight + \"
Tare_Weight:\" +''+ \"
Tickness_Test:\" + this.datasets[0].tickness_Test + \"
Tickness_Test:\" +''+ \"
Top_unload_valve_size:\" + this.datasets[0].top_unload_valve_size + \"
Top_unload_valve_size:\" +''+ \"
Top_unload_valve_type:\" + this.datasets[0].top_unload_valve_type + \"
Top_unload_valve_type:\" +''+ \"
Top_vent_valve_size:\" + this.datasets[0].top_vent_valve_size + \"
Top_vent_valve_size:\" +''+ \"
Top_vent_valve_type:\" + this.datasets[0].top_vent_valve_type + \"
Top_vent_valve_type:\" +''+ \"
Total_Weight:\" + this.datasets[0].total_Weight + \"
Total_Weight:\" +''+ \"
Weight_Unit:\" + this.datasets[0].weight_Unit + \"
Weight_Unit:\" +''+ \"
Y_PMTMEQRL_PRD_O_RING_MATERIAL:\" + this.datasets[0].y_PMTMEQRL_PRD_O_RING_MATERIAL + \"
Y_PMTMEQRL_PRD_O_RING_MATERIAL:\" +'' + \"
\"; \r\n\r\n mywindow.document.write(strEv);\r\n mywindow.document.write(''); \r\n mywindow.document.close(); mywindow.focus();\r\n mywindow.document.title = this.titile;\r\n mywindow.print();\r\n mywindow.close();\r\n\r\n return true;\r\n\r\n }\r\n\r\n}\r\n","export default \".copyright {\\r\\n text-align: start !important;\\r\\n line-height: 40px;\\r\\n color: #fff;\\r\\n font-size: 10px;\\r\\n padding-left: 20px;\\r\\n}\\r\\n\\r\\n.footer {\\r\\n position: fixed;\\r\\n bottom: 0;\\r\\n background-color: #4f4f4f;\\r\\n z-index: 1;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSw0QkFBNEI7RUFDNUIsaUJBQWlCO0VBQ2pCLFdBQVc7RUFDWCxlQUFlO0VBQ2Ysa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLFNBQVM7RUFDVCx5QkFBeUI7RUFDekIsVUFBVTtBQUNaIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuY29weXJpZ2h0IHtcclxuICB0ZXh0LWFsaWduOiBzdGFydCAhaW1wb3J0YW50O1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGZvbnQtc2l6ZTogMTBweDtcclxuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbn1cclxuXHJcbi5mb290ZXIge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBib3R0b206IDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRmNGY0ZjtcclxuICB6LWluZGV4OiAxO1xyXG59XHJcbiJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.css']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","export default \".header-bg {\\r\\n background-color: white;\\r\\n}\\r\\n\\r\\nul > li > a {\\r\\n font-size: 16px;\\r\\n font-weight: 600;\\r\\n color: #ffffff;\\r\\n}\\r\\n\\r\\n.nav-link {\\r\\n padding: 1rem 1rem;\\r\\n}\\r\\n\\r\\n.nav-link:hover {\\r\\n color:#cfcfcf !important;\\r\\n }\\r\\n\\r\\n.active {\\r\\n border-bottom: 4px solid #cfcfcf;\\r\\n color: #004890;\\r\\n}\\r\\n\\r\\n.navbar-light .navbar-nav .active > .nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show > .nav-link {\\r\\n color: #cfcfcf !important;\\r\\n}\\r\\n\\r\\n.nav-img {\\r\\n padding: 0px;\\r\\n margin-right: 0px;\\r\\n}\\r\\n\\r\\n#QA_ENV {\\r\\n color: red;\\r\\n font-size: 40px;\\r\\n font-weight: bold;\\r\\n padding-left: 25px;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSx1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxrQkFBa0I7QUFDcEI7O0FBRUU7TUFDSSx3QkFBd0I7RUFDNUI7O0FBRUY7RUFDRSxnQ0FBZ0M7RUFDaEMsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLFlBQVk7RUFDWixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxVQUFVO0VBQ1YsZUFBZTtFQUNmLGlCQUFpQjtFQUNqQixrQkFBa0I7QUFDcEIiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2hlYWRlci9oZWFkZXIuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5oZWFkZXItYmcge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG51bCA+IGxpID4gYSB7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgY29sb3I6ICNmZmZmZmY7XHJcbn1cclxuXHJcbi5uYXYtbGluayB7XHJcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xyXG59XHJcblxyXG4gIC5uYXYtbGluazpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiNjZmNmY2YgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4uYWN0aXZlIHtcclxuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2NmY2ZjZjtcclxuICBjb2xvcjogIzAwNDg5MDtcclxufVxyXG5cclxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuYWN0aXZlID4gLm5hdi1saW5rLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmsge1xyXG4gIGNvbG9yOiAjY2ZjZmNmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5uYXYtaW1nIHtcclxuICBwYWRkaW5nOiAwcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XHJcbn1cclxuXHJcbiNRQV9FTlYge1xyXG4gIGNvbG9yOiByZWQ7XHJcbiAgZm9udC1zaXplOiA0MHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIHBhZGRpbmctbGVmdDogMjVweDtcclxufVxyXG4iXX0= */\"","import { Component, Input, OnInit, SimpleChanges } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n styleUrls: ['./header.component.css']\r\n})\r\nexport class HeaderComponent implements OnInit {\r\n apiResp: any;\r\n @Input() userAccess;\r\n @Input() userAdmin;\r\n isProd: boolean = false;\r\n shownavmenu: boolean = true;\r\n menuFlag: boolean = false;\r\n constructor(private _service: RailFleetService, private router: Router) { }\r\n\r\n ngOnInit() {\r\n this._service.getNavmenustatus().subscribe((res: boolean) => {\r\n this.shownavmenu = res;\r\n });\r\n\r\n const url = document.getElementsByTagName('base')[0].href.toLowerCase();\r\n if(url.includes('railfleet.basf')) {\r\n this.isProd = true;\r\n }\r\n }\r\n\r\n navigateToLink() {\r\n console.log(\"link\")\r\n this._service.getAllDocumentsUrls().subscribe(response => {\r\n console.log(response);\r\n window.open(response[0].url, '_blank');\r\n });\r\n }\r\n\r\n}\r\n","export default \"body .ui-table .ui-table-thead > tr > th {\\r\\n background-color: #004890;\\r\\n color: #ffffff;\\r\\n font-size: 14px;\\r\\n font-weight: 600;\\r\\n padding: 3px;\\r\\n text-align: center;\\r\\n /*border: 1px solid #e1f0ff;*/\\r\\n min-width: 107px !important;\\r\\n}\\r\\n\\r\\n body .ui-table .ui-table-thead > tr > th > div {\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n }\\r\\n\\r\\n body .ui-table .ui-table-tbody > tr > td {\\r\\n font-size: 14px;\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n padding: 0 4px;\\r\\n color: black;\\r\\n font-weight: 500;\\r\\n border: 1px solid #e1f0ff;\\r\\n text-overflow: ellipsis;\\r\\n vertical-align: middle !important;\\r\\n}\\r\\n\\r\\n .accordion-img-icon {\\r\\n margin-right: 6px;\\r\\n margin-bottom: 2px;\\r\\n margin-top: 2px;\\r\\n margin-left: 2px;\\r\\n height: 20px;\\r\\n width: 20px;\\r\\n}\\r\\n\\r\\n .text-style {\\r\\n overflow-wrap: break-word;\\r\\n text-align: left;\\r\\n}\\r\\n\\r\\n .number-style {\\r\\n overflow-wrap: break-word;\\r\\n text-align: right;\\r\\n}\\r\\n\\r\\n .pointer-cursor {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n #railCarTable .edit-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n right: 0px !important;\\r\\n}\\r\\n\\r\\n #railCarTable .ui-paginator {\\r\\n margin-top: 5px !important;\\r\\n background-color: white !important;\\r\\n border: none !important;\\r\\n float: right !important;\\r\\n}\\r\\n\\r\\n #railCarTable .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {\\r\\n background-color: #004890 !important;\\r\\n color: white !important;\\r\\n }\\r\\n\\r\\n #railCarTable .ui-multiselect .ui-multiselect-panel .ui-multiselect-items {\\r\\n left: -292px !important;\\r\\n right: 0px !important;\\r\\n float: left;\\r\\n width: 150px;\\r\\n}\\r\\n\\r\\n #railCarTable .ui-chkbox .ui-chkbox-box.ui-state-active {\\r\\n border-color: #004890 !important;\\r\\n background-color: #004890 !important;\\r\\n color: #ffffff !important;\\r\\n}\\r\\n\\r\\n #railCarTable .ui-table table {\\r\\n width: -webkit-fit-content !important;\\r\\n width: -moz-fit-content !important;\\r\\n width: fit-content !important;\\r\\n}\\r\\n\\r\\n #railCarTable .ui-table table tbody tr td p {\\r\\n margin-bottom: 0 !important;\\r\\n }\\r\\n\\r\\n #railCarTable .ui-table-scrollable-header,\\r\\n.ui-table-scrollable-footer {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n background-color: white;\\r\\n z-index: 9999;\\r\\n}\\r\\n\\r\\n #railCarTable .ui-table-scrollable-header-box {\\r\\n margin-right: 60px !important;\\r\\n}\\r\\n\\r\\n #railCarTable .ui-table-scrollable-body {\\r\\n min-height: calc(100vh - 280px) !important;\\r\\n}\\r\\n\\r\\n button[disabled] {\\r\\n cursor: no-drop;\\r\\n}\\r\\n\\r\\n #railCarTable .actionbar {\\r\\n text-align: end;\\r\\n display: flex;\\r\\n align-items: center;\\r\\n justify-content: end;\\r\\n}\\r\\n\\r\\n #railCarTable .excelIcon {\\r\\n font-size: 1.5em;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n color: white;\\r\\n border-radius: 5px;\\r\\n padding: 6px;\\r\\n margin-left: 10px;\\r\\n top: -7px;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n #railCarTable .checkbox-columnHdr {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n left: 0px !important;\\r\\n top: 0px !important;\\r\\n z-index: 999999;\\r\\n}\\r\\n\\r\\n #railCarTable .railCarID-columnHdr {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n left: 106.25px !important;\\r\\n top: 0px !important;\\r\\n z-index: 999999;\\r\\n}\\r\\n\\r\\n #railCarTable .checkbox-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n left: 0px !important;\\r\\n /*z-index: 99999;*/\\r\\n}\\r\\n\\r\\n #railCarTable .railCarID-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n left: 106.25px !important;\\r\\n /*z-index: 99999;*/\\r\\n}\\r\\n\\r\\n .ui-table .ui-table-thead {\\r\\n position: -webkit-sticky !important;\\r\\n position: sticky !important;\\r\\n top: 0px !important;\\r\\n z-index: 997 !important;\\r\\n}\\r\\n\\r\\n .ui-table .ui-table-tbody {\\r\\n z-index: 996 !important;\\r\\n}\\r\\n\\r\\n /* .ui-table .ui-table-thead > tr:nth-child(1) {\\r\\n position: -webkit-sticky !important;\\r\\n position: sticky !important;\\r\\n top: 0px !important;\\r\\n z-index: 9999 !important;\\r\\n}\\r\\n.ui-table .ui-table-thead > tr > th {\\r\\n position: -webkit-sticky !important;\\r\\n position: sticky !important;\\r\\n}\\r\\n\\r\\n.ui-table .ui-table-thead > tr:nth-child(2) {\\r\\n position: -webkit-sticky !important;\\r\\n position: sticky !important;\\r\\n top: 50px !important;\\r\\n z-index: 9999 !important;\\r\\n} */\\r\\n\\r\\n #permittedCommodities-multiselect .ui-multiselect .ui-multiselect-label {\\r\\n padding: 2px 10px;\\r\\n}\\r\\n\\r\\n #edit-dropdown .ui-dropdown label.ui-dropdown-label {\\r\\n padding: 2px 10px;\\r\\n}\\r\\n\\r\\n #edit-calendar .ui-button.ui-button-icon-only .ui-button-text {\\r\\n padding: 3px\\r\\n}\\r\\n\\r\\n #edit-calendar .ui-calendar.ui-calendar-w-btn .ui-inputtext {\\r\\n padding: 2px;\\r\\n}\\r\\n\\r\\n #railCarTable .ui-table-wrapper table {\\r\\n border-collapse: separate;\\r\\n border-spacing: 0;\\r\\n}\\r\\n\\r\\n .btn-clear {\\r\\n background: #004890 !important;\\r\\n}\\r\\n\\r\\n @media screen and (max-width: 64em) {\\r\\n .ui-table .ui-table-thead > tr > th {\\r\\n top: 100px;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-width: 1000px) {\\r\\n\\r\\n /* #railCarTable .ui-table-scrollable-body {\\r\\n min-height: calc(100vh - 370px) !important;\\r\\n } */\\r\\n .cf {\\r\\n margin-top: 140px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (max-height: 500px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n max-height: 55vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-height: 500px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n height: 60vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-height: 600px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n height: 63vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-height: 710px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n height: 68vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-height: 800px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n height: 70vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-height: 900px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n max-height: 77vh !important;\\r\\n height: auto !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-height: 1300px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n max-height: 80vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-width: 1052px) {\\r\\n\\r\\n /* #railCarTable .ui-table-scrollable-body {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n } */\\r\\n .cf {\\r\\n margin-top: 110px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-width: 1407px) {\\r\\n\\r\\n /* #railCarTable .ui-table-scrollable-body {\\r\\n max-height: calc(100vh - 300px) !important;\\r\\n } */\\r\\n .cf {\\r\\n margin-top: 80px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n @media screen and (min-width: 320px) and (max-width: 768px) {\\r\\n #railCarTable .ui-multiselect .ui-multiselect-panel {\\r\\n left: 0px !important;\\r\\n right: 0px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9oaXN0b3JpY2FsLW1haW50ZW5hbmNlL2hpc3RvcmljYWwtbWFpbnRlbmFuY2UuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHlCQUF5QjtFQUN6QixjQUFjO0VBQ2QsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLDZCQUE2QjtFQUM3QiwyQkFBMkI7QUFDN0I7O0VBRUU7SUFDRSxxQkFBcUI7SUFDckIsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQix1QkFBdUI7RUFDekI7O0VBRUY7RUFDRSxlQUFlO0VBQ2YscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIseUJBQXlCO0VBQ3pCLHVCQUF1QjtFQUN2QixpQ0FBaUM7QUFDbkM7O0VBRUE7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLFdBQVc7QUFDYjs7RUFFQTtFQUNFLHlCQUF5QjtFQUN6QixnQkFBZ0I7QUFDbEI7O0VBRUE7RUFDRSx5QkFBeUI7RUFDekIsaUJBQWlCO0FBQ25COztFQUVBO0VBQ0UsZUFBZTtBQUNqQjs7RUFFQTtFQUNFLHdCQUFnQjtFQUFoQixnQkFBZ0I7RUFDaEIscUJBQXFCO0FBQ3ZCOztFQUVBO0VBQ0UsMEJBQTBCO0VBQzFCLGtDQUFrQztFQUNsQyx1QkFBdUI7RUFDdkIsdUJBQXVCO0FBQ3pCOztFQUVFO0lBQ0Usb0NBQW9DO0lBQ3BDLHVCQUF1QjtFQUN6Qjs7RUFFRjtFQUNFLHVCQUF1QjtFQUN2QixxQkFBcUI7RUFDckIsV0FBVztFQUNYLFlBQVk7QUFDZDs7RUFFQTtFQUNFLGdDQUFnQztFQUNoQyxvQ0FBb0M7RUFDcEMseUJBQXlCO0FBQzNCOztFQUVBO0VBQ0UscUNBQTZCO0VBQTdCLGtDQUE2QjtFQUE3Qiw2QkFBNkI7QUFDL0I7O0VBRUU7SUFDRSwyQkFBMkI7RUFDN0I7O0VBRUY7O0VBRUUsd0JBQWdCO0VBQWhCLGdCQUFnQjtFQUNoQix1QkFBdUI7RUFDdkIsYUFBYTtBQUNmOztFQUVBO0VBQ0UsNkJBQTZCO0FBQy9COztFQUVBO0VBQ0UsMENBQTBDO0FBQzVDOztFQUVBO0VBQ0UsZUFBZTtBQUNqQjs7RUFFQTtFQUNFLGVBQWU7RUFDZixhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLG9CQUFvQjtBQUN0Qjs7RUFFQTtFQUNFLGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YseUJBQXlCO0VBQ3pCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixTQUFTO0VBQ1Qsa0JBQWtCO0FBQ3BCOztFQUVBO0VBQ0Usd0JBQWdCO0VBQWhCLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsbUJBQW1CO0VBQ25CLGVBQWU7QUFDakI7O0VBRUE7RUFDRSx3QkFBZ0I7RUFBaEIsZ0JBQWdCO0VBQ2hCLHlCQUF5QjtFQUN6QixtQkFBbUI7RUFDbkIsZUFBZTtBQUNqQjs7RUFFQTtFQUNFLHdCQUFnQjtFQUFoQixnQkFBZ0I7RUFDaEIsb0JBQW9CO0VBQ3BCLGtCQUFrQjtBQUNwQjs7RUFFQTtFQUNFLHdCQUFnQjtFQUFoQixnQkFBZ0I7RUFDaEIseUJBQXlCO0VBQ3pCLGtCQUFrQjtBQUNwQjs7RUFFQTtFQUNFLG1DQUFtQztFQUNuQywyQkFBMkI7RUFDM0IsbUJBQW1CO0VBQ25CLHVCQUF1QjtBQUN6Qjs7RUFFQTtFQUNFLHVCQUF1QjtBQUN6Qjs7RUFFQTs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRzs7RUFFSDtFQUNFLGlCQUFpQjtBQUNuQjs7RUFFQTtFQUNFLGlCQUFpQjtBQUNuQjs7RUFFQTtFQUNFO0FBQ0Y7O0VBRUE7RUFDRSxZQUFZO0FBQ2Q7O0VBRUE7RUFDRSx5QkFBeUI7RUFDekIsaUJBQWlCO0FBQ25COztFQUVBO0VBQ0UsOEJBQThCO0FBQ2hDOztFQUdBO0VBQ0U7SUFDRSxVQUFVO0VBQ1o7QUFDRjs7RUFFQTs7RUFFRTs7T0FFSztFQUNMO0lBQ0UsNEJBQTRCO0VBQzlCO0FBQ0Y7O0VBRUE7RUFDRTtJQUNFLDJCQUEyQjtFQUM3QjtBQUNGOztFQUVBO0VBQ0U7SUFDRSx1QkFBdUI7RUFDekI7QUFDRjs7RUFFQTtFQUNFO0lBQ0UsdUJBQXVCO0VBQ3pCO0FBQ0Y7O0VBRUE7RUFDRTtJQUNFLHVCQUF1QjtFQUN6QjtBQUNGOztFQUVBO0VBQ0U7SUFDRSx1QkFBdUI7RUFDekI7QUFDRjs7RUFFQTtFQUNFO0lBQ0UsMkJBQTJCO0lBQzNCLHVCQUF1QjtFQUN6QjtBQUNGOztFQUVBO0VBQ0U7SUFDRSwyQkFBMkI7RUFDN0I7QUFDRjs7RUFHQTs7RUFFRTs7T0FFSztFQUNMO0lBQ0UsNEJBQTRCO0VBQzlCO0FBQ0Y7O0VBRUE7O0VBRUU7O09BRUs7RUFDTDtJQUNFLDJCQUEyQjtFQUM3QjtBQUNGOztFQUVBO0VBQ0U7SUFDRSxvQkFBb0I7SUFDcEIscUJBQXFCO0VBQ3ZCO0FBQ0YiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2hpc3RvcmljYWwtbWFpbnRlbmFuY2UvaGlzdG9yaWNhbC1tYWludGVuYW5jZS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiYm9keSAudWktdGFibGUgLnVpLXRhYmxlLXRoZWFkID4gdHIgPiB0aCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MDtcclxuICBjb2xvcjogI2ZmZmZmZjtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBwYWRkaW5nOiAzcHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIC8qYm9yZGVyOiAxcHggc29saWQgI2UxZjBmZjsqL1xyXG4gIG1pbi13aWR0aDogMTA3cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuICBib2R5IC51aS10YWJsZSAudWktdGFibGUtdGhlYWQgPiB0ciA+IHRoID4gZGl2IHtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgfVxyXG5cclxuYm9keSAudWktdGFibGUgLnVpLXRhYmxlLXRib2R5ID4gdHIgPiB0ZCB7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZzogMCA0cHg7XHJcbiAgY29sb3I6IGJsYWNrO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZjBmZjtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hY2NvcmRpb24taW1nLWljb24ge1xyXG4gIG1hcmdpbi1yaWdodDogNnB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDJweDtcclxuICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICBoZWlnaHQ6IDIwcHg7XHJcbiAgd2lkdGg6IDIwcHg7XHJcbn1cclxuXHJcbi50ZXh0LXN0eWxlIHtcclxuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5udW1iZXItc3R5bGUge1xyXG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbi5wb2ludGVyLWN1cnNvciB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC5lZGl0LWNvbHVtbiB7XHJcbiAgcG9zaXRpb246IHN0aWNreTtcclxuICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLnVpLXBhZ2luYXRvciB7XHJcbiAgbWFyZ2luLXRvcDogNXB4ICFpbXBvcnRhbnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcclxufVxyXG5cclxuICAjcmFpbENhclRhYmxlIC51aS1wYWdpbmF0b3IgLnVpLXBhZ2luYXRvci1wYWdlcyAudWktcGFnaW5hdG9yLXBhZ2UudWktc3RhdGUtYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTAgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLnVpLW11bHRpc2VsZWN0IC51aS1tdWx0aXNlbGVjdC1wYW5lbCAudWktbXVsdGlzZWxlY3QtaXRlbXMge1xyXG4gIGxlZnQ6IC0yOTJweCAhaW1wb3J0YW50O1xyXG4gIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICBmbG9hdDogbGVmdDtcclxuICB3aWR0aDogMTUwcHg7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLnVpLWNoa2JveCAudWktY2hrYm94LWJveC51aS1zdGF0ZS1hY3RpdmUge1xyXG4gIGJvcmRlci1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTAgIWltcG9ydGFudDtcclxuICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC51aS10YWJsZSB0YWJsZSB7XHJcbiAgd2lkdGg6IGZpdC1jb250ZW50ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUgdGFibGUgdGJvZHkgdHIgdGQgcCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuI3JhaWxDYXJUYWJsZSAudWktdGFibGUtc2Nyb2xsYWJsZS1oZWFkZXIsXHJcbi51aS10YWJsZS1zY3JvbGxhYmxlLWZvb3RlciB7XHJcbiAgcG9zaXRpb246IHN0aWNreTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICB6LWluZGV4OiA5OTk5O1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWhlYWRlci1ib3gge1xyXG4gIG1hcmdpbi1yaWdodDogNjBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyODBweCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuYnV0dG9uW2Rpc2FibGVkXSB7XHJcbiAgY3Vyc29yOiBuby1kcm9wO1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC5hY3Rpb25iYXIge1xyXG4gIHRleHQtYWxpZ246IGVuZDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBlbmQ7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLmV4Y2VsSWNvbiB7XHJcbiAgZm9udC1zaXplOiAxLjVlbTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MDtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIHBhZGRpbmc6IDZweDtcclxuICBtYXJnaW4tbGVmdDogMTBweDtcclxuICB0b3A6IC03cHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC5jaGVja2JveC1jb2x1bW5IZHIge1xyXG4gIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgbGVmdDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgdG9wOiAwcHggIWltcG9ydGFudDtcclxuICB6LWluZGV4OiA5OTk5OTk7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLnJhaWxDYXJJRC1jb2x1bW5IZHIge1xyXG4gIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgbGVmdDogMTA2LjI1cHggIWltcG9ydGFudDtcclxuICB0b3A6IDBweCAhaW1wb3J0YW50O1xyXG4gIHotaW5kZXg6IDk5OTk5OTtcclxufVxyXG5cclxuI3JhaWxDYXJUYWJsZSAuY2hlY2tib3gtY29sdW1uIHtcclxuICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG4gIC8qei1pbmRleDogOTk5OTk7Ki9cclxufVxyXG5cclxuI3JhaWxDYXJUYWJsZSAucmFpbENhcklELWNvbHVtbiB7XHJcbiAgcG9zaXRpb246IHN0aWNreTtcclxuICBsZWZ0OiAxMDYuMjVweCAhaW1wb3J0YW50O1xyXG4gIC8qei1pbmRleDogOTk5OTk7Ki9cclxufVxyXG5cclxuLnVpLXRhYmxlIC51aS10YWJsZS10aGVhZCB7XHJcbiAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5ICFpbXBvcnRhbnQ7XHJcbiAgcG9zaXRpb246IHN0aWNreSAhaW1wb3J0YW50O1xyXG4gIHRvcDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgei1pbmRleDogOTk3ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi51aS10YWJsZSAudWktdGFibGUtdGJvZHkge1xyXG4gIHotaW5kZXg6IDk5NiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiAudWktdGFibGUgLnVpLXRhYmxlLXRoZWFkID4gdHI6bnRoLWNoaWxkKDEpIHtcclxuICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreSAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHN0aWNreSAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiAwcHggIWltcG9ydGFudDtcclxuICAgIHotaW5kZXg6IDk5OTkgIWltcG9ydGFudDtcclxufVxyXG4udWktdGFibGUgLnVpLXRhYmxlLXRoZWFkID4gdHIgPiB0aCB7XHJcbiAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3kgIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnVpLXRhYmxlIC51aS10YWJsZS10aGVhZCA+IHRyOm50aC1jaGlsZCgyKSB7XHJcbiAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3kgIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcclxuICAgIHRvcDogNTBweCAhaW1wb3J0YW50O1xyXG4gICAgei1pbmRleDogOTk5OSAhaW1wb3J0YW50O1xyXG59ICovXHJcblxyXG4jcGVybWl0dGVkQ29tbW9kaXRpZXMtbXVsdGlzZWxlY3QgLnVpLW11bHRpc2VsZWN0IC51aS1tdWx0aXNlbGVjdC1sYWJlbCB7XHJcbiAgcGFkZGluZzogMnB4IDEwcHg7XHJcbn1cclxuXHJcbiNlZGl0LWRyb3Bkb3duIC51aS1kcm9wZG93biBsYWJlbC51aS1kcm9wZG93bi1sYWJlbCB7XHJcbiAgcGFkZGluZzogMnB4IDEwcHg7XHJcbn1cclxuXHJcbiNlZGl0LWNhbGVuZGFyIC51aS1idXR0b24udWktYnV0dG9uLWljb24tb25seSAudWktYnV0dG9uLXRleHQge1xyXG4gIHBhZGRpbmc6IDNweFxyXG59XHJcblxyXG4jZWRpdC1jYWxlbmRhciAudWktY2FsZW5kYXIudWktY2FsZW5kYXItdy1idG4gLnVpLWlucHV0dGV4dCB7XHJcbiAgcGFkZGluZzogMnB4O1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC51aS10YWJsZS13cmFwcGVyIHRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcblxyXG4uYnRuLWNsZWFyIHtcclxuICBiYWNrZ3JvdW5kOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NGVtKSB7XHJcbiAgLnVpLXRhYmxlIC51aS10YWJsZS10aGVhZCA+IHRyID4gdGgge1xyXG4gICAgdG9wOiAxMDBweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCkge1xyXG5cclxuICAvKiAjcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzNzBweCkgIWltcG9ydGFudDtcclxuICAgIH0gKi9cclxuICAuY2Yge1xyXG4gICAgbWFyZ2luLXRvcDogMTQwcHggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA1MDBweCkge1xyXG4gICNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXdyYXBwZXIge1xyXG4gICAgbWF4LWhlaWdodDogNTV2aCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6IDUwMHB4KSB7XHJcbiAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB7XHJcbiAgICBoZWlnaHQ6IDYwdmggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA2MDBweCkge1xyXG4gICNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXdyYXBwZXIge1xyXG4gICAgaGVpZ2h0OiA2M3ZoICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogNzEwcHgpIHtcclxuICAjcmFpbENhclRhYmxlIC51aS10YWJsZS13cmFwcGVyIHtcclxuICAgIGhlaWdodDogNjh2aCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6IDgwMHB4KSB7XHJcbiAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB7XHJcbiAgICBoZWlnaHQ6IDcwdmggIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA5MDBweCkge1xyXG4gICNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXdyYXBwZXIge1xyXG4gICAgbWF4LWhlaWdodDogNzd2aCAhaW1wb3J0YW50O1xyXG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogMTMwMHB4KSB7XHJcbiAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB7XHJcbiAgICBtYXgtaGVpZ2h0OiA4MHZoICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MnB4KSB7XHJcblxyXG4gIC8qICNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtYm9keSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMyMHB4KSAhaW1wb3J0YW50O1xyXG4gICAgfSAqL1xyXG4gIC5jZiB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMTBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwN3B4KSB7XHJcblxyXG4gIC8qICNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtYm9keSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMwMHB4KSAhaW1wb3J0YW50O1xyXG4gICAgfSAqL1xyXG4gIC5jZiB7XHJcbiAgICBtYXJnaW4tdG9wOiA4MHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgI3JhaWxDYXJUYWJsZSAudWktbXVsdGlzZWxlY3QgLnVpLW11bHRpc2VsZWN0LXBhbmVsIHtcclxuICAgIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4iXX0= */\"","import { AfterViewChecked, AfterViewInit, Component, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { Table } from 'primeng/table';\r\nimport { RailFleetService } from '../../../services/rail-fleet.service';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\nimport { SortEvent } from 'primeng/api';\r\nimport { Router } from '@angular/router';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n\r\nconst EXCEL_EXTENSION = '.xlsx';\r\n\r\n@Component({\r\n selector: 'app-historical-maintenance',\r\n templateUrl: './historical-maintenance.component.html',\r\n styleUrls: ['./historical-maintenance.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class HistoricalMaintenanceComponent implements OnInit, AfterViewInit, AfterViewChecked {\r\n cols: any[];\r\n sortedCols: any[];\r\n selectedCols = [];\r\n defaultWidth: '100%';\r\n viewColHeight: any;\r\n activeCarsData: any;\r\n filteredCols: any[] = [];\r\n orgActiveCarsData: any = [];\r\n filteredData: any;\r\n pushingPC: any;\r\n @ViewChild('dt', { static: false }) dt: Table;\r\n apiResp: any;\r\n userId: any;\r\n userAdmin: boolean = false;\r\n filteredFields = [];\r\n tempFilteredData: any;\r\n selectedValues: any = [];\r\n bulkEdit = false;\r\n permittedCommodities = [];\r\n tableUpdate = false;\r\n railcarIDCount = 0;\r\n sumTotal = 0;\r\n Arole = 0;\r\n yearOptions = [];\r\n selectedYears = [];\r\n userInfo: any;\r\n invoiceGlobalData: any = [];\r\n\r\n constructor(private _service: RailFleetService, private _spinner: NgxSpinnerService, private router: Router) {\r\n }\r\n\r\n ngOnInit() {\r\n this.userId = sessionStorage.getItem('userId');\r\n let role = sessionStorage.getItem('role');\r\n if (role != null && role != undefined && role != '') {\r\n if (role.includes('Admin')) {\r\n this.userAdmin = true;\r\n this.Arole = 1;\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n this.cols = [\r\n { field: 'railcarID', header: 'Railcar ID', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 1, selectedOptions: [], editMode: false },\r\n { field: 'bu', header: 'BU', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 2, selectedOptions: [], editMode: false },\r\n { field: 'fleet', header: 'Fleet', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 3, selectedOptions: [], editMode: false },\r\n { field: 'costCenter', header: 'Cost Center', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 4, selectedOptions: [], editMode: false },\r\n { field: 'glMapping', header: 'GL Mapping', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 5, selectedOptions: [], editMode: false },\r\n { field: 'mappingCategory', header: 'Mapping Category', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 6, selectedOptions: [], editMode: false },\r\n { field: 'laborCost', header: 'Labor Costs', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 7, selectedOptions: [], editMode: false },\r\n { field: 'materialCost', header: 'Material Costs', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 8, selectedOptions: [], editMode: false },\r\n { field: 'total', header: 'Total $', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 9, selectedOptions: [], editMode: false },\r\n { field: 'jobCodeCategory', header: 'Job Code Category', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 10, selectedOptions: [], editMode: false },\r\n { field: 'repairDate', header: 'Repair Date', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 11, selectedOptions: [], editMode: false },\r\n { field: 'narrative', header: 'Narrative', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 12, selectedOptions: [], editMode: false },\r\n { field: 'invoice', header: 'Invoice', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 13, selectedOptions: [], editMode: false },\r\n { field: 'invoiceCompany', header: 'Invoice Company', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 14, selectedOptions: [], editMode: false },\r\n { field: 'allT_Inv_Ref', header: 'ALLT INV REF', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 15, selectedOptions: [], editMode: false },\r\n { field: 'allT_Inv_Ref_Date', header: 'Date ALLT INV REF', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 16, selectedOptions: [], editMode: false }\r\n\r\n ];\r\n this.sortedCols = JSON.parse(JSON.stringify(this.cols));\r\n this.sortedCols = this.sortedCols.sort((a, b) => {\r\n return a.header > b.header ? 1 : -1;\r\n });\r\n this.sortedCols.forEach(element => {\r\n if (element.field != 'laborCost' && element.field != 'materialCost'\r\n && element.field != 'narrative' && element.field != 'invoice'\r\n )\r\n this.selectedCols.push(element);\r\n });\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n this.viewColHeight = (window.innerHeight - 190) + \"px\";\r\n this.yearOptions = this.loadYears(2019);\r\n let selectedYrs = this.selectedYears.map(x => x.year).toString();\r\n this._service.getUserInfo(this.userId).subscribe(response => {\r\n this.userInfo = response;\r\n this._spinner.show();\r\n const payLoad = {\r\n userID: this.userInfo[0].userID,\r\n isAdmin: this.Arole,\r\n years: this.selectedYears.map(x => x.year).toString(),\r\n particalLoad: 1\r\n };\r\n this.getallrailfleetData(this.userInfo[0].userID, this.Arole, selectedYrs);\r\n });\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n \r\n }\r\n\r\n loadYears(startYear) {\r\n var currentYear = new Date().getFullYear(), years = [];\r\n let selectedYrs = [{ year: currentYear, selected: true }];\r\n this.selectedYears.push(...selectedYrs);\r\n startYear = startYear || 2018;\r\n while (startYear <= currentYear) {\r\n let yearObj = { year: startYear++, selected: true };\r\n years.push(yearObj);\r\n }\r\n return years;\r\n }\r\n\r\n onChangeDDValue(event) {\r\n\r\n let isRailcarID = event.value.find(x => x.field == 'railcarID') == undefined ? false : true;\r\n if (!isRailcarID) {\r\n this.sortedCols.forEach(element => {\r\n if (element.field == 'railcarID') {\r\n this.selectedCols.push(element);\r\n }\r\n });\r\n }\r\n\r\n if (event.value.length == 0) {\r\n this.sortedCols.forEach(element => {\r\n if (element.field == 'railcarID') {\r\n this.selectedCols.push(element);\r\n }\r\n });\r\n } else {\r\n if (event.itemValue && event.itemValue.field == 'railcarID') {\r\n if (isRailcarID) {\r\n this.sortedCols.forEach(element => {\r\n if (element.field == 'railcarID') {\r\n this.selectedCols.push(element);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n this.sortColumns();\r\n }\r\n doubleClickCheck(data, col) {\r\n if (this.userAdmin || col.field == 'buNotes') {\r\n this.orgActiveCarsData.forEach(x => {\r\n if (x.railFleetID != data.railFleetID)\r\n x.editMode = false\r\n })\r\n this.selectedCols.forEach(x => {\r\n if (x.field != col.field)\r\n x.editMode = false\r\n })\r\n let editData = this.orgActiveCarsData.find(x => x.railFleetID == data.railFleetID)\r\n let colEdit = this.selectedCols.find(x => x.field == col.field)\r\n\r\n if ((!data.editMode && !col.editMode) || (data.editMode && !col.editMode)) {\r\n editData.editMode = true\r\n colEdit.editMode = true\r\n\r\n }\r\n else if (data.editMode && col.editMode) {\r\n editData.editMode = false\r\n colEdit.editMode = false\r\n }\r\n else {\r\n editData.editMode = true\r\n }\r\n\r\n } else {\r\n\r\n }\r\n }\r\n validateNumber(value) {\r\n let numberExp = new RegExp(/^\\d*\\.?\\d*$/);\r\n return numberExp.test(value);\r\n }\r\n generatePayLoad(railCar, comments = '', buNotes = '', originalCertofConstruction = '') {\r\n let railComments, railBuNotes = '', railOriginalCertofConstruction = '';\r\n railComments = comments;\r\n railBuNotes = buNotes;\r\n railOriginalCertofConstruction = originalCertofConstruction;\r\n const railFleetClass = {\r\n railcarID: railCar.railcarID,\r\n carStatus: railCar.carStatus,\r\n dueTest: railCar.dueTest,\r\n nextRegYr: railCar.nextRegYr,\r\n currentRegCompleted: railCar.currentRegCompleted,\r\n originalRCID: railCar.originalRCID,\r\n bu: railCar.bu,\r\n buNotes: railBuNotes,\r\n tcc: railCar.tcc,\r\n contract: railCar.contract,\r\n fixedAsset: railCar.fixedAsset,\r\n locationCode: railCar.locationCode,\r\n sortField: railCar.sortField,\r\n maintenancePlant: railCar.maintenancePlant,\r\n assignedLocation: railCar.assignedLocation,\r\n fleet: railCar.fleet,\r\n // permittedCommodities: railCar.permittedCommodities,\r\n packingGroup: railCar.packinggroupSelected ? railCar.packinggroupSelected.packinggroup : null,\r\n hazardClass: railCar.hazardClassSelected ? railCar.hazardClassSelected.hazardclass : null,\r\n jacketed: railCar.jacketed,\r\n carType: railCar.carType,\r\n originalCertofConstruction: railCar.originalCertofConstruction,\r\n doT_AAR_Class: railCar.doT_AAR_Class,\r\n carBuilder: railCar.carbuilderSelected ? railCar.carbuilderSelected.carbuilder : '',\r\n yearBuilt: railCar.yearBuilt,\r\n ageofCar: railCar.ageofCar,\r\n onHire: railCar.onHire,\r\n owner: railCar.owner,\r\n rider: railCar.rider,\r\n effective: railCar.effective,\r\n expiration: railCar.expiration,\r\n monthlyDepreciation: railCar.monthlyDepreciation,\r\n rent: railCar.rent,\r\n rep_Maint: railCar.rep_Maint,\r\n rentalAgreement: railCar.rentalAgreement.toString(),\r\n leaseTerm: railCar.leaseTerm,\r\n term: railCar.term,\r\n tareWeightLBS: railCar.tareWeightLBS,\r\n maxGrossWeight: railCar.maxGrossWeight,\r\n comments: railComments,\r\n release: railCar.release,\r\n lastUpdatedDate: railCar.lastUpdatedDate,\r\n permittedCommoditiesID: railCar.permittedCommoditiesID, //\r\n packingGroupID: railCar.packinggroupSelected ? railCar.packinggroupSelected.packingGroupID : null,\r\n hazardClassID: railCar.hazardClassSelected ? railCar.hazardClassSelected.hazardClassID : null,\r\n carBuilderID: railCar.carbuilderSelected ? railCar.carbuilderSelected.carBuilderID : null,\r\n modifiedBy: this.userId,\r\n permittedCommodity: railCar.permittedCommodity\r\n };\r\n return railFleetClass\r\n }\r\n doFilter(val, field, reset?) {\r\n if (reset) {\r\n this.filteredCols = [];\r\n } else if (field != \"\") {\r\n let existingFilter = false;\r\n this.filteredCols.forEach(fc => {\r\n if (fc.field == field) {\r\n fc.value = val;\r\n existingFilter = true;\r\n }\r\n });\r\n if (!existingFilter) {\r\n this.filteredCols.push({\r\n name: this.cols.find(c => c.field == field).header,\r\n field: field,\r\n value: val\r\n });\r\n }\r\n if (val.length == 0) {\r\n this.filteredCols = this.filteredCols.filter(fcs => fcs.field !== field);\r\n }\r\n }\r\n this.orgActiveCarsData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n if (this.filteredCols.length == 0) {\r\n this.updateMultiSelectDD(this.orgActiveCarsData, 0);\r\n } else {\r\n this.filteredCols.forEach((fc, index) => {\r\n let filteredData = [];\r\n fc.value.forEach(opt => {\r\n filteredData = [...filteredData, ...this.orgActiveCarsData.filter(ocd => ocd[fc.field] === opt)];\r\n });\r\n this.orgActiveCarsData = JSON.parse(JSON.stringify(filteredData));\r\n this.updateMultiSelectDD(this.orgActiveCarsData, index);\r\n });\r\n }\r\n this.railcarIDCount = this.orgActiveCarsData.filter((a, i) => this.orgActiveCarsData.findIndex((s) => a.railcarID === s.railcarID) === i).length;\r\n var sumT = this.orgActiveCarsData;\r\n if (this.orgActiveCarsData.length == 0) { this.sumTotal = 0 } else {\r\n this.sumTotal = 0;\r\n sumT.forEach(e => {\r\n if (e.total) {\r\n this.sumTotal += parseFloat(e.total);\r\n }\r\n });\r\n }\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n }\r\n checkTheKey(e, data, col) {\r\n console.log(e);\r\n if (e.keyCode === 27) {\r\n this.orgActiveCarsData.forEach(x => x.editMode = false)\r\n }\r\n if (e.keyCode === 13) {\r\n console.log(\"Clicked on Enter\");\r\n this.doubleClickCheck(data, col);\r\n }\r\n }\r\n tableFocusOut() {\r\n console.log(\"table focus out\")\r\n\r\n }\r\n updateMultiSelectDD(rowsData, index) {\r\n this.sortedCols.forEach(o => {\r\n const filteredCol = this.filteredCols.find(fc => fc.field === o.field);\r\n const filteredColIndex = this.filteredCols.indexOf(filteredCol);\r\n if ((filteredColIndex == -1 || filteredColIndex > index)) {\r\n o.options = [];\r\n this.getFilterObject(rowsData, o.field).forEach(filteredobj => {\r\n if (filteredobj == 'Blanks') o.options.push({ label: filteredobj, value: '' });\r\n else o.options.push({ label: filteredobj, value: filteredobj });\r\n });\r\n }\r\n });\r\n }\r\n onRemoveChip(event) {\r\n this.doFilter([], event.field);\r\n this.dt._columns.forEach(col => {\r\n if (col.field == event.field) col.selectedOptions = [];\r\n });\r\n }\r\n ngAfterViewInit(): void {\r\n let selectedVal = [];\r\n if (this.dt) {\r\n if (localStorage.getItem('columns')) {\r\n this.selectedCols = JSON.parse(localStorage.getItem('columns'));\r\n this.sortedCols.forEach(element => {\r\n this.selectedCols.forEach(elm => {\r\n if (element.field === elm.field) {\r\n if (elm.selectedOptions.length != 0) {\r\n element.selectedOptions = elm.selectedOptions;\r\n selectedVal.push(element);\r\n } else {\r\n selectedVal.push(element);\r\n }\r\n\r\n }\r\n\r\n });\r\n });\r\n this.selectedCols = selectedVal;\r\n this.selectedCols.forEach(col => {\r\n if (col.field === 'permittedCommodity') {\r\n this.filter(col.selectedOptions)\r\n } else {\r\n this.dt.filter(col.selectedOptions, col.field, 'in');\r\n }\r\n });\r\n };\r\n this.sortColumns();\r\n }\r\n }\r\n ngAfterViewChecked(): void {\r\n let selectedVals = [];\r\n if (this.dt && this.tableUpdate) {\r\n this.tableUpdate = false;\r\n if (localStorage.getItem('columns')) {\r\n this.sortedCols.forEach(element => {\r\n this.selectedCols.forEach(elm => {\r\n if (element.field === elm.field) {\r\n selectedVals.push(element);\r\n }\r\n\r\n });\r\n });\r\n this.selectedCols = selectedVals;\r\n this.selectedCols.forEach(col => {\r\n if (col.field === 'permittedCommodity') {\r\n this.filter(col.selectedOptions)\r\n } else {\r\n this.dt.filter(col.selectedOptions, col.field, 'in');\r\n }\r\n });\r\n this.sortColumns();\r\n };\r\n }\r\n }\r\n showHideData(e) {\r\n this.cols = e;\r\n }\r\n customSort(event: SortEvent) {\r\n event.data.sort((data1, data2) => {\r\n let value1;\r\n let value2;\r\n if (event.field == 'fixedAsset' || event.field == 'contract' || event.field == 'monthlyDepreciation') {\r\n value1 = Number(data1[event.field]);\r\n value2 = Number(data2[event.field]);\r\n } else if (event.field == 'expiration' || event.field == 'effective' || event.field == 'lastUpdatedDate' || event.field == 'onHire') {\r\n value1 = data1[event.field] != '' ? Date.parse(data1[event.field]) : 0\r\n value2 = data2[event.field] != '' ? Date.parse(data2[event.field]) : 0\r\n }\r\n else {\r\n value1 = data1[event.field];\r\n value2 = data2[event.field];\r\n }\r\n\r\n let result = null;\r\n\r\n if (value1 == null && value2 != null)\r\n result = -1;\r\n else if (value1 != null && value2 == null)\r\n result = 1;\r\n else if (value1 == null && value2 == null)\r\n result = 0;\r\n else if (typeof value1 === 'string' && typeof value2 === 'string')\r\n result = value1.localeCompare(value2);\r\n else\r\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\r\n\r\n return (event.order * result);\r\n });\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n }\r\n sortColumns() {\r\n this.selectedCols = this.selectedCols.sort((a, b) => {\r\n return a.serialNo - b.serialNo;\r\n })\r\n }\r\n apply(event) {\r\n if (this.selectedYears.length == 2) {\r\n let disableChk = this.selectedYears.some(x => x.year.toString() === event.itemValue.year.toString());\r\n if (!disableChk) {\r\n return;\r\n }\r\n }\r\n if (this.selectedYears.length > 0) {\r\n this._spinner.show();\r\n const payLoad = {\r\n userID: this.userInfo[0].userID,\r\n isAdmin: this.Arole,\r\n years: this.selectedYears.map(x => x.year).toString(),\r\n particalLoad: 1\r\n };\r\n let year = \"\";\r\n if (this.selectedYears.length == 1) {\r\n year = this.selectedYears[0].year.toString();\r\n } else {\r\n year = event.itemValue.year.toString();\r\n }\r\n this.getallrailfleetData(this.userInfo[0].userID, this.Arole, year);\r\n } else {\r\n this.responseResult([]);\r\n }\r\n }\r\n\r\n getallrailfleetData(userId, role, years) {\r\n this._spinner.show();\r\n const payLoad = {\r\n userID: userId,\r\n isAdmin: role,\r\n years: years,\r\n particalLoad: 1\r\n }\r\n this._service.getInvoiceHistoryData(payLoad).subscribe((response: any) => {\r\n if (this.selectedYears.length > 1) {\r\n this.invoiceGlobalData.push(...response);\r\n } else {\r\n this.invoiceGlobalData = [];\r\n this.invoiceGlobalData.push(...response);\r\n }\r\n this.responseResult(this.invoiceGlobalData);\r\n });\r\n }\r\n\r\n responseResult(res: any) {\r\n this.apiResp = res;\r\n //this.railcarIDCount = this.apiResp.filter((a, i) => this.apiResp.findIndex((s) => a.railcarID === s.railcarID) === i).length;\r\n this.railcarIDCount = [...new Set(this.apiResp.map(obj => obj.railcarID))].length;\r\n var sumT = this.apiResp;\r\n if (this.apiResp.length == 0) { this.sumTotal = 0 } else {\r\n this.sumTotal = 0;\r\n sumT.forEach(e => {\r\n if (e.total) {\r\n this.sumTotal += parseFloat(e.total);\r\n }\r\n });\r\n }\r\n this.activeCarsData = this.apiResp;\r\n this.activeCarsData.forEach(x => (x.editMode = false));\r\n this.orgActiveCarsData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n this.filteredData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n this.sortedCols.forEach(o => {\r\n this.getFilterObject(this.activeCarsData, o.field).forEach(filteredobj => {\r\n if (o.options.filter(x => x.value == filteredobj).length == 0) {\r\n if (filteredobj == 'Blanks')\r\n o.options.push({ label: filteredobj, value: '' });\r\n else\r\n o.options.push({ label: filteredobj, value: filteredobj });\r\n }\r\n })\r\n });\r\n this.doFilter([], \"\");\r\n this._spinner.hide();\r\n\r\n }\r\n getFilterObject(fullObj, key) {\r\n const uniqChk = [];\r\n let blanks = false;\r\n fullObj.filter((obj) => {\r\n if (!uniqChk.includes(obj[key])) {\r\n if (obj[key] !== null && obj[key] !== '')\r\n uniqChk.push(obj[key]);\r\n else if (!uniqChk.includes('Blanks')) {\r\n blanks = true;\r\n }\r\n }\r\n return obj;\r\n });\r\n const numericColumns = ['total', 'laborCost', 'materialCost']\r\n const dateColumns = ['repairDate', 'allT_Inv_Ref_Date'];\r\n if (dateColumns.includes(key)) {\r\n uniqChk.sort(function (a, b) {\r\n //const aComps = a.split(\"/\");\r\n //const bComps = b.split(\"/\");\r\n let aDate = new Date(a);\r\n let bDate = new Date(b);\r\n return aDate.getTime() - bDate.getTime();\r\n });\r\n } else if (numericColumns.includes(key)) {\r\n uniqChk.sort((a, b) => {\r\n return ((Number(a) < Number(b)) ? -1 : 1)\r\n });\r\n } else {\r\n uniqChk.sort();\r\n }\r\n if (blanks) uniqChk.unshift('Blanks');\r\n return uniqChk;\r\n }\r\n \r\n filterData(value, filter) {\r\n if (value == '') {\r\n if (this.filteredFields.length) {\r\n this.filteredFields = this.filteredFields.filter(ff => ff.fieldName !== filter);\r\n } else {\r\n this.filteredFields = [];\r\n }\r\n } else {\r\n let foundField = this.filteredFields.filter(ff => ff.fieldName == filter);\r\n if (foundField.length) {\r\n this.filteredFields.forEach(ff => {\r\n if (ff.fieldName == filter) {\r\n ff.value = value;\r\n }\r\n })\r\n } else {\r\n let fieldObj = {\r\n fieldName: filter,\r\n value: value\r\n };\r\n this.filteredFields.push(fieldObj);\r\n }\r\n }\r\n if (this.filteredFields.length) {\r\n let temp = this.activeCarsData;\r\n this.filteredFields.forEach(ff => {\r\n temp = temp.filter(fd => fd[ff.fieldName].toUpperCase().includes(ff.value.toUpperCase()));\r\n })\r\n this.filteredData = temp;\r\n } else {\r\n this.filteredData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n }\r\n this.tempFilteredData = JSON.parse(JSON.stringify(this.filteredData));\r\n }\r\n filter(value) {\r\n var record = [];\r\n let temp = this.filteredData;\r\n if (value.length !== 0) {\r\n temp.forEach(element => {\r\n element.permittedCommodity.forEach(pc => {\r\n\r\n if (value.includes(pc.permittedcommodities)) {\r\n if (!record.includes(element)) {\r\n if (element !== null && element !== '') {\r\n record.push(element);\r\n }\r\n }\r\n }\r\n });\r\n });\r\n this.activeCarsData = record\r\n } else {\r\n this.activeCarsData = temp;\r\n }\r\n return this.activeCarsData;\r\n }\r\n b64toBlob = (b64Data, contentType = '', sliceSize = 512) => {\r\n const byteCharacters = atob(b64Data);\r\n const byteArrays = [];\r\n\r\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\r\n const slice = byteCharacters.slice(offset, offset + sliceSize);\r\n\r\n const byteNumbers = new Array(slice.length);\r\n for (let i = 0; i < slice.length; i++) {\r\n byteNumbers[i] = slice.charCodeAt(i);\r\n }\r\n\r\n const byteArray = new Uint8Array(byteNumbers);\r\n byteArrays.push(byteArray);\r\n }\r\n\r\n const blob = new Blob(byteArrays, { type: contentType });\r\n return blob;\r\n }\r\n exportExcel() {\r\n let data = this.dt.hasFilter() ? this.dt.filteredValue : this.dt.value;\r\n let tFilteredData = JSON.parse(JSON.stringify(data));\r\n this.exportAsExcelFile(tFilteredData, 'HistoricalInvoice', 'sheet1', this.selectedCols)\r\n }\r\n exportAsExcelFile(json: any[], excelFileName: string, sheetName: string, columnValues: any[]): void {\r\n var fieldValues: any[] = columnValues.map(field => field.field);\r\n var headerValues: string[] = columnValues.map(header => header.header);\r\n var displayedJson: any[] = [];\r\n if (json != null && json.length > 0) {\r\n for (let originalValue of json) {\r\n var jsonObject: any = {};\r\n for (let fieldValue of fieldValues) {\r\n jsonObject[fieldValue] = originalValue[fieldValue];\r\n }\r\n var jsonString = JSON.stringify(jsonObject);\r\n displayedJson.push(JSON.parse(jsonString));\r\n }\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(displayedJson);\r\n var range = XLSX.utils.decode_range(worksheet['!ref']);\r\n for (var C = range.s.c; C <= range.e.c; ++C) {\r\n var address = XLSX.utils.encode_col(C) + \"1\"; // <-- first row, column number C\r\n if (!worksheet[address]) continue;\r\n worksheet[address] = {\r\n v: headerValues[C],\r\n t: 's',\r\n s: {\r\n alignment: { textRotation: 90 },\r\n font: { bold: true }\r\n }\r\n };\r\n }\r\n XLSX.utils.sheet_add_aoa(worksheet, [[]], { origin: -1 });\r\n const workbook: XLSX.WorkBook = { Sheets: { [sheetName]: worksheet }, SheetNames: [sheetName] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n FileSaver.saveAs(data, fileName + EXCEL_EXTENSION);\r\n }\r\n editBulk() {\r\n this.bulkEdit = true;\r\n }\r\n reset(dt) {\r\n\r\n this.selectedCols.forEach(col => {\r\n col.selectedOptions = [];\r\n });\r\n localStorage.clear();\r\n\r\n dt.reset();\r\n this.filteredCols = [];\r\n this.selectedCols = [];\r\n this.sortedCols.forEach(element => {\r\n if (element.field != 'laborCost' && element.field != 'materialCost'\r\n && element.field != 'narrative'\r\n )\r\n this.selectedCols.push(element);\r\n });\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n this.sortColumns();\r\n this.doFilter([], '', true);\r\n this.updateMultiSelectDD(this.orgActiveCarsData, 0);\r\n }\r\n bulkEditStatus(status) {\r\n this.bulkEdit = status;\r\n if (!this.bulkEdit) {\r\n this.tableUpdate = true;\r\n }\r\n this.getallrailfleetData(this.userInfo[0].userID, this.Arole, this.selectedYears.map(x => x.year).toString());\r\n this.selectedValues = [];\r\n }\r\n\r\n}\r\n","export default \".bg {\\r\\n /*background-image: url('assets/images/Job Ganding BG – 1.png');*/\\r\\n background-color: lightgray;\\r\\n background-attachment: fixed;\\r\\n background-position: center center;\\r\\n background-size: cover;\\r\\n background-repeat: no-repeat;\\r\\n position: fixed;\\r\\n left: 0;\\r\\n right: 0;\\r\\n min-height: 100%;\\r\\n min-width: 100%;\\r\\n }\\r\\n .bg-dup {\\r\\n left: 0;\\r\\n right: 0;\\r\\n min-height: 100%;\\r\\n min-width: 100%;\\r\\n }\\r\\n .bg-text {\\r\\n color: white;\\r\\n font-weight: bold;\\r\\n position: absolute;\\r\\n top:10%;\\r\\n left: 50%;\\r\\n transform: translate(-50%, 0%);\\r\\n z-index: 2;\\r\\n width: 80%;\\r\\n padding: 20px;\\r\\n text-align: center;\\r\\n }\\r\\n .padding50 {\\r\\n padding-top: 70px;\\r\\n padding-bottom: 50px;\\r\\n width: 100%;\\r\\n height: 100%;\\r\\n color:white;\\r\\n }\\r\\n .headerimages {\\r\\n text-align: center;\\r\\n background-color: #000000;\\r\\n }\\r\\n #home-nav-list a {\\r\\n color: white;\\r\\n cursor:pointer;\\r\\n font-size: 22px;\\r\\n font-weight: 500;\\r\\n }\\r\\n .cust-img {\\r\\n background-image: url('homePage1.png');\\r\\n /* Background image is centered vertically and horizontally at all times */\\r\\nbackground-position: center center;\\r\\n\\r\\n/* Background image doesn't tile */\\r\\nbackground-repeat: no-repeat;\\r\\n\\r\\n/* Background image is fixed in the viewport so that it doesn't move when\\r\\nthe content's height is greater than the image's height */\\r\\nbackground-attachment: fixed;\\r\\n\\r\\n/* This is what makes the background image rescale based\\r\\non the container's size */\\r\\nbackground-size: cover;\\r\\n }\\r\\n :host ::ng-deep .ui-messages ul {\\r\\n display: block;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9ob21lL2hvbWUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLGlFQUFpRTtJQUNqRSwyQkFBMkI7SUFDM0IsNEJBQTRCO0lBQzVCLGtDQUFrQztJQUNsQyxzQkFBc0I7SUFDdEIsNEJBQTRCO0lBQzVCLGVBQWU7SUFDZixPQUFPO0lBQ1AsUUFBUTtJQUNSLGdCQUFnQjtJQUNoQixlQUFlO0VBQ2pCO0VBQ0E7SUFDRSxPQUFPO0lBQ1AsUUFBUTtJQUNSLGdCQUFnQjtJQUNoQixlQUFlO0VBQ2pCO0VBQ0E7SUFDRSxZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixPQUFPO0lBQ1AsU0FBUztJQUNULDhCQUE4QjtJQUM5QixVQUFVO0lBQ1YsVUFBVTtJQUNWLGFBQWE7SUFDYixrQkFBa0I7RUFDcEI7RUFDQTtJQUNFLGlCQUFpQjtJQUNqQixvQkFBb0I7SUFDcEIsV0FBVztJQUNYLFlBQVk7SUFDWixXQUFXO0VBQ2I7RUFDQTtJQUNFLGtCQUFrQjtJQUNsQix5QkFBeUI7RUFDM0I7RUFDQTtJQUNFLFlBQVk7SUFDWixjQUFjO0lBQ2QsZUFBZTtJQUNmLGdCQUFnQjtDQUNuQjtFQUNBO0VBQ0Msc0NBQTZEO0VBQzdELDBFQUEwRTtBQUM1RSxrQ0FBa0M7O0FBRWxDLGtDQUFrQztBQUNsQyw0QkFBNEI7O0FBRTVCO3lEQUN5RDtBQUN6RCw0QkFBNEI7O0FBRTVCO3lCQUN5QjtBQUN6QixzQkFBc0I7Q0FDckI7RUFDQTtHQUNFLGNBQWM7Q0FDaEIiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2hvbWUvaG9tZS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmJnIHtcclxuICAgIC8qYmFja2dyb3VuZC1pbWFnZTogdXJsKCdhc3NldHMvaW1hZ2VzL0pvYiBHYW5kaW5nIEJHIOKAkyAxLnBuZycpOyovXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGdyYXk7XHJcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgIG1pbi13aWR0aDogMTAwJTtcclxuICB9XHJcbiAgLmJnLWR1cCB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAuYmctdGV4dCB7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDoxMCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgd2lkdGg6IDgwJTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIC5wYWRkaW5nNTAge1xyXG4gICAgcGFkZGluZy10b3A6IDcwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgY29sb3I6d2hpdGU7XHJcbiAgfVxyXG4gIC5oZWFkZXJpbWFnZXMge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcclxuICB9XHJcbiAgI2hvbWUtbmF2LWxpc3QgYSB7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiB9XHJcbiAuY3VzdC1pbWcge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vLi4vLi4vYXNzZXRzL2ltYWdlcy9ob21lUGFnZTEucG5nJyk7XHJcbiAgLyogQmFja2dyb3VuZCBpbWFnZSBpcyBjZW50ZXJlZCB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHkgYXQgYWxsIHRpbWVzICovXHJcbmJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcblxyXG4vKiBCYWNrZ3JvdW5kIGltYWdlIGRvZXNuJ3QgdGlsZSAqL1xyXG5iYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cclxuLyogQmFja2dyb3VuZCBpbWFnZSBpcyBmaXhlZCBpbiB0aGUgdmlld3BvcnQgc28gdGhhdCBpdCBkb2Vzbid0IG1vdmUgd2hlblxyXG50aGUgY29udGVudCdzIGhlaWdodCBpcyBncmVhdGVyIHRoYW4gdGhlIGltYWdlJ3MgaGVpZ2h0ICovXHJcbmJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcblxyXG4vKiBUaGlzIGlzIHdoYXQgbWFrZXMgdGhlIGJhY2tncm91bmQgaW1hZ2UgcmVzY2FsZSBiYXNlZFxyXG5vbiB0aGUgY29udGFpbmVyJ3Mgc2l6ZSAqL1xyXG5iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gfVxyXG4gOmhvc3QgOjpuZy1kZWVwIC51aS1tZXNzYWdlcyB1bCB7XHJcbiAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gfSJdfQ== */\"","import { Component } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Message, MessageService } from 'primeng/api';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n styleUrls: ['./home.component.css']\r\n})\r\nexport class HomeComponent {\r\n userId = \"\";\r\n userInfo: any;\r\n // notifications = [];\r\n msgs: Message[] = [];\r\n constructor(private router: Router, private toastr: ToastrService, private spinner: NgxSpinnerService, private _service: RailFleetService,\r\n private messageService: MessageService) {\r\n }\r\n ngOnInit() { \r\n this._service.getCurrentNotifications().subscribe((response: any) => {\r\n // this.notifications = response;\r\n response.forEach(notification => {\r\n \r\n this.msgs.push({severity:'info', summary: '', detail: notification.notificationMessage});\r\n });\r\n this.messageService.addAll(this.msgs);\r\n })\r\n this.userId = sessionStorage.getItem('userId');\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n this.spinner.show();\r\n //this.unAuthorised = true;\r\n this._service.getUserInfo(this.userId).subscribe(response => {\r\n this.userInfo = response;\r\n sessionStorage.setItem('email', this.userInfo[0].email);\r\n if (this.userInfo[0].roleName.includes('Admin')) {\r\n sessionStorage.setItem('role', 'Admin');\r\n }\r\n this.spinner.hide();\r\n });\r\n } else {\r\n this.router.navigate(['/login']);\r\n } \r\n }\r\n\r\n navigateTo(routeValue) {\r\n this.router.navigate([routeValue]);\r\n }\r\n \r\n}\r\n","export default \"body .ui-table .ui-table-thead>tr>th {\\r\\n background-color: white;\\r\\n color:#004890;\\r\\n font-size: 14px;\\r\\n font-weight: 600;\\r\\n padding: 3px;\\r\\n text-align: center;\\r\\n border: 1px solid #e1f0ff;\\r\\n min-width: 100px !important;\\r\\n}\\r\\n\\r\\nbody .ui-table .ui-table-thead>tr>th>div {\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n}\\r\\n\\r\\nbody .ui-table .ui-table-tbody>tr>td {\\r\\n font-size: 14px;\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n padding: 0 4px;\\r\\n color: black;\\r\\n font-weight: 500;\\r\\n border: 1px solid #e1f0ff;\\r\\n text-overflow: ellipsis;\\r\\n vertical-align: top !important;\\r\\n}\\r\\n\\r\\n.accordion-img-icon {\\r\\n margin-right: 6px;\\r\\n margin-bottom: 2px;\\r\\n margin-top: 2px;\\r\\n margin-left: 2px;\\r\\n height: 20px;\\r\\n width: 20px;\\r\\n}\\r\\n\\r\\n.pointer-cursor {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n#railCarTable .edit-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n right: 0px !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-paginator {\\r\\n margin-top: 5px !important;\\r\\n background-color: white !important;\\r\\n border: none !important;\\r\\n float: right !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {\\r\\n background-color: #004890 !important;\\r\\n color: white !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-multiselect .ui-multiselect-panel .ui-multiselect-items {\\r\\n left: -292px !important;\\r\\n right: 0px !important;\\r\\n float: left;\\r\\n width: 150px;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-multiselect-panel .ui-multiselect-items .ui-multiselect-item.ui-state-highlight {\\r\\n color: black !important;\\r\\n background-color: white !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-chkbox .ui-chkbox-box.ui-state-active {\\r\\n border-color: #004890 !important;\\r\\n background-color: #004890 !important;\\r\\n color: #ffffff !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table table {\\r\\n width: -webkit-fit-content !important;\\r\\n width: -moz-fit-content !important;\\r\\n width: fit-content !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table {\\r\\n max-height: 700px !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-header, .ui-table-scrollable-footer {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n background-color: white;\\r\\n z-index: 9999;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-header-box {\\r\\n margin-right: 60px !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-body {\\r\\n /* max-height: calc(100vh - 280px) !important; */\\r\\n}\\r\\n\\r\\n#railCarTable .excelIcon {\\r\\n font-size: 1.5em;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n color: white;\\r\\n border-radius: 5px;\\r\\n padding: 6px;\\r\\n margin-left: 10px;\\r\\n top: -7px;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 1000px) {\\r\\n #railCarTable .ui-table-scrollable-body {\\r\\n /* max-height: calc(100vh - 370px) !important; */\\r\\n }\\r\\n .cf {\\r\\n margin-top:140px !important;\\r\\n }\\r\\n }\\r\\n\\r\\n@media screen and (min-width: 1052px) {\\r\\n #railCarTable .ui-table-scrollable-body {\\r\\n /* max-height: calc(100vh - 320px) !important; */\\r\\n }\\r\\n .cf {\\r\\n margin-top:110px !important;\\r\\n }\\r\\n }\\r\\n\\r\\n@media screen and (min-width: 1407px) {\\r\\n #railCarTable .ui-table-scrollable-body {\\r\\n /* max-height: calc(100vh - 300px) !important; */\\r\\n }\\r\\n .cf {\\r\\n margin-top:80px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 320px) and (max-width: 768px) {\\r\\n #railCarTable .ui-multiselect .ui-multiselect-panel {\\r\\n left: 0px !important;\\r\\n right: 0px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n.comments-width {\\r\\n width: 250px;\\r\\n}\\r\\n\\r\\ntable tr.ui-state-highlight {\\r\\n background-color: white;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9pbnZvaWNlLWVkaXQvaW52b2ljZS1lZGl0LmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSx1QkFBdUI7SUFDdkIsYUFBYTtJQUNiLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQix5QkFBeUI7SUFDekIsMkJBQTJCO0FBQy9COztBQUVBO0lBQ0kscUJBQXFCO0lBQ3JCLG1CQUFtQjtJQUNuQixnQkFBZ0I7SUFDaEIsdUJBQXVCO0FBQzNCOztBQUNBO0lBQ0ksZUFBZTtJQUNmLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsOEJBQThCO0FBQ2xDOztBQUNBO0lBQ0ksaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixXQUFXO0FBQ2Y7O0FBRUE7SUFDSSxlQUFlO0FBQ25COztBQUNBO0lBQ0ksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixxQkFBcUI7QUFDekI7O0FBQ0E7SUFDSSwwQkFBMEI7SUFDMUIsa0NBQWtDO0lBQ2xDLHVCQUF1QjtJQUN2Qix1QkFBdUI7QUFDM0I7O0FBQ0E7SUFDSSxvQ0FBb0M7SUFDcEMsdUJBQXVCO0FBQzNCOztBQUNBO0lBQ0ksdUJBQXVCO0lBQ3ZCLHFCQUFxQjtJQUNyQixXQUFXO0lBQ1gsWUFBWTtBQUNoQjs7QUFDQTtJQUNJLHVCQUF1QjtJQUN2QixrQ0FBa0M7QUFDdEM7O0FBQ0E7SUFDSSxnQ0FBZ0M7SUFDaEMsb0NBQW9DO0lBQ3BDLHlCQUF5QjtBQUM3Qjs7QUFDQTtJQUNJLHFDQUE2QjtJQUE3QixrQ0FBNkI7SUFBN0IsNkJBQTZCO0FBQ2pDOztBQUNBO0lBQ0ksNEJBQTRCO0FBQ2hDOztBQUNBO0lBQ0ksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQix1QkFBdUI7SUFDdkIsYUFBYTtBQUNqQjs7QUFDQTtJQUNJLDZCQUE2QjtBQUNqQzs7QUFDQTtJQUNJLGdEQUFnRDtBQUNwRDs7QUFFQTtJQUNJLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YseUJBQXlCO0lBQ3pCLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixTQUFTO0lBQ1Qsa0JBQWtCO0FBQ3RCOztBQUVBO0lBQ0k7UUFDSSxnREFBZ0Q7SUFDcEQ7SUFDQTtRQUNJLDJCQUEyQjtJQUMvQjtFQUNGOztBQUVBO0lBQ0U7UUFDSSxnREFBZ0Q7SUFDcEQ7SUFDQTtRQUNJLDJCQUEyQjtJQUMvQjtFQUNGOztBQUNBO0lBQ0U7UUFDSSxnREFBZ0Q7SUFDcEQ7SUFDQTtRQUNJLDBCQUEwQjtJQUM5QjtBQUNKOztBQUNBO0lBQ0k7UUFDSSxvQkFBb0I7UUFDcEIscUJBQXFCO0lBQ3pCO0FBQ0o7O0FBQ0E7SUFDSSxZQUFZO0FBQ2hCOztBQUNBO0lBQ0ksdUJBQXVCO0FBQzNCIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9pbnZvaWNlLWVkaXQvaW52b2ljZS1lZGl0LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IC51aS10YWJsZSAudWktdGFibGUtdGhlYWQ+dHI+dGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBjb2xvcjojMDA0ODkwO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIHBhZGRpbmc6IDNweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWYwZmY7XHJcbiAgICBtaW4td2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmJvZHkgLnVpLXRhYmxlIC51aS10YWJsZS10aGVhZD50cj50aD5kaXYge1xyXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5ib2R5IC51aS10YWJsZSAudWktdGFibGUtdGJvZHk+dHI+dGQge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwYWRkaW5nOiAwIDRweDtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFmMGZmO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7XHJcbn1cclxuLmFjY29yZGlvbi1pbWctaWNvbiB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICB3aWR0aDogMjBweDtcclxufVxyXG5cclxuLnBvaW50ZXItY3Vyc29yIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG4jcmFpbENhclRhYmxlIC5lZGl0LWNvbHVtbiB7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXBhZ2luYXRvciB7XHJcbiAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXBhZ2luYXRvciAudWktcGFnaW5hdG9yLXBhZ2VzIC51aS1wYWdpbmF0b3ItcGFnZS51aS1zdGF0ZS1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxDYXJUYWJsZSAudWktbXVsdGlzZWxlY3QgLnVpLW11bHRpc2VsZWN0LXBhbmVsIC51aS1tdWx0aXNlbGVjdC1pdGVtcyB7XHJcbiAgICBsZWZ0OiAtMjkycHggIWltcG9ydGFudDtcclxuICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDE1MHB4O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLW11bHRpc2VsZWN0LXBhbmVsIC51aS1tdWx0aXNlbGVjdC1pdGVtcyAudWktbXVsdGlzZWxlY3QtaXRlbS51aS1zdGF0ZS1oaWdobGlnaHQge1xyXG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLWNoa2JveCAudWktY2hrYm94LWJveC51aS1zdGF0ZS1hY3RpdmUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlIHRhYmxlIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudCAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlIHtcclxuICAgIG1heC1oZWlnaHQ6IDcwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxDYXJUYWJsZSAudWktdGFibGUtc2Nyb2xsYWJsZS1oZWFkZXIsIC51aS10YWJsZS1zY3JvbGxhYmxlLWZvb3RlciB7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtaGVhZGVyLWJveCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDYwcHggIWltcG9ydGFudDtcclxufVxyXG4jcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgLyogbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDI4MHB4KSAhaW1wb3J0YW50OyAqL1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC5leGNlbEljb24ge1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTA7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBwYWRkaW5nOiA2cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIHRvcDogLTdweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XHJcbiAgICAjcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIC8qIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzNzBweCkgIWltcG9ydGFudDsgKi9cclxuICAgIH1cclxuICAgIC5jZiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxNDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MnB4KSB7XHJcbiAgICAjcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIC8qIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMjBweCkgIWltcG9ydGFudDsgKi9cclxuICAgIH1cclxuICAgIC5jZiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxMTBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDA3cHgpIHtcclxuICAgICNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtYm9keSB7XHJcbiAgICAgICAgLyogbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMwMHB4KSAhaW1wb3J0YW50OyAqL1xyXG4gICAgfVxyXG4gICAgLmNmIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjgwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAjcmFpbENhclRhYmxlIC51aS1tdWx0aXNlbGVjdCAudWktbXVsdGlzZWxlY3QtcGFuZWwge1xyXG4gICAgICAgIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uY29tbWVudHMtd2lkdGgge1xyXG4gICAgd2lkdGg6IDI1MHB4O1xyXG59XHJcbnRhYmxlIHRyLnVpLXN0YXRlLWhpZ2hsaWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxufVxyXG4iXX0= */\"","import { Component, OnInit, SimpleChanges, ViewEncapsulation, Input, Output, EventEmitter, OnChanges } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { FilterUtils, LazyLoadEvent } from 'primeng/api';\r\nimport { RailFleetService } from '../../../services/rail-fleet.service';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { element } from 'protractor';\r\nimport { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\r\nimport { EMLINK } from 'constants';\r\nimport { SelectItem } from 'primeng/api';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n\r\nconst EXCEL_EXTENSION = '.xlsx';\r\n\r\n@Component({\r\n selector: 'app-invoice-edit',\r\n templateUrl: './invoice-edit.component.html',\r\n styleUrls: ['./invoice-edit.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class InvoiceEditComponent implements OnInit,OnChanges {\r\n @Input() selectedValues: any;\r\n @Input() selectedCols: any[];\r\n @Input() tabType :any;\r\n @Output() bulkEditStatus = new EventEmitter();\r\n activeCarsData: any;\r\n cols: any[];\r\n selected=[];\r\n apiResp: any;\r\n defaultWidth: '100%';\r\n viewColHeight: any;\r\n userId: any;\r\n userAdmin: boolean = false;\r\n filteredData: any;\r\n filteredFields = [];\r\n tempFilteredData: any;\r\n masterAPIResp: any;\r\n permittedCommodities: any;\r\n // SelectStatus: any;\r\n SelectStatus: SelectItem[];\r\n hazardClasses: any;\r\n carTypes: any;\r\n dot_aar_classes: any;\r\n carBuilders: any;\r\n\r\n constructor(private _railFleetService: RailFleetService, private router: Router,private spinner: NgxSpinnerService, private _toastr: ToastrService) { }\r\n \r\n ngOnChanges(): void {\r\n this.totalRecords = this.selectedValues.length\r\n this.loadDataOnScroll({ first: 0, rows: 20 })\r\n }\r\n\r\n ngOnInit() {\r\n this.userId = sessionStorage.getItem('userId');\r\n let role = sessionStorage.getItem('role');\r\n if(role != null && role != undefined && role != '' ) {\r\n if(role.includes('Admin')) {\r\n this.userAdmin = true;\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n // this.getAllMasterData()\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n // this.spinner.show();\r\n \r\n this.cols = [\r\n // { \"header_id\": 1, \"field\": \"status\", \"header\": \"Response\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 1 },\r\n { \"header_id\": 2, \"field\": \"railcarID\", \"header\": \"Railcar ID\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 2 },\r\n { \"header_id\": 3, \"field\": \"carstatus\", \"header\": \"Car status\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 3 },\r\n { \"header_id\": 4, \"field\": \"owner\", \"header\": \"Owner\", \"options\": [], \"width\": '200px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 4 },\r\n { \"header_id\": 5, \"field\": \"tcC_Cost_Center\", \"header\": \"TCC (Cost Center)\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 5 },\r\n { \"header_id\": 6, \"field\": \"gL_Account_Number\", \"header\": \"GL Account Number\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 6 },\r\n { \"header_id\": 7, \"field\": \"gL_Account_Name\", \"header\": \"GL Account Name\", \"options\": [], \"width\": '350px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 7 },\r\n { \"header_id\": 8, \"field\": \"mapping_Category\", \"header\": \"Mapping Category\", \"options\": [], \"width\": '200px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 8 },\r\n { \"header_id\": 9, \"field\": \"component_Group\", \"header\": \"Component Group\", \"options\": [], \"width\": '200px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 9 },\r\n { \"header_id\": 10, \"field\": \"narrative\", \"header\": \"Narrative\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 10 },\r\n { \"header_id\": 11, \"field\": \"total\", \"header\": \"Total\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 11 },\r\n { \"header_id\": 12, \"field\": \"labor_Cost\", \"header\": \"Labor Cost\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 12 },\r\n { \"header_id\": 13, \"field\": \"material_Cost\", \"header\": \"Material Cost\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 13 },\r\n { \"header_id\": 14, \"field\": \"invoicing_Company\", \"header\": \"Invoicing Company\", \"options\": [], \"width\": '200px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 14 },\r\n { \"header_id\": 15, \"field\": \"bu\", \"header\": \"BU\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 15 },\r\n { \"header_id\": 16, \"field\": \"car_Type\", \"header\": \"Car Type\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 16 },\r\n { \"header_id\": 17, \"field\": \"age_of_Car\", \"header\": \"Age of Car\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 17 },\r\n { \"header_id\": 18, \"field\": \"fleet\", \"header\": \"Fleet\", \"options\": [], \"width\": '200px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 18 },\r\n { \"header_id\": 19, \"field\": \"allT_Invoice_Ref\", \"header\": \"ALLT Invoice Ref\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 19 },\r\n { \"header_id\": 20, \"field\": \"cutoff_Date\", \"header\": \"Cutoff Date\", \"options\": [], \"width\": '150px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 20 }\r\n ];\r\n // console.log('edit');\r\n // console.log(this.tabType);\r\n // if(this.tabType !=2){\r\n // // this.selectedCols.push(this.cols[0]);\r\n // }\r\n this.cols.forEach(element => {\r\n this.selectedCols.forEach(elm => {\r\n if (element.field === elm.field) {\r\n\r\n if(elm.selectedOptions.length!=0)\r\n {\r\n element.selectedOptions=elm.selectedOptions;\r\n this.selected.push(element);\r\n }else{\r\n this.selected.push(element);\r\n }\r\n } \r\n \r\n });\r\n });\r\n this.selectedCols=this.selected;\r\n this.viewColHeight = (window.innerHeight - 190) + \"px\";\r\n FilterUtils['custom'] = (value, filter): boolean => {\r\n if (filter === undefined || filter === null || filter.trim() === '') {\r\n return true;\r\n }\r\n\r\n if (value === undefined || value === null) {\r\n return false;\r\n }\r\n\r\n return parseInt(filter) > value;\r\n }\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n this.SelectStatus = [{label: 'Accept', value: 'ACCEPT'},{label: 'Reject', value: 'REJECT'}]\r\n \r\n }\r\n\r\n onChangeDDValue(value) {\r\n this.sortColumns(value);\r\n }\r\n\r\n showHideData(e) {\r\n this.cols = e;\r\n }\r\n\r\n sortColumns(value) {\r\n this.selectedCols = this.selectedCols.sort((a, b) => {\r\n return a.serialNo - b.serialNo;\r\n })\r\n }\r\n\r\n\r\n onnSelectRow(rowData, type) {\r\n this.router.navigate(['rail-car/info'], { state: { data: {cols: this.cols, rowData: rowData, selectionType: type} } });\r\n }\r\n\r\n filterData(value, filter) {\r\n if (value == '') {\r\n if (this.filteredFields.length) {\r\n this.filteredFields = this.filteredFields.filter(ff => ff.fieldName !== filter);\r\n } else {\r\n this.filteredFields = [];\r\n }\r\n } else {\r\n let foundField = this.filteredFields.filter(ff => ff.fieldName == filter);\r\n if (foundField.length) {\r\n this.filteredFields.forEach(ff => {\r\n if (ff.fieldName == filter) {\r\n ff.value = value;\r\n }\r\n })\r\n } else {\r\n let fieldObj = {\r\n fieldName: filter,\r\n value: value\r\n };\r\n this.filteredFields.push(fieldObj);\r\n }\r\n }\r\n if (this.filteredFields.length) {\r\n let temp = this.activeCarsData;\r\n this.filteredFields.forEach(ff => {\r\n temp = temp.filter(fd => fd[ff.fieldName].toUpperCase().includes(ff.value.toUpperCase()));\r\n })\r\n this.filteredData = temp;\r\n } else {\r\n this.filteredData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n }\r\n this.tempFilteredData = JSON.parse(JSON.stringify(this.filteredData));\r\n }\r\n\r\n exportExcel() {\r\n let tFilteredData = JSON.parse(JSON.stringify(this.filteredData));\r\n tFilteredData.forEach(ac => {\r\n let pcValue = \"\";\r\n if(ac.permittedCommodity.length > 0) {\r\n ac.permittedCommodity.forEach(pc => {\r\n pcValue = pcValue + pc.permittedcommodities + \", \"\r\n });\r\n ac.permittedCommodity = pcValue;\r\n }\r\n }) \r\n this.exportAsExcelFile(tFilteredData, 'RailCarFleet', 'sheet1', this.cols)\r\n }\r\n\r\n \r\n\r\n exportAsExcelFile(json: any[], excelFileName: string, sheetName: string, columnValues: any[]): void {\r\n var fieldValues: any[] = columnValues.map(field => field.field);\r\n var headerValues: string[] = columnValues.map(header => header.header);\r\n var displayedJson: any[] = [];\r\n if (json != null && json.length > 0) {\r\n for (let originalValue of json) {\r\n var jsonObject: any = {};\r\n for (let fieldValue of fieldValues) {\r\n jsonObject[fieldValue] = originalValue[fieldValue];\r\n }\r\n var jsonString = JSON.stringify(jsonObject);\r\n displayedJson.push(JSON.parse(jsonString));\r\n }\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(displayedJson);\r\n var range = XLSX.utils.decode_range(worksheet['!ref']);\r\n for (var C = range.s.c; C <= range.e.c; ++C) {\r\n var address = XLSX.utils.encode_col(C) + \"1\"; // <-- first row, column number C\r\n if (!worksheet[address]) continue;\r\n worksheet[address] = {\r\n v: headerValues[C],\r\n t: 's',\r\n s: {\r\n alignment: { textRotation: 90 },\r\n font: { bold: true }\r\n }\r\n };\r\n }\r\n XLSX.utils.sheet_add_aoa(worksheet, [[]], { origin: -1 });\r\n const workbook: XLSX.WorkBook = { Sheets: { [sheetName]: worksheet }, SheetNames: [sheetName] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n FileSaver.saveAs(data, fileName + EXCEL_EXTENSION);\r\n }\r\n editBulk() {\r\n const selectedCheckbox = this.activeCarsData.filter(val => val[0]);\r\n }\r\n getAllMasterData() {\r\n this.spinner.show();\r\n // this._railFleetService.getRailMasterData().subscribe(response => {\r\n // this.masterAPIResp = response;\r\n // this.permittedCommodities = this.masterAPIResp.permittedCommodities;\r\n // this.permittedCommodities.forEach(pc => {\r\n // // pc.railcarID = this.rowData.railcarID;\r\n // pc.permittedCommoditiesDesc = null;\r\n // })\r\n // this.packingGroups = this.masterAPIResp.packagingGroups;\r\n // this.hazardClasses = this.masterAPIResp.hazardClasses;\r\n // this.carTypes = this.masterAPIResp.carTypes;\r\n // this.dot_aar_classes = this.masterAPIResp.dot_aar_classes;\r\n // this.carBuilders = this.masterAPIResp.carBuilders;\r\n // this.spinner.hide();\r\n // this.selectedValues.forEach((val, i) => {\r\n // this.selectedValues[i].permittedCommodity = this.permittedCommodities.filter(pc=>this.selectedValues[i].permittedCommodity\r\n // .find(selectedPc=>selectedPc.permittedCommoditiesID===pc.permittedCommoditiesID));\r\n // this.selectedValues[i].hazardClassSelected = this.hazardClasses.find(hc => hc.hazardClassID === this.selectedValues[i].hazardClassID);\r\n // this.selectedValues[i].packinggroupSelected = this.packingGroups.find(hc => hc.packinggroup === this.selectedValues[i].packingGroup);\r\n // this.selectedValues[i].carbuilderSelected = this.carBuilders.find(hc => hc.carBuilderID === this.selectedValues[i].carBuilderID);\r\n // })\r\n // })\r\n this.spinner.hide();\r\n \r\n }\r\n\r\n loading = true\r\n totalRecords:number=0\r\n selectedValuesLazyLoaded\r\n loadDataOnScroll(event: LazyLoadEvent) {\r\n this.loading = true;\r\n setTimeout(() => {\r\n //last chunk\r\n console.log(event, this.totalRecords)\r\n if (event.sortField != null && event.sortField != undefined) {\r\n let fieldName = event.sortField\r\n this.selectedValues.sort((a, b) => { return (a.fieldName < b.fieldName) ? 1 : -1 })\r\n }\r\n\r\n if (event.first === this.totalRecords - 20)\r\n this.selectedValuesLazyLoaded = this.loadChunk(event.first, 20);\r\n else\r\n this.selectedValuesLazyLoaded = this.loadChunk(event.first, event.rows);\r\n this.loading = false;\r\n }, 250);\r\n }\r\n\r\n loadChunk(index, length): any[] {\r\n let chunk: any[] = [];\r\n for (let i = 0; i < length; i++) {\r\n if (this.selectedValues[index + i])\r\n chunk[i] = { ...this.selectedValues[index + i] }\r\n }\r\n return chunk;\r\n }\r\n\r\n validateNumber(value) {\r\n let numberExp = new RegExp(/^\\d*\\.?\\d*$/);\r\n return numberExp.test(value);\r\n }\r\n saveAll(saveevent) {\r\n this.spinner.show();\r\n const payload = [];\r\n this.selectedValues.forEach(invoice => {\r\n \r\n const railFleetClass = {\r\n InvoiceID: invoice.invoiceID,\r\n RailcarID:invoice.railcarID,\r\n Carstatus: invoice.carstatus,\r\n Owner: invoice.owner,\r\n TCC_Cost_Center: invoice.tcC_Cost_Center,\r\n GL_Account_Number: invoice.gL_Account_Number,\r\n GL_Account_Name: invoice.gL_Account_Name,\r\n Mapping_Category: invoice.mapping_Category,\r\n Component_Group: invoice.component_Group,\r\n Narrative: invoice.narrative, \r\n Total: invoice.total,\r\n Labor_Cost:invoice.labor_Cost,\r\n Material_Cost:invoice.material_Cost,\r\n Invoicing_Company: invoice.invoicing_Company,\r\n BU: invoice.bu,\r\n // permittedCommodities: railCar.permittedCommodities,\r\n Car_Type: invoice.car_Type ,\r\n Age_of_Car: invoice.age_of_Car,\r\n Fleet: invoice.fleet,\r\n ALLT_Invoice_Ref: invoice.allT_Invoice_Ref,\r\n Cutoff_Date: invoice.cutoff_Date,\r\n Status: invoice.status,\r\n ModifiedBy: this.userId\r\n };\r\n payload.push(railFleetClass);\r\n });\r\n this._railFleetService.updateBulkInvoiceDetails(payload).subscribe(response => {\r\n this._toastr.success('Updated Successfully', 'Success!');\r\n this.spinner.hide();\r\n this.bulkEditStatus.emit(false);\r\n });\r\n }\r\n hideBulkEdit() {\r\n this.bulkEditStatus.emit(false);\r\n }\r\n}\r\n","export default \".header-label {\\r\\n font-size: 20px;\\r\\n font-weight: 600;\\r\\n}\\r\\n.header-label-right {\\r\\n font-size: 16px;\\r\\n font-weight: 600;\\r\\n}\\r\\n.header-invoice-label\\r\\n{\\r\\n font-size: 12px;\\r\\n font-weight: 400;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top .ui-tabview-nav {\\r\\n border-bottom: none !important;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top .ui-tabview-nav, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav, body .ui-tabview.ui-tabview-left .ui-tabview-nav, body .ui-tabview.ui-tabview-right .ui-tabview-nav {\\r\\n border-bottom: 2px solid black !important; \\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top>.ui-tabview-nav {\\r\\n padding: 0px !important;\\r\\n z-index: 1200;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top .ui-tabview-nav li.ui-state-active, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li.ui-state-active, body .ui-tabview.ui-tabview-left .ui-tabview-nav li.ui-state-active, body .ui-tabview.ui-tabview-right .ui-tabview-nav li.ui-state-active {\\r\\n color: black !important;\\r\\n background-color: white !important;\\r\\n border: 1px solid black !important;\\r\\n border-bottom: 3px solid white !important;\\r\\n border-top-left-radius: 15px !important;\\r\\n border-top-right-radius: 15px !important;\\r\\n margin-bottom: 0px !important;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top .ui-tabview-nav li, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li, body .ui-tabview.ui-tabview-left .ui-tabview-nav li, body .ui-tabview.ui-tabview-right .ui-tabview-nav li {\\r\\n border: none !important;\\r\\n background-color: none !important;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top>.ui-tabview-nav li {\\r\\n border-bottom: none !important;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top .ui-tabview-nav li.ui-state-active a, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li.ui-state-active a, body .ui-tabview.ui-tabview-left .ui-tabview-nav li.ui-state-active a, body .ui-tabview.ui-tabview-right .ui-tabview-nav li.ui-state-active a {\\r\\n color: black !important;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top .ui-tabview-nav li a, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li a, body .ui-tabview.ui-tabview-left .ui-tabview-nav li a, body .ui-tabview.ui-tabview-right .ui-tabview-nav li a {\\r\\n padding: 18px !important;\\r\\n}\\r\\n#invoiceInfo .ui-tabview .ui-tabview-panels {\\r\\n border: none !important;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top .ui-tabview-nav li, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li, body .ui-tabview.ui-tabview-left .ui-tabview-nav li, body .ui-tabview.ui-tabview-right .ui-tabview-nav li {\\r\\n background-color: white !important;\\r\\n}\\r\\n#invoiceInfo .ui-tabview.ui-tabview-top .ui-tabview-nav li:not(.ui-state-active):not(.ui-state-disabled):hover, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li:not(.ui-state-active):not(.ui-state-disabled):hover, body .ui-tabview.ui-tabview-left .ui-tabview-nav li:not(.ui-state-active):not(.ui-state-disabled):hover, body .ui-tabview.ui-tabview-right .ui-tabview-nav li:not(.ui-state-active):not(.ui-state-disabled):hover {\\r\\n background-color: whitesmoke !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9pbnZvaWNlLWluZm9ybWF0aW9uL2ludm9pY2UtaW5mb3JtYXRpb24uY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLGVBQWU7SUFDZixnQkFBZ0I7QUFDcEI7QUFDQTtJQUNJLGVBQWU7SUFDZixnQkFBZ0I7QUFDcEI7QUFDQTs7SUFFSSxlQUFlO0lBQ2YsZ0JBQWdCO0FBQ3BCO0FBQ0E7SUFDSSw4QkFBOEI7QUFDbEM7QUFDQTtJQUNJLHlDQUF5QztBQUM3QztBQUNBO0lBQ0ksdUJBQXVCO0lBQ3ZCLGFBQWE7QUFDakI7QUFDQTtJQUNJLHVCQUF1QjtJQUN2QixrQ0FBa0M7SUFDbEMsa0NBQWtDO0lBQ2xDLHlDQUF5QztJQUN6Qyx1Q0FBdUM7SUFDdkMsd0NBQXdDO0lBQ3hDLDZCQUE2QjtBQUNqQztBQUNBO0lBQ0ksdUJBQXVCO0lBQ3ZCLGlDQUFpQztBQUNyQztBQUNBO0lBQ0ksOEJBQThCO0FBQ2xDO0FBQ0E7SUFDSSx1QkFBdUI7QUFDM0I7QUFDQTtJQUNJLHdCQUF3QjtBQUM1QjtBQUNBO0lBQ0ksdUJBQXVCO0FBQzNCO0FBQ0E7SUFDSSxrQ0FBa0M7QUFDdEM7QUFDQTtJQUNJLHVDQUF1QztBQUMzQyIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvaW52b2ljZS1pbmZvcm1hdGlvbi9pbnZvaWNlLWluZm9ybWF0aW9uLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuaGVhZGVyLWxhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLmhlYWRlci1sYWJlbC1yaWdodCB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcbi5oZWFkZXItaW52b2ljZS1sYWJlbFxyXG57XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG59XHJcbiNpbnZvaWNlSW5mbyAudWktdGFidmlldy51aS10YWJ2aWV3LXRvcCAudWktdGFidmlldy1uYXYge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiNpbnZvaWNlSW5mbyAudWktdGFidmlldy51aS10YWJ2aWV3LXRvcCAudWktdGFidmlldy1uYXYsIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1ib3R0b20gLnVpLXRhYnZpZXctbmF2LCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYsIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1yaWdodCAudWktdGFidmlldy1uYXYge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGJsYWNrICFpbXBvcnRhbnQ7IFxyXG59XHJcbiNpbnZvaWNlSW5mbyAudWktdGFidmlldy51aS10YWJ2aWV3LXRvcD4udWktdGFidmlldy1uYXYge1xyXG4gICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB6LWluZGV4OiAxMjAwO1xyXG59XHJcbiNpbnZvaWNlSW5mbyAudWktdGFidmlldy51aS10YWJ2aWV3LXRvcCAudWktdGFidmlldy1uYXYgbGkudWktc3RhdGUtYWN0aXZlLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctYm90dG9tIC51aS10YWJ2aWV3LW5hdiBsaS51aS1zdGF0ZS1hY3RpdmUsIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1sZWZ0IC51aS10YWJ2aWV3LW5hdiBsaS51aS1zdGF0ZS1hY3RpdmUsIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1yaWdodCAudWktdGFidmlldy1uYXYgbGkudWktc3RhdGUtYWN0aXZlIHtcclxuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgd2hpdGUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDE1cHggIWltcG9ydGFudDtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwcHggIWltcG9ydGFudDtcclxufVxyXG4jaW52b2ljZUluZm8gLnVpLXRhYnZpZXcudWktdGFidmlldy10b3AgLnVpLXRhYnZpZXctbmF2IGxpLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctYm90dG9tIC51aS10YWJ2aWV3LW5hdiBsaSwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LWxlZnQgLnVpLXRhYnZpZXctbmF2IGxpLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctcmlnaHQgLnVpLXRhYnZpZXctbmF2IGxpIHtcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiNpbnZvaWNlSW5mbyAudWktdGFidmlldy51aS10YWJ2aWV3LXRvcD4udWktdGFidmlldy1uYXYgbGkge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiNpbnZvaWNlSW5mbyAudWktdGFidmlldy51aS10YWJ2aWV3LXRvcCAudWktdGFidmlldy1uYXYgbGkudWktc3RhdGUtYWN0aXZlIGEsIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1ib3R0b20gLnVpLXRhYnZpZXctbmF2IGxpLnVpLXN0YXRlLWFjdGl2ZSBhLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYgbGkudWktc3RhdGUtYWN0aXZlIGEsIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1yaWdodCAudWktdGFidmlldy1uYXYgbGkudWktc3RhdGUtYWN0aXZlIGEge1xyXG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XHJcbn1cclxuI2ludm9pY2VJbmZvIC51aS10YWJ2aWV3LnVpLXRhYnZpZXctdG9wIC51aS10YWJ2aWV3LW5hdiBsaSBhLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctYm90dG9tIC51aS10YWJ2aWV3LW5hdiBsaSBhLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYgbGkgYSwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LXJpZ2h0IC51aS10YWJ2aWV3LW5hdiBsaSBhIHtcclxuICAgIHBhZGRpbmc6IDE4cHggIWltcG9ydGFudDtcclxufVxyXG4jaW52b2ljZUluZm8gLnVpLXRhYnZpZXcgLnVpLXRhYnZpZXctcGFuZWxzIHtcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiNpbnZvaWNlSW5mbyAudWktdGFidmlldy51aS10YWJ2aWV3LXRvcCAudWktdGFidmlldy1uYXYgbGksIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1ib3R0b20gLnVpLXRhYnZpZXctbmF2IGxpLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYgbGksIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1yaWdodCAudWktdGFidmlldy1uYXYgbGkge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxufVxyXG4jaW52b2ljZUluZm8gLnVpLXRhYnZpZXcudWktdGFidmlldy10b3AgLnVpLXRhYnZpZXctbmF2IGxpOm5vdCgudWktc3RhdGUtYWN0aXZlKTpub3QoLnVpLXN0YXRlLWRpc2FibGVkKTpob3ZlciwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LWJvdHRvbSAudWktdGFidmlldy1uYXYgbGk6bm90KC51aS1zdGF0ZS1hY3RpdmUpOm5vdCgudWktc3RhdGUtZGlzYWJsZWQpOmhvdmVyLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYgbGk6bm90KC51aS1zdGF0ZS1hY3RpdmUpOm5vdCgudWktc3RhdGUtZGlzYWJsZWQpOmhvdmVyLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctcmlnaHQgLnVpLXRhYnZpZXctbmF2IGxpOm5vdCgudWktc3RhdGUtYWN0aXZlKTpub3QoLnVpLXN0YXRlLWRpc2FibGVkKTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlICFpbXBvcnRhbnQ7XHJcbn0iXX0= */\"","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-invoice-information',\r\n templateUrl: './invoice-information.component.html',\r\n styleUrls: ['./invoice-information.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class InvoiceInformationComponent implements OnInit {\r\n dropdownList = [];\r\n selectedItems = [];\r\n dropdownSettings = {};\r\n userId: any;\r\n constructor(private router: Router, private _service: RailFleetService, private _spinner: NgxSpinnerService,) { }\r\n\r\n ngOnInit() {\r\n this.userId = sessionStorage.getItem('userId');\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n //this.getRailfleetInvoiceData(\"3\")\r\n //this.getRailfleetInvoiceData(\"2\")\r\n this.getRailfleetInvoiceData(\"1\")\r\n }\r\n onItemSelect(item: any) {\r\n // console.log(item);\r\n // console.log(this.selectedItems);\r\n }\r\n OnItemDeSelect(item: any) {\r\n // console.log(item);\r\n // console.log(this.selectedItems);\r\n }\r\n onSelectAll(items: any) {\r\n // console.log(items);\r\n }\r\n onDeSelectAll(items: any) {\r\n // console.log(items);\r\n }\r\n\r\n onTabChange(event) {\r\n // console.log(event);\r\n this.getRailfleetInvoiceData(event.index + 1)\r\n }\r\n\r\n invoiceDetails: any\r\n\r\n details(value: any) {\r\n // console.log(value)\r\n this.invoiceDetails = value\r\n }\r\n\r\n nonActioned: any = [{}]\r\n actioned: any = []\r\n autoApproved: any = []\r\n railFleetInvoiceCount:any\r\n getRailfleetInvoiceData(tabtype) {\r\n this._spinner.show();\r\n this._service.getRailfleetInvoiceData(tabtype).subscribe((response:any) => {\r\n this._spinner.hide();\r\n this.railFleetInvoiceCount=response.railFleetInvoiceCount\r\n if (tabtype == '1') {\r\n this.nonActioned = response.railFleetInvoiceList\r\n }\r\n else if (tabtype == '2') {\r\n this.actioned = response.railFleetInvoiceList\r\n }\r\n else if (tabtype == '3') {\r\n this.autoApproved = response.railFleetInvoiceList\r\n }\r\n })\r\n\r\n }\r\n\r\n refresh(value) {\r\n //console.log(value)\r\n if (value) {\r\n //this.getRailfleetInvoiceData(\"3\")\r\n //this.getRailfleetInvoiceData(\"2\")\r\n this.getRailfleetInvoiceData(\"1\")\r\n //console.log(this.nonActioned, this.actioned)\r\n }\r\n }\r\n\r\n}\r\n","export default \"body .ui-table .ui-table-thead>tr>th {\\r\\n background-color: white;\\r\\n color:#004890;\\r\\n font-size: 14px;\\r\\n font-weight: 600;\\r\\n padding: 3px;\\r\\n text-align: center;\\r\\n border: 1px solid #e1f0ff;\\r\\n}\\r\\n\\r\\nbody .ui-table .ui-table-thead>tr>th>div {\\r\\n /* word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis; */ \\r\\n /* commented because text over riding on other columns */\\r\\n}\\r\\n\\r\\nbody .ui-table .ui-table-tbody>tr>td {\\r\\n font-size: 14px;\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n padding: 0 4px;\\r\\n color: black;\\r\\n font-weight: 500;\\r\\n border: 1px solid #e1f0ff;\\r\\n text-overflow: ellipsis;\\r\\n vertical-align: top !important;\\r\\n}\\r\\n\\r\\n.accordion-img-icon {\\r\\n margin-right: 6px;\\r\\n margin-bottom: 2px;\\r\\n margin-top: 2px;\\r\\n margin-left: 2px;\\r\\n height: 20px;\\r\\n width: 20px;\\r\\n}\\r\\n\\r\\n.loading-text {\\r\\n display: block;\\r\\n background-color: #f1f1f1;\\r\\n min-height: 19px;\\r\\n -webkit-animation: pulse 1s infinite ease-in-out;\\r\\n animation: pulse 1s infinite ease-in-out;\\r\\n text-indent: -99999px;\\r\\n overflow: hidden;\\r\\n}\\r\\n\\r\\n.pointer-cursor {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n#invoiceTable .edit-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n right: 0px !important;\\r\\n width: 60px;\\r\\n}\\r\\n\\r\\n#invoiceTable .edit-column2 {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n right: 0px !important;\\r\\n width: 60px;\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-paginator {\\r\\n margin-top: 5px !important;\\r\\n background-color: white !important;\\r\\n border: none !important;\\r\\n float: right !important;\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {\\r\\n background-color: #004890 !important;\\r\\n color: white !important;\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-multiselect .ui-multiselect-panel .ui-multiselect-items {\\r\\n left: -292px !important;\\r\\n right: 0px !important;\\r\\n float: left;\\r\\n width: 150px;\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-chkbox .ui-chkbox-box.ui-state-active {\\r\\n border-color: #004890 !important;\\r\\n background-color: #004890 !important;\\r\\n color: #ffffff !important;\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-table table {\\r\\n /* width: fit-content !important; */\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-table {\\r\\n /* max-height: 700px !important; */\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-table-scrollable-header, .ui-table-scrollable-footer {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n background-color: white;\\r\\n /* z-index: 9999; */\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-table-scrollable-header-box {\\r\\n /* margin-right: 60px !important; */\\r\\n}\\r\\n\\r\\n#invoiceTable .ui-table-scrollable-body {\\r\\n /* max-height: calc(100vh - 280px) !important; */\\r\\n min-height: calc(100vh - 420px);\\r\\n}\\r\\n\\r\\nbutton[disabled] {\\r\\n cursor: no-drop;\\r\\n}\\r\\n\\r\\n#invoiceTable .actionbar {\\r\\n top: -65px;\\r\\n text-align: end;\\r\\n display: flex;\\r\\n align-items: center;\\r\\n justify-content: end;\\r\\n}\\r\\n\\r\\n#invoiceTable .excelIcon {\\r\\n font-size: 1.5em;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n color: white;\\r\\n border-radius: 5px;\\r\\n padding: 6px;\\r\\n margin-left: 10px;\\r\\n top: -7px;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table .ui-table-tbody > tr.ui-state-highlight .read-value {\\r\\n color: #e1f0ff;\\r\\n}\\r\\n\\r\\n.read-value {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n.edit-value {\\r\\n color: black;\\r\\n width: 100% !important;\\r\\n}\\r\\n\\r\\n.btn-clear {\\r\\n background: #004890 !important;\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 1000px) {\\r\\n #invoiceTable .ui-table-scrollable-body {\\r\\n /* max-height: calc(100vh - 370px) !important; */\\r\\n }\\r\\n .cf {\\r\\n margin-top:140px !important;\\r\\n }\\r\\n }\\r\\n\\r\\n@media screen and (min-width: 1052px) {\\r\\n #invoiceTable .ui-table-scrollable-body {\\r\\n /* max-height: calc(100vh - 320px) !important; */\\r\\n }\\r\\n .cf {\\r\\n margin-top:110px !important;\\r\\n }\\r\\n }\\r\\n\\r\\n@media screen and (min-width: 1407px) {\\r\\n #invoiceTable .ui-table-scrollable-body {\\r\\n /* max-height: calc(100vh - 300px) !important; */\\r\\n }\\r\\n .cf {\\r\\n margin-top:80px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 320px) and (max-width: 768px) {\\r\\n #invoiceTable .ui-multiselect .ui-multiselect-panel {\\r\\n left: 0px !important;\\r\\n right: 0px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9pbnZvaWNlLXNlbGVjdGlvbi9pbnZvaWNlLXNlbGVjdGlvbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksdUJBQXVCO0lBQ3ZCLGFBQWE7SUFDYixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIseUJBQXlCO0FBQzdCOztBQUVBO0lBQ0k7Ozs4QkFHMEI7SUFDMUIsd0RBQXdEO0FBQzVEOztBQUNBO0lBQ0ksZUFBZTtJQUNmLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsOEJBQThCO0FBQ2xDOztBQUVBO0lBQ0ksaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixXQUFXO0FBQ2Y7O0FBRUE7SUFDSSxjQUFjO0lBQ2QseUJBQXlCO0lBQ3pCLGdCQUFnQjtJQUNoQixnREFBd0M7WUFBeEMsd0NBQXdDO0lBQ3hDLHFCQUFxQjtJQUNyQixnQkFBZ0I7QUFDcEI7O0FBRUE7SUFDSSxlQUFlO0FBQ25COztBQUNBO0lBQ0ksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsV0FBVztBQUNmOztBQUNBO0lBQ0ksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsV0FBVztBQUNmOztBQUNBO0lBQ0ksMEJBQTBCO0lBQzFCLGtDQUFrQztJQUNsQyx1QkFBdUI7SUFDdkIsdUJBQXVCO0FBQzNCOztBQUNBO0lBQ0ksb0NBQW9DO0lBQ3BDLHVCQUF1QjtBQUMzQjs7QUFDQTtJQUNJLHVCQUF1QjtJQUN2QixxQkFBcUI7SUFDckIsV0FBVztJQUNYLFlBQVk7QUFDaEI7O0FBQ0E7SUFDSSxnQ0FBZ0M7SUFDaEMsb0NBQW9DO0lBQ3BDLHlCQUF5QjtBQUM3Qjs7QUFDQTtJQUNJLG1DQUFtQztBQUN2Qzs7QUFDQTtJQUNJLGtDQUFrQztBQUN0Qzs7QUFDQTtJQUNJLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsdUJBQXVCO0lBQ3ZCLG1CQUFtQjtBQUN2Qjs7QUFDQTtJQUNJLG1DQUFtQztBQUN2Qzs7QUFDQTtJQUNJLGdEQUFnRDtJQUNoRCwrQkFBK0I7QUFDbkM7O0FBQ0E7SUFDSSxlQUFlO0FBQ25COztBQUNBO0lBQ0ksVUFBVTtJQUNWLGVBQWU7SUFDZixhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLG9CQUFvQjtBQUN4Qjs7QUFDQTtJQUNJLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YseUJBQXlCO0lBQ3pCLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixTQUFTO0lBQ1Qsa0JBQWtCO0FBQ3RCOztBQUNBO0lBQ0ksY0FBYztBQUNsQjs7QUFDQTtJQUNJLGVBQWU7QUFDbkI7O0FBRUE7S0FDSyxZQUFZO0tBQ1osc0JBQXNCO0FBQzNCOztBQUNBO0VBQ0UsOEJBQThCO0FBQ2hDOztBQUVBO0lBQ0k7UUFDSSxnREFBZ0Q7SUFDcEQ7SUFDQTtRQUNJLDJCQUEyQjtJQUMvQjtFQUNGOztBQUVBO0lBQ0U7UUFDSSxnREFBZ0Q7SUFDcEQ7SUFDQTtRQUNJLDJCQUEyQjtJQUMvQjtFQUNGOztBQUNBO0lBQ0U7UUFDSSxnREFBZ0Q7SUFDcEQ7SUFDQTtRQUNJLDBCQUEwQjtJQUM5QjtBQUNKOztBQUNBO0lBQ0k7UUFDSSxvQkFBb0I7UUFDcEIscUJBQXFCO0lBQ3pCO0FBQ0oiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL2ludm9pY2Utc2VsZWN0aW9uL2ludm9pY2Utc2VsZWN0aW9uLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IC51aS10YWJsZSAudWktdGFibGUtdGhlYWQ+dHI+dGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBjb2xvcjojMDA0ODkwO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIHBhZGRpbmc6IDNweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWYwZmY7XHJcbn1cclxuXHJcbmJvZHkgLnVpLXRhYmxlIC51aS10YWJsZS10aGVhZD50cj50aD5kaXYge1xyXG4gICAgLyogd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgKi8gXHJcbiAgICAvKiBjb21tZW50ZWQgYmVjYXVzZSB0ZXh0IG92ZXIgcmlkaW5nIG9uIG90aGVyIGNvbHVtbnMgKi9cclxufVxyXG5ib2R5IC51aS10YWJsZSAudWktdGFibGUtdGJvZHk+dHI+dGQge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwYWRkaW5nOiAwIDRweDtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFmMGZmO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hY2NvcmRpb24taW1nLWljb24ge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcbiAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMnB4O1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgd2lkdGg6IDIwcHg7XHJcbn1cclxuXHJcbi5sb2FkaW5nLXRleHQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xyXG4gICAgbWluLWhlaWdodDogMTlweDtcclxuICAgIGFuaW1hdGlvbjogcHVsc2UgMXMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XHJcbiAgICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucG9pbnRlci1jdXJzb3Ige1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbiNpbnZvaWNlVGFibGUgLmVkaXQtY29sdW1uIHtcclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogNjBweDtcclxufVxyXG4jaW52b2ljZVRhYmxlIC5lZGl0LWNvbHVtbjIge1xyXG4gICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiA2MHB4O1xyXG59XHJcbiNpbnZvaWNlVGFibGUgLnVpLXBhZ2luYXRvciB7XHJcbiAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xyXG59XHJcbiNpbnZvaWNlVGFibGUgLnVpLXBhZ2luYXRvciAudWktcGFnaW5hdG9yLXBhZ2VzIC51aS1wYWdpbmF0b3ItcGFnZS51aS1zdGF0ZS1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuI2ludm9pY2VUYWJsZSAudWktbXVsdGlzZWxlY3QgLnVpLW11bHRpc2VsZWN0LXBhbmVsIC51aS1tdWx0aXNlbGVjdC1pdGVtcyB7XHJcbiAgICBsZWZ0OiAtMjkycHggIWltcG9ydGFudDtcclxuICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDE1MHB4O1xyXG59XHJcbiNpbnZvaWNlVGFibGUgLnVpLWNoa2JveCAudWktY2hrYm94LWJveC51aS1zdGF0ZS1hY3RpdmUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcbiNpbnZvaWNlVGFibGUgLnVpLXRhYmxlIHRhYmxlIHtcclxuICAgIC8qIHdpZHRoOiBmaXQtY29udGVudCAhaW1wb3J0YW50OyAqL1xyXG59XHJcbiNpbnZvaWNlVGFibGUgLnVpLXRhYmxlIHtcclxuICAgIC8qIG1heC1oZWlnaHQ6IDcwMHB4ICFpbXBvcnRhbnQ7ICovXHJcbn1cclxuI2ludm9pY2VUYWJsZSAudWktdGFibGUtc2Nyb2xsYWJsZS1oZWFkZXIsIC51aS10YWJsZS1zY3JvbGxhYmxlLWZvb3RlciB7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAvKiB6LWluZGV4OiA5OTk5OyAqL1xyXG59XHJcbiNpbnZvaWNlVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtaGVhZGVyLWJveCB7XHJcbiAgICAvKiBtYXJnaW4tcmlnaHQ6IDYwcHggIWltcG9ydGFudDsgKi9cclxufVxyXG4jaW52b2ljZVRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgLyogbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDI4MHB4KSAhaW1wb3J0YW50OyAqL1xyXG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDQyMHB4KTtcclxufVxyXG5idXR0b25bZGlzYWJsZWRdIHtcclxuICAgIGN1cnNvcjogbm8tZHJvcDtcclxufVxyXG4jaW52b2ljZVRhYmxlIC5hY3Rpb25iYXIge1xyXG4gICAgdG9wOiAtNjVweDtcclxuICAgIHRleHQtYWxpZ246IGVuZDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XHJcbn1cclxuI2ludm9pY2VUYWJsZSAuZXhjZWxJY29uIHtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgcGFkZGluZzogNnB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICB0b3A6IC03cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuI3JhaWxDYXJUYWJsZSAudWktdGFibGUgLnVpLXRhYmxlLXRib2R5ID4gdHIudWktc3RhdGUtaGlnaGxpZ2h0IC5yZWFkLXZhbHVlIHtcclxuICAgIGNvbG9yOiAjZTFmMGZmO1xyXG59XHJcbi5yZWFkLXZhbHVlIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmVkaXQtdmFsdWUge1xyXG4gICAgIGNvbG9yOiBibGFjaztcclxuICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG59XHJcbi5idG4tY2xlYXIge1xyXG4gIGJhY2tncm91bmQ6ICMwMDQ4OTAgIWltcG9ydGFudDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XHJcbiAgICAjaW52b2ljZVRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIC8qIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzNzBweCkgIWltcG9ydGFudDsgKi9cclxuICAgIH1cclxuICAgIC5jZiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxNDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MnB4KSB7XHJcbiAgICAjaW52b2ljZVRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIC8qIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMjBweCkgIWltcG9ydGFudDsgKi9cclxuICAgIH1cclxuICAgIC5jZiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxMTBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDA3cHgpIHtcclxuICAgICNpbnZvaWNlVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtYm9keSB7XHJcbiAgICAgICAgLyogbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMwMHB4KSAhaW1wb3J0YW50OyAqL1xyXG4gICAgfVxyXG4gICAgLmNmIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjgwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAjaW52b2ljZVRhYmxlIC51aS1tdWx0aXNlbGVjdCAudWktbXVsdGlzZWxlY3QtcGFuZWwge1xyXG4gICAgICAgIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4iXX0= */\"","import { AfterViewChecked, AfterViewInit, Component, ElementRef, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ConfirmationService, FilterUtils, LazyLoadEvent, SortEvent } from 'primeng/api';\r\n\r\nimport { RailFleetService } from '../../../services/rail-fleet.service';\r\nimport * as XLSX from 'xlsx';\r\nimport { stringify } from 'querystring';\r\nimport { AllspecsComponent } from '../allspecs/allspecs.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Table } from 'primeng/table';\r\nimport * as FileSaver from 'file-saver';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DialogpopupComponent } from 'src/app/common/dialogpopup/dialogpopup.component';\r\nimport { Checkbox } from 'primeng/checkbox';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n\r\nconst EXCEL_EXTENSION = '.xlsx';\r\n\r\n@Component({\r\n selector: 'app-invoice-selection',\r\n templateUrl: './invoice-selection.component.html',\r\n styleUrls: ['./invoice-selection.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class InvoiceSelectionComponent implements OnInit, AfterViewInit, AfterViewChecked {\r\n invoiceData: any;\r\n cols: any[] = [];\r\n sortedCols: any[];\r\n apiResp: any;\r\n defaultWidth: '100%';\r\n viewColHeight: any\r\n selectedCols = [];\r\n userId: any;\r\n userAdmin: boolean = false;\r\n filteredData: any;\r\n filteredFields = [];\r\n tempFilteredData: any;\r\n selectedValues: any[] = [];\r\n bulkEdit = false;\r\n permittedCommodities = [];\r\n rowData: any;\r\n masterAPIResp: any;\r\n pushingPC: any;\r\n userInfo: any;\r\n Arole = 0;\r\n @ViewChild('dtInvoiceSelection', { static: false }) dt: Table;\r\n @ViewChild('e', { static: false }) checkBox: Checkbox;\r\n tableUpdate = false;\r\n apires: any;\r\n @Input() tabtype: any;\r\n @Input() enableMvd: any;\r\n @Input() invoiceDataFromParent: any = [];\r\n @Output() invoiceDetails = new EventEmitter;\r\n status: string;\r\n totalRecords: number = 0\r\n rows = 50\r\n revertselectedValues: any[] = [];\r\n isEditMode: boolean = false;\r\n isEditableData: any;\r\n isEditableField: any;\r\n filterItems: any = [];\r\n\r\n constructor(private _railFleetService: RailFleetService, private router: Router,\r\n private spinner: NgxSpinnerService, private dialog: MatDialog, private _toastr: ToastrService) { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n console.log(\"tabchane child\")\r\n this.invoiceData = JSON.parse(JSON.stringify(this.invoiceDataFromParent))\r\n this.filteredData = JSON.parse(JSON.stringify(this.invoiceData));\r\n this.getRailfleetInvoiceData(this.tabtype)\r\n this.totalRecords = this.invoiceDataFromParent.length\r\n this.loadDataOnScroll({ first: 0, rows: this.rows })\r\n this.clearFilters();\r\n }\r\n\r\n ngOnInit() {\r\n localStorage.removeItem('invoicecolumns');\r\n this.userId = sessionStorage.getItem('userId');\r\n let role = sessionStorage.getItem('role');\r\n if (role != null && role != undefined && role != '') {\r\n if (role.includes('Admin')) {\r\n this.userAdmin = true;\r\n this.Arole = 1;\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n this.spinner.show();\r\n\r\n this.cols = [\r\n { \"header_id\": 1, \"field\": \"status\", \"header\": \"Response\", \"options\": [], \"width\": '75px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 1 },\r\n { \"header_id\": 2, \"field\": \"railcarID\", \"header\": \"Railcar ID\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 2 },\r\n { \"header_id\": 3, \"field\": \"total\", \"header\": \"Total$\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 11 },\r\n { \"header_id\": 5, \"field\": \"tcC_Cost_Center\", \"header\": \"Cost Center\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 5 },\r\n { \"header_id\": 6, \"field\": \"gL_Account_Number\", \"header\": \"GL Account\", \"options\": [], \"width\": '91px', \"isShow\": true, \"isEditable\": true, \"selectedOptions\": [], \"serialNo\": 6 },\r\n { \"header_id\": 8, \"field\": \"mapping_Category\", \"header\": \"Job Code Category\", \"options\": [], \"width\": '200px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 8 },\r\n { \"header_id\": 14, \"field\": \"invoicing_Company\", \"header\": \"Invoicing Company\", \"options\": [], \"width\": '180px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 14 },\r\n { \"header_id\": 18, \"field\": \"off_Hire_Date\", \"header\": \"Off-hire Date\", \"options\": [], \"width\": '270px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 18 },\r\n { \"header_id\": 19, \"field\": \"repairDate\", \"header\": \"Repair Date\", \"options\": [], \"width\": '80px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 19 },\r\n { \"header_id\": 20, \"field\": \"invoice\", \"header\": \"Invoice\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 20 },\r\n { \"header_id\": 21, \"field\": \"allT_Invoice_Ref\", \"header\": \"Reference\", \"options\": [], \"width\": '100px', \"isShow\": true, \"isEditable\": false, \"selectedOptions\": [], \"serialNo\": 21 }\r\n ];\r\n\r\n this.sortedCols = JSON.parse(JSON.stringify(this.cols));\r\n this.sortedCols = this.sortedCols.sort((a, b) => {\r\n return a.header > b.header ? 1 : -1;\r\n });\r\n this.cols.forEach(element => {\r\n this.selectedCols.push(element);\r\n });\r\n\r\n if (this.tabtype == '1') {\r\n let index = this.selectedCols.findIndex(d => d.field === 'status'); //find index in your array\r\n this.selectedCols.splice(index, 1);//remove element from array\r\n }\r\n this.viewColHeight = (window.innerHeight - 190) + \"px\";\r\n this._railFleetService.getUserInfo(this.userId).subscribe(response => {\r\n this.spinner.hide()\r\n this.userInfo = response;\r\n this.getRailfleetInvoiceData(this.tabtype);\r\n })\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n\r\n loading = true\r\n invoiceDataLazy\r\n loadDataOnScroll(event: LazyLoadEvent) {\r\n //this.checkBox.checked = false;\r\n this.loading = true;\r\n setTimeout(() => {\r\n //last chunk\r\n console.log(event, this.totalRecords)\r\n if (event.sortField != null && event.sortField != undefined) {\r\n let fieldName = event.sortField;\r\n let sortOrder = event.sortOrder;\r\n this.invoiceData = this.invoiceData.sort((a, b) => {\r\n let value1 = null;\r\n let value2 = null;\r\n if (fieldName == 'total') {\r\n value1 = Number(a[fieldName]);\r\n value2 = Number(b[fieldName]);\r\n } else if (fieldName == 'cutoff_Date') {\r\n value1 = a[fieldName] != '' ? Date.parse(a[fieldName]) : 0\r\n value2 = b[fieldName] != '' ? Date.parse(b[fieldName]) : 0\r\n }\r\n else {\r\n value1 = a[fieldName];\r\n value2 = b[fieldName];\r\n }\r\n return (sortOrder === 1) ? ((value1 < value2) ? 1 : -1) : ((value1 > value2) ? 1 : -1)\r\n })\r\n }\r\n if (this.filterItems.length) {\r\n //this.runFilter();\r\n } else {\r\n this.totalRecords = this.invoiceData.length;\r\n }\r\n if (event.filters != null && event.filters != undefined && JSON.stringify(event.filters) != '{}')\r\n this.virtualScrollFilter(event.filters)\r\n\r\n if (event.first === this.totalRecords - this.rows)\r\n this.invoiceDataLazy = this.loadChunk(event.first, this.rows);\r\n else\r\n this.invoiceDataLazy = this.loadChunk(event.first, event.rows);\r\n this.loading = false;\r\n }, 250);\r\n }\r\n\r\n loadChunk(index, length): any[] {\r\n let chunk: any[] = [];\r\n for (let i = 0; i < length; i++) {\r\n if (this.invoiceData[index + i])\r\n chunk[i] = { ...this.invoiceData[index + i] }\r\n }\r\n return chunk;\r\n }\r\n customSort(event: SortEvent) {\r\n //event.data = Data to sort\r\n //event.mode = 'single' or 'multiple' sort mode\r\n //event.field = Sort field in single sort\r\n //event.order = Sort order in single sort\r\n //event.multiSortMeta = SortMeta array in multiple sort\r\n\r\n event.data.sort((data1, data2) => {\r\n let value1;\r\n let value2;\r\n if (event.field == 'total') {\r\n value1 = Number(data1[event.field]);\r\n value2 = Number(data2[event.field]);\r\n } else if (event.field == 'cutoff_Date') {\r\n value1 = data1[event.field] != '' ? Date.parse(data1[event.field]) : 0\r\n value2 = data2[event.field] != '' ? Date.parse(data2[event.field]) : 0\r\n }\r\n else {\r\n value1 = data1[event.field];\r\n value2 = data2[event.field];\r\n }\r\n\r\n let result = null;\r\n\r\n if (value1 == null && value2 != null)\r\n result = -1;\r\n else if (value1 != null && value2 == null)\r\n result = 1;\r\n else if (value1 == null && value2 == null)\r\n result = 0;\r\n else if (typeof value1 === 'string' && typeof value2 === 'string')\r\n result = value1.localeCompare(value2);\r\n else\r\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\r\n\r\n return (event.order * result);\r\n });\r\n localStorage.setItem('invoicecolumns', JSON.stringify(this.selectedCols));\r\n }\r\n selectValue = false\r\n virtualSelect(value) {\r\n if (!this.selectValue) {\r\n this.selectedValues = JSON.parse(JSON.stringify(this.invoiceData));\r\n }\r\n else\r\n this.selectedValues = []\r\n }\r\n\r\n filteredItems = [];\r\n\r\n //buildFilterData(col: any) {\r\n // this.loading = true;\r\n // let filterObj = {\r\n // fieldName: col.field,\r\n // value: col.selectedOptions\r\n // };\r\n // this.findFilter(filterObj);\r\n // this.doFilter();\r\n //}\r\n\r\n doFilter(val, field, reset?) {\r\n console.log('s');\r\n console.log(this.cols);\r\n if (reset) {\r\n this.filterItems = [];\r\n } else if (field != \"\") {\r\n let existingFilter = false;\r\n this.filterItems.forEach(fc => {\r\n if (fc.field == field) {\r\n fc.value = val;\r\n existingFilter = true;\r\n }\r\n });\r\n if (!existingFilter) {\r\n this.filterItems.push({\r\n name: this.cols.find(c => c.field == field).header,\r\n field: field,\r\n value: val\r\n });\r\n }\r\n if (val.length == 0) {\r\n this.filterItems = this.filterItems.filter(fcs => fcs.field !== field);\r\n }\r\n }\r\n this.invoiceData = JSON.parse(JSON.stringify(this.invoiceDataFromParent));\r\n if (this.filterItems.length == 0) {\r\n this.updateMultiSelectDD(this.invoiceData, 0);\r\n } else {\r\n this.filterItems.forEach((fc, index) => {\r\n let filteredData = [];\r\n fc.value.forEach(opt => {\r\n if (opt !== null && opt !== \"\") {\r\n filteredData = [...filteredData, ...this.invoiceData.filter(ocd => ocd[fc.field] === opt)];\r\n } else {\r\n filteredData = [...filteredData, ...this.invoiceData.filter(ocd => ocd[fc.field] === null || ocd[fc.field] === \"\")];\r\n }\r\n });\r\n this.invoiceData = JSON.parse(JSON.stringify(filteredData));\r\n this.updateMultiSelectDD(this.invoiceData, index);\r\n });\r\n }\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n }\r\n\r\n //findFilter(filterObj: any) {\r\n // let foundFilter = this.filterItems.find((ft: any) => ft.fieldName === filterObj.fieldName);\r\n // if (foundFilter) {\r\n // this.filterItems = this.filterItems.filter((ft: any) => ft.fieldName !== filterObj.fieldName);\r\n // }\r\n // if (!(filterObj.value.length === 0))\r\n // this.addFilter(filterObj);\r\n //}\r\n\r\n //addFilter(filterObj: any) {\r\n // this.filterItems.push(filterObj);\r\n //}\r\n\r\n //filterByMultiSelect(fieldName: any, value: any) {\r\n // let multiSelectFilter = this.filterItems.find((ft: any) => ft.fieldName === fieldName);\r\n // let multiSelectFilterItem: any = [];\r\n // if (multiSelectFilter.value.length == 0) {\r\n\r\n // }\r\n // multiSelectFilter.value.forEach((v: any) => {\r\n // if (v !== null && v !== \"\") {\r\n // multiSelectFilterItem = [...multiSelectFilterItem, ...this.invoiceData.filter((od: any) => od[fieldName] === v)];\r\n // } else {\r\n // multiSelectFilterItem = [...multiSelectFilterItem, ...this.invoiceData.filter((od: any) => od[fieldName] === null || od[fieldName] === \"\")];\r\n // }\r\n // });\r\n // this.invoiceData = JSON.parse(JSON.stringify(multiSelectFilterItem));\r\n // this.updateMultiSelectDD(this.invoiceData, 0);\r\n // this.totalRecords = this.invoiceData.length;\r\n //}\r\n\r\n updateMultiSelectDD(rowsData, index) {\r\n this.cols.forEach(o => {\r\n const filteredCol = this.filterItems.find(fc => fc.field === o.field);\r\n const filteredColIndex = this.filterItems.indexOf(filteredCol);\r\n if ((filteredColIndex == -1 || filteredColIndex > index)) {\r\n o.options = [];\r\n this.getFilterObject(rowsData, o.field).forEach(filteredobj => {\r\n if (filteredobj == 'Blanks') o.options.push({ label: filteredobj, value: '' });\r\n else o.options.push({ label: filteredobj, value: filteredobj });\r\n });\r\n }\r\n });\r\n\r\n }\r\n\r\n //runFilter = () => {\r\n // this.filterItems.forEach((fi: any) => {\r\n // this.filterByMultiSelect(fi.fieldName, fi.value)\r\n // });\r\n //}\r\n\r\n // doFilter(val, col) {\r\n // let multiSelectFilterItem: any = [];\r\n // val.forEach((v: any) => {\r\n // if(v !== null) {\r\n // multiSelectFilterItem = [...multiSelectFilterItem, ...this.invoiceData.filter((od: any) => od[col.field] === v)];\r\n // } else {\r\n // multiSelectFilterItem = [...multiSelectFilterItem, ...this.invoiceData.filter((od: any) => od[col.field] === null || od[col.field] === \"\")];\r\n // }\r\n // });\r\n // this.invoiceDataLazy = JSON.parse(JSON.stringify(multiSelectFilterItem));\r\n // localStorage.setItem('invoicecolumns', JSON.stringify(this.selectedCols));\r\n\r\n // // this.invoiceData = JSON.parse(JSON.stringify(this.invoiceDataFromParent))\r\n // if (val.length == 0) {\r\n // this.totalRecords = this.invoiceData.length\r\n // this.loadDataOnScroll({ first: 0, rows: this.rows })\r\n // }\r\n // }\r\n\r\n //doFilter() {\r\n // this.invoiceData = JSON.parse(JSON.stringify(this.invoiceDataFromParent));\r\n // this.invoiceDataLazy = Array.from({ length: this.invoiceData.length });\r\n // this.loadDataOnScroll({ first: 0, rows: this.rows })\r\n //}\r\n\r\n virtualScrollFilter(filters) {\r\n\r\n this.filteredItems = []\r\n let data: any = []\r\n let searchArray = this.invoiceData\r\n console.log('virtualScrollFilter', searchArray, filters);\r\n for (var key in filters) {\r\n filters[key].value.forEach(element => {\r\n let dummyFilterData = searchArray.filter(x => typeof x[key] === 'number' ? x[key] === element : x[key].includes(element))\r\n dummyFilterData.forEach(ele => {\r\n if (!data.includes(ele))\r\n data.push(ele)\r\n });\r\n\r\n });\r\n let arr1 = searchArray.filter(e => {\r\n return data.some(item => item == e)\r\n })\r\n searchArray = arr1\r\n data = []\r\n }\r\n this.invoiceData = searchArray\r\n this.totalRecords = this.invoiceData.length\r\n }\r\n\r\n clearFilters() {\r\n this.filterItems = [];\r\n this.selectedCols = this.cols;\r\n if (this.tabtype == '1') {\r\n this.selectedCols = this.cols.filter(d => d.field !== 'status'); //find index in your array\r\n }\r\n this.selectedCols.forEach(col => {\r\n col.selectedOptions = [];\r\n });\r\n this.doFilter([],\"\");\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let selectedVal = [];\r\n if (this.dt) {\r\n if (localStorage.getItem('invoicecolumns')) {\r\n this.selectedCols = JSON.parse(localStorage.getItem('invoicecolumns'));\r\n this.cols.forEach(element => {\r\n this.selectedCols.forEach(elm => {\r\n if (element.field === elm.field) {\r\n if (elm.selectedOptions.length != 0) {\r\n element.selectedOptions = elm.selectedOptions;\r\n selectedVal.push(element);\r\n } else {\r\n selectedVal.push(element);\r\n }\r\n\r\n }\r\n\r\n });\r\n });\r\n this.selectedCols = selectedVal;\r\n };\r\n }\r\n }\r\n ngAfterViewChecked(): void {\r\n let selectedVals = [];\r\n if (this.dt && this.tableUpdate) {\r\n this.tableUpdate = false;\r\n if (localStorage.getItem('invoicecolumns')) {\r\n this.selectedCols = JSON.parse(localStorage.getItem('invoicecolumns'));\r\n this.cols.forEach(element => {\r\n this.selectedCols.forEach(elm => {\r\n if (element.field === elm.field) {\r\n selectedVals.push(element);\r\n }\r\n\r\n });\r\n });\r\n this.selectedCols = selectedVals;\r\n };\r\n }\r\n }\r\n onChangeDDValue(value) {\r\n this.sortColumns();\r\n }\r\n\r\n showHideData(e) {\r\n this.cols = e;\r\n }\r\n\r\n sortColumns() {\r\n this.selectedCols = this.selectedCols.sort((a, b) => {\r\n return a.serialNo - b.serialNo;\r\n })\r\n\r\n }\r\n\r\n getRailfleetInvoiceData(tabtype) {\r\n\r\n this.invoiceData = JSON.parse(JSON.stringify(this.invoiceDataFromParent));\r\n this.filteredData = JSON.parse(JSON.stringify(this.invoiceData));\r\n\r\n this.cols.forEach(o => {\r\n o.selectedOptions = [];\r\n const selectedOptions = [];\r\n if (o.field === 'total') {\r\n o.options = [];\r\n } else {\r\n o.options = [];\r\n //o.options = [{ label: 'Blanks', value: null }];\r\n }\r\n this.getFilterObject(this.invoiceData, o.field).forEach(filteredobj => {\r\n if (!!o.selectedOptions && o.selectedOptions.length > 0 && o.selectedOptions.includes(filteredobj)) {\r\n selectedOptions.push(filteredobj)\r\n }\r\n if (filteredobj == 'Blanks')\r\n o.options.push({ label: filteredobj, value: '' });\r\n else\r\n o.options.push({ label: filteredobj, value: filteredobj });\r\n //o.options.push({ label: filteredobj, value: filteredobj })\r\n });\r\n if (o.field === 'total') {\r\n o.options = o.options.sort((a, b) => {\r\n return ((Number(a.value) < Number(b.value)) ? -1 : 1)\r\n });\r\n //o.options.unshift({ label: 'Blanks', value: null });\r\n }\r\n o.selectedOptions = selectedOptions;\r\n });\r\n\r\n }\r\n bulkStatusChange(action: string) {\r\n // this.confirmationService.confirm({\r\n // message: 'Are you sure that you want to delete this Account?',\r\n // accept: () => {\r\n // console.log('accept')\r\n // // this.service.deleteAcccountDetails(this.accountDetailsObj).subscribe(res=>{\r\n // // this.service.displayToastr(res);\r\n // // this.getAllAccountDetails();\r\n // // this.onClose();\r\n // // },error=>{\r\n // // this.service.displayToastr(error);\r\n // // });\r\n // }\r\n // });\r\n let dialogref = this.dialog.open(DialogpopupComponent, { data: { message: 'Are you sure that you want to proceed?', title: action + ' Confirmation' } })\r\n dialogref.afterClosed().subscribe(res => {\r\n if (res) {\r\n const payload = [];\r\n\r\n if (action == 'Revert') {\r\n this.status = null;\r\n }\r\n else {\r\n this.status = action;\r\n }\r\n this.selectedValues.forEach(invoice => {\r\n\r\n const railFleetinvoice = {\r\n InvoiceID: invoice.invoiceID,\r\n RailcarID: invoice.railcarID,\r\n Carstatus: invoice.carstatus,\r\n Owner: invoice.owner,\r\n TCC_Cost_Center: invoice.tcC_Cost_Center,\r\n GL_Account_Number: invoice.gL_Account_Number,\r\n GL_Account_Name: invoice.gL_Account_Name,\r\n Mapping_Category: invoice.mapping_Category,\r\n Component_Group: invoice.component_Group,\r\n Narrative: invoice.narrative,\r\n Total: invoice.total,\r\n Labor_Cost: invoice.labor_Cost,\r\n Material_Cost: invoice.material_Cost,\r\n Invoicing_Company: invoice.invoicing_Company,\r\n BU: invoice.bu,\r\n // permittedCommodities: railCar.permittedCommodities,\r\n Car_Type: invoice.car_Type,\r\n Age_of_Car: invoice.age_of_Car,\r\n Fleet: invoice.fleet,\r\n ALLT_Invoice_Ref: invoice.allT_Invoice_Ref,\r\n Cutoff_Date: invoice.cutoff_Date,\r\n Status: this.status,\r\n ModifiedBy: this.userId,\r\n RepairDate: invoice.repairDate,\r\n Invoice: invoice.invoice\r\n };\r\n payload.push(railFleetinvoice);\r\n });\r\n console.log(payload)\r\n this._railFleetService.reviewInvoiceDetails(payload).subscribe(response => {\r\n this._toastr.success('Updated Successfully', 'Success!');\r\n this.checkBox.checked = false;\r\n console.log(this.tabtype)\r\n this.selectedValues = []\r\n this.getRailfleetInvoiceData(this.tabtype)\r\n this.invoiceDetails.emit(true)\r\n this.spinner.hide();\r\n this.clearFilters();\r\n });\r\n }\r\n });\r\n\r\n\r\n\r\n }\r\n sendToMVD() {\r\n let dialogref = this.dialog.open(DialogpopupComponent, { data: { message: 'Are you sure that you want to proceed? This action will remove all the invoices', title: 'Send report to MVD Account team.' } })\r\n dialogref.afterClosed().subscribe(res => {\r\n if (res) {\r\n\r\n this._railFleetService.updateMvdAccountUsers(this.userId).subscribe(response => {\r\n this._toastr.success('Sent Successfully', 'Success!');\r\n this.invoiceData = [];\r\n this.getRailfleetInvoiceData(this.tabtype)\r\n this.spinner.hide();\r\n\r\n });\r\n }\r\n })\r\n }\r\n //getFilterObject(fullObj, key) {\r\n // const uniqChk = [];\r\n // fullObj.filter((obj) => {\r\n // if (!uniqChk.includes(obj[key])) {\r\n // if (obj[key] !== null && obj[key] !== '')\r\n // uniqChk.push(obj[key]);\r\n // }\r\n // return obj;\r\n // });\r\n // uniqChk.sort();\r\n // return uniqChk;\r\n //}\r\n getFilterObject(fullObj, key) {\r\n const uniqChk = [];\r\n let blanks = false;\r\n fullObj.filter((obj) => {\r\n if (!uniqChk.includes(obj[key])) {\r\n if (obj[key] !== null && obj[key] !== '')\r\n uniqChk.push(obj[key]);\r\n else if (!uniqChk.includes('Blanks')) {\r\n blanks = true;\r\n }\r\n }\r\n return obj;\r\n });\r\n if (blanks) uniqChk.unshift('Blanks');\r\n return uniqChk;\r\n }\r\n onnSelectRow(rowData, type) {\r\n this.router.navigate(['rail-car/info'], { state: { data: { cols: this.cols, rowData: rowData, selectionType: type } } });\r\n }\r\n filterData(value, filter) {\r\n if (value == '') {\r\n if (this.filteredFields.length) {\r\n this.filteredFields = this.filteredFields.filter(ff => ff.fieldName !== filter);\r\n } else {\r\n this.filteredFields = [];\r\n }\r\n } else {\r\n let foundField = this.filteredFields.filter(ff => ff.fieldName == filter);\r\n if (foundField.length) {\r\n this.filteredFields.forEach(ff => {\r\n if (ff.fieldName == filter) {\r\n ff.value = value;\r\n }\r\n })\r\n } else {\r\n let fieldObj = {\r\n fieldName: filter,\r\n value: value\r\n };\r\n this.filteredFields.push(fieldObj);\r\n }\r\n }\r\n if (this.filteredFields.length) {\r\n let temp = this.invoiceData;\r\n this.filteredFields.forEach(ff => {\r\n temp = temp.filter(fd => fd[ff.fieldName].toUpperCase().includes(ff.value.toUpperCase()));\r\n })\r\n this.filteredData = temp;\r\n } else {\r\n this.filteredData = JSON.parse(JSON.stringify(this.invoiceData));\r\n }\r\n this.tempFilteredData = JSON.parse(JSON.stringify(this.filteredData));\r\n }\r\n\r\n showAllSpecsDetails(element: any) {\r\n this._railFleetService.emailAllSpecs(element.railcarID).subscribe((res: any) => {\r\n this.apires = res;\r\n const blob = this.b64toBlob(this.apires, 'application/pdf');\r\n const blobUrl = URL.createObjectURL(blob);\r\n window.open(blobUrl, '_blank');\r\n })\r\n }\r\n b64toBlob = (b64Data, contentType = '', sliceSize = 512) => {\r\n const byteCharacters = atob(b64Data);\r\n const byteArrays = [];\r\n\r\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\r\n const slice = byteCharacters.slice(offset, offset + sliceSize);\r\n\r\n const byteNumbers = new Array(slice.length);\r\n for (let i = 0; i < slice.length; i++) {\r\n byteNumbers[i] = slice.charCodeAt(i);\r\n }\r\n\r\n const byteArray = new Uint8Array(byteNumbers);\r\n byteArrays.push(byteArray);\r\n }\r\n\r\n const blob = new Blob(byteArrays, { type: contentType });\r\n return blob;\r\n }\r\n\r\n exportExcel() {\r\n let data = this.invoiceData;\r\n let tFilteredData = JSON.parse(JSON.stringify(data));\r\n this.exportAsExcelFile(tFilteredData, 'RailFleetInvoice', 'sheet1', this.selectedCols)\r\n }\r\n exportAsExcelFile(json: any[], excelFileName: string, sheetName: string, columnValues: any[]): void {\r\n var fieldValues: any[] = columnValues.map(field => field.field);\r\n var headerValues: string[] = columnValues.map(header => header.header);\r\n var displayedJson: any[] = [];\r\n if (json != null && json.length > 0) {\r\n for (let originalValue of json) {\r\n var jsonObject: any = {};\r\n for (let fieldValue of fieldValues) {\r\n jsonObject[fieldValue] = originalValue[fieldValue];\r\n }\r\n var jsonString = JSON.stringify(jsonObject);\r\n displayedJson.push(JSON.parse(jsonString));\r\n }\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(displayedJson);\r\n var range = XLSX.utils.decode_range(worksheet['!ref']);\r\n for (var C = range.s.c; C <= range.e.c; ++C) {\r\n var address = XLSX.utils.encode_col(C) + \"1\"; // <-- first row, column number C\r\n if (!worksheet[address]) continue;\r\n worksheet[address] = {\r\n v: headerValues[C],\r\n t: 's',\r\n s: {\r\n alignment: { textRotation: 90 },\r\n font: { bold: true }\r\n }\r\n };\r\n }\r\n XLSX.utils.sheet_add_aoa(worksheet, [[]], { origin: -1 });\r\n const workbook: XLSX.WorkBook = { Sheets: { [sheetName]: worksheet }, SheetNames: [sheetName] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n FileSaver.saveAs(data, fileName + EXCEL_EXTENSION);\r\n }\r\n editBulk() {\r\n this.bulkEdit = true;\r\n }\r\n reset() {\r\n this.invoiceData = JSON.parse(JSON.stringify(this.invoiceDataFromParent))\r\n this.totalRecords = this.invoiceData.length\r\n console.log(\"rest\")\r\n this.filteredItems = []\r\n if (localStorage.getItem('invoicecolumns')) {\r\n this.selectedCols = this.cols\r\n if (this.tabtype == '1') {\r\n let index = this.selectedCols.findIndex(d => d.field === 'status'); //find index in your array\r\n this.selectedCols.splice(index, 1);//remove element from array\r\n }\r\n this.selectedCols.forEach(col => {\r\n col.selectedOptions = [];\r\n });\r\n }\r\n this.doFilter([], '', true);\r\n this.updateMultiSelectDD(this.invoiceData, 0);\r\n localStorage.removeItem('invoicecolumns');\r\n }\r\n bulkEditStatus(status) {\r\n this.selectedCols = [];\r\n this.cols.forEach(element => {\r\n // if(element.field!='hazardClass' && element.field!='packingGroup')\r\n this.selectedCols.push(element);\r\n });\r\n\r\n if (this.tabtype == '1') {\r\n let index = this.selectedCols.findIndex(d => d.field === 'status'); //find index in your array\r\n this.selectedCols.splice(index, 1);//remove element from array\r\n }\r\n this.bulkEdit = status;\r\n if (!this.bulkEdit) {\r\n this.tableUpdate = true;\r\n }\r\n this.getRailfleetInvoiceData(this.tabtype);\r\n this.selectedValues = [];\r\n }\r\n\r\n openEditMode(rData, fieldName) {\r\n let fSelectedRow = this.selectedValues.find(sv1 => sv1.invoiceID === rData.invoiceID);\r\n if (fSelectedRow) {\r\n this.isEditableData = rData;\r\n this.isEditableField = fieldName;\r\n this.isEditMode = true;\r\n }\r\n }\r\n\r\n checkTheKey(e) {\r\n console.log(e);\r\n if (e.keyCode === 27) {\r\n this.isEditableData = null;\r\n this.isEditableField = '';\r\n this.isEditMode = false;\r\n }\r\n }\r\n\r\n updateSelectedRows(keyCode, value, fieldName) {\r\n this.selectedValues.forEach(sv => {\r\n this.invoiceDataLazy.map(rd => {\r\n if (rd.invoiceID === sv.invoiceID) {\r\n rd[fieldName] = value;\r\n sv[fieldName] = value;\r\n }\r\n })\r\n });\r\n this.updateBulkInvoiceDetails();\r\n this.isEditableData = null;\r\n this.isEditableField = '';\r\n this.isEditMode = false;\r\n }\r\n\r\n updateBulkInvoiceDetails() {\r\n this.spinner.show();\r\n const payload = [];\r\n this.selectedValues.forEach(invoice => {\r\n const railFleetClass = {\r\n InvoiceID: invoice.invoiceID,\r\n RailcarID: invoice.railcarID,\r\n Carstatus: invoice.carstatus,\r\n Owner: invoice.owner,\r\n TCC_Cost_Center: invoice.tcC_Cost_Center,\r\n GL_Account_Number: invoice.gL_Account_Number,\r\n GL_Account_Name: invoice.gL_Account_Name,\r\n Mapping_Category: invoice.mapping_Category,\r\n Component_Group: invoice.component_Group,\r\n Narrative: invoice.narrative,\r\n Total: invoice.total,\r\n Labor_Cost: invoice.labor_Cost,\r\n Material_Cost: invoice.material_Cost,\r\n Invoicing_Company: invoice.invoicing_Company,\r\n BU: invoice.bu,\r\n Car_Type: invoice.car_Type,\r\n Age_of_Car: invoice.age_of_Car,\r\n Fleet: invoice.fleet,\r\n ALLT_Invoice_Ref: invoice.allT_Invoice_Ref,\r\n Cutoff_Date: invoice.cutoff_Date,\r\n Status: invoice.status,\r\n ModifiedBy: this.userId,\r\n RepairDate: invoice.repairDate,\r\n Invoice: invoice.invoice\r\n };\r\n payload.push(railFleetClass);\r\n });\r\n this._railFleetService.reviewInvoiceDetails(payload).subscribe(response => {\r\n this._toastr.info('Data Saved', 'Success!');\r\n this.invoiceDetails.emit(true);\r\n this.clearFilters();\r\n this.spinner.hide();\r\n });\r\n }\r\n}\r\n","export default \".header-label {\\r\\n font-size: 20px;\\r\\n font-weight: 600;\\r\\n}\\r\\n.header-label-right {\\r\\n font-size: 16px;\\r\\n font-weight: 600;\\r\\n}\\r\\n.header-invoice-label\\r\\n{\\r\\n font-size: 12px;\\r\\n font-weight: 400;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9pbnZvaWNlLXRvdGFsL2ludm9pY2UtdG90YWwuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLGVBQWU7SUFDZixnQkFBZ0I7QUFDcEI7QUFDQTtJQUNJLGVBQWU7SUFDZixnQkFBZ0I7QUFDcEI7QUFDQTs7SUFFSSxlQUFlO0lBQ2YsZ0JBQWdCO0FBQ3BCIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9pbnZvaWNlLXRvdGFsL2ludm9pY2UtdG90YWwuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5oZWFkZXItbGFiZWwge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG4uaGVhZGVyLWxhYmVsLXJpZ2h0IHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLmhlYWRlci1pbnZvaWNlLWxhYmVsXHJcbntcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbn0iXX0= */\"","import { Component, Input, OnChanges } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-invoice-total',\r\n templateUrl: './invoice-total.component.html',\r\n styleUrls: ['./invoice-total.component.css']\r\n})\r\nexport class InvoiceTotalComponent implements OnChanges {\r\n\r\n @Input() nonActioned: any = []\r\n @Input() actioned: any = []\r\n @Input() autoApproved: any = []\r\n invoiceDetails = {}\r\n constructor() { }\r\n\r\n ngOnChanges(): void {\r\n //console.log(\"find total\", this.nonActioned, this.actioned)\r\n this.findTotal()\r\n }\r\n\r\n findTotal() {\r\n let data: any = {}\r\n if (this.nonActioned[0])\r\n data.id = this.nonActioned[0].allT_Invoice_Ref\r\n else if (this.actioned[0])\r\n data.id = this.actioned[0].allT_Invoice_Ref\r\n else if (this.autoApproved[0])\r\n data.id = this.autoApproved [0].allT_Invoice_Ref\r\n \r\n data.sum = +(\r\n this.nonActioned.reduce((a, b) => +(a + parseFloat(b.total)).toFixed(2), 0) +\r\n this.actioned.filter(x => x.status == 'Accept').reduce((a, b) => +(a + parseFloat(b.total)).toFixed(2), 0)\r\n + this.autoApproved.reduce((a, b) => +(a + parseFloat(b.total)).toFixed(2), 0)\r\n ).toFixed(2)\r\n this.invoiceDetails = data\r\n }\r\n}","export default \".empty {\\r\\n text-align: center;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9sb2dpbi10ZXN0L2xvZ2luLXRlc3QuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLGtCQUFrQjtBQUN0QiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbG9naW4tdGVzdC9sb2dpbi10ZXN0LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuZW1wdHkge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59Il19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\nimport { AuthenticationServiceService } from '../../../services/authentication-service.service';\r\n@Component({\r\n selector: 'app-login-test',\r\n templateUrl: './login-test.component.html',\r\n styleUrls: ['./login-test.component.css']\r\n})\r\nexport class LoginTestComponent implements OnInit {\r\n\r\n user: any;\r\n usersData: any;\r\n userId:any;\r\n tokenInfo:any;\r\n loginAudiInfo:any;\r\n userInfo: any;\r\n constructor(private router: Router, private spinner: NgxSpinnerService,private _authservice: AuthenticationServiceService, private _service: RailFleetService) { \r\n }\r\n\r\n ngOnInit() {\r\n this.spinner.show();\r\n this._service.getUserInfo('All').subscribe(response => {\r\n this.usersData = response;\r\n this.spinner.hide();\r\n }); \r\n }\r\n\r\n loginbtn() {\r\n sessionStorage.setItem('userId', this.user);\r\n \r\n this.userId = sessionStorage.getItem('userId');\r\n this.verifyUserAuthorization(this.userId);\r\n \r\n this._authservice.getToken(this.userId).subscribe(response => {\r\n this.tokenInfo=response;\r\n sessionStorage.setItem('email', this.userInfo.email);\r\n\r\n localStorage.setItem('TokenInfo', JSON.stringify(this.tokenInfo));\r\n });;\r\n }\r\n verifyUserAuthorization(userId) {\r\n this._service.getUserInfo(userId).subscribe(response => {\r\n this.userInfo = response;\r\n if(this.userInfo.length!=0)\r\n {\r\n if (this.userInfo[0].roleName.includes('Admin')) {\r\n sessionStorage.setItem('role', 'Admin');\r\n }\r\n this.spinner.hide();\r\n this._service.setNavmenustatus(true);\r\n this.router.navigate(['/home']); \r\n }else{\r\n this._service.setNavmenustatus(false);\r\n } \r\n })\r\n }\r\n\r\n}\r\n","export default \".empty {\\r\\n text-align: center;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksa0JBQWtCO0FBQ3RCIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmVtcHR5IHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufSJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { RequestAccessComponent } from 'src/app/common/request-access/request-access.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.css']\r\n})\r\nexport class LoginComponent implements OnInit {\r\n\r\n decryptedUser: any;\r\n encryptedUser: any;\r\n department: any;\r\n apiResp: any;\r\n userNotFound = false;\r\n userInfo: any;\r\n firstName: any;\r\n lastName: any;\r\n email: any;\r\n dataSource = new MatTableDataSource();\r\n apires:any;\r\n pending=false;\r\n constructor(private spinner: NgxSpinnerService,private matdialog: MatDialog, private toast: ToastrService, private route: ActivatedRoute, private router: Router, private _service: RailFleetService) { }\r\n\r\n ngOnInit() {\r\n this.spinner.show();\r\n this.decryptedUser = sessionStorage.getItem('userId'); \r\n this.route.queryParams.subscribe(params => {\r\n this.encryptedUser = params['Username'];\r\n if (this.decryptedUser == \"undefined\" || this.decryptedUser == undefined || this.decryptedUser == null || this.decryptedUser == \"null\" || this.decryptedUser == \"\" || this.decryptedUser != sessionStorage.getItem('userId')) {\r\n if (this.encryptedUser == \"undefined\" || this.encryptedUser == undefined || this.encryptedUser == null || this.encryptedUser == \"null\" || this.encryptedUser == \"\") {\r\n this.SAMLService();\r\n } else {\r\n let reqData = {\r\n username: params['Username'], \r\n firstname: params['firstname'],\r\n lastname:params['lastname'],\r\n email: params['email']\r\n } \r\n this._service.getDecryptedUserDetails(reqData).subscribe(response => {\r\n this.apiResp = response;\r\n sessionStorage.setItem('userId',this.apiResp.username);\r\n sessionStorage.setItem('firstname',this.apiResp.firstname);\r\n sessionStorage.setItem('lastname',this.apiResp.lastname);\r\n sessionStorage.setItem('email',this.apiResp.email);\r\n this.verifyUserAuthorization(this.apiResp.username); \r\n }, \r\n (error) => {\r\n this.toast.error(error, \"Error!\");\r\n this.spinner.hide();\r\n }); \r\n }\r\n } else {\r\n this.verifyUserAuthorization(this.decryptedUser);\r\n }\r\n \r\n });\r\n}\r\n verifyUserAuthorization(userID) {\r\n this._service.getUserInfo(userID).subscribe(response => {\r\n this.userInfo = response;\r\n if(this.userInfo.length!=0)\r\n {\r\n if (this.userInfo[0].roleName.includes('Admin')) {\r\n sessionStorage.setItem('role', 'Admin');\r\n }\r\n this.spinner.hide();\r\n this._service.setNavmenustatus(true);\r\n this.router.navigate(['/home']); \r\n }else{\r\n this.userNotFound = true;\r\n this._service.setNavmenustatus(false);\r\n } \r\n })\r\n }\r\n\r\n SAMLService() {\r\n this.spinner.show();\r\n this._service.getSAMLService().subscribe((result) => {\r\n this.spinner.hide();\r\n window.location.href = result.toString();\r\n },\r\n (error) => {\r\n this.toast.error(error, \"Error!\");\r\n this.spinner.hide();\r\n });\r\n } \r\n onAddUser() {\r\n this._service.getUsers(sessionStorage.getItem('userId')).subscribe(response=>{\r\n this.userInfo=response;\r\n if(this.userInfo.length!=0)\r\n {\r\n if (this.userInfo[0].email.includes(sessionStorage.getItem('email'))) {\r\n this.pending=true;\r\n const acPayLoad = {\r\n userID: 0,\r\n basfUserID: sessionStorage.getItem('userId'),\r\n firstName: sessionStorage.getItem('firstname'),\r\n lastName: sessionStorage.getItem('lastname'),\r\n roleID: 2,\r\n Email: sessionStorage.getItem('email'),\r\n buID: 2,\r\n actionBy:sessionStorage.getItem('userId'),\r\n action: \"Request\"\r\n }\r\n this._service.mailRequest(acPayLoad).subscribe(res => { });\r\n } \r\n }else{\r\n this.pending=false;\r\n var dialogref = this.matdialog.open(RequestAccessComponent, { data: { isModify: false,\r\n basfUserID:sessionStorage.getItem('userId'),firstName:sessionStorage.getItem('firstname'),\r\n lastName:sessionStorage.getItem('lastname'),\r\n email:sessionStorage.getItem('email')} });\r\n dialogref.afterClosed().subscribe(res => {\r\n });\r\n } \r\n })\r\n \r\n }\r\n\r\n}","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvbG9nb3V0L2xvZ291dC5jb21wb25lbnQuY3NzIn0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-logout',\r\n templateUrl: './logout.component.html',\r\n styleUrls: ['./logout.component.css']\r\n})\r\nexport class LogoutComponent implements OnInit {\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnInit() {\r\n sessionStorage.setItem('userId','');\r\n sessionStorage.setItem('role', '');\r\n //this.router.navigate(['/login']);\r\n }\r\n\r\n navigateToLogin() {\r\n this.router.navigate(['/login']);\r\n }\r\n\r\n}\r\n","export default \":host ::ng-deep .ui-table-scrollable-header-box {\\r\\n /* overflow: hidden; */\\r\\n}\\r\\n:host ::ng-deep .ui-table {\\r\\n margin: 0 50px;\\r\\n}\\r\\nh2 {\\r\\n text-align: center;\\r\\n}\\r\\n/* :host ::ng-deep .ui-table-scrollable-header, .ui-table-scrollable-footer {\\r\\n overflow: unset;\\r\\n border: 0 none;\\r\\n} */\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9vdmVydmlldy9vdmVydmlldy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksc0JBQXNCO0FBQzFCO0FBQ0E7SUFDSSxjQUFjO0FBQ2xCO0FBQ0E7SUFDSSxrQkFBa0I7QUFDdEI7QUFFQTs7O0dBR0ciLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL292ZXJ2aWV3L292ZXJ2aWV3LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyI6aG9zdCA6Om5nLWRlZXAgLnVpLXRhYmxlLXNjcm9sbGFibGUtaGVhZGVyLWJveCB7XHJcbiAgICAvKiBvdmVyZmxvdzogaGlkZGVuOyAqL1xyXG59XHJcbjpob3N0IDo6bmctZGVlcCAudWktdGFibGUge1xyXG4gICAgbWFyZ2luOiAwIDUwcHg7XHJcbn1cclxuaDIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4vKiA6aG9zdCA6Om5nLWRlZXAgLnVpLXRhYmxlLXNjcm9sbGFibGUtaGVhZGVyLCAudWktdGFibGUtc2Nyb2xsYWJsZS1mb290ZXIge1xyXG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xyXG4gICAgYm9yZGVyOiAwIG5vbmU7XHJcbn0gKi9cclxuIl19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-overview',\r\n templateUrl: './overview.component.html',\r\n styleUrls: ['./overview.component.css']\r\n})\r\nexport class OverviewComponent implements OnInit {\r\n\r\n nextRegYrData: any;\r\n years = [];\r\n owners = [];\r\n expirations = [];\r\n allBuOptions = [];\r\n ownerData: any;\r\n expirtationData: any;\r\n role:any;\r\n userNotFound=false;\r\n constructor(private railFleetService: RailFleetService) { }\r\n\r\n ngOnInit() {\r\n //this.fleetVsYear();\r\n this.role=sessionStorage.getItem('role');\r\n if(!(this.role!='Admin'))\r\n {\r\n this.fleetVsOwner();\r\n this.fleetVsExpiration();\r\n }else{\r\n this.userNotFound=true;\r\n this.railFleetService.setNavmenustatus(false);\r\n }\r\n \r\n \r\n }\r\n\r\n fleetVsYear() {\r\n this.railFleetService.GetFleetVsNextRegYr().subscribe((val: any) => {\r\n this.nextRegYrData = val;\r\n // adding fleet name\r\n val.table2.forEach(yr => {\r\n const year = {fleet: yr.fleet};\r\n this.years.push(year);\r\n });\r\n // adding years as property\r\n val.table1.forEach(data => {\r\n this.years.forEach(yr => {\r\n yr[data.nextRegYr] = null;\r\n });\r\n });\r\n \r\n val.table.forEach(data => {\r\n const value = this.years.find(yr => yr.fleet === data.fleet);\r\n if(value) {\r\n value.bu = data.bu;\r\n value[data.nextRegYr] = data.column1;\r\n }\r\n });\r\n })\r\n }\r\n\r\n fleetVsOwner() {\r\n this.railFleetService.GetFleetVsOwner().subscribe((val: any) => {\r\n this.ownerData = val;\r\n // adding fleet name\r\n val.table2.forEach(ow => {\r\n const owner = {fleet: ow.fleet};\r\n this.owners.push(owner);\r\n });\r\n // adding years as property\r\n val.table1.forEach(data => {\r\n this.owners.forEach(ow => {\r\n ow[data.owner] = null;\r\n });\r\n });\r\n \r\n val.table.forEach(data => {\r\n const value = this.owners.find(ow => ow.fleet === data.fleet);\r\n \r\n if(value) {\r\n value.bu = data.bu;\r\n value[data.owner] = data.column1;\r\n const found = this.allBuOptions.findIndex(val => val.value === data.bu);\r\n found === -1 && this.allBuOptions.push({ label: data.bu, value: data.bu })\r\n }\r\n });\r\n })\r\n }\r\n fleetVsExpiration() {\r\n this.railFleetService.GetFleetVsExpiration().subscribe((val: any) => {\r\n this.expirtationData = val;\r\n // adding fleet name\r\n val.table2.forEach(ex => {\r\n const expiration = {fleet: ex.fleet};\r\n this.expirations.push(expiration);\r\n });\r\n // adding years as property\r\n val.table1.forEach(data => {\r\n this.expirations.forEach(ex => {\r\n ex[data.expiration] = null;\r\n });\r\n });\r\n \r\n val.table.forEach(data => {\r\n const value = this.expirations.find(ex => ex.fleet === data.fleet);\r\n if(value) {\r\n value.bu = data.bu;\r\n value[data.expiration] = data.column1;\r\n }\r\n });\r\n })\r\n }\r\n\r\n}\r\n","export default \"body .ui-table .ui-table-thead>tr>th {\\r\\n background-color: white;\\r\\n color:#004890;\\r\\n font-size: 14px;\\r\\n font-weight: 600;\\r\\n padding: 3px;\\r\\n text-align: center;\\r\\n border: 1px solid #e1f0ff;\\r\\n min-width: 100px !important;\\r\\n}\\r\\n\\r\\nbody .ui-table .ui-table-thead>tr>th>div {\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n}\\r\\n\\r\\nbody .ui-table .ui-table-tbody>tr>td {\\r\\n font-size: 14px;\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n padding: 0 4px;\\r\\n color: black;\\r\\n font-weight: 500;\\r\\n border: 1px solid #e1f0ff;\\r\\n text-overflow: ellipsis;\\r\\n vertical-align: top !important;\\r\\n}\\r\\n\\r\\n.accordion-img-icon {\\r\\n margin-right: 6px;\\r\\n margin-bottom: 2px;\\r\\n margin-top: 2px;\\r\\n margin-left: 2px;\\r\\n height: 20px;\\r\\n width: 20px;\\r\\n}\\r\\n\\r\\n.pointer-cursor {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n#railCarTable .edit-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n right: 0px !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-paginator {\\r\\n margin-top: 5px !important;\\r\\n background-color: white !important;\\r\\n border: none !important;\\r\\n float: right !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {\\r\\n background-color: #004890 !important;\\r\\n color: white !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-multiselect .ui-multiselect-panel .ui-multiselect-items {\\r\\n left: -292px !important;\\r\\n right: 0px !important;\\r\\n float: left;\\r\\n width: 150px;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-multiselect-panel .ui-multiselect-items .ui-multiselect-item.ui-state-highlight {\\r\\n color: black !important;\\r\\n background-color: white !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-chkbox .ui-chkbox-box.ui-state-active {\\r\\n border-color: #004890 !important;\\r\\n background-color: #004890 !important;\\r\\n color: #ffffff !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table table {\\r\\n width: -webkit-fit-content !important;\\r\\n width: -moz-fit-content !important;\\r\\n width: fit-content !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table {\\r\\n max-height: 700px !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-header, .ui-table-scrollable-footer {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n background-color: white;\\r\\n z-index: 9999;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-header-box {\\r\\n margin-right: 60px !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-body {\\r\\n max-height: calc(100vh - 280px) !important;\\r\\n}\\r\\n\\r\\n#railCarTable .excelIcon {\\r\\n font-size: 1.5em;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n color: white;\\r\\n border-radius: 5px;\\r\\n padding: 6px;\\r\\n margin-left: 10px;\\r\\n top: -7px;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 1000px) {\\r\\n #railCarTable .ui-table-scrollable-body {\\r\\n max-height: calc(100vh - 370px) !important;\\r\\n }\\r\\n .cf {\\r\\n margin-top:140px !important;\\r\\n }\\r\\n }\\r\\n\\r\\n@media screen and (min-width: 1052px) {\\r\\n #railCarTable .ui-table-scrollable-body {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n }\\r\\n .cf {\\r\\n margin-top:110px !important;\\r\\n }\\r\\n }\\r\\n\\r\\n@media screen and (min-width: 1407px) {\\r\\n #railCarTable .ui-table-scrollable-body {\\r\\n max-height: calc(100vh - 300px) !important;\\r\\n }\\r\\n .cf {\\r\\n margin-top:80px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 320px) and (max-width: 768px) {\\r\\n #railCarTable .ui-multiselect .ui-multiselect-panel {\\r\\n left: 0px !important;\\r\\n right: 0px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n.comments-width {\\r\\n width: 250px;\\r\\n}\\r\\n\\r\\ntable tr.ui-state-highlight {\\r\\n background-color: white;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9yYWlsLWNhci1pbmZvLWVkaXQvcmFpbC1jYXItaW5mby1lZGl0LmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSx1QkFBdUI7SUFDdkIsYUFBYTtJQUNiLGVBQWU7SUFDZixnQkFBZ0I7SUFDaEIsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQix5QkFBeUI7SUFDekIsMkJBQTJCO0FBQy9COztBQUVBO0lBQ0kscUJBQXFCO0lBQ3JCLG1CQUFtQjtJQUNuQixnQkFBZ0I7SUFDaEIsdUJBQXVCO0FBQzNCOztBQUNBO0lBQ0ksZUFBZTtJQUNmLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsOEJBQThCO0FBQ2xDOztBQUNBO0lBQ0ksaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixXQUFXO0FBQ2Y7O0FBRUE7SUFDSSxlQUFlO0FBQ25COztBQUNBO0lBQ0ksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixxQkFBcUI7QUFDekI7O0FBQ0E7SUFDSSwwQkFBMEI7SUFDMUIsa0NBQWtDO0lBQ2xDLHVCQUF1QjtJQUN2Qix1QkFBdUI7QUFDM0I7O0FBQ0E7SUFDSSxvQ0FBb0M7SUFDcEMsdUJBQXVCO0FBQzNCOztBQUNBO0lBQ0ksdUJBQXVCO0lBQ3ZCLHFCQUFxQjtJQUNyQixXQUFXO0lBQ1gsWUFBWTtBQUNoQjs7QUFDQTtJQUNJLHVCQUF1QjtJQUN2QixrQ0FBa0M7QUFDdEM7O0FBQ0E7SUFDSSxnQ0FBZ0M7SUFDaEMsb0NBQW9DO0lBQ3BDLHlCQUF5QjtBQUM3Qjs7QUFDQTtJQUNJLHFDQUE2QjtJQUE3QixrQ0FBNkI7SUFBN0IsNkJBQTZCO0FBQ2pDOztBQUNBO0lBQ0ksNEJBQTRCO0FBQ2hDOztBQUNBO0lBQ0ksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQix1QkFBdUI7SUFDdkIsYUFBYTtBQUNqQjs7QUFDQTtJQUNJLDZCQUE2QjtBQUNqQzs7QUFDQTtJQUNJLDBDQUEwQztBQUM5Qzs7QUFFQTtJQUNJLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YseUJBQXlCO0lBQ3pCLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixTQUFTO0lBQ1Qsa0JBQWtCO0FBQ3RCOztBQUVBO0lBQ0k7UUFDSSwwQ0FBMEM7SUFDOUM7SUFDQTtRQUNJLDJCQUEyQjtJQUMvQjtFQUNGOztBQUVBO0lBQ0U7UUFDSSwwQ0FBMEM7SUFDOUM7SUFDQTtRQUNJLDJCQUEyQjtJQUMvQjtFQUNGOztBQUNBO0lBQ0U7UUFDSSwwQ0FBMEM7SUFDOUM7SUFDQTtRQUNJLDBCQUEwQjtJQUM5QjtBQUNKOztBQUNBO0lBQ0k7UUFDSSxvQkFBb0I7UUFDcEIscUJBQXFCO0lBQ3pCO0FBQ0o7O0FBQ0E7SUFDSSxZQUFZO0FBQ2hCOztBQUNBO0lBQ0ksdUJBQXVCO0FBQzNCIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy9yYWlsLWNhci1pbmZvLWVkaXQvcmFpbC1jYXItaW5mby1lZGl0LmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IC51aS10YWJsZSAudWktdGFibGUtdGhlYWQ+dHI+dGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBjb2xvcjojMDA0ODkwO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIHBhZGRpbmc6IDNweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWYwZmY7XHJcbiAgICBtaW4td2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmJvZHkgLnVpLXRhYmxlIC51aS10YWJsZS10aGVhZD50cj50aD5kaXYge1xyXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5ib2R5IC51aS10YWJsZSAudWktdGFibGUtdGJvZHk+dHI+dGQge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwYWRkaW5nOiAwIDRweDtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFmMGZmO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wICFpbXBvcnRhbnQ7XHJcbn1cclxuLmFjY29yZGlvbi1pbWctaWNvbiB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICB3aWR0aDogMjBweDtcclxufVxyXG5cclxuLnBvaW50ZXItY3Vyc29yIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG4jcmFpbENhclRhYmxlIC5lZGl0LWNvbHVtbiB7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXBhZ2luYXRvciB7XHJcbiAgICBtYXJnaW4tdG9wOiA1cHggIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXBhZ2luYXRvciAudWktcGFnaW5hdG9yLXBhZ2VzIC51aS1wYWdpbmF0b3ItcGFnZS51aS1zdGF0ZS1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxDYXJUYWJsZSAudWktbXVsdGlzZWxlY3QgLnVpLW11bHRpc2VsZWN0LXBhbmVsIC51aS1tdWx0aXNlbGVjdC1pdGVtcyB7XHJcbiAgICBsZWZ0OiAtMjkycHggIWltcG9ydGFudDtcclxuICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDE1MHB4O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLW11bHRpc2VsZWN0LXBhbmVsIC51aS1tdWx0aXNlbGVjdC1pdGVtcyAudWktbXVsdGlzZWxlY3QtaXRlbS51aS1zdGF0ZS1oaWdobGlnaHQge1xyXG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLWNoa2JveCAudWktY2hrYm94LWJveC51aS1zdGF0ZS1hY3RpdmUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlIHRhYmxlIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudCAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlIHtcclxuICAgIG1heC1oZWlnaHQ6IDcwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxDYXJUYWJsZSAudWktdGFibGUtc2Nyb2xsYWJsZS1oZWFkZXIsIC51aS10YWJsZS1zY3JvbGxhYmxlLWZvb3RlciB7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG59XHJcbiNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtaGVhZGVyLWJveCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDYwcHggIWltcG9ydGFudDtcclxufVxyXG4jcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDI4MHB4KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC5leGNlbEljb24ge1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTA7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBwYWRkaW5nOiA2cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIHRvcDogLTdweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMHB4KSB7XHJcbiAgICAjcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzNzBweCkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5jZiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxNDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MnB4KSB7XHJcbiAgICAjcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMjBweCkgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5jZiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxMTBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDA3cHgpIHtcclxuICAgICNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtYm9keSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMwMHB4KSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmNmIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjgwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAjcmFpbENhclRhYmxlIC51aS1tdWx0aXNlbGVjdCAudWktbXVsdGlzZWxlY3QtcGFuZWwge1xyXG4gICAgICAgIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4uY29tbWVudHMtd2lkdGgge1xyXG4gICAgd2lkdGg6IDI1MHB4O1xyXG59XHJcbnRhYmxlIHRyLnVpLXN0YXRlLWhpZ2hsaWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxufVxyXG4iXX0= */\"","import { Component, OnInit, SimpleChanges, ViewEncapsulation, Input, Output, EventEmitter } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { FilterUtils } from 'primeng/api';\r\nimport { RailFleetService } from '../../../services/rail-fleet.service';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { element } from 'protractor';\r\nimport { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\r\nimport { EMLINK } from 'constants';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n\r\nconst EXCEL_EXTENSION = '.xlsx';\r\n\r\n@Component({\r\n selector: 'app-rail-car-info-edit',\r\n templateUrl: './rail-car-info-edit.component.html',\r\n styleUrls: ['./rail-car-info-edit.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class RailCarInfoEditComponent implements OnInit {\r\n @Input() selectedValues: any;\r\n @Input() selectedCols: any[];\r\n @Output() bulkEditStatus = new EventEmitter();\r\n activeCarsData: any;\r\n cols: any[];\r\n selected=[];\r\n apiResp: any;\r\n defaultWidth: '100%';\r\n viewColHeight: any;\r\n userId: any;\r\n userAdmin: boolean = false;\r\n filteredData: any;\r\n filteredFields = [];\r\n tempFilteredData: any;\r\n masterAPIResp: any;\r\n permittedCommodities: any;\r\n packingGroups: any;\r\n hazardClasses: any;\r\n carTypes: any;\r\n dot_aar_classes: any;\r\n carBuilders: any;\r\n\r\n constructor(private _railFleetService: RailFleetService, private router: Router,private spinner: NgxSpinnerService, private _toastr: ToastrService) { }\r\n\r\n ngOnInit() {\r\n this.userId = sessionStorage.getItem('userId');\r\n let role = sessionStorage.getItem('role');\r\n if(role != null && role != undefined && role != '' ) {\r\n if(role.includes('Admin')) {\r\n this.userAdmin = true;\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n this.getAllMasterData()\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n this.spinner.show();\r\n this.cols = [\r\n { field: 'railcarID', header: 'Railcar ID', options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 1,selectedOptions:[] },\r\n { field: 'carStatus', header: 'Car Status',options:[], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 2 ,selectedOptions:[]},\r\n { field: 'dueTest', header: 'Due Test',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 3,selectedOptions:[] },\r\n //{ field: 'currentRegCompleted', header: 'Current Reg.Completed(ALLT Data)', isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 4 },\r\n { field: 'originalRCID', header: 'Original RC ID',options:[], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 4,selectedOptions:[] },\r\n { field: 'bu', header: 'BU',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 5,selectedOptions:[] },\r\n { field: 'tcc', header: 'TCC',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 6,selectedOptions:[]},\r\n { field: 'contract', header: 'Contract',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 7,selectedOptions:[]},\r\n { field: 'fixedAsset', header: 'Fixed Asset',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 8,selectedOptions:[]},\r\n { field: 'locationCode', header: 'Location Code',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 9,selectedOptions:[] },\r\n { field: 'maintenancePlant', header: 'Maintenance Plant',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 10,selectedOptions:[] },\r\n { field: 'assignedLocation', header: 'Assigned Location',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 11,selectedOptions:[] },\r\n { field: 'maintenancePlantLocation', header: 'Maintenance Plant Location',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 12,selectedOptions:[] },\r\n { field: 'fleet', header: 'Fleet',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 13,selectedOptions:[] },\r\n \r\n { field: 'permittedCommodity',subfield:'permittedcommodities', header: 'Permitted Commodities',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 14,selectedOptions:[]},\r\n { field: 'packingGroup', header: 'Packing Group',options:[], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 15,selectedOptions:[]},\r\n { field: 'hazardClass', header: 'Hazard Class',options:[], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 16,selectedOptions:[]},\r\n //{ field: 'jacketed', header: 'Jacketed (SPECs data)', isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 16 },\r\n { field: 'carType', header: 'Car Type',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 17,selectedOptions:[]},\r\n { field: 'originalCertofConstruction', header: 'Original Cert. of Construction',options:[], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 18,selectedOptions:[] },\r\n { field: 'doT_AAR_Class', header: 'DOT/AAR Class',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 19,selectedOptions:[]},\r\n { field: 'carBuilder', header: 'Car Builder',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 20,selectedOptions:[]},\r\n { field: 'yearBuilt', header: 'Year Built',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 21,selectedOptions:[]},\r\n { field: 'ageofCar', header: 'Age of Car',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 22,selectedOptions:[]},\r\n { field: 'onHire', header: 'On Hire', options: [], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 23,selectedOptions:[]},\r\n { field: 'owner', header: 'Owner',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 24,selectedOptions:[]},\r\n { field: 'rider', header: 'Rider',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 25,selectedOptions:[]},\r\n { field: 'effective', header: 'Effective',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 26,selectedOptions:[]},\r\n { field: 'expiration', header: 'Expiration',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 27,selectedOptions:[]},\r\n { field: 'monthlyDepreciation', header: 'Monthly Depreciation',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 28,selectedOptions:[] },\r\n // { field: 'rent', header: 'Rent', isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 29 },\r\n // { field: 'rep_Maint', header: 'Rep & Maint.)', isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 30 },\r\n { field: 'rent', header: 'Monthly Rent',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 29,selectedOptions:[]},\r\n { field: 'leaseTerm', header: 'Lease Term. Mns',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 30,selectedOptions:[]},\r\n { field: 'term', header: 'Term. yr',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 31,selectedOptions:[] },\r\n { field: 'tareWeightLBS', header: 'Tare Weight LBS',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 32,selectedOptions:[]},\r\n { field: 'maxGrossWeight', header: 'Max Gross Weight',options:[], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 33,selectedOptions:[]},\r\n { field: 'comments', header: 'Comments',options:[], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 34,selectedOptions:[]},\r\n // { field: 'release', header: 'Release',options:[], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 33,selectedOptions:[]},\r\n ];\r\n this.cols.forEach(element => {\r\n this.selectedCols.forEach(elm => {\r\n if (element.field === elm.field) {\r\n\r\n if(elm.selectedOptions.length!=0)\r\n {\r\n element.selectedOptions=elm.selectedOptions;\r\n this.selected.push(element);\r\n }else{\r\n this.selected.push(element);\r\n }\r\n } \r\n \r\n });\r\n });\r\n this.selectedCols=this.selected;\r\n this.viewColHeight = (window.innerHeight - 190) + \"px\";\r\n FilterUtils['custom'] = (value, filter): boolean => {\r\n if (filter === undefined || filter === null || filter.trim() === '') {\r\n return true;\r\n }\r\n\r\n if (value === undefined || value === null) {\r\n return false;\r\n }\r\n\r\n return parseInt(filter) > value;\r\n }\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n\r\n onChangeDDValue(value) {\r\n this.sortColumns(value);\r\n }\r\n\r\n showHideData(e) {\r\n this.cols = e;\r\n }\r\n\r\n sortColumns(value) {\r\n this.selectedCols = this.selectedCols.sort((a, b) => {\r\n return a.serialNo - b.serialNo;\r\n })\r\n }\r\n\r\n\r\n onnSelectRow(rowData, type) {\r\n this.router.navigate(['rail-car/info'], { state: { data: {cols: this.cols, rowData: rowData, selectionType: type} } });\r\n }\r\n\r\n filterData(value, filter) {\r\n if (value == '') {\r\n if (this.filteredFields.length) {\r\n this.filteredFields = this.filteredFields.filter(ff => ff.fieldName !== filter);\r\n } else {\r\n this.filteredFields = [];\r\n }\r\n } else {\r\n let foundField = this.filteredFields.filter(ff => ff.fieldName == filter);\r\n if (foundField.length) {\r\n this.filteredFields.forEach(ff => {\r\n if (ff.fieldName == filter) {\r\n ff.value = value;\r\n }\r\n })\r\n } else {\r\n let fieldObj = {\r\n fieldName: filter,\r\n value: value\r\n };\r\n this.filteredFields.push(fieldObj);\r\n }\r\n }\r\n if (this.filteredFields.length) {\r\n let temp = this.activeCarsData;\r\n this.filteredFields.forEach(ff => {\r\n temp = temp.filter(fd => fd[ff.fieldName].toUpperCase().includes(ff.value.toUpperCase()));\r\n })\r\n this.filteredData = temp;\r\n } else {\r\n this.filteredData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n }\r\n this.tempFilteredData = JSON.parse(JSON.stringify(this.filteredData));\r\n }\r\n\r\n exportExcel() {\r\n let tFilteredData = JSON.parse(JSON.stringify(this.filteredData));\r\n tFilteredData.forEach(ac => {\r\n let pcValue = \"\";\r\n if(ac.permittedCommodity.length > 0) {\r\n ac.permittedCommodity.forEach(pc => {\r\n pcValue = pcValue + pc.permittedcommodities + \", \"\r\n });\r\n ac.permittedCommodity = pcValue;\r\n }\r\n }) \r\n this.exportAsExcelFile(tFilteredData, 'RailCarFleet', 'sheet1', this.cols)\r\n }\r\n\r\n\r\n exportAsExcelFile(json: any[], excelFileName: string, sheetName: string, columnValues: any[]): void {\r\n var fieldValues: any[] = columnValues.map(field => field.field);\r\n var headerValues: string[] = columnValues.map(header => header.header);\r\n var displayedJson: any[] = [];\r\n if (json != null && json.length > 0) {\r\n for (let originalValue of json) {\r\n var jsonObject: any = {};\r\n for (let fieldValue of fieldValues) {\r\n jsonObject[fieldValue] = originalValue[fieldValue];\r\n }\r\n var jsonString = JSON.stringify(jsonObject);\r\n displayedJson.push(JSON.parse(jsonString));\r\n }\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(displayedJson);\r\n var range = XLSX.utils.decode_range(worksheet['!ref']);\r\n for (var C = range.s.c; C <= range.e.c; ++C) {\r\n var address = XLSX.utils.encode_col(C) + \"1\"; // <-- first row, column number C\r\n if (!worksheet[address]) continue;\r\n worksheet[address] = {\r\n v: headerValues[C],\r\n t: 's',\r\n s: {\r\n alignment: { textRotation: 90 },\r\n font: { bold: true }\r\n }\r\n };\r\n }\r\n XLSX.utils.sheet_add_aoa(worksheet, [[]], { origin: -1 });\r\n const workbook: XLSX.WorkBook = { Sheets: { [sheetName]: worksheet }, SheetNames: [sheetName] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n }\r\n\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n FileSaver.saveAs(data, fileName + EXCEL_EXTENSION);\r\n }\r\n editBulk() {\r\n const selectedCheckbox = this.activeCarsData.filter(val => val[0]);\r\n }\r\n getAllMasterData() {\r\n this.spinner.show();\r\n this._railFleetService.getRailMasterData().subscribe(response => {\r\n this.masterAPIResp = response;\r\n this.permittedCommodities = this.masterAPIResp.permittedCommodities;\r\n this.permittedCommodities.forEach(pc => {\r\n // pc.railcarID = this.rowData.railcarID;\r\n pc.permittedCommoditiesDesc = null;\r\n })\r\n this.packingGroups = this.masterAPIResp.packagingGroups;\r\n this.hazardClasses = this.masterAPIResp.hazardClasses;\r\n this.carTypes = this.masterAPIResp.carTypes;\r\n this.dot_aar_classes = this.masterAPIResp.dot_aar_classes;\r\n this.carBuilders = this.masterAPIResp.carBuilders;\r\n this.spinner.hide();\r\n this.selectedValues.forEach((val, i) => {\r\n this.selectedValues[i].permittedCommodity = this.permittedCommodities.filter(pc=>this.selectedValues[i].permittedCommodity\r\n .find(selectedPc=>selectedPc.permittedCommoditiesID===pc.permittedCommoditiesID));\r\n this.selectedValues[i].hazardClassSelected = this.hazardClasses.find(hc => hc.hazardClassID === this.selectedValues[i].hazardClassID);\r\n this.selectedValues[i].packinggroupSelected = this.packingGroups.find(hc => hc.packinggroup === this.selectedValues[i].packingGroup);\r\n this.selectedValues[i].carbuilderSelected = this.carBuilders.find(hc => hc.carBuilderID === this.selectedValues[i].carBuilderID);\r\n })\r\n })\r\n }\r\n validateNumber(value) {\r\n let numberExp = new RegExp(/^\\d*\\.?\\d*$/);\r\n return numberExp.test(value);\r\n }\r\n saveAll() {\r\n this.spinner.show();\r\n const payload = [];\r\n this.selectedValues.forEach(railCar => {\r\n \r\n const railFleetClass = {\r\n railcarID: railCar.railcarID,\r\n carStatus:railCar.carStatus,\r\n dueTest: railCar.dueTest,\r\n nextRegYr: railCar.nextRegYr,\r\n currentRegCompleted: railCar.currentRegCompleted,\r\n originalRCID: railCar.originalRCID,\r\n bu: railCar.bu,\r\n tcc: railCar.tcc,\r\n contract: railCar.contract,\r\n fixedAsset: railCar.fixedAsset, \r\n locationCode: railCar.locationCode,\r\n sortField:railCar.sortField,\r\n maintenancePlant:railCar.maintenancePlant,\r\n assignedLocation: railCar.assignedLocation,\r\n fleet: railCar.fleet,\r\n // permittedCommodities: railCar.permittedCommodities,\r\n packingGroup: railCar.packinggroupSelected ? railCar.packinggroupSelected.packinggroup : null,\r\n hazardClass: railCar.hazardClassSelected ? railCar.hazardClassSelected.hazardclass : null,\r\n jacketed: railCar.jacketed,\r\n carType: railCar.carType,\r\n originalCertofConstruction: railCar.originalCertofConstruction,\r\n doT_AAR_Class: railCar.doT_AAR_Class,\r\n carBuilder: railCar.carbuilderSelected ? railCar.carbuilderSelected.carbuilder: '',\r\n yearBuilt: railCar.yearBuilt,\r\n ageofCar: railCar.ageofCar,\r\n onHire: railCar.onHire,\r\n owner: railCar.owner,\r\n rider: railCar.rider,\r\n effective: railCar.effective,\r\n expiration: railCar.expiration,\r\n monthlyDepreciation: railCar.monthlyDepreciation,\r\n rent: railCar.rent,\r\n rep_Maint: railCar.rep_Maint,\r\n rentalAgreement: railCar.rentalAgreement.toString(),\r\n leaseTerm: railCar.leaseTerm,\r\n term: railCar.term,\r\n tareWeightLBS: railCar.tareWeightLBS,\r\n maxGrossWeight: railCar.maxGrossWeight,\r\n comments: railCar.comments,\r\n release: railCar.release,\r\n lastUpdatedDate: railCar.lastUpdatedDate,\r\n permittedCommoditiesID: railCar.permittedCommoditiesID, //\r\n packingGroupID: railCar.packinggroupSelected ? railCar.packinggroupSelected.packingGroupID : null,\r\n hazardClassID: railCar.hazardClassSelected ? railCar.hazardClassSelected.hazardClassID : null,\r\n carBuilderID: railCar.carbuilderSelected ? railCar.carbuilderSelected.carBuilderID : null,\r\n modifiedBy: \"Nandha\",\r\n permittedCommodity: railCar.permittedCommodity\r\n };\r\n payload.push(railFleetClass);\r\n });\r\n this._railFleetService.updaterailBulkfleetdetails(payload).subscribe(response => {\r\n this._toastr.success('Updated Successfully', 'Success!');\r\n this.spinner.hide();\r\n this.bulkEditStatus.emit(false);\r\n });\r\n }\r\n hideBulkEdit() {\r\n this.bulkEditStatus.emit(false);\r\n }\r\n}\r\n","export default \"body .ui-table .ui-table-thead > tr > th {\\r\\n background-color: #004890;\\r\\n color:#ffffff;\\r\\n font-size: 14px;\\r\\n font-weight: 600;\\r\\n padding: 3px;\\r\\n text-align: center;\\r\\n /*border: 1px solid #e1f0ff;*/\\r\\n min-width: 107px !important;\\r\\n}\\r\\n\\r\\nbody .ui-table .ui-table-thead>tr>th>div {\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n}\\r\\n\\r\\nbody .ui-table .ui-table-tbody>tr>td {\\r\\n font-size: 14px;\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n padding: 0 4px;\\r\\n color: black;\\r\\n font-weight: 500;\\r\\n border: 1px solid #e1f0ff;\\r\\n text-overflow: ellipsis;\\r\\n vertical-align: middle !important;\\r\\n}\\r\\n\\r\\n.accordion-img-icon {\\r\\n margin-right: 6px;\\r\\n margin-bottom: 2px;\\r\\n margin-top: 2px;\\r\\n margin-left: 2px;\\r\\n height: 20px;\\r\\n width: 20px;\\r\\n}\\r\\n\\r\\n.text-style {\\r\\n overflow-wrap: break-word;\\r\\n text-align: left;\\r\\n}\\r\\n\\r\\n.number-style {\\r\\n overflow-wrap: break-word;\\r\\n text-align: right;\\r\\n}\\r\\n\\r\\n.pointer-cursor {\\r\\n cursor: pointer;\\r\\n}\\r\\n\\r\\n#railCarTable .edit-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n right: 0px !important;\\r\\n top:0;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-paginator {\\r\\n margin-top: 5px !important;\\r\\n background-color: white !important;\\r\\n border: none !important;\\r\\n float: right !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {\\r\\n background-color: #004890 !important;\\r\\n color: white !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-multiselect .ui-multiselect-panel .ui-multiselect-items {\\r\\n left: -292px !important;\\r\\n right: 0px !important;\\r\\n float: left;\\r\\n width: 150px;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-chkbox .ui-chkbox-box.ui-state-active {\\r\\n border-color: #004890 !important;\\r\\n background-color: #004890 !important;\\r\\n color: #ffffff !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table table {\\r\\n width: -webkit-fit-content !important;\\r\\n width: -moz-fit-content !important;\\r\\n width: fit-content !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table table tbody tr td p{\\r\\n margin-bottom: 0 !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-header,\\r\\n.ui-table-scrollable-footer {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n background-color: white;\\r\\n z-index: 9999;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-header-box {\\r\\n margin-right: 60px !important;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-scrollable-body {\\r\\n min-height: calc(100vh - 280px) !important;\\r\\n}\\r\\n\\r\\nbutton[disabled] {\\r\\n cursor: no-drop;\\r\\n}\\r\\n\\r\\n#railCarTable .actionbar {\\r\\n text-align: end;\\r\\n display: flex;\\r\\n align-items: center;\\r\\n justify-content: end;\\r\\n}\\r\\n\\r\\n#railCarTable .excelIcon {\\r\\n font-size: 1.5em;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n color: white;\\r\\n border-radius: 5px;\\r\\n padding: 6px;\\r\\n margin-left: 10px;\\r\\n top: -7px;\\r\\n position: relative;\\r\\n}\\r\\n\\r\\n#railCarTable .checkbox-columnHdr {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n left: 0px !important;\\r\\n top: 0px !important;\\r\\n z-index: 999999;\\r\\n }\\r\\n\\r\\n#railCarTable .railCarID-columnHdr {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n left: 106.25px !important;\\r\\n top: 0px !important;\\r\\n z-index: 999999;\\r\\n}\\r\\n\\r\\n#railCarTable .checkbox-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n left: 0px !important;\\r\\n /*z-index: 99999;*/\\r\\n }\\r\\n\\r\\n#railCarTable .railCarID-column {\\r\\n position: -webkit-sticky;\\r\\n position: sticky;\\r\\n left: 106.25px !important;\\r\\n /*z-index: 99999;*/\\r\\n}\\r\\n\\r\\n.ui-table .ui-table-thead {\\r\\n position: -webkit-sticky !important;\\r\\n position: sticky !important;\\r\\n top: 0px !important;\\r\\n z-index: 997 !important;\\r\\n}\\r\\n\\r\\n.ui-table .ui-table-tbody {\\r\\n z-index: 996 !important;\\r\\n}\\r\\n\\r\\n/* .ui-table .ui-table-thead > tr:nth-child(1) {\\r\\n position: -webkit-sticky !important;\\r\\n position: sticky !important;\\r\\n top: 0px !important;\\r\\n z-index: 9999 !important;\\r\\n}\\r\\n.ui-table .ui-table-thead > tr > th {\\r\\n position: -webkit-sticky !important;\\r\\n position: sticky !important;\\r\\n}\\r\\n\\r\\n.ui-table .ui-table-thead > tr:nth-child(2) {\\r\\n position: -webkit-sticky !important;\\r\\n position: sticky !important;\\r\\n top: 50px !important;\\r\\n z-index: 9999 !important;\\r\\n} */\\r\\n\\r\\n#permittedCommodities-multiselect .ui-multiselect .ui-multiselect-label {\\r\\n padding: 2px 10px;\\r\\n}\\r\\n\\r\\n#edit-dropdown .ui-dropdown label.ui-dropdown-label {\\r\\n padding: 2px 10px;\\r\\n}\\r\\n\\r\\n#edit-calendar .ui-button.ui-button-icon-only .ui-button-text {\\r\\n padding: 3px\\r\\n}\\r\\n\\r\\n#edit-calendar .ui-calendar.ui-calendar-w-btn .ui-inputtext {\\r\\n padding: 2px;\\r\\n}\\r\\n\\r\\n#railCarTable .ui-table-wrapper table {\\r\\n border-collapse: separate;\\r\\n border-spacing: 0;\\r\\n}\\r\\n\\r\\n.btn-clear {\\r\\n background: #004890 !important;\\r\\n}\\r\\n\\r\\n@media screen and (max-width: 64em) {\\r\\n .ui-table .ui-table-thead>tr>th {\\r\\n top: 100px;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 1000px) {\\r\\n\\r\\n /* #railCarTable .ui-table-scrollable-body {\\r\\n min-height: calc(100vh - 370px) !important;\\r\\n } */\\r\\n .cf {\\r\\n margin-top: 140px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (max-height: 500px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n max-height: 55vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-height: 500px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n height: 60vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-height: 600px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n height: 63vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-height: 710px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n height: 68vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-height: 800px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n height: 70vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-height: 900px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n max-height: 77vh !important;\\r\\n height: auto !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-height: 1300px) {\\r\\n #railCarTable .ui-table-wrapper {\\r\\n max-height: 80vh !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 1052px) {\\r\\n\\r\\n /* #railCarTable .ui-table-scrollable-body {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n } */\\r\\n .cf {\\r\\n margin-top: 110px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 1407px) {\\r\\n\\r\\n /* #railCarTable .ui-table-scrollable-body {\\r\\n max-height: calc(100vh - 300px) !important;\\r\\n } */\\r\\n .cf {\\r\\n margin-top: 80px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n@media screen and (min-width: 320px) and (max-width: 768px) {\\r\\n #railCarTable .ui-multiselect .ui-multiselect-panel {\\r\\n left: 0px !important;\\r\\n right: 0px !important;\\r\\n }\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9yYWlsLWNhci1pbmZvLXNlbGVjdGlvbi9yYWlsLWNhci1pbmZvLXNlbGVjdGlvbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UseUJBQXlCO0VBQ3pCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsNkJBQTZCO0VBQzdCLDJCQUEyQjtBQUM3Qjs7QUFFQTtJQUNJLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLHVCQUF1QjtBQUMzQjs7QUFFQTtJQUNJLGVBQWU7SUFDZixxQkFBcUI7SUFDckIsbUJBQW1CO0lBQ25CLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQix5QkFBeUI7SUFDekIsdUJBQXVCO0lBQ3ZCLGlDQUFpQztBQUNyQzs7QUFFQTtJQUNJLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixZQUFZO0lBQ1osV0FBVztBQUNmOztBQUVBO0lBQ0kseUJBQXlCO0lBQ3pCLGdCQUFnQjtBQUNwQjs7QUFFQTtJQUNJLHlCQUF5QjtJQUN6QixpQkFBaUI7QUFDckI7O0FBRUE7SUFDSSxlQUFlO0FBQ25COztBQUVBO0lBQ0ksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixxQkFBcUI7SUFDckIsS0FBSztBQUNUOztBQUVBO0lBQ0ksMEJBQTBCO0lBQzFCLGtDQUFrQztJQUNsQyx1QkFBdUI7SUFDdkIsdUJBQXVCO0FBQzNCOztBQUVBO0lBQ0ksb0NBQW9DO0lBQ3BDLHVCQUF1QjtBQUMzQjs7QUFFQTtJQUNJLHVCQUF1QjtJQUN2QixxQkFBcUI7SUFDckIsV0FBVztJQUNYLFlBQVk7QUFDaEI7O0FBRUE7SUFDSSxnQ0FBZ0M7SUFDaEMsb0NBQW9DO0lBQ3BDLHlCQUF5QjtBQUM3Qjs7QUFFQTtJQUNJLHFDQUE2QjtJQUE3QixrQ0FBNkI7SUFBN0IsNkJBQTZCO0FBQ2pDOztBQUVBO0lBQ0ksMkJBQTJCO0FBQy9COztBQUVBOztJQUVJLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsdUJBQXVCO0lBQ3ZCLGFBQWE7QUFDakI7O0FBRUE7SUFDSSw2QkFBNkI7QUFDakM7O0FBRUE7SUFDSSwwQ0FBMEM7QUFDOUM7O0FBRUE7SUFDSSxlQUFlO0FBQ25COztBQUVBO0lBQ0ksZUFBZTtJQUNmLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsb0JBQW9CO0FBQ3hCOztBQUVBO0lBQ0ksZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZix5QkFBeUI7SUFDekIsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLFNBQVM7SUFDVCxrQkFBa0I7QUFDdEI7O0FBQ0E7SUFDSSx3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsZUFBZTtFQUNqQjs7QUFFRjtFQUNFLHdCQUFnQjtFQUFoQixnQkFBZ0I7RUFDaEIseUJBQXlCO0VBQ3pCLG1CQUFtQjtFQUNuQixlQUFlO0FBQ2pCOztBQUNBO0lBQ0ksd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixvQkFBb0I7SUFDcEIsa0JBQWtCO0VBQ3BCOztBQUVGO0VBQ0Usd0JBQWdCO0VBQWhCLGdCQUFnQjtFQUNoQix5QkFBeUI7RUFDekIsa0JBQWtCO0FBQ3BCOztBQUNBO0lBQ0ksbUNBQW1DO0lBQ25DLDJCQUEyQjtJQUMzQixtQkFBbUI7SUFDbkIsdUJBQXVCO0FBQzNCOztBQUVBO0lBQ0ksdUJBQXVCO0FBQzNCOztBQUVBOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHOztBQUVIO0lBQ0ksaUJBQWlCO0FBQ3JCOztBQUVBO0lBQ0ksaUJBQWlCO0FBQ3JCOztBQUVBO0lBQ0k7QUFDSjs7QUFFQTtJQUNJLFlBQVk7QUFDaEI7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsOEJBQThCO0FBQ2hDOztBQUlBO0VBQ0U7UUFDTSxVQUFVO0lBQ2Q7QUFDSjs7QUFFQTs7SUFFSTs7T0FFRztJQUNIO1FBQ0ksNEJBQTRCO0lBQ2hDO0FBQ0o7O0FBRUE7SUFDSTtRQUNJLDJCQUEyQjtJQUMvQjtBQUNKOztBQUVBO0lBQ0k7UUFDSSx1QkFBdUI7SUFDM0I7QUFDSjs7QUFFQTtJQUNJO1FBQ0ksdUJBQXVCO0lBQzNCO0FBQ0o7O0FBRUE7SUFDSTtRQUNJLHVCQUF1QjtJQUMzQjtBQUNKOztBQUVBO0lBQ0k7UUFDSSx1QkFBdUI7SUFDM0I7QUFDSjs7QUFFQTtJQUNJO1FBQ0ksMkJBQTJCO1FBQzNCLHVCQUF1QjtJQUMzQjtBQUNKOztBQUVBO0lBQ0k7UUFDSSwyQkFBMkI7SUFDL0I7QUFDSjs7QUFHQTs7SUFFSTs7T0FFRztJQUNIO1FBQ0ksNEJBQTRCO0lBQ2hDO0FBQ0o7O0FBRUE7O0lBRUk7O09BRUc7SUFDSDtRQUNJLDJCQUEyQjtJQUMvQjtBQUNKOztBQUVBO0lBQ0k7UUFDSSxvQkFBb0I7UUFDcEIscUJBQXFCO0lBQ3pCO0FBQ0oiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3JhaWwtY2FyLWluZm8tc2VsZWN0aW9uL3JhaWwtY2FyLWluZm8tc2VsZWN0aW9uLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IC51aS10YWJsZSAudWktdGFibGUtdGhlYWQgPiB0ciA+IHRoIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gIGNvbG9yOiNmZmZmZmY7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgcGFkZGluZzogM3B4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAvKmJvcmRlcjogMXB4IHNvbGlkICNlMWYwZmY7Ki9cclxuICBtaW4td2lkdGg6IDEwN3B4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmJvZHkgLnVpLXRhYmxlIC51aS10YWJsZS10aGVhZD50cj50aD5kaXYge1xyXG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuYm9keSAudWktdGFibGUgLnVpLXRhYmxlLXRib2R5PnRyPnRkIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMCA0cHg7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UxZjBmZjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYWNjb3JkaW9uLWltZy1pY29uIHtcclxuICAgIG1hcmdpbi1yaWdodDogNnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gICAgbWFyZ2luLXRvcDogMnB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG59XHJcblxyXG4udGV4dC1zdHlsZSB7XHJcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLm51bWJlci1zdHlsZSB7XHJcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbi5wb2ludGVyLWN1cnNvciB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLmVkaXQtY29sdW1uIHtcclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB0b3A6MDtcclxufVxyXG5cclxuI3JhaWxDYXJUYWJsZSAudWktcGFnaW5hdG9yIHtcclxuICAgIG1hcmdpbi10b3A6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLnVpLXBhZ2luYXRvciAudWktcGFnaW5hdG9yLXBhZ2VzIC51aS1wYWdpbmF0b3ItcGFnZS51aS1zdGF0ZS1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLnVpLW11bHRpc2VsZWN0IC51aS1tdWx0aXNlbGVjdC1wYW5lbCAudWktbXVsdGlzZWxlY3QtaXRlbXMge1xyXG4gICAgbGVmdDogLTI5MnB4ICFpbXBvcnRhbnQ7XHJcbiAgICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiAxNTBweDtcclxufVxyXG5cclxuI3JhaWxDYXJUYWJsZSAudWktY2hrYm94IC51aS1jaGtib3gtYm94LnVpLXN0YXRlLWFjdGl2ZSB7XHJcbiAgICBib3JkZXItY29sb3I6ICMwMDQ4OTAgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTAgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlIHRhYmxlIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC51aS10YWJsZSB0YWJsZSB0Ym9keSB0ciB0ZCBwe1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWhlYWRlcixcclxuLnVpLXRhYmxlLXNjcm9sbGFibGUtZm9vdGVyIHtcclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIHotaW5kZXg6IDk5OTk7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLnVpLXRhYmxlLXNjcm9sbGFibGUtaGVhZGVyLWJveCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDYwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuI3JhaWxDYXJUYWJsZSAudWktdGFibGUtc2Nyb2xsYWJsZS1ib2R5IHtcclxuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAyODBweCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuYnV0dG9uW2Rpc2FibGVkXSB7XHJcbiAgICBjdXJzb3I6IG5vLWRyb3A7XHJcbn1cclxuXHJcbiNyYWlsQ2FyVGFibGUgLmFjdGlvbmJhciB7XHJcbiAgICB0ZXh0LWFsaWduOiBlbmQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogZW5kO1xyXG59XHJcblxyXG4jcmFpbENhclRhYmxlIC5leGNlbEljb24ge1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTA7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBwYWRkaW5nOiA2cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIHRvcDogLTdweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4jcmFpbENhclRhYmxlIC5jaGVja2JveC1jb2x1bW5IZHIge1xyXG4gICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiAwcHggIWltcG9ydGFudDtcclxuICAgIHotaW5kZXg6IDk5OTk5OTtcclxuICB9XHJcblxyXG4jcmFpbENhclRhYmxlIC5yYWlsQ2FySUQtY29sdW1uSGRyIHtcclxuICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gIGxlZnQ6IDEwNi4yNXB4ICFpbXBvcnRhbnQ7XHJcbiAgdG9wOiAwcHggIWltcG9ydGFudDtcclxuICB6LWluZGV4OiA5OTk5OTk7XHJcbn1cclxuI3JhaWxDYXJUYWJsZSAuY2hlY2tib3gtY29sdW1uIHtcclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICBsZWZ0OiAwcHggIWltcG9ydGFudDtcclxuICAgIC8qei1pbmRleDogOTk5OTk7Ki9cclxuICB9XHJcblxyXG4jcmFpbENhclRhYmxlIC5yYWlsQ2FySUQtY29sdW1uIHtcclxuICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gIGxlZnQ6IDEwNi4yNXB4ICFpbXBvcnRhbnQ7XHJcbiAgLyp6LWluZGV4OiA5OTk5OTsqL1xyXG59XHJcbi51aS10YWJsZSAudWktdGFibGUtdGhlYWQge1xyXG4gICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5ICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XHJcbiAgICB0b3A6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgei1pbmRleDogOTk3ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi51aS10YWJsZSAudWktdGFibGUtdGJvZHkge1xyXG4gICAgei1pbmRleDogOTk2ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIC51aS10YWJsZSAudWktdGFibGUtdGhlYWQgPiB0cjpudGgtY2hpbGQoMSkge1xyXG4gICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5ICFpbXBvcnRhbnQ7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5ICFpbXBvcnRhbnQ7XHJcbiAgICB0b3A6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgei1pbmRleDogOTk5OSAhaW1wb3J0YW50O1xyXG59XHJcbi51aS10YWJsZSAudWktdGFibGUtdGhlYWQgPiB0ciA+IHRoIHtcclxuICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreSAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHN0aWNreSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udWktdGFibGUgLnVpLXRhYmxlLXRoZWFkID4gdHI6bnRoLWNoaWxkKDIpIHtcclxuICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreSAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHN0aWNreSAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB6LWluZGV4OiA5OTk5ICFpbXBvcnRhbnQ7XHJcbn0gKi9cclxuXHJcbiNwZXJtaXR0ZWRDb21tb2RpdGllcy1tdWx0aXNlbGVjdCAudWktbXVsdGlzZWxlY3QgLnVpLW11bHRpc2VsZWN0LWxhYmVsIHtcclxuICAgIHBhZGRpbmc6IDJweCAxMHB4O1xyXG59XHJcblxyXG4jZWRpdC1kcm9wZG93biAudWktZHJvcGRvd24gbGFiZWwudWktZHJvcGRvd24tbGFiZWwge1xyXG4gICAgcGFkZGluZzogMnB4IDEwcHg7XHJcbn1cclxuXHJcbiNlZGl0LWNhbGVuZGFyIC51aS1idXR0b24udWktYnV0dG9uLWljb24tb25seSAudWktYnV0dG9uLXRleHQge1xyXG4gICAgcGFkZGluZzogM3B4XHJcbn1cclxuXHJcbiNlZGl0LWNhbGVuZGFyIC51aS1jYWxlbmRhci51aS1jYWxlbmRhci13LWJ0biAudWktaW5wdXR0ZXh0IHtcclxuICAgIHBhZGRpbmc6IDJweDtcclxufVxyXG5cclxuI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB0YWJsZSB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcclxuICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxuLmJ0bi1jbGVhciB7XHJcbiAgYmFja2dyb3VuZDogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0ZW0pIHtcclxuICAudWktdGFibGUgLnVpLXRhYmxlLXRoZWFkPnRyPnRoIHtcclxuICAgICAgICB0b3A6IDEwMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDAwcHgpIHtcclxuXHJcbiAgICAvKiAjcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzNzBweCkgIWltcG9ydGFudDtcclxuICAgIH0gKi9cclxuICAgIC5jZiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTQwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDUwMHB4KSB7XHJcbiAgICAjcmFpbENhclRhYmxlIC51aS10YWJsZS13cmFwcGVyIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA1NXZoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA1MDBweCkge1xyXG4gICAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB7XHJcbiAgICAgICAgaGVpZ2h0OiA2MHZoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA2MDBweCkge1xyXG4gICAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB7XHJcbiAgICAgICAgaGVpZ2h0OiA2M3ZoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA3MTBweCkge1xyXG4gICAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB7XHJcbiAgICAgICAgaGVpZ2h0OiA2OHZoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA4MDBweCkge1xyXG4gICAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB7XHJcbiAgICAgICAgaGVpZ2h0OiA3MHZoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiA5MDBweCkge1xyXG4gICAgI3JhaWxDYXJUYWJsZSAudWktdGFibGUtd3JhcHBlciB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNzd2aCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogMTMwMHB4KSB7XHJcbiAgICAjcmFpbENhclRhYmxlIC51aS10YWJsZS13cmFwcGVyIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA4MHZoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDUycHgpIHtcclxuXHJcbiAgICAvKiAjcmFpbENhclRhYmxlIC51aS10YWJsZS1zY3JvbGxhYmxlLWJvZHkge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMjBweCkgIWltcG9ydGFudDtcclxuICAgIH0gKi9cclxuICAgIC5jZiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTEwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwN3B4KSB7XHJcblxyXG4gICAgLyogI3JhaWxDYXJUYWJsZSAudWktdGFibGUtc2Nyb2xsYWJsZS1ib2R5IHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzAwcHgpICFpbXBvcnRhbnQ7XHJcbiAgICB9ICovXHJcbiAgICAuY2Yge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDgwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgI3JhaWxDYXJUYWJsZSAudWktbXVsdGlzZWxlY3QgLnVpLW11bHRpc2VsZWN0LXBhbmVsIHtcclxuICAgICAgICBsZWZ0OiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuIl19 */\"","import { AfterViewChecked, AfterViewInit, Component, OnInit, SimpleChanges, ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { FilterUtils, SortEvent } from 'primeng/api';\r\nimport { RailFleetService } from '../../../services/rail-fleet.service';\r\nimport * as XLSX from 'xlsx';\r\nimport { stringify } from 'querystring';\r\nimport { AllspecsComponent } from '../allspecs/allspecs.component';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { Table } from 'primeng/table';\r\nimport * as FileSaver from 'file-saver';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\n\r\nconst EXCEL_EXTENSION = '.xlsx';\r\n\r\n@Component({\r\n selector: 'app-rail-car-info-selection',\r\n templateUrl: './rail-car-info-selection.component.html',\r\n styleUrls: ['./rail-car-info-selection.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class RailCarInfoSelectionComponent implements OnInit, AfterViewInit, AfterViewChecked {\r\n activeCarsData: any;\r\n cols: any[];\r\n sortedCols: any[];\r\n apiResp: any;\r\n defaultWidth: '100%';\r\n viewColHeight: any\r\n selectedCols = [];\r\n userId: any;\r\n userAdmin: boolean = false;\r\n filteredData: any;\r\n filteredFields = [];\r\n tempFilteredData: any;\r\n selectedValues: any = [];\r\n bulkEdit = false;\r\n permittedCommodities = [];\r\n rowData: any;\r\n masterAPIResp: any;\r\n pushingPC: any;\r\n userInfo: any;\r\n Arole = 0;\r\n isEditMode = false\r\n @ViewChild('dt', { static: false }) dt: Table;\r\n tableUpdate = false;\r\n apires: any;\r\n permittedCommoditiesOpts: any;\r\n packingGroups: any;\r\n hazardClasses: any;\r\n carTypes: any;\r\n dot_aar_classes: any;\r\n carBuilders: any;\r\n filteredCols: any[] = [];\r\n orgActiveCarsData: any = [];\r\n constructor(private _railFleetService: RailFleetService, private router: Router, private spinner: NgxSpinnerService, private dialog: MatDialog, private _toastr: ToastrService) { }\r\n\r\n ngOnInit() {\r\n this.getAllMasterData()\r\n this._railFleetService.GetFleetVsNextRegYr().subscribe((data) => console.log(data));\r\n this.userId = sessionStorage.getItem('userId');\r\n let role = sessionStorage.getItem('role');\r\n if (role != null && role != undefined && role != '') {\r\n if (role.includes('Admin')) {\r\n this.userAdmin = true;\r\n this.Arole = 1;\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n this.spinner.show();\r\n this.cols = [\r\n { field: 'railcarID', header: 'Railcar ID', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 1, selectedOptions: [], editMode: false },\r\n { field: 'carStatus', header: 'Car Status', options: [], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 2, selectedOptions: [], editMode: false },\r\n { field: 'dueTest', header: 'Due Test', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 3, selectedOptions: [], editMode: false },\r\n //{ field: 'currentRegCompleted', header: 'Current Reg.Completed(ALLT Data)', isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 4 },\r\n { field: 'originalRCID', header: 'Original RC ID', options: [], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 4, selectedOptions: [], editMode: false },\r\n { field: 'bu', header: 'BU', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 5, selectedOptions: [], editMode: false },\r\n { field: 'tcc', header: 'TCC', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 6, selectedOptions: [], editMode: false },\r\n { field: 'contract', header: 'Contract', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 7, selectedOptions: [], editMode: false },\r\n { field: 'fixedAsset', header: 'Fixed Asset', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 8, selectedOptions: [], editMode: false },\r\n { field: 'locationCode', header: 'Location Code', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 9, selectedOptions: [], editMode: false },\r\n { field: 'maintenancePlant', header: 'Maintenance Plant', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 10, selectedOptions: [], editMode: false },\r\n { field: 'assignedLocation', header: 'Assigned Location', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 11, selectedOptions: [], editMode: false },\r\n { field: 'maintenancePlantLocation', header: 'Maintenance Plant Location', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 12, selectedOptions: [], editMode: false },\r\n { field: 'fleet', header: 'Fleet', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 13, selectedOptions: [], editMode: false },\r\n\r\n { field: 'permittedCommodity', subfield: 'permittedcommodities', header: 'Permitted Commodities', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 14, selectedOptions: [], editMode: false },\r\n { field: 'packingGroup', header: 'Packing Group', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 15, selectedOptions: [], editMode: false },\r\n { field: 'hazardClass', header: 'Hazard Class', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 16, selectedOptions: [], editMode: false },\r\n //{ field: 'jacketed', header: 'Jacketed (SPECs data)', isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 16 },\r\n { field: 'carType', header: 'Car Type', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 17, selectedOptions: [], editMode: false },\r\n { field: 'originalCertofConstruction', header: 'Original Cert. of Construction', options: [], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 18, selectedOptions: [], editMode: false },\r\n { field: 'doT_AAR_Class', header: 'DOT/AAR Class', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 19, selectedOptions: [], editMode: false },\r\n { field: 'carBuilder', header: 'Car Builder', options: [], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 20, selectedOptions: [], editMode: false },\r\n { field: 'yearBuilt', header: 'Year Built', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 21, selectedOptions: [], editMode: false },\r\n { field: 'ageofCar', header: 'Age of Car', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 22, selectedOptions: [], editMode: false },\r\n { field: 'onHire', header: 'On Hire', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 23, selectedOptions: [], editMode: false },\r\n { field: 'owner', header: 'Owner', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 24, selectedOptions: [], editMode: false },\r\n { field: 'rider', header: 'Rider', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 25, selectedOptions: [], editMode: false },\r\n { field: 'effective', header: 'Effective', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 26, selectedOptions: [], editMode: false },\r\n { field: 'expiration', header: 'Expiration', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 27, selectedOptions: [], editMode: false },\r\n { field: 'monthlyDepreciation', header: 'Monthly Depreciation', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 28, selectedOptions: [], editMode: false },\r\n // { field: 'rent', header: 'Rent', isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 29 },\r\n // { field: 'rep_Maint', header: 'Rep & Maint.)', isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 30 },\r\n { field: 'rent', header: 'Monthly Rent', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 29, selectedOptions: [], editMode: false },\r\n { field: 'leaseTerm', header: 'Lease Term. Mns', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 30, selectedOptions: [], editMode: false },\r\n { field: 'term', header: 'Term. yr', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 31, selectedOptions: [], editMode: false },\r\n { field: 'tareWeightLBS', header: 'Tare Weight LBS', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 32, selectedOptions: [], editMode: false },\r\n { field: 'maxGrossWeight', header: 'Max Gross Weight', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 33, selectedOptions: [], editMode: false },\r\n { field: 'loadVolumn', header: 'Load Volumen', options: [], isShow: true, width: this.defaultWidth, isEditable: false, serialNo: 34, selectedOptions: [], editMode: false },\r\n { field: 'comments', header: 'Comments', options: [], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 35, selectedOptions: [], editMode: false },\r\n { field: 'buNotes', header: 'BU Notes', options: [], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 36, selectedOptions: [], editMode: false },\r\n // { field: 'release', header: 'Release',options:[], isShow: true, width: this.defaultWidth, isEditable: true, serialNo: 33,selectedOptions:[]},\r\n ];\r\n this.sortedCols = JSON.parse(JSON.stringify(this.cols));\r\n this.sortedCols = this.sortedCols.sort((a, b) => {\r\n return a.header > b.header ? 1 : -1;\r\n });\r\n this.sortedCols.forEach(element => {\r\n if (element.field != 'hazardClass' && element.field != 'packingGroup'\r\n && element.field != 'carStatus' && element.field != 'dueTest'\r\n && element.field != 'originalRCID' && element.field != 'permittedCommodity'\r\n && element.field != 'originalCertofConstruction' && element.field != 'carBuilder'\r\n && element.field != 'ageofCar' && element.field != 'onHire'\r\n && element.field != 'monthlyDepreciation' && element.field != 'term'\r\n )\r\n this.selectedCols.push(element);\r\n });\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n this.viewColHeight = (window.innerHeight - 190) + \"px\";\r\n this._railFleetService.getUserInfo(this.userId).subscribe(response => {\r\n this.userInfo = response;\r\n this.getallrailfleetData(this.userInfo[0].userID, this.Arole);\r\n })\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n\r\n doubleClickCheck(data, col) {\r\n if (this.userAdmin || col.field == 'buNotes') {\r\n this.orgActiveCarsData.forEach(x => {\r\n if (x.railFleetID != data.railFleetID)\r\n x.editMode = false\r\n })\r\n this.selectedCols.forEach(x => {\r\n if (x.field != col.field)\r\n x.editMode = false\r\n })\r\n let editData = this.orgActiveCarsData.find(x => x.railFleetID == data.railFleetID)\r\n let colEdit = this.selectedCols.find(x => x.field == col.field)\r\n\r\n if ((!data.editMode && !col.editMode) || (data.editMode && !col.editMode)) {\r\n editData.editMode = true\r\n colEdit.editMode = true\r\n editData.permittedCommodity = this.permittedCommoditiesEdit.filter(pc => data.permittedCommodity\r\n .find(selectedPc => selectedPc.permittedCommoditiesID === pc.permittedCommoditiesID));\r\n editData.hazardClassSelected = this.hazardClasses.find(hc => hc.hazardClassID === data.hazardClassID);\r\n editData.packinggroupSelected = this.packingGroups.find(hc => hc.packinggroup === data.packingGroup);\r\n editData.carbuilderSelected = this.carBuilders.find(hc => hc.carBuilderID === data.carBuilderID);\r\n }\r\n else if (data.editMode && col.editMode) {\r\n editData.editMode = false\r\n colEdit.editMode = false\r\n this.saveAll(data, col.field)\r\n }\r\n else {\r\n editData.editMode = true\r\n }\r\n\r\n } else {\r\n this._toastr.warning(\"Only admin users can edit.\");\r\n }\r\n }\r\n\r\n saveAll(railCar, col) {\r\n this.spinner.show();\r\n const payload = [];\r\n let railFleetClass = {}\r\n //single edit\r\n if (!this.selectedValues.length) {\r\n railFleetClass = this.generatePayLoad(railCar, railCar.comments, railCar.buNotes, railCar.originalCertofConstruction)\r\n payload.push(railFleetClass);\r\n }\r\n else {\r\n //multiple comment edit\r\n this.selectedValues.forEach(x => {\r\n railFleetClass = this.generatePayLoad(x, col == 'comments' ? railCar.comments : x.comments, col == 'buNotes' ? railCar.buNotes : x.buNotes, col == 'originalCertofConstruction' ? railCar.originalCertofConstruction : x.originalCertofConstruction)\r\n payload.push(railFleetClass);\r\n })\r\n }\r\n\r\n console.log(payload)\r\n this._railFleetService.updaterailBulkfleetdetails(payload).subscribe(response => {\r\n this.selectedValues = [];\r\n this.getallrailfleetData(this.userInfo[0].userID, this.Arole)\r\n });\r\n }\r\n\r\n validateNumber(value) {\r\n let numberExp = new RegExp(/^\\d*\\.?\\d*$/);\r\n return numberExp.test(value);\r\n }\r\n\r\n generatePayLoad(railCar, comments = '', buNotes = '', originalCertofConstruction = '') {\r\n let railComments, railBuNotes = '', railOriginalCertofConstruction = '';\r\n railComments = comments;\r\n railBuNotes = buNotes;\r\n railOriginalCertofConstruction = originalCertofConstruction;\r\n const railFleetClass = {\r\n railcarID: railCar.railcarID,\r\n carStatus: railCar.carStatus,\r\n dueTest: railCar.dueTest,\r\n nextRegYr: railCar.nextRegYr,\r\n currentRegCompleted: railCar.currentRegCompleted,\r\n originalRCID: railCar.originalRCID,\r\n bu: railCar.bu,\r\n buNotes: railBuNotes,\r\n tcc: railCar.tcc,\r\n contract: railCar.contract,\r\n fixedAsset: railCar.fixedAsset,\r\n locationCode: railCar.locationCode,\r\n sortField: railCar.sortField,\r\n maintenancePlant: railCar.maintenancePlant,\r\n assignedLocation: railCar.assignedLocation,\r\n fleet: railCar.fleet,\r\n // permittedCommodities: railCar.permittedCommodities,\r\n packingGroup: railCar.packinggroupSelected ? railCar.packinggroupSelected.packinggroup : null,\r\n hazardClass: railCar.hazardClassSelected ? railCar.hazardClassSelected.hazardclass : null,\r\n jacketed: railCar.jacketed,\r\n carType: railCar.carType,\r\n originalCertofConstruction: railOriginalCertofConstruction,\r\n doT_AAR_Class: railCar.doT_AAR_Class,\r\n carBuilder: railCar.carbuilderSelected ? railCar.carbuilderSelected.carbuilder : '',\r\n yearBuilt: railCar.yearBuilt,\r\n ageofCar: railCar.ageofCar,\r\n onHire: railCar.onHire,\r\n owner: railCar.owner,\r\n rider: railCar.rider,\r\n effective: railCar.effective,\r\n expiration: railCar.expiration,\r\n monthlyDepreciation: railCar.monthlyDepreciation,\r\n rent: railCar.rent,\r\n rep_Maint: railCar.rep_Maint,\r\n rentalAgreement: railCar.rentalAgreement.toString(),\r\n leaseTerm: railCar.leaseTerm,\r\n term: railCar.term,\r\n tareWeightLBS: railCar.tareWeightLBS,\r\n maxGrossWeight: railCar.maxGrossWeight,\r\n comments: railComments,\r\n release: railCar.release,\r\n lastUpdatedDate: railCar.lastUpdatedDate,\r\n permittedCommoditiesID: railCar.permittedCommoditiesID, //\r\n packingGroupID: railCar.packinggroupSelected ? railCar.packinggroupSelected.packingGroupID : null,\r\n hazardClassID: railCar.hazardClassSelected ? railCar.hazardClassSelected.hazardClassID : null,\r\n carBuilderID: railCar.carbuilderSelected ? railCar.carbuilderSelected.carBuilderID : null,\r\n modifiedBy: this.userId,\r\n permittedCommodity: railCar.permittedCommodity\r\n };\r\n return railFleetClass\r\n }\r\n\r\n doFilter(val, field, reset?) {\r\n if (reset) {\r\n this.filteredCols = [];\r\n } else if (field != \"\") {\r\n let existingFilter = false;\r\n this.filteredCols.forEach(fc => {\r\n if (fc.field == field) {\r\n fc.value = val;\r\n existingFilter = true;\r\n }\r\n });\r\n if (!existingFilter) {\r\n this.filteredCols.push({\r\n name: this.cols.find(c => c.field == field).header,\r\n field: field,\r\n value: val\r\n });\r\n }\r\n if (val.length == 0) {\r\n this.filteredCols = this.filteredCols.filter(fcs => fcs.field !== field);\r\n }\r\n }\r\n this.orgActiveCarsData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n if (this.filteredCols.length == 0) {\r\n this.updateMultiSelectDD(this.orgActiveCarsData, 0);\r\n } else {\r\n this.filteredCols.forEach((fc, index) => {\r\n let filteredData = [];\r\n fc.value.forEach(opt => {\r\n filteredData = [...filteredData, ...this.orgActiveCarsData.filter(ocd => ocd[fc.field] === opt)];\r\n });\r\n this.orgActiveCarsData = JSON.parse(JSON.stringify(filteredData));\r\n this.updateMultiSelectDD(this.orgActiveCarsData, index);\r\n });\r\n }\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n }\r\n\r\n checkTheKey(e, data, col) {\r\n console.log(e);\r\n if (e.keyCode === 27) {\r\n this.orgActiveCarsData.forEach(x => x.editMode = false)\r\n }\r\n if (e.keyCode === 13) {\r\n console.log(\"Clicked on Enter\");\r\n this.doubleClickCheck(data, col);\r\n }\r\n }\r\n\r\n tableFocusOut() {\r\n console.log(\"table focus out\")\r\n\r\n }\r\n\r\n updateMultiSelectDD(rowsData, index) {\r\n this.pushingPC = this.getMultiSelect(rowsData);\r\n this.permittedCommodities = [];\r\n this.pushingPC.forEach(element => {\r\n this.permittedCommodities.push({ label: element, value: element })\r\n });\r\n this.sortedCols.forEach(o => {\r\n const filteredCol = this.filteredCols.find(fc => fc.field === o.field);\r\n const filteredColIndex = this.filteredCols.indexOf(filteredCol);\r\n if ((filteredColIndex == -1 || filteredColIndex > index)) {\r\n o.options = [];\r\n this.getFilterObject(rowsData, o.field).forEach(filteredobj => {\r\n if (filteredobj == 'Blanks') o.options.push({ label: filteredobj, value: '' });\r\n else o.options.push({ label: filteredobj, value: filteredobj });\r\n });\r\n }\r\n });\r\n }\r\n\r\n onRemoveChip(event) {\r\n this.doFilter([], event.field);\r\n this.dt._columns.forEach(col => {\r\n if (col.field == event.field) col.selectedOptions = [];\r\n });\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n let selectedVal = [];\r\n if (this.dt) {\r\n if (localStorage.getItem('columns')) {\r\n this.selectedCols = JSON.parse(localStorage.getItem('columns'));\r\n this.sortedCols.forEach(element => {\r\n this.selectedCols.forEach(elm => {\r\n if (element.field === elm.field) {\r\n if (elm.selectedOptions.length != 0) {\r\n element.selectedOptions = elm.selectedOptions;\r\n selectedVal.push(element);\r\n } else {\r\n selectedVal.push(element);\r\n }\r\n\r\n }\r\n\r\n });\r\n });\r\n this.selectedCols = selectedVal;\r\n this.selectedCols.forEach(col => {\r\n if (col.field === 'permittedCommodity') {\r\n this.filter(col.selectedOptions)\r\n } else {\r\n this.dt.filter(col.selectedOptions, col.field, 'in');\r\n }\r\n });\r\n };\r\n this.sortColumns();\r\n }\r\n }\r\n ngAfterViewChecked(): void {\r\n let selectedVals = [];\r\n if (this.dt && this.tableUpdate) {\r\n this.tableUpdate = false;\r\n if (localStorage.getItem('columns')) {\r\n this.sortedCols.forEach(element => {\r\n this.selectedCols.forEach(elm => {\r\n if (element.field === elm.field) {\r\n selectedVals.push(element);\r\n }\r\n\r\n });\r\n });\r\n this.selectedCols = selectedVals;\r\n this.selectedCols.forEach(col => {\r\n if (col.field === 'permittedCommodity') {\r\n this.filter(col.selectedOptions)\r\n } else {\r\n this.dt.filter(col.selectedOptions, col.field, 'in');\r\n }\r\n });\r\n this.sortColumns();\r\n };\r\n }\r\n }\r\n onChangeDDValue(event) {\r\n\r\n let isRailcarID = event.value.find(x => x.field == 'railcarID') == undefined ? false : true;\r\n if (!isRailcarID) {\r\n this.sortedCols.forEach(element => {\r\n if (element.field == 'railcarID') {\r\n this.selectedCols.push(element);\r\n }\r\n });\r\n }\r\n\r\n if (event.value.length == 0) {\r\n this.sortedCols.forEach(element => {\r\n if (element.field == 'railcarID') {\r\n this.selectedCols.push(element);\r\n }\r\n });\r\n } else {\r\n if (event.itemValue && event.itemValue.field == 'railcarID') {\r\n if (isRailcarID) {\r\n this.sortedCols.forEach(element => {\r\n if (element.field == 'railcarID') {\r\n this.selectedCols.push(element);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n this.sortColumns();\r\n }\r\n\r\n showHideData(e) {\r\n this.cols = e;\r\n }\r\n customSort(event: SortEvent) {\r\n event.data.sort((data1, data2) => {\r\n let value1;\r\n let value2;\r\n if (event.field == 'fixedAsset' || event.field == 'contract' || event.field == 'monthlyDepreciation') {\r\n value1 = Number(data1[event.field]);\r\n value2 = Number(data2[event.field]);\r\n } else if (event.field == 'expiration' || event.field == 'effective' || event.field == 'lastUpdatedDate' || event.field == 'onHire') {\r\n value1 = data1[event.field] != '' ? Date.parse(data1[event.field]) : 0\r\n value2 = data2[event.field] != '' ? Date.parse(data2[event.field]) : 0\r\n }\r\n else {\r\n value1 = data1[event.field];\r\n value2 = data2[event.field];\r\n }\r\n\r\n let result = null;\r\n\r\n if (value1 == null && value2 != null)\r\n result = -1;\r\n else if (value1 != null && value2 == null)\r\n result = 1;\r\n else if (value1 == null && value2 == null)\r\n result = 0;\r\n else if (typeof value1 === 'string' && typeof value2 === 'string')\r\n result = value1.localeCompare(value2);\r\n else\r\n result = (value1 < value2) ? -1 : (value1 > value2) ? 1 : 0;\r\n\r\n return (event.order * result);\r\n });\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n }\r\n\r\n sortColumns() {\r\n this.selectedCols = this.selectedCols.sort((a, b) => {\r\n return a.serialNo - b.serialNo;\r\n })\r\n }\r\n getallrailfleetData(userId, role) {\r\n this.spinner.show();\r\n const pgPayLoad = {\r\n railFleetID: 0,\r\n userID: userId,\r\n isAdmin: role\r\n }\r\n this._railFleetService.getallrailfleetData(pgPayLoad).subscribe(response => {\r\n this.apiResp = response;\r\n this.activeCarsData = this.apiResp;\r\n this.activeCarsData.forEach(x => (x.editMode = false));\r\n this.orgActiveCarsData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n console.log(this.activeCarsData)\r\n this.filteredData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n this.pushingPC = this.getMultiSelect(this.activeCarsData);\r\n this.pushingPC.forEach(element => {\r\n this.permittedCommodities.push({ label: element, value: element })\r\n });\r\n console.log(this.permittedCommodities)\r\n this.sortedCols.forEach(o => {\r\n\r\n this.getFilterObject(this.activeCarsData, o.field).forEach(filteredobj => {\r\n if (o.options.filter(x => x.value == filteredobj).length == 0) {\r\n if (filteredobj == 'Blanks')\r\n o.options.push({ label: filteredobj, value: '' });\r\n else\r\n o.options.push({ label: filteredobj, value: filteredobj });\r\n }\r\n })\r\n });\r\n this.doFilter([], \"\");\r\n this.spinner.hide();\r\n })\r\n }\r\n getFilterObject(fullObj, key) {\r\n const uniqChk = [];\r\n let blanks = false;\r\n fullObj.filter((obj) => {\r\n if (!uniqChk.includes(obj[key])) {\r\n if (obj[key] !== null && obj[key] !== '')\r\n uniqChk.push(obj[key]);\r\n else if (!uniqChk.includes('Blanks')) {\r\n blanks = true;\r\n }\r\n }\r\n return obj;\r\n });\r\n const numericColumns = ['ageofCar', 'carBuilderID', 'contract', 'dueTest', 'fixedAsset', 'hazardClassID', 'leaseTerm', 'maxGrossWeight', 'packingGroupID', 'permittedCommoditiesID', 'railFleetID', 'rent', 'rentalAgreement', 'rep_Maint', 'tareWeightLBS', 'term', 'yearBuilt', 'loadVolumn']\r\n const dateColumns = ['effective', 'expiration', 'lastUpdatedDate', 'onHire'];\r\n if (dateColumns.includes(key)) {\r\n uniqChk.sort(function (a, b) {\r\n //const aComps = a.split(\"/\");\r\n //const bComps = b.split(\"/\");\r\n let aDate = new Date(a);\r\n let bDate = new Date(b);\r\n return aDate.getTime() - bDate.getTime();\r\n });\r\n } else if (numericColumns.includes(key)) {\r\n uniqChk.sort((a, b) => {\r\n return ((Number(a) < Number(b)) ? -1 : 1)\r\n });\r\n } else {\r\n uniqChk.sort();\r\n }\r\n if (blanks) uniqChk.unshift('Blanks');\r\n return uniqChk;\r\n }\r\n getMultiSelect(fullObj) {\r\n const uniqChk = [];\r\n fullObj.forEach(element => {\r\n element.permittedCommodity.forEach(b => {\r\n if (!uniqChk.includes(b.permittedcommodities)) {\r\n if (b.permittedcommodities != null && b.permittedcommodities !== '')\r\n uniqChk.push(b.permittedcommodities);\r\n }\r\n });\r\n });\r\n return uniqChk;\r\n }\r\n\r\n onnSelectRow(rowData, type) {\r\n console.log(\"select row\", rowData, type)\r\n this.router.navigate(['rail-car/info'], { state: { data: { cols: this.cols, rowData: rowData, selectionType: type } } });\r\n }\r\n filterData(value, filter) {\r\n if (value == '') {\r\n if (this.filteredFields.length) {\r\n this.filteredFields = this.filteredFields.filter(ff => ff.fieldName !== filter);\r\n } else {\r\n this.filteredFields = [];\r\n }\r\n } else {\r\n let foundField = this.filteredFields.filter(ff => ff.fieldName == filter);\r\n if (foundField.length) {\r\n this.filteredFields.forEach(ff => {\r\n if (ff.fieldName == filter) {\r\n ff.value = value;\r\n }\r\n })\r\n } else {\r\n let fieldObj = {\r\n fieldName: filter,\r\n value: value\r\n };\r\n this.filteredFields.push(fieldObj);\r\n }\r\n }\r\n if (this.filteredFields.length) {\r\n let temp = this.activeCarsData;\r\n this.filteredFields.forEach(ff => {\r\n temp = temp.filter(fd => fd[ff.fieldName].toUpperCase().includes(ff.value.toUpperCase()));\r\n })\r\n this.filteredData = temp;\r\n } else {\r\n this.filteredData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n }\r\n this.tempFilteredData = JSON.parse(JSON.stringify(this.filteredData));\r\n }\r\n\r\n filter(value) {\r\n var record = [];\r\n let temp = this.filteredData;\r\n if (value.length !== 0) {\r\n temp.forEach(element => {\r\n element.permittedCommodity.forEach(pc => {\r\n\r\n if (value.includes(pc.permittedcommodities)) {\r\n if (!record.includes(element)) {\r\n if (element !== null && element !== '') {\r\n record.push(element);\r\n }\r\n }\r\n }\r\n });\r\n });\r\n this.activeCarsData = record\r\n } else {\r\n this.activeCarsData = temp;\r\n }\r\n return this.activeCarsData;\r\n }\r\n showAllSpecsDetails(element: any) {\r\n this._railFleetService.emailAllSpecs(element.railcarID).subscribe((res: any) => {\r\n this.apires = res;\r\n const blob = this.b64toBlob(this.apires, 'application/pdf');\r\n const blobUrl = URL.createObjectURL(blob);\r\n window.open(blobUrl, '_blank');\r\n })\r\n }\r\n b64toBlob = (b64Data, contentType = '', sliceSize = 512) => {\r\n const byteCharacters = atob(b64Data);\r\n const byteArrays = [];\r\n\r\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\r\n const slice = byteCharacters.slice(offset, offset + sliceSize);\r\n\r\n const byteNumbers = new Array(slice.length);\r\n for (let i = 0; i < slice.length; i++) {\r\n byteNumbers[i] = slice.charCodeAt(i);\r\n }\r\n\r\n const byteArray = new Uint8Array(byteNumbers);\r\n byteArrays.push(byteArray);\r\n }\r\n\r\n const blob = new Blob(byteArrays, { type: contentType });\r\n return blob;\r\n }\r\n\r\n exportExcel() {\r\n let data = this.dt.hasFilter() ? this.dt.filteredValue : this.dt.value;\r\n let tFilteredData = JSON.parse(JSON.stringify(data));\r\n tFilteredData.forEach(ac => {\r\n let pcValue = \"\";\r\n if (ac.permittedCommodity.length > 0) {\r\n ac.permittedCommodity.forEach((pc, index) => {\r\n pcValue = pcValue + pc.permittedcommodities + (index < ac.permittedCommodity.length - 1 ? \",\" : '')\r\n });\r\n ac.permittedCommodity = pcValue;\r\n }\r\n })\r\n this.exportAsExcelFile(tFilteredData, 'RailCarFleet', 'sheet1', this.selectedCols)\r\n }\r\n exportAsExcelFile(json: any[], excelFileName: string, sheetName: string, columnValues: any[]): void {\r\n var fieldValues: any[] = columnValues.map(field => field.field);\r\n var headerValues: string[] = columnValues.map(header => header.header);\r\n var displayedJson: any[] = [];\r\n if (json != null && json.length > 0) {\r\n for (let originalValue of json) {\r\n var jsonObject: any = {};\r\n for (let fieldValue of fieldValues) {\r\n jsonObject[fieldValue] = originalValue[fieldValue];\r\n }\r\n var jsonString = JSON.stringify(jsonObject);\r\n displayedJson.push(JSON.parse(jsonString));\r\n }\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(displayedJson);\r\n var range = XLSX.utils.decode_range(worksheet['!ref']);\r\n for (var C = range.s.c; C <= range.e.c; ++C) {\r\n var address = XLSX.utils.encode_col(C) + \"1\"; // <-- first row, column number C\r\n if (!worksheet[address]) continue;\r\n worksheet[address] = {\r\n v: headerValues[C],\r\n t: 's',\r\n s: {\r\n alignment: { textRotation: 90 },\r\n font: { bold: true }\r\n }\r\n };\r\n }\r\n XLSX.utils.sheet_add_aoa(worksheet, [[]], { origin: -1 });\r\n const workbook: XLSX.WorkBook = { Sheets: { [sheetName]: worksheet }, SheetNames: [sheetName] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n }\r\n saveAsExcelFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], { type: EXCEL_TYPE });\r\n FileSaver.saveAs(data, fileName + EXCEL_EXTENSION);\r\n }\r\n editBulk() {\r\n this.bulkEdit = true;\r\n }\r\n reset(dt) {\r\n // if (localStorage.getItem('columns')) {\r\n\r\n this.selectedCols.forEach(col => {\r\n if (col.field === 'permittedCommodity') {\r\n col.selectedOptions = [];\r\n this.filter([]);\r\n } else {\r\n col.selectedOptions = [];\r\n }\r\n });\r\n // }\r\n localStorage.clear();\r\n\r\n dt.reset();\r\n this.filteredCols = [];\r\n this.selectedCols = [];\r\n this.sortedCols.forEach(element => {\r\n if (element.field != 'hazardClass' && element.field != 'packingGroup'\r\n && element.field != 'carStatus' && element.field != 'dueTest'\r\n && element.field != 'originalRCID' && element.field != 'permittedCommodity'\r\n && element.field != 'originalCertofConstruction' && element.field != 'carBuilder'\r\n && element.field != 'ageofCar' && element.field != 'onHire'\r\n && element.field != 'monthlyDepreciation' && element.field != 'term'\r\n )\r\n this.selectedCols.push(element);\r\n });\r\n localStorage.setItem('columns', JSON.stringify(this.selectedCols));\r\n this.sortColumns();\r\n this.doFilter([], '', true);\r\n this.updateMultiSelectDD(this.orgActiveCarsData, 0);\r\n }\r\n bulkEditStatus(status) {\r\n this.bulkEdit = status;\r\n if (!this.bulkEdit) {\r\n this.tableUpdate = true;\r\n }\r\n this.getallrailfleetData(this.userInfo[0].userID, this.Arole);\r\n // const pgPayLoad = {\r\n // railFleetID: 0,\r\n // userID: this.userInfo[0].userID,\r\n // isAdmin: this.Arole\r\n // }\r\n // this._railFleetService.getallrailfleetData(pgPayLoad).subscribe(response => {\r\n // this.apiResp = response;\r\n // this.activeCarsData = this.apiResp;\r\n // this.filteredData = JSON.parse(JSON.stringify(this.activeCarsData));\r\n // this.pushingPC = this.getMultiSelect(this.activeCarsData);\r\n // })\r\n this.selectedValues = [];\r\n }\r\n\r\n permittedCommoditiesEdit = []\r\n getAllMasterData() {\r\n this._railFleetService.getRailMasterData().subscribe(response => {\r\n this.masterAPIResp = response;\r\n this.permittedCommoditiesOpts = this.masterAPIResp.permittedCommoditiesOpts;\r\n if (this.permittedCommoditiesOpts != undefined)\r\n this.permittedCommoditiesOpts.forEach(pc => {\r\n // pc.railcarID = this.rowData.railcarID;\r\n pc.permittedCommoditiesDesc = null;\r\n })\r\n this.permittedCommoditiesEdit = this.masterAPIResp.permittedCommodities;\r\n this.permittedCommoditiesEdit.forEach(pc => {\r\n // pc.railcarID = this.rowData.railcarID;\r\n pc.permittedCommoditiesDesc = null;\r\n })\r\n this.packingGroups = this.masterAPIResp.packagingGroups;\r\n this.hazardClasses = this.masterAPIResp.hazardClasses;\r\n console.log(this.packingGroups, this.hazardClasses)\r\n this.carTypes = this.masterAPIResp.carTypes;\r\n this.dot_aar_classes = this.masterAPIResp.dot_aar_classes;\r\n this.carBuilders = this.masterAPIResp.carBuilders;\r\n if (this.selectedValues != undefined)\r\n this.selectedValues.forEach((val, i) => {\r\n this.selectedValues[i].permittedCommodity = this.permittedCommoditiesOpts.filter(pc => this.selectedValues[i].permittedCommodity\r\n .find(selectedPc => selectedPc.permittedCommoditiesID === pc.permittedCommoditiesID));\r\n this.selectedValues[i].hazardClassSelected = this.hazardClasses.find(hc => hc.hazardClassID === this.selectedValues[i].hazardClassID);\r\n this.selectedValues[i].packinggroupSelected = this.packingGroups.find(hc => hc.packinggroup === this.selectedValues[i].packingGroup);\r\n this.selectedValues[i].carbuilderSelected = this.carBuilders.find(hc => hc.carBuilderID === this.selectedValues[i].carBuilderID);\r\n })\r\n })\r\n }\r\n}\r\n","export default \".header-label {\\r\\n font-size: 20px;\\r\\n font-weight: 600;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top .ui-tabview-nav {\\r\\n border-bottom: none !important;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top .ui-tabview-nav, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav, body .ui-tabview.ui-tabview-left .ui-tabview-nav, body .ui-tabview.ui-tabview-right .ui-tabview-nav {\\r\\n border-bottom: 2px solid black !important; \\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top>.ui-tabview-nav {\\r\\n padding: 0px !important;\\r\\n z-index: 1200;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top .ui-tabview-nav li.ui-state-active, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li.ui-state-active, body .ui-tabview.ui-tabview-left .ui-tabview-nav li.ui-state-active, body .ui-tabview.ui-tabview-right .ui-tabview-nav li.ui-state-active {\\r\\n color: black !important;\\r\\n background-color: white !important;\\r\\n border: 1px solid black !important;\\r\\n border-bottom: 3px solid white !important;\\r\\n border-top-left-radius: 15px !important;\\r\\n border-top-right-radius: 15px !important;\\r\\n margin-bottom: 0px !important;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top .ui-tabview-nav li, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li, body .ui-tabview.ui-tabview-left .ui-tabview-nav li, body .ui-tabview.ui-tabview-right .ui-tabview-nav li {\\r\\n border: none !important;\\r\\n background-color: none !important;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top>.ui-tabview-nav li {\\r\\n border-bottom: none !important;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top .ui-tabview-nav li.ui-state-active a, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li.ui-state-active a, body .ui-tabview.ui-tabview-left .ui-tabview-nav li.ui-state-active a, body .ui-tabview.ui-tabview-right .ui-tabview-nav li.ui-state-active a {\\r\\n color: black !important;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top .ui-tabview-nav li a, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li a, body .ui-tabview.ui-tabview-left .ui-tabview-nav li a, body .ui-tabview.ui-tabview-right .ui-tabview-nav li a {\\r\\n padding: 12px !important;\\r\\n}\\r\\n#railCar .ui-tabview .ui-tabview-panels {\\r\\n border: none !important;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top .ui-tabview-nav li, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li, body .ui-tabview.ui-tabview-left .ui-tabview-nav li, body .ui-tabview.ui-tabview-right .ui-tabview-nav li {\\r\\n background-color: white !important;\\r\\n}\\r\\n#railCar .ui-tabview.ui-tabview-top .ui-tabview-nav li:not(.ui-state-active):not(.ui-state-disabled):hover, body .ui-tabview.ui-tabview-bottom .ui-tabview-nav li:not(.ui-state-active):not(.ui-state-disabled):hover, body .ui-tabview.ui-tabview-left .ui-tabview-nav li:not(.ui-state-active):not(.ui-state-disabled):hover, body .ui-tabview.ui-tabview-right .ui-tabview-nav li:not(.ui-state-active):not(.ui-state-disabled):hover {\\r\\n background-color: whitesmoke !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9yYWlsLWNhci1pbmZvcm1hdGlvbi9yYWlsLWNhci1pbmZvcm1hdGlvbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksZUFBZTtJQUNmLGdCQUFnQjtBQUNwQjtBQUNBO0lBQ0ksOEJBQThCO0FBQ2xDO0FBQ0E7SUFDSSx5Q0FBeUM7QUFDN0M7QUFDQTtJQUNJLHVCQUF1QjtJQUN2QixhQUFhO0FBQ2pCO0FBQ0E7SUFDSSx1QkFBdUI7SUFDdkIsa0NBQWtDO0lBQ2xDLGtDQUFrQztJQUNsQyx5Q0FBeUM7SUFDekMsdUNBQXVDO0lBQ3ZDLHdDQUF3QztJQUN4Qyw2QkFBNkI7QUFDakM7QUFDQTtJQUNJLHVCQUF1QjtJQUN2QixpQ0FBaUM7QUFDckM7QUFDQTtJQUNJLDhCQUE4QjtBQUNsQztBQUNBO0lBQ0ksdUJBQXVCO0FBQzNCO0FBQ0E7SUFDSSx3QkFBd0I7QUFDNUI7QUFDQTtJQUNJLHVCQUF1QjtBQUMzQjtBQUNBO0lBQ0ksa0NBQWtDO0FBQ3RDO0FBQ0E7SUFDSSx1Q0FBdUM7QUFDM0MiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3JhaWwtY2FyLWluZm9ybWF0aW9uL3JhaWwtY2FyLWluZm9ybWF0aW9uLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuaGVhZGVyLWxhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuI3JhaWxDYXIgLnVpLXRhYnZpZXcudWktdGFidmlldy10b3AgLnVpLXRhYnZpZXctbmF2IHtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG4jcmFpbENhciAudWktdGFidmlldy51aS10YWJ2aWV3LXRvcCAudWktdGFidmlldy1uYXYsIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1ib3R0b20gLnVpLXRhYnZpZXctbmF2LCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYsIGJvZHkgLnVpLXRhYnZpZXcudWktdGFidmlldy1yaWdodCAudWktdGFidmlldy1uYXYge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGJsYWNrICFpbXBvcnRhbnQ7IFxyXG59XHJcbiNyYWlsQ2FyIC51aS10YWJ2aWV3LnVpLXRhYnZpZXctdG9wPi51aS10YWJ2aWV3LW5hdiB7XHJcbiAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcclxuICAgIHotaW5kZXg6IDEyMDA7XHJcbn1cclxuI3JhaWxDYXIgLnVpLXRhYnZpZXcudWktdGFidmlldy10b3AgLnVpLXRhYnZpZXctbmF2IGxpLnVpLXN0YXRlLWFjdGl2ZSwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LWJvdHRvbSAudWktdGFidmlldy1uYXYgbGkudWktc3RhdGUtYWN0aXZlLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYgbGkudWktc3RhdGUtYWN0aXZlLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctcmlnaHQgLnVpLXRhYnZpZXctbmF2IGxpLnVpLXN0YXRlLWFjdGl2ZSB7XHJcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjayAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTVweCAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxDYXIgLnVpLXRhYnZpZXcudWktdGFidmlldy10b3AgLnVpLXRhYnZpZXctbmF2IGxpLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctYm90dG9tIC51aS10YWJ2aWV3LW5hdiBsaSwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LWxlZnQgLnVpLXRhYnZpZXctbmF2IGxpLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctcmlnaHQgLnVpLXRhYnZpZXctbmF2IGxpIHtcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyIC51aS10YWJ2aWV3LnVpLXRhYnZpZXctdG9wPi51aS10YWJ2aWV3LW5hdiBsaSB7XHJcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxDYXIgLnVpLXRhYnZpZXcudWktdGFidmlldy10b3AgLnVpLXRhYnZpZXctbmF2IGxpLnVpLXN0YXRlLWFjdGl2ZSBhLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctYm90dG9tIC51aS10YWJ2aWV3LW5hdiBsaS51aS1zdGF0ZS1hY3RpdmUgYSwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LWxlZnQgLnVpLXRhYnZpZXctbmF2IGxpLnVpLXN0YXRlLWFjdGl2ZSBhLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctcmlnaHQgLnVpLXRhYnZpZXctbmF2IGxpLnVpLXN0YXRlLWFjdGl2ZSBhIHtcclxuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsQ2FyIC51aS10YWJ2aWV3LnVpLXRhYnZpZXctdG9wIC51aS10YWJ2aWV3LW5hdiBsaSBhLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctYm90dG9tIC51aS10YWJ2aWV3LW5hdiBsaSBhLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYgbGkgYSwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LXJpZ2h0IC51aS10YWJ2aWV3LW5hdiBsaSBhIHtcclxuICAgIHBhZGRpbmc6IDEycHggIWltcG9ydGFudDtcclxufVxyXG4jcmFpbENhciAudWktdGFidmlldyAudWktdGFidmlldy1wYW5lbHMge1xyXG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxDYXIgLnVpLXRhYnZpZXcudWktdGFidmlldy10b3AgLnVpLXRhYnZpZXctbmF2IGxpLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctYm90dG9tIC51aS10YWJ2aWV3LW5hdiBsaSwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LWxlZnQgLnVpLXRhYnZpZXctbmF2IGxpLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctcmlnaHQgLnVpLXRhYnZpZXctbmF2IGxpIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxDYXIgLnVpLXRhYnZpZXcudWktdGFidmlldy10b3AgLnVpLXRhYnZpZXctbmF2IGxpOm5vdCgudWktc3RhdGUtYWN0aXZlKTpub3QoLnVpLXN0YXRlLWRpc2FibGVkKTpob3ZlciwgYm9keSAudWktdGFidmlldy51aS10YWJ2aWV3LWJvdHRvbSAudWktdGFidmlldy1uYXYgbGk6bm90KC51aS1zdGF0ZS1hY3RpdmUpOm5vdCgudWktc3RhdGUtZGlzYWJsZWQpOmhvdmVyLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctbGVmdCAudWktdGFidmlldy1uYXYgbGk6bm90KC51aS1zdGF0ZS1hY3RpdmUpOm5vdCgudWktc3RhdGUtZGlzYWJsZWQpOmhvdmVyLCBib2R5IC51aS10YWJ2aWV3LnVpLXRhYnZpZXctcmlnaHQgLnVpLXRhYnZpZXctbmF2IGxpOm5vdCgudWktc3RhdGUtYWN0aXZlKTpub3QoLnVpLXN0YXRlLWRpc2FibGVkKTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZXNtb2tlICFpbXBvcnRhbnQ7XHJcbn0iXX0= */\"","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-rail-car-information',\r\n templateUrl: './rail-car-information.component.html',\r\n styleUrls: ['./rail-car-information.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class RailCarInformationComponent implements OnInit {\r\n dropdownList = [];\r\n selectedItems = [];\r\n dropdownSettings = {};\r\n userId: any;\r\n constructor(private router: Router, private _service: RailFleetService, private _spinner: NgxSpinnerService,) { }\r\n\r\n ngOnInit() {\r\n this.userId = sessionStorage.getItem('userId');\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n onItemSelect(item: any) {\r\n // console.log(item);\r\n // console.log(this.selectedItems);\r\n }\r\n OnItemDeSelect(item: any) {\r\n // console.log(item);\r\n // console.log(this.selectedItems);\r\n }\r\n onSelectAll(items: any) {\r\n // console.log(items);\r\n }\r\n onDeSelectAll(items: any) {\r\n // console.log(items);\r\n }\r\n}\r\n","export default \"#railInfo .not-activ-btn {\\r\\n background-color: #424549;\\r\\n float: left;\\r\\n width: 75px;\\r\\n border-radius: 5px;\\r\\n color: white;\\r\\n}\\r\\n#railInfo .activ-btn {\\r\\n background-color: #004890;\\r\\n float: left;\\r\\n width: 75px;\\r\\n border-radius: 5px;\\r\\n margin-left: 20px;\\r\\n color: white;\\r\\n}\\r\\n#railInfo .grid-btn {\\r\\n background-color: #004890;\\r\\n float: left;\\r\\n width: auto;\\r\\n border-radius: 5px;\\r\\n margin-right: 10px;\\r\\n color: white;\\r\\n}\\r\\n#railInfo .edit-btn {\\r\\n background-color: #004890;\\r\\n float: right;\\r\\n width: auto;\\r\\n border-radius: 5px;\\r\\n margin-left: 15px;\\r\\n color: white;\\r\\n}\\r\\n.cust-label {\\r\\n font-weight: 500;\\r\\n text-align: end;\\r\\n}\\r\\n.field-label {\\r\\n font-weight: 400;\\r\\n margin-bottom: 5px;\\r\\n}\\r\\n#railInfo .form-control:focus {\\r\\n background-color: #e1f0ff !important;\\r\\n border-color: #004890 !important;\\r\\n box-shadow: 0 0 0.2rem rgb(117 70 70 / 25%) !important;\\r\\n}\\r\\n#railInfo .ui-dropdown-panel .ui-dropdown-items .ui-dropdown-item.ui-state-highlight, body .ui-dropdown-panel .ui-dropdown-items .ui-dropdown-item-group.ui-state-highlight {\\r\\n color: white !important;\\r\\n background-color: #004890 !important;\\r\\n}\\r\\n#railInfo .ui-dropdown-panel .ui-dropdown-items .ui-dropdown-item:not(.ui-state-highlight):not(.ui-state-disabled):hover, body .ui-dropdown-panel .ui-dropdown-items .ui-dropdown-item-group:not(.ui-state-highlight):not(.ui-state-disabled):hover {\\r\\n background-color: #e1f0ff !important;\\r\\n color: #004890 !important;\\r\\n}\\r\\n#railInfo .ui-dropdown {\\r\\n width: 100% !important;\\r\\n}\\r\\n#railInfo .ui-button {\\r\\n color: white !important;\\r\\n background-color: #004890 !important;\\r\\n border-color: #e1f0ff !important;\\r\\n}\\r\\n#railInfo .ui-datepicker table td > a.ui-state-active, body .ui-datepicker table td > span.ui-state-active {\\r\\n color: white !important;\\r\\n background-color: #004890 !important;\\r\\n}\\r\\n#railInfo .ui-datepicker:not(.ui-state-disabled) table td a:not(.ui-state-active):not(.ui-state-highlight):hover {\\r\\n background-color: #e1f0ff !important;\\r\\n}\\r\\n#railInfo .ui-button:enabled:focus {\\r\\n box-shadow: 0 0 0.2rem rgb(117 70 70 / 25%) !important;\\r\\n}\\r\\n#railInfo .ui-inputtext:enabled:focus:not(.ui-state-error) {\\r\\n border-color: #004890 !important;\\r\\n}\\r\\n#railInfo .ui-dropdown-empty-message {\\r\\n visibility: hidden;\\r\\n}\\r\\n#railInfo .ui-dropdown-empty-message::after {\\r\\n content: 'Add New Value' !important;\\r\\n visibility: visible;\\r\\n background-color: #004890 !important;\\r\\n color: #e1f0ff !important;\\r\\n}\\r\\n#railInfo .ui-multiselect {\\r\\n width: 100% !important;\\r\\n}\\r\\n#railInfo .ui-listbox {\\r\\n width: 100% !important;\\r\\n overflow: scroll;\\r\\n}\\r\\n#railInfo .cust-btn {\\r\\n margin-top: 10px;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n margin-left: 15px;\\r\\n color: #e1f0ff;\\r\\n border-radius: 5px;\\r\\n}\\r\\n.err {\\r\\n color: red;\\r\\n font-size: 14px;\\r\\n}\\r\\n#railInfo .ui-dialog {\\r\\n width: 30% !important;\\r\\n overflow: hidden;\\r\\n z-index: 9999 !important;\\r\\n}\\r\\n#railInfo .ui-dialog .ui-dialog-footer {\\r\\n height: 60px !important;\\r\\n}\\r\\n#railInfo .ui-dialog .ui-dialog-content {\\r\\n overflow: hidden !important;\\r\\n}\\r\\n.backdrop {\\r\\n background-color:rgba(0,0,0,0.83);\\r\\n position:fixed;\\r\\n top:0;\\r\\n left:0;\\r\\n width:100%;\\r\\n height:100vh;\\r\\n z-index: 9998;\\r\\n}\\r\\n#railInfo .addIcon {\\r\\n font-size: 1.5em;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n color: white;\\r\\n border-radius: 5px;\\r\\n padding: 3px;\\r\\n}\\r\\n/* #railInfo .ui-multiselect .ui-multiselect-panel {\\r\\n left: 0px !important;\\r\\n right: 0px !important;\\r\\n} */\\r\\n#railInfo .ui-multiselect-panel .ui-multiselect-items .ui-multiselect-item.ui-state-highlight {\\r\\n color: black !important;\\r\\n background-color: white !important;\\r\\n}\\r\\n#railInfo .ui-chkbox .ui-chkbox-box.ui-state-active {\\r\\n border-color: #004890 !important;\\r\\n background-color: #004890 !important;\\r\\n color: #ffffff !important;\\r\\n}\\r\\n@media screen and (min-width: 320px) and (max-width: 480px) {\\r\\n .cust-label {\\r\\n font-weight: 500;\\r\\n text-align: start;\\r\\n }\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9yYWlsLWNhci1tb2RpZnkvcmFpbC1jYXItbW9kaWZ5LmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSx5QkFBeUI7SUFDekIsV0FBVztJQUNYLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsWUFBWTtBQUNoQjtBQUNBO0lBQ0kseUJBQXlCO0lBQ3pCLFdBQVc7SUFDWCxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixZQUFZO0FBQ2hCO0FBQ0E7SUFDSSx5QkFBeUI7SUFDekIsV0FBVztJQUNYLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLFlBQVk7QUFDaEI7QUFDQTtJQUNJLHlCQUF5QjtJQUN6QixZQUFZO0lBQ1osV0FBVztJQUNYLGtCQUFrQjtJQUNsQixpQkFBaUI7SUFDakIsWUFBWTtBQUNoQjtBQUNBO0lBQ0ksZ0JBQWdCO0lBQ2hCLGVBQWU7QUFDbkI7QUFDQTtJQUNJLGdCQUFnQjtJQUNoQixrQkFBa0I7QUFDdEI7QUFDQTtFQUNFLG9DQUFvQztFQUNwQyxnQ0FBZ0M7RUFDaEMsdURBQXVEO0FBQ3pEO0FBQ0E7RUFDRSx1QkFBdUI7RUFDdkIsb0NBQW9DO0FBQ3RDO0FBQ0E7SUFDSSxvQ0FBb0M7SUFDcEMseUJBQXlCO0FBQzdCO0FBQ0E7SUFDSSxzQkFBc0I7QUFDMUI7QUFDQTtJQUNJLHVCQUF1QjtJQUN2QixvQ0FBb0M7SUFDcEMsZ0NBQWdDO0FBQ3BDO0FBQ0E7SUFDSSx1QkFBdUI7SUFDdkIsb0NBQW9DO0FBQ3hDO0FBQ0E7SUFDSSxxQ0FBcUM7QUFDekM7QUFDQTtJQUNJLHVEQUF1RDtBQUMzRDtBQUNBO0lBQ0ksZ0NBQWdDO0FBQ3BDO0FBQ0E7SUFDSSxrQkFBa0I7QUFDdEI7QUFDQTtJQUNJLG1DQUFtQztJQUNuQyxtQkFBbUI7SUFDbkIsb0NBQW9DO0lBQ3BDLHlCQUF5QjtBQUM3QjtBQUNBO0lBQ0ksc0JBQXNCO0FBQzFCO0FBQ0E7SUFDSSxzQkFBc0I7SUFDdEIsZ0JBQWdCO0FBQ3BCO0FBQ0E7SUFDSSxnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixpQkFBaUI7SUFDakIsY0FBYztJQUNkLGtCQUFrQjtBQUN0QjtBQUNBO0lBQ0ksVUFBVTtJQUNWLGVBQWU7QUFDbkI7QUFDQTtJQUNJLHFCQUFxQjtJQUNyQixnQkFBZ0I7SUFDaEIsd0JBQXdCO0FBQzVCO0FBRUE7SUFDSSx1QkFBdUI7QUFDM0I7QUFFQTtJQUNJLDJCQUEyQjtBQUMvQjtBQUVBO0lBQ0ksaUNBQWlDO0lBQ2pDLGNBQWM7SUFDZCxLQUFLO0lBQ0wsTUFBTTtJQUNOLFVBQVU7SUFDVixZQUFZO0lBQ1osYUFBYTtBQUNqQjtBQUVBO0lBQ0ksZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZix5QkFBeUI7SUFDekIsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQixZQUFZO0FBQ2hCO0FBQ0E7OztHQUdHO0FBQ0g7SUFDSSx1QkFBdUI7SUFDdkIsa0NBQWtDO0FBQ3RDO0FBQ0E7SUFDSSxnQ0FBZ0M7SUFDaEMsb0NBQW9DO0lBQ3BDLHlCQUF5QjtBQUM3QjtBQUNBO0lBQ0k7UUFDSSxnQkFBZ0I7UUFDaEIsaUJBQWlCO0lBQ3JCO0FBQ0oiLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3JhaWwtY2FyLW1vZGlmeS9yYWlsLWNhci1tb2RpZnkuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIiNyYWlsSW5mbyAubm90LWFjdGl2LWJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDI0NTQ5O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogNzVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG4jcmFpbEluZm8gLmFjdGl2LWJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogNzVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG59XHJcbiNyYWlsSW5mbyAuZ3JpZC1idG4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbn1cclxuI3JhaWxJbmZvIC5lZGl0LWJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG4uY3VzdC1sYWJlbCB7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgdGV4dC1hbGlnbjogZW5kO1xyXG59XHJcbi5maWVsZC1sYWJlbCB7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcbiNyYWlsSW5mbyAuZm9ybS1jb250cm9sOmZvY3VzIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFmMGZmICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogIDAgMCAwLjJyZW0gcmdiKDExNyA3MCA3MCAvIDI1JSkgIWltcG9ydGFudDtcclxufVxyXG4jcmFpbEluZm8gLnVpLWRyb3Bkb3duLXBhbmVsIC51aS1kcm9wZG93bi1pdGVtcyAudWktZHJvcGRvd24taXRlbS51aS1zdGF0ZS1oaWdobGlnaHQsIGJvZHkgLnVpLWRyb3Bkb3duLXBhbmVsIC51aS1kcm9wZG93bi1pdGVtcyAudWktZHJvcGRvd24taXRlbS1ncm91cC51aS1zdGF0ZS1oaWdobGlnaHQge1xyXG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTAgIWltcG9ydGFudDtcclxufVxyXG4jcmFpbEluZm8gLnVpLWRyb3Bkb3duLXBhbmVsIC51aS1kcm9wZG93bi1pdGVtcyAudWktZHJvcGRvd24taXRlbTpub3QoLnVpLXN0YXRlLWhpZ2hsaWdodCk6bm90KC51aS1zdGF0ZS1kaXNhYmxlZCk6aG92ZXIsIGJvZHkgLnVpLWRyb3Bkb3duLXBhbmVsIC51aS1kcm9wZG93bi1pdGVtcyAudWktZHJvcGRvd24taXRlbS1ncm91cDpub3QoLnVpLXN0YXRlLWhpZ2hsaWdodCk6bm90KC51aS1zdGF0ZS1kaXNhYmxlZCk6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UxZjBmZiAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICMwMDQ4OTAgIWltcG9ydGFudDtcclxufVxyXG4jcmFpbEluZm8gLnVpLWRyb3Bkb3duIHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxJbmZvIC51aS1idXR0b24ge1xyXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICNlMWYwZmYgIWltcG9ydGFudDtcclxufVxyXG4jcmFpbEluZm8gLnVpLWRhdGVwaWNrZXIgdGFibGUgdGQgPiBhLnVpLXN0YXRlLWFjdGl2ZSwgYm9keSAudWktZGF0ZXBpY2tlciB0YWJsZSB0ZCA+IHNwYW4udWktc3RhdGUtYWN0aXZlIHtcclxuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG59XHJcbiNyYWlsSW5mbyAudWktZGF0ZXBpY2tlcjpub3QoLnVpLXN0YXRlLWRpc2FibGVkKSB0YWJsZSB0ZCBhOm5vdCgudWktc3RhdGUtYWN0aXZlKTpub3QoLnVpLXN0YXRlLWhpZ2hsaWdodCk6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogICNlMWYwZmYgIWltcG9ydGFudDtcclxufVxyXG4jcmFpbEluZm8gLnVpLWJ1dHRvbjplbmFibGVkOmZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6ICAwIDAgMC4ycmVtIHJnYigxMTcgNzAgNzAgLyAyNSUpICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxJbmZvIC51aS1pbnB1dHRleHQ6ZW5hYmxlZDpmb2N1czpub3QoLnVpLXN0YXRlLWVycm9yKSB7XHJcbiAgICBib3JkZXItY29sb3I6ICMwMDQ4OTAgIWltcG9ydGFudDtcclxufVxyXG4jcmFpbEluZm8gLnVpLWRyb3Bkb3duLWVtcHR5LW1lc3NhZ2Uge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcbiNyYWlsSW5mbyAudWktZHJvcGRvd24tZW1wdHktbWVzc2FnZTo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJ0FkZCBOZXcgVmFsdWUnICFpbXBvcnRhbnQ7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNlMWYwZmYgIWltcG9ydGFudDtcclxufVxyXG4jcmFpbEluZm8gLnVpLW11bHRpc2VsZWN0IHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxJbmZvIC51aS1saXN0Ym94IHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xyXG59XHJcbiNyYWlsSW5mbyAuY3VzdC1idG4ge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTA7XHJcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcclxuICAgIGNvbG9yOiAjZTFmMGZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG59XHJcbi5lcnIge1xyXG4gICAgY29sb3I6IHJlZDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG4jcmFpbEluZm8gLnVpLWRpYWxvZyB7XHJcbiAgICB3aWR0aDogMzAlICFpbXBvcnRhbnQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgei1pbmRleDogOTk5OSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jcmFpbEluZm8gLnVpLWRpYWxvZyAudWktZGlhbG9nLWZvb3RlciB7XHJcbiAgICBoZWlnaHQ6IDYwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuI3JhaWxJbmZvIC51aS1kaWFsb2cgLnVpLWRpYWxvZy1jb250ZW50IHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJhY2tkcm9wIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjgzKTtcclxuICAgIHBvc2l0aW9uOmZpeGVkO1xyXG4gICAgdG9wOjA7XHJcbiAgICBsZWZ0OjA7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgaGVpZ2h0OjEwMHZoO1xyXG4gICAgei1pbmRleDogOTk5ODtcclxufVxyXG5cclxuI3JhaWxJbmZvIC5hZGRJY29uIHtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgcGFkZGluZzogM3B4O1xyXG59XHJcbi8qICNyYWlsSW5mbyAudWktbXVsdGlzZWxlY3QgLnVpLW11bHRpc2VsZWN0LXBhbmVsIHtcclxuICAgIGxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xyXG59ICovXHJcbiNyYWlsSW5mbyAudWktbXVsdGlzZWxlY3QtcGFuZWwgLnVpLW11bHRpc2VsZWN0LWl0ZW1zIC51aS1tdWx0aXNlbGVjdC1pdGVtLnVpLXN0YXRlLWhpZ2hsaWdodCB7XHJcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuI3JhaWxJbmZvIC51aS1jaGtib3ggLnVpLWNoa2JveC1ib3gudWktc3RhdGUtYWN0aXZlIHtcclxuICAgIGJvcmRlci1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICAuY3VzdC1sYWJlbCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICAgIH1cclxufSJdfQ== */\"","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport * as _ from 'lodash';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'app-rail-car-modify',\r\n templateUrl: './rail-car-modify.component.html',\r\n styleUrls: ['./rail-car-modify.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class RailCarModifyComponent implements OnInit {\r\n labelData: any;\r\n rowData: any;\r\n orgRowData: any;\r\n type: any;\r\n masterAPIResp: any;\r\n updateAPIResp: any;\r\n permittedCommodities: any;\r\n permittedCommodityValue: any;\r\n packingGroups: any;\r\n packagingGroupValue: any;\r\n hazardClasses: any;\r\n hazardClassValue: any;\r\n carTypes: any;\r\n carTypeValue: any;\r\n dot_aar_classes: any;\r\n dot_aar_classValue: any;\r\n carBuilders: any;\r\n carBuilderValue: any;\r\n selectedPermittedCommodity: any[];\r\n selectedPackinggroup: any;\r\n selectedHazardClass: any;\r\n selectedCarBuilder: any;\r\n display: boolean = false;\r\n validFixedAssset = true;\r\n validMonthlyDepreciation = true;\r\n validRent = true;\r\n validRepPaint = true;\r\n dialogHeader = \"\";\r\n labelName = \"\";\r\n labelDescription = \"\";\r\n ddName = \"\";\r\n ddDescription = \"\";\r\n ddType = \"\";\r\n selectedPC: any;\r\n apiResp: any;\r\n userId: any;\r\n Arole:any;\r\n userAdmin: boolean = false;\r\n userInfo:any;\r\n constructor(private router: Router, private _service: RailFleetService, private _spinner: NgxSpinnerService, private _toastr: ToastrService) { }\r\n\r\n ngOnInit() {\r\n this.userId = sessionStorage.getItem('userId');\r\n let role = sessionStorage.getItem('role');\r\n if(role != null && role != undefined && role != '' ) {\r\n if(role.includes('Admin')) {\r\n this.userAdmin = true;\r\n this.Arole=1;\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n } else {\r\n this.userAdmin = false;\r\n }\r\n if (this.userId != null && this.userId != 'undefined' && this.userId != '') {\r\n if (!history.state.data) {\r\n this.router.navigate(['/rail-car']);\r\n } else {\r\n this.labelData = history.state.data.cols;\r\n this.orgRowData = history.state.data.rowData;\r\n this.rowData = JSON.parse(JSON.stringify(this.orgRowData));\r\n //this.computeRentalAgreement();\r\n this.type = history.state.data.selectionType;\r\n if (this.type == 'edit') {\r\n this.getAllMasterData();\r\n }\r\n }\r\n } else {\r\n this.router.navigate(['/login']);\r\n }\r\n }\r\n\r\n backToGrid() {\r\n this.router.navigate(['/rail-car']);\r\n }\r\n\r\n editRowData() {\r\n this.type = \"edit\";\r\n this.getAllMasterData();\r\n this.clearValidations();\r\n }\r\n\r\n cancel() {\r\n this.rowData = JSON.parse(JSON.stringify(this.orgRowData));\r\n this.type = 'view';\r\n }\r\n\r\n getAllMasterData() {\r\n this._spinner.show();\r\n this._service.getRailMasterData().subscribe(response => {\r\n this.masterAPIResp = response;\r\n this.permittedCommodities = this.masterAPIResp.permittedCommodities;\r\n this.permittedCommodities.forEach(pc => {\r\n pc.railcarID = this.rowData.railcarID;\r\n pc.permittedCommoditiesDesc = null;\r\n })\r\n this.packingGroups = this.masterAPIResp.packagingGroups;\r\n this.hazardClasses = this.masterAPIResp.hazardClasses;\r\n this.carTypes = this.masterAPIResp.carTypes;\r\n this.dot_aar_classes = this.masterAPIResp.dot_aar_classes;\r\n this.carBuilders = this.masterAPIResp.carBuilders;\r\n this.assignDropDownValues();\r\n this._spinner.hide();\r\n })\r\n }\r\n\r\n assignDropDownValues() {\r\n this.selectedPermittedCommodity = this.rowData.permittedCommodity;\r\n this.selectedPackinggroup = this.packingGroups.find(pg => pg.packingGroupID === this.rowData.packingGroupID);\r\n this.selectedCarBuilder = this.carBuilders.find(cb => cb.carBuilderID === this.rowData.carBuilderID);\r\n this.selectedHazardClass = this.hazardClasses.find(hc => hc.hazardClassID === this.rowData.hazardClassID);\r\n }\r\n\r\n changePermittedCommodity() {\r\n //console.log(this.selectedPermittedCommodity);\r\n // this.rowData.permittedCommoditiesID = this.selectedPermittedCommodity.permittedCommoditiesID;\r\n // this.rowData.permittedcommodities = this.selectedPermittedCommodity.permittedcommodities;\r\n }\r\n\r\n changePackingGroup() {\r\n this.rowData.packingGroupID = this.selectedPackinggroup.packingGroupID;\r\n this.rowData.packinggroup = this.selectedPackinggroup.packinggroup;\r\n }\r\n\r\n changeHazardClass() {\r\n this.rowData.hazardClassID = this.selectedHazardClass.hazardClassID;\r\n this.rowData.hazardclass = this.selectedHazardClass.hazardclass;\r\n }\r\n\r\n changeCarBuilder() {\r\n this.rowData.carBuilderID = this.selectedCarBuilder.carBuilderID;\r\n this.rowData.carbuilder = this.selectedCarBuilder.carbuilder;\r\n }\r\n\r\n openPopup(value) {\r\n this.display = true;\r\n this.labelName = \"Name\";\r\n this.labelDescription = \"Description\";\r\n switch (value) {\r\n case 'pc': this.dialogHeader = \"Add Permitted Commodity\";this.ddType=\"pc\"; break;\r\n case 'pg': this.dialogHeader = \"Add Packaging Group\";this.ddType=\"pg\"; break;\r\n case 'hc': this.dialogHeader = \"Add Hazard Class\";this.ddType=\"hc\"; break;\r\n case 'cb': this.dialogHeader = \"Add Car Builder\";this.ddType=\"cb\"; break;\r\n default: this.display = false; break;\r\n }\r\n }\r\n\r\n saveRailCar(railCar) {\r\n this._spinner.show();\r\n const railFleetClass = [{\r\n railcarID: railCar.railcarID,\r\n carStatus:railCar.carStatus,\r\n dueTest: railCar.dueTest,\r\n nextRegYr: railCar.nextRegYr,\r\n originalRCID: railCar.originalRCID,\r\n bu: railCar.bu,\r\n tcc: railCar.tcc,\r\n contract: railCar.contract,\r\n fixedAsset: railCar.fixedAsset,\r\n locationCode: railCar.locationCode,\r\n sortField:railCar.sortField,\r\n maintenancePlant:railCar.maintenancePlant,\r\n assignedLocation: railCar.assignedLocation,\r\n fleet: railCar.fleet,\r\n permittedCommodities: railCar.permittedCommodities,\r\n // packingGroup: railCar.packingGroup,\r\n // hazardClass: railCar.hazardClass,\r\n carType: railCar.carType,\r\n originalCertofConstruction: railCar.originalCertofConstruction,\r\n doT_AAR_Class: railCar.doT_AAR_Class,\r\n carBuilder: railCar.carBuilder,\r\n yearBuilt: railCar.yearBuilt,\r\n ageofCar: railCar.ageofCar,\r\n onHire: railCar.onHire,\r\n owner: railCar.owner,\r\n rider: railCar.rider,\r\n effective: railCar.effective,\r\n expiration: railCar.expiration,\r\n monthlyDepreciation: railCar.monthlyDepreciation,\r\n rent: railCar.rent,\r\n rep_Maint: railCar.rep_Maint,\r\n rentalAgreement: railCar.rentalAgreement.toString(),\r\n leaseTerm: railCar.leaseTerm,\r\n term: railCar.term,\r\n tareWeightLBS: railCar.tareWeightLBS,\r\n maxGrossWeight: railCar.maxGrossWeight,\r\n comments: railCar.comments,\r\n lastUpdatedDate: railCar.lastUpdatedDate,\r\n permittedCommoditiesID: railCar.permittedCommoditiesID,\r\n // packingGroupID: railCar.packingGroupID,\r\n // hazardClassID: railCar.hazardClassID,\r\n carBuilderID: railCar.carBuilderID,\r\n modifiedBy: \"Nandha\",\r\n permittedCommodity: this.selectedPermittedCommodity\r\n }];\r\n const payLoad = railFleetClass[0];\r\n if(this.validFixedAssset && this.validMonthlyDepreciation && this.validRent && this.validRepPaint) {\r\n this._service.updateRailFleetData(payLoad).subscribe(response => {\r\n this.updateAPIResp = response;\r\n this._toastr.success(this.updateAPIResp, 'Success!');\r\n this.type = 'view';\r\n this.clearValidations();\r\n this.getRailFleetDataDetails();\r\n this._spinner.hide();\r\n });\r\n }\r\n }\r\n\r\n checkValidation(fieldName, value) {\r\n switch(fieldName) {\r\n case 'fixedAsset': this.validFixedAssset = this.validateNumber(value);\r\n break;\r\n case 'monthlyDepreciation': this.validMonthlyDepreciation = this.validateNumber(value);\r\n break;\r\n //case 'rentalAgreement': this.validRent = this.validateNumber(value);//this.computeRentalAgreement();\r\n //break;\r\n case 'rep_Maint': this.validRepPaint = this.validateNumber(value);//this.computeRentalAgreement();\r\n break;\r\n default: break;\r\n }\r\n }\r\n\r\n\r\n validateNumber(value) {\r\n let numberExp = new RegExp(/^\\d*\\.?\\d*$/);\r\n return numberExp.test(value);\r\n }\r\n\r\n clearValidations() {\r\n this.validFixedAssset = true;\r\n this.validRepPaint = true;\r\n this.validRent = true;\r\n this.validMonthlyDepreciation = true;\r\n }\r\n\r\n updatePermittedCommodities() {\r\n this._spinner.show();\r\n const pcPayLoad = {\r\n permittedCommoditiesID: 0,\r\n permittedcommodities: this.ddName,\r\n permittedCommoditiesDesc: this.ddDescription,\r\n actionBy: \"Nandha\",\r\n action: \"Insert\"\r\n }\r\n this._service.updatePermittedCmmodities(pcPayLoad).subscribe(response => {\r\n this.getAllMasterData();\r\n this._toastr.success(response.toString(), \"Success!\");\r\n this.cancelDD();\r\n this._spinner.hide();\r\n })\r\n }\r\n\r\n updatePackagingGroups() {\r\n this._spinner.show();\r\n const pgPayLoad = {\r\n packingGroupID: 0,\r\n packinggroup: this.ddName,\r\n packingGroupDesc: this.ddDescription,\r\n actionBy: \"Nandha\",\r\n action: \"Insert\"\r\n }\r\n this._service.updatePackingGroup(pgPayLoad).subscribe(response => {\r\n this.getAllMasterData();\r\n this._toastr.success(response.toString(), \"Success!\");\r\n this.cancelDD();\r\n this._spinner.hide();\r\n })\r\n }\r\n\r\n updateHazardClasses() {\r\n this._spinner.show();\r\n const hcPayLoad = {\r\n hazardClassID: 0,\r\n hazardclass: this.ddName,\r\n hazardClassDesc: this.ddDescription,\r\n actionBy: \"Nandha\",\r\n action: \"Insert\"\r\n }\r\n this._service.updateHazardclass(hcPayLoad).subscribe(response => {\r\n this.getAllMasterData();\r\n this._toastr.success(response.toString(), \"Success!\");\r\n this.cancelDD();\r\n this._spinner.hide();\r\n })\r\n }\r\n\r\n updateCarBuilders() {\r\n this._spinner.show();\r\n const cbPayLoad = {\r\n carBuilderID: 0,\r\n carbuilder: this.ddName,\r\n carBuilderDesc: this.ddDescription,\r\n actionBy: \"Nandha\",\r\n action: \"Insert\"\r\n }\r\n this._service.updateCarBuilder(cbPayLoad).subscribe(response => {\r\n this.getAllMasterData();\r\n this._toastr.success(response.toString(), \"Success!\");\r\n this.cancelDD();\r\n this._spinner.hide();\r\n })\r\n }\r\n\r\n\r\n\r\n cancelDD() {\r\n this.display = false;\r\n this.ddName = \"\";\r\n this.ddDescription = \"\";\r\n }\r\n\r\n saveDropDown() {\r\n switch(this.ddType) {\r\n case 'pc': this.updatePermittedCommodities(); break;\r\n case 'pg': this.updatePackagingGroups();break;\r\n case 'hc': this.updateHazardClasses();break;\r\n case 'cb': this.updateCarBuilders();break;\r\n default : this.display = false; break;\r\n }\r\n }\r\n\r\n getRailFleetDataDetails() {\r\n this._spinner.show();\r\n this._service.getUserInfo(this.userId).subscribe(response => {\r\n this.userInfo = response;\r\n this.getallrailfleetData(this.userInfo[0].userID,this.Arole);\r\n })\r\n \r\n }\r\n getallrailfleetData(userId, role)\r\n {\r\n const pgPayLoad = {\r\n railFleetID: 0,\r\n userID: userId,\r\n isAdmin: role\r\n }\r\n this._service.getallrailfleetData(pgPayLoad).subscribe(response => {\r\n this.apiResp = response;\r\n this.rowData = this.apiResp[0];\r\n this.assignDropDownValues();\r\n this._spinner.hide();\r\n })\r\n }\r\n}\r\n","export default \"/* body .ui-table .ui-table-thead>tr>th {\\r\\n background-color: white;\\r\\n color:#004890;\\r\\n font-size: 14px;\\r\\n font-weight: 600;\\r\\n padding: 3px;\\r\\n text-align: center;\\r\\n border: 1px solid #e1f0ff;\\r\\n min-width: 100px !important;\\r\\n}\\r\\nlabel {font-weight:bold}\\r\\n\\r\\nbody .ui-table .ui-table-thead>tr>th>div {\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n}\\r\\nbody .ui-table .ui-table-tbody>tr>td {\\r\\n font-size: 14px;\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n padding: 0 4px;\\r\\n color: black;\\r\\n font-weight: 500;\\r\\n border: 1px solid #e1f0ff;\\r\\n text-overflow: ellipsis;\\r\\n vertical-align: top !important;\\r\\n}*/\\r\\n.grid-btn {\\r\\n background-color: #004890;\\r\\n float: left;\\r\\n width: auto;\\r\\n border-radius: 5px;\\r\\n margin-right: 10px;\\r\\n color: white;\\r\\n} \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9yYWlsY2FyLWxpbmtzL3JhaWxjYXItbGlua3MuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUE2QkU7QUFDRjtJQUNJLHlCQUF5QjtJQUN6QixXQUFXO0lBQ1gsV0FBVztJQUNYLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIsWUFBWTtBQUNoQiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvcmFpbGNhci1saW5rcy9yYWlsY2FyLWxpbmtzLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBib2R5IC51aS10YWJsZSAudWktdGFibGUtdGhlYWQ+dHI+dGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICBjb2xvcjojMDA0ODkwO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIHBhZGRpbmc6IDNweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWYwZmY7XHJcbiAgICBtaW4td2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxubGFiZWwge2ZvbnQtd2VpZ2h0OmJvbGR9XHJcblxyXG5ib2R5IC51aS10YWJsZSAudWktdGFibGUtdGhlYWQ+dHI+dGg+ZGl2IHtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuYm9keSAudWktdGFibGUgLnVpLXRhYmxlLXRib2R5PnRyPnRkIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMCA0cHg7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UxZjBmZjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1xyXG59Ki9cclxuLmdyaWQtYnRuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTA7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG59ICJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { SelectItem } from 'primeng/api';\r\nimport { RailCarLinks } from 'src/app/_models/RailCarLinks';\r\nimport { RailCarURLs } from 'src/app/_models/railcarurls';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-railcar-links',\r\n templateUrl: './railcar-links.component.html',\r\n styleUrls: ['./railcar-links.component.css']\r\n})\r\nexport class RailcarLinksComponent implements OnInit {\r\n\r\n railcarURLs: any;\r\n\r\n cols: any[];\r\n carUrls: SelectItem[];\r\n apiResp:any;\r\n routerLinkVariable:any;\r\n railLinks:RailCarLinks[]=[];\r\n\r\n constructor(private _Service: RailFleetService,private router: Router) {\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this._Service.getAllRailCarUrls().subscribe(response => {\r\n this.railcarURLs=response;\r\n this.railLinks=this.railcarURLs;\r\n });\r\n\r\n this.cols = [\r\n { field: 'descriptionName', header: 'Description Name' },\r\n { field: 'url', header: 'URLS' } \r\n ];\r\n this.routerLinkVariable\r\n \r\n }\r\n onGoToPage2(data:any)\r\n {\r\n window.open(data, '_blank');\r\n }\r\n backToGrid()\r\n {\r\n this.router.navigate(['/rail-car']);\r\n }\r\n\r\n}\r\n","export default \"\\r\\n.header-label {\\r\\n font-size: 20px;\\r\\n font-weight: 600;\\r\\n}\\r\\n.cust-label {\\r\\n font-weight: 500;\\r\\n text-align: end;\\r\\n}\\r\\n#admin-comp .not-activ-btn {\\r\\n background-color: #424549;\\r\\n float: left;\\r\\n border-radius: 5px;\\r\\n color: white;\\r\\n}\\r\\n#admin-comp .activ-btn {\\r\\n background-color: #004890;\\r\\n float: left;\\r\\n border-radius: 5px;\\r\\n margin-left: 10px;\\r\\n color: white;\\r\\n}\\r\\n#admin-comp .addIcon {\\r\\n font-size: 1.5em;\\r\\n cursor: pointer;\\r\\n background-color: #004890;\\r\\n color: white;\\r\\n border-radius: 5px;\\r\\n padding: 3px;\\r\\n}\\r\\n.backdrop {\\r\\n background-color:rgba(0,0,0,0.83);\\r\\n position:fixed;\\r\\n top:0;\\r\\n left:0;\\r\\n width:100%;\\r\\n height:100vh;\\r\\n z-index: 9998;\\r\\n}\\r\\n@media screen and (min-width:320px) and (max-width:480px) {\\r\\n .cust-label{\\r\\n text-align: start;\\r\\n } \\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy9yYWlsY2FyLXVybHMvcmFpbGNhci11cmxzLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBO0lBQ0ksZUFBZTtJQUNmLGdCQUFnQjtBQUNwQjtBQUNBO0lBQ0ksZ0JBQWdCO0lBQ2hCLGVBQWU7QUFDbkI7QUFDQTtJQUNJLHlCQUF5QjtJQUN6QixXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLFlBQVk7QUFDaEI7QUFDQTtJQUNJLHlCQUF5QjtJQUN6QixXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixZQUFZO0FBQ2hCO0FBQ0E7SUFDSSxnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLHlCQUF5QjtJQUN6QixZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLFlBQVk7QUFDaEI7QUFDQTtJQUNJLGlDQUFpQztJQUNqQyxjQUFjO0lBQ2QsS0FBSztJQUNMLE1BQU07SUFDTixVQUFVO0lBQ1YsWUFBWTtJQUNaLGFBQWE7QUFDakI7QUFDQTtJQUNJO1FBQ0ksaUJBQWlCO0lBQ3JCO0NBQ0giLCJmaWxlIjoic3JjL2FwcC9jb21wb25lbnRzL3JhaWxjYXItdXJscy9yYWlsY2FyLXVybHMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4uaGVhZGVyLWxhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLmN1c3QtbGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHRleHQtYWxpZ246IGVuZDtcclxufVxyXG4jYWRtaW4tY29tcCAubm90LWFjdGl2LWJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDI0NTQ5O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbn1cclxuI2FkbWluLWNvbXAgLmFjdGl2LWJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG4jYWRtaW4tY29tcCAuYWRkSWNvbiB7XHJcbiAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIHBhZGRpbmc6IDNweDtcclxufVxyXG4uYmFja2Ryb3Age1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuODMpO1xyXG4gICAgcG9zaXRpb246Zml4ZWQ7XHJcbiAgICB0b3A6MDtcclxuICAgIGxlZnQ6MDtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBoZWlnaHQ6MTAwdmg7XHJcbiAgICB6LWluZGV4OiA5OTk4O1xyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MzIwcHgpIGFuZCAobWF4LXdpZHRoOjQ4MHB4KSB7XHJcbiAgICAuY3VzdC1sYWJlbHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcclxuICAgIH0gXHJcbiB9Il19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { SelectItem } from 'primeng/api';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-railcar-urls',\r\n templateUrl: './railcar-urls.component.html',\r\n styleUrls: ['./railcar-urls.component.css']\r\n})\r\nexport class RailcarUrlsComponent implements OnInit {\r\n carUrls: SelectItem[];\r\n apiResp: any;\r\n dialogHeader = \"\";\r\n ddName = \"\";\r\n ddDescription = \"\";\r\n ddType = \"\";\r\n display: boolean = false;\r\n labelName = \"\";\r\n labelDescription = \"\";\r\n selectedRailCar: any;\r\n constructor(private _service: RailFleetService,private _spinner: NgxSpinnerService,private _toastr: ToastrService) { }\r\n\r\n ngOnInit() {\r\n this.GetAllRailCarUrls();\r\n }\r\n GetAllRailCarUrls() {\r\n this._service.getAllRailCarUrls().subscribe((response:any[])=>{\r\n this.carUrls=[];\r\n response.forEach(item=>{\r\n this.carUrls.push({label:item.descriptionName,value:item.urlID})\r\n }) \r\n })\r\n }\r\n openPopup(value) {\r\n this.display = true;\r\n this.labelName = \"Description\";\r\n this.labelDescription = \"URL\";\r\n switch (value) {\r\n case 'rc': this.dialogHeader = \"Add RailCar Urls\";this.ddType=\"rc\"; break;\r\n default: this.display = false; break;\r\n }\r\n }\r\n cancelDD() {\r\n this.display = false;\r\n this.ddName = \"\";\r\n this.ddDescription = \"\";\r\n }\r\n saveDropDown() {\r\n switch(this.ddType) {\r\n case 'rc': this.updateRailCarUrls(); break;\r\n default : this.display = false; break;\r\n }\r\n }\r\n updateRailCarUrls() {\r\n this._spinner.show();\r\n const pcPayLoad = {\r\n urlID: 0,\r\n descriptionName: this.ddName,\r\n url: this.ddDescription,\r\n actionBy: \"Prabhu\",\r\n action: \"Add\"\r\n }\r\n this._service.updateRailCarUrls(pcPayLoad).subscribe(response => {\r\n this.GetAllRailCarUrls();\r\n this._toastr.success(response.toString(), \"Success!\");\r\n this.cancelDD();\r\n this._spinner.hide();\r\n })\r\n }\r\n\r\n}\r\n","export default \".full-width {\\r\\n width: 100%;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy91c2VyLW1hbmFnZW1lbnQvdXNlci1mb3JtL3VzZXItZm9ybS5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksV0FBVztFQUNiIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91c2VyLW1hbmFnZW1lbnQvdXNlci1mb3JtL3VzZXItZm9ybS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmZ1bGwtd2lkdGgge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfSJdfQ== */\"","import { Component, Inject, Input, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-user-form',\r\n templateUrl: './user-form.component.html',\r\n styleUrls: ['./user-form.component.css']\r\n})\r\nexport class UserFormComponent implements OnInit {\r\n\r\n newUser: boolean = true;\r\n region = 1;\r\n userForm: FormGroup;\r\n bus:any;\r\n roles:any;\r\n // @Input() userAdmin;\r\n Admin=false;\r\n selected=[];\r\n record=[];\r\n constructor(@Inject(MAT_DIALOG_DATA) private Data: any, private dialogRef: MatDialogRef, private _service: RailFleetService, private _toast: ToastrService) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.userForm = new FormGroup({ \r\n basfUserID: new FormControl('', [Validators.required]),\r\n firstName: new FormControl('', [Validators.required]),\r\n lastName: new FormControl('', [Validators.required]),\r\n roleID: new FormControl('', [Validators.required]),\r\n Email: new FormControl('', [Validators.required, Validators.email]),\r\n buID: new FormControl(''),\r\n \r\n });\r\n\r\n if(this.Data.isModify && this.Data != undefined)\r\n {\r\n if(this.Data.buID.length>0)\r\n {\r\n this.Data.buID.forEach(element => {\r\n this.record.push(element.buID);\r\n });\r\n } \r\n }\r\n \r\n if (this.Data.isModify && this.Data != undefined) \r\n { \r\n this.userForm.controls.basfUserID.setValue(this.Data.basfUserID);\r\n this.userForm.controls.firstName.setValue(this.Data.firstName);\r\n this.userForm.controls.lastName.setValue(this.Data.lastName);\r\n this.userForm.controls.roleID.setValue(this.Data.roleID);\r\n this.userForm.controls.Email.setValue(this.Data.email);\r\n this.userForm.controls.buID.setValue(this.record);\r\n }\r\n \r\n this.GetAllBus();\r\n this.GetAllRoles()\r\n this.SetAdmin();\r\n }\r\n SetAdmin() {\r\n if(this.Data.roleID==1)\r\n {\r\n this.Admin=true;\r\n }\r\n }\r\n GetAllBus()\r\n {\r\n this._service.GetAllBus().subscribe((data:any[])=>{\r\n \r\n this.bus=data;\r\n });\r\n }\r\n GetAllRoles()\r\n {\r\n this._service.GetAllRoles().subscribe((data:any[])=>{\r\n this.roles=data;\r\n });\r\n }\r\n doSomething(value:number)\r\n {\r\n if(value==1)\r\n {\r\n this.Admin=true;\r\n }else\r\n {\r\n this.Admin=false;\r\n }\r\n \r\n }\r\n public hasError = (controlName: string, errorName: string) => {\r\n return this.userForm.controls[controlName].hasError(errorName);\r\n }\r\n onSend() {\r\n if (this.userForm.valid && this.Data.isModify) {\r\n const acPayLoad = {\r\n userID: this.Data.userID ? this.Data.userID : 0,\r\n basfUserID: this.userForm.controls.basfUserID.value,\r\n firstName: this.userForm.controls.firstName.value,\r\n lastName: this.userForm.controls.lastName.value,\r\n roleID: this.userForm.controls.roleID.value,\r\n Email: this.userForm.controls.Email.value,\r\n buID: this.userForm.controls.buID.value,\r\n actionBy: this.userForm.controls.basfUserID.value,\r\n action: \"Update\"\r\n }\r\n if(acPayLoad.roleID==1)\r\n {\r\n acPayLoad.buID=\"0\";\r\n this._service.updateUser_new(acPayLoad).subscribe(res => { this._toast.success(\"User Successfully Updated\") });\r\n this.dialogRef.close();\r\n }\r\n acPayLoad.buID=acPayLoad.buID.join(','); \r\n this._service.updateUser_new(acPayLoad).subscribe(res => { this._toast.success(\"User Successfully Updated\") });\r\n } \r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","export default \"th {\\r\\n background-color: #004a96;\\r\\n color: #F5F5F5;\\r\\n vertical-align: bottom;\\r\\n font-size: 1em;\\r\\n }\\r\\n \\r\\n table {\\r\\n border-spacing: 0 8px !important;\\r\\n }\\r\\n \\r\\n ::ng-deep .mat-sort-header-arrow {\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n .mat-header-cell, .mat-footer-cell, .mat-cell {\\r\\n min-width: 100px;\\r\\n box-sizing: border-box;\\r\\n text-align: center;\\r\\n }\\r\\n \\r\\n td.mat-cell {\\r\\n text-align: center !important;\\r\\n padding: 0px !important;\\r\\n }\\r\\n \\r\\n th.mat-header-cell {\\r\\n text-align: center !important;\\r\\n padding: 0px !important;\\r\\n }\\r\\n \\r\\n .modified {\\r\\n background-color: #8414e6;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .discontinue {\\r\\n background-color: #e61414;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .new {\\r\\n background-color: #3ee614;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .mat-sort-header-arrow {\\r\\n color: #fff8f8;\\r\\n }\\r\\n \\r\\n .mat-success\\r\\n {\\r\\n background-color: green;\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n .mat-dangerous\\r\\n {\\r\\n background-color: red;\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy91c2VyLW1hbmFnZW1lbnQvdXNlci1tYW5hZ2VtZW50L3VzZXItbWFuYWdlbWVudC5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0kseUJBQXlCO0lBQ3pCLGNBQWM7SUFDZCxzQkFBc0I7SUFDdEIsY0FBYztFQUNoQjs7RUFFQTtJQUNFLGdDQUFnQztFQUNsQzs7RUFFQTtJQUNFLFdBQVc7RUFDYjs7RUFFQTtJQUNFLGdCQUFnQjtJQUNoQixzQkFBc0I7SUFDdEIsa0JBQWtCO0VBQ3BCOztFQUVBO0lBQ0UsNkJBQTZCO0lBQzdCLHVCQUF1QjtFQUN6Qjs7RUFHQTtJQUNFLDZCQUE2QjtJQUM3Qix1QkFBdUI7RUFDekI7O0VBR0E7SUFDRSx5QkFBeUI7SUFDekIsWUFBWTtFQUNkOztFQUVBO0lBQ0UseUJBQXlCO0lBQ3pCLFlBQVk7RUFDZDs7RUFFQTtJQUNFLHlCQUF5QjtJQUN6QixZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxjQUFjO0VBQ2hCOztFQUNBOztJQUVFLHVCQUF1QjtJQUN2QixXQUFXO0VBQ2I7O0VBQ0E7O0lBRUUscUJBQXFCO0lBQ3JCLFdBQVc7RUFDYiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdXNlci1tYW5hZ2VtZW50L3VzZXItbWFuYWdlbWVudC91c2VyLW1hbmFnZW1lbnQuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbInRoIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDRhOTY7XHJcbiAgICBjb2xvcjogI0Y1RjVGNTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxuICB9XHJcbiAgXHJcbiAgdGFibGUge1xyXG4gICAgYm9yZGVyLXNwYWNpbmc6IDAgOHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAubWF0LXNvcnQtaGVhZGVyLWFycm93IHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICBcclxuICAubWF0LWhlYWRlci1jZWxsLCAubWF0LWZvb3Rlci1jZWxsLCAubWF0LWNlbGwge1xyXG4gICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIFxyXG4gIHRkLm1hdC1jZWxsIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gIFxyXG4gIHRoLm1hdC1oZWFkZXItY2VsbCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICBcclxuICAubW9kaWZpZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg0MTRlNjtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICB9XHJcbiAgXHJcbiAgLmRpc2NvbnRpbnVlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNjE0MTQ7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgfVxyXG4gIFxyXG4gIC5uZXcge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNlZTYxNDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICB9XHJcbiAgXHJcbiAgLm1hdC1zb3J0LWhlYWRlci1hcnJvdyB7XHJcbiAgICBjb2xvcjogI2ZmZjhmODtcclxuICB9XHJcbiAgLm1hdC1zdWNjZXNzXHJcbiAge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbiAgLm1hdC1kYW5nZXJvdXNcclxuICB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbiAgIl19 */\"","import { SelectionModel } from '@angular/cdk/collections';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { DialogpopupComponent } from 'src/app/common/dialogpopup/dialogpopup.component';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\nimport { UserFormComponent } from '../user-form/user-form.component';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { element } from 'protractor';\r\nimport { analyzeAndValidateNgModules } from '@angular/compiler';\r\n\r\n@Component({\r\n selector: 'app-user-management',\r\n templateUrl: './user-management.component.html',\r\n styleUrls: ['./user-management.component.css']\r\n})\r\nexport class UserManagementComponent implements OnInit {\r\n dataSource = new MatTableDataSource();\r\n apires:any;\r\n colorchange:number;\r\n role:any;\r\n userNotFound=false;\r\n constructor(private railfleetservice: RailFleetService,private toastr: ToastrService, private spinner: NgxSpinnerService, private matdialog: MatDialog, private router: Router) { }\r\n \r\n\r\n displayedColumns = ['basfUserID', 'firstName','lastName', 'roleName', 'email', 'bu','Edit','Remove','Status'];\r\n\r\n ngOnInit(): void {\r\n this.role=sessionStorage.getItem('role');\r\n if(!(this.role!='Admin'))\r\n {\r\n this.getUsers_new();\r\n }else{\r\n this.userNotFound=true;\r\n this.railfleetservice.setNavmenustatus(false);\r\n }\r\n }\r\n getUsers_new() {\r\n this.dataSource.data = [];\r\n this.railfleetservice.getUsers_new().subscribe((res: any) => {\r\n this.apires = res;\r\n if (this.apires) {\r\n this.apires.forEach(res => {\r\n res.bu = res.getBuses.map(x => x.bu).join(' ');\r\n });\r\n }\r\n this.dataSource.data = this.apires;\r\n })\r\n }\r\n\r\n refresh() {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate(['/usermanagement']);\r\n }\r\n \r\n applyFilter(event: any) {\r\n const filterValue = event;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n \r\n onEditUser(user:any) { \r\n \r\n var dialogref = this.matdialog.open(UserFormComponent, {\r\n data: {\r\n isModify: true,\r\n userID:user.userID,\r\n basfUserID: user.basfUserID,\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n roleID:user.getRoles[0].roleID, \r\n email: user.email,\r\n buID: user.getBuses,\r\n }\r\n });\r\n dialogref.afterClosed().subscribe(res => {\r\n this.refresh();\r\n });\r\n }\r\n\r\n onRemoveUser(user: any) {\r\n var record=[];\r\n var dialogref = this.matdialog.open(DialogpopupComponent, { data: { message: 'Are you sure you want to delete user ' + user.firstName, title: 'Confirm Delete' } })\r\n dialogref.afterClosed().subscribe(res => {\r\n if (res) {\r\n const acPayLoad = {\r\n userID:user.userID,\r\n basfUserID: user.basfUserID,\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n roleID: user.getRoles[0].roleID, \r\n email: user.email,\r\n buID: user.getBuses,\r\n actionBy: user.basfUserID,\r\n action: \"Deactivate\"\r\n }\r\n acPayLoad.buID.forEach(element => {\r\n record.push(element.buID);\r\n });\r\n acPayLoad.buID=record.join(',')\r\n this.railfleetservice.updateUser_new(acPayLoad).subscribe(res => {\r\n this.toastr.success(\"user removed successfully\");\r\n this.getUsers_new();\r\n });\r\n }\r\n });\r\n \r\n }\r\n onApprovedUser(user: any)\r\n {\r\n var record=[];\r\n var dialogref = this.matdialog.open(DialogpopupComponent, { data: { message: 'Are you sure you want to Approve user ' + user.firstName, title: 'Confirm Delete' } })\r\n dialogref.afterClosed().subscribe(res => {\r\n if (res) {\r\n const acPayLoad = {\r\n userID:user.userID,\r\n basfUserID: user.basfUserID,\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n roleID: user.getRoles[0].roleID, \r\n email: user.email,\r\n buID: user.getBuses,\r\n actionBy: user.basfUserID,\r\n action: \"Approved\"\r\n }\r\n acPayLoad.buID.forEach(element => {\r\n record.push(element.buID);\r\n });\r\n acPayLoad.buID=record.join(',')\r\n this.railfleetservice.updateUser_new(acPayLoad).subscribe(res => {\r\n this.toastr.success(\"user Approved successfully\");\r\n this.getUsers_new();\r\n });\r\n }\r\n });\r\n \r\n }\r\n onUnApprovedUser(user: any)\r\n {\r\n var record=[];\r\n var dialogref = this.matdialog.open(DialogpopupComponent, { data: { message: 'Are you sure you want to unApprove user ' + user.firstName, title: 'Confirm Delete' } })\r\n dialogref.afterClosed().subscribe(res => {\r\n if (res) {\r\n const acPayLoad = {\r\n userID:user.userID,\r\n basfUserID: user.basfUserID,\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n roleID: user.getRoles[0].roleID, \r\n email: user.email,\r\n buID: user.getBuses,\r\n actionBy: user.basfUserID,\r\n action: \"UnApproved\"\r\n }\r\n acPayLoad.buID.forEach(element => {\r\n record.push(element.buID);\r\n });\r\n acPayLoad.buID=record.join(',')\r\n this.railfleetservice.updateUser_new(acPayLoad).subscribe(res => {\r\n this.toastr.success(\"user UnApproved successfully\");\r\n this.getUsers_new();\r\n });\r\n }\r\n });\r\n }\r\n\r\n}\r\n","export default \"#userForm .not-activ-btn {\\r\\n background-color: #424549;\\r\\n float: right;\\r\\n width: 75px;\\r\\n border-radius: 5px;\\r\\n color: white;\\r\\n}\\r\\n#userForm .activ-btn {\\r\\n background-color: #004890;\\r\\n float: right;\\r\\n width: 75px;\\r\\n border-radius: 5px;\\r\\n margin-left: 10px;\\r\\n color: white;\\r\\n}\\r\\n#userForm .ui-autocomplete.ui-autocomplete-multiple .ui-autocomplete-multiple-container .ui-autocomplete-token {\\r\\n margin: 2px !important\\r\\n}\\r\\n#userForm .ui-listbox {\\r\\n width: auto !important;\\r\\n}\\r\\n#userForm .ui-listbox .ui-listbox-list-wrapper {\\r\\n max-height: 200px;\\r\\n}\\r\\n#userForm .ui-listbox .ui-listbox-header {\\r\\n background-color: #004890 !important;\\r\\n color: white;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy91c2Vycy91c2VyLXBvcHVwL3VzZXItcG9wdXAuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLHlCQUF5QjtJQUN6QixZQUFZO0lBQ1osV0FBVztJQUNYLGtCQUFrQjtJQUNsQixZQUFZO0FBQ2hCO0FBQ0E7SUFDSSx5QkFBeUI7SUFDekIsWUFBWTtJQUNaLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsaUJBQWlCO0lBQ2pCLFlBQVk7QUFDaEI7QUFDQTtJQUNJO0FBQ0o7QUFDQTtJQUNJLHNCQUFzQjtBQUMxQjtBQUNBO0lBQ0ksaUJBQWlCO0FBQ3JCO0FBQ0E7SUFDSSxvQ0FBb0M7SUFDcEMsWUFBWTtBQUNoQiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdXNlcnMvdXNlci1wb3B1cC91c2VyLXBvcHVwLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIjdXNlckZvcm0gLm5vdC1hY3Rpdi1idG4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQyNDU0OTtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIHdpZHRoOiA3NXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG59XHJcbiN1c2VyRm9ybSAuYWN0aXYtYnRuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDQ4OTA7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB3aWR0aDogNzVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG59XHJcbiN1c2VyRm9ybSAudWktYXV0b2NvbXBsZXRlLnVpLWF1dG9jb21wbGV0ZS1tdWx0aXBsZSAudWktYXV0b2NvbXBsZXRlLW11bHRpcGxlLWNvbnRhaW5lciAudWktYXV0b2NvbXBsZXRlLXRva2VuIHtcclxuICAgIG1hcmdpbjogMnB4ICFpbXBvcnRhbnRcclxufVxyXG4jdXNlckZvcm0gLnVpLWxpc3Rib3gge1xyXG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG4jdXNlckZvcm0gLnVpLWxpc3Rib3ggLnVpLWxpc3Rib3gtbGlzdC13cmFwcGVyIHtcclxuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG59XHJcbiN1c2VyRm9ybSAudWktbGlzdGJveCAudWktbGlzdGJveC1oZWFkZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG59Il19 */\"","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DynamicDialogRef } from 'primeng/api';\r\nimport { DynamicDialogConfig } from 'primeng/api';\r\n\r\n\r\n@Component({\r\n selector: 'app-user-popup',\r\n templateUrl: './user-popup.component.html',\r\n styleUrls: ['./user-popup.component.css'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class UserPopupComponent implements OnInit {\r\n\r\n orgUserData: any;\r\n userData = {\r\n 'userID': 0,\r\n 'basfUserID': '',\r\n 'firstName': '',\r\n 'lastName': '',\r\n 'roleName': '',\r\n 'orgCode': '',\r\n 'email': '',\r\n 'positionTitle': 'testing',\r\n 'countryID': 0,\r\n 'positionID': 'test12',\r\n 'createdBy': '',\r\n 'assignHMUsers': [],\r\n 'assignHRUsers': [],\r\n validBASFUserId: true,\r\n validFirstName: true,\r\n validLastName: true,\r\n validRoles: true,\r\n validOrgCode: true,\r\n validEmail: true,\r\n invalidEmail: true,\r\n validPositionTItle: true,\r\n validHMUsers: true,\r\n validHRUsers: true,\r\n validPositionCountry: true,\r\n };\r\n selectedRoles = [];\r\n usersData: any;\r\n hrUsers = [];\r\n hmUsers = [];\r\n selectedHRUsers: any[];\r\n filteredHRUsers: any[];\r\n filteredHMUsers: any[];\r\n selectedHMUsers: any[];\r\n apiRequest = {\r\n users: [],\r\n userRoles: []\r\n }\r\n selectedCountry: any;\r\n roles = [\r\n { id: 1, roleName: 'Admin' },\r\n { id: 2, roleName: 'HRManager' },\r\n { id: 3, roleName: 'HiringManager' }\r\n ];\r\n dispAssignHMUser = false;\r\n dispAssignHRUser = false;\r\n reporteesAPIResp: any;\r\n reportingAPIResp: any;\r\n tempAPIResp: any;\r\n apiResp: any;\r\n countries = [];\r\n constructor(public ref: DynamicDialogRef, public config: DynamicDialogConfig, private spinner: NgxSpinnerService, private toastr: ToastrService) { }\r\n\r\n ngOnInit() {\r\n this.spinner.show();\r\n this.userData.createdBy = sessionStorage.getItem('userId');\r\n if (this.config.data.edit) {\r\n this.orgUserData = this.config.data.selectedUserData;\r\n this.userData.userID = this.orgUserData.userID;\r\n this.userData.basfUserID = this.orgUserData.basfUserID;\r\n this.userData.firstName = this.orgUserData.firstName;\r\n this.userData.lastName = this.orgUserData.lastName;\r\n this.userData.email = this.orgUserData.email;\r\n this.userData.orgCode = this.orgUserData.orgCode;\r\n //this.userData.positionTitle = this.orgUserData.positionTitle;\r\n this.userData.countryID = this.orgUserData.countryID;\r\n this.userData.roleName = this.orgUserData.roleName;\r\n this.selectedRoles = this.orgUserData.roleName.split(\",\");\r\n if (this.selectedRoles.includes('HRManager')) {\r\n this.dispAssignHMUser = true;\r\n this.getUserReportees();\r\n }\r\n if (this.selectedRoles.includes('HiringManager')) {\r\n this.dispAssignHRUser = true;\r\n this.getUserReporting();\r\n }\r\n }\r\n this.usersData = this.config.data.usersData;\r\n this.generatedUserData();\r\n this.generateHRUsers();\r\n this.generateHMUsers();\r\n this.getCountryList();\r\n this.spinner.show();\r\n }\r\n\r\n getCountryList() {\r\n const countryID = 0;\r\n // this.service.getJobCountryDetails(countryID).subscribe(response => {\r\n // this.apiResp = response;\r\n // this.countries = this.apiResp;\r\n // if (this.config.data.edit) {\r\n // this.generateCountryObj(this.userData.countryID);\r\n // }\r\n // })\r\n }\r\n\r\n onChangeCountry(event) {\r\n this.userData.countryID = this.selectedCountry.countryID;\r\n \r\n }\r\n\r\n generateCountryObj(countryID) {\r\n this.selectedCountry = this.countries.find(country => country.countryID == countryID);\r\n }\r\n\r\n generatedUserData() {\r\n if (this.usersData) {\r\n this.userData = JSON.parse(JSON.stringify(this.userData));\r\n }\r\n //this.selectedRoles = this.userData.role.split(\", \");\r\n }\r\n\r\n generateHRUsers() {\r\n this.tempAPIResp = this.usersData.filter(user => user.roleName === 'HRManager');\r\n this.tempAPIResp.forEach(user => {\r\n const hrObj = {\r\n userID: user.userID,\r\n basfUserID: user.basfUserID,\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n roleName: user.roleName,\r\n fullName: `${user.firstName} ${user.lastName}`,\r\n isChecked: false\r\n };\r\n this.hrUsers.push(hrObj);\r\n });\r\n this.sortHRUsers();\r\n }\r\n\r\n sortHRUsers() {\r\n this.hrUsers.sort((a, b) => { return (a.isChecked === b.isChecked) ? 0 : a ? -1 : 1; });\r\n\r\n }\r\n\r\n // filterHRUsersMultiple(event) {\r\n // let query = event.query;\r\n // this.filteredHRUsers = this.filterHRUsers(query, this.hrUsers);\r\n // }\r\n\r\n // filterHRUsers(query, Users: any[]): any[] {\r\n // //in a real application, make a request to a remote url with the query and return filtered results, for demo we filter at client side\r\n // let filtered: any[] = [];\r\n // for (let i = 0; i < Users.length; i++) {\r\n // let user = Users[i];\r\n // if (user.fullName.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n // filtered.push(user);\r\n // }\r\n // }\r\n // return filtered;\r\n // }\r\n\r\n\r\n generateHMUsers() {\r\n this.tempAPIResp = this.usersData.filter(user => user.roleName === 'HiringManager');\r\n this.tempAPIResp.forEach(user => {\r\n const hmObj = {\r\n userID: user.userID,\r\n basfUserID: user.basfUserID,\r\n firstName: user.firstName,\r\n lastName: user.lastName,\r\n roleName: user.roleName,\r\n fullName: `${user.firstName} ${user.lastName}`,\r\n isChecked: false\r\n };\r\n this.hmUsers.push(hmObj);\r\n });\r\n this.sortHMUsers();\r\n }\r\n\r\n sortHMUsers() {\r\n this.hmUsers.sort((a, b) => { return (a.isChecked === b.isChecked) ? 0 : a ? -1 : 1; });\r\n\r\n }\r\n\r\n // filterHMUsersMultiple(event) {\r\n // let query = event.query;\r\n // this.filteredHMUsers = this.filterHRUsers(query, this.hmUsers);\r\n // }\r\n\r\n // filterHMUsers(query, Users: any[]): any[] {\r\n // //in a real application, make a request to a remote url with the query and return filtered results, for demo we filter at client side\r\n // let filtered: any[] = [];\r\n // for (let i = 0; i < Users.length; i++) {\r\n // let user = Users[i];\r\n // if (user.fullName.toLowerCase().indexOf(query.toLowerCase()) == 0) {\r\n // filtered.push(user);\r\n // }\r\n // }\r\n // return filtered;\r\n // }\r\n\r\n submitUser() {\r\n // if(this.userData.basfUserID!='' && this.userData.firstName!='' && this.userData.lastName!='' && this.userData.email!='' && this.userData.countryID!=0 && this.userData.orgCode!='' && this.selectedRoles.length!=0&&this.userData.invalidEmail==true){\r\n \r\n // this.userData.userID = 0;\r\n // this.apiRequest.users.push(this.userData);\r\n // this.apiRequest.userRoles = this.buildUserRoles();\r\n // this.service.updateUser(this.apiRequest).subscribe(response => {\r\n // this.toastr.success(\"User Added Successfully\", \"Success!\");\r\n // this.ref.close();\r\n // })}else{\r\n // this.toastr.warning(\"Please Enter Required Fields\", \"Warning!\");\r\n // }\r\n }\r\n\r\n buildUserRoles() {\r\n let userRoles = [];\r\n if (this.selectedRoles.includes('HiringManager')) {\r\n const roleId = this.roles.find(role => role.roleName === 'HiringManager').id;\r\n const roleName = 'HiringManager';\r\n let selHrUsers = [];\r\n this.selectedHRUsers.forEach(user => {\r\n const userObject = {\r\n reportingID: user.userID,\r\n positionID: 123,\r\n positionTitle: \"testing\"\r\n };\r\n selHrUsers.push(userObject);\r\n })\r\n let userObj = {\r\n \"userRoleID\": roleId,\r\n \"userRole\": roleName,\r\n \"positionID\": 12345,\r\n \"positionTitle\": \"NantestTitleHR\",\r\n \"userList\": \"\",\r\n \"reportings\": selHrUsers\r\n };\r\n userRoles.push(userObj);\r\n }\r\n if (this.selectedRoles.includes('HRManager')) {\r\n const roleId = this.roles.find(role => role.roleName === 'HRManager').id;\r\n const roleName = 'HRManager';\r\n let userIds = this.selectedHMUsers.map(user => user.userID);\r\n let userStrings = userIds.toString();\r\n let userObj = {\r\n \"userRoleID\": roleId,\r\n \"userRole\": roleName,\r\n \"positionID\": 12345,\r\n \"positionTitle\": \"NantestTitleHR\",\r\n \"userList\": userStrings,\r\n \"reportings\": []\r\n };\r\n userRoles.push(userObj);\r\n }\r\n if (this.selectedRoles.includes('Admin')) {\r\n const roleId = this.roles.find(role => role.roleName === 'Admin').id;\r\n const roleName = 'Admin';\r\n\r\n let userAdminObj = {\r\n \"userRoleID\": roleId,\r\n \"userRole\": roleName,\r\n \"positionID\": 12345,\r\n \"positionTitle\": \"NantestTitleHR\",\r\n \"userList\": \"\",\r\n \"reportings\": []\r\n };\r\n userRoles.push(userAdminObj);\r\n }\r\n return userRoles;\r\n }\r\n\r\n updateUser() {\r\n this.apiRequest.users.push(this.userData);\r\n this.apiRequest.userRoles = this.buildUserRoles();\r\n // this.service.updateUser(this.apiRequest).subscribe(response => {\r\n // this.toastr.success(\"Userd Updated Successfully\", \"Success!\");\r\n // this.ref.close();\r\n // });\r\n }\r\n\r\n changedRole(event, userRole) {\r\n switch (userRole) {\r\n case 'HR': this.dispAssignHMUser = event;\r\n this.selectedRoles = this.selectedRoles.filter(e => e != 'Admin');\r\n break;\r\n case 'HM': this.dispAssignHRUser = event; this.selectedRoles = this.selectedRoles.filter(e => e != 'Admin'); break;\r\n case 'Admin':\r\n this.dispAssignHMUser = false;\r\n this.dispAssignHRUser = false;\r\n this.selectedRoles = this.selectedRoles.filter(e => e != 'HiringManager' && e != 'HRManager');\r\n this.toastr.warning(\"You cannot select HR or Hiring Manager when you are Admin\", \"Warning!\")\r\n break;\r\n }\r\n }\r\n\r\n getUserReportees() {\r\n var selectedUsers = [];\r\n // this.service.getUserReportees(this.userData.basfUserID).subscribe(response => {\r\n // this.reporteesAPIResp = response;\r\n // //this.reporteesAPIResp = this.reporteesAPIResp.filter(user => user.roleName == 'HiringManager');\r\n // this.reporteesAPIResp.forEach(user => {\r\n // user.fullName = `${user.firstName} ${user.lastName}`;\r\n // user.isChecked = true;\r\n // user.roleName = 'HiringManager';//TODO in Backend\r\n // this.hmUsers.forEach(hmUser => {\r\n // if (hmUser.userID === user.userID) {\r\n // hmUser.isChecked = true;\r\n // if (hmUser.roleName === user.roleName && selectedUsers.findIndex(x => x == hmUser) == -1) {\r\n // selectedUsers.push(hmUser);\r\n // }\r\n // }\r\n // })\r\n // });\r\n\r\n // if (selectedUsers.length > 0) {\r\n // var unSelectedUsers = this.hmUsers.filter(x => !x.isChecked);\r\n // this.hmUsers = JSON.parse(JSON.stringify(selectedUsers.concat(unSelectedUsers)));\r\n // }\r\n\r\n // this.selectedHMUsers = JSON.parse(JSON.stringify(this.reporteesAPIResp));\r\n // this.selectedHMUsers = this.selectedHMUsers.filter((v, i, a) => a.findIndex(t => (t.userID === v.userID)) === i); //&& t.roleName == 'HiringManager')) === i);\r\n // this.sortHMUsers();\r\n // });\r\n\r\n }\r\n\r\n getUserReporting() {\r\n var selectedUsers = [];\r\n // this.service.getUserReporting(this.userData.basfUserID).subscribe(response => {\r\n // this.reportingAPIResp = response;\r\n // //this.reporteesAPIResp = this.reportingAPIResp.filter(user => user.roleName == 'HRManager');\r\n // this.reportingAPIResp.forEach(user => {\r\n // user.fullName = `${user.firstName} ${user.lastName}`;\r\n // user.isChecked = true;\r\n // user.roleName = 'HRManager';//TODO in Backend\r\n // this.hrUsers.forEach(hrUser => {\r\n // if (hrUser.userID === user.userID) {\r\n // hrUser.isChecked = true;\r\n // if (hrUser.roleName === user.roleName && selectedUsers.findIndex(x => x == hrUser) == -1) {\r\n // selectedUsers.push(hrUser);\r\n // }\r\n // }\r\n // })\r\n // });\r\n\r\n // if (selectedUsers.length > 0) {\r\n // var unSelectedUsers = this.hrUsers.filter(x => !x.isChecked);\r\n // this.hrUsers = JSON.parse(JSON.stringify(selectedUsers.concat(unSelectedUsers)));\r\n // }\r\n\r\n // this.selectedHRUsers = JSON.parse(JSON.stringify(this.reportingAPIResp));\r\n // this.selectedHRUsers = this.selectedHRUsers.filter((v, i, a) => a.findIndex(t => (t.userID === v.userID)) === i); // && t.roleName == 'HRManager'))===i);\r\n // this.sortHRUsers();\r\n // })\r\n }\r\n\r\n checkValidation(fieldName) {\r\n \r\n switch (fieldName) { \r\n case 'BASFId': this.userData.validBASFUserId = !!(this.userData.basfUserID); break;\r\n case 'FN': this.userData.validFirstName = !!(this.userData.firstName); break;\r\n case 'LN': this.userData.validLastName = !!(this.userData.lastName); break;\r\n }\r\n }\r\n \r\n changeHMUserValue(selectedUsers) {\r\n selectedUsers.forEach(sUser => {\r\n this.hmUsers.forEach(hmUser => {\r\n if (hmUser.userID == sUser.userID) {\r\n hmUser.isChecked = true;\r\n }\r\n })\r\n });\r\n this.sortHMUsers();\r\n }\r\n\r\n changeHRUserValue(selectedUsers) {\r\n selectedUsers.forEach(sUser => {\r\n this.hrUsers.forEach(hrUser => {\r\n if (hrUser.userID == sUser.userID) {\r\n hrUser.isChecked = true;\r\n }\r\n })\r\n });\r\n this.sortHRUsers();\r\n }\r\n cancel(){\r\n this.userData.basfUserID='';\r\n this.userData.firstName='';\r\n this.userData.lastName='';\r\n this.userData.email='';\r\n this.userData.orgCode='';\r\n\r\n }\r\n Reset(){\r\n if (this.config.data.edit) {\r\n this.orgUserData = this.config.data.selectedUserData;\r\n this.userData.userID = this.orgUserData.userID;\r\n this.userData.basfUserID = this.orgUserData.basfUserID;\r\n this.userData.firstName = this.orgUserData.firstName;\r\n this.userData.lastName = this.orgUserData.lastName;\r\n this.userData.email = this.orgUserData.email;\r\n this.userData.orgCode = this.orgUserData.orgCode;\r\n //this.userData.positionTitle = this.orgUserData.positionTitle;\r\n this.userData.countryID = this.orgUserData.countryID;\r\n this.userData.roleName = this.orgUserData.roleName;\r\n this.selectedRoles = this.orgUserData.roleName.split(\",\");\r\n if (this.selectedRoles.includes('HRManager')) {\r\n this.dispAssignHMUser = true;\r\n this.getUserReportees();\r\n }\r\n if (this.selectedRoles.includes('HiringManager')) {\r\n this.dispAssignHRUser = true;\r\n this.getUserReporting();\r\n }\r\n }\r\n }\r\n checkBASFIdValidation() { \r\n if(this.userData.basfUserID ==''){\r\n this.userData.validBASFUserId =false; \r\n }else{\r\n this.userData.validBASFUserId =true;\r\n }\r\n }\r\n checkFirstNameValidation() { \r\n if(this.userData.firstName ==''){\r\n this.userData.validFirstName =false; \r\n }else{\r\n this.userData.validFirstName =true;\r\n }\r\n }\r\n checkLastNameValidation() { \r\n if(this.userData.lastName ==''){\r\n this.userData.validLastName =false; \r\n }else{\r\n this.userData.validLastName =true;\r\n }\r\n }\r\n checkEmailValidation() { \r\n if(this.userData.email ==''){\r\n this.userData.validEmail =false; \r\n }else{\r\n this.userData.validEmail =true;\r\n var reg = /^[A-Z0-9._%+-]+@([A-Z0-9-]+\\.)+[A-Z]{2,4}$/i;\r\n if(reg.test(this.userData.email)){\r\n this.userData.invalidEmail=true;\r\n }else{\r\n this.userData.invalidEmail=false;\r\n }\r\n }\r\n }\r\n checkOrgCodeValidation() { \r\n if(this.userData.orgCode ==''){\r\n this.userData.validOrgCode =false; \r\n }else{\r\n this.userData.validOrgCode =true;\r\n }\r\n }\r\n checkCountryValidation() { \r\n if(this.userData.countryID ==0){\r\n this.userData.validPositionCountry =false; \r\n }else{\r\n this.userData.validPositionCountry =true;\r\n }\r\n }\r\n checkSelectedRolesValidation() { \r\n if(this.selectedRoles.length ==0){\r\n this.userData.validRoles =false; \r\n }else{\r\n this.userData.validRoles =true;\r\n }\r\n }\r\n\r\n}\r\n","export default \"p-dynamicdialog .ui-dialog {\\r\\n min-height: -webkit-fit-content;\\r\\n min-height: -moz-fit-content;\\r\\n min-height: fit-content;\\r\\n max-height: 600px; \\r\\n transform: translateX(-50%) translateY(-50%) scale(1) !important;\\r\\n}\\r\\np-dynamicdialog .ui-dialog-titlebar {\\r\\n background-color: #004890 !important;\\r\\n color: white !important;\\r\\n}\\r\\np-dynamicdialog .ui-dialog-titlebar-icon {\\r\\n color: white !important;\\r\\n}\\r\\n#userTable .activ-btn {\\r\\n background-color: #004890;\\r\\n width: 125px;\\r\\n border-radius: 5px !important;\\r\\n margin-bottom: 10px !important;\\r\\n color: white;\\r\\n}\\r\\n#userTable .ui-table .ui-table-thead > tr > th {\\r\\n background-color: #004890 !important;\\r\\n color: white !important;\\r\\n}\\r\\n#userTable .ui-button.ui-state-default.ui-button-info, body .ui-buttonset.ui-button-info > .ui-button.ui-state-default {\\r\\n background-color: #004890 !important;\\r\\n color: white !important;\\r\\n}\\r\\n#userTable .def-table .ui-table .ui-table-thead>tr>th, .ui-table .ui-table-tbody>tr>td, .ui-table .ui-table-tfoot>tr>td {\\r\\n padding: 0.571em 0.857em !important;\\r\\n}\\r\\n#userTable .ui-paginator {\\r\\n background-color: transparent !important; \\r\\n border: none !important;\\r\\n padding: 0;\\r\\n padding-top: 5px !important;\\r\\n text-align: end !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvY29tcG9uZW50cy91c2Vycy91c2VyLXNjcmVlbi91c2VyLXNjcmVlbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksK0JBQXVCO0lBQXZCLDRCQUF1QjtJQUF2Qix1QkFBdUI7SUFDdkIsaUJBQWlCO0lBQ2pCLGdFQUFnRTtBQUNwRTtBQUNBO0lBQ0ksb0NBQW9DO0lBQ3BDLHVCQUF1QjtBQUMzQjtBQUNBO0lBQ0ksdUJBQXVCO0FBQzNCO0FBQ0E7SUFDSSx5QkFBeUI7SUFDekIsWUFBWTtJQUNaLDZCQUE2QjtJQUM3Qiw4QkFBOEI7SUFDOUIsWUFBWTtBQUNoQjtBQUVBO0lBQ0ksb0NBQW9DO0lBQ3BDLHVCQUF1QjtBQUMzQjtBQUVBO0lBQ0ksb0NBQW9DO0lBQ3BDLHVCQUF1QjtBQUMzQjtBQUVBO0lBQ0ksbUNBQW1DO0FBQ3ZDO0FBQ0E7SUFDSSx3Q0FBd0M7SUFDeEMsdUJBQXVCO0lBQ3ZCLFVBQVU7SUFDViwyQkFBMkI7SUFDM0IsMEJBQTBCO0FBQzlCIiwiZmlsZSI6InNyYy9hcHAvY29tcG9uZW50cy91c2Vycy91c2VyLXNjcmVlbi91c2VyLXNjcmVlbi5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsicC1keW5hbWljZGlhbG9nIC51aS1kaWFsb2cge1xyXG4gICAgbWluLWhlaWdodDogZml0LWNvbnRlbnQ7XHJcbiAgICBtYXgtaGVpZ2h0OiA2MDBweDsgXHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxKSAhaW1wb3J0YW50O1xyXG59XHJcbnAtZHluYW1pY2RpYWxvZyAudWktZGlhbG9nLXRpdGxlYmFyICB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxufVxyXG5wLWR5bmFtaWNkaWFsb2cgLnVpLWRpYWxvZy10aXRsZWJhci1pY29uIHtcclxuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG59XHJcbiN1c2VyVGFibGUgLmFjdGl2LWJ0biB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA0ODkwO1xyXG4gICAgd2lkdGg6IDEyNXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbiN1c2VyVGFibGUgLnVpLXRhYmxlIC51aS10YWJsZS10aGVhZCA+IHRyID4gdGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiN1c2VyVGFibGUgLnVpLWJ1dHRvbi51aS1zdGF0ZS1kZWZhdWx0LnVpLWJ1dHRvbi1pbmZvLCBib2R5IC51aS1idXR0b25zZXQudWktYnV0dG9uLWluZm8gPiAudWktYnV0dG9uLnVpLXN0YXRlLWRlZmF1bHQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiN1c2VyVGFibGUgLmRlZi10YWJsZSAudWktdGFibGUgLnVpLXRhYmxlLXRoZWFkPnRyPnRoLCAudWktdGFibGUgLnVpLXRhYmxlLXRib2R5PnRyPnRkLCAudWktdGFibGUgLnVpLXRhYmxlLXRmb290PnRyPnRkIHtcclxuICAgIHBhZGRpbmc6IDAuNTcxZW0gMC44NTdlbSAhaW1wb3J0YW50O1xyXG59XHJcbiN1c2VyVGFibGUgLnVpLXBhZ2luYXRvciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyBcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBhZGRpbmctdG9wOiA1cHggIWltcG9ydGFudDtcclxuICAgIHRleHQtYWxpZ246IGVuZCAhaW1wb3J0YW50O1xyXG59Il19 */\"","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { FilterUtils } from 'primeng/api';\r\nimport { DialogService } from 'primeng/api';\r\n\r\nimport { UserPopupComponent } from '../user-popup/user-popup.component';\r\n\r\n@Component({\r\n selector: 'app-user-screen',\r\n templateUrl: './user-screen.component.html',\r\n styleUrls: ['./user-screen.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n providers: [DialogService]\r\n})\r\nexport class UserScreenComponent implements OnInit {\r\n\r\n userData: any;\r\n cols: any[];\r\n apiResp: any;\r\n constructor(private router: Router, private spinner: NgxSpinnerService, private toastr: ToastrService, public dialogService: DialogService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.cols = [\r\n { field: 'basfUserID', header: 'BASF ID' },\r\n { field: 'firstName', header: 'First Name' },\r\n { field: 'lastName', header: 'Last Name' },\r\n { field: 'email', header: 'Email' },\r\n // { field: 'country', header: 'Country' },\r\n { field: 'orgCode', header: 'OrgCode' },\r\n // { field: 'designation', header: 'Designation' },\r\n { field: 'roleName', header: 'Role' },\r\n // { field: 'assignedUser', header: 'Assigned User' }\r\n ];\r\n this.getUsers();\r\n FilterUtils['custom'] = (value, filter): boolean => {\r\n if (filter === undefined || filter === null || filter.trim() === '') {\r\n return true;\r\n }\r\n\r\n if (value === undefined || value === null) {\r\n return false;\r\n }\r\n\r\n return parseInt(filter) > value;\r\n }\r\n }\r\n\r\n getUsers() {\r\n this.spinner.show();\r\n /* this.service.getUsersWithRoles().subscribe(response => {\r\n this.apiResp = response;\r\n this.userData = this.apiResp;\r\n this.spinner.hide();\r\n }) */\r\n }\r\n\r\n editUser(selectedUserData) {\r\n const ref = this.dialogService.open(UserPopupComponent, {\r\n data: {\r\n selectedUserData: selectedUserData,\r\n usersData: this.userData,\r\n edit: true\r\n },\r\n header: 'Edit User',\r\n width: '70%'\r\n });\r\n // ref.onClose.subscribe(() => {\r\n // this.getUsers();\r\n // })\r\n }\r\n\r\n newUser() {\r\n const ref = this.dialogService.open(UserPopupComponent, {\r\n data: {\r\n selectedUserData: {},\r\n usersData: this.userData,\r\n edit: false\r\n },\r\n header: 'New User',\r\n width: '70%'\r\n });\r\n // ref.onClose.subscribe(() => {\r\n // this.getUsers();\r\n // })\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2NvbXBvbmVudHMvdmlldy1hdHRhY2htZW50cy92aWV3LWF0dGFjaG1lbnRzLmNvbXBvbmVudC5jc3MifQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Global } from 'src/app/global';\r\n\r\n@Component({\r\n selector: 'app-view-attachments',\r\n templateUrl: './view-attachments.component.html',\r\n styleUrls: ['./view-attachments.component.css']\r\n})\r\nexport class ViewAttachmentsComponent implements OnInit {\r\n globalValue: any;\r\n constructor(private global: Global) {\r\n this.globalValue = global;\r\n }\r\n\r\n ngOnInit() {\r\n window.open(this.globalValue.attachmentsURL, '_blank');\r\n }\r\n\r\n}\r\n","export default \"body .ui-table .ui-table-thead>tr>th {\\r\\n background-color: white;\\r\\n color:#004890;\\r\\n font-size: 14px;\\r\\n font-weight: 600;\\r\\n padding: 3px;\\r\\n text-align: center;\\r\\n border: 1px solid #e1f0ff;\\r\\n min-width: 100px !important;\\r\\n}\\r\\nlabel {font-weight:bold}\\r\\nbody .ui-table .ui-table-thead>tr>th>div {\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n}\\r\\nbody .ui-table .ui-table-tbody>tr>td {\\r\\n font-size: 14px;\\r\\n word-break: break-all;\\r\\n white-space: nowrap;\\r\\n overflow: hidden;\\r\\n padding: 0 4px;\\r\\n color: black;\\r\\n font-weight: 500;\\r\\n border: 1px solid #e1f0ff;\\r\\n text-overflow: ellipsis;\\r\\n vertical-align: top !important;\\r\\n}\\r\\n.grid-btn {\\r\\n background-color: #004890;\\r\\n float: left;\\r\\n width: auto;\\r\\n border-radius: 5px;\\r\\n margin-right: 10px;\\r\\n color: white;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvZG9jdW1lbnRzLWxpbmsvZG9jdW1lbnRzLWxpbmsuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLHVCQUF1QjtJQUN2QixhQUFhO0lBQ2IsZUFBZTtJQUNmLGdCQUFnQjtJQUNoQixZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLHlCQUF5QjtJQUN6QiwyQkFBMkI7QUFDL0I7QUFDQSxPQUFPLGdCQUFnQjtBQUV2QjtJQUNJLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLHVCQUF1QjtBQUMzQjtBQUNBO0lBQ0ksZUFBZTtJQUNmLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsOEJBQThCO0FBQ2xDO0FBQ0E7SUFDSSx5QkFBeUI7SUFDekIsV0FBVztJQUNYLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLFlBQVk7QUFDaEIiLCJmaWxlIjoic3JjL2FwcC9kb2N1bWVudHMtbGluay9kb2N1bWVudHMtbGluay5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiYm9keSAudWktdGFibGUgLnVpLXRhYmxlLXRoZWFkPnRyPnRoIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgY29sb3I6IzAwNDg5MDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBwYWRkaW5nOiAzcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTFmMGZmO1xyXG4gICAgbWluLXdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xyXG59XHJcbmxhYmVsIHtmb250LXdlaWdodDpib2xkfVxyXG5cclxuYm9keSAudWktdGFibGUgLnVpLXRhYmxlLXRoZWFkPnRyPnRoPmRpdiB7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcbmJvZHkgLnVpLXRhYmxlIC51aS10YWJsZS10Ym9keT50cj50ZCB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBhZGRpbmc6IDAgNHB4O1xyXG4gICAgY29sb3I6IGJsYWNrO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWYwZmY7XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcclxufVxyXG4uZ3JpZC1idG4ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDg5MDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbn0iXX0= */\"","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { SelectItem } from 'primeng/api';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-documents-link',\r\n templateUrl: './documents-link.component.html',\r\n styleUrls: ['./documents-link.component.css']\r\n})\r\nexport class DocumentsLinkComponent implements OnInit {\r\n\r\ndocumentsURLs: any;\r\n\r\n cols: any[];\r\n carUrls: SelectItem[];\r\n apiResp:any;\r\n routerLinkVariable:any;\r\n\r\n constructor(private _Service: RailFleetService,private router: Router) {\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this._Service.getAllDocumentsUrls().subscribe(response => {\r\n this.documentsURLs=response;\r\n });\r\n\r\n this.cols = [\r\n { field: 'descriptionName', header: 'Description Name' },\r\n { field: 'url', header: 'URLS' } \r\n ];\r\n this.routerLinkVariable\r\n \r\n }\r\n onGoToPage2(data:any)\r\n {\r\n window.open(data, '_blank');\r\n }\r\n backToGrid()\r\n {\r\n this.router.navigate(['/rail-car']);\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2RvY3VtZW50dXJscy1tYXN0ZXIvZG9jdW1lbnR1cmxzLWZvcm0vZG9jdW1lbnR1cmxzLWZvcm0uY29tcG9uZW50LmNzcyJ9 */\"","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-documenturls-form',\r\n templateUrl: './documenturls-form.component.html',\r\n styleUrls: ['./documenturls-form.component.css']\r\n})\r\nexport class DocumenturlsFormComponent implements OnInit {\r\n newUser: boolean = true;\r\n region = 1;\r\n userForm: FormGroup;\r\n bus:any;\r\n roles:any;\r\n // @Input() userAdmin;\r\n Admin=false;\r\n selected=[];\r\n record=[];\r\n constructor(@Inject(MAT_DIALOG_DATA) private Data: any, private dialogRef: MatDialogRef, private _service: RailFleetService, private _toast: ToastrService) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.userForm = new FormGroup({\r\n dUrlID:new FormControl('',[Validators.required]), \r\n descriptionName: new FormControl('', [Validators.required]),\r\n url: new FormControl('', [Validators.required]), \r\n });\r\n \r\n if (this.Data.isModify && this.Data != undefined) \r\n {\r\n this.userForm.controls.dUrlID.setValue(this.Data.dUrlID); \r\n this.userForm.controls.descriptionName.setValue(this.Data.descriptionName);\r\n this.userForm.controls.url.setValue(this.Data.url);\r\n this.newUser=this.Data.newUser;\r\n }\r\n }\r\n public hasError = (controlName: string, errorName: string) => {\r\n return this.userForm.controls[controlName].hasError(errorName);\r\n }\r\n onSend() {\r\n if (this.userForm.valid && this.Data.isModify) {\r\n const acPayLoad = {\r\n dUrlID: this.userForm.controls.dUrlID.value,\r\n descriptionName: this.userForm.controls.descriptionName.value,\r\n url: this.userForm.controls.url.value,\r\n actionBy: \"Prabhu\",\r\n action: \"Update\"\r\n }\r\n this._service.updateDocumentsUrls(acPayLoad).subscribe(res => { this._toast.success(\"Document Link Successfully Updated\") });\r\n } else{\r\n const acPayLoad = {\r\n dUrlID : 0,\r\n descriptionName: this.userForm.controls.descriptionName.value,\r\n url: this.userForm.controls.url.value,\r\n actionBy: \"Prabhu\",\r\n action: \"Add\"\r\n }\r\n this._service.updateDocumentsUrls(acPayLoad).subscribe(res => { this._toast.success(\"Document Link Created Successfully\") });\r\n } \r\n \r\n this.dialogRef.close();\r\n }\r\n\r\n}\r\n","export default \"th {\\r\\n background-color:#e3f2fd;\\r\\n color: black;\\r\\n vertical-align: bottom;\\r\\n font-size: 1em;\\r\\n }\\r\\n \\r\\n table {\\r\\n border-spacing: 0 8px !important;\\r\\n }\\r\\n \\r\\n ::ng-deep .mat-sort-header-arrow {\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n .mat-header-cell, .mat-footer-cell, .mat-cell {\\r\\n min-width: 100px;\\r\\n box-sizing: border-box;\\r\\n text-align: center;\\r\\n }\\r\\n \\r\\n td.mat-cell {\\r\\n text-align: left !important;\\r\\n padding: 0px !important;\\r\\n font-size: 1em;\\r\\n \\r\\n }\\r\\n \\r\\n th.mat-header-cell {\\r\\n text-align: left !important;\\r\\n padding: 0px !important;\\r\\n }\\r\\n \\r\\n .modified {\\r\\n background-color: #8414e6;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .discontinue {\\r\\n background-color: #e61414;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .new {\\r\\n background-color: #3ee614;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .mat-sort-header-arrow {\\r\\n color: #fff8f8;\\r\\n }\\r\\n \\r\\n @media screen and (min-width: 1000px){\\r\\n .container {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n overflow-x: scroll;\\r\\n }\\r\\n }\\r\\n \\r\\n @media screen and (min-width: 1052px) {\\r\\n .container {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n overflow-x: scroll;\\r\\n }\\r\\n }\\r\\n \\r\\n @media screen and (min-width: 1407px) {\\r\\n .container {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n overflow-x: scroll;\\r\\n }\\r\\n}\\r\\n \\r\\n @media screen and (min-width: 320px) and (max-width: 768px) {\\r\\n .container{\\r\\n left: 10px !important;\\r\\n right: 10px !important;\\r\\n overflow-x: scroll;\\r\\n }\\r\\n}\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvZG9jdW1lbnR1cmxzLW1hc3Rlci9kb2N1bWVudHVybHMtbWFzdGVyL2RvY3VtZW50dXJscy1tYXN0ZXIuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLHdCQUF3QjtJQUN4QixZQUFZO0lBQ1osc0JBQXNCO0lBQ3RCLGNBQWM7RUFDaEI7O0VBRUE7SUFDRSxnQ0FBZ0M7RUFDbEM7O0VBRUE7SUFDRSxXQUFXO0VBQ2I7O0VBRUE7SUFDRSxnQkFBZ0I7SUFDaEIsc0JBQXNCO0lBQ3RCLGtCQUFrQjtFQUNwQjs7RUFFQTtJQUNFLDJCQUEyQjtJQUMzQix1QkFBdUI7SUFDdkIsY0FBYzs7RUFFaEI7O0VBR0E7SUFDRSwyQkFBMkI7SUFDM0IsdUJBQXVCO0VBQ3pCOztFQUdBO0lBQ0UseUJBQXlCO0lBQ3pCLFlBQVk7RUFDZDs7RUFFQTtJQUNFLHlCQUF5QjtJQUN6QixZQUFZO0VBQ2Q7O0VBRUE7SUFDRSx5QkFBeUI7SUFDekIsWUFBWTtFQUNkOztFQUVBO0lBQ0UsY0FBYztFQUNoQjs7RUFDQTtJQUNFO01BQ0UsMENBQTBDO01BQzFDLGtCQUFrQjtJQUNwQjtFQUNGOztFQUNBO0lBQ0U7TUFDRSwwQ0FBMEM7TUFDMUMsa0JBQWtCO0lBQ3BCO0VBQ0Y7O0VBQ0E7SUFDRTtNQUNFLDBDQUEwQztNQUMxQyxrQkFBa0I7SUFDcEI7QUFDSjs7RUFDQTtJQUNJO1FBQ0kscUJBQXFCO1FBQ3JCLHNCQUFzQjtRQUN0QixrQkFBa0I7SUFDdEI7QUFDSiIsImZpbGUiOiJzcmMvYXBwL2RvY3VtZW50dXJscy1tYXN0ZXIvZG9jdW1lbnR1cmxzLW1hc3Rlci9kb2N1bWVudHVybHMtbWFzdGVyLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJ0aCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiNlM2YyZmQ7XHJcbiAgICBjb2xvcjogYmxhY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG4gICAgZm9udC1zaXplOiAxZW07XHJcbiAgfVxyXG4gIFxyXG4gIHRhYmxlIHtcclxuICAgIGJvcmRlci1zcGFjaW5nOiAwIDhweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICA6Om5nLWRlZXAgLm1hdC1zb3J0LWhlYWRlci1hcnJvdyB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbiAgXHJcbiAgLm1hdC1oZWFkZXItY2VsbCwgLm1hdC1mb290ZXItY2VsbCwgLm1hdC1jZWxsIHtcclxuICAgIG1pbi13aWR0aDogMTAwcHg7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICBcclxuICB0ZC5tYXQtY2VsbCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcclxuICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgXHJcbiAgfVxyXG4gIFxyXG4gIFxyXG4gIHRoLm1hdC1oZWFkZXItY2VsbCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgLm1vZGlmaWVkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM4NDE0ZTY7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgfVxyXG4gIFxyXG4gIC5kaXNjb250aW51ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTYxNDE0O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gIH1cclxuICBcclxuICAubmV3IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZWU2MTQ7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgfVxyXG4gIFxyXG4gIC5tYXQtc29ydC1oZWFkZXItYXJyb3cge1xyXG4gICAgY29sb3I6ICNmZmY4Zjg7XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMDBweCl7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMyMHB4KSAhaW1wb3J0YW50O1xyXG4gICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNTJweCkge1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMjBweCkgIWltcG9ydGFudDtcclxuICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xyXG4gICAgfVxyXG4gIH1cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDA3cHgpIHtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzIwcHgpICFpbXBvcnRhbnQ7XHJcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcclxuICAgIH1cclxufVxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAuY29udGFpbmVye1xyXG4gICAgICAgIGxlZnQ6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICByaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcclxuICAgIH1cclxufVxyXG4gICJdfQ== */\"","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DialogpopupComponent } from 'src/app/common/dialogpopup/dialogpopup.component';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\nimport { DocumenturlsFormComponent } from '../documenturls-form/documenturls-form.component';\r\n\r\n@Component({\r\n selector: 'app-documenturls-master',\r\n templateUrl: './documenturls-master.component.html',\r\n styleUrls: ['./documenturls-master.component.css']\r\n})\r\nexport class DocumenturlsMasterComponent implements OnInit {\r\n\r\n dataSource = new MatTableDataSource();\r\n apires:any;\r\n role:any;\r\n userNotFound=false;\r\n constructor(private railfleetservice: RailFleetService,private toastr: ToastrService, private spinner: NgxSpinnerService, private matdialog: MatDialog, private router: Router) { }\r\n \r\n\r\n displayedColumns = ['descriptionName', 'url','Edit','Remove'];\r\n\r\n ngOnInit(): void {\r\n this.role=sessionStorage.getItem('role');\r\n if(!(this.role!='Admin'))\r\n {\r\n this.getAllDocumentUrls();\r\n }else{\r\n this.userNotFound=true;\r\n this.railfleetservice.setNavmenustatus(false);\r\n }\r\n \r\n }\r\n getAllDocumentUrls() {\r\n this.dataSource.data = [];\r\n this.railfleetservice.getAllDocumentsUrls().subscribe((res: any) => {\r\n this.apires=res;\r\n this.dataSource.data = this.apires;\r\n })\r\n }\r\n\r\n refresh() {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate(['/documentslinks-master']);\r\n }\r\n\r\n onAddUser() {\r\n //write a component form\r\n var dialogref = this.matdialog.open(DocumenturlsFormComponent, { data: { isModify: false } });\r\n dialogref.afterClosed().subscribe(res => {\r\n this.getAllDocumentUrls();\r\n });\r\n }\r\n \r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n \r\n onEditUser(documenturl:any) { \r\n \r\n var dialogref = this.matdialog.open(DocumenturlsFormComponent, {\r\n data: {\r\n isModify: true,\r\n newUser: false,\r\n dUrlID:documenturl.dUrlID,\r\n descriptionName: documenturl.descriptionName,\r\n url: documenturl.url,\r\n }\r\n });\r\n dialogref.afterClosed().subscribe(res => {\r\n this.refresh();\r\n });\r\n }\r\n\r\n onRemoveUser(documenturl: any) {\r\n var record=[];\r\n var dialogref = this.matdialog.open(DialogpopupComponent, { data: { message: 'Are you sure you want to delete user ' + documenturl.descriptionName, title: 'Confirm Delete' } })\r\n dialogref.afterClosed().subscribe(res => {\r\n if (res) {\r\n const acPayLoad = {\r\n dUrlID:documenturl.dUrlID,\r\n descriptionName: documenturl.descriptionName,\r\n url: documenturl.url,\r\n actionBy: \"Prabhu\",\r\n action: \"Deactivate\"\r\n }\r\n this.railfleetservice.updateDocumentsUrls(acPayLoad).subscribe(res => {\r\n this.toastr.success(\"Document Link removed successfully\");\r\n this.getAllDocumentUrls();\r\n });\r\n }\r\n });\r\n \r\n }\r\n onGoToPage2(data:any)\r\n {\r\n window.open(data, '_blank');\r\n }\r\n onRailCar()\r\n {\r\n this.router.navigate(['/railcarlinks-master']);\r\n }\r\n onDocument()\r\n {\r\n this.router.navigate(['/documentslinks-master']);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class Global {\r\n attachmentsURL: string = 'https://basf.sharepoint.com/sites/rail-cars-dwell-report/Shared%20Documents/Forms/AllItems.aspx?RootFolder=%2Fsites%2Frail%2Dcars%2Ddwell%2Dreport%2FShared%20Documents%2FMiscellaneous%2FSPECS%2C%20drawings%2C%20gauge%20tables%2C%20and%20MSDS%2FGeneral%20Drawings&FolderCTID=0x01200073FABD9E2E0A664DAB61F6F202514C78';\r\n \r\n}","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL3JhaWxjYXJ1cmxzLW1hc3Rlci9yYWlsY2FydXJscy1mb3JtL3JhaWxjYXJ1cmxzLWZvcm0uY29tcG9uZW50LmNzcyJ9 */\"","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\n\r\n@Component({\r\n selector: 'app-railcarurls-form',\r\n templateUrl: './railcarurls-form.component.html',\r\n styleUrls: ['./railcarurls-form.component.css']\r\n})\r\nexport class RailcarurlsFormComponent implements OnInit {\r\n\r\n newUser: boolean = true;\r\n region = 1;\r\n userForm: FormGroup;\r\n bus:any;\r\n roles:any;\r\n // @Input() userAdmin;\r\n Admin=false;\r\n selected=[];\r\n record=[];\r\n constructor(@Inject(MAT_DIALOG_DATA) private Data: any, private dialogRef: MatDialogRef, private _service: RailFleetService, private _toast: ToastrService) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.userForm = new FormGroup({\r\n urlID:new FormControl('',[Validators.required]), \r\n descriptionName: new FormControl('', [Validators.required]),\r\n url: new FormControl('', [Validators.required]),\r\n // region: new FormControl('Global', [Validators.required]),\r\n // role: new FormControl('Global Master Data Coordinator', [Validators.required])\r\n \r\n });\r\n \r\n if (this.Data.isModify && this.Data != undefined) \r\n {\r\n this.userForm.controls.urlID.setValue(this.Data.urlID); \r\n this.userForm.controls.descriptionName.setValue(this.Data.descriptionName);\r\n this.userForm.controls.url.setValue(this.Data.url);\r\n this.newUser=this.Data.newUser;\r\n }\r\n }\r\n public hasError = (controlName: string, errorName: string) => {\r\n return this.userForm.controls[controlName].hasError(errorName);\r\n }\r\n onSend() {\r\n if (this.userForm.valid && this.Data.isModify) {\r\n const acPayLoad = {\r\n urlID: this.userForm.controls.urlID.value,\r\n descriptionName: this.userForm.controls.descriptionName.value,\r\n url: this.userForm.controls.url.value,\r\n actionBy: \"Prabhu\",\r\n action: \"Update\"\r\n }\r\n this._service.updateRailCarUrls(acPayLoad).subscribe(res => { this._toast.success(\"User Successfully Updated\") });\r\n } else{\r\n const acPayLoad = {\r\n urlID : 0,\r\n descriptionName: this.userForm.controls.descriptionName.value,\r\n url: this.userForm.controls.url.value,\r\n actionBy: \"Prabhu\",\r\n action: \"Add\"\r\n }\r\n this._service.updateRailCarUrls(acPayLoad).subscribe(res => { this._toast.success(\"User Created Successfully\") });\r\n }\r\n this.dialogRef.close();\r\n }\r\n}\r\n","export default \"th {\\r\\n background-color:#e3f2fd;\\r\\n color: black;\\r\\n vertical-align: bottom;\\r\\n font-size: 1em;\\r\\n }\\r\\n \\r\\n table {\\r\\n border-spacing: 0 8px !important;\\r\\n }\\r\\n \\r\\n ::ng-deep .mat-sort-header-arrow {\\r\\n color: #fff;\\r\\n }\\r\\n \\r\\n .mat-header-cell, .mat-footer-cell, .mat-cell {\\r\\n min-width: 100px;\\r\\n box-sizing: border-box;\\r\\n text-align: center;\\r\\n }\\r\\n \\r\\n td.mat-cell {\\r\\n text-align: left !important;\\r\\n padding: 0px !important;\\r\\n font-size: 1em;\\r\\n \\r\\n }\\r\\n \\r\\n th.mat-header-cell {\\r\\n text-align: left !important;\\r\\n padding: 0px !important;\\r\\n }\\r\\n \\r\\n .modified {\\r\\n background-color: #8414e6;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .discontinue {\\r\\n background-color: #e61414;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .new {\\r\\n background-color: #3ee614;\\r\\n color: white;\\r\\n }\\r\\n \\r\\n .mat-sort-header-arrow {\\r\\n color: #fff8f8;\\r\\n }\\r\\n \\r\\n /* @media screen and (min-width: 1000px){\\r\\n .container {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n overflow-x: scroll;\\r\\n }\\r\\n }\\r\\n @media screen and (min-width: 1052px) {\\r\\n .container {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n overflow-x: scroll;\\r\\n }\\r\\n }\\r\\n @media screen and (min-width: 1407px) {\\r\\n .container {\\r\\n max-height: calc(100vh - 320px) !important;\\r\\n overflow-x: scroll;\\r\\n }\\r\\n}\\r\\n@media screen and (min-width: 320px) and (max-width: 768px) {\\r\\n .container{\\r\\n left: 10px !important;\\r\\n right: 10px !important;\\r\\n overflow-x: scroll;\\r\\n }\\r\\n} */\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvcmFpbGNhcnVybHMtbWFzdGVyL3JhaWxjYXJ1cmxzLW1hc3Rlci9yYWlsY2FydXJscy1tYXN0ZXIuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtJQUNJLHdCQUF3QjtJQUN4QixZQUFZO0lBQ1osc0JBQXNCO0lBQ3RCLGNBQWM7RUFDaEI7O0VBRUE7SUFDRSxnQ0FBZ0M7RUFDbEM7O0VBRUE7SUFDRSxXQUFXO0VBQ2I7O0VBRUE7SUFDRSxnQkFBZ0I7SUFDaEIsc0JBQXNCO0lBQ3RCLGtCQUFrQjtFQUNwQjs7RUFFQTtJQUNFLDJCQUEyQjtJQUMzQix1QkFBdUI7SUFDdkIsY0FBYzs7RUFFaEI7O0VBR0E7SUFDRSwyQkFBMkI7SUFDM0IsdUJBQXVCO0VBQ3pCOztFQUdBO0lBQ0UseUJBQXlCO0lBQ3pCLFlBQVk7RUFDZDs7RUFFQTtJQUNFLHlCQUF5QjtJQUN6QixZQUFZO0VBQ2Q7O0VBRUE7SUFDRSx5QkFBeUI7SUFDekIsWUFBWTtFQUNkOztFQUVBO0lBQ0UsY0FBYztFQUNoQjs7RUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0JDIiwiZmlsZSI6InNyYy9hcHAvcmFpbGNhcnVybHMtbWFzdGVyL3JhaWxjYXJ1cmxzLW1hc3Rlci9yYWlsY2FydXJscy1tYXN0ZXIuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbInRoIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6I2UzZjJmZDtcclxuICAgIGNvbG9yOiBibGFjaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxuICB9XHJcbiAgXHJcbiAgdGFibGUge1xyXG4gICAgYm9yZGVyLXNwYWNpbmc6IDAgOHB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAubWF0LXNvcnQtaGVhZGVyLWFycm93IHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICBcclxuICAubWF0LWhlYWRlci1jZWxsLCAubWF0LWZvb3Rlci1jZWxsLCAubWF0LWNlbGwge1xyXG4gICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gIFxyXG4gIHRkLm1hdC1jZWxsIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC1zaXplOiAxZW07XHJcbiAgICBcclxuICB9XHJcbiAgXHJcbiAgXHJcbiAgdGgubWF0LWhlYWRlci1jZWxsIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBcclxuICBcclxuICAubW9kaWZpZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg0MTRlNjtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICB9XHJcbiAgXHJcbiAgLmRpc2NvbnRpbnVlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNjE0MTQ7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgfVxyXG4gIFxyXG4gIC5uZXcge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNlZTYxNDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICB9XHJcbiAgXHJcbiAgLm1hdC1zb3J0LWhlYWRlci1hcnJvdyB7XHJcbiAgICBjb2xvcjogI2ZmZjhmODtcclxuICB9XHJcbiAgLyogQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwMHB4KXtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMzIwcHgpICFpbXBvcnRhbnQ7XHJcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcclxuICAgIH1cclxuICB9XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1MnB4KSB7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMyMHB4KSAhaW1wb3J0YW50O1xyXG4gICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0MDdweCkge1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMjBweCkgIWltcG9ydGFudDtcclxuICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xyXG4gICAgfVxyXG59XHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5jb250YWluZXJ7XHJcbiAgICAgICAgbGVmdDogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xyXG4gICAgfVxyXG59ICovIl19 */\"","import { Component, OnInit } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { Router } from '@angular/router';\r\nimport { NgxSpinnerService } from 'ngx-spinner';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { DialogpopupComponent } from 'src/app/common/dialogpopup/dialogpopup.component';\r\nimport { RailFleetService } from 'src/services/rail-fleet.service';\r\nimport { RailcarurlsFormComponent } from '../railcarurls-form/railcarurls-form.component';\r\n\r\n@Component({\r\n selector: 'app-railcarurls-master',\r\n templateUrl: './railcarurls-master.component.html',\r\n styleUrls: ['./railcarurls-master.component.css']\r\n})\r\nexport class RailcarurlsMasterComponent implements OnInit {\r\n\r\n dataSource = new MatTableDataSource();\r\n apires:any;\r\n role:any;\r\n userNotFound=false;\r\n constructor(private railfleetservice: RailFleetService,private toastr: ToastrService, private spinner: NgxSpinnerService, private matdialog: MatDialog, private router: Router) { }\r\n \r\n\r\n displayedColumns = ['descriptionName', 'url','Edit','Remove'];\r\n\r\n ngOnInit(): void {\r\n this.role=sessionStorage.getItem('role');\r\n if(!(this.role!='Admin'))\r\n {\r\n this.getAllRailCarUrls();\r\n }else{\r\n this.userNotFound=true;\r\n this.railfleetservice.setNavmenustatus(false);\r\n }\r\n \r\n }\r\n getAllRailCarUrls() {\r\n this.dataSource.data = [];\r\n this.railfleetservice.getAllRailCarUrls().subscribe((res: any) => {\r\n this.apires=res;\r\n this.dataSource.data = this.apires;\r\n })\r\n }\r\n\r\n refresh() {\r\n this.router.routeReuseStrategy.shouldReuseRoute = () => false;\r\n this.router.onSameUrlNavigation = 'reload';\r\n this.router.navigate(['/railcarlinks-master']);\r\n }\r\n\r\n onAddUser() {\r\n //write a component form\r\n var dialogref = this.matdialog.open(RailcarurlsFormComponent, { data: { isModify: false } });\r\n dialogref.afterClosed().subscribe(res => {\r\n this.getAllRailCarUrls();\r\n });\r\n }\r\n \r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n \r\n onEditUser(railcarurl:any) { \r\n \r\n var dialogref = this.matdialog.open(RailcarurlsFormComponent, {\r\n data: {\r\n isModify: true,\r\n newUser: false,\r\n urlID:railcarurl.urlID,\r\n descriptionName: railcarurl.descriptionName,\r\n url: railcarurl.url,\r\n }\r\n });\r\n dialogref.afterClosed().subscribe(res => {\r\n this.refresh();\r\n });\r\n }\r\n\r\n onRemoveUser(railcarurl: any) {\r\n var record=[];\r\n var dialogref = this.matdialog.open(DialogpopupComponent, { data: { message: 'Are you sure you want to delete user ' + railcarurl.descriptionName, title: 'Confirm Delete' } })\r\n dialogref.afterClosed().subscribe(res => {\r\n if (res) {\r\n const acPayLoad = {\r\n urlID:railcarurl.urlID,\r\n descriptionName: railcarurl.descriptionName,\r\n url: railcarurl.url,\r\n actionBy: \"Prabhu\",\r\n action: \"Deactivate\"\r\n }\r\n this.railfleetservice.updateRailCarUrls(acPayLoad).subscribe(res => {\r\n this.toastr.success(\"RailCar Url removed successfully\");\r\n this.getAllRailCarUrls();\r\n });\r\n }\r\n });\r\n \r\n }\r\n onGoToPage2(data:any)\r\n {\r\n window.open(data, '_blank');\r\n }\r\n onRailCar()\r\n {\r\n this.router.navigate(['/railcarlinks-master']);\r\n }\r\n onDocument()\r\n {\r\n this.router.navigate(['/documentslinks-master']);\r\n }\r\n\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\n// const BaseUrl =\"https://localhost:44361/api\";\r\n//const BaseUrl = \"https://RailFleet-dev.basf.com/api\";\r\nconst BaseUrl = \"./api\";\r\n// const BaseUrl = \"https://RailFleet-qa.basf.com/api\";\r\n//const BaseUrl = \"https://egrade-demo-1.azurewebsites.net/api\";\r\n//const BaseUrl = \"https://RailFleet.basf.com/api\";\r\n//const BaseUrl = \"https://egrade-demo-1.azurewebsites.net/api\";\r\n//const BaseUrl = \"https://RailFleet.basf.com/api\";\r\nexport const environment = {\r\n production: false,\r\n getUsers: `${BaseUrl}/Users/getallusers?BASFUserID=`,\r\n getUsers_new: `${BaseUrl}/MasterData/getallusers_new?BASFUserID=`,\r\n getAllSpecs: `${BaseUrl}/MasterData/getallspecs?RcID=`,\r\n emailAllSpecs: `${BaseUrl}/MasterData/emailAllSpecs?RcID=`,\r\n updateUser_new:`${BaseUrl}/MasterData/updateUser_new`,\r\n mailRequest:`${BaseUrl}/Email/mailrequest`,\r\n getallbus:`${BaseUrl}/MasterData/getallbus?BASFUserID=`,\r\n getallroles:`${BaseUrl}/MasterData/getallroles?RoleID=`,\r\n getUserInfo: `${BaseUrl}/Users/getalluserswithrole?BASFUserID=`,\r\n getUserInfoWithRoles: `${BaseUrl}/Users/getalluserswithrole?BASFUserID=`,\r\n getUserReportees: `${BaseUrl}/Users/GetUserRepoties?BASFUserID=`,\r\n getUserReporting: `${BaseUrl}/Users/GetUserRepotingTo?BASFUserID=`,\r\n updateUserInfo:`${BaseUrl}/Users/updateuserdetails`,\r\n getallrailfleetData: `${BaseUrl}/RailFleetData/getallrailfleetData`,\r\n getAllPermittedcommodities: `${BaseUrl}/MasterData/getallpermittedcommodities`,\r\n GetFleetVsNextRegYr: `${BaseUrl}/MasterData/GetFleetVsNextRegYr`,\r\n GetFleetVsOwner: `${BaseUrl}/MasterData/GetFleetVsOwner`,\r\n GetFleetVsExpiration: `${BaseUrl}/MasterData/GetFleetVsExpiration`,\r\n getAllPackingGroup: `${BaseUrl}/MasterData/getallPackingGroup`,\r\n getAllHazardClass: `${BaseUrl}/MasterData/getallHazardClass`,\r\n getAllCarType: `${BaseUrl}/MasterData/getallCarType`,\r\n getAllDOTAARClass: `${BaseUrl}/MasterData/getAllDOTAARClass`,\r\n getAllCarBuilder: `${BaseUrl}/MasterData/getallCarBuilder`,\r\n getAllRailCarUrls:`${BaseUrl}/MasterData/getrailcarurls`,\r\n getAllDocumentsUrls:`${BaseUrl}/MasterData/getdocumentsurls`,\r\n updateRailFleetData: `${BaseUrl}/RailFleetData/updaterailfleetdetails`,\r\n updaterailBulkfleetdetails: `${BaseUrl}/RailFleetData/updaterailBulkfleetdetails`,\r\n updatePermittedcommodities: `${BaseUrl}/MasterData/updatepermittedcommodities`,\r\n updatePackinggroup: `${BaseUrl}/MasterData/updatepackinggroup`,\r\n updatehazardclass: `${BaseUrl}/MasterData/updatehazardclass`,\r\n updatecarbuilder: `${BaseUrl}/MasterData/updatecarbuilder`,\r\n updatebumaster:`${BaseUrl}/MasterData/updatebumaster`,\r\n getSAMLURL: `${BaseUrl}/GetSamlURL`,\r\n decryptUserDetails: `${BaseUrl}/Users/decryptUserdetails?decryptUser=`,\r\n getAttachmentsUrl: `${BaseUrl}/MasterData/getattachmentsurl`,\r\n updateAttachementsUrl: `${BaseUrl}/MasterData/updateattachmentsurls`,\r\n updateRailCarUrls: `${BaseUrl}/MasterData/updaterailcarurls`,\r\n updateDocumentsUrls: `${BaseUrl}/MasterData/updatedocumentsurls`,\r\n getToken: `${BaseUrl}/Jwt/GetToken?BASFUserID=`,\r\n insertLoginAudit: `${BaseUrl}/LoginAudit/InsertLoginAuditDetails?BASFUserID=`,\r\n GetAllNotifications: `${BaseUrl}/AdminNotification/GetAllNotifications`,\r\n GetCurrentNotifications: `${BaseUrl}/AdminNotification/GetCurrentNotifications`,\r\n CreateNotifications: `${BaseUrl}/AdminNotification/Create`,\r\n UpdateNotification: `${BaseUrl}/AdminNotification/UpdateNotification`,\r\n\r\n\r\n getRailfleetInvoiceData: `${BaseUrl}/RailFleetInvoice/getRailfleetInvoiceData?invoicetype=`,\r\n updateBulkInvoiceDetails: `${BaseUrl}/RailFleetInvoice/updateBulkInvoiceDetails`,\r\n updateMvdAccountUsers: `${BaseUrl}/RailFleetInvoice/updateMvdAccountUsers?updatedby=`,\r\n reviewInvoiceDetails: `${BaseUrl}/RailFleetInvoice/reviewInvoiceDetails`,\r\n getInvoiceHistoricalMaintenance: `${BaseUrl}/InvoiceHistoricalMaintenance/InvoiceHistoricalMaintenance`,\r\n syncInvoiceHistoricalMaintenance: `${BaseUrl}/InvoiceHistoricalMaintenance/syncInvoiceHistoricalMaintenance`,\r\n};\r\n","import 'hammerjs';\r\nimport { 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\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\nconst providers = [\r\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\r\n];\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment } from '../environments/environment';\r\nimport { Observable, Subject } from 'rxjs'; \r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthenticationServiceService {\r\n\r\n constructor(private _http: HttpClient) { }\r\n\r\n getToken(BASFUserID) {\r\n return this._http.get(`${environment.getToken}${BASFUserID}`).pipe(map((response) => response));\r\n \r\n }\r\n}\r\n","import { Directive, Output, Input, EventEmitter, HostBinding, HostListener } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[appDragDrop]'\r\n})\r\nexport class DragDropDirective {\r\n @Output() onFileDropped = new EventEmitter();\r\n\r\n @HostBinding('style.background-color') private background = '#f5fcff'\r\n @HostBinding('style.opacity') private opacity = '1'\r\n\r\n\r\n //Dragover listener\r\n @HostListener('dragover', ['$event']) onDragOver(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.background = '#9ecbec';\r\n this.opacity = '0.8'\r\n }\r\n //Dragleave listener\r\n @HostListener('dragleave', ['$event']) public onDragLeave(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.background = '#f5fcff'\r\n this.opacity = '1'\r\n }\r\n //Drop listener\r\n @HostListener('drop', ['$event']) public ondrop(evt) {\r\n evt.preventDefault();\r\n evt.stopPropagation();\r\n this.background = '#f5fcff'\r\n this.opacity = '1'\r\n let files = evt.dataTransfer.files;\r\n if (files.length > 0) {\r\n this.onFileDropped.emit(files)\r\n }\r\n\r\n }\r\n\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders } from '@angular/common/http';\r\nimport { map } from 'rxjs/operators';\r\nimport { environment } from '../environments/environment';\r\nimport { forkJoin, Observable, Subject } from 'rxjs';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RailFleetService {\r\n private nav_menuSubject = new Subject();\r\n constructor(private _http: HttpClient) { }\r\n\r\n setNavmenustatus(status: boolean) {\r\n this.nav_menuSubject.next(status);\r\n\r\n }\r\n\r\n getNavmenustatus(): Observable {\r\n return this.nav_menuSubject.asObservable();\r\n }\r\n\r\n getallrailfleetData(data) {\r\n //return this._http.get(`${environment.getallrailfleetData}${data}`).pipe(map((response) => response));\r\n return this._http.post(`${environment.getallrailfleetData}`, JSON.parse(JSON.stringify(data))).pipe(map((response) => response));\r\n }\r\n\r\n getAllPermittedcommodities() {\r\n return this._http.get(`${environment.getAllPermittedcommodities}`).pipe(map((response) => response));\r\n }\r\n GetFleetVsNextRegYr() {\r\n return this._http.get(`${environment.GetFleetVsNextRegYr}`).pipe(map((response) => response));\r\n }\r\n GetFleetVsExpiration() {\r\n return this._http.get(`${environment.GetFleetVsExpiration}`).pipe(map((response) => response));\r\n }\r\n GetFleetVsOwner() {\r\n return this._http.get(`${environment.GetFleetVsOwner}`).pipe(map((response) => response));\r\n }\r\n\r\n getAllPackingGroup() {\r\n return this._http.get(`${environment.getAllPackingGroup}`).pipe(map((response) => response));\r\n }\r\n\r\n getAllHazardClass() {\r\n return this._http.get(`${environment.getAllHazardClass}`).pipe(map((response) => response));\r\n }\r\n\r\n getAllCarType() {\r\n return this._http.get(`${environment.getAllCarType}`).pipe(map((response) => response));\r\n }\r\n\r\n getAllDOTAARClass() {\r\n return this._http.get(`${environment.getAllDOTAARClass}`).pipe(map((response) => response));\r\n }\r\n\r\n getAllCarBuilder() {\r\n return this._http.get(`${environment.getAllCarBuilder}`).pipe(map((response) => response));\r\n }\r\n getAllRailCarUrls() {\r\n return this._http.get(`${environment.getAllRailCarUrls}`).pipe(map((response) => response));\r\n }\r\n getAllDocumentsUrls() {\r\n return this._http.get(`${environment.getAllDocumentsUrls}`).pipe(map((response) => response));\r\n }\r\n\r\n getRailMasterData() {\r\n return forkJoin({\r\n permittedCommodities: this.getAllPermittedcommodities(),\r\n packagingGroups: this.getAllPackingGroup(),\r\n hazardClasses: this.getAllHazardClass(),\r\n carTypes: this.getAllCarType(),\r\n dot_aar_classes: this.getAllDOTAARClass(),\r\n carBuilders: this.getAllCarBuilder()\r\n\r\n });\r\n }\r\n\r\n updateRailFleetData(railFleetData) {\r\n return this._http.post(`${environment.updateRailFleetData}`, JSON.parse(JSON.stringify(railFleetData))).pipe(map((response) => response));\r\n }\r\n updaterailBulkfleetdetails(railFleetData) {\r\n return this._http.post(`${environment.updaterailBulkfleetdetails}`, JSON.parse(JSON.stringify(railFleetData))).pipe(map((response) => response));\r\n }\r\n\r\n updatePermittedCmmodities(pcData) {\r\n return this._http.post(`${environment.updatePermittedcommodities}`, JSON.parse(JSON.stringify(pcData))).pipe(map((response) => response));\r\n }\r\n\r\n updatePackingGroup(pgData) {\r\n return this._http.post(`${environment.updatePackinggroup}`, JSON.parse(JSON.stringify(pgData))).pipe(map((response) => response));\r\n }\r\n\r\n updateHazardclass(hcData) {\r\n return this._http.post(`${environment.updatehazardclass}`, JSON.parse(JSON.stringify(hcData))).pipe(map((response) => response));\r\n }\r\n\r\n updateCarBuilder(cbData) {\r\n return this._http.post(`${environment.updatecarbuilder}`, JSON.parse(JSON.stringify(cbData))).pipe(map((response) => response));\r\n }\r\n\r\n getDecryptedUserDetails(data) {\r\n return this._http.post(environment.decryptUserDetails, data).pipe(map((response) => response));\r\n }\r\n\r\n getSAMLService() {\r\n return this._http.get(environment.getSAMLURL).pipe(map((response) => response));\r\n }\r\n\r\n getUserInfo(data) {\r\n return this._http.get(`${environment.getUserInfo}${data}`).pipe(map((response) => response));\r\n }\r\n\r\n getUsers(data) {\r\n return this._http.get(`${environment.getUsers}${data}`).pipe(map((response) => response));\r\n }\r\n getUsers_new() {\r\n return this._http.get(environment.getUsers_new + 'All').pipe(map((response) => response));\r\n }\r\n getAllSpecs(data) {\r\n return this._http.get(`${environment.getAllSpecs}${data}`).pipe(map((response) => response));\r\n }\r\n emailAllSpecs(data) {\r\n return this._http.get(`${environment.emailAllSpecs}${data}`).pipe(map((response) => response));\r\n }\r\n updateUser_new(Data) {\r\n return this._http.post(`${environment.updateUser_new}`, JSON.parse(JSON.stringify(Data))).pipe(map((response) => response));\r\n }\r\n mailRequest(Data) {\r\n return this._http.post(`${environment.mailRequest}`, JSON.parse(JSON.stringify(Data))).pipe(map((response) => response));\r\n }\r\n GetAllBus() {\r\n return this._http.get(environment.getallbus + 'All').pipe(map((response) => response));\r\n }\r\n GetAllRoles() {\r\n return this._http.get(environment.getallroles + 0).pipe(map((response) => response));\r\n }\r\n\r\n getAttachmentsURL() {\r\n return this._http.get(environment.getAttachmentsUrl).pipe(map((response) => response));\r\n }\r\n\r\n updateAttachmentUrl(aData) {\r\n return this._http.post(`${environment.updateAttachementsUrl}`, JSON.parse(JSON.stringify(aData))).pipe(map((response) => response));\r\n }\r\n updateRailCarUrls(aData) {\r\n return this._http.post(`${environment.updateRailCarUrls}`, JSON.parse(JSON.stringify(aData))).pipe(map((response) => response));\r\n }\r\n updateDocumentsUrls(aData) {\r\n return this._http.post(`${environment.updateDocumentsUrls}`, JSON.parse(JSON.stringify(aData))).pipe(map((response) => response));\r\n }\r\n getAllNotifications() {\r\n return this._http.get(environment.GetAllNotifications).pipe(map((response) => response));\r\n }\r\n getCurrentNotifications() {\r\n return this._http.get(environment.GetCurrentNotifications).pipe(map((response) => response));\r\n }\r\n addNotification(data) {\r\n return this._http.post(environment.CreateNotifications, data).pipe(map((response) => response));\r\n }\r\n\r\n\r\n getRailfleetInvoiceData(data) {\r\n return this._http.get(`${environment.getRailfleetInvoiceData}${data}`).pipe(map((response) => response));\r\n }\r\n \r\n updateBulkInvoiceDetails(invoiceData) {\r\n return this._http.post(`${environment.updateBulkInvoiceDetails}`, JSON.parse(JSON.stringify(invoiceData))).pipe(map((response) => response));\r\n }\r\n\r\n reviewInvoiceDetails(invoiceData) {\r\n return this._http.post(`${environment.reviewInvoiceDetails}`, JSON.parse(JSON.stringify(invoiceData))).pipe(map((response) => response));\r\n }\r\n updateMvdAccountUsers(data) {\r\n return this._http.get(`${environment.updateMvdAccountUsers}${data}`).pipe(map((response) => response));\r\n }\r\n\r\n getInvoiceHistoryData(PayLoad) {\r\n return this._http.post(`${environment.getInvoiceHistoricalMaintenance}`, JSON.parse(JSON.stringify(PayLoad))).pipe(map((response) => response));\r\n }\r\n\r\n syncInvoiceHistoryData(PayLoad) {\r\n return this._http.post(`${environment.syncInvoiceHistoricalMaintenance}`, JSON.parse(JSON.stringify(PayLoad))).pipe(map((response) => response));\r\n }\r\n}\r\n","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"sourceRoot":"webpack:///"}