{"version":3,"sources":["App/AppContext.js","Components/_shared/home/index.jsx","Core/Service/storage-service.js","Components/_shared/logout/index.jsx","Core/Service/http-calls.js","Core/Service/login-service.js","Core/FormInput/AppTextBox.jsx","Core/FormInput/AppPassword.jsx","Core/FormInput/AppButton.jsx","Core/FormInput/AppCheckbox.jsx","Core/FormInput/AppDialogBox.jsx","Core/FormInput/AppSelect.jsx","Core/FormInput/AppButtonGroup.jsx","Core/FormInput/CustomButton.jsx","Core/FormInput/MultiSelect.jsx","Core/FormInput/SelectBox.jsx","Core/FormInput/SlideToggle.jsx","Core/FormInput/CustomColorPicker.jsx","Components/_shared/login/index.jsx","Components/internal/dashboard/index.jsx","Core/Service/dashbordService.js","Core/Controls/ScreenResolution/index.js","Core/Service/branch-screen-service.js","Core/Service/workflow-service.js","Core/Dashbord/dashboardCharts.jsx","Components/internal/dashboard/FilterModal.jsx","Core/Service/workflowData-service.js","Components/internal/assign-technician/assignTechnModal.jsx","Core/Modal/dialogModal.js","Core/Dashbord/index.jsx","Core/Controls/Breadcrumb/index.jsx","Core/Service/Settings.js","Core/CkEditor/index.jsx","Core/Service/communicator-service.js","Core/Service/video-service.js","Components/_shared/videos/videosModal.jsx","Components/_shared/videos/videos.jsx","Core/Service/branches-service.js","Core/Service/customer-services.js","Core/Service/admin-service.js","Core/Controls/Dialog/DialogComp.jsx","Core/Controls/Tabs/index.jsx","Components/admin/User Management/ewipModule.jsx","Components/admin/User Management/userModules.jsx","Components/admin/User Management/AddUser.jsx","Components/admin/User Management/index.jsx","Components/admin/User Management/SetPassByAdmin.jsx","Components/admin/registration/registration.jsx","Core/Grid/index.jsx","Core/Service/process-service.js","Components/admin/Workflow/AddWorkflow.jsx","Components/admin/Workflow/DeleteWorkflow.jsx","Components/admin/Workflow/workflowList.jsx","Components/admin/Workflow/workflow.jsx","Core/Service/DefectReportedCategory-service.js","Components/admin/DefectReportedCategories/AddUpdateModal.jsx","Components/admin/DefectReportedCategories/DefectReportedCategories.jsx","Core/Service/OcrDocuments-service.js","Components/admin/OcrDocuments/AddUpdateOcr.jsx","Components/admin/OcrDocuments/index.jsx","Core/Service/DefectActionedCategory-service.js","Components/admin/DefectActionedCategories/AddUpdateModal.jsx","Components/admin/DefectActionedCategories/DefectActionedCategories.jsx","Core/Service/BatteryManufacturers-service.js","Components/admin/Battery manufacturers/AddUpdateModal.jsx","Components/admin/Battery manufacturers/BatteryManufacturers.jsx","Core/Service/workflowList-service.js","Components/admin/Workflow/AddWorkflowSteps.jsx","Components/admin/Workflow/WorkflowSteps.jsx","Components/admin/OcrDocuments/OcrDocumentToProcess/AddUpdateModal.jsx","Components/admin/OcrDocuments/OcrDocumentToProcess/DocumentFieldModal.jsx","Components/admin/OcrDocuments/OcrDocumentToProcess/OcrDocumentToProcess.jsx","Components/admin/OcrDocuments/OcrDocumentFields/AddUpdateModal.jsx","Components/admin/OcrDocuments/OcrDocumentFields/OcrDocumentFields.jsx","Core/Service/webForm-service.js","Components/admin/WebForms/AddWebFormModal.jsx","Components/admin/WebForms/DeleteWebForm.jsx","Components/admin/WebForms/index.jsx","Core/Service/returnReason-service.js","Components/admin/Workflow/ReturnReasons/AddReturnReasonModal.jsx","Components/admin/Workflow/ReturnReasons/index.jsx","Core/Service/techWriteUp-service.js","Core/Controls/SpeedDial/index.jsx","Core/Controls/Dialog/ConfirmationModal.jsx","Components/admin/StandardTechWriteUp/AddUpdateModal.jsx","Components/admin/StandardTechWriteUp/DeleteStandardWriteUp.jsx","Components/admin/StandardTechWriteUp/index.jsx","Core/Service/failureCode-service.js","Components/admin/FailureNotes/AddUpdateModal.jsx","Components/admin/FailureNotes/DeleteFailureNotes.jsx","Components/admin/FailureNotes/index.jsx","Components/admin/WorkflowStepsList/AddUpdateModal.jsx","Components/admin/WorkflowStepsListOption/index.jsx","Components/admin/WorkflowStepsList/index.jsx","Core/Service/workaccomplished-service.js","Components/admin/WorkAccomplishedCodes/AddUpdateModal.jsx","Components/admin/WorkAccomplishedCodes/DeleteModal.jsx","Components/admin/WorkAccomplishedCodes/index.jsx","Core/CommonFunctions/multiImgResizer.js","Components/admin/BranchScreen/BranchModal.jsx","Core/Grid/inputFormatter.jsx","Components/admin/BranchScreen/SalesTargetScreen.jsx","Components/admin/BranchScreen/BranchTarget.jsx","Components/admin/BranchScreen/BranchCodeModal.jsx","Components/admin/BranchScreen/Braches.jsx","Components/internal/ReportsScreens/GijgoForReportsScreen/index.jsx","Core/Service/BatteryResults-service.js","Components/admin/BatteryResults/AddUpdateModal.jsx","Components/admin/BatteryResults/BatteryResults.jsx","Components/admin/Video Categories/VideoCategoriesModal.jsx","Core/CommonFunctions/imageResizer.js","Components/admin/Video Categories/VideoListModal.jsx","Components/admin/Video Categories/VideoList.jsx","Components/admin/Video Categories/VideoCategories.jsx","Components/admin/Settings/Settings.jsx","Core/Service/translation-service.js","Components/admin/Translations/Translations.jsx","Components/internal/Budget/budgetCard.jsx","Components/internal/Budget/profitlossTable.jsx","Components/internal/Budget/profitLoss.jsx","Core/Service/reportService.js","Core/Service/admin-Invoice_Branch-service.js","Components/admin/Invoice/editBranch.jsx","Components/admin/Invoice/branches.jsx","Core/Service/InvoiceScreen-service.js","Core/Service/StaticService.js","Components/admin/Invoice/BranchStatusEmail/editBranchStatusEmail.jsx","Components/admin/Invoice/BranchStatusEmail/index.jsx","Components/admin/Communicator/BranchParameters/index.jsx","Components/admin/Communicator/VehicleNotification/addCustomergroup.jsx","Components/admin/Communicator/VehicleNotification/index.jsx","Components/admin/Communicator/SmsStatusUpdate/index.jsx","Core/Service/KPI_message-service.js","Components/admin/KPI_Message/addEditTicker.jsx","Components/admin/KPI_Message/index.jsx","Core/Service/qc-service.jsx","Components/admin/QC/Results List/editResultList.jsx","Components/admin/QC/Results List/editResultOption.jsx","Components/admin/QC/Results List/resultListOptions.jsx","Components/admin/QC/Results List/index.jsx","Components/admin/QC/Items/AddEditItem.jsx","Components/admin/QC/Items/index.jsx","Core/Service/diagnosticFaults-service.js","Components/admin/DiagnosticFaults/DiagnosticFaultsModal.jsx","Components/admin/DiagnosticFaults/index.jsx","Components/admin/Diagnostics/DiagnosticCommonScreens/addEditModal.jsx","Components/admin/Diagnostics/DiagnosticCommonScreens/index.jsx","Core/Service/vor-service.js","Components/admin/Vor/AddEditVorType.jsx","Components/admin/Vor/AddEditVorReason.jsx","Components/admin/Vor/VorReasons.jsx","Components/admin/Vor/VorTypes.jsx","Components/admin/Communicator/BookingRequest/addUpdateBooking.jsx","Components/admin/Communicator/BookingRequest/index.jsx","Core/Service/dynamic-forms-service.js","Core/FieldWrapper/index.jsx","Components/admin/DynamicForms/AddEditDynamicForm.jsx","Components/admin/DynamicForms/deleteDynamicForm.jsx","Components/admin/DynamicForms/index.jsx","Components/admin/DynamicForms/DynamicFormField/AddEditDynamicFields.jsx","Components/admin/DynamicForms/DynamicFormField/index.jsx","Core/Service/ReportScreens-service.js","Components/internal/ReportsScreens/Dashboard/miniViewDashboard.jsx","Core/Service/Auditor-services.js","Components/Auditor/Dashboard/index.jsx","Components/Auditor/Jobs/getAuditorJobList.jsx","Core/ButtonGroup/BasicButtonGroup.jsx","Core/Controls/GijgoGrid/index.jsx","Components/internal/workflow-job/more/OtherJobDocMovement.jsx","Components/Reducer/action.jsx","Components/internal/Communicator/OpenActionLogs/addEditActionLog.jsx","Components/internal/Communicator/OpenActionLogs/editActionLog.jsx","Components/internal/Communicator/OpenActionLogs/logHistory.jsx","Components/internal/dashboard/jobPriorityModal.jsx","Components/internal/dashboard/customerRating.jsx","Components/internal/ReportsScreens/MotHistoryScreen/index.jsx","Core/Service/jobNotes-service.js","Components/internal/workflow-job/JobNotes.jsx","Components/internal/dashboard/dashboard.jsx","Core/Dashbord/TechDashboard/techDashboardDetailsGrid.jsx","Core/Service/workflowJobsDocumentStamp-service.js","Core/Service/workflowJobDocument-service.js","Components/internal/workflow-job/WorkflowJob.Provider.js","Components/internal/workflow-job/more/MailDoc.jsx","Core/SignaturePad/index.jsx","Components/internal/workflow-job/DynamicForm/dynamicAppSelect.jsx","Core/Service/diagnosticSheets.js","Components/internal/workflow-job/DynamicForm/DynamicFormProvider.js","Components/internal/workflow-job/doc.png","Components/internal/workflow-job/DynamicForm/dynamicFormFields.jsx","Components/internal/workflow-job/DynamicForm/MultiImageSliderModal/imageCard.jsx","Components/internal/workflow-job/DynamicForm/MultiImageSliderModal/index.jsx","Components/internal/workflow-job/DynamicForm/renderForm.jsx","Components/internal/workflow-job/WorkflowStep.jsx","Core/Service/workflowMovementHistory-service.js","Components/internal/workflow-job/WorkflowMovement.jsx","Components/internal/workflow-job/ReturnToWorkflow.jsx","Components/internal/workflow-job/more/Delete.jsx","Components/internal/workflow-job/WorkflowOcrDocHistoryModal.jsx","Components/internal/workflow-job/more/AllDocModal.jsx","Components/internal/workflow-job/WarningMsg.jsx","Components/internal/workflow-job/ReturnReasonHistory.jsx","Core/CommonFunctions/convertTxtToImg.js","Core/CommonFunctions/convertMultiTxtToImg.js","Core/CommonFunctions/base64ImgResizer.js","Components/internal/workflow-job/more/Stamps.jsx","Components/internal/workflow-job/more/ConfirmationOnPendingMarking.jsx","Components/internal/workflow-job/BarCode.jsx","Components/internal/workflow-job/CustomerNotes.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/arrivalDate.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/rebookingReq.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/rebooked.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/commonStatus.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/booked.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/workComplete.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/checkedOut.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/inWorkShop.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/awaitingAuthority.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/awaitingParts.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/vehicleArrived.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/collected.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/approvedByCustomer.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/onSite.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/statusModals/customerInformed.jsx","Components/internal/Communicator/VehicleStatusStepper/statusModals/workCompleted.jsx","Components/internal/Communicator/VehicleStatusStepper/vehicleStatusStepper.jsx","Components/internal/Communicator/SiteVehicles/approvalDetailsModal.jsx","Components/internal/Communicator/SiteVehicles/addEditSiteVehicle.jsx","Components/internal/workflow-job/more/headerDetailsModal.jsx","Components/internal/workflow-job/index.jsx","Core/Service/qualityControl-service.js","Components/internal/workflow-job/QualityControlSheet.jsx","Core/Service/partRequisitions-service.js","Components/technician/technician-app/PartReqPhotoUploadmodal.jsx","Components/technician/technician-app/RequestorApproverIssuerInfo.jsx","Components/internal/Archived/AssignToAuditor.jsx","Components/internal/approve-part-reqs/index.jsx","Components/internal/part-reqs-qty-issue/index.jsx","Components/technician/technician-app/DisplayGrid.jsx","Components/internal/tech-write-up/index.jsx","Core/Service/customerConsultation-service.js","Components/internal/workflow-job/CustomerConsultation.jsx","Components/internal/assign-technician/index.jsx","Core/Service/archivedJobs-service.js","Components/internal/Archived/index.jsx","Core/Service/defectTech-service.js","Components/internal/defect-wc/defectProvider.js","Components/internal/defect-wc/index.jsx","Core/Service/workflowJobs-service.js","Components/internal/WorkflowDash/WorkflowDash.jsx","Core/Service/diagnosticCharge.js","Components/internal/diagnosticCharge/index.jsx","Core/Service/qc_jobs-service.js","Components/internal/QCJobsDashboard/mapQCCard.jsx","Components/internal/QCJobsDashboard/mapQCHerderUnits.jsx","Components/internal/QCJobsDashboard/qCJobsDashboard.jsx","Core/Controls/GijgoGrid/nestedGijgoGrid.jsx","Components/internal/Budget/index.jsx","Components/internal/ReportsScreens/Sales/newVehicleProfitReport.jsx","Components/internal/Communicator/OpenActionLogs/emailPopUp.jsx","Components/internal/Communicator/OpenActionLogs/index.jsx","Core/Service/CustUserCommunicator/vor-service.js","Components/internal/Communicator/addUpdateVOR.jsx","Components/internal/Communicator/SiteVehicles/index.jsx","Core/Service/SpecialEquipmentService.js","Components/internal/SpecialEquipment/AddEditSpecialEquipment.jsx","Components/internal/SpecialEquipment/HistoryModal.jsx","Components/internal/SpecialEquipment/SpecialEquipmentBarcode.jsx","Components/internal/SpecialEquipment/index.jsx","Components/internal/SpecialEquipment/SpecialEquipmentDash.jsx","Components/internal/SpecialEquipment/webform/index.jsx","Core/Service/common-service.js","Components/customer/bookingRequested/RequestBookingsHistory.jsx","Components/customer/bookingRequested/bookingRequestedModal.jsx","Components/internal/Communicator/RequestedBookings/index.jsx","Components/internal/Communicator/Bookings/bookingDetail.jsx","Components/internal/Communicator/Bookings/BookingDetailsList.jsx","Core/Service/CustUserCommunicator/communicator-service.js","Components/customer/Communicator/sendMessageModal.jsx","Components/internal/Communicator/Bookings/index.jsx","Components/internal/ReportsScreens/AgedMeasures/CashByDepartment/index.jsx","Components/internal/ReportsScreens/AgedMeasures/AgedDebt/index.jsx","Components/internal/ReportsScreens/Sales/usedVehicleProfitReport.jsx","Components/internal/ReportsScreens/AgedMeasures/NewStock/index.jsx","Components/internal/ReportsScreens/AgedMeasures/UsedStock/index.jsx","Components/internal/ReportsScreens/GetWIPDetails/index.jsx","Core/Modal/PdfViweModal.jsx","Components/internal/ReportsScreens/Services/InvoicedHours/index.jsx","Components/internal/ReportsScreens/Services/IdleTimeAnalysis/index.jsx","Components/internal/ReportsScreens/AgedMeasures/Dashboard/index.jsx","Components/internal/ReportsScreens/AgedMeasures/GetAllBranchByAgedMeasures/index.jsx","Components/internal/ReportsScreens/AgedMeasures/GetAllBranchByAgedMeasures/GetAgedMeasuresDirtyUnits/index.jsx","Components/internal/ReportsScreens/ReportingNotesScreen/index.jsx","Components/internal/ReportsScreens/AgedMeasures/GetAllBranchByAgedMeasures/GetAgedMeasuresRanMWarrantyCashGen/index.jsx","Components/internal/ReportsScreens/AgedMeasures/GetUsedAndNewVehicleDebt/index.jsx","Components/internal/ReportsScreens/Enquiry/index.jsx","Components/internal/ReportsScreens/ServiceScreen/Dashboard/serviceChart.jsx","Core/Service/serviceDashboard_service.js","Components/internal/ReportsScreens/ServiceScreen/Dashboard/index.jsx","Components/internal/InvoiceScreens/Customers/addScreen.jsx","Components/internal/InvoiceScreens/Customers/editScreen.jsx","Components/internal/InvoiceScreens/Customers/noteScreen.jsx","Components/internal/InvoiceScreens/Customers/index.jsx","Core/Service/internal_Invoice-service.js","Components/internal/InvoiceScreens/InvoiceByStatus/invoiceMessage.jsx","Components/internal/InvoiceScreens/InvoiceByStatus/editInvoice.jsx","Components/internal/InvoiceScreens/InvoiceByStatus/sendInvoices.jsx","Components/internal/InvoiceScreens/InvoiceByStatus/index.jsx","Components/customer/CustCommonDash.jsx","Components/internal/InvoiceScreens/Dashboard/index.jsx","Components/internal/ReportsScreens/ReportsScreens/BudgetCore/budgetButton.jsx","Components/internal/ReportsScreens/WIpHours/wipTable.jsx","Components/internal/ReportsScreens/WIpHours/WipLineChart.jsx","Components/internal/ReportsScreens/saleDashboardCard.jsx","Components/internal/ReportsScreens/Services/Consumables/index.jsx","Components/internal/ReportsScreens/Services/TechnicianEfficiency/index.jsx","Components/internal/ReportsScreens/Parts/index.jsx","Components/internal/ReportsScreens/Sales/OutstandingInvoices/index.jsx","Components/internal/ReportsScreens/reportingDashboard.jsx","Components/internal/DiagnosticSheets/imageSlider.jsx","Components/internal/DiagnosticSheets/SectionsScreens/sectionOne.jsx","Components/internal/DiagnosticSheets/SectionsScreens/sectionTwo.jsx","Components/internal/DiagnosticSheets/SectionsScreens/sectionThree.jsx","Components/internal/DiagnosticSheets/SectionsScreens/sectionFour.jsx","Components/internal/DiagnosticSheets/SectionsScreens/generalSection.jsx","Components/internal/DiagnosticSheets/index.jsx","Components/internal/ReportsScreens/Sales/AccountQueriesbySalesexec/index.jsx","Components/internal/ReportsScreens/Sales/SalesWorkInProgress/index.jsx","Components/internal/ReportsScreens/Sales/RegistrationReports/index.jsx","Components/internal/ReportsScreens/ReportingWipLogsModal/index.jsx","Components/internal/ReportsScreens/Sales/AgedMeasuresWorkingProgress/index.jsx","Components/internal/ReportsScreens/Sales/VehicleAgedDebtBySalesexec/index.jsx","Components/internal/ReportsScreens/Sales/VehicleStock(Excluding WIP)/index.jsx","Components/internal/ReportsScreens/Sales/VehicleNewOrder/index.jsx","Components/internal/ReportsScreens/Sales/UsedVehicleStock/index.jsx","Components/internal/ReportsScreens/Sales/SalesContingencyDebt/index.jsx","Components/internal/ReportsScreens/Sales/VehicleAgedDebtBySalesexec/ViewDebtDetails.jsx","Components/internal/ReportsScreens/DocsScreens/WeeklyFlashReport/index.jsx","Components/internal/ReportsScreens/Budget/Dashboard/dashTableOne.jsx","Components/internal/ReportsScreens/Budget/Dashboard/targetTabels.jsx","Components/internal/ReportsScreens/Budget/Dashboard/dasbordTabletwo.jsx","Components/internal/ReportsScreens/Budget/Dashboard/dashboard.jsx","Components/internal/Service24/ChildComp/CustomerDetails.jsx","Components/internal/Service24/ChildComp/HomeAccDealer.jsx","Components/internal/Service24/ChildComp/RentalFleetDetails.jsx","Components/internal/Service24/ChildComp/VehicleDetails.jsx","Components/internal/Service24/ChildComp/RecoveryDetails.jsx","Components/internal/Service24/ChildComp/JobChecks.jsx","Components/internal/Service24/ChildComp/RepairType.jsx","Components/internal/Service24/ChildComp/DriverDetails.jsx","Components/internal/Service24/ChildComp/BasicFooter.jsx","Core/Service/service24-service.js","Core/Service/batteryTest-service.js","Components/technician/BatteryTest/SecondaryBatteryModal.jsx","Components/internal/Service24/service24controlFrom.jsx","Components/internal/Service24/ChildComp/BreakdownDefectRepair.jsx","Components/internal/Service24/ChildComp/serviceTime.jsx","Components/internal/Service24/ChildComp/workRequested.jsx","Components/internal/Service24/index.jsx","Components/internal/ReportsScreens/ReportingBudget/Bugdet/budgetTable.jsx","Components/internal/ReportsScreens/ReportingBudget/Bugdet/index.jsx","Components/internal/ReportsScreens/ReportsScreens/BudgetCore/budgetCardsUi_v2.jsx","Components/internal/ReportsScreens/ReportsScreens/BudgetCore/table.jsx","Components/internal/ReportsScreens/ReportsScreens/BudgetCore/loader.jsx","Components/internal/ReportsScreens/ReportsScreens/UsedStockValuation/index.jsx","Components/internal/ReportsScreens/ReportsScreens/UsedVehicleStock/usedStockTable.jsx","Components/internal/ReportsScreens/ReportsScreens/UsedVehicleStock/index.jsx","Components/internal/ReportsScreens/ReportsScreens/AgedVehicleStock/index.jsx","Components/internal/ReportsScreens/ReportsScreens/OvragePri/index.jsx","Components/internal/ReportsScreens/Parts/Dashboard/monthSummery.jsx","Components/internal/ReportsScreens/Parts/Dashboard/headlineDashboard.jsx","Components/internal/ReportsScreens/Services/IdleTimeAnalysis/IdleTimeAnalysisReason.jsx","Components/internal/ReportsScreens/afterSaleDashboard.jsx","Components/internal/ReportsScreens/reportingtabs.jsx","Components/internal/ReportsScreens/Workshop/ShiftCalender/index.jsx","Components/internal/ReportsScreens/Workshop/ResourceCalender/dailyHoursDataModal.jsx","Components/internal/ReportsScreens/Workshop/ResourceCalender/index.jsx","Components/technician/technician-app/Grid.jsx","Components/technician/technician-app/GridInfo.jsx","Components/technician/technician-app/technician_app.jsx","Components/technician/technician-app/TechWriteProvider.js","Components/technician/technician-app/TechWriteUp.jsx","Components/technician/technician-app/PartRequisitionsModal.jsx","Components/technician/technician-app/defectProvider.js","Components/technician/technician-app/defect.jsx","Core/Service/BrakeDiscPadWear-service.js","Components/technician/technician-app/BrakeDiscPadWear/BrakeDiscPadWearProvider.js","Components/technician/technician-app/BrakeDiscPadWear/ViewAxel.jsx","Components/technician/technician-app/BrakeDiscPadWear/BrakeDiscPadWear.jsx","Components/technician/BatteryTest/index.jsx","Core/Service/tyreCheckService.js","Components/technician/technician-app/TechnicianTyreChecks/tyreChecksProvider.js","Components/technician/technician-app/TechnicianTyreChecks/tyreAxle.jsx","Components/technician/technician-app/TechnicianTyreChecks/VehicleDiagrams/images1.png","Components/technician/technician-app/TechnicianTyreChecks/VehicleDiagrams/axImage01.png","Components/technician/technician-app/TechnicianTyreChecks/VehicleDiagrams/azImage02.png","Components/technician/technician-app/TechnicianTyreChecks/VehicleDiagrams/axImage03.png","Components/technician/technician-app/TechnicianTyreChecks/index.jsx","Components/internal/ReportsScreens/Sales/Dashboard/dashboardTemplates.jsx","Core/Service/salesDasboard-service.js","Components/internal/ReportsScreens/Sales/Dashboard/dashboard.jsx","Components/internal/ReportsScreens/Sales/DashboardTwo/tabViewScreen.jsx","Components/internal/ReportsScreens/Sales/DashboardTwo/index.jsx","Core/Service/handOverSheet-service.js","Components/technician/HandOverSheet/index.jsx","Core/Service/LiftCheck-service.js","Components/technician/LiftCheckList/index.jsx","Components/customer/getJobList.jsx","Components/internal/resetPassword/index.jsx","Components/customer/Communicator/siteVehicles.jsx","Components/customer/Communicator/booking.jsx","Components/customer/Communicator/approveJobModal.jsx","Components/customer/Communicator/awaitingAuthority.jsx","Components/customer/Communicator/custDashboard.jsx","Core/Service/changePassword-service.js","Core/Root/menu/menu-auth-type.js","Core/Root/menu/roles-menu/UnAuth-menu.js","Core/Modal/PasswordReset.jsx","Core/Root/menu/roles-menu/admin-menu.js","Core/Root/menu/roles-menu/customer-menu.js","Components/customer/dashboard.jsx","Core/Root/menu/roles-menu/internal-menu.js","Core/Root/menu/roles-menu/auditor-menu.js","Core/Root/menu/roles-menu/technician-menu.js","Core/Root/menu/roles-menu/web-form-menu.js","Core/Header/tree.png","Components/_shared/treeImgGallery.jsx","Core/Service/menuService.js","Core/Root/_menu.js","Core/Modal/SignatureModal.jsx","Core/Root/Drawer.jsx","Core/Root/ticker.jsx","Core/Root/menu/roles-menu/reportingMenu.js","Core/Root/Appbar.jsx","Core/Root/Navbar.jsx","Components/_shared/assests/tree.png","Core/Service/saveTree-service.js","Components/_shared/treeImgesLogo.jsx","Core/Root/LeftDrawer.jsx","Core/Header/index.jsx","Core/Toast/index.jsx","Core/Modal/PasswordChange.jsx","Core/Modal/DeleteModal.jsx","Core/Modal/ServiceAdvCust.jsx","Core/Service/forgotPassword-service.js","Core/Modal/ForgotPassword.jsx","Core/Modal/index.jsx","App/App.jsx","Core/Controls/i18react/customei18.js","App/reportWebVitals.js","App/i18n.js","index.js"],"names":["AppContext","createContext","Home","props","portalSettings","useContext","bn","portalSettingBanner","process","portalSettingBannerImage","style","height","overflow","src","width","objectFit","storage","localStorage","getName","getItem","getToken","getWIPAllowed","toUpperCase","getCommunicatorAllowed","getInvoiceAllowed","getReportingAllowed","getPortalSetting","setting","JSON","parse","setPortalSetting","setItem","stringify","AppStorage","removeItem","split","sign","ID","data","token","displayName","lastLogin","canOverrideMandatorySteps","canResetPassword","canAssignJobsToAuditor","roles","canReturnJobsFromLastWorkflow","canDeleteDocuments","signatureStatus","defaultSignature","eWIPAllowed","specialEquipmentAllowed","eCommunicatorAllowed","eInvoiceAllowed","eReportingAllowed","isAgedMeasure","isBudgetDashboard","isDOC","isKPIs","isParts","isSales","isService","isWorkShop","canAssignTechnician","canSetCustomerRating","canAmendToDoList","canAmendTechWriteUp","canAmendJobNotes","canAccessBudget","defaultInternalDashboard","appbarLocation","window","_ENV_","app_version","portalSetting","clear","expired","appbar","Logout","useEffect","top","postMessage","type","_server","backendUrl","prod","defaultOptions","baseURL","headers","validateStatus","instance","axios","create","interceptors","request","use","config","useAuthToken","Authorization","domainName","location","host","includes","generateRoutingURL","url","test","httpVerbEmitter","this","callBacks","addEventListener","cb","push","raise","e","forEach","logoutHandle","setTimeout","put","a","options","res","status","success","console","warn","statusText","post","get","returnOrgRes","ExpBaseURL","login","userName","password","loginName","postSignature","postSignatureStatus","id","TextField","margin","autoComplete","required","fullWidth","variant","DatePicker","value","onChange","isDisabled","inputLabel","isRequired","rest","useState","date","state","setState","st","size","inputProps","max","target","InputLabelProps","shrink","TextBoxShrink","DateTimePicker","showPass","setShowPass","autocomplete","form","InputProps","endAdornment","InputAdornment","position","IconButton","tabIndex","title","aria-label","onClick","edge","Visibility","VisibilityOff","DefaultButton","isBtnLoader","Button","disabled","Grid","children","right","CircularProgress","PrimaryButton","color","SecondaryButton","GreenButton","className","UploadWithBadge","toolTipTitle","count","Badge","badgeContent","anchorOrigin","vertical","horizontal","direction","Tooltip","arrow","SquareButton","backgroundColor","borderRadius","textAlign","padding","CustomIconButton","YesNoButton","onYesClick","onNoClick","container","spacing","item","xs","sm","btnName","PrimaryCheckbox","Checkbox","SecondaryCheckbox","Dialogs","Dialog","DialogTitles","DialogTitle","DialogContents","DialogContent","DialogsActions","DialogActions","useStyles","makeStyles","theme","appSelectBtnGrp","marginRight","textTransform","wordWrap","foregroundColour","backgroundColour","AppSelect","classes","find","m","valuePropertyName","ConvertOps","ops","map","op","text","textPropertyName","workflowStepOptionsAsButtonGroup","displayType","ToggleButtonGroup","val","name","exclusive","i","ToggleButton","NativeSelect","AppButtonGroup","display","CustomButton","iconFontSize","IconColor","Icon","icon","cursor","fontSize","checkedIcon","Multiselect","Autocomplete","multiple","disableCloseOnSelect","getOptionLabel","option","renderOption","selected","Fragment","checked","getOptionSelected","renderInput","params","label","placeholder","MultiselectWithoutCheckbox","SingelSelect","SelectBox","List","forceEditable","insertEmpty","undefined","select","MenuItem","length","SlideToggle","leftLabel","rightLabel","restProps","alignItems","Switch","CustomColorPicker","showPicker","r","g","b","styles","reactCSS","default","background","popover","zIndex","cover","bottom","left","swatch","boxShadow","paper","marginTop","flexDirection","LoginForm","grid1","showToast","showModal","handleClose","history","handleSubmitClick","preventDefault","reload","message","open","onClose","maxWidth","Box","flexGrow","noValidate","autoFocus","onKeyPress","event","key","Link","component","getDashboardInfo","useWindowSize","setSize","useLayoutEffect","updateSize","innerWidth","innerHeight","removeEventListener","getAllBranch","getBranchById","postBranchData","getBranchAndFranchise","getBudgetDropDown","getBudgetExpenses","year","departmentID","branchCode","getBudgetOtherIncomes","getSalesTargets","setSalesTargets","postBudgetExpenceData","postSetOtherIncomes","AddExpenseCategory","AddOtherIncomeCategory","getBranchCodes","setBranchCodes","getWorkflows","IsAllRecord","getWorkflowsByProcessID","ProcessID","getAllowedWorkflow","getWorkflowSteps","workflowId","jobId","addWorkflow","nextWorkFlow","orderIndex","IsForTechnician","IsEntryPoint","IsEndPoint","timesIntervalDuration","timedInterval","timedIntervalTypeAfter","timedWorkflowId","displayJobPriorityButton","displayCustomerRatingButton","workflowProcessID","workflowName","NextWorkflowId","WorkflowForTechnician","OrderIndex","updateWorkflow","IsDeleted","deleteWorflow","getGridFilterList","postGridFilterList","postSetPriority","postCustomerRating","getCustomerRating","downloadFileWithExt","fileExt","URL","createObjectURL","Blob","link","document","getElementById","createElement","href","setAttribute","moment","format","body","appendChild","click","remove","GetArchivedJobsExcelFile","responseType","$","storedFiltterValue","branchList","franchiseList","GijgoGrid","hideModal","pullArchivedJobsAndUpdateState","filterList","isReload","branches","franchiseRecords","GijgoFilterExtension","Dropdown","grid","propertyName","dropdown","changeValueConversion","attr","filterRow","colXPath","filterInput","parent","addClass","replaceWith","on","ddl","propArr","each","obj","ChangeFilter","onSuccessFunc","response","records","rows","total","render","primaryKey","dataSource","getUrl","headerFilter","columns","pager","displayPagination","limit","sizes","itm","field","sortBy","totalRecords","page","tempArray","property","supCd","branchShortName","append","ddlFranchise","franchise","franchiseName","$row","record","css","highPriority","portalHighPriorityJobColour","returnReasonColourCode","dtDueIn","dateDueIn","daysPast","diff","$displayEl","column","returnReasonTextColourCode","downloadCSVWrapper","downloadCSV","currentWorkflowLabel","workflowID","hasOwnProperty","overflowX","root","border","Opacity","minWidth","setObject","timenumber","COLORS","DashboardCharts","useHistory","workflowReturnReasonArray","keys","byTimeObj","selectRRarr","showLoader","selectedFilterTechData","techJobsTotal","hourType","assignedDate","array","setArray","btTimeData","getbranchByOnchange","tempData","branchTime","sumOFByTimeForALL","findByTimeValues","workFlowDataBarData","pullWorkflowRRdata","workflowReturnReason","workflow","chartdata","timeByBranch","BranchBytime","byTimeBranch","technicianJobsData","pullTechnicianJobsData","selectedValueByTech","tempLocalData","branch","q","newArray","index","n","Object","workFlowRR","indexObj","letNewData","reduce","acc","lessThan24HoursOld","between1And5DaysOld","between5And10DaysOld","between10And20DaysOld","between21And30DaysOld","over30DaysOld","overdue1And5Days","overdue5And10Days","overdue10And20Days","overdue21And30Days","overdueOver30DaysOld","handleChangeByTime","valueByTime","handleTimeBranch","valueByTimeBranch","handleTechOnClick","techObj","searchQuery","tid","bid","pathname","search","handleBar","handleDate","alignContent","md","lg","xl","Typography","varient","ResponsiveContainer","PieChart","Pie","cx","cy","paddingAngle","outerRadius","innerRadius","fill","dataKey","entry","Cell","onChartClickHandler","maxHeight","overflowY","justifyContent","fontWeight","boxSize","vraient","ButtonGroup","ria-label","float","btn","fontFamily","flexShrink","borderWidth","borderStyle","borderColor","time","borderLeft","paddingBottom","marginBottom","clockedHours","selectedBranch","branchID","hoursTaken","hoursAllowed","toFixed","allHeaderData","workflowData","BarChart","CartesianGrid","strokeDasharray","XAxis","YAxis","contentStyle","x","y","Legend","allHeaderDataKeys","Bar","barSize","workflowValue","j","returnReasonColors","returnReason","layout","LabelList","valueByTech","minHeight","p","Avatar","Math","floor","random","toString","initState","GridFilterModal","setUserPreference","languageList","languageCode","values","fieldName","hidden","fieldValues","languageData","handleCheckbox","newSt","handleSubmit","UserGridColumnLanguageCode","handleCancel","FormControlLabel","control","FormLabel","autoSelect","comp","handleAutoChange","description","getWorkflowData","headerRecordId","saveWorkflowData","technicianJobId","assignedTechAndList","assignedTechnicianToJob","technicianIds","prom","technicianId","mode","Promise","all","then","ress","log","catch","ex","error","AssignTech","hideTopNavAndMenu","getClass","row","isAssigned","selectedNext","isAssignTechnicianAllowed","defaultColumns","headerName","flex","c","cellClassName","technicians","isEnable","getAssignedTechAndOthers","saveTechnicianAndMove","techToSave","filter","headerHeight","rowHeight","hideFooter","allCols","renderCell","rw","t","defaultChecked","pageSize","disableColumnMenu","showColumnRightBorder","closeIconStyle","DialogComp","footer","aria-labelledby","wipNo","from","to","registration","makeModel","customerName","dateDueOut","serviceText","accountNo","createdBy","assigned","taken","assignedDays","owningOperator","Dashbord","WorkFlowBtnElementscrollWidth","getUserPreference","isAppReaload","WindowWidths","isShowScrollArrow","headerRecord","tempHeaderRecord","rawHeaderData","returnReasonBarData","returnReasons","workFlowDatakeys","sumOfAllWorkflows","btnID","tempObj","showGrid","headervalbyBranch","selectListForRR","pullGridFilterList","details","languages","pullDashboardData","branchName","technicianJobs","allClockedHours","ch","shouldAdd","ach","headerWorkflowData","branchArr","headerByTimeBarchart","chartDataForHeader","result","newObj","newResult","cur","assign","getAllHeaderKeys","sumWorkflows","reduceReturnResonArray","RetrunResonArray","reduceArray","returnReasonsdata","groupbyRetunreson","getkeys","mergeAllarray","flat","Set","RetrunResoncolor","workflowRetunReasonReduce","workflowArray","workflowGroupReturnReason","workflowRetunReasonData","workflowKeys","mergeWorkFlowarray","workFlowvalues","selectedWorkFlow","query","returnReasonID","filterText","btnSelectedId","workFlowId","hasQueryValues","inx","WorkflowTotal","overallTotal","pullHeaderWorkFlowData","element","scrollWidth","clientWidth","baseColumns","renderer","spn","lnk","marginLeft","headerRecordID","handleBtnClcik","currentWorkflowId","showTechAssign","handleAssignmentBtnClick","ReactDOM","filterable","sortable","portalSettingGridWIPNoLabel","portalSettingGridVehicleRegLabel","portalSettingGridModelLabel","portalSettingGridCustomerNameLabel","portalSettingGridDateDueInLabel","portalSettingGridDateDueOutLabel","portalSettingGridReturnReasonLabel","portalSettingGridBranchLabel","portalSettingGridFranchiseLabel","portalSettingGridJobDescriptionLabel","portalSettingGridAccountLabel","portalSettingGridCreatedByLabel","portalSettingGridAssignedDateLabel","portalSettingGridTimeTakenLabel","portalSettingGridStatusLabel","portalSettingGridAssignedDaysLabel","portalSettingGridOwningOperatorLabel","events","headerCssClass","buttonClicked","fromPage","closeDialog","showFilter","closeTechAssignDialog","Date","tempArr","scrollBy","behavior","textOverflow","whiteSpace","filterConfig","BreadCrumbs","Breadcrumbs","separator","crumbs","crumb","active","path","textDecoration","addPortalSettings","getPortalSettings","CustomeEditor","editor","ClassicEditor","getCalendarBookings","branchId","month","getBranchParametersScreenDropdown","GetApprovedDetails","HeaderId","getBranchParametersById","BranchID","postBranchParameters","getAdminDropDown","getNotificationGroupsById","postNotificationGroups","getCommunicatorSmsStatus","postCommunicatorSms","postCommunicatorAddActionLog","getActionLogByID","getStatusDropdown","CurrentStatus","postVehicleStatus","getVehicleStatusID","getActionLogHistory","postJobProgressSetVehicleArrivedStatus","postJobProgressSetReBookingStatus","postJobProgressInWorkshop","postJobProgressAWaitingPart","postJobProgressAwaitingAuthority","postJobProgressWorkCompleted","postJobProgressApprovedByCustomer","postJobProgressSetCollectedStatus","postJobProgressCustomerInformed","postUpdateVehicleStatusToRebooked","postJobProgressOtherStatus","postBookingRequested","postBookingReSchedule","postBookingCancel","postBookingAccept","postBookingRequestStatus","addVideoCategory","VideoCategoryID","VideoCategoryDescription","VideoCategoryActive","RoleID","getVideoCategories","getRoles","addVideo","VideoID","VideoTitle","VideoURL","VideoActive","VideoThumbnail","getVideos","VideosModal","videoDetails","closeFunc","videoTitle","frameborder","allowFullScreen","webkitallowfullscreen","mozallowfullscreen","getLink","videoURL","Videos","videoCategories","focusedVideo","show","userRoles","pullVideos","getThumbnail","video","videoThumbnail","categoriesRes","videosRes","videos","list","videoCategoryID","videoCategoryDescription","roleCat","videoCat","handleVideoClick","alt","getBranches","memoize","getCustomerDashboard","getCustomerExcelFile","getAllUsers","getUser","getScreenDropdown","Adduser","UpdateUser","ResetPassByAdmin","userId","newpassword","confirm","newPassword","confirmPassword","ShowWarningComponent","onSubmit","tab","tabLableSize","tabLableWeight","tabStyle","tabWidth","getTabAndPanelId","controlId","tabId","panelId","TabPanel","selectedTabIndex","role","TabComponent","React","selectedIndex","mySelectedIndex","tabList","timeDependency","nst","closeModal","showWarningModal","Tabs","indicatorColor","textColor","scrollButtons","newValue","showWarning","Tab","aria-controls","EwipModules","handleClick","selectedData","masterData","AutoWorkChange","allworkflow","workflows","userType","canAssignJobPriority","portalSettingSpecialEquipmentEnabled","UserModules","AutoFranchiseChange","franchiseData","tabs","portalSettingeWIPEnabled","brancheData","AutoBrChange","portalSettingReportingEnabled","portalSettingCommunicatorEnabled","InputLabel","custmerGroup","userCustomerGroupID","fieldChange","portalSettingInvoiceEnabled","searchTimer","AddUserModal","setMasterData","setbrancheData","processes","processData","setprocessData","modules","franchises","setFranchisesData","customers","customerData","setcustomerData","setCustomerGroup","setSelectedData","email","phone","enableChange","allbranch","allprocess","allcust","isActive","isLocked","customer","doc_id","sendEmailFromOwnEmail","user","users","updateDashboardList","updatedList","DashboardList","selectedfranchises","w","indexOf","selectedCust","selectedWorkflows","selectedBranches","selectedProcesses","respo","isTechnicianWorkflow","customerGroup","customerGroups","franchiseCode","updatedUser","franchisesCode","phoneNo","userRole","workflowIds","branchIds","processIds","customerIds","onFormSubmit","commonData","nicolReportDefaultFlag","canAccessBranchOverview","canAccessSalesProfitAndLoss","canAccessAfterSalesProfitAndLoss","canAccessProfitAndLossDetail","canAccessUsedStockValuation","canAccessUsedVehicleStock","canAccessAgedVehicleStock","canAccessOveragePriorityList","canAccessSalesReporting","customData","admin","auditor","internal","technician","FormControl","RadioGroup","Radio","SetPassByAdminModal","new","handleResetPass","messages","UserManagement","loggedIn","showAddUserModal","rows_new","filteredRows","pullUserAndUpdateState","handelUpdateUser","Arrow","showResetModal","handelResetPass","hide","setFilteredRow","filterd","trim","toLowerCase","some","vl","column_new","useMemo","tempCols","splice","valueGetter","refreshGrid","SetPassByAdmin","clearTimeout","components","NoRowsOverlay","getProcesses","AddWorkflowModal","workFlowList","triggerList","triggerVal","triggerid","intervalList","intervalVal","intervalid","IsTechnicianWorkflow","Standard","workflowType","setWorkflowType","WorkflowDetails","nextWorkflowId","isDeleted","isEntryPoint","isEndPoint","processList","handelSubmit","handleWorkflowType","v","handleBtn","processID","processName","DeleteWorkflowModal","handleDelete","msg","DataGridComp","lineHeight","gridStyle","offset","enableSearch","CustomNoRowsOverlay","buttonComp","Footer","FooterComp","showFooter","onRowSelected","onCellDoubleClick","onRowDoubleClick","onRowClick","hideFooterPagination","hideFooterSelectedRowCount","WorkflowList","totalRec","showDel","pullWorkflowAndUpdateState","workflow_id","handleUpdate","handleDeleteWorkflow","closeUpdateUser","AddWorkflow","DeleteWorkflow","Workflow","pullProcessTabs","arr","toPush","addDefectReportedCategory","DefectReportedCategoryID","DefectReportedCategoryDescription","Mode","updateDefectReportedCategory","getDefectReportedCategories","AddDefectReportedCategoryModal","errors","fields","DefectReportedCategoryDetails","DefectReportedCategoryData","defectReportedCategoryDescription","handleValidation","formIsValid","DefectReportedCategories","pullDefectReportedCatagoriesAndUpdateState","defectReportedCategoryID","getOcrDocuments","getOcrDocument","OcrDocumentId","addOcrDocument","tableName","columnName","OCRDocumentIgnoreDepartment","Id","Name","OcrApiId","TableName","ColumnName","getTableList","getTableColumnsList","tablename","getOcrApiList","getOcrDocumentToProcess","ocrDocId","getOcrDocumentField","addOCRDocFields","isPrimary","OCRDocId","FieldLabel","IsRequired","IsPrimaryKey","addOCRDocToProcess","InputLocation","OutputLocation","getOCRDocumentFieldToProcess","getOCRDocumentFieldToProcessDropdown","addUpdateDocumentFieldToProcess","AddOcrDocumentsModal","tableList","ocrList","columnNameList","res1","ocrDoc","ocrApiId","ocrDocumentIgnoreDepartment","pros","responses","OcrDocuments","pullOcrDocumentsAndUpdateState","OcrDocuments_id","AddUpdateOcr","addDefectActionedCategory","DefectActionedCategoryID","DefectActionedCategoryDescription","updateDefectActionedCategory","getDefectActionedCategories","AddDefectActionedCategoryModal","DefectActionedCategoryDetails","DefectActionedCategoryData","defectActionedCategoryDescription","DefectActionedCategories","pullDefectActionedCatagoriesAndUpdateState","defectActionedCategoryID","addBatteryManufacturers","BatteryManufacturerID","BatteryManufacturerName","updateBatteryManufacturers","getBatteryManufacturers","AddBatteryManufacturersModal","BatteryManufacturersDetails","BatteryManufacturersData","batteryManufacturerName","BatteryManufacturers","pullBatteryManufacturersAndUpdateState","batteryManufacturerID","getWorkflowListsAndOps","getWorkflowStepList","getWebForms","addWorkflowSteps","StepId","StepLabel","Label","StepIndex","sequence","StepListId","stepListId","documentName","WebFormTypeId","webFormId","IsVisible_Customer","IsVisibleCutomer","IsVisible_Auditor","IsVisibleAuditor","IsEditable","JsonPropertyName","jsonProperty","IsActive","IsTextboxType","isTextboxType","DynamicFormID","dynamicFormID","getWorkflowListOps","addWorkflowStepList","ListName","updateWorkflowStepList","addWorkflowStepsListOptions","listId","getWorkflowDataScreenDropdown","AddWorkflowStep","WorkflowStepDetails","isNoOption","isListType","SteplList","OcrDocumnetList","WebFormList","stepID","noOption","issteplist","workflowSteps","webForm","dynamicFormList","dynamicForm","isEditable","isVisible_Auditor","isVisible_Customer","ocrDocumentId","stepIndex","stepLabel","webFormTypeId","jsonPropertyName","wt","readOnly","replace","onKeyDown","WorkflowSteps","WorkflowName","pullWorkflowStepsAndUpdateState","match","results","steps","stepId","AddOCRDocToProcess","OCRDocToProcess","OCRDocToProcessList","OCRDocToProcessID","inputLocation","outputLocation","DocumentFieldToProcess","enabled","ocrDocumentFieldId","documentsList","splitByList","inputList","setInputList","handleInputChange","splitIndex","handleAddClick","splitBy","pulldata","pullDropdown","scriptOnFileName","str","replaceAll","dataArr","method","resDropdown","script","OcrDocumentToProcessId","OcrDocumentFieldId","ScriptOnFileName","fieldLabel","handleRemoveClick","OcrDocumentToProcess","showDocumentFieldModal","OCRName","pullOCRDocToprocessAndUpdateState","handleDocumentFieldModal","modalClosed","AddOCRDocFields","OCRDocFields","IsPrimary","OCRDocFieldsID","res2","result1","isPrimaryKey","columN_NAME","OcrDocumentField","pullOcrDocumentFieldAndUpdateState","getOCRName","sortedRows","resWithErr","addWebForm","buttonLabel","navigateToDashboard","WebFormRelativeUrl","WebFormButtonLabel","NonFunctionalDescription","NavigateToDashboardOnSubmit","webformEditableWorkflowID","DeleteWebForm","AddWebFormModal","WebFormId","WebFormDetails","WebformData","webFormRelativeUrl","webFormButtonLabel","nonFunctionalDescription","navigateToDashboardOnSubmit","multiline","DeleteWebFormModal","WebFormName","gutterBottom","WebForm","pullWebFormAndUpdateState","WebForm_id","handleDeleteWebForm","getByWorkflowIdAndHeaderId","headerId","processsReturnReasonForJob","returnReasonId","anyNotes","selectedTechnician","resetSignature","JobId","ReturnReasonId","TechnicianJobID","addUpdateReturnReason","nextWorkflow","UniqIdentifier","backgroundColorCode","textColorCode","ReturnReasonID","ReturnReasonDescription","ReturnReasonWorkflowID","ReturnReasonNextWorkflowID","ReturnReasonActive","AddReturnReasonModal","Reason","uniqIdentifier","WorkflowID","ReturnReasonDetails","returnReasonDescription","returnReasonActive","returnReasonNextWorkflowID","updatedColor","hex","ReturnReason","workflowList","pullReturnReasonAndUpdateState","ReturnReason_id","colorCodeObj","thems","el","getTechWriteUp","AddTechWriteUp","NotesItem","TechnicianNotesDate","TechnicianNotesHeaderRecordID","technicianNotesItem","TechnicianNotesMileageIn","mileagein","TechnicianNotesTimeIn","parseFloat","timein","TechnicianNotesMileageOut","mileageout","TechnicianNotesTimeOut","timeout","TechnicianNotesSmokeTestPerformed","smoketest","TechnicianNotesServiceIndicatorReset","serviceindicator","TechnicianNotesRadioCodeReset","radiocode","TechnicianNotesTimeClockReset","timeclock","TechnicianNotesTechnicianSignature","techniciansign","techWorkAccomplished","workaccomplished","TechnicianNotesReadingTaken","readingtaken","techFailureCodes","failurereason","TechnicianNotesTeamLeaderSignature","teamleadersign","TechnicianNotesReadingUnit","technicianNotesReadingUnit","TechnicianNotesJobID","newJOBId","getStandardWriteUp","langCode","AddStandardWriteUp","AddStandardWriteUpUpdate","DeleteStandardWriteUp","getStandardWriteUpById","transform","exampleWrapper","speedDial","SpeedDials","actions","setOpen","SpeedDial","ariaLabel","SpeedDialIcon","onOpen","SpeedDialAction","tooltipTitle","action","ConfirmationModal","AddUpdateModal","StandardWriteData","StandardWriteDataList","complaint","cause","cure","Title","StandardWriteUpID","selectedLanguageCode","translationExistsY","translationExistsN","selectedLanguages","pullData","standardWriteup","standardWriteupList","TranslatedID","o","translationExists","languageDescription","speedDialActionHandler","tempSelectedLanguage","showConfirmModal","modalLaguage","flag","tempLang","Complaint","Cause","Cure","Languages","confirmationModalClose","selectedId","findIndex","TechBtnClick","DeleteStandardWriteUpModal","StandardWriteUpName","StandardWriteUpDetails","StandardTechWriteUp","pullStandardWriteUpAndUpdateState","StandardWriteUp_id","handleDeleteStandardWriteUp","handleAdd","getFailureCodes","addFailureNotes","FailureCode","FailureDescription","DeleteFailureNotes","AddFailureNoteModal","failureCode","FailureNotesDetails","FailureNotesData","DeleteFailureNotesModal","FailureNotesName","FailureNotesId","FailureNotes","pullFailureNotesAndUpdateState","failureDescription","AddWorkflowStepsListModal","listName","WorkflowStepsListsDetails","WorkflowStepsListDetails","WorkflowStepsListOptions","Description","isUpdate","optionID","handleUpdateOptions","handleDeletePart","presetColors","listOptionName","newList","newPartToSetIsDelete","listOptionId","MarkForDelete","listOptions","handelAddOptionToServer","newPartToAdd","WorkflowStepsList","showOption","pullWorkflowStepsListAndUpdateState","handleOptions","WorkflowStepsListOption","getWorkAccomplishCodes","addWorkAccomplishedCodes","WorkAccomplishedCodeID","WorkAccomplishedDescription","DeleteWorkAccomplishedCodes","AddWorkAccomplishedCodeModal","WorkAccompCodeId","WorkAccomplishedCodesDetails","WorkAccomplishedCodeDetails","workAccomplishedDescription","DeleteWorkAccCodeModal","WorkAccCodeName","WorkAccCodeId","WorkAccomplishedCode","pullWorkAccomplishedCodeAndUpdateState","workAccomplishedCodeID","imageSizeLimit","getMultiImgResized","selectedFile","dataUrl","imgs","can","ctx","getContext","files","Array","file","img","Image","resolve","onload","cw","drawImage","toDataURL","removeChild","BranchModal","branchStampImage","stampImages","upload","fileUrl","branchStampID","branchStampName","submitHandler","branchData","BranchStampImage","justify","lable_style","Backup","accept","clasName","vehicleCategoryID","formatters","DateFormatter","YearFormatter","MonthShortFormatter","DateTimeFormatter","DateTimeTHMSFormatter","CurrencyThousandSeparator","CurrencyThousandSeparatorWithoutZero","param","trunc","toLocaleString","PercentageFormatter","round","ThousandSeparatorWithoutZero","constantMonthList","ToFixedSeparator","table","tableRowStyle","MonthShortNameList","tempNameList","isFiniteCheck","isFinite","SalesTargetScreen","totals","pullSalesTargetGridData","yearCode","temp","tempTotal","gridInputChangeHandler","InputWrapper","salesTargetID","salesTargetBranchID","salesTargetDepartmentID","salesTargetYear","salesTargetRetailJan","salesTargetRetailFeb","salesTargetRetailMar","salesTargetRetailApr","salesTargetRetailMay","salesTargetRetailJun","salesTargetRetailJul","salesTargetRetailAug","salesTargetRetailSep","salesTargetRetailOct","salesTargetRetailNov","salesTargetRetailDec","salesTargetMotabJan","salesTargetMotabFeb","salesTargetMotabMar","salesTargetMotabApr","salesTargetMotabMay","salesTargetMotabJun","salesTargetMotabJul","salesTargetMotabAug","salesTargetMotabSep","salesTargetMotabOct","salesTargetMotabNov","salesTargetMotabDec","salesTargetJan","salesTargetFeb","salesTargetMar","salesTargetApr","salesTargetMay","salesTargetJun","salesTargetJul","salesTargetAug","salesTargetSep","salesTargetOct","salesTargetNov","salesTargetDec","salesTargetCostJan","salesTargetCostFeb","salesTargetCostMar","salesTargetCostApr","salesTargetCostMay","salesTargetCostJun","salesTargetCostJul","salesTargetCostAug","salesTargetCostSep","salesTargetCostOct","salesTargetCostNov","salesTargetCostDec","salesTargetAccessoryJan","salesTargetAccessoryFeb","salesTargetAccessoryMar","salesTargetAccessoryApr","salesTargetAccessoryMay","salesTargetAccessoryJun","salesTargetAccessoryJul","salesTargetAccessoryAug","salesTargetAccessorySep","salesTargetAccessoryOct","salesTargetAccessoryNov","salesTargetAccessoryDec","salesTargetAccessoryCostJan","salesTargetAccessoryCostFeb","salesTargetAccessoryCostMar","salesTargetAccessoryCostApr","salesTargetAccessoryCostMay","salesTargetAccessoryCostJun","salesTargetAccessoryCostJul","salesTargetAccessoryCostAug","salesTargetAccessoryCostSep","salesTargetAccessoryCostOct","salesTargetAccessoryCostNov","salesTargetAccessoryCostDec","salesTargetPDICostApr","salesTargetPDICostAug","salesTargetPDICostDec","salesTargetPDICostFeb","salesTargetPDICostJan","salesTargetPDICostJul","salesTargetPDICostJun","salesTargetPDICostMar","salesTargetPDICostMay","salesTargetPDICostNov","salesTargetPDICostOct","salesTargetPDICostSep","paddingTop","TableContainer","Paper","Table","stickyHeader","TableHead","TableRow","TableCell","align","TableBody","scope","salesTargetRetailTotal","salesTargetMotabTotal","salesTargetTotal","salesTargetCostTotal","salesTargetAccessoryTotal","salesTargetAccessoryCostTotal","salesTargetPDICostTotal","ExpenseOtherIncomeComp","category","columnTotal","pullExpenseBudgetGridData","expenseCategoryID","pullOtherIncomesBudgetGridData","otherIncomeCategoryID","tempRows","frmpPage","grandTotal","data-rowid","changeQantity","new_columns","des","changedArray","objIndex","expenseVM","handleCategorySubmit","categoryName","categoryIncludeInProfit","isRowHovered","paddingRight","u","TableFooter","DepartmentDetailsComp","insideTabs","includeSales","includeExpenses","BranchTargetScreen","getFullYear","currentMonthDays","customerList","customerCode","filterData","budgetYear","salesDepartments","disableClearable","UpdateBranchCodesModal","BranchInvoiceEmail","BranchContractBranchName","BranchRandMCodes","BranchWarrantyCodes","BranchCashCodes","BranchRectificationAccountCode","BranchServiceWarrantyWriteOffAccountCode","BranchPartsWarrantyWriteOffAccountCode","BranchConsumablesAccountCode","BranchMobiloVanAccountCode","pullAndUpdateState","branchInvoiceEmail","branchContractBranchName","branchRandMCodes","branchWarrantyCodes","branchCashCodes","branchRectificationAccountCode","branchServiceWarrantyWriteOffAccountCode","branchPartsWarrantyWriteOffAccountCode","branchConsumablesAccountCode","branchMobiloVanAccountCode","handleFieldChange","Braches","checkSite","loader","btnHandler","ActionButtons","openTargetModal","targetBtnHandler","openCodeModal","codesBtnHandler","loadingData","onBtnClick","fullScreen","BranchTarget","addBatteryResults","BatteryTestResultCode","BatteryTestResultName","updateBatteryResults","getBatteryResults","AddBatteryResultsModal","BatteryResultDetails","BatteryResultsDetails","BatteryResultData","batteryTestResultName","BatteryResults","pullBatteryResultsAndUpdateState","batteryTestResultCode","AddVideoCategoryModal","videoCategoryActive","roleIDs","roleData","setRoleData","VideoCategoryDetails","VideoCategoryData","rolesToAdd","selectedModule","getResizedImage","imgh","imgw","AddVideoModal","videoID","videoActive","thumbnail","VideoDetails","modelgridStyle","gridContainer","formatterImageContainer","formatterImage","backgroundSize","formatterEditBtn","VideoList","pullVideosAndUpdateState","onCloseFunc","VideoCategories","showVideoList","pullVideoCategoriesAndUpdateState","roleID","Settings","CallUs","OpeningTimes","EmailUs","Diag","Qual","HeaderTextColorCode","HeaderBackgroundColorCode","MenubarTextColorCode","MenubarBackgroundColorCode","portalSettingTechnicianDeclaration","productLogo","labelLogo","bannerLogo","navigationMenuActive","bannerImage","portalSettingUnassignedTechnicianJobWorkflowID","pullSettingsAndUpdateState","portalSettingId","portalSettingTitle","portalSettingCallUs","portalSettingOpeningTime","portalSettingEmailUs","portalSettingDiagnosticCharges","portalSettingQCMessage","portalHeaderTextColour","portalHeaderBackgroundColour","portalMenuBarTextColour","portalMenuBarBackgroundColour","portalSettingDisplayTopNavCounters","portalSettingMainLogo","portalSettingAdditionalLogo","portalSettingGridRefreshTime","portalSettingTechnWriteupHeight","portalSettingDisplayPartStockStatus","portalSettingGridActionLabel","portalSettingGridChassisNumberLabel","showRegNumberInCustomerRatingBox","canCustomerViewNotesButton","canCustomerViewHistoryButton","canCustomerViewSaveButton","canCustomerViewSaveAndCompleteButton","canCustomerViewReturnButton","canCustomerViewReturnReasonHistoryButton","canCustomerViewAllDocumentsButton","canAuditorViewNotesButton","canAuditorViewHistoryButton","canAuditorViewSaveButton","canAuditorViewSaveAndCompleteButton","canAuditorViewReturnButton","canAuditorViewReturnReasonHistoryButton","canAuditorViewAllDocumentsButton","handleImage","reader","FileReader","readAsDataURL","clearImage","PortalSettingId","PortalSettingCallUs","PortalSettingOpeningTime","PortalSettingEmailUs","PortalSettingTitle","PortalHeaderBackgroundColour","PortalHeaderTextColour","PortalMenuBarBackgroundColour","PortalMenuBarTextColour","PortalSettingBannerImage","PortalSettingTechnicianDeclaration","PortalSettingQCMessage","PortalSettingDisplayTopNavCounters","PortalSettingMainLogo","PortalSettingBanner","PortalSettingAdditionalLogo","PortalSettingDiagnosticCharges","handleCkeditorstate","getData","EwipModule","CommunicatorModule","getDropdowns","getAllTranslations","TranslationFileID","TranslationCategory","TranslationKey","getEngTranslations","addUpdate","Translations","fileDropdown","editMode","disableSubmit","dropdownRes","translationFiles","transRes","handleArrowClick","input","fileID","fileName","translationKey","translationText","translationID","resPolish","resRomanian","resHindi","Polish","Romanian","Hindi","BudgetCard","subCount1","sublabel1","subCount2","sublabel2","icon_1","icon_2","Seticon","ArrowUpwardIcon","ArrowDownwardIcon","counts","BudgetCardTwo","subCount","sublabel","icons","BudgetCardThree","count_1","count_2","label_1","label_2","ProfitLossCard","subValue_1","subValue_2","maxValue","labelFontSize","valueTextFontSize","needleHeightRatio","ringWidth","needleColor","segments","customSegmentStops","segmentColors","currentValueText","borderRight","BudgetSubmeter","subVal_1","subVal_2","StyledTableRow","withStyles","palette","hover","ProfitTable","vehicleType","newRows","motabilityVolume","retailVolume","tradeVolume","NewSt","handleTable","Difference","totalProfit","budget","volumeTotal","retailProfit","retailPPU","motabilityProfit","tradeProfit","ProfitLoss","startDate","startOf","endDate","tableRow","groupIds","franchiseIds","tempOption","handleinput","getReportsDropdowns","DropDownRes","getProfitLossbyID","groupVal","franchiseVal","branchTotalPercent","branchBudget","branchProfit","getReportsDropdownsResolveData","getReportsSalesDropdowns","getReportsSalesDropdownsResolveData","getRportDashByID","start","end","fid","FranchiseCode","join","GetWIPHeaderByWIPNumber","wp","cn","GetExcelFileFromEndpoint","FileName","GetShiftCalender","Code","Year","GetShiftCalenderScreenDropdowns","GetResourceCalendar","GetResourceCalendarScreenDropdowns","GetBranchDeportmentScreenDropdowns","ReportGijgoGrid","isAction","dropDownList","dropDownColNames","recordId","fileCount","configName","fileUploaderConfigName","gridReload","finalColumns","isCurrency","isDropDown","dropDownListProvider","inputProperty","queryParamName","dataConverter","isGroupingId","grouping","groupBy","hideHeaderFilter","selectionType","selectionMethod","detailTemplate","hidePagination","listIdFromAPIResponse","k","dropDownValueField","dropDownLableField","FilterdParamsValues","$tfoot","$thead","hideFilterRow","isShowTotal","cal","showColumnTotal","prepend","downloadName","showCheckboxColFilterBtn","html","setRowStyleOnCondition","resColor","setRowStyleFunction","setColStyleOnCondition","setColStyleFunction","downloadURL","getInvoiceBranchByID","postInvoiceBranch","EditBranchScreen","branchInvoice","shortName","address1","branchAddressLine1","address2","branchAddressLine2","address3","branchAddressLine3","town","branchTown","county","branchCounty","country","branchCountry","postcode","branchPostCode","branchPhone","branchInvoiceList","departmentCode","departmentDescription","branchInvoiceResponseID","branchInvoiceResponseEmail","branchInvoiceResponses","newBranchInvoice","BranchesScreen","editButton","randerSortCol","col","colAction","colSortName","addInvoiceCustomer","editInvoiceCustomer","editInvoiceCustomerNote","addBranchStatusEmails","editBranchStatusEmails","getInvoiceCustomerById","custId","getBranchStatusEmailsById","InvoiceStatusId","deleteBranchStatusEmailsById","getBranchStatusEmailsDropdown","getDashboardForInvoice","singleEmailValidation","emailValidation","EditBranchStatusEmail","resData","invoiceStatus","emailContext","invoiceStatusList","dropDownRes","validations","invoiceStatusId","BranchStatusEmail","handleEdit","deleteStatusEmailHandler","branchSelectLable","branchSelectInput","BranchParametersScreen","overdueEmail","partStatusEmail","urgentActionEmailAddress","cashCustomerMessage","feedbackEmailAddress","technicalAssistanceEmail","workshopDiaryEmail","branchJobApprovedEmail","collectionStatusEmail","jobApprovedEmail","branchOverdueBodyTemplate","branchTechnicalAssistanceBodyTemplate","branchPartStatusBodyTemplate","branchWorkshopDiaryBodyTemplate","branchFeedbackBodyTemplate","branchUrgentActionBodyTemplate","branchJobApprovedBodyTemplate","branchCollectionStatusBodyTemplate","branchVORStatusEmail","branchVORStatusBodyTemplate","branchSiteVehicleStatusEmail","branchSiteVehicleStatusBodyTemplate","pullBranchDropDown","pullBranchById","branchBookingRequestEmail","AddCustomerGroups","customerGroupSiteVehiclesOnly","sendSMSUpdates","sendEmailNotifaction","customerGroupList","frequencyList","frequency","ocrDocumentsList","ocrDocumentSelectIDs","ocrDocuments","customerGroupID","pullDataById","customerSelectIDs","customerGroupEmail","customerGroupName","sMSNumber","smsNumber","vORTimer","vorTimer","handleYesNo","handleInput","validation","isValid","handlesubmit","FormHelperText","disableElevation","AdminVehicleNotification","showAddCustGroup","handleAddCust","tempColumn","actionCol","StyledTableCell","head","SMSStatusUpdate","updateSmsList","tempList","vehicleStatusCode","sendSMSUpdate","sMSText","smsText","includeInSiteVehicles","includeInVORVehicles","alert","paddingLeft","vehicleStatusDescription","getTickers","getTickerbyId","getTickerDelete","addTicker","AddEditTicker","Validation","KipMessages","tickerList","showAddUpdate","handleAddUpdate","closeAddUpdate","handledelete","addUpdateResultList","addUpdateResultListOption","addUpdateQCItem","getFranchiseHeaders","getDropdown","EditResultList","QCResultListID","focusedRow","qcResultListID","QCResultListDescription","qcResultListDescription","EditResultOption","QCResultOptionID","qcResultOptionID","QCResultOptionDescription","qcResultOptionDescription","QCResultOptionActive","qcResultOptionActive","QCResultOptionBackgroundColour","qcResultOptionBackgroundColour","QCResultOptionForegroundColour","qcResultOptionForegroundColour","QCResultOptionDefectRequired","qcResultOptionDefectRequired","QCResultOptionIsFailed","qcResultOptionIsFailed","onColorChange","QCResultOptionListID","compon","ResultListOptions","showAddEdit","handelColseModal","handleAddEditModal","baseUrl","QCResultsList","showOptions","handleAddEdit","AddEditItem","QCItemID","qcItemID","QCItemVehicleTypeID","QCItemTitle","qcItemTitle","QCItemSequence","qcItemSequence","QCItemActive","qcItemActive","QCItemResultListID","qcItemResultListID","QCItemResultLists","QCItems","franchiseHeaders","focusedFranchise","focusedQCItemID","pullFranchiseHeaders","letterIdentifier","getDiagnosticFaultByID","postDiagnosticFaults","getDiagnosticNoiseApparentsByID","postDiagnosticNoiseApparents","getDiagnosticLocationsByID","postDiagnosticLocations","getDiagnosticEngineFaultsByID","postDiagnosticEngineFaults","reuired","DiagnosticFault","RenderIconImage","renderImg","DiagnosticFaultsModal","DiagnosticCommonModal","screenName","screenSortName","DiagnosticEngineFaults","substr","addUpdateVorType","addUpdateVorReason","AddEditVorType","vorTypeDescription","vorTypeCode","vorTypeID","AddEditVorReason","vorReasonDescription","vorReasonID","VORReasonTypeID","VorReasons","VorTypes","showVorReasons","AddUpdateBookingStatus","sendEmail","iD","reqID","subject","subjects","BookingRequestStatus","getDynamicFormDetails","saveDynamicForms","deleteDynamicForm","saveDynamicFormFields","getDynamicFormFieldsById","getDynamicFormFieldsByFormID","getOptionsByDynamicFormId","getDynamicFormDataByID","dynamicFormId","getGetDynamicFormDocuments","documentFieldID","saveDynamicFormFieldUploadDoc","dynamicFormFieldId","formData","deleteDocDynamicFormField","documentID","saveDynamicFormData","swapDynamicFormFields","DynamicFormFieldId1","DynamicFormFieldId2","summary","primary","main","contrastText","heading","typography","pxToRem","fontWeightRegular","cardRoot","cardHeader","FieldWrappper","memo","isAccordion","Comps","isCard","FinalRender","Accordion","AccordionSummary","expandIcon","ExpandMore","AccordionDetails","elevation","CardHeader","titleTypographyProps","CardContent","AddEditDynamicFormsModal","dynamicFormBackgroundColor","dynamicFormTextColor","editableWorkflowID","EditableWorkflowID","DeleteDynamicForm","dynamicFormName","DynamicFormsList","deleteModal","AddEditDynamicForm","btnContainer","AddEditDynamicFormFields","dynamicFormFieldJsonPropertyName","_uniqueId","dynamicFormFieldIndex","dynamicFormFieldLabel","dynamicFormFieldListId","dynamicFormFieldIsRequired","dynamicFormFieldShowUpload","dynamicFormFieldShowView","dynamicFormFieldShowEmail","dynamicFormFieldType","dynamicFormFieldDisplayType","dynamicFormFieldIsDeleted","dynamicFormFieldNumberOfRows","dynamicFormFieldBackgroundColor","dynamicFormFieldTextColor","dynamicFormFieldTextImage","dynamicFormFieldTextURL","dynamicFormFieldSubtitle","imageField","dynamicFormFieldOcrDocumentId","showVideoLinkModal","labelPlacement","GetVideoLink","DynamicFormFields","smallSequence","bigSequence","handleMoveClick","move","switchRecord","formID","PramDynamicFormID","rec1","rec2","ArrowUpwardRounded","ArrowDownwardRounded","sort","loc","handleData","nicoleDownloadFileWithExt","getReportingNotes","smn","getReportingWIPLogs","addReportingWIPLogs","addReportingNotes","getWeeklyFlashReport","getMotHistory","regNo","getAgedMeasuresViewDocument","InvoiceFileName","getReportingBudgetScreenDropDown","getReportingBudget","Type","addReportingBudget","dataList","getUsedStockValuation","postUsedVehicleStockGetExcelFile","getVehicleProfileListDropDown","postUsedVehicleStockValuation","getAgedStockValuation","postOveragePriorityList","postOveragePriorityGetExcelFile","getReprtingDashboard","getReprtingAfterSaleDashboard","getReportingInternalHighLevelDashboard","MiniViewReportingDashboard","parts","isLoader","handleRedirect","soldHoursColour","soldHours","soldAmountColour","soldAmount","wipHoursColour","wipHours","wipAmountColour","wipAmount","technicianBudget","technicianWorking","uniqueCustomers","warrantyHours","warrantyAmount","rmHours","rmAmount","surchargeQuantity","surchargeAmount","partsDepartment","mtdBudget","partsAmount","getauditorDashboard","getAuditorList","assignAuditorsToJob","auditors","getAuditorsByJob","lable","AuditorDashboard","cards","currentMonth","currentYear","preYear","Container","AuditorJobDetails","pullJobDetailsAndUpdateState","GridID","SpaceType","timer","BasicButtonGroup","buttons","triggerButtonClickOnLoad","spaceType","allGrid","basicStyle","mainWorkflowButtonId","wfbuttonClicked","showHighlightedButton","reducer","payload","CommonGijgoGrid","gijgoGrid","downloadBtnName","AddEditActionLog","logVisibleToCustomer","logHighPriority","isCustomerUpdate","isUpdateSms","handleCheck","Newvalidation","logText","logActionTime","newlogTextmessage","logActionTimeMessage","isPhoneNo","isUpdateCustomerEmail","isHighPriorityEmail","logID","logHeaderRecordID","logResultText","wip","reg","EditActionLog","setShow","newisCustomerUpdate","newisUpdateSms","resultDateAndTime","newisHighPriorityEmail","highPriorityEmail","logActioned","logCreatedUserID","logDateCreated","newlogText","newlogActionTime","newisPhoneNo","newisUpdateCustomerEmail","newlogHighPriority","handleNewSubmit","Chip","avatar","LogHistory","messaegList","actionLog","editActionLog","handleActionLog","hideAddActionBtn","borderBottom","JobPriorityModal","jobPriority","workFlowData","priorityNumber","isSetDisabled","CustomerRating","customerRatingIcon","customerRatingNotes","enteredRegNo","s24ChassisNumber","wipNumber","ratingList","dateInPast","firstDate","setHours","MotHistoryScreen","dvla","lcvMot","hgvMOT","isResponse","pullMotHistory","isMotExpiryDate","motExpiryDate","isAnnualTestExpiryDate","annualTestExpiryDate","hideSeachText","regNumber","taxStatus","make","model","motTests","expiryDate","motTestDueDate","taxDueDate","completedDate","testResult","motTestNumber","odometerValue","rfrAndComments","Alert","severity","annualTests","testDate","testCertificateNumber","defects","severityCode","failureReason","severityDescription","getJobNotes","addJobNotes","updateJobNotes","NotesModal","loading","notes","newNote","selectedID","showDeleteConfirm","JobSingleNote","handleEditNote","note","handleDeleteNote","by","at","notesContainer","useRef","getJobNotesAndSaveToState","current","scrollTop","finally","tempNotes","onNotesAdded","modalSubHeaderTitle","ref","deleteNoteFromServer","1","2","3","Dashboard","workflowButtons","timeID","logHistory","showCustomerRating","displayCustomerMessage","setLoading","isCommunicatorAllowed","custerRating","handleJobNotes","jobNotes","handleLogHistory","SpeakerNotes","hasNote","customerMessage","handleCustmer","showJobPriority","handleShowJobPriorityBtnClick","isShow","Column","showMotHistory","f","setInterval","intervalId","clearInterval","tempUrl","_","isEmpty","JobNotes","TechDashboardGrid","URLSearchParams","ParamTid","ParamBnm","saveDocumentStamps","docId","docName","stamps","documentStampsJSON","saveDocumentStampsV2","canvasofPages","getDocumentStamps","getDocumentByName","pageNo","uploadOcrDoc","getOcrDocumentHistoryForJob","deleteJobOcrDocument","jobDocumentId","deletingCurrent","setAsCurrentDocument","searchJobByText","searchText","moveDocToOtherJob","nextJobId","isCurrent","mailDocument","ScreenContext","MarkingType","FixedImage","WorkflowJobDetailsProvider","widths","tabView","tabSize","allFilled","isReadonly","showNotesModal","showHistoryModal","showReturnReasonModal","showOcrDocHistory","documentRotateBy","zoomFactor","showMailModal","docInfoToMail","showAllDocModal","showReturnReasonHistoryModal","showBarCode","showCustomerNotes","showHeaderDetails","screenState","setScreenState","selectedWorkflowId","isTechReadonly","frompage","selectedOcrDocId","selectedOcrDocName","selectedOcrDocHistoryCount","workflowStepsList","imagesFromUrl","isSelectedFilePdf","loadingDoc","currentVisibleDocName","hasSubmitedForm","loaded","images","setStampImages","markingType","isStart","isContinue","needModal","haveAnySelected","fabricCanvasData","base64FromFabric","markingState","setMarkingState","stopMarkingMode","canUseNewStamp","isNew","setLoadedStamps","stampData","saveStampData","stampObj","allStamps","omit","currentChanges","fullMergedWorkflowData","tempMergedData","workflowDocs","jobBasicDetail","hasSomethingToSave","hasNotes","setWorkflowData","updateState","update","getDocumentFromOcrDocId","returnProcessed","hasMsg","pullWorkflowSteps","pullWorkflowDataAndSet","documents","tryToSaveWorkflowData","markComplete","done","stopFlag","fulFormFilled","s","isReadonlyWorkflow","isSelected","Provider","saveCanvasDataForPageNo","fullJson","base64Data","hasAnythingToSave","objects","removeStamp","stampId","addNewStamp","newStamp","heightWidth","last","valueOf","info","startMarkingMode","markingTypeSelection","typ","other","updateStampInfo","stamp","addDocumentImagesData","imgBase64Src","hasPrev","hasNext","dropDownValueSelected","dt","omitBy","getListOptionById","l","setDocumentWithOcrDocId","doc","showNotes","hideNotesModal","notesAdded","showHistory","hideHistoryModal","showReturnReason","hideReturnReason","showOcrDocHistoryModal","hideOcrDocHistoryModal","rotateDoc","explicit","changeZoomFactor","changeBy","min","showMail","hideMail","showAllDoc","hideAllDoc","hideWarningMsg","showReturnReasonHistory","hideReturnReasonHistory","getDocumentHistory","onBarCodeClick","onBarCodeClose","handleCustomerNotes","handleHistoryModal","closeHistoryModal","handleVehicleStatusClose","onVehicleStatusClick","siteVehicle","showHeaderDetailsHandler","closeHeaderDetails","MailDocModal","ocrDocumentName","toEmail","attachmentName","ocrDocName","sending","ocrDocIdToMail","sendAllVersions","sendDoc","AttachFile","CustomeSignPad","signCanvas","isSignExist","fromDataURL","off","hideBtn","content","BorderColorIcon","DeleteIcon","clearSig","onEnd","canvasProps","DynamicAppSelect","handleChange","formControl","FormGroup","isArray","getDiagnosticSheetsDropDown","getDiagnosticSheetModelFalutList","getDiagnosticSheetHeaderDetails","HeaderRecordId","getDiagnosticSheetDetails","sheetId","saveDiagnosticSheets","DynamicFormFieldProvider","workFlowStepList","formFields","imageList","dynamicFormDescription","dynamicFormData","setDynamicFormData","pullDynamicFormData","headerDetails","tryToSaveDynamicFormData","DynamicFormData","closeFormModal","inputContainerBackgroundColor","inputContainerTextColor","step","onDropdownChange","dropdownValue","downloadDocument","showView","actionType","fieldId","showDoc","selectedFieldData","showUpload","docAction","getDocumentAction","subtitle","textURL","textImage","numberOfRows","GetTechnicianSign","ImageCard","avtar","selfBg","MultiImageSliderModal","image","setImage","TitleComp","onImageUpload","isUploading","isLoading","docFile","im","isDelete","onImageRemove","setCurrentImage","RenderForm","saveBtnEnabled","currentPageNo","uploadFiles","arrName","FormData","pullDocumentWithPage","useCallback","hasMorePage","mainContainerPaddingPercentage","outline","MailDoc","Screen","StepWebFormButton","navigate","showStepWebFormModal","setShowStepWebFormModal","closeStepWebformModal","effectiveLabel","webFormTypeName","iFrameHeaderName","listenMsg","webFormTypeUrl","StepWebFormModal","isTechnician","isInternal","onLoad","StepDynamicFormButton","showStepDynamicFormModal","setShowStepDynamicFormModal","dynamicFormButtonLabel","StepDynamicFormModal","WorkflowStep","onDocumentAction","uploading","setUploading","enableViewEmail","eventType","uploadDoc","firstFile","ocrDocument_ShowUpload","ocrDocument_ShowView","ocrDocument_ShowEmail","Mail","backgound","getWorkflowMovementHistory","getReturnReasonHistory","HistoryTableRow","createdAt","movedBy","movedAt","HistoryTable","rec","colSpan","MovementHistoryModal","ReturnToWorkflow","selectedReason","opNotes","technicianList","nextWorkflowName","processReturn","onReturnProcessed","nextWorkflowID","rr","Technician","Tech","d","JobID","DeleteConfirm","onConfirm","MatchingJobRow","job","onJobSelect","MatchingJobsTable","jobs","OtherJobSelectionToMoveDoc","selectedHeaderId","matchedJob","jobHeaderId","onProcess","rowLevelAction","setDocAsNextCurrent","isAuditor","Reply","OcrDocHistory","docHistory","orgCurrentDoc","nextCurrentDoc","showDeleteDialog","showDocToOtherModal","itemToDeleteOrMove","pullHistoryAndSetState","hideDialog","propName","confirmDelete","saveSelectedAsCurrent","moveToOtherJob","otherJobId","DocTableRow","HandelMailDocument","DocTable","JobAllDocs","allDoc","WarningMsg","returnDate","returnedBy","currentWorkFlow","returnedWorkFlow","ReturnReasonHistoryModal","getTxtToImg","imageElem","canvas","font","measureText","fillText","getMultipleTxtToImg","lines","longest","resizeImage","base64Str","MAX_WIDTH","MAX_HEIGHT","DocStamps","docContainer","calculatedStamps","addingNewStamp","stampSignature","windowInnerWidthHeight","fabricCanvas","loadFromJSON","scrollHeight","allS","addStampOnFabric","imgSrc","fabric","fromURL","add","set","discardActiveObject","renderAll","clickHandler","classList","contains","offsetLeft","offsetX","offsetTop","offsetY","isCheck","isCross","calWidth","parseInt","handleKeydown","code","calculateAndUpdateStampInfo","newInfo","setStampImage","resolved","rejected","h","wh","setTextImage","onDragStop","onResizeStop","delta","disableDragging","enableResizing","HavePendingMarking","showConfirmation","removeAndClose","ShowBarCode","CustomerNotes","overflowZ","dangerouslySetInnerHTML","__html","DOMPurify","sanitize","customerNote","ArrivalDateModal","selectedStatus","dateArrived","collectedNotes","isCustomerEmail","arrivedSignature","arrivedStoredSignature","RebookingRequiredModal","partStatus","rebookingDate","RebookedModal","CommonStatusModal","btnTitle","BookedStatusModal","statusList","tempMessage","partStatusList","WorkCompleteModal","workCompletedDate","CheckedOutModal","InWorkShopModal","workInProgress","AwaitingAuthorityModal","orderNumber","AwaitingPartModal","partETA","ModalTitle","8","9","7","11","ArrivedStatusModal","CollectedStatusModal","dateCollected","collectedSignature","collectedStoredSignature","ApprovedByCustomerModal","signature","storedSignature","OnSiteStatusModal","CustomerInformedStatusModal","WorkCompletedStatusModal","ColorlibConnector","alternativeLabel","backgroundImage","completed","line","StepConnector","useColorlibStepIconStyles","ColorlibStepIcon","stepCount","clsx","button","instructions","VehicleStatusStepper","activeStep","setActiveStep","statusShow","setStep","tempFilterList","TempStep","isBtn","bookedDate","leadLiveDate","stepperData","currentStatus","statusDesc","workCompleted","cancelledDate","isBookedModal","isArrivedModal","isOnSiteModal","isAwaitingModal","isWorkCompletedModal","Stepper","connector","disableFocusListener","Step","popUpHandler","StepIconComponent","vehicleStatusList","ApprovalDetailsModal","approvedOrderSignature","approvedOrderDate","approvedOrderNumber","approvedUserID","vehicleStatus","AddEditSiteVehicle","isReadOnly","otherVehicleStatusList","stepperNumber","getByIdRes","jobProgressDate","CheckDate","internalNotes","vehicleDeliveryDate","workDetails","currentStepperNumber","handleapprovalDetailModal","approvalDetailShow","closeapprovalDetailModal","isShowHistory","NumberWithPound","HeaderDetailsModal","isTopNav","isCustomer","customerOrderNo","customerInternalNotes","keyNumber","outstandingPayment","creditLimit","WorkflowJobDetails","stampContainer","canvasRef","fabricLoadedRef","setPageNo","pullDocument_V2","setHeight","setWidth","pullDocument_V1","isPdf","endsWith","allSavedStamps","showStep","handleDocumentAction","updateCanvasDataToState","toDatalessJSON","getActiveObjects","Canvas","freeDrawingBrush","isDrawingMode","haveSomethingToSave","hideLeftButtonController","shouldHide","axB","shouldShowButton","buttonName","setShowConfirmation","clearCanvasAndStopMarkingMode","getScreenOffset","isFlag","saveAndRefresh","newFileName","isArchivedJob","anchorEl","setAnchorEl","goBack","ArrowBack","PhotoLibraryOutlined","cashMessage","Timeline","Done","DoneAll","ArrowLeft","ArrowRight","FiberManualRecord","stopPropagation","currentTarget","ArrowDropDown","TextFields","CalendarToday","Explicit","Menu","dense","transformOrigin","clr","AlternateEmailOutlined","LinearProgress","styleObj","imgBase64","displayDoc","WorkflowMovement","ReturnReasonHistory","AllDocModal","showdoc","getQCSheet","addQCSheet","mileage","headerID","QCHeaderSignatureName","qcHeaderMOTJob","HeaderRecordID","QCHeaderNotes","QCHeaderSignature","QCHeaderMileage","QCHeaderID","qCResults","getQCDocuments","documentQCItemID","saveQCDocuments","deleteQCDocument","QualityControlSheet","urlParams","fromStep","imgsign","qcMessage","qcHeaderNotes","qcItems","qcResultOptions","IssuerSignature","qcHeaderSignatureName","qcHeaderPassed","isBoolean","jobID","qcHeaderSignature","qcHeaderMileage","qcHeaderID","findObj","qcResultNotes","qcResultTechnicianID","qcResultCheckID","NoteChange","conatiner","qcResultOptionListID","getPartReqs","addPartReq","reqParts","issuePartsQty","getPartReqStatus","getPhotosByPartReqID","PartReqPhotoDeleteByPhotoId","postPhotosByPartReqID","partReqId","Photos","partReqPhotoID","PartReqPhotoPartReqID","PartReqPhotoFile","partReqPhotoFile","PartReqPhotoModal","getPhotos","partId","setPhotos","getOldNewPhotos","getPhoto","onImageChange","desc","RenderSignName","sigDate","Divider","PartReqOtherInfo","requestor","requestorSign","requestorDate","issuer","issuerSign","issuerDate","approver","approverSign","approverDate","secondary","axelTitles","headings","ApprovePartRequisitions","windowHeight","btnLoader","setBtnLoader","needApproval","technicianNotesJobID","wipDetails","changedRecordIds","partReqWorkshopControllerSignature","partReqStatusID","partReqStatusDescription","partReqs","partReqID","partReqPartDescription","partReqQuantity","partReqStatus","isApproved","approvedSig","partReqIssuerSignature","technicianSig","requestorSignature","partReqIssuedQuantity","issueStatus","requestedTime","approvedTime","issuedTime","photosUploaded","partReqTechnicianJobID","partReqTechnicianSignature","techSign","onImagemodalClose","showImage","makeEmptyPhotos","showInfo","setData","issuerSignature","handelAddPartToServer","isPartReq","isPartReqErrorMsg","partReqsAddVM","gridheight","technicianJobID","workSign","showSignature","PartRequisitionsIssueQuantity","btn1","btn2","needQtyIssue","stockList","checkApprover","checkStatus","onIssueQtyChange","nm","dataset","rowid","qnIssuing","partReqStockStatusId","issueStatusID","supplier","onIssueQtyBlur","maxIssuing","onBlur","approverSignature","ops1","partReqStockStatus","partReqStockStatusDescriptions","partReqIssueStatus","partReqIssueStatusID","partReqIssueStatusDescription","qn","qnIssued","partReqStatusDes","oldPhoto","updateIssuedQuantity","quantityIssueAgainstPartReqs","quantityIssuing","partReqSupplier","isError","errorMsg","DisplayGrid","enLanguages","pullStandardAndUpdateState","RowData","onSubmitStandard","onStandardWriteup","findEnglish","ButtonComp","ctrlKey","defaultMuiPrevented","Params","TechWrite_Up","failureCodes","workaccomplishcodes","selectedFailureCodes","selectedWorkAccomplishCodes","hide1","imgtechniciansign","imgteamleadersign","showCircularLoader","odometerUnitsVM","technicianName","technicianDateSigned","teamLeaderName","teamLeaderDateSigned","selectedFailure","selectedWorkAccomplish","hideBracket","hideLeaderBracket","pad","technicianNotesHeaderRecordID","technicianNotesCause","techWorkAccomplishedCodeID","techFailureCodeID","technicianNotesActionTaken","technicianNotesDate","technicianNotesReadingTaken","technicianNotesFault","technicianNotesMileageIn","technicianNotesMileageOut","technicianNotesRadioCodeReset","technicianNotesServiceIndicatorReset","technicianNotesSmokeTestPerformed","technicianNotesTechnicianSignature","technicianNotesTeamLeaderSignature","technicianNotesTimeClockReset","technicianNotesTimeIn","technicianNotesTimeOut","odometerUnitID","odometerUnitDescription","technicianNotesTechnicianName","technicianNotesTechnicianDateSigned","technicianNotesTeamLeaderName","technicianNotesTeamLeaderDateSigned","technicianNotesItemFault","technicianNotesItemDiagnosis","technicianNotesItemCause","hideConfirmationModal","submitFunction","GlobalCss","showSubmit","CloudDownloadIcon","calMaxHeight","html2canvas","onclone","cloned","textArea","getElementsByTagName","getHeight","div","textProp","getBoundingClientRect","innerText","parentElement","imgData","pdf","jsPDF","imgProps","getImageProperties","pdfWidth","getWidth","pdfHeight","addImage","save","DisplayGridState","getCustomerConsultations","addCustomerConsultation","DefectReported","CustomerSignature","serviceAdvisorSign","CustomerConsultationID","CustomerConsultationDefectReported","CustomerConsultationCustomerSignature","CustomerConsultationServiceAdvisorSignature","CustomerConsultationResult","CustomerConsultation","signCanvasAdvisor","customerConsultationDefectReported","customerConsultationCustomerSignature","imgServiceAdvisonsign","custConsultatItems","custConsultatOptions","customerConsultationID","customerConsultationServiceAdvisorSignature","customerConsultationResultItemID","customerConsultationItemID","customerConsultationResultOptionID","customerConsultationResultNotes","customerConsultationItemTitle","ItemID","OptionID","customerConsultationItemHelp","Getsign","GetServiceAdvisorsign","OneAuditorRow","ph","AuditorListTable","items","onAllSelect","selectedCount","allSelected","aud","AssignJobAuditorModal","archivedJob","loadingCounter","saving","selectedAud","filteredAud","audAssignedAlready","ai","assignSelectedAuditors","audId","cssClass","ArchivedJobs","jobAssignAuditorsTo","hideAssignAuditor","assignJob","PeopleOutline","handelReturnReason","AssignToAuditor","getDefectByID","userID","defectPostdata","DefectScreenContext","DefectProvider","defectDescription","signteamleaderCanvas","createdUser","defectDateCreated","actionCreatedUser","defectDateActioned","defectReportedCategories","defectActionedCategories","defectHeaderRecordID","headerRecords","activeUser","getDefect","btnList","defectCreatedUserSignature","defectCreatedUserID","defectActionedUserSignature","defectVM","userSignature","defectID","categoryID","clearLeaderSign","GetTeamleaderSign","useDefaultSig","AddDefects","getWorkflowDashBoard","WorkflowDash","getDiagnosticCharge","saveDiagnosticCharge","DiagnosticCharge","diagnosticChargePrintName","diagnosticChargeSignature","diagnosticChargeDeclaration","idDisabled","diagnosticChargeDateSigned","diagnosticChargeCreatedBy","diagnosticChargeHeaderRecordID","addDiagnosticCharge","getqcJobs","MOTJob","MapQCCard","ButtonList","fix","qcDone","totalJobs","MapQCHeaderUnits","totalpassFaild","totalPassed","totalFailed","percentage","qcFailed","qcPassed","btnObj","di","dout","QCJobsDashboard","qcList","qcBranch","finalQcVal","RenderList","qcHeaderResult","grpHeaderByFranchise","groupHeaderByBranch","headerFrType","grpByTechnicianUnits","qcUnitItemGroupResult2","dropDownFranchiseList","rv","UnitsItem","qcUnitsResult","GrpHeaderByBranch","GrpHeaderByFranchise","qcUnitsTechnicianResult","groups","qcGroupByTechnician","finaltemparray","temparray","pop","qcItem","qcUnitItemList","TechnicianList","passed","dropDownBranchList","perbtn","valuePer","headerBrType","unitTechType","hrid","wid","handleBtnClick","showQualityControlSheet","handleQualityControlSheetClick","handelTabClick","stateDate","rowSpan","qp","BudgetScreen","unitsList","branchBudgets","setChecked","units","overAllTotal","handleChanges","handleChangesfranch","GoToEnquiry","fnCode","GoToSales","Hidden","only","prev","Collapse","in","newUnitSales","newUnitDailyRunRateIcon","newUnitDailyRunRate","newUnitDailyBudgetIcon","newUnitDailyBudget","usedUnitSales","usedUnitDailyRunRateIcon","usedUnitDailyRunRate","usedUnitDailyBudgetIcon","usedUnitDailyBudget","newInvoicedDailyBudgetIcon","newInvoicedSales","newInvoicedDailyBudget","usedInvoiceSales","totalRetailLabourTotalLabour","totalRetailLabourRunRateIcon","totalRetailLabourBudgetIcon","totalRetailLabourRunRate","totalRetailLabourBudget","totalLabourTotalLabour","totalLabourRunRateIcon","totalLabourBudgetIcon","totalLabourRunRate","totalLabourBudget","overAllProfit","overAllBudget","newCar","newCarProfit","newCarBudget","usedCar","usedCarProfit","usedCarBudget","afterSales","afterSalesProfit","afterSalesBudget","NestedGijgoGrid","monthNames","addCommas","getDate","getMonth","sale","cost","DiscOval","Bonuses","Subsidy","CPI","Finance","pdi","ts","tc","gpp","gp","NewVehicleProfitReport","startDateParams","endDateParams","EmailModal","useReducer","baseColumn","OpenActionLog","MotHistory","EmailPopUp","showMyLog","getVORscreenDropdowns","postVORVehicle","getVorByID","CommunicatorAddVor","workAccomplishedCodes","AllvorTypeDetails","vorTypeList","vorTypeDetailList","technicianFailureCodeIDs","technicianFailureCode","workAccomplishedCodesId","vorEstimatedEndDate","faultTypes","defectFaultTypes","vorDateStarted","vorTypeIDValue","vorReasonIDValue","tempOptions","setTempOptions","vorID","selectedtechnicianFailureCode","selectedworkAccomplishedCodes","VehicleID","vorTypes","reasons","faults","technicianFailureCodes","resById","vorVehicleID","vorVehicleVehicleID","vorDateEnded","faultIds","order","selectedFaultTypes","ModuleChange","filterTypeDetails","typeID","vorVehicleTypeID","vorVehicleTypeDetailID","vorVehicleLocation","vorAdditionalComment","vorSubCategoryId","vorSubCategoryIdValue","vORHeaderRecordID","inputChange","singleSelectChange","ev","toISOString","slice","forceEnabled","S","V","W","A","VOR","BOOKED","CHECKIN","WORKSHOP","APARTS","ATA","AUTH","AFON","PE","PA","PB","paramStatus","tempCrum","SiteVehicles","ParamStatus","showVORModal","vorid","approvedDate","addUpdateSpecialEquipment","addUpdateSpecialEquipmentUsed","getSpecialEquipmentDash","getSpecialEquipmentAssignlist","GetSpecialEquipmentDetails","docImageContainer","objectPosition","AddEditSpecialEquipment","SpecialEquipmentID","SpecialEquipmentDescription","SpecialEquipmentQuantity","SpecialEquipmentCode","SpecialEquipmentIsActive","SpecialEquipmentToolLocation","specialEquipmentID","specialEquipmentDescription","specialEquipmentQuantity","specialEquipmentCode","specialEquipmentIsActive","specialEquipmentToolLocation","SpecialEquipmentBranchID","specialEquipmentBranchID","SpecialEquipmentPhoto","specialEquipmentPhoto","pullBranches","handleLogoUpload","SpecialEquipmentHistoryModal","activeOnly","codeCol","inUseCol","wipColumn","allocatedByColumn","specialEquipmentInUse","displayNameDeAllocatedBy","fontStyle","specialEquipmentDateUnallocated","specialEquipmentHeaderRecordId","displayNameAllocatedBy","specialEquipmentDateAllocated","SpecialEquipmentBarcode","CloudDownload","buttonFormtaer","SpecialEquipment","showUsage","showBarcode","barcodeField","handleModal","handleBarcodeClick","activeCol","barcodeCol","modal","newst","handelClose","BaseUrl","SpecialEquipmentDash","pullDashData","equipment","equipmentByBranch","equipmentInUse","equipmentTotalUse","setWindow","equipmentID","equipmentCode","equipmentCount","equipmentsInUse","eq","SpecialEquipmentWebForm","specialEquipmentSelected","specialEquipment","ShowDeleteModal","pullSpecialEquipmentDropdown","SpecialEquipmentUsedID","SpecialEquipmentHeaderRecordId","SpecialEquipmentInUse","handleShowDelete","specialEquipmentUsedID","dateCol","dateCol2","opacity","NotInterested","specialEquipmentAllocatedBy","specialEquipmentDeAllocatedBy","getDataByEwipNo","RequestBookingsHistoryModal","BookingRequestedModal","isEditMode","isValueChanged","pullDataByRegNo","mot","dateRequested","registrationDate","getByIdData","resDrop","selectedRecordData","bookingRequestID","historyData","jobDetail","bookingDate","bookingRequestStatusID","isCanceled","historyList","handleSeprateStatusInput","reScheduleValidation","cancleValidation","cancelReason","isClose","handleBookingAcceptSubmit","handleBookingCancelSubmit","handleBookingReScheduleSubmit","requestBookingsHeaderComp","RequestBookingsHistory","objList","RequestedBookingsScreen","4","5","isBookingRequesteModal","isBookingAcceptModal","isBookingReScheduleModal","isBookingCancelModal","BookingDetailmodal","selectedBookingData","BookingDetailsList","selectedBookingList","getMessageGridList","postSendMessage","postApprovedJob","getCommunicatorDash","InvoiceMessage","messageList","logAction","SubmitMessage","yearInput","bullet","pos","cardContent","fromTab","webkitBoxShadow","cardRow","loaderContainer","years","startYear","endYear","monthsList","BookingsScreen","showTopNavAndMenu","monthCode","allData","customerListUnique","daysInMonth","dayNo","tempCurrentMonthDays","bookingDay","closeDetailModalHandler","showDetailModal","showDetailListModal","handleAddActionLog","selectedListDate","showSendMessageModal","menuPermissionCounter","CashByDepartment","Measuredesc","MeasureID","redirectToScreens","unallocated","agedMeasureID","agedMeasureDescription","monthsActionHandler","isClickable","accessAllowed","toolTipLabel","departmentCol","currentMonthTotalCol","oneMonthTotalCol","twoMonthTotalCol","threeMonthTotalCol","fourPlusMonthTotalCol","unallocatedTotalCol","totalAmount","currentMonthTotal","oneMonthTotal","twoMonthsTotal","threeMonthsTotal","fourMonthsAndOverTotal","AgedDebt","accountCode","accountCodeCol","onstop","Discoval","PrepCost","UsedVehicleProfitReport","NewStocks","ParamFranchise","modelCol","UsedStocks","unitPrice","netTotal","LabourColumns","ratePerHour","GetWIPHeader","wipHeaderDetail","wipPartLine","wipLabourLine","company","lineNumber","bookingStatus","mainGrid","opGrid","wipsGrid","techGrid","ViewPdfModal","pdfFileData","scrolling","opColumns","wipColumns","InvoicedHours","ParamStartDateType","ParamBranchID","dateType","BranchList","mainGridOnSuccessFunc","opGridOnSuccessFunc","onSuccessWipFunc","documentHandler","invoiceFileName","showPdfModal","docEditButton","isFile","NewWipcolumns","wipNumberCol","ViewDocCol","showWIPDetails","pullInvoiceHours","recordsCount","sumsold","sumtaken","sumeff","sumsale","sumcost","sumprofit","summarginPerc","sumrecRate","sold","eff","profit","marginPerc","recRate","$detailWrapper","opno","AgedMeasuresDashBoard","agedMeasureDescriptionCol","MeasureDesc","nominalColumns","techCol","IdleTimeAnalysis","onSuccessOperatorFunc","onSuccessTechFun","PullSalesNominalData","StartDate","EndDate","sumIdleHours","sumProductiveHours","sumNonProductiveHours","totalIdleHours","productiveHours","nonProductiveHours","rc","GetAllBranchByAgedMeasures","department","branchCol","getCrumbs","ParamMeasureID","ParamMeasuredesc","ParamBranchName","ParamMonth","ParamUnallocated","final","GetAgedMeasuresDirtyUnits","ParamBranchId","reportingAccountQueryNotes","reportingAccountQueryCreated","ReportNotesModal","dn","reportingAccountQuerySystemMatchNumber","gridColumns","ParamDepartmentName","ParamAccCode","Paramsalesexec","ParentScreen","isSubTitle","GetAgedMeasuresRanMWarrantyCashGen","hoverDetailNote","ParamDepartmentCode","ParamCashAccountTypeID","ParamIsGroupingById","ParamPRSentTo","rsmn","notesActionHandler","invfile","wipNumberHandler","wn","wipNumberRenderer","Columns","tempColumns","ParamMc","GetUsedAndNewVehicleDebt","EnquirieList","moiType","bnIds","brnIds","fnIds","lenght","isFinancedCol","isfinanced","financeterm","barColors","0","6","10","12","13","14","ServicePieChart","PI","labelLine","ServieBarChart","margingBottom","textAnchor","sclaeToFit","verticalAnchor","interval","angle","maxBarSize","ServiceLineChart","LineChart","Line","stroke","strokeWidth","getWarrantyDashBoard","getSoldHoursDashBoard","getWIPDashBoard","getGetUserFilterRecords","ServiceDashboard","soldbyMonth","soldbyBranch","servicecWarrenty","partWarrenty","WipHour","WipOutStanding","res_2","res_3","table1","labourMonth","labourHours","labourTotal","totalHours","totalOutstanding","InvoiceCustomersAddScreen","contactName","contactPhone","invoiceEmail","sendInvoiceByEmail","address4","address5","customerId","InvoiceCustomersEditScreen","custData","pattern","multiEmailTest","customerSName","addressLine1","addressLine2","addressLine3","addressLine4","addressLine5","InvoiceCustomersNoteScreen","InvoiceCustomersListScreen","invoiceSendEmail","handleNote","showEditModal","showNoteModal","handleEditClose","getInvoicePdf","getInvoicesByID","invoiceScreenDropDown","postInvoiceMessage","getsendInvoice","postMulitpleInvoices","postUpdateInvoice","invoice","invoicePDFID","invoiceMessageText","invoiceMessageInvoiceID","invoiceId","invoiceMessageClosed","invoiceNumber","invoiceCreditNo001","invoiceMessagePDFID","invoiceMessageFromUser","invoiceMessageDateSent","invoiceMessageReplyUser","invoiceMessageDateReplied","EditInvoice","invoiceID","netValue","grossValue","invoiceStatusID","invoiceBranchID","postingDate","invoiceCustomerId","oldInvoiceID","invoiceNet","postDate","invoiceWIPNumber","oldInvoiceStatusID","invoiceNo","SendInvoices","showAlert","invoiceIDList","multiInvoiceFileName","multiInvoiceId","multiInvoiceNo","sendInvoiceContent","sendInvoiceEmail","baseCol","crumbsList","InvoiceScreens","showInvoiceMessage","showEditInvoice","showSendInvoice","onButtonClick","alink","download","actioncolFields","getVal","gridRef","recList","newCol","valueList","RenderTiles","Icons","tempUrlObj","CustCommonDash","InvoiceData","eWIPData","communicatorData","communicator","bookingReqShowModal","InvoiceMember","allInvoices","unPaidInvoices","queriedCount","paidInvoices","messagesSent","messagesReceived","eWIPDataMember","CommunicatorMember","awaitingAuthorityCount","workCompletedCount","isShowCustomer","awaitingCollectionCount","vorVehiclesCount","permissionCounterCustList","CommunicatorBookingsSec","bookingCount","bookingRequestCount","bookingReScheduleSentCount","bookingReScheduleReceivedSentCount","bookingConfirmedCount","bookingCancelCount","InvoicesDashboard","customerCount","FilterBtn","LinkedButton","SmallLinkedButton","GraphCell","common","white","black","EmptyGraphCell","WipGraphTable","newtemp","hours","monthTotal","isIDExist","visibility","handleIndex","CustomizedLabel","dy","PureComponent","WIPLineCharts","iconType","iconSize","showTable","Tabledata","ccGrid","colorCombi","succ","fail","minMaxYAxisCal","dataMin","dataMax","absMax","abs","CustomTooltip","formatter","renderCustomizedLabel","dominantBaseline","PartCustomTooltip","renderPartsCustomizedLabel","StyledTableRowGrey","surChargetable","VehicleCard","MTD","YTD","BudgetMTD","BudgetYTD","letterSpacing","mtdTotal","ytdTotal","StockCard","currentStockTotal","currentStockCount","total0to30","count0to30","total31to60","count31to60","total61to90","count61to90","total91to120","count91to120","total121to150","count121to150","total150Plus","count150Plus","configIndex","keyName","configIndex2","AfterSaleCombined","GoToDailyInvoicedHours","startDateType","MTDTotalBudget","YTDsold","YTDTotalBudget","YTDsale","ytdBudget","tickFormatter","ReferenceLine","stackId","mtdSold","mtdSale","mtdTaken","ytdAvailable","recRateTable","ytdSold","ytdSale","ytdTaken","domain","invoicingHours","invoicingPound","RecoveryRate","efficiencyBud","AfterSaleBranchCardPart","onRedirect","dc","partsCalculatedList","mtdSaleValue","mtdgpp","ytdSaleValue","ytdgpp","graphData","uniqueKeys","uniqueBranchList","dataItme","dataItmIndex","AfterSaleSupercharge","bsn","qty","surchargevalue","AfterSaleJobsDetails","communicatorDashList","partsVOR","vor","partsBackOrder","awaitingCollection","awaitingAuthority","AfterSaleYtdMtdSection","dailyWIPsGrapgData","dailyWIPsUniqueBranchList","dailyWIPsUniqueDateList","dailyWIPsCombinedList","branchShortCode","Total","monthlyWIPsGrapgData","monthlyWIPsUniqueBranchList","monthlyWIPsUniqueDateList","monthlyWIPsCombinedList","ReportingDashboard","newVehiclesumofytd","newVehiclesumofmtd","usedVehiclesumofytd","usedVehiclesumofmtd","registrationssumofytd","registrationssumofmtd","newVehicleStocksumofytd","newVehicleStocksumofmtd","usedVehicleStocksumofytd","usedVehicleStocksumofmtd","agedStocksumofytd","agedStocksumofmtd","registrationsFranchiseArr","usedVehicleFranchiseArr","newVehicleStockFranchiseArr","newVehicleFranchiseArr","usedVehicleStockFranchiseArr","agedStockFranchiseArr","isRelod","newVehicle","usedVehicle","registrations","newVehicleStock","usedVehicleStock","newVehiclesumofBudgetmtd","newVehiclesumofBudgetYtd","mtdTotalBudget","ytdTotalBudget","usedVehiclesumofBudgetmtd","usedVehiclesumofBudgetYtd","registrationBudgetmtd","registrationBudgetYtd","currnetStock","usedVehiclecurrnetStock","StockCount","usedVehicleStockCount","Avrage","usedVegicleAvrage","stock","DiagnosticSheetsImageComponent","ImageList","diagnosticSheetImgImage","SectionOne","diagnosticSheetEngineTransmissionConcern","enginefault","diagnosticSheetEngineTransmissionWarningLight","diagnosticSheetWarningLightDescription","SectionTwo","diagnosticSheetNoiseVibrationConcern","diagnosticSheetIsNoiseApparent","noiseApparent","typeOfNoise","diagnosticSheetNoiseVibrationOther","diagnosticSheetNoiseVibrationImg","SectionThree","diagnosticSheetWaterLeaksConcern","diagnosticSheetWaterLeaksehadAnyBodyRepairs","diagnosticSheetWaterLeaksBodyRepairsDescription","vehiclePosition","occurs","water","diagnosticSheetWaterLeakImg","SectionFour","diagnosticSheetElectronicsConcern","malfunction","diagnosticSheetElectronicsSpecification","GeneralSection","diagnosticSheetModelID","headerData","diagnosticSheetID","models","diagnosticSheetFaultCodes","diagnosticSheetGenerelIssue","modelItemList","diagnosticSheetGeneralFaultId","generalFualts","engineCondition","weatherRelated","drivingCondition","roadCondition","diagnosticSheetSpeedMPH","diagnosticSheetSpeedRPM","diagnosticSheetSpeedAllSpeed","diagnosticSheetSpeedGear","diagnosticSheetSpeedGearType","gear","ids","DiagnosticSheets","modelDropDown","modelFaultIDs","diagnosticSheetHeaderRecordID","diagnosticSheetNoiseVibrationPhoto","diagnosticSheetWaterLeaksPhoto","drivingConditionResultsIDs","headerRes","dropRes","reportedTakenBy","idv","diagnosticSheetImgID","enginefaultResultsIDs","noiseApparentResultsIDs","locationResultsIDs","typeOfNoiseResultsIDs","vehiclePositionResultsIDs","occurResultsIDs","waterResultsIDs","malfunctionResultsIDs","engineConditionResultsIDs","weatherResultsIDs","roadConditionResultsIDs","repeatRepair","baseNominalColumns","C","M","R","P","ServiceNominals","ifn","sumCurrent","sumBroughtForward","currentPostings","broughtForward","tmpl","TechnicianEfficiency","sumEff","sumSold","sumTaken","sumSale","sumCost","sumProfit","sumMarginPerc","sumRecRate","PartSales","ParamDcID","DepartmentList","departmentCodes","findDepartmentcode","pullPartsSalesList","sumgrossProfit","sumsaleValue","sumcostValue","sumretailPrice","sumsurchargeValue","grossProfit","grossProfitPercent","saleValue","costValue","retailPrice","surchargeValue","WipRendererNColumns","co","AccountQueriesbySalesexec","salesExec","prSentTo","salesExecCol","SalesWorkinProgress","regNumberCol","rn","RegistrationReports","created","ReportingWipLogsModal","hid","reportingWIPLogHeaderID","ParamFromPage","AgedMeasuresWorkingProgress","ParamDepartmentDescription","rhid","reportingWIPLogsHandler","VehicleAgedDebtBySalesexec","salesExecCode","AgeDays","sevenDaysCol","fourteenDaysCol","twentyOneDaysCol","overTwentyOneDaysCol","VehicleStocksExWip","Prampd","PramMC","PramMAC","pd","mc","mac","VehicleNewOrder","UsedVehicleStock","PramFN","PramBN","PramMDC","fn","mdc","SalesContingencyDebt","PramDD","dd","OutstandingInvoices","ccGridOnSuccessFunc","mainGridcolumns","ccGridcolumns","cc","ParamsalesExec","ParamSalesExecCode","ParamAgeDays","ViewDebtDetailsSalesexec","WeeklyFlashReport","measuredesc","tableData","pullTableData","colspan","invoiceTruckMTD","budgetInvoiceTruckMTD","invoiceTruckYTD","budgetInvoiceTruckYTD","orderTruckMTD","orderTruckYTD","orderTruckWIP","totalVolumeTruck","budgetVolumeTruck","budgetAchievedTruck","wIPTruck","invoiceVanMTD","budgetInvoiceVanMTD","invoiceVanYTD","budgetInvoiceVanYTD","orderVanMTD","orderVanYTD","orderVanWIP","totalVolumeVan","budgetVolumeVan","budgetAchievedVan","wIPVan","invoiceMaxusMTD","budgetInvoiceMaxusMTD","invoiceMaxusYTD","budgetInvoiceMaxusYTD","orderMaxusMTD","orderMaxusYTD","orderMaxusWIP","totalVolumeMaxus","budgetVolumeMaxus","budgetAchievedMaxus","wIPMaxus","invoiceUsedTruckMTD","budgetUsedTruckMTD","invoiceUsedTruckYTD","budgetUsedTruckYTD","invoiceUsedVanMTD","budgetInvoiceUsedVanMTD","invoiceUsedVanYTD","budgetInvoiceUsedVanYTD","truckUsedStockUnitsCurrentWk","truckUsedStockUnitsPriorMonth","truckUsedStockValueCurrentWk","truckUsedStockValuePriorMonth","truckAvgvehicleCurrentWk","truckAvgvehiclePriorMonth","vanUsedStockUnitsCurrentWk","vanUsedStockUnitsPriorMonth","vanUsedStockValueCurrentWk","vanUsedStockValuePriorMonth","vanAvgvehicleCurrentWk","vanAvgvehiclePriorMonth","aftersalesPartsMTDTrade","aftersalesPartsMTDWorkshop","aftersalesPartsMTDTotal","aftersalesAttendedHours","aftersalesServiceBookedHours","serviceProductivityOpenWIP","serviceProductivityHoursSold","serviceProductivityCurrentWIP","serviceProductivityProdHours","serviceProductivityBudgetAchieved","forecastActualPartsGrossMargin","forecastBudgetPartsGrossMargin","forecastpercBudgetPartsGrossMargin","forecastpercBudgetLabourRevenue","forecastBudgetLabourRevenue","outstandingContCurrentWkImpactingcashflow","outstandingContPriorWeekImpactingcashflow","outstandingContCurrentWkPendingRegistrations","outstandingContPriorWeekPendingRegistrations","vehicleDebtorsCurrentWkTotalValue","vehicleDebtorsPriorWeekTotalValue","vehicleDebtorsCurrentWk30daygreater","vehicleDebtorsPriorWeek30daygreater","vehicleDebtorsCurrentWk60daygreater","vehicleDebtorsPriorWeek60daygreater","vehicleDebtorsCurrentWkRegNotDeferred","vehicleDebtorsPriorWeekRegNotDeferred","agedWIPCurrentWkCurrent","agedWIPCurrentWkCurrentperc","agedWIPPriorWeekCurrent","agedWIPCurrentWk30daysgreater","agedWIPCurrentWk30daysgreaterperc","agedWIPPriorWeek30daysgreater","agedWIPCurrentWk60daysgreater","agedWIPCurrentWk60daysgreaterperc","agedWIPPriorWeek60daysgreater","agedWIPCurrentWkTotal","agedWIPCurrentWkTotalperc","agedWIPPriorWeekTotal","cashSalesCurrentWkCurrent","cashSalesCurrentWkCurrentperc","cashSalesPriorWeekCurrent","cashSalesCurrentWk30daygreater","cashSalesCurrentWk30daygreaterperc","cashSalesPriorWeek30daygreater","cashSalesCurrentWk60daygreater","cashSalesCurrentWk60daygreaterperc","cashSalesPriorWeek60daygreater","cashSalesCurrentWk90daygreater","cashSalesCurrentWk90daygreaterperc","cashSalesPriorWeek90daygreater","cashSalesCurrentWkTotal","cashSalesCurrentWkTotalperc","cashSalesPriorWeekTotal","queriesCurrentWkCurrent","queriesCurrentWkCurrentperc","queriesPriorWeekCurrent","queriesCurrentWk30daygreater","queriesCurrentWk30daygreaterperc","queriesPriorWeek30daygreater","queriesCurrentWk60daygreater","queriesCurrentWk60daygreaterperc","queriesPriorWeek60daygreater","queriesCurrentWk90daygreater","queriesCurrentWk90daygreaterperc","queriesPriorWeek90daygreater","queriesCurrentWkTotal","queriesCurrentWkTotalperc","queriesPriorWeekTotal","mtdSalesGrossMarginNewtruckBudget","mtdSalesGrossMarginNewtruckActual","mtdSalesGrossMarginNewtruckVariance","mtdSalesGrossMarginNewVanBudget","mtdSalesGrossMarginNewVanActual","mtdSalesGrossMarginNewVanVariance","mtdSalesGrossMarginUsedVanBudget","mtdSalesGrossMarginUsedVanActual","mtdSalesGrossMarginUsedVanVariance","mtdSalesGrossMarginUsedTruckBudget","mtdSalesGrossMarginUsedTruckActual","mtdSalesGrossMarginUsedTruckVariance","mtdSalesGrossMarginTotalBudget","mtdSalesGrossMarginTotalActual","mtdSalesGrossMarginTotalVariance","CustDetails","setField","valueAsNumber","getField","service24CustomerName","HomeAccDealer","RentalFleetDetails","VehicleDetails","RecoveryDetails","JobChecks","Boolean","minRows","RepairType","clearSign","mdUp","operatorSignedByName","service24TechnicianSignatureErrorMsg","signFormControl","DriverDetails","service24DriverDateSigned","driverName","service24DriverSignature","BasicFooter","getService24ByID","getService24Dropdowns","postService24","getBtteryTestDetails","postBtteryTestDetails","SecondaryBatteryModal","handel","batteryTestManufacturerID","batteryManufacturers","secondaryErrors","batteryTestBarcode","batteryTestCapacity","batteryTestColdTestCurrent","batteryTestMBPartNumber","batteryTestProductionWeek","maxLength","batteryTestProductionYear","batteryTestLeak","yesNoOptions","batteryTestLeakPosition","batteryTestMidtronicsTestResult","batteryTestResults","batteryTestTestCode","batteryTestDamageCode","PartDialog","part","setPart","addPartsRow","service24PartID","service24PartNumber","service24PartDescription","service24PartQuantity","service24PartPrice","handlepart","totalRepair","service24RepairEndTime","service24RepairStartTime","repairHours","repairMinutes","TravelDiff","service24DrivingStartTime","service24DrivingEndTime","travelHours","travelMinutes","TotalTravelTime","TechTime","techHH","techMM","service24DrivingFinishMileage","service24DrivingStartMileage","indx","BreakdownDefectRepair","ServiceTime","service24","setService24","addTimeRow","service24TimeID","service24Name","service24ServiceVan","service24FinishPostCode","service24StartPostCode","TotalRepairTimeCal","TotalRepairTime","TotalTravelTimeCal","TechTimeCal","TotaltechTime","drivingStartTimeErrorMessage","repairStartTimeErrorMessage","repairEndTimeErrorMessage","drivingEndTimeErrorMessage","drivingStartMileageErrorMessage","repairEndMilageMessage","WorkRequestedModal","work","setWork","addWorkRow","service24WorkID","service24WorkRequested","service24WorkReason","service24WorkAction","service24WorkTimeTaken","handlwork","Service24Modal","service24PartsVM","setservice24PartsVM","service24TimesVM","setService24TimesVM","service24WorkDetailsVM","setService24WorkDetailsVM","service24PaymentTypes","service24PaymentTypeID","setControl","headerdata","setVehDetails","service24ChassisNo","chassisNumber","service24EngineNo","engineNumber","service24RegDate","service24OdometerReading","mileageIn","service24RegNumber","service24VehicleType","service24JobID","service24ID","setCustomerDetails","service24CustomerAddress1","service24CustomerAddress2","service24CustomerCity","city","service24CustomerPostCode","service24CustomerOrderNo","basicHeaderDetails","setBasicHeaderDetails","customerDetails","homeAccDealer","setHomeAccDealer","rentalFleetDetails","setRentalFleetDetails","vehDetails","breakdownDefectRepairDefails","setBreakdownDefectRepairDefails","recoveryDetails","setRecoveryDetails","jobChecks","setJobChecks","service24TechnicianName","service24TemporaryRepair","service24IncompleteRepair","service24TechnicianSignature","repairType","setRepairType","cacAdvisedDate","cacAdvisedTime","otherDetails","setOtherDetails","driversDetails","setDriversDetails","service24Jobs","service24Colour","service24GVW","service24Load","service24Destination","service24TrailerOwner","service24TrailerNo","service24JobCaseNo","service24CustomerContactName","service24CustomerPhone","service24HomeAccountDealerName","service24HomeAccountDealerContactName","service24HomeAccountDealerOrderNo","service24HomeAccountDealerLimit","service24RentalCompany","service24RentalPhone","service24RentalContactName","service24RentalOrderNo","service24BreakdownLocation","service24DefectDescription","service24RepairDetails","service24Recovered","service24RecoveryStartLocation","service24RecoveryEndLocation","service24RecoveryDistance","service24RecoveryTowingCompany","service24RecoveryTowingContactName","service24RecoveryTowingPhone","service24DateRepairCompleted","service24MaintenanceBookletChecked","service24EntitledToMobiloVanServices","service24ReplacementVehicle","service24BreakdownOrStartingAssistance","service24VehicleReturnWithin30Miles","service24AirTravel","service24RailTravel","service24Taxi","service24PublicTransport","service24Hotel","service24Notes","techSignature","service24OperatorSignature","opSignature","service24OperatorSignedByName","service24VehicleMobile","service24CACAdvised","service24DriverName","service24DriverPhone","driverSignature","service24Parts","service24WorkDetails","service24Times","submithandler","service24JobHeaderRecordID","service24OdometerUnit","service24Status","service24TimeVM","ReportingBudgetTable","calculatedRows","changeRecordIds","isChangeTrig","handleActionTriggerCheck","rowCount","colCalculation","reportingBudgetJanTotal","reportingBudgetFebTotal","reportingBudgetMarTotal","reportingBudgetAprTotal","reportingBudgetMayTotal","reportingBudgetJunTotal","reportingBudgetJulTotal","reportingBudgetAugTotal","reportingBudgetSepTotal","reportingBudgetOctTotal","reportingBudgetNovTotal","reportingBudgetDecTotal","reportingBudgetTotalTotal","isPercentage","reportingBudgetJan","reportingBudgetFeb","reportingBudgetMar","reportingBudgetApr","reportingBudgetMay","reportingBudgetJun","reportingBudgetJul","reportingBudgetAug","reportingBudgetSep","reportingBudgetOct","reportingBudgetNov","reportingBudgetDec","filteredPostData","reportingBudgetID","reportingBudgetTypeID","reportingBudgetBranchID","reportingBudgetYear","childFunc","ReportingBudget","budgetType","isValueChange","portalNicolJson","UsedStocksCard","CurrentStockValue","AverageStockValue","PreviousYearAverage","stockLink","priorityLink","UsedStocksCardTWO","valuationDate1","stockValue1","getCalculatedvalue","AgedStockCard","totalCapClean","totalVariance","verticalAlign","avgDis","stockTurn","AgedStocksDayRangeCard","totalCount0to30","totalPerc0to30","stockValue0to30","totalCount31to60","totalPerc31to60","stockValue31to60","totalCount61to90","totalPerc61to90","stockValue61to90","totalCount91to120","totalPerc91to120","stockValue91to120","totalCount121to150","totalPerc121to150","stockValue121to150","totalCount150Plus","totalPerc150Plus","stockValue150Plus","CircularIndeterminate","filterBtnList","UsedStockValuation","gpStock","mainData","selectedFilterBtn","combineData","weeklyDataByIdList","weeklyData","weeklyDataList","gpValueData","gpValue","totalUnitStock","totalStockValue","avgSIV","previousYearAvg","stockValue","avgStockValue","prevYearAvgValue","descendingComparator","orderBy","getComparator","stableSort","comparator","stabilizedThis","headCells","EnhancedTableHead","onRequestSort","headCell","numeric","disablePadding","sortDirection","TableSortLabel","visuallyHidden","clip","UsedStocksTable","setOrder","setOrderBy","setPage","rowsPerPage","setRowsPerPage","labelId","stockNO","dor","dayInStock","standInValue","capClean","TablePagination","rowsPerPageOptions","onPageChange","newPage","onRowsPerPageChange","ParamIsTrue","reportScreenMultiSelect","UsedStock","VehicleProfile","VehicleProfileIds","stockData","setStockData","VehicleProfileVal","newRes","vehicleList","vehicleID","AgedStocks","avgVehicle","vehilceSplitByDays","groupStock","totalCAPValue","barColor","colorCode","orientation","buttonsList","OveragePriority","cardDetails","totalUnits","franchiseUnitStock","nonFranchiseUnitStock","franchiseStandInValues","nonFranchiseStandInValues","totalCAPClean","franchiseCapClean","nonFranchiseCapClean","franchiseVariance","nonFranchiseVariance","createData","calories","fat","carbs","protein","techDetailsGrid","techDetailsColumns","IdelCol","onSuccessTechDetailsFun","ic","IdleCode","AfterSaleReportingDashboard","TotalSold","TotalTaken","TotalSale","TotalCost","YTDTotalSold","YTDTotalTaken","YTDTotalSale","YTDTotalCost","soldHoursArr","partsArr","mtdGrossProfit","ytdGrossProfit","mtdSaleValueCountP","ytdSaleValueCountP","mtdSaleValueCountWC","ytdSaleValueCountWC","partsData","setPartsData","surchargesArr","surchargesData","setSurchargesData","ytdMtdData","setYtdMtdData","hoursSoldBudgetList","surcharges","monthlyWIPs","dailyWIPs","Map","pt","mtdCost","ytdCost","mtdHoursBudget","ytdHoursBudget","invPound","mtdRecoveryRateBudget","mtdEfficiencyBudget","pratRowCount","totalCountObj","unshift","partsTableCalculatedList","sr","YTDtaken","YTDcost","RepotingTab","setValue","TabContext","TabList","months","colorConfig","ShiftCalenderComp","shiftList","yearList","shiftID","yearID","screenMsg","calender","setCalender","localDaysCounter","finalCalendar","monthIndex","tempMonthData","weekStartDate","clone","monthStartDate","subtract","endOf","day","isBefore","isAfter","isSameOrBefore","nr","String","monthName","monthData","borderCollapse","DailyHoursData","dayHoursList","reasonForXvail","dayString","dayData","extraAvailability","uniqueCodes","filterdReasonForXvail","startTime","getResoneData","colour","ResourceCalenderComp","nameDescription","dayNumber","showDayDataModal","TechnicianGijgoGrid","getfilterReturnReasone","GridInfo","Popover","filterReturnReasone","TechnicianApp","technicianWorkflowId","btnid","currentTechnicianId","technicianJobBucket","checkCurrentId","getURL","wf","ownJob","isTechnicianIndex","returnReasonelist","uniqueReturnReasonelist","TechWriteScreenContext","TechWriteProvider","fontResize","WorkAccomplishlist","canAmendTechWriteUpFlag","technicianNotestechnicianNotesItemCause","portalSettingDisplaySubmitbutton","AutoWorkAccomplish","AutoFrChange","getStandartdFromChild","showConfirmationModal","zoomOutFun","zoomInFun","printDocument","TechWriteUp","hideBrace","hideBrace2","ShowSubmit","ZoomOutIcon","ZoomInIcon","TabBody","PartRequisitionsModal","quantity","partReq","imgPreview","checkIssued","Result","addPart","inputFile","readAsText","partDesc","onerror","setImgPreview","technicianSignature","header","loginUserId","techArr","loginUserName","CurrentUser","arrayOfObjAfter","uniqBy","logedInuserID","checkDefectCreatedUserSignature","reportedCategoryID","actionedCategoryID","checkContainer","getBrakeReport","postBrakeReport","BrakeDiscPadScreenContext","BrakeDiscPadProvider","DatendSignValidation","brakeReportDate","DatendSign","brakeReportItemNearSideBrakePadWear","brakeReportItemAxlePosition","brakeReportItemNearSideBrakeDiscThickness","brakeReportItemNearSideBrakeDiscThicknessLimit","brakeReportItemNearSidePhoto","brakeReportItemNearSideReasonForRenewal","brakeReportItemOffSideBrakePadWear","brakeReportItemOffSideBrakeDiscThickness","brakeReportItemOffSideBrakeDiscThicknessLimit","brakeReportItemOffSideReasonForRenewal","brakeReportItemOffSidePhoto","brakeReportItemID","showAdd","brakeReportID","hideSign","brakeReportHeaderID","showLogo","logoValue","logoName","axelPosition","brakeReportDateCreated","techncianName","brakeReportItems","brakeReports","brakeReportSignature","hideImage","RemoveImage","UploadNewImage","signChange","ViewAxel","box_container","Leadersign","StyleInput","BrakeDiscPadWear","brakedisc_form","RemoveCircle","AddBox","BatteryTest","signAvailable","isDefaultSig","primaryErrors","secBettry","odometerUnits","batteryTest","bettryTestList","batteryTestId","batteryTestPrintoutImage","batteryTestIsSecondBattery","batterySignature","batteryTestSignature","batteryTestDate","batteryTestOdometerReading","batteryTestOdometerUnit","headerRecordsInfo","objKey","batteryTestsListVM","getTyreCheckByID","postTyreCheck","TyreChecksContaxt","TyreCheckProvider","tyreConditionDefectDescription","editTyreAxlesVM","tyreAxlesVM","remainingAxle","tyreConditionHeaderRecordID","tyreConditionID","defectsData","tyreConditionDefects","tyreConditionFrontTyreSize","tyreConditionRearTyreSize","tyreConditionDateOfTachoGraph","tyreConditionWindscreenCondition","tyreConditionWindscreenConditionDescription","tyreConditionTechnicianSignature","tyreAxles","Validations","fromValid","finalAxle","ax","axleNumber","nsBrakeLineRemaining","osBrakeLineRemaining","nsTreadDepth","osTreadDepth","nsFrontTreadDepth","osFrontTreadDepth","nsTyrePressure","osTyrePressure","nsFrontTyrePressure","osFrontTyrePressure","nsBrakeTemperatureAxle","osBrakeTemperatureAxle","tyreConditionDefectsVM","entries","YesNoRadio","handleInputs","axelNo","axOS","axOS2","ax2OS","ax2OS2","ax2NS","ax2Break","axBreakHeading","SingleAxle","axNO","axle1","CustomAxle","axleTitle","TyreChecks","DashboardTemplets","currency","SalesBarChart","totalVal","SalePieChart","SalesLineChart","SalesTable","t1","getUsedVehicle","getNewVehicle","getVehicleContingency","getOrderVehicle","SalesDashboard","usedVehicleFrenchise","usedVehicleBranch","usedVehicleModelCode","newVehicleStatus","newVehicleModel","newVehicleModelCode","contBranch","contDepartment","contFranchise","orderYear","orderMonth","orderCount","vehicleType_Sold","salePerson_Sold","UsedLoader","NewOrderLoader","NewLoader","ContiLoader","pullOrderData","orderMonthName","table3","modelDescription","vehicleCount","table2","modelAnalysisCode","table4","salesperson","totalSold","progress","pullUsedVehicleData","usedVehicleRes","numberOfVehicles","totalValue","modelCode","totalvalue","totalUsedVehicleCount","totalVehicleCount","pullNewVehicleData","newVehicleRes","statusDescription","totalNewVehicleCount","pullcontingencyData","contTotalCount","GoToUsedVehicleOrder","GoToNewVehicleStockExcludingWIP","CustomTab","TabScreen1","TabScreen2","TabScreen3","AppBar","getHandOverDetails","saveHandOverSheets","HandOverSheetScreen","handoverSheetAddVM","handoverSheetRepairRequired","repairRequired","handoverSheetAuthorised","authorised","handoverSheetActionComment","actionComment","handoverSheetActioned","actioned","handoverSheetID","errorHandoverSheetRepairRequired","handoverSheetSignature","dateCreated","authorisedBy","dateAuthorised","actionedBy","dateActioned","getLiftCheckList","addUpdateLiftCheckList","LiftCheckList","checkedLiftingArms","checkedPads","checkedPillarLiftLocks","checkedWeight","chocksUsed","comments","frameStructurallySound","locatedStopControl","liftCheckId","liftCheckCheckedLiftingArms","liftCheckCheckedPads","liftCheckCheckedPillarLiftLocks","liftCheckCheckedWeight","liftCheckChocksUsed","liftCheckComments","liftCheckFrameStructurallySound","liftCheckLocatedStopControl","liftCheckName","LiftCheckId","LiftCheckHeaderRecordId","LiftCheckCheckedLiftingArms","LiftCheckCheckedPads","LiftCheckCheckedPillarLiftLocks","LiftCheckCheckedWeight","LiftCheckChocksUsed","LiftCheckFrameStructurallySound","LiftCheckLocatedStopControl","LiftCheckComments","LiftCheckName","JobDetails","dateDueInFulterValue","redirectToDetails","paramValues","CustSiteVehicles","CustBookings","isGrid","Bookings","ApproveJobModal","customerOrderReference","customerSignature","CustAwaitingAuthority","awaitingAuthModal","HandelSendMessage","CustCommunicatorDash","communicatorLog","CommunicatorMemberSecOne","awaitingPartsCount","awaitingTechnicalAssistanceCount","waitingSubWorkCount","queryCount","partsBackOrderCount","noxCount","CommunicatorMemberSecTwo","checkedInCount","wslNotSet","workshopCount","siteVehiclesCount","CommunicatorMemberSecThree","jobsApprovedCount","changeUserPassword","currentpass","currentPassword","SetUserPassword","passwordResetToken","TypeOfAuth","exact","Components","authType","handleChangePassword","substring","dontFlatListChildren","isDynamicChildren","FC","TreesGrid","Card","TreeImg","screen","elements","ResetPasswordBYInternal","getMenuItems","getMenuForRole","isLoggedIn","menus","isInvoiceAllowed","isReportingAllowed","isWIPAllowed","isSpecialEquipmentAllowed","isReportingBudgetDashboardAllowed","isReportingAgedMeasureAllowed","isReportingDOCAllowed","isReportingPartsAllowed","isReportingSalesAllowed","isReportingServiceAllowed","isReportingBudget","isDynamicFormAllowed","portalSettingDynamicFormEnabled","getDefaultInternalDashboard","reportingMenuScreenConfig","isAllowed","dashboards","allowed","adminMenu","Communicator","eWIPIndex","AdmineWIPMenus","AdminInvoice","customerMenu","eWIP","InternalInvoice","flatMap","elem","DahboardMenuIndex","internalUserMenu","ReportsIndex","reportingMenuScreenIndex","dashboardMenuIndex","topAllowedDashboard","menuIndex","auditorMenu","technicianMenu","webFormRoutes","unAuthMenu","appbarData","UserSignatureReminder","closeSign","postData","aria-describedby","UserSignature","navBarLocationValue","getLocalAppbar","clearOnResize","fullList","linknav","nested","TemporaryDrawer","useTheme","handler","isFiltered","currentNav","subOption","ListItem","ListItemText","itemText","ListItemIcon","unmountOnExit","activeClassName","currentMenus","TickerDisplayMessage","screenWidth","setMessage","newstring","Scrollamount","labelBtn","logoutBtn","VerticalAlign","BoxSizing","app_toolbar","shape","fade","breakpoints","up","searchIcon","pointerEvents","inputRoot","inputInput","transition","transitions","drawerPaper","HideOnScroll","trigger","useScrollTrigger","Slide","appear","AppbarComponent","open2","WorkflowJobs","hideShowTopNav","tempMenus","reportingMenus","tempPortalSettings","anchorEl2","setAnchorEl2","anchorEl3","setAnchorEl3","openSign","setOpenSign","openSignRem","setOpenSignRem","searchAnchorEl","setSearchAnchorEl","isAdmin","getWipDataById","jobsDetails","handleCollaps","coll","dashMenus","isDash","iseWIPMenu","InternalMenusToConvertDynamic","findAgedMeasureMenuIndex","tempAgedMeasureChildren","agedMeasureMenus","PartsMenus","menusFromAPI","menuLabel","parentMenu","isReportingMenu","agedMeasuresIndex","partsIndex","postSignData","AppbarLocation","resSign","toggleDrawer","anchor","Toolbar","menuButton","ClickAwayListener","onClickAway","MenuList","autoFocusItem","InputBase","Popper","placement","TransitionProps","Fade","workFlowID","KeyboardArrowUpIcon","KeyboardArrowDownIcon","Drawer","PaperProps","BackdropProps","Navbar","Appbar","getSavePaperData","TreeImgLogo","ResData","documentsProcessed","saveTrees","treeVal","newVal","showZero","drawerWidth","appBar","drawer","easing","sharp","duration","leavingScreen","appBarShift","enteringScreen","drawerOpen","drawerClose","toolbar","mixins","menuIcon","activeLink","ChevronRightIconBtn","MiniDrawer","isError404","handleDrawerOpen","handleDrawerClose","openInfo","isIcon","Header","menuType","setMenuType","portalSettingLogo","portalSettingMenuType","PhoneIphone","callUs","AccessTime","Email","isDynamicDisplay","TransitionUp","Toast","snackbar_open","snackbar_message","hideToast","Snackbar","autoHideDuration","TransitionComponent","PasswordChangeModal","DeleteModal","ServiceAdvCust","reporteddefect","problem","warning","repairs","modifications","fault","operating_conditions","person","defaultValue","ForgotPassword","ForgotPasswordModal","ProfileModal","ModalToShow","visibleModalId","PasswordChange","getModalToShow","Loader","App","contextState","setContextState","i18n","useTranslation","langLabel","Customi18","menuName","setTempMenus","setReportingMenus","setisAppReaload","ReportsMenus","changeLanguage","fallback","modalId","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","localesFiles","resources","lng","fetch","resp","json","resJson","fileNameJsonList","nmRes","Backend","LanguageDetector","initReactI18next","init","interpolation","escapeValue","ProdApp","PackageJson","version"],"mappings":"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","file":"static/js/main.8a285085.chunk.js","sourcesContent":["import {\r\n createContext\r\n} from 'react';\r\n\r\nconst AppContext = createContext();\r\nexport default AppContext;","import { useContext } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\n\r\nlet Home = (props) => {\r\n const { portalSettings } = useContext(AppContext);\r\n const bn = !!portalSettings.portalSettingBanner\r\n ? portalSettings.portalSettingBanner\r\n : `${process.env.PUBLIC_URL}/${portalSettings.portalSettingBannerImage}`;\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n
\r\n );\r\n\r\n //
\r\n //

{portalSettings.portalSettingTitle}

\r\n // \r\n //
\r\n};\r\nexport default Home;\r\n","const storage = localStorage;\r\n\r\nconst getName = () => storage.getItem('_displayName_');\r\nconst getToken = () => storage.getItem('_token_');\r\nconst getLastLogin = () => storage.getItem('_lastLogin_');\r\nconst getCanResetPassword = () => (storage.getItem('_canResetPassword_') || '').toUpperCase() === 'TRUE';\r\nconst getCanOverrideMandatorySteps = () => (storage.getItem('_canOverrideMandatorySteps_') || '').toUpperCase() === 'TRUE';\r\nconst getCanAssignJobsToAuditor = () => (storage.getItem('_canAssignJobsToAuditor_') || '').toUpperCase() === 'TRUE';\r\nconst getUserRoles = () => (storage.getItem('_userRoles_') || '').split(',');\r\nconst getCanReturnJobsFromLastWorkflow = () => (storage.getItem('_canReturnJobsFromLastWorkflow_') || '').toUpperCase() === 'TRUE';\r\nconst getCanDeleteDocuments = () => (storage.getItem('_canDeleteDocuments_') || '').toUpperCase() === 'TRUE';\r\n\r\nconst getSignature = () => {\r\n let sign = storage.getItem('_user_sign_');\r\n return sign == 'absent' ? null : sign;\r\n};\r\nconst setSignature = (sign) => {\r\n sign && storage.setItem('_user_sign_', sign);\r\n};\r\nconst getUserGridColumnAppbarLocation = () => {\r\n let appbar = storage.getItem('_AppbarLocation_') || null;\r\n return appbar;\r\n};\r\nconst setUserGridColumnAppbarLocation = (appbar) => {\r\n appbar && storage.setItem('_AppbarLocation_', appbar);\r\n};\r\nconst getSignatureStatus = () => {\r\n return storage.getItem('_signature_status_');\r\n};\r\nconst getWIPAllowed = () => {\r\n return (storage.getItem('_eWIP_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getSpecialEquipmentAllowed = () => {\r\n return (storage.getItem('_specialEquipmentAllowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getCanAmendToDoList = () => {\r\n return (storage.getItem('_canAmendToDoList_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getCanAmendTechWriteUp = () => {\r\n return (storage.getItem('_canAmendTechWriteUp_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getCanAmendJobNotes = () => {\r\n return (storage.getItem('_canAmendJobNotes_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getCommunicatorAllowed = () => {\r\n return (storage.getItem('_eCommunicator_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getInvoiceAllowed = () => {\r\n return (storage.getItem('_eInvoice_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getReportingAllowed = () => {\r\n return (storage.getItem('_eReporting_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\n\r\nconst menuPermissionCounter = () => {\r\n return getWIPAllowed() + getCommunicatorAllowed() + getInvoiceAllowed() + getReportingAllowed();\r\n};\r\n\r\nconst getReportingAgedMeasureAllowed = () => {\r\n return (storage.getItem('_isAgedMeasure_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getReportingBudgetDashboardAllowed = () => {\r\n return (storage.getItem('_isBudgetDashboard_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\n\r\nconst getReportingBudgetAccess = () => {\r\n return (storage.getItem('_canAccessBudget_') || '').toUpperCase() === 'TRUE';\r\n};\r\n\r\nconst getReportingDOCAllowed = () => {\r\n return (storage.getItem('_isDOC_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getReportingKPIsAllowed = () => {\r\n return (storage.getItem('_isKPIs_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getReportingPartsAllowed = () => {\r\n return (storage.getItem('_isParts_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getReportingSalesAllowed = () => {\r\n return (storage.getItem('_isSales_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getReportingServiceAllowed = () => {\r\n return (storage.getItem('_isService_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\nconst getReportingWorkShopAllowed = () => {\r\n return (storage.getItem('_isWorkShop_Allowed_') || '').toUpperCase() === 'TRUE';\r\n};\r\n\r\nconst getCanAssignTechnicianAllowed = () => {\r\n return (storage.getItem('_canAssignTechnician_') || '').toUpperCase() === 'TRUE';\r\n};\r\n\r\nconst getCanSetCustomerRating = () => {\r\n return (storage.getItem('_canSetCustomerRating_') || '').toUpperCase() === 'TRUE';\r\n};\r\n\r\nconst setSignatureStatus = (ID) => {\r\n ID && storage.setItem('_signature_status_', ID);\r\n};\r\n\r\nconst getSignNotifiedStatus = () => {\r\n return storage.getItem('_signature_notified_') || 0;\r\n};\r\nconst getDefaultInternalDashboard = () => {\r\n return storage.getItem('_defaultInternalDashboard_') || null;\r\n};\r\n\r\nconst setSignNotifiedStatus = (ID) => {\r\n ID && storage.setItem('_signature_notified_', ID);\r\n};\r\nconst getPortalSetting = () => {\r\n const setting = storage.getItem('_portal_setting_');\r\n if (setting) {\r\n return JSON.parse(setting);\r\n }\r\n return setting;\r\n};\r\nconst setPortalSetting = (setting) => {\r\n storage.setItem('_portal_setting_', JSON.stringify(setting));\r\n};\r\n\r\nconst getLoggedInUIVersion = () => {\r\n return storage.getItem('_loggedIn_UI_version_');\r\n};\r\n\r\nexport const AppStorage = {\r\n getItem: storage.getItem,\r\n setItem: storage.setItem,\r\n removeItem: storage.removeItem,\r\n getName,\r\n getToken,\r\n getLastLogin,\r\n getCanOverrideMandatorySteps,\r\n getCanResetPassword,\r\n getCanReturnJobsFromLastWorkflow,\r\n getCanDeleteDocuments,\r\n getCanAssignJobsToAuditor,\r\n getUserRoles,\r\n getPortalSetting,\r\n setPortalSetting,\r\n getSignature,\r\n setSignature,\r\n getSignatureStatus,\r\n setSignatureStatus,\r\n setSignNotifiedStatus,\r\n getSignNotifiedStatus,\r\n getCommunicatorAllowed,\r\n getInvoiceAllowed,\r\n getReportingAllowed,\r\n getWIPAllowed,\r\n getSpecialEquipmentAllowed,\r\n menuPermissionCounter,\r\n getReportingAgedMeasureAllowed,\r\n getReportingBudgetDashboardAllowed,\r\n getReportingBudgetAccess,\r\n getReportingDOCAllowed,\r\n getReportingKPIsAllowed,\r\n getReportingPartsAllowed,\r\n getReportingSalesAllowed,\r\n getReportingServiceAllowed,\r\n getReportingWorkShopAllowed,\r\n getCanAssignTechnicianAllowed,\r\n getCanSetCustomerRating,\r\n getCanAmendJobNotes,\r\n getCanAmendTechWriteUp,\r\n getCanAmendToDoList,\r\n getLoggedInUIVersion,\r\n isLoggedIn: () => !!getName() && !!getToken(),\r\n getDefaultInternalDashboard,\r\n performLogin: ({ data }) => {\r\n storage.setItem('_token_', data.token);\r\n storage.setItem('_displayName_', data.displayName);\r\n storage.setItem('_lastLogin_', data.lastLogin);\r\n storage.setItem('_canOverrideMandatorySteps_', data.canOverrideMandatorySteps);\r\n storage.setItem('_canResetPassword_', data.canResetPassword);\r\n storage.setItem('_canAssignJobsToAuditor_', data.canAssignJobsToAuditor);\r\n storage.setItem('_userRoles_', data.roles);\r\n storage.setItem('_canReturnJobsFromLastWorkflow_', data.canReturnJobsFromLastWorkflow);\r\n storage.setItem('_canDeleteDocuments_', data.canDeleteDocuments);\r\n storage.setItem('_signature_status_', data.signatureStatus);\r\n storage.setItem('_user_sign_', data.defaultSignature || 'absent');\r\n storage.setItem('_eWIP_Allowed_', data.eWIPAllowed);\r\n storage.setItem('_specialEquipmentAllowed_', data.specialEquipmentAllowed);\r\n storage.setItem('_eCommunicator_Allowed_', data.eCommunicatorAllowed);\r\n storage.setItem('_eInvoice_Allowed_', data.eInvoiceAllowed);\r\n storage.setItem('_eReporting_Allowed_', data.eReportingAllowed);\r\n storage.setItem('_isAgedMeasure_Allowed_', data.isAgedMeasure);\r\n storage.setItem('_isBudgetDashboard_Allowed_', data.isBudgetDashboard);\r\n storage.setItem('_isDOC_Allowed_', data.isDOC);\r\n storage.setItem('_isKPIs_Allowed_', data.isKPIs);\r\n storage.setItem('_isParts_Allowed_', data.isParts);\r\n storage.setItem('_isSales_Allowed_', data.isSales);\r\n storage.setItem('_isService_Allowed_', data.isService);\r\n storage.setItem('_isWorkShop_Allowed_', data.isWorkShop);\r\n storage.setItem('_canAssignTechnician_', data.canAssignTechnician);\r\n storage.setItem('_canSetCustomerRating_', data.canSetCustomerRating);\r\n storage.setItem('_canAmendToDoList_', data.canAmendToDoList);\r\n storage.setItem('_canAmendTechWriteUp_', data.canAmendTechWriteUp);\r\n storage.setItem('_canAmendJobNotes_', data.canAmendJobNotes);\r\n storage.setItem('_canAccessBudget_', data.canAccessBudget);\r\n storage.setItem('_defaultInternalDashboard_', data.defaultInternalDashboard);\r\n storage.setItem('_AppbarLocation_', data.appbarLocation);\r\n storage.setItem('_loggedIn_UI_version_', window?._ENV_?.app_version || 'fixed_version_from_storage_service');\r\n },\r\n performLogout: () => {\r\n const portalSetting = getPortalSetting();\r\n storage.clear();\r\n\r\n if (portalSetting) {\r\n setPortalSetting({ ...portalSetting, expired: true });\r\n }\r\n },\r\n getUserGridColumnAppbarLocation,\r\n setUserGridColumnAppbarLocation\r\n};\r\n","import { AppStorage } from '../../../Core/Service/storage-service';\r\nimport { useEffect } from 'react';\r\n\r\nconst Logout = (props) => {\r\n useEffect(() => {\r\n window.top.postMessage({ type: 'trigger-logout' }, '*');\r\n }, []);\r\n return
;\r\n};\r\n\r\nexport default Logout;\r\n","import axios from 'axios';\r\nimport { AppStorage } from './storage-service';\r\n\r\nlet config = window._ENV_;\r\nlet _server = '';\r\nif (process.env.NODE_ENV === 'production') {\r\n // _server = 'https://ewipapi.synergiesoftware.com';\r\n //_server = 'https://ewiptestapi.sparshattgroup.com';\r\n //_server = 'https://ewipapi.northside.co.uk';\r\n _server = config.backendUrl.prod;\r\n} else {\r\n _server = 'https://localhost:44367';\r\n // _server = 'https://ewipapi.synergiesoftware.com';\r\n _server = config.backendUrl.dev;\r\n}\r\nconst defaultOptions = {\r\n baseURL: `${_server}`,\r\n headers: {\r\n 'Content-Type': 'application/json'\r\n },\r\n validateStatus: null\r\n};\r\n\r\nlet instance = axios.create(defaultOptions);\r\n\r\ninstance.interceptors.request.use(function (config) {\r\n if (config.useAuthToken) {\r\n const token = AppStorage.getToken();\r\n config.headers.Authorization = token ? `Bearer ${token}` : '';\r\n }\r\n config.headers.domainName = window.location.host.includes('localhost') ? 'Default' : window.location.host;\r\n return config;\r\n});\r\n\r\nconst generateRoutingURL = (url) => {\r\n if (/^\\w/.test(url)) {\r\n return `api/${url}`;\r\n }\r\n return url;\r\n};\r\n\r\nfunction HttpVerbEmitter() {\r\n this.callBacks = [];\r\n this.addEventListener = (cb) => {\r\n this.callBacks.push(cb);\r\n };\r\n this.raise = (e) => this.callBacks.forEach((cb) => cb(e));\r\n}\r\n\r\nconst httpVerbEmitter = new HttpVerbEmitter();\r\n\r\nconst logoutHandle = () => {\r\n setTimeout(() => {\r\n window.top.postMessage({ type: 'trigger-logout' }, '*');\r\n }, 1000);\r\n};\r\n\r\nexport { httpVerbEmitter };\r\n\r\nexport let put = async (url, data, options = {}) => {\r\n let res = await instance.put(generateRoutingURL(url), data, options);\r\n if (res.status === 401) {\r\n logoutHandle();\r\n }\r\n if (!res.data.success) {\r\n console.warn(`Request fail. Status Code:(${res.status}), Status Text:(${res.statusText})`);\r\n }\r\n return res.data;\r\n};\r\n\r\nexport let post = async (url, data, options = {}) => {\r\n let res = await instance.post(generateRoutingURL(url), data, options);\r\n if (res.status === 401) {\r\n logoutHandle();\r\n }\r\n if (!res.data.success) {\r\n console.warn(`Request fail. Status Code:(${res.status}), Status Text:(${res.statusText})`);\r\n }\r\n return res.data;\r\n};\r\n\r\nexport let get = async (url, options = {}) => {\r\n //httpVerbEmitter.raise({t:'T'});\r\n let res = await instance.get(generateRoutingURL(url), options);\r\n if (res.status === 401) {\r\n logoutHandle();\r\n }\r\n if (!res.data.success) {\r\n console.warn(`Request fail. Status Code:(${res.status}), Status Text:(${res.statusText})`);\r\n }\r\n return options.returnOrgRes ? res : res.data;\r\n};\r\nexport let ExpBaseURL = `${_server}`;\r\n","import { DeveloperBoard } from '@material-ui/icons';\r\nimport { post, put } from './http-calls';\r\nimport { AppStorage } from './storage-service';\r\n\r\nexport const login = async (userName, password) => {\r\n let res = await post('/login', {\r\n loginName: userName,\r\n password: password\r\n });\r\n if (res.success) {\r\n AppStorage.performLogin(res.data);\r\n }\r\n return res;\r\n};\r\n\r\nexport const postSignature = async (data) => {\r\n let res = await post(`/SaveSignature`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postSignatureStatus = async (ID) => {\r\n let res = await put(`/SetSignatureStatus/${ID}`, { id: ID }, { useAuthToken: true });\r\n return res;\r\n};\r\n","import TextField from '@material-ui/core/TextField';\r\nimport React, { useState, useEffect } from 'react';\r\n\r\nexport default (props) => {\r\n return ;\r\n};\r\nexport const DatePicker = (props) => {\r\n const { value, onChange, isDisabled, inputLabel, isRequired, ...rest } = props;\r\n\r\n let [state, setState] = useState({ date: null });\r\n\r\n useEffect(() => {\r\n setState((st) => ({ ...st, date: props.value == 'Invalid date' ? '--' : props.value }));\r\n }, [props.value]);\r\n const handeDateChange = (e) => {\r\n const { value } = e.target;\r\n if (value < '2099-12-31') {\r\n setState((st) => ({ ...st, date: value }));\r\n props.onChange(e);\r\n }\r\n };\r\n return (\r\n \r\n );\r\n};\r\nexport const TextBoxShrink = (props) => {\r\n return ;\r\n};\r\nexport const DateTimePicker = (props) => {\r\n const { value, onChange, ...rest } = props;\r\n\r\n let [state, setState] = useState({ date: null });\r\n\r\n useEffect(() => {\r\n setState((st) => ({ ...st, date: props.value }));\r\n }, [props.value]);\r\n\r\n const handeDateChange = (e) => {\r\n const { value } = e.target;\r\n if (value < '2099-12-31T00:00') {\r\n setState((st) => ({ ...st, date: value }));\r\n props.onChange(e);\r\n }\r\n };\r\n return (\r\n \r\n );\r\n};\r\n","import { useState } from 'react';\r\nimport { IconButton, InputAdornment, TextField } from '@material-ui/core';\r\nimport { Visibility, VisibilityOff } from '@material-ui/icons';\r\n\r\nexport default (props) => {\r\n let [showPass, setShowPass] = useState(false);\r\n\r\n const togglePasswordVisibility = () => {\r\n setShowPass((st) => !st);\r\n };\r\n\r\n return (\r\n \r\n \r\n {showPass ? : }\r\n \r\n \r\n )\r\n }}\r\n />\r\n );\r\n};\r\n","import Tooltip from '@material-ui/core/Tooltip';\r\nimport CameraAltIcon from '@material-ui/icons/CameraAlt';\r\nimport { Button, CircularProgress, Grid, Badge, IconButton } from '@material-ui/core';\r\n\r\nimport './Controls.scss';\r\n\r\nexport const DefaultButton = (props) => {\r\n const { isBtnLoader, ...rest } = props;\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport const PrimaryButton = (props) => {\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n\r\nexport const SecondaryButton = (props) => {\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n\r\nexport const GreenButton = (props) => {\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport const UploadWithBadge = (props) => {\r\n const { toolTipTitle, count, ...rest } = props;\r\n return (\r\n \r\n
\r\n \r\n {/* */}\r\n \r\n {/* */}\r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nexport const YesButton = (props) => {\r\n const { toolTipTitle, ...rest } = props;\r\n return (\r\n \r\n
\r\n \r\n {rest.btnName || 'Yes'}\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const NoButton = (props) => {\r\n const { toolTipTitle, ...rest } = props;\r\n return (\r\n \r\n
\r\n \r\n {rest.btnName || 'No'}\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const SquareButton = (props) => {\r\n const { toolTipTitle, ...rest } = props;\r\n return (\r\n \r\n \r\n \r\n {props.children}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const CustomIconButton = (props) => {\r\n const { toolTipTitle, disabled, ...rest } = props;\r\n return (\r\n \r\n \r\n \r\n {props.children}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const YesNoButton = (props) => {\r\n const { toolTipTitle, onYesClick, onNoClick, ...rest } = props;\r\n return (\r\n \r\n \r\n \r\n
\r\n \r\n {rest.btnName || 'Yes'}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n {rest.btnName || 'No'}\r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import Checkbox from \"@material-ui/core/Checkbox\";\r\n\r\nexport const PrimaryCheckbox = (props) => {\r\n return (\r\n \r\n );\r\n};\r\n\r\nexport const SecondaryCheckbox = (props) => {\r\n return (\r\n \r\n );\r\n};\r\n","import Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\n\r\nexport const Dialogs = props => {\r\n return {props.children}\r\n}\r\n\r\nexport const DialogTitles = props => {\r\n return {props.children}\r\n}\r\n\r\nexport const DialogContents = props => {\r\n return {props.children}\r\n}\r\n\r\nexport const DialogsActions = props => {\r\n return {props.children}\r\n}\r\n","import { useContext, useEffect, useState } from 'react';\r\nimport { NativeSelect } from '@material-ui/core';\r\nimport { ToggleButton, ToggleButtonGroup } from '@material-ui/lab';\r\nimport AppContext from '../../App/AppContext';\r\nimport { makeStyles, useTheme } from '@material-ui/core/styles';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n appSelectBtnGrp: {\r\n marginRight: 4,\r\n '& button': {\r\n textTransform: 'unset',\r\n wordWrap: 'break-word',\r\n '&.Mui-selected': {\r\n color: (props) => `${props.foregroundColour || 'white'}`,\r\n backgroundColor: (props) => `${props.backgroundColour || 'rgb(83, 175, 80)'}`\r\n },\r\n '&.Mui-selected:hover': {\r\n color: (props) => `${props.foregroundColour || 'white'}`,\r\n backgroundColor: (props) => `${props.backgroundColour || 'rgb(83, 175, 80)'}`\r\n },\r\n '&.MuiToggleButton-sizeSmall': {\r\n padding: '4px'\r\n },\r\n '&.MuiToggleButton-root:hover': {\r\n backgroundColor: 'lightgray'\r\n }\r\n }\r\n }\r\n}));\r\n\r\nconst AppSelect = (props) => {\r\n const { portalSettings } = useContext(AppContext);\r\n\r\n const classes = useStyles(props.options.find((m) => m[props.valuePropertyName] === +props.value));\r\n\r\n const ConvertOps = (ops) => {\r\n return ops.map((op) => {\r\n return {\r\n value: `${op[props.valuePropertyName || 'value']}`,\r\n text: `${op[props.textPropertyName || 'text']}`\r\n };\r\n });\r\n };\r\n\r\n const [state, setState] = useState({\r\n value: `${props.value}`,\r\n options: ConvertOps(props.options) || []\r\n });\r\n\r\n useEffect(() => {\r\n setState((st) => ({ ...st, value: props.value }));\r\n }, [props.value]);\r\n\r\n useEffect(() => {\r\n props.options && setState((st) => ({ ...st, options: ConvertOps(props.options) }));\r\n }, [props.options]);\r\n\r\n const handleChange = (e) => {\r\n const val = e.target.value;\r\n setState((st) => ({ ...st, value: val }));\r\n props.onChange && props.onChange({ [props.name]: val });\r\n };\r\n\r\n const clickBtnGrup = (e, val) => {\r\n if (!props.disabled) {\r\n setState((st) => ({ ...st, value: val }));\r\n props.onChange && props.onChange({ [props.name]: val });\r\n }\r\n };\r\n\r\n if (portalSettings.workflowStepOptionsAsButtonGroup || props.displayType == 'BtnGroup') {\r\n return (\r\n \r\n {state.options.map((op, i) => (\r\n \r\n {op.text}\r\n \r\n ))}\r\n \r\n );\r\n } else {\r\n return (\r\n \r\n \r\n ))}\r\n \r\n );\r\n }\r\n};\r\n\r\nexport default AppSelect;\r\n","import { useEffect, useState } from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport { ToggleButton, ToggleButtonGroup } from '@material-ui/lab';\r\nimport './Controls.scss';\r\n\r\nconst AppButtonGroup = (props) => {\r\n const ConvertOps = (ops) => {\r\n return ops.map((op) => {\r\n return {\r\n value: `${op[props.valuePropertyName || 'value']}`,\r\n text: `${op[props.textPropertyName || 'text']}`\r\n };\r\n });\r\n };\r\n\r\n const [state, setState] = useState({\r\n value: `${props.value}`,\r\n options: ConvertOps(props.options) || []\r\n });\r\n\r\n useEffect(() => {\r\n setState((st) => ({ ...st, value: props.value }));\r\n }, [props.value]);\r\n\r\n useEffect(() => {\r\n props.options && setState((st) => ({ ...st, options: ConvertOps(props.options) }));\r\n }, [props.options]);\r\n\r\n const clickBtnGrup = (e, val) => {\r\n if (!props.disabled) {\r\n setState((st) => ({ ...st, value: val }));\r\n props.onChange && props.onChange({ [props.name]: val });\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n {state.options.map((op, i) => (\r\n \r\n {op.text}\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default AppButtonGroup;\r\n","import { Avatar, Chip, IconButton } from '@material-ui/core';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\n\r\nexport const CustomButton = (props) => {\r\n const { toolTipTitle, iconFontSize, IconColor, ...rest } = props;\r\n const Icon = props.icon;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport { TextField, Checkbox } from '@material-ui/core';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\nimport CheckBoxIcon from '@material-ui/icons/CheckBox';\r\nimport CheckBoxOutlineBlankIcon from '@material-ui/icons/CheckBoxOutlineBlank';\r\nconst icon = ;\r\nconst checkedIcon = ;\r\n\r\nconst Multiselect = (props) => {\r\n return (\r\n option.name}\r\n renderOption={(option, { selected }) => (\r\n \r\n \r\n {option.name}\r\n \r\n )}\r\n getOptionSelected={(option, value) => option.name === value.name}\r\n renderInput={(params) => }\r\n />\r\n );\r\n};\r\nexport default Multiselect;\r\n\r\nexport const MultiselectWithoutCheckbox = (props) => {\r\n return (\r\n option.name}\r\n renderOption={(option, { selected }) => {option.name}}\r\n getOptionSelected={(option, value) => option.name === value.name}\r\n renderInput={(params) => }\r\n />\r\n );\r\n};\r\n\r\nexport const SingelSelect = (props) => {\r\n return (\r\n option.name}\r\n renderOption={(option, { selected }) => {option.name}}\r\n getOptionSelected={(option, value) => option.name === value.name}\r\n renderInput={(params) => }\r\n />\r\n );\r\n};\r\n","import { TextField } from '@material-ui/core';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\n\r\nconst SelectBox = (props) => {\r\n const { List, inputLabel, forceEditable, ...rest } = props;\r\n let insertEmpty = rest.insertEmpty;\r\n if (insertEmpty === undefined) {\r\n insertEmpty = true;\r\n }\r\n return (\r\n \r\n {insertEmpty && (\r\n \r\n None\r\n \r\n )}\r\n {List.length > 0 &&\r\n List.map((option) => (\r\n \r\n {option.name}\r\n \r\n ))}\r\n \r\n );\r\n};\r\n\r\nexport default SelectBox;\r\n","import React from 'react';\r\nimport { Grid, Switch } from '@material-ui/core';\r\n\r\nconst SlideToggle = (props) => {\r\n const { leftLabel, rightLabel, ...restProps } = props;\r\n return (\r\n \r\n {props.checked ? {leftLabel} : leftLabel}\r\n \r\n \r\n \r\n {props.checked ? rightLabel : {rightLabel}}\r\n \r\n );\r\n};\r\n\r\nexport default SlideToggle;\r\n","import React, { useState } from 'react';\r\nimport { SketchPicker } from 'react-color';\r\nimport reactCSS from 'reactcss';\r\n\r\nconst CustomColorPicker = (props) => {\r\n const [state, setState] = useState({\r\n showPicker: false,\r\n color: {\r\n r: '225',\r\n g: '155',\r\n b: '99',\r\n a: '2'\r\n }\r\n });\r\n const { onChange, color, height, width } = props;\r\n const onClick = () => {\r\n setState({\r\n showPicker: !state.showPicker\r\n });\r\n };\r\n\r\n const onClose = () => {\r\n setState({\r\n showPicker: false\r\n });\r\n };\r\n\r\n const styles = reactCSS({\r\n default: {\r\n color: {\r\n width: `${width || '100%'}`,\r\n height: `${height || '30px'}`,\r\n borderRadius: '3px',\r\n background: `${color}`\r\n },\r\n popover: {\r\n position: 'absolute',\r\n zIndex: '3'\r\n },\r\n cover: {\r\n position: 'fixed',\r\n top: '0px',\r\n right: '0px',\r\n bottom: '0px',\r\n left: '0px'\r\n },\r\n swatch: {\r\n width: `${width || '100%'}`, //'100%',\r\n padding: '6px',\r\n background: '#ffffff',\r\n borderRadius: '2px',\r\n cursor: 'pointer',\r\n display: 'inline-block',\r\n boxShadow: '0 0 0 1px rgba(0,0,0,.2)'\r\n }\r\n }\r\n });\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n {state.showPicker ? (\r\n
\r\n
\r\n \r\n
\r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nexport default CustomColorPicker;\r\n","import React, { useContext, useState } from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport { login } from '../../../Core/Service/login-service';\r\nimport AppContext from '../../../App/AppContext';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport { TextBox, PasswordBox, SecondaryButton } from '../../../Core/FormInput';\r\nimport { Grid, Link } from '@material-ui/core';\r\nimport { Dialog, DialogContent, DialogTitle } from '@material-ui/core';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n paper: {\r\n marginTop: theme.spacing(8),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center'\r\n },\r\n form: {\r\n width: '100%',\r\n marginTop: theme.spacing(0)\r\n }\r\n}));\r\n\r\nfunction LoginForm(props) {\r\n const [state, setState] = useState({\r\n userName: '',\r\n password: ''\r\n });\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n const userNameUpdated = (e) => {\r\n const { value } = e.target;\r\n setState((st) => ({ ...st, userName: value }));\r\n };\r\n\r\n const passwordUpdated = (e) => {\r\n const { value } = e.target;\r\n setState((st) => ({ ...st, password: value }));\r\n };\r\n const handleClose = () => {\r\n props.history.push('/');\r\n };\r\n const handleSubmitClick = async (e) => {\r\n e.preventDefault();\r\n if (state.userName && state.password) {\r\n const res = await login(state.userName, state.password);\r\n if (!res.success) {\r\n showToast(res.message);\r\n } else {\r\n props.history.push('/');\r\n window.location.reload();\r\n }\r\n } else {\r\n showToast('User Name and Password both required.');\r\n }\r\n };\r\n\r\n const handlePasswordForgot = () => {\r\n props.history.push('/');\r\n showModal('ForgotPassword');\r\n };\r\n\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n Sign In\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {\r\n if (event.key === 'Enter') {\r\n handleSubmitClick(event);\r\n }\r\n }}\r\n />\r\n {\r\n if (event.key === 'Enter') {\r\n handleSubmitClick(event);\r\n }\r\n }}\r\n />\r\n \r\n Sign In\r\n \r\n \r\n \r\n \r\n Forgot password?\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default LoginForm;\r\n","import React, { useContext, useEffect, useState } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport moment from 'moment';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport { ExpBaseURL } from '../../../Core/Service/http-calls';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\nimport './dashboard.scss';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { getBranchAndFranchise } from '../../../Core/Service/branch-screen-service';\r\nimport { GetArchivedJobsExcelFile } from '../../../Core/Service/workflow-service';\r\nimport AppContext from '../../../App/AppContext';\r\n\r\nvar grid1;\r\nvar $ = window.$;\r\nlet storedFiltterValue = {};\r\nlet branchList = [];\r\nlet franchiseList = [];\r\n\r\nconst GijgoGrid = (props) => {\r\n const token = AppStorage.getToken();\r\n const [state, setState] = useState({});\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n const { hideModal, showToast, portalSettings } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n if (token) {\r\n pullArchivedJobsAndUpdateState();\r\n } else {\r\n window.location = '/';\r\n AppStorage.performLogout();\r\n }\r\n }, [token, props.filterList, props.isReload]);\r\n\r\n useEffect(async () => {\r\n if (token) {\r\n let res = await getBranchAndFranchise();\r\n if (res.success) {\r\n branchList = res.data.branches;\r\n franchiseList = res.data.franchiseRecords;\r\n }\r\n }\r\n }, [token]);\r\n\r\n var GijgoFilterExtension = (function () {\r\n function DropdownFilter(grid, propertyName, dropdown, changeValueConversion) {\r\n var id = $(grid).attr('id');\r\n var rowXPath = '#' + id + ' thead tr[data-role=\"filter\"]';\r\n var filterRow = $(rowXPath);\r\n if ($(filterRow).length == 1) {\r\n var colXPath = 'th [data-field=\"' + propertyName + '\"]';\r\n var filterInput = $(filterRow).find(colXPath);\r\n if ($(filterInput).length) {\r\n $(filterInput).parent().addClass('grid-filter-select-th');\r\n $(dropdown).attr('data-field', propertyName);\r\n $(filterInput).replaceWith(dropdown);\r\n $(dropdown).on('change', function () {\r\n ChangeFilter(grid, propertyName, $(this), changeValueConversion);\r\n });\r\n }\r\n }\r\n }\r\n\r\n function ChangeFilter(grid, propertyName, ddl, changeValueConversion) {\r\n if (changeValueConversion) {\r\n var propArr = changeValueConversion(ddl, propertyName, grid);\r\n $(propArr).each(function (i, obj) {\r\n grid.data().params[obj.propertyName] = obj.value;\r\n });\r\n if (propArr.length) {\r\n grid.reload();\r\n }\r\n } else {\r\n grid.data().params[propertyName] = $(ddl).val();\r\n grid.reload();\r\n }\r\n }\r\n\r\n return {\r\n Dropdown: DropdownFilter\r\n };\r\n })();\r\n\r\n const pullArchivedJobsAndUpdateState = async () => {\r\n window.$('#grid').grid('destroy', true, true);\r\n\r\n const onSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.rows,\r\n total: response.data.total\r\n };\r\n grid1.render(obj);\r\n };\r\n\r\n grid1 = window.$('#grid').grid({\r\n primaryKey: 'wipNo',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/${props.getUrl}`,\r\n headers: { Authorization: `Bearer ${token}` },\r\n success: onSuccessFunc\r\n },\r\n width: '100%',\r\n headerFilter: {\r\n type: 'onchange'\r\n },\r\n columns: [...props.columns],\r\n pager: props.displayPagination ? { limit: 100, sizes: [10, 50, 100, 500, 1000, 2000, 5000] } : false\r\n });\r\n\r\n setTimeout(() => {\r\n storedFiltterValue = JSON.parse(localStorage.getItem('FiltterParams')) || {};\r\n props.columns.forEach((itm) => {\r\n if (storedFiltterValue) {\r\n var id = $(grid1).attr('id');\r\n var rowXPath = '#' + id + ' thead tr[data-role=\"filter\"]';\r\n var filterRow = $(rowXPath);\r\n if ($(filterRow).length == 1) {\r\n var colXPath = 'th [data-field=\"' + `${itm.field}` + '\"]';\r\n var filterInput = $(filterRow).find(colXPath);\r\n if ($(filterInput).length && storedFiltterValue[`${itm.field}`]) {\r\n $(filterInput).val(storedFiltterValue[`${itm.field}`]);\r\n grid1.data().params[itm.field] = storedFiltterValue[`${itm.field}`];\r\n }\r\n }\r\n }\r\n });\r\n if (storedFiltterValue.sortBy && storedFiltterValue.direction) {\r\n grid1.data().params.sortBy = storedFiltterValue.sortBy;\r\n grid1.data().params.direction = storedFiltterValue.direction;\r\n }\r\n grid1.reload();\r\n });\r\n\r\n grid1.on('dataBound', function (e, records, totalRecords) {\r\n let { page, limit, ...rest } = grid1.data().params;\r\n let tempArray = storedFiltterValue;\r\n for (const property in rest) {\r\n tempArray = {\r\n ...tempArray,\r\n [`${property}`]: rest[property]\r\n };\r\n }\r\n localStorage.setItem('FiltterParams', JSON.stringify(tempArray));\r\n\r\n var ddl = $('');\r\n var supCd = grid1.data().params.branchShortName || '';\r\n $(branchList).each(function (i, itm) {\r\n if (supCd.length > 0 && itm.branchShortName == supCd) {\r\n ddl.append(``);\r\n } else {\r\n ddl.append(``);\r\n }\r\n });\r\n GijgoFilterExtension.Dropdown(grid1, 'branchShortName', ddl);\r\n\r\n var ddlFranchise = $('');\r\n var franchise = grid1.data().params.franchiseName || '';\r\n $(franchiseList).each(function (i, itm) {\r\n if (franchise.length > 0 && itm.franchiseName == franchise) {\r\n ddlFranchise.append(``);\r\n } else {\r\n ddlFranchise.append(``);\r\n }\r\n });\r\n GijgoFilterExtension.Dropdown(grid1, 'franchiseName', ddlFranchise);\r\n });\r\n\r\n grid1.on('rowDataBound', function (e, $row, id, record) {\r\n $row.css('background-color', `white`);\r\n if (record.highPriority) {\r\n $row.css('background-color', `${portalSettings.portalHighPriorityJobColour}`);\r\n } else if (record.returnReasonColourCode) {\r\n $row.css('background-color', `${record.returnReasonColourCode}`);\r\n } else {\r\n const dtDueIn = moment(record.dateDueIn).format('MM/DD/YYYY');\r\n const daysPast = moment().diff(dtDueIn, 'days');\r\n if (daysPast > 40) {\r\n $row.css('background-color', 'orange');\r\n } else if (daysPast > 5) {\r\n $row.css('background-color', 'yellow');\r\n }\r\n }\r\n });\r\n grid1.on('cellDataBound', function (e, $displayEl, id, column, record) {\r\n $displayEl.css('color', `${record.returnReasonTextColourCode}`);\r\n });\r\n // grid1.reload();\r\n };\r\n\r\n const downloadCSVWrapper = async () => {\r\n if (!props.getUrl.includes('GetWorkflow')) {\r\n grid1?.downloadCSV(`${props.currentWorkflowLabel}-${moment().format('DD-MMM-YYYY HH:mm')}.csv`);\r\n } else {\r\n showToast('Collating Data... This may take a while.');\r\n\r\n const workflowID = localStorage.getItem('currentWorkflowId');\r\n const data = grid1.data().params;\r\n\r\n let params = `/${workflowID == 'All' ? '' : workflowID}?`;\r\n\r\n for (let key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n const value = data[key];\r\n params += `&${key}=${value}`;\r\n }\r\n }\r\n\r\n await GetArchivedJobsExcelFile(params);\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\nexport default GijgoGrid;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getDashboardInfo = async () => {\r\n let res = await get('DashBoard/GetInternalDashBoardData', { useAuthToken: true });\r\n return res;\r\n};\r\n","import React, { useLayoutEffect, useState } from 'react';\r\n\r\nexport const useWindowSize = () => {\r\n const [size, setSize] = useState([0, 0]);\r\n useLayoutEffect(() => {\r\n const updateSize = () => {\r\n setSize([window.innerWidth, window.innerHeight]);\r\n };\r\n window.addEventListener('resize', updateSize);\r\n updateSize();\r\n return () => window.removeEventListener('resize', updateSize);\r\n }, []);\r\n return size;\r\n};\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getAllBranch = async () => {\r\n let res = await get(`/Branches`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBranchById = async (id) => {\r\n let res = await get(`/Branches/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postBranchData = async (data) => {\r\n let res = await post(`Branches/SetStampImage`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBranchAndFranchise = async (id) => {\r\n let res = await get(`/WorkflowGridDropdown`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBudgetDropDown = async (id) => {\r\n let res = await get(`Budgets/ScreenDropDown`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBudgetExpenses = async (year, departmentID, branchCode) => {\r\n let res = await get(`Budgets/GetExpenses?Year=${year}&ID=${departmentID}&BranchID=${branchCode}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBudgetOtherIncomes = async (year, departmentID, branchCode) => {\r\n let res = await get(`Budgets/GetOtherIncomes?Year=${year}&ID=${departmentID}&BranchID=${branchCode}`, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const getSalesTargets = async (year, departmentID, branchCode) => {\r\n let res = await get(`Budgets/GetSalesTargets?Year=${year}&ID=${departmentID}&BranchID=${branchCode}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const setSalesTargets = async (data) => {\r\n let res = await post(`Budgets/SetSalesTargets`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const postBudgetExpenceData = async (data) => {\r\n let res = await post(`Budgets`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const postSetOtherIncomes = async (data) => {\r\n let res = await post(`Budgets/SetOtherIncomes`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const AddExpenseCategory = async (data) => {\r\n let res = await post(`Budgets/AddExpenseCategory`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const AddOtherIncomeCategory = async (data) => {\r\n let res = await post(`Budgets/AddOtherIncomeCategory`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBranchCodes = async (id) => {\r\n let res = await get(`Branches/BranchCodes/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const setBranchCodes = async (data) => {\r\n let res = await post(`Branches/BranchCodes`, data, { useAuthToken: true });\r\n return res;\r\n};","import { get, post, put } from './http-calls';\r\nimport { memoize } from 'lodash';\r\nimport moment from 'moment';\r\n\r\nexport const getWorkflows = async (IsAllRecord = 'N') => {\r\n let res = await get(`workflow?IsAllRecord=${IsAllRecord ? `${IsAllRecord}` : ''}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getWorkflowsByProcessID = async (ProcessID, IsAllRecord = 'N') => {\r\n let res = await get(`workflow/ByProcessID/${ProcessID}?IsAllRecord=${IsAllRecord ? `${IsAllRecord}` : ''}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getAllowedWorkflow = async () => {\r\n let res = await get(`WorkflowJobs/GetAllowedWorkflows`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getWorkflowSteps = async (workflowId, jobId, IsAllRecord = 'N') => {\r\n let res = await get(`workflow/${workflowId}${jobId ? `/${jobId}` : ''}?IsAllRecord=${IsAllRecord ? `${IsAllRecord}` : ''}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const addWorkflow = async (\r\n name,\r\n nextWorkFlow,\r\n orderIndex,\r\n IsForTechnician,\r\n IsEntryPoint,\r\n IsEndPoint,\r\n timesIntervalDuration,\r\n timedInterval,\r\n timedIntervalTypeAfter,\r\n timedWorkflowId,\r\n displayJobPriorityButton,\r\n displayCustomerRatingButton,\r\n workflowProcessID\r\n) => {\r\n let res = await post(\r\n `workflow`,\r\n {\r\n workflowName: name,\r\n IsEntryPoint: IsEntryPoint,\r\n NextWorkflowId: nextWorkFlow,\r\n WorkflowForTechnician: IsForTechnician,\r\n OrderIndex: orderIndex,\r\n IsEndPoint: IsEndPoint,\r\n timesIntervalDuration: timesIntervalDuration,\r\n timedInterval: timedInterval,\r\n timedIntervalTypeAfter: timedIntervalTypeAfter,\r\n timedWorkflowId: timedWorkflowId,\r\n displayJobPriorityButton: displayJobPriorityButton,\r\n displayCustomerRatingButton: displayCustomerRatingButton,\r\n workflowProcessID\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const updateWorkflow = async (\r\n workflowId,\r\n name,\r\n IsDeleted,\r\n nextWorkFlow,\r\n orderIndex,\r\n IsForTechnician,\r\n IsEntryPoint,\r\n IsEndPoint,\r\n timesIntervalDuration,\r\n timedInterval,\r\n timedIntervalTypeAfter,\r\n timedWorkflowId,\r\n displayJobPriorityButton,\r\n displayCustomerRatingButton,\r\n workflowProcessID\r\n) => {\r\n let res = await put(\r\n `workflow/${workflowId}`,\r\n {\r\n workflowName: name,\r\n IsDeleted: IsDeleted ? false : true,\r\n IsEntryPoint: IsEntryPoint,\r\n NextWorkflowId: nextWorkFlow,\r\n WorkflowForTechnician: IsForTechnician,\r\n OrderIndex: orderIndex,\r\n IsEndPoint: IsEndPoint,\r\n timesIntervalDuration: timesIntervalDuration,\r\n timedInterval: timedInterval,\r\n timedIntervalTypeAfter: timedIntervalTypeAfter,\r\n timedWorkflowId: timedWorkflowId,\r\n displayJobPriorityButton: displayJobPriorityButton,\r\n displayCustomerRatingButton: displayCustomerRatingButton,\r\n workflowProcessID: workflowProcessID\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const deleteWorflow = async (workflowId) => {\r\n let res = await post(`Workflow/DeleteWorkflow/${workflowId}`, { workflowId: workflowId }, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getGridFilterList = async () => {\r\n let res = await get(`UserGridColumn`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postGridFilterList = async (data) => {\r\n let res = await post(`UserGridColumn`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postSetPriority = async (data) => {\r\n let res = await post(`workflow/SetPriority`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postCustomerRating = async (data) => {\r\n let res = await post(`workflow/SetCustomerRating`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const getCustomerRating = async (ID) => {\r\n let res = await get(`Workflow/CustomerRating/${ID}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nconst downloadFileWithExt = async (res, fileExt) => {\r\n if (res) {\r\n const url = window.URL.createObjectURL(new Blob([res.data]));\r\n const link = document.getElementById('tempDownloadPDFLink') || document.createElement('a');\r\n link.id = 'tempDownloadPDFLink';\r\n link.href = url;\r\n link.setAttribute('download', `Jobs${moment().format('DD-MMM-YYYY HH:mm')}.${fileExt}`);\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n return true;\r\n }\r\n};\r\n\r\nexport const GetArchivedJobsExcelFile = async (params) => {\r\n let res = await get(`WorkflowJobs/GetExcelDownload${params}`, {\r\n responseType: 'blob',\r\n returnOrgRes: true,\r\n useAuthToken: true\r\n });\r\n downloadFileWithExt(res, 'xlsx');\r\n};","import React, { useEffect, useLayoutEffect, useState } from 'react';\r\nimport { makeStyles } from '@material-ui/styles';\r\nimport { Avatar, Button, ButtonGroup, Card, CircularProgress, Grid, Typography } from '@material-ui/core';\r\nimport { BarChart, Bar, Cell, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer, Label, ComposedChart } from 'recharts';\r\nimport { PieChart, Pie, Sector, LabelList } from 'recharts';\r\nimport { Wifi } from '@material-ui/icons';\r\nimport './mainDashboard.scss';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { SecondaryButton } from '../FormInput';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%',\r\n margin: 3,\r\n border: '2px solid #f5f5f5 ',\r\n Opacity: 0.9,\r\n minWidth: 120,\r\n padding: '5px 0px',\r\n background: '#f5f5f5',\r\n borderRadius: 10\r\n }\r\n}));\r\n\r\nlet setObject = {\r\n ['<24hr']: '#00F433',\r\n ['1-5 days']: '#88EBA4',\r\n ['5-10 days']: '#FFBF00',\r\n ['10-20 days']: '#FFE28A',\r\n ['21-30 days']: '#bc4443',\r\n ['>30 days']: '#F11C0E'\r\n};\r\n\r\nlet timenumber = {\r\n ['<24hr']: 1,\r\n ['1-5 days']: 2,\r\n ['5-10 days']: 3,\r\n ['10-20 days']: 4,\r\n ['21-30 days']: 5,\r\n ['>30 days']: 6\r\n};\r\n\r\nconst COLORS = [\r\n '#0074D9',\r\n '#FF4136',\r\n '#2ECC40',\r\n '#FF851B',\r\n '#7FDBFF',\r\n '#B10DC9',\r\n '#FFDC00',\r\n '#001f3f',\r\n '#39CCCC',\r\n '#01FF70',\r\n '#85144b',\r\n '#F012BE',\r\n '#3D9970',\r\n '#111111',\r\n '#AAAAAA'\r\n];\r\n\r\nfunction randomColor() {\r\n let hex = Math.floor(Math.random() * 0xffffff);\r\n let color = '#' + hex.toString(16);\r\n\r\n return color;\r\n}\r\n\r\nconst DashboardCharts = (props) => {\r\n const { state } = props;\r\n const classes = useStyles();\r\n const history = useHistory();\r\n const [array, setArray] = useState({\r\n workflowReturnReasonArray: [],\r\n keys: [],\r\n byTimeObj: {},\r\n selectRRarr: [],\r\n showLoader: true,\r\n selectedFilterTechData: [],\r\n techJobsTotal: 0,\r\n hourType: 'clocked',\r\n assignedDate: 1\r\n });\r\n\r\n useEffect(() => {\r\n let btTimeData = JSON.parse(localStorage.getItem('FiltterParams'));\r\n\r\n if (btTimeData?.branchShortName) {\r\n props.getbranchByOnchange(btTimeData?.branchShortName);\r\n } else {\r\n props.getbranchByOnchange('Default');\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n let tempData = JSON.parse(localStorage.getItem('_dashboard_')) || {};\r\n let btTimeData = JSON.parse(localStorage.getItem('FiltterParams'));\r\n localStorage.setItem('FiltterParams', JSON.stringify({ ...btTimeData, branchTime: '' }));\r\n\r\n if (state) {\r\n if (state.sumOFByTimeForALL) {\r\n findByTimeValues(btTimeData?.branchShortName || 'Default');\r\n }\r\n if (state.workFlowDataBarData) {\r\n pullWorkflowRRdata(tempData.workflowReturnReason || state.workFlowDataBarData[0]?.workflow);\r\n }\r\n\r\n if (state.chartdata) {\r\n setArray((st) => ({\r\n ...st,\r\n showLoader: false,\r\n timeByBranch: tempData?.BranchBytime || state?.chartdata[0]?.name\r\n }));\r\n }\r\n if (!tempData) {\r\n localStorage.setItem(\r\n '_dashboard_',\r\n JSON.stringify({\r\n ...tempData,\r\n workflowReturnReason: state.workFlowDataBarData[0]?.workflow\r\n })\r\n );\r\n }\r\n }\r\n if (btTimeData) {\r\n setArray((st) => ({ ...st, byTimeBranch: btTimeData.branchShortName }));\r\n }\r\n }, [state.workFlowDataBarData]);\r\n\r\n useEffect(() => {\r\n let tempData = JSON.parse(localStorage.getItem('_dashboard_')) || {};\r\n if (state.technicianJobsData) {\r\n pullTechnicianJobsData(tempData?.selectedValueByTech || state?.chartdata[0]?.name);\r\n }\r\n }, [state.technicianJobsData]);\r\n\r\n const pullTechnicianJobsData = (val) => {\r\n let tempLocalData = JSON.parse(localStorage.getItem('_dashboard_'));\r\n let tempData = [...state.technicianJobsData].find((m) => m.branch == val) || [];\r\n let techJobsTotal = 0;\r\n if (tempData?.length > 0) {\r\n tempData.forEach((q) => {\r\n techJobsTotal += q.total;\r\n });\r\n }\r\n setArray((st) => ({\r\n ...st,\r\n selectedValueByTech: val,\r\n selectedFilterTechData: tempData,\r\n techJobsTotal: techJobsTotal\r\n }));\r\n localStorage.setItem('_dashboard_', JSON.stringify({ ...tempLocalData, selectedValueByTech: val }));\r\n };\r\n\r\n const pullWorkflowRRdata = (value) => {\r\n let newArray = [];\r\n let keys = [];\r\n if (state.workFlowDataBarData) {\r\n let index = state.workFlowDataBarData.find((n) => n.workflow === value);\r\n if (index) {\r\n keys = Object.keys(index);\r\n newArray.push(index);\r\n }\r\n setArray((st) => ({\r\n ...st,\r\n workflowReturnReasonArray: newArray,\r\n keys: keys,\r\n workFlowRR: value\r\n }));\r\n }\r\n };\r\n\r\n let handleArray = (e) => {\r\n let workflowValue = e.target.value;\r\n let btTimeData = JSON.parse(localStorage.getItem('FiltterParams'));\r\n let tempData = JSON.parse(localStorage.getItem('_dashboard_'));\r\n localStorage.setItem('_dashboard_', JSON.stringify({ ...tempData, workflowReturnReason: workflowValue }));\r\n pullWorkflowRRdata(workflowValue);\r\n props.getbranchByOnchange(btTimeData?.branchShortName || 'Default', workflowValue);\r\n };\r\n\r\n let findByTimeValues = (val) => {\r\n let indexObj = {};\r\n\r\n if (val === 'Default') {\r\n if (state.sumOFByTimeForALL) {\r\n let letNewData = state?.sumOFByTimeForALL?.reduce((acc, obj) => {\r\n var index = acc.find((item) => item);\r\n if (index) {\r\n index.lessThan24HoursOld += obj.lessThan24HoursOld;\r\n index.between1And5DaysOld += obj.between1And5DaysOld;\r\n index.between5And10DaysOld += obj.between5And10DaysOld;\r\n index.between10And20DaysOld += obj.between10And20DaysOld;\r\n index.between21And30DaysOld += obj.between21And30DaysOld;\r\n index.over30DaysOld += obj.over30DaysOld;\r\n index.overdue1And5Days += obj.overdue1And5Days;\r\n index.overdue5And10Days += obj.overdue5And10Days;\r\n index.overdue10And20Days += obj.overdue10And20Days;\r\n index.overdue21And30Days += obj.overdue21And30Days;\r\n index.overdueOver30DaysOld += obj.overdueOver30DaysOld;\r\n index.total += obj.total;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n indexObj = letNewData.find((item) => item);\r\n indexObj.branch = '';\r\n setArray((st) => ({ ...st, byTimeObj: indexObj, byTimeBranch: val }));\r\n }\r\n } else {\r\n indexObj = state.sumOFByTimeForALL.find((n) => n.branch === val);\r\n setArray((st) => ({ ...st, byTimeObj: indexObj, byTimeBranch: val }));\r\n }\r\n };\r\n\r\n const handleChangeByTime = (e) => {\r\n let tempData = JSON.parse(localStorage.getItem('_dashboard_'));\r\n let valueByTime = e.target.value;\r\n props.getbranchByOnchange(valueByTime);\r\n findByTimeValues(valueByTime);\r\n localStorage.setItem(\r\n 'FiltterParams',\r\n JSON.stringify({\r\n branchShortName: valueByTime !== 'Default' ? valueByTime : ''\r\n })\r\n );\r\n if (valueByTime !== 'Default') {\r\n localStorage.setItem(\r\n '_dashboard_',\r\n JSON.stringify({\r\n ...tempData,\r\n BranchBytime: valueByTime,\r\n selectedValueByTech: valueByTime\r\n })\r\n );\r\n }\r\n };\r\n\r\n const handleTimeBranch = (e) => {\r\n let tempData = JSON.parse(localStorage.getItem('_dashboard_'));\r\n let valueByTimeBranch = e.target.value;\r\n setArray((st) => ({ ...st, timeByBranch: valueByTimeBranch }));\r\n\r\n localStorage.setItem('_dashboard_', JSON.stringify({ ...tempData, BranchBytime: valueByTimeBranch }));\r\n };\r\n const handleTechSelect = (e) => {\r\n let valueByTech = e.target.value;\r\n pullTechnicianJobsData(valueByTech);\r\n };\r\n\r\n const handleTechOnClick = (techObj) => {\r\n localStorage.setItem('FiltterParams', JSON.stringify({ branchShortName: techObj.branch }));\r\n let searchQuery = `&tid=${techObj.tid || ''}&bnm=${techObj.branch}&tnm=${techObj.name}&bid=${techObj.bid}`;\r\n history.push({\r\n pathname: '/techDashgrid',\r\n search: searchQuery,\r\n state: {}\r\n });\r\n };\r\n const handleBar = (val) => {\r\n setArray((st) => ({ ...st, hourType: val }));\r\n };\r\n const handleDate = (val) => {\r\n setArray((st) => ({ ...st, assignedDate: val }));\r\n };\r\n return (\r\n \r\n {/* *****************Branch************** */}\r\n \r\n \r\n \r\n By Branch\r\n \r\n\r\n
\r\n \r\n \r\n \r\n {state.chartdata.map((entry, index) => (\r\n <>\r\n props.onChartClickHandler({ workflowID: 'All', branch: entry.name }, true)}\r\n />\r\n \r\n ))}\r\n \r\n \r\n \r\n
\r\n\r\n \r\n {state?.chartdata.map((m, i) => {\r\n let color = COLORS[i];\r\n return (\r\n
\r\n \r\n {' '}\r\n
\r\n
 {m.value}
\r\n
 {m.name}
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n \r\n \r\n\r\n {/* *****************Date************** */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n handleDate(1)}\r\n style={{ fontSize: 10 }}\r\n >\r\n Assigned Date\r\n \r\n handleDate(2)}\r\n style={{ fontSize: 10 }}\r\n >\r\n Date Due\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n {array.assignedDate === 1 ? (\r\n \r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 1\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n Less Than 24Hr\r\n \r\n \r\n {array.byTimeObj?.lessThan24HoursOld}\r\n \r\n \r\n \r\n \r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 2\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n 1 to 5 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.between1And5DaysOld}\r\n \r\n \r\n \r\n
\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 3\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n 5 to 10 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.between5And10DaysOld}\r\n \r\n \r\n \r\n \r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 4\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n 10 to 20 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.between10And20DaysOld}\r\n \r\n \r\n \r\n \r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 5\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n 20 to 30 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.between21And30DaysOld}\r\n \r\n \r\n \r\n \r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 6\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n Over 30 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.over30DaysOld}\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 2\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n Up to 5 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.overdue1And5Days}\r\n \r\n \r\n \r\n \r\n\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 3\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n 5 to 10 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.overdue5And10Days}\r\n \r\n \r\n \r\n \r\n\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 4\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n 10 to 20 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.overdue10And20Days}\r\n \r\n \r\n \r\n \r\n\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 5\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n 20 to 30 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.overdue21And30Days}\r\n \r\n \r\n \r\n \r\n\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: 'All',\r\n workflow: array.byTimeObj?.workflow,\r\n branch: array.byTimeObj?.branch,\r\n time: 6\r\n },\r\n true\r\n )\r\n }\r\n >\r\n buttonClicked(m)}\r\n >\r\n \r\n \r\n {' '}\r\n Over 30 Days\r\n \r\n \r\n {' '}\r\n {array.byTimeObj?.overdueOver30DaysOld}\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n {/* *****************Hours************** */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n handleBar('clocked')}\r\n style={{ fontSize: 10 }}\r\n >\r\n Clocked Hours\r\n \r\n handleBar('allowed')}\r\n style={{ fontSize: 10 }}\r\n >\r\n Allowed Hours\r\n \r\n \r\n \r\n {/* \r\n Clocked Hours\r\n */}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n\r\n \r\n {state.clockedHours.length > 0 &&\r\n state.clockedHours.map((g) => {\r\n if (state.selectedBranch == 'Default') {\r\n if (g.branch == 'Default') {\r\n const { branch, branchID, hoursTaken, orderIndex, workflow, workflowID, hoursAllowed } = g;\r\n return (\r\n
\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: workflowID,\r\n workflow: workflow\r\n },\r\n true\r\n )\r\n }\r\n >\r\n \r\n \r\n \r\n {workflow}\r\n \r\n \r\n {array.hourType === 'clocked' ? hoursTaken?.toFixed(2) : hoursAllowed?.toFixed(2)}\r\n
\r\n \r\n \r\n
\r\n \r\n );\r\n }\r\n } else {\r\n if (g.branch == state.selectedBranch) {\r\n const { branch, branchID, hoursTaken, orderIndex, workflow, workflowID, hoursAllowed } = g;\r\n return (\r\n
\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: workflowID,\r\n workflow: workflow,\r\n branch: branch\r\n },\r\n true\r\n )\r\n }\r\n >\r\n \r\n \r\n \r\n {workflow}\r\n \r\n \r\n {array.hourType === 'clocked' ? hoursTaken.toFixed(2) : hoursAllowed.toFixed(2)}\r\n
\r\n \r\n \r\n
\r\n \r\n );\r\n }\r\n }\r\n })}\r\n \r\n \r\n \r\n {/* ********WorkFlow Graph******* */}\r\n {state?.allHeaderData?.map((m, i) => {\r\n if (m.branch === array.timeByBranch) {\r\n return (\r\n 6 ? 12 : 6} style={{ padding: 5 }}>\r\n \r\n \r\n \r\n \r\n {`Workflows By Branch`}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state?.allHeaderDataKeys?.map((n, i) => {\r\n return (\r\n n !== 'name' &&\r\n n !== 'workflow' &&\r\n n !== 'workflowID' && (\r\n \r\n {/* */}\r\n {m.map((entry, index) => {\r\n return (\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: entry.workflowID,\r\n workflow: entry.workflow,\r\n branch: entry.name,\r\n time: timenumber[n]\r\n },\r\n true\r\n )\r\n }\r\n />\r\n );\r\n })}\r\n \r\n )\r\n );\r\n })}\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n })}\r\n {/* ********* Return Reason By Workflow ********* */}\r\n 6 ? 12 : 6} style={{ padding: 5, boxSize: 'none' }}>\r\n \r\n \r\n \r\n \r\n Return Reason By Workflow ({!array?.byTimeBranch ? 'All Branch' : array?.byTimeBranch})\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {array.workflowReturnReasonArray.length > 0 ? (\r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n {/* */}\r\n\r\n {array?.keys?.map((m, i) => {\r\n let color = state?.returnReasonColors.find((n) => n.returnReason === m);\r\n return (\r\n m !== 'name' &&\r\n m !== 'workflowID' &&\r\n m !== 'workflow' && (\r\n \r\n \r\n {array.workflowReturnReasonArray.map((entry, index) => {\r\n return (\r\n \r\n props.onChartClickHandler(\r\n {\r\n workflowID: entry.workflowID,\r\n returnReason: m,\r\n branch: entry.name\r\n },\r\n true\r\n )\r\n }\r\n />\r\n );\r\n })}\r\n \r\n )\r\n );\r\n })}\r\n \r\n \r\n ) : (\r\n \r\n
No chart data Found
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n {/* *************Jobs By Technicians*************ss */}\r\n \r\n \r\n \r\n \r\n \r\n {'Jobs By Technicians'}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n handleTechOnClick({\r\n tid: '',\r\n branch: array.selectedValueByTech,\r\n name: '',\r\n bid: ''\r\n })\r\n }\r\n >\r\n Total : {array.techJobsTotal}\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {array.selectedFilterTechData.map((p) => {\r\n return (\r\n handleTechOnClick(p)} style={{ cursor: 'pointer' }}>\r\n \r\n \r\n \r\n {p.name[0]}\r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n {p.name}\r\n \r\n \r\n {p.total}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default DashboardCharts;\r\n","import React, { useEffect, useContext, useState } from 'react';\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions, SecondaryCheckbox } from '../../../Core/FormInput';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { getGridFilterList, postGridFilterList } from '../../../Core/Service/workflow-service';\r\nimport AppContext from '../../../App/AppContext';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport { find, some } from 'lodash';\r\nimport Switch from '@material-ui/core/Switch';\r\nimport { MenuItem } from '@material-ui/core';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\nimport { TextField } from '@material-ui/core';\r\n\r\nconst initState = {};\r\nlet GridFilterModal = (props) => {\r\n const { showToast, setUserPreference } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({\r\n filterList: [],\r\n languageList: [],\r\n languageCode: {}\r\n });\r\n\r\n useEffect(() => {\r\n Object.values(props.filterList).forEach((obj) => {\r\n initState[obj.fieldName] = obj.hidden;\r\n });\r\n setState((st) => ({ ...st, fieldValues: { ...initState }, filterList: props.filterList }));\r\n\r\n let data;\r\n Object.values(props?.languageData).forEach((obj) => {\r\n if (obj.id == props?.languageCode) {\r\n data = obj;\r\n }\r\n });\r\n setState((st) => ({ ...st, languageCode: data }));\r\n }, [props.filterList]);\r\n\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.fieldValues[name] = checked;\r\n return newSt;\r\n });\r\n };\r\n\r\n const handelClose = () => {\r\n props.handleCancel(false);\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let data = { ...state.fieldValues, UserGridColumnLanguageCode: state.languageCode?.id };\r\n let res = await postGridFilterList(data);\r\n if (res.success) {\r\n await setUserPreference();\r\n props.handleCancel(true);\r\n } else {\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n const handleAutoChange = (e, value, comp) => {\r\n if (value) {\r\n if (comp == 'language') {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.languageCode = value;\r\n return newSt;\r\n });\r\n }\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n Selected Grid Columns\r\n \r\n\r\n {state.filterList.map((j) => {\r\n if (j.field === 'pagination') {\r\n return (\r\n \r\n Pagination\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n return (\r\n \r\n }\r\n label={j.title}\r\n />\r\n \r\n );\r\n })}\r\n\r\n \r\n Language\r\n handleAutoChange(e, value, 'language')}\r\n getOptionLabel={(option) => (typeof option === 'string' ? option : option.description)}\r\n renderInput={(params) => }\r\n />\r\n \r\n\r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default GridFilterModal;\r\n","import {\r\n get,\r\n post\r\n} from './http-calls';\r\n\r\nexport const getWorkflowData = async headerRecordId => {\r\n let res = await get(`workflowData/${headerRecordId}`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n}\r\n\r\nexport const saveWorkflowData = async (headerRecordId, data, technicianJobId) => {\r\n let res = '';\r\n if (technicianJobId) {\r\n res = await post(`workflowData/${headerRecordId}?TechnicianJobId=${technicianJobId}`, data, {\r\n useAuthToken: true\r\n })\r\n } else {\r\n res=await post(`workflowData/${headerRecordId}`, data, {\r\n useAuthToken: true\r\n })\r\n }\r\n return res;\r\n}\r\n\r\nexport const assignedTechAndList = async (headerRecordId) => {\r\n let res = await get(`workflowData/getTechnician/${headerRecordId}`, {\r\n useAuthToken: true\r\n })\r\n return res;\r\n}\r\n\r\nexport const assignedTechnicianToJob = async (jobId, technicianIds) => {\r\n const prom = [];\r\n technicianIds.forEach(m => {\r\n let technicianId = m.id;\r\n let mode = m.mode\r\n prom.push(post(`workflowData/assignTechnician`, {\r\n jobId,\r\n technicianId,\r\n mode\r\n }, {\r\n useAuthToken: true\r\n }));\r\n })\r\n return Promise.all(prom).then(ress => {\r\n console.log('response from all technician assignment post calls:', ress);\r\n return {\r\n success: true,\r\n message: 'Technician assigned successfully.'\r\n }\r\n })\r\n .catch(ex => {\r\n console.error(ex);\r\n return {\r\n success: false,\r\n message: 'Failed to assign selected technicians. Please try again.'\r\n }\r\n })\r\n}\r\n","import { DataGrid } from '@material-ui/data-grid';\r\nimport { find, forEach } from 'lodash';\r\nimport React, { useEffect, useState, useContext, useMemo } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { PrimaryButton } from '../../../Core/FormInput';\r\nimport { assignedTechAndList, assignedTechnicianToJob } from '../../../Core/Service/workflowData-service';\r\nimport { Checkbox, Grid } from '@material-ui/core';\r\nimport './assign-technician.scss';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\n\r\nconst AssignTech = (props) => {\r\n const { hideTopNavAndMenu, showToast } = useContext(AppContext);\r\n const getClass = (params) => {\r\n if (params.row.isAssigned) {\r\n return 'is-assigned';\r\n } else if (params.row.selectedNext) {\r\n return 'will-be-assigned';\r\n }\r\n };\r\n\r\n let isAssignTechnicianAllowed = AppStorage.getCanAssignTechnicianAllowed();\r\n\r\n const defaultColumns = [\r\n { field: 'name', headerName: 'Name', flex: 1 },\r\n { field: 'jobAssigned', headerName: 'Jobs Assigned ', width: 160 },\r\n {\r\n field: 'isAssigned',\r\n headerName: 'Assign',\r\n width: 105\r\n }\r\n ].map((c) => ({ ...c, cellClassName: getClass }));\r\n\r\n const [state, setState] = useState({\r\n technicians: [],\r\n isEnable: false\r\n });\r\n\r\n const onCheckboxClick = (id) => (e) => {\r\n const { checked } = e.target;\r\n if (isAssignTechnicianAllowed) {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n const rw = find(newSt.technicians, (t) => t.id === id);\r\n if (rw) {\r\n rw.selectedNext = checked; //!rw.selectedNext;\r\n rw.isAssigned = checked; // !rw.isAssigned;\r\n rw.mode = checked ? 'A' : 'D';\r\n }\r\n newSt.technicians = [...newSt.technicians];\r\n newSt.isEnable = true;\r\n return newSt;\r\n });\r\n }\r\n };\r\n\r\n const columns = () => {\r\n let allCols = [...defaultColumns];\r\n let col = allCols.find((c) => c.field === 'isAssigned');\r\n col.renderCell = (params) => (\r\n <>\r\n \r\n {/* */}\r\n \r\n );\r\n return allCols;\r\n };\r\n\r\n const getAssignedTechAndOthers = async () => {\r\n const res = await assignedTechAndList(props.jobId);\r\n if (res.success) {\r\n setState((st) => ({ ...st, technicians: res.data }));\r\n } else {\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n getAssignedTechAndOthers();\r\n }, [props.jobId]);\r\n\r\n const saveTechnicianAndMove = async () => {\r\n const techToSave = state.technicians.filter((c) => c.mode);\r\n const res = await assignedTechnicianToJob(props.jobId, techToSave);\r\n if (res.success) {\r\n showToast(res.message);\r\n props.handleCancel(true);\r\n }\r\n if (!res.success) {\r\n console.error(res);\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Assign Technician\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AssignTech;\r\n","import { Dialog, DialogActions, DialogContent, DialogTitle } from '@material-ui/core';\r\nimport React from 'react';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\n\r\nconst closeIconStyle = {\r\n marginRight: 7\r\n};\r\nlet DialogComp = ({ title, children, footer, onClose, maxWidth = 'sm', overflow = 'hidden', height = 'none', ...rest }) => {\r\n return (\r\n <>\r\n \r\n \r\n {title && {title}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {children}\r\n {footer && {footer}}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default DialogComp;\r\n","import React, { useContext, useEffect, useState } from 'react';\r\nimport { getDashboardInfo } from '../Service/dashbordService';\r\nimport { Card, Grid, Typography, Avatar, CircularProgress } from '@material-ui/core';\r\nimport { makeStyles } from '@material-ui/styles';\r\nimport { ChartCommonComp } from '../Chart/barChart';\r\nimport { BarChart, Bar, Cell, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer, Label } from 'recharts';\r\nimport { PieChart, Pie, Sector, LabelList } from 'recharts';\r\nimport { CodeSharp, ContactsOutlined } from '@material-ui/icons';\r\nimport HomeIcon from '@material-ui/icons/Home';\r\nimport FilterListIcon from '@material-ui/icons/FilterList';\r\nimport _ from 'lodash';\r\nimport GijgoGrid from '../../Components/internal/dashboard';\r\nimport AppContext from '../../App/AppContext';\r\nimport moment from 'moment';\r\nimport { IconButton } from '@material-ui/core';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport AssignmentIndIcon from '@material-ui/icons/AssignmentInd';\r\nimport ReactDOM from 'react-dom';\r\nimport DashboardCharts from './dashboardCharts';\r\nimport GridFilterModal from '../../Components/internal/dashboard/FilterModal';\r\nimport AssignTech from '../../Components/internal/assign-technician/assignTechnModal';\r\nimport DialogComp from '../Modal/dialogModal';\r\nimport { getGridFilterList } from '../Service/workflow-service';\r\nimport Grow from '@material-ui/core/Grow';\r\nimport { useHistory } from 'react-router-dom';\r\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\r\nimport ChevronLeftIcon from '@material-ui/icons/ChevronLeft';\r\nimport { useWindowSize } from '../Controls/ScreenResolution';\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%',\r\n background: '#f5f5f5',\r\n border: '2px solid #f5f5f5 ',\r\n Opacity: 0.9,\r\n minWidth: 110,\r\n padding: '5px 0px',\r\n margin: 3,\r\n borderRadius: 3\r\n }\r\n}));\r\n\r\nlet config = {\r\n wipNo: {\r\n from: 'displayWIPNo',\r\n to: 'userGridColumnDisplayWIPNo'\r\n },\r\n registration: {\r\n from: 'displayVehicleReg',\r\n to: 'userGridColumnDisplayVehicleReg'\r\n },\r\n makeModel: {\r\n from: 'displayModel',\r\n to: 'userGridColumnDisplayModel'\r\n },\r\n customerName: {\r\n from: 'displayCustomer',\r\n to: 'userGridColumnDisplayCustomer'\r\n },\r\n dateDueIn: {\r\n from: 'displayDateDueIn',\r\n to: 'userGridColumnDisplayDateDueIn'\r\n },\r\n dateDueOut: {\r\n from: 'displayDateDueOut',\r\n to: 'userGridColumnDisplayDateDueOut'\r\n },\r\n returnReason: {\r\n from: 'displayReturnReason',\r\n to: 'userGridColumnDisplayReturnReason'\r\n },\r\n branchShortName: {\r\n from: 'displayBranch',\r\n to: 'userGridColumnDisplayBranch'\r\n },\r\n franchiseName: {\r\n from: 'displayFranchise',\r\n to: 'userGridColumnDisplayFranchise'\r\n },\r\n serviceText: {\r\n from: 'displayJobDescription',\r\n to: 'userGridColumnDisplayJobDescription'\r\n },\r\n accountNo: {\r\n from: 'displayAccount',\r\n to: 'userGridColumnDisplayAccount'\r\n },\r\n createdBy: {\r\n from: 'displayCreatedBy',\r\n to: 'userGridColumnDisplayCreatedBy'\r\n },\r\n assigned: {\r\n from: 'displayAssignedDate',\r\n to: 'userGridColumnDisplayAssignedDate'\r\n },\r\n taken: {\r\n from: 'displayTimeTaken',\r\n to: 'userGridColumnDisplayTimeTaken'\r\n },\r\n status: {\r\n from: 'displayStatus',\r\n to: 'UserGridColumnDisplayStatus'\r\n },\r\n assignedDays: {\r\n from: 'displayAssignedDays',\r\n to: 'UserGridColumnDisplayAssignedDays'\r\n },\r\n owningOperator: {\r\n from: 'displayOwningOperator',\r\n to: 'UserGridDisplayColumnOwningOperator'\r\n }\r\n};\r\n\r\nconst isFalseValue = (val) => {\r\n if (val == false) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n};\r\n\r\nfunction scrollbarVisible(element) {\r\n return element?.scrollWidth > element?.clientWidth;\r\n}\r\n\r\nconst scrollNext = (id) => {\r\n document.getElementById('WorkFlow-Btn').scrollBy({ left: 100, top: 0, behavior: 'smooth' });\r\n};\r\n\r\nconst scrollPrev = (id) => {\r\n document.getElementById('WorkFlow-Btn').scrollBy({ left: -100, top: 0, behavior: 'smooth' });\r\n};\r\n\r\nconst Dashbord = (props) => {\r\n let WorkFlowBtnElementscrollWidth = document.getElementById('WorkFlow-Btn');\r\n\r\n const classes = useStyles();\r\n const { portalSettings, getUserPreference, isAppReaload } = useContext(AppContext);\r\n // const { t, i18n, langLabel } = Customi18();\r\n const [checked, setChecked] = useState(false);\r\n let history = useHistory();\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n const [state, setState] = useState({\r\n isShowScrollArrow: true,\r\n getUrl: `WorkflowJobs/GetWorkflow`,\r\n workflowData: [],\r\n chartdata: [],\r\n headerRecord: [],\r\n tempHeaderRecord: [],\r\n rawHeaderData: [],\r\n returnReasonBarData: [],\r\n returnReasons: [],\r\n allHeaderDataKeys: [],\r\n allHeaderData: [],\r\n workFlowDataBarData: [],\r\n workFlowDatakeys: [],\r\n sumOfAllWorkflows: [],\r\n btnID: 'home',\r\n tempObj: {},\r\n showGrid: false,\r\n total: '',\r\n headervalbyBranch: [],\r\n returnReasonColors: [],\r\n selectListForRR: [],\r\n selectedBranch: 'Default',\r\n showLoader: true,\r\n clockedHours: []\r\n });\r\n\r\n const pullGridFilterList = async () => {\r\n let data = getUserPreference();\r\n if (data) {\r\n // i18n.changeLanguage(data.details[0].languageCode);\r\n setState((st) => ({\r\n ...st,\r\n appbarLocation: data.details[0].appbarLocation || 'T',\r\n languageCode: data.details[0].languageCode,\r\n languageData: data.languages,\r\n tempObj: data.details[0] || {},\r\n displayPagination: isFalseValue(data.details[0]?.displayPagination)\r\n }));\r\n }\r\n };\r\n\r\n const pullDashboardData = async (workflow, branchName) => {\r\n let res = await getDashboardInfo();\r\n if (res.success) {\r\n let headerRecord = [...res?.data.headerRecord];\r\n let returnReason = [...res?.data.returnReasons];\r\n let technicianJobs = [...res?.data.technicianJobs];\r\n let clockedHours = [...res?.data.clockedHours] || [];\r\n\r\n if (clockedHours.length > 0) {\r\n let allClockedHours = [];\r\n\r\n clockedHours.map((ch) => {\r\n let shouldAdd = true;\r\n\r\n allClockedHours.map((ach) => {\r\n if (ch.workflow == ach.workflow) {\r\n ach.hoursTaken += ch.hoursTaken;\r\n ach.hoursAllowed += ch.hoursAllowed;\r\n shouldAdd = false;\r\n }\r\n });\r\n\r\n if (shouldAdd) {\r\n allClockedHours.push({\r\n branch: 'Default',\r\n workflow: ch.workflow,\r\n workflowID: ch.workflowID,\r\n hoursTaken: ch.hoursTaken,\r\n hoursAllowed: ch.hoursAllowed\r\n });\r\n }\r\n });\r\n\r\n clockedHours = [...clockedHours, ...allClockedHours];\r\n }\r\n\r\n if (headerRecord.length > 0) {\r\n // Headers WorkFlows Data...........\r\n var headerWorkflowData = headerRecord.reduce((acc, obj) => {\r\n var index = acc.find((item) => item.workflow === obj.workflow);\r\n if (index) {\r\n index.total += obj.total;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n\r\n //workflow pieData............\r\n const workflowData = headerWorkflowData.map((m) => {\r\n return { name: m.workflow, value: m.total, workflowID: m.workflowID };\r\n });\r\n let sumOfAllWorkflows = 0;\r\n let totalCount = [...workflowData].forEach(function (item) {\r\n sumOfAllWorkflows += item.value;\r\n });\r\n\r\n // branch pieData\r\n var branchArr = headerRecord.reduce((acc, obj) => {\r\n var index = acc.find((item) => item.branch === obj.branch);\r\n if (index) {\r\n index.total += obj.total;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n\r\n let chartdata = branchArr.map((m) => ({\r\n name: m.branch,\r\n value: m.total\r\n }));\r\n\r\n // ............sum OF By Time For ALL\r\n\r\n const sumOFByTimeForALL = headerRecord.reduce((acc, obj) => {\r\n var index = acc.find((item) => item.branch === obj.branch);\r\n if (index) {\r\n index.lessThan24HoursOld += obj.lessThan24HoursOld;\r\n index.between1And5DaysOld += obj.between1And5DaysOld;\r\n index.between5And10DaysOld += obj.between5And10DaysOld;\r\n index.between10And20DaysOld += obj.between10And20DaysOld;\r\n index.between21And30DaysOld += obj.between21And30DaysOld;\r\n index.over30DaysOld += obj.over30DaysOld;\r\n index.overdue1And5Days += obj.overdue1And5Days;\r\n index.overdue5And10Days += obj.overdue5And10Days;\r\n index.overdue10And20Days += obj.overdue10And20Days;\r\n index.overdue21And30Days += obj.overdue21And30Days;\r\n index.overdueOver30DaysOld += obj.overdueOver30DaysOld;\r\n index.total += obj.total;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n\r\n // ..........By branch and Time BarChart.............\r\n\r\n let headerByTimeBarchart = headerRecord.reduce((acc, obj) => {\r\n var index = acc.find((item) => item.workflow === obj.workflow && item.branch === obj.branch);\r\n if (index) {\r\n index.lessThan24HoursOld += obj.lessThan24HoursOld;\r\n index.between1And5DaysOld += obj.between1And5DaysOld;\r\n index.between5And10DaysOld += obj.between5And10DaysOld;\r\n index.between10And20DaysOld += obj.between10And20DaysOld;\r\n index.between21And30DaysOld += obj.between21And30DaysOld;\r\n index.over30DaysOld += obj.over30DaysOld;\r\n index.total += obj.total;\r\n\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n\r\n const chartDataForHeader = headerByTimeBarchart.map((p) => {\r\n let setObject = {};\r\n setObject.name = p.branch;\r\n setObject['<24hr'] = p.lessThan24HoursOld;\r\n setObject['1-5 days'] = p.between1And5DaysOld;\r\n setObject['5-10 days'] = p.between5And10DaysOld;\r\n setObject['10-20 days'] = p.between10And20DaysOld;\r\n setObject['21-30 days'] = p.between21And30DaysOld;\r\n setObject['>30 days'] = p.over30DaysOld;\r\n setObject.workflow = p.workflow;\r\n setObject.workflowID = p.workflowID;\r\n return setObject;\r\n });\r\n\r\n let result = chartDataForHeader.map((m) => {\r\n let newObj;\r\n newObj = chartDataForHeader.filter((n) => {\r\n if (n.name === m.name) {\r\n return m;\r\n }\r\n });\r\n newObj.branch = m.name;\r\n return newObj;\r\n });\r\n\r\n let newResult = Object.values(result.reduce((acc, cur) => Object.assign(acc, { [cur.branch]: cur }), {}));\r\n\r\n let getAllHeaderKeys = newResult.map((m, i) => {\r\n let keys = m.map((p, i) => Object.keys(p));\r\n return keys;\r\n });\r\n\r\n setState((st) => ({\r\n ...st,\r\n workflowData: workflowData,\r\n chartdata: chartdata,\r\n headerRecord: headerWorkflowData,\r\n clockedHours: clockedHours,\r\n allHeaderDataKeys: getAllHeaderKeys.length > 0 ? getAllHeaderKeys[0][0] : [],\r\n allHeaderData: newResult,\r\n sumWorkflows: sumOfAllWorkflows,\r\n sumOFByTimeForALL: sumOFByTimeForALL,\r\n rawHeaderData: [...res?.data.headerRecord],\r\n showLoader: false\r\n }));\r\n }\r\n\r\n if (returnReason) {\r\n // const selectList = returnReason.reduce((a, b) => {\r\n // let index = a.find((item) => item.branch === b.branch && item.name === b.name);\r\n // if (index) {\r\n // return a;\r\n // }\r\n // a.push({ ...b });\r\n // return a;\r\n // }, []);\r\n\r\n // // let selectListMerge = Object.values(selectList.reduce((acc, cur) => Object.assign(acc, { [cur.name]: cur }), {}));\r\n\r\n // if (branchName) {\r\n // let selectedFilterData = selectList.filter((n) => n.branch === branchName);\r\n // setState((st) => ({\r\n // ...st,\r\n // selectListForRR: selectedFilterData\r\n // }));\r\n // } else {\r\n // setState((st) => ({\r\n // ...st,\r\n // selectListForRR: Object.values(selectList.reduce((acc, cur) => Object.assign(acc, { [cur.name]: cur }), {}))\r\n // }));\r\n // }\r\n\r\n // .............by returnReasonsdata.at..........\r\n if (workflow && branchName) {\r\n let reduceReturnResonArray = returnReason.reduce((acc, obj) => {\r\n var index = acc.find((item) => item.branch === obj.branch && item.returnReason === obj.returnReason);\r\n if (index) {\r\n index.total += obj.total;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n\r\n let RetrunResonArray = [...reduceReturnResonArray].map((m) => {\r\n let newObj;\r\n newObj = [...reduceReturnResonArray].filter((n) => {\r\n if (n.branch === m.branch && n.name === m.name) {\r\n return m;\r\n }\r\n });\r\n newObj.name = m.branch;\r\n newObj.workflow = m.name;\r\n newObj.workflowID = m.workflowID;\r\n return newObj;\r\n });\r\n\r\n let reduceArray = RetrunResonArray.filter((m) => m.name === branchName && m.workflow == workflow);\r\n\r\n let returnReasonsdata = reduceArray.map((m) => {\r\n let newObj = {};\r\n newObj.name = m.name;\r\n m.forEach((n) => {\r\n newObj.workflow = n.name;\r\n newObj[n.returnReason] = n.total;\r\n newObj.workflowID = m.workflowID;\r\n });\r\n\r\n return newObj;\r\n });\r\n let groupbyRetunreson = Object.values(returnReasonsdata.reduce((acc, cur) => Object.assign(acc, { [cur.workflow]: cur }), {}));\r\n\r\n let getkeys = returnReasonsdata.map((m, i) => {\r\n let keys = Object.keys(m);\r\n return keys;\r\n });\r\n\r\n // MERGE KEY ALL ARRAY........\r\n let mergeAllarray = getkeys.flat(1);\r\n // // // GET REMOVE SAME VALUES IN ARRAY\r\n let values = [...new Set(mergeAllarray)];\r\n\r\n let RetrunResoncolor = [...res.data.returnReasons].map((m) => {\r\n let newObj = {};\r\n newObj.returnReason = m.returnReason;\r\n newObj.color = m.returnReasonColourCode;\r\n return newObj;\r\n });\r\n\r\n setState((st) => ({\r\n ...st,\r\n workFlowDataBarData: groupbyRetunreson,\r\n workFlowDatakeys: values,\r\n returnReasonColors: RetrunResoncolor\r\n }));\r\n }\r\n\r\n // For add Branches...................\r\n else {\r\n let RetrunResoncolor = [...res.data.returnReasons].map((m) => {\r\n let newObj = {};\r\n newObj.returnReason = m.returnReason;\r\n newObj.color = m.returnReasonColourCode;\r\n return newObj;\r\n });\r\n let workflowRetunReasonReduce = returnReason.reduce((acc, obj) => {\r\n var index = acc.find((item) => item.name === obj.name && item.returnReason === obj.returnReason);\r\n if (index) {\r\n index.total += obj.total;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n\r\n let workflowArray = [...workflowRetunReasonReduce].map((m) => {\r\n let newObj;\r\n newObj = [...workflowRetunReasonReduce].filter((n) => {\r\n if (n.name === m.name) {\r\n return m;\r\n }\r\n });\r\n newObj.name = m.name;\r\n return newObj;\r\n });\r\n\r\n let workflowGroupReturnReason = Object.values(workflowArray.reduce((acc, cur) => Object.assign(acc, { [cur.name]: cur }), {}));\r\n\r\n let workflowRetunReasonData = workflowGroupReturnReason.map((m) => {\r\n let newObj = {};\r\n newObj.workflow = m.name;\r\n\r\n m.forEach((n) => {\r\n newObj[n.returnReason] = n.total;\r\n newObj.workflowID = n.workflowID;\r\n });\r\n\r\n return newObj;\r\n });\r\n\r\n let workflowKeys = workflowRetunReasonData.map((m, i) => {\r\n let keys = Object.keys(m);\r\n return keys;\r\n });\r\n\r\n // MERGE KEY ALL ARRAY........\r\n let mergeWorkFlowarray = workflowKeys.flat(1);\r\n // GET REMOVE SAME VALUES IN ARRAY\r\n let workFlowvalues = [...new Set(mergeWorkFlowarray)];\r\n setState((st) => ({\r\n ...st,\r\n workFlowDataBarData: workflowRetunReasonData,\r\n workFlowDatakeys: workFlowvalues,\r\n returnReasonColors: RetrunResoncolor,\r\n showLoader: false\r\n }));\r\n }\r\n }\r\n if (technicianJobs) {\r\n let result = technicianJobs.map((m) => {\r\n let newObj;\r\n newObj = technicianJobs.filter((n) => {\r\n if (n.branch === m.branch) {\r\n return m;\r\n }\r\n });\r\n newObj.branch = m.branch;\r\n return newObj;\r\n });\r\n let newResult = Object.values(result.reduce((acc, cur) => Object.assign(acc, { [cur.branch]: cur }), {}));\r\n\r\n setState((st) => ({\r\n ...st,\r\n technicianJobsData: newResult,\r\n showLoader: false\r\n }));\r\n }\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n let btTimeData = JSON.parse(localStorage.getItem('FiltterParams'));\r\n let tempData = JSON.parse(localStorage.getItem('_dashboard_'));\r\n var workflow = tempData?.workflowReturnReason;\r\n var branchName = btTimeData?.branchShortName;\r\n pullDashboardData(workflow, branchName);\r\n }, [state.selectedBranch, state.selectedWorkFlow]);\r\n\r\n useEffect(() => {\r\n if (props.location.query) {\r\n setState((st) => ({\r\n ...st,\r\n returnReasonID: props.location.query.returnReasonID,\r\n filterText: props.location.query.returnReason,\r\n btnSelectedId: props.location.query?.workFlowId,\r\n hasQueryValues: true\r\n }));\r\n }\r\n }, []);\r\n\r\n const pullHeaderWorkFlowData = (params) => {\r\n if (params !== 'Default') {\r\n if (state.rawHeaderData.length > 0) {\r\n let indexObj = [...state.rawHeaderData].filter((inx) => inx.branch === params);\r\n\r\n let WorkflowTotal = indexObj.reduce((a, b) => {\r\n var index = a.find((x) => x.workflow === b.workflow);\r\n if (index) {\r\n index.total += b.total;\r\n return a;\r\n }\r\n a.push({ ...b });\r\n return a;\r\n }, []);\r\n\r\n let overallTotal = indexObj.reduce((a, b) => {\r\n var index = a.find((x) => x.branch === b.branch);\r\n if (index) {\r\n index.total += b.total;\r\n return a;\r\n }\r\n a.push({ ...b });\r\n return a;\r\n }, []);\r\n\r\n setState((st) => ({\r\n ...st,\r\n tempHeaderRecord: WorkflowTotal,\r\n sumOfAllWorkflows: overallTotal[0]?.total\r\n }));\r\n }\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n tempHeaderRecord: state.headerRecord,\r\n sumOfAllWorkflows: state.sumWorkflows\r\n }));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (state.selectedBranch) {\r\n pullHeaderWorkFlowData(state.selectedBranch);\r\n }\r\n }, [state.rawHeaderData, state.selectedBranch]);\r\n\r\n useEffect(() => {\r\n pullGridFilterList();\r\n }, [isAppReaload]);\r\n\r\n useEffect(() => {\r\n setState((st) => ({\r\n ...st,\r\n isShowScrollArrow: scrollbarVisible(WorkFlowBtnElementscrollWidth)\r\n }));\r\n }, [WindowWidths, WorkFlowBtnElementscrollWidth?.scrollWidth]);\r\n\r\n const handleBtnClcik = (val) => {\r\n props.history.push(`/Job/${val.headerRecordID}/${val.workflowID}`);\r\n };\r\n\r\n const getbranchByOnchange = (val, params) => {\r\n setState((st) => ({\r\n ...st,\r\n selectedBranch: val,\r\n selectedWorkFlow: params\r\n }));\r\n };\r\n\r\n const handleAssignmentBtnClick = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n jobId: val.headerRecordID,\r\n showTechAssign: true\r\n }));\r\n };\r\n\r\n const editButton = (id, val) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n handleBtnClcik(val)}>\r\n \r\n \r\n \r\n \r\n {val.technicians && (\r\n state.currentWorkflowId == 8 && handleAssignmentBtnClick(val)}>\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const baseColumns = [\r\n {\r\n title: 'Action',\r\n field: '',\r\n renderer: editButton,\r\n width: 90,\r\n filterable: false\r\n },\r\n { field: 'wipNo', sortable: true, title: `${portalSettings.portalSettingGridWIPNoLabel || 'WIP No'}`, width: 70 },\r\n { field: 'registration', sortable: true, title: `${portalSettings.portalSettingGridVehicleRegLabel || 'Vehicle Reg'}`, width: 90 },\r\n { field: 'makeModel', sortable: true, title: `${portalSettings.portalSettingGridModelLabel || 'Model'}`, width: 200 },\r\n { field: 'customerName', sortable: true, title: `${portalSettings.portalSettingGridCustomerNameLabel || 'Customer Name'}`, width: 200 },\r\n {\r\n field: 'dateDueIn',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridDateDueInLabel || 'Date Due In'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n // flex: 0.6\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '';\r\n }\r\n },\r\n {\r\n field: 'dateDueOut',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridDateDueOutLabel || 'Date Due Out'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueOut != null) {\r\n return moment(record.dateDueOut).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '';\r\n }\r\n },\r\n { field: 'returnReason', sortable: true, title: `${portalSettings.portalSettingGridReturnReasonLabel || 'Return Reason'}`, width: 190 },\r\n // { field: 'chassisNumber', sortable: true,title: 'Chassis Number', },\r\n { field: 'branchShortName', sortable: true, title: `${portalSettings.portalSettingGridBranchLabel || 'Branch'}`, width: 120 },\r\n { field: 'franchiseName', sortable: true, title: `${portalSettings.portalSettingGridFranchiseLabel || 'Franchise'}`, width: 160 },\r\n { field: 'serviceText', sortable: true, title: `${portalSettings.portalSettingGridJobDescriptionLabel || 'Job Description'}`, width: 170 },\r\n { field: 'accountNo', sortable: true, title: `${portalSettings.portalSettingGridAccountLabel || 'Account'}`, width: 80 },\r\n { field: 'createdBy', sortable: true, title: `${portalSettings.portalSettingGridCreatedByLabel || 'Created By'}`, width: 120 },\r\n {\r\n field: 'assigned',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridAssignedDateLabel || 'Assigned Date'}`,\r\n width: 120,\r\n renderer: function (value, record) {\r\n if (record.assigned != null) {\r\n return moment(record.assigned).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '';\r\n }\r\n },\r\n {\r\n field: 'taken',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridTimeTakenLabel || 'Time Taken'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'status',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridStatusLabel || 'Status'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'assignedDays',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridAssignedDaysLabel || 'Assigned Days'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'owningOperator',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridOwningOperatorLabel || 'Owning Operator'}`,\r\n width: 100\r\n }\r\n ].map((c) => {\r\n let obj = {};\r\n if (c.title !== 'Action') {\r\n obj.events = {\r\n click: function (e) {\r\n props.history.push(`/Job/${e.data.record.headerRecordID}/${e.data.record.workflowID}`);\r\n }\r\n };\r\n if (Object.keys(state.tempObj).length > 0) {\r\n obj.hidden = !state.tempObj[config[c.field]?.from];\r\n } else {\r\n obj.hidden = false;\r\n }\r\n }\r\n return {\r\n ...c,\r\n ...obj,\r\n headerCssClass: 'gridHeader'\r\n };\r\n });\r\n\r\n const buttonClicked = async (btn, fromPage) => {\r\n // let tempData = {};\r\n let tempData = JSON.parse(localStorage.getItem('FiltterParams'));\r\n if (fromPage) {\r\n localStorage.setItem('FiltterParams', JSON.stringify({ returnReason: btn.returnReason, branchShortName: btn.branch, branchTime: btn.time }));\r\n } else {\r\n localStorage.setItem('FiltterParams', JSON.stringify({ branchShortName: tempData.branchShortName }));\r\n }\r\n localStorage.setItem('currentWorkflowId', btn.workflowID);\r\n history.push(`/dashgrid`);\r\n };\r\n\r\n const handleOpen = () => {\r\n let tempArr = [...baseColumns].map((q) => {\r\n return {\r\n field: q.field,\r\n title: q.title,\r\n hidden: !q.hidden,\r\n fieldName: config[q.field]?.to\r\n };\r\n });\r\n\r\n //.filter((p) => (p.fieldName !== undefined ? p : null));\r\n tempArr.push({\r\n field: 'pagination',\r\n title: 'Pagination',\r\n hidden: state.displayPagination,\r\n fieldName: 'UserGridColumnDisplayPagination'\r\n });\r\n\r\n setState((st) => ({ ...st, showFilter: true, filterList: tempArr }));\r\n };\r\n\r\n const closeDialog = (res) => {\r\n setState((st) => ({ ...st, showFilter: false, showTechAssign: false }));\r\n res && pullGridFilterList();\r\n };\r\n\r\n const closeTechAssignDialog = (res) => {\r\n setState((st) => ({ ...st, showTechAssign: false, isReload: res ? new Date() : null }));\r\n };\r\n\r\n return (\r\n
\r\n {state.showLoader ? (\r\n \r\n \r\n \r\n
\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n
\r\n {state.isShowScrollArrow && (\r\n scrollPrev()} className=\"ScrollArrow-Container\">\r\n \r\n \r\n )}\r\n
\r\n {state.tempHeaderRecord.map((m, i) => {\r\n return (\r\n
\r\n buttonClicked(m)}\r\n >\r\n \r\n {m?.workflow}\r\n
{m?.total}
\r\n
\r\n \r\n
\r\n );\r\n })}\r\n
\r\n buttonClicked({ workflowID: 'All' })}\r\n >\r\n \r\n Total\r\n
{state.sumOfAllWorkflows}
\r\n
\r\n \r\n
\r\n \r\n {state.isShowScrollArrow && (\r\n scrollNext()} className=\"ScrollArrow-Container\">\r\n \r\n \r\n )}\r\n \r\n \r\n
\r\n )}\r\n {state.showFilter ? (\r\n closeDialog(false)}>\r\n \r\n \r\n ) : null}\r\n {state.showTechAssign ? (\r\n closeTechAssignDialog(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nexport default Dashbord;\r\n","import { Breadcrumbs, Typography } from '@material-ui/core';\r\nimport { Link } from 'react-router-dom';\r\nimport React from 'react';\r\n\r\nconst BreadCrumbs = (props) => {\r\n return (\r\n >\" aria-label=\"breadcrumb\">\r\n {props.crumbs\r\n ? props.crumbs.map((crumb, i) => {\r\n return (\r\n
\r\n {crumb.active ? (\r\n {crumb.name}\r\n ) : (\r\n \r\n {crumb.name}\r\n \r\n )}\r\n
\r\n );\r\n })\r\n : null}\r\n
\r\n );\r\n};\r\n\r\nexport default BreadCrumbs;\r\n","import {get, post } from './http-calls';\r\n\r\nexport const addPortalSettings = async (data) => {\r\n let res = await post('PortalSetting', data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getPortalSettings = async() => {\r\n let res = await get(`PortalSetting`, { useAuthToken: true });\r\n return res;\r\n};","import React, { useState } from 'react';\r\nimport { CKEditor } from '@ckeditor/ckeditor5-react';\r\nimport ClassicEditor from '@ckeditor/ckeditor5-build-classic';\r\n\r\nexport const CustomeEditor = (props) => {\r\n return ;\r\n};\r\n\r\nexport default CustomeEditor;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getCommunicatorVehicleStatus = async () => {\r\n let res = await get('/api/communicatorvehcile', { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const setCommunicatorVehicleStatus = async (VehicleStatusCode, VehicleStatusSMSText, VehicleStatusSendSMSUpdate) => {\r\n let res = await post(\r\n `/api/communicatorvehcile`,\r\n {\r\n VehicleStatusCode: VehicleStatusCode,\r\n VehicleStatusSMSText: VehicleStatusSMSText,\r\n VehicleStatusSendSMSUpdate: VehicleStatusSendSMSUpdate\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const getCommunicatorBranches = async () => {\r\n let res = await get('/api/communicatorbranch', { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getCommunicatorBranch = async (id) => {\r\n let res = await get(`/api/communicatorbranch/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const setCommunicatorBranch = async (\r\n branchID,\r\n branchOverdueEmail,\r\n branchTechnicalAssistanceEmail,\r\n branchPartStatusEmail,\r\n branchWorkshopDiaryEmail,\r\n branchFeedbackEmailAddress,\r\n branchUrgentActionEmailAddress,\r\n branchJobApprovedEmail,\r\n branchCollectionStatusEmail,\r\n branchCashCustomerMessage\r\n) => {\r\n let res = await post(\r\n `/api/communicatorbranch`,\r\n {\r\n branchID: branchID,\r\n branchOverdueEmail: branchOverdueEmail,\r\n branchTechnicalAssistanceEmail: branchTechnicalAssistanceEmail,\r\n branchPartStatusEmail: branchPartStatusEmail,\r\n branchWorkshopDiaryEmail: branchWorkshopDiaryEmail,\r\n branchFeedbackEmailAddress: branchFeedbackEmailAddress,\r\n branchUrgentActionEmailAddress: branchUrgentActionEmailAddress,\r\n branchJobApprovedEmail: branchJobApprovedEmail,\r\n branchCollectionStatusEmail: branchCollectionStatusEmail,\r\n branchCashCustomerMessage: branchCashCustomerMessage\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const getCalendarBookings = async (branchId, month, year) => {\r\n let res = await get(`/api/CommunicatorBranch/GetBookingsByBranchMonthYear?BranchID=${branchId}&Month=${month}&Year=${year}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\n// <---------Admin---------->\r\n\r\nexport const getBranchParametersScreenDropdown = async () => {\r\n let res = await get(`BranchParameters/ScreenDropdown`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const GetApprovedDetails = async (HeaderId) => {\r\n let res = await get(`VehicleStatus/GetApprovedDetails?HeaderId=${HeaderId}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBranchParametersById = async (BranchID) => {\r\n let res = await get(`BranchParameters/${BranchID}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postBranchParameters = async (data) => {\r\n let res = await post(`BranchParameters`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getAdminDropDown = async () => {\r\n let res = await get(`CustomerGroups/ScreenDropDown`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getNotificationGroupsById = async (id) => {\r\n let res = await get(`CustomerGroups/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postNotificationGroups = async (data) => {\r\n let res = await post(`CustomerGroups`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getCommunicatorSmsStatus = async (id) => {\r\n let res = await get(`VehicleStatus/GetVehicleSMSStatus`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postCommunicatorSms = async (data) => {\r\n let res = await post(`VehicleStatus/UpdateVehicleSMSStatus`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const postCommunicatorAddActionLog = async (data) => {\r\n let res = await post(`Communicators/LogAddUpdate`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getActionLogByID = async (id) => {\r\n let res = await get(`Communicators/Log/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getStatusDropdown = async (CurrentStatus) => {\r\n let res = await get(`VehicleStatus/ScreenDropDown?CurrentStatus=${CurrentStatus}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postVehicleStatus = async (data) => {\r\n let res = await post(`VehicleStatus/update`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getVehicleStatusID = async (id) => {\r\n let res = await get(`VehicleStatus?HeaderRecordID=${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getActionLogHistory = async (id) => {\r\n let res = await get(`Communicators/GetLogHistory/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressSetVehicleArrivedStatus = async (data) => {\r\n let res = await post(`vehiclestatus/JobProgressSetVehicleArrivedStatus`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressSetReBookingStatus = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressSetReBookingStatus`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressInWorkshop = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressInWorkshop`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressWaitingSubWork = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressWaitingSubWorkVM`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressAWaitingPart = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressAWaitingPart`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressAwaitingAuthority = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressAwaitingAuthority`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressWorkCompleted = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressWorkCompleted`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressChekedOut = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressChekedOut`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressApprovedByCustomer = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressApprovedByCustomer`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressAWaitingQC = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressAWaitingQC`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressSetCollectedStatus = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressSetCollectedStatus`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressCustomerInformed = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressCustomerInformed`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postUpdateVehicleStatusToRebooked = async (data) => {\r\n let res = await post(`VehicleStatus/UpdateVehicleStatusToRebooked `, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postJobProgressOtherStatus = async (data) => {\r\n let res = await post(`VehicleStatus/JobProgressOtherStatus`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postBookingRequested = async (data) => {\r\n let res = await post(`CommunicatorBookingRequest/BookingRequested`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getCommunicatorBookingRequestScreenDropDown = (wipNo) => {\r\n let res = get(`CommunicatorBookingRequest/ScreenDropDown`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBookingRequest = (id) => {\r\n let res = get(`CommunicatorBookingRequest/BookingRequest/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postBookingReSchedule = async (data) => {\r\n let res = await post(`CommunicatorBookingRequest/BookingReSchedule`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const postBookingCancel = async (data) => {\r\n let res = await post(`CommunicatorBookingRequest/BookingCancel`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const postBookingAccept = async (data) => {\r\n let res = await post(`CommunicatorBookingRequest/BookingAccept`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postBookingRequestStatus = async (data) => {\r\n let res = await post(`CommunicatorBookingRequest/UpdateBookingRequestStatus`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import {get, post } from './http-calls';\r\n\r\nexport const addVideoCategory = async(VideoCategoryID, VideoCategoryDescription, VideoCategoryActive, RoleID) => {\r\n let res = await post(`VideoCategories`, {\r\n VideoCategoryID: VideoCategoryID,\r\n VideoCategoryDescription: VideoCategoryDescription,\r\n VideoCategoryActive: VideoCategoryActive,\r\n RoleID: RoleID,\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const getVideoCategories = async () => {\r\n let res = await get(`VideoCategories`, \r\n { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getVideoCategory = async (VideoCategoryID) => {\r\n let res = await get(`VideoCategories/GetDetails?Id=${VideoCategoryID}`, \r\n { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getRoles = async () => {\r\n let res = await get(`VideoCategories/GetDetails`, \r\n { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const addVideo = async(VideoID, VideoTitle, VideoURL, VideoCategoryID, VideoActive, VideoThumbnail ) => {\r\n let res = await post(`Videos`, {\r\n VideoID: VideoID,\r\n VideoTitle: VideoTitle,\r\n VideoURL: VideoURL,\r\n VideoCategoryID: VideoCategoryID,\r\n VideoActive: VideoActive,\r\n VideoThumbnail: VideoThumbnail,\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const getVideos = async () => {\r\n let res = await get(`Videos?Active=true`, \r\n { useAuthToken: true });\r\n return res;\r\n};\r\n","import { IconButton, Typography } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport React, { useContext, useEffect, useState } from \"react\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { DialogContents, Dialogs } from \"../../../Core/FormInput\";\r\nimport { Breadcrumbs } from \"@material-ui/core\";\r\nimport { Link } from \"react-router-dom\";\r\n\r\nconst VideosModal = (props) => {\r\n const videoDetails = props.videoDetails;\r\n\r\n const handleClose = () => {\r\n props.closeFunc();\r\n };\r\n\r\n const getLink = (URL) => {\r\n if (!URL.includes(\"youtube.com\")) {\r\n return URL;\r\n }\r\n if (URL.includes(\"youtube.com\") && !URL.includes(\"/embed/\")) {\r\n return \"https://www.youtube.com/embed/\" + URL.split(\"?v=\")[1]\r\n }\r\n return URL;\r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Videos\r\n \r\n \r\n {videoDetails.videoTitle}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default VideosModal;","import React, { useEffect, useState } from 'react';\r\nimport { Breadcrumbs } from '@material-ui/core';\r\nimport { Link } from 'react-router-dom';\r\nimport { Typography } from '@material-ui/core';\r\nimport { Grid } from '@material-ui/core';\r\nimport { getVideos, getVideoCategories } from '../../../Core/Service/video-service';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { useContext } from 'react';\r\nimport VideosModal from './videosModal';\r\n\r\nconst Videos = (props) => {\r\n const [state, setState] = useState({\r\n videoCategories: [],\r\n focusedVideo: {},\r\n show: false,\r\n showLoader: true,\r\n });\r\n\r\n const { userRoles } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullVideos();\r\n }, []);\r\n\r\n const getThumbnail = (video) => {\r\n if (video.videoThumbnail) {\r\n return video.videoThumbnail?.includes('base64') ? video.videoThumbnail : 'data:image/png;base64,' + video.videoThumbnail;\r\n }\r\n const URL = video.videoURL;\r\n if (URL.includes('/embed/')) {\r\n return 'http://i3.ytimg.com/vi/' + URL.split('/embed/')[1] + '/maxresdefault.jpg';\r\n }\r\n if (URL.includes('?v=')) {\r\n return 'http://i3.ytimg.com/vi/' + URL.split('?v=')[1] + '/maxresdefault.jpg';\r\n }\r\n };\r\n\r\n const pullVideos = async () => {\r\n let categoriesRes = await getVideoCategories();\r\n let videosRes = await getVideos();\r\n let videos = [];\r\n\r\n if (categoriesRes.success && videosRes.success) {\r\n categoriesRes.data.list.map((row) => {\r\n if (row.roles.includes(userRoles)) {\r\n videos.push({ id: row.videoCategoryID, description: row.videoCategoryDescription, videos: [] });\r\n }\r\n });\r\n\r\n videosRes.data.list.map((row) => {\r\n videos.map((roleCat) => {\r\n if (row.videoCategoryID == roleCat.id) {\r\n roleCat.videos.push(row);\r\n }\r\n });\r\n });\r\n\r\n setState((st) => ({\r\n ...st,\r\n videoCategories: videos,\r\n showLoader: false,\r\n }));\r\n }\r\n };\r\n\r\n const handleVideoClick = (video) => {\r\n setState((st) => ({\r\n ...st,\r\n focusedVideo: video,\r\n show: true\r\n }));\r\n };\r\n\r\n const handleClose = () => {\r\n setState((st) => ({\r\n ...st,\r\n show: false\r\n }));\r\n };\r\n\r\n return (\r\n
\r\n {state.show ? (\r\n <>\r\n \r\n \r\n ) : (\r\n <>\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Videos\r\n \r\n \r\n {state.showLoader && (\r\n \r\n Loading Videos\r\n \r\n )}\r\n \r\n {state.videoCategories.map((videoCat) => {\r\n return (\r\n <>\r\n \r\n \r\n {videoCat.description}\r\n \r\n \r\n\r\n {videoCat.videos.length > 0 ? (\r\n videoCat.videos.map((video) => {\r\n return (\r\n handleVideoClick(video)}\r\n >\r\n \r\n {video.videoTitle}\r\n \r\n );\r\n })\r\n ) : (\r\n \r\n There are no videos to display for this category.\r\n \r\n )}\r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n
\r\n );\r\n};\r\nexport default Videos;\r\n","import {get, post} from './http-calls';\r\nimport {memoize} from 'lodash'\r\n\r\nexport const getBranches = memoize(async () => {\r\n let res = await get('/Branches', { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getBranchDepartments = async(branch) => {\r\n let res = await get(`branchdepartments/${branch}`,\r\n { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const addUpdateDepartment = async(data) => {\r\n let res = await post(`branchdepartments`, data,\r\n { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const deleteDepartment = async(branch) => {\r\n let res = await post(`branchdepartments/delete/${branch}`, null,\r\n { useAuthToken: true });\r\n return res;\r\n}","import { get, post } from './http-calls';\r\nimport { memoize } from 'lodash';\r\nimport moment from 'moment';\r\n\r\nexport const getCustomer = memoize(async () => {\r\n let res = await get('/Customers', { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getCustomerDashboard = memoize(async () => {\r\n let res = await get('CustomerJobs/Dashboard', { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nconst downloadFileWithExt = async (res, fileExt) => {\r\n if (res) {\r\n const url = window.URL.createObjectURL(new Blob([res.data]));\r\n const link = document.getElementById('tempDownloadPDFLink') || document.createElement('a');\r\n link.id = 'tempDownloadPDFLink';\r\n link.href = url;\r\n link.setAttribute('download', `Customers ${moment().format('DD-MMM-YYYY HH:mm')}.${fileExt}`);\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n return true;\r\n }\r\n};\r\n\r\nexport const getCustomerExcelFile = async (params) => {\r\n let res = await get(`Customers/GetExcelDownload`, {\r\n responseType: 'blob',\r\n returnOrgRes: true,\r\n useAuthToken: true\r\n });\r\n downloadFileWithExt(res, 'xlsx');\r\n};\r\n","import { get, post, put } from './http-calls';\r\n\r\nexport const getAllUsers = async () => {\r\n let res = await get('/users', { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getUser = async (data) => {\r\n let res = await get(`/users/${data}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getScreenDropdown = async () => {\r\n let res = await get(`/ScreenDropdown`, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const Adduser = async (data) => {\r\n let res = await post('/register', data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const UpdateUser = async (data) => {\r\n let res = await put(`/users/${data.id}`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const ResetPassByAdmin = async (userId, newpassword, confirm) => {\r\n let res = await post(\r\n `/overwritePassword/${userId}`,\r\n {\r\n newPassword: newpassword,\r\n confirmPassword: confirm\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n","import { Dialog, DialogActions, DialogContent, DialogTitle } from \"@material-ui/core\";\r\nimport React from \"react\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\n\r\nconst closeIconStyle = {\r\n marginRight: 7\r\n};\r\nlet DialogComp = ({ title, children, footer, onClose, maxWidth = \"sm\", overflow = \"hidden\", height = \"none\",...rest }) => {\r\n return (\r\n <>\r\n \r\n \r\n {title && {title}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {children}\r\n {footer && {footer}}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default DialogComp;\r\n","import React, { useEffect } from 'react';\r\nimport { Tabs, Tab, Box, Grid } from '@material-ui/core';\r\nimport AppBar from '@material-ui/core/AppBar';\r\nimport { makeStyles, useTheme } from '@material-ui/core/styles';\r\nimport DialogComp from '../Dialog/DialogComp';\r\nimport { SecondaryButton, PrimaryButton } from '../../FormInput';\r\n\r\nconst ShowWarningComponent = (props) => {\r\n return (\r\n \r\n \r\n \r\n Yes\r\n \r\n \r\n \r\n props.onClose(false)}>\r\n No\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n tab: {\r\n justifyContent: 'center',\r\n flexGrow: '0',\r\n '&.MuiTab-root': {\r\n fontSize: (props) => (props.tabLableSize ? `${props.tabLableSize} !important` : '0.8rem !important'),\r\n padding: '8px 13px !important',\r\n textTransform: 'none !important',\r\n fontWeight: (props) => (props.tabLableWeight ? `${props.tabLableWeight} !important` : '300 !important')\r\n }\r\n }\r\n}));\r\n\r\nconst tabStyle = {\r\n boxShadow: '0px 1px rgba(0, 0, 0, 0.4)',\r\n tabWidth: { minWidth: 'auto' }\r\n};\r\n\r\nconst getTabAndPanelId = (controlId, index) => {\r\n const id = controlId || 'dummy_tab';\r\n return {\r\n tabId: `${id}_${index}`,\r\n panelId: `${id}_tab_body_${index}`\r\n };\r\n};\r\n\r\nfunction TabPanel(props) {\r\n const { children, selectedTabIndex, index, controlId } = props;\r\n let { tabId, panelId } = getTabAndPanelId(controlId, index);\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport default function TabComponent(props) {\r\n const classes = useStyles(props);\r\n const [state, setState] = React.useState({\r\n selectedIndex: undefined,\r\n mySelectedIndex: undefined,\r\n tabList: []\r\n });\r\n useEffect(() => {\r\n setState((st) => ({ ...st, selectedIndex: props.selectedIndex }));\r\n }, [props.selectedIndex, props.timeDependency]);\r\n useEffect(() => {\r\n if (props.tabList) {\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst.tabList = [...props.tabList];\r\n if (nst.selectedIndex !== undefined) {\r\n if (nst.selectedIndex >= nst.tabList.length) {\r\n nst.selectedIndex = nst.tabList - 1;\r\n }\r\n } else if (nst.tabList.length) {\r\n nst.selectedIndex = 0;\r\n } else {\r\n nst.selectedIndex = undefined;\r\n }\r\n return nst;\r\n });\r\n }\r\n }, [props.tabList, state.selectedIndex]);\r\n\r\n const handleChange = (event, newValue) => {\r\n if (props.showWarning) {\r\n setState((st) => ({ ...st, showWarningModal: true, mySelectedIndex: newValue }));\r\n } else setState((st) => ({ ...st, selectedIndex: newValue }));\r\n };\r\n\r\n const closeModal = () => {\r\n setState((st) => ({ ...st, showWarningModal: false }));\r\n };\r\n\r\n const discardModal = () => {\r\n setState((st) => ({ ...st, selectedIndex: state.mySelectedIndex, showWarningModal: false }));\r\n };\r\n\r\n return (\r\n
\r\n \r\n {state.tabList.map((m, i) => {\r\n let { tabId, panelId } = getTabAndPanelId(props.id, i);\r\n return ;\r\n })}\r\n \r\n {state.tabList.map((m, i) => {\r\n return (\r\n \r\n {m.body}\r\n \r\n );\r\n })}\r\n\r\n {state.showWarningModal ? (\r\n closeModal(false)} fullWidth maxWidth=\"sm\">\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n}\r\n","import { Grid, FormLabel, FormControlLabel } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { YesNoButton, Multiselect, PrimaryCheckbox } from '../../../Core/FormInput';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { useContext } from 'react';\r\n\r\nexport default function EwipModules(props) {\r\n const { handleClick, state, handleCheckbox, selectedData, masterData, AutoWorkChange } = props;\r\n const { portalSettings } = useContext(AppContext);\r\n return (\r\n
\r\n \r\n \r\n
\r\n {/* workflow-start */}\r\n \r\n }\r\n label=\"eWIP Allowed?\"\r\n />\r\n \r\n \r\n }\r\n label=\"All Workflows\"\r\n />\r\n \r\n {!state.allworkflow ? (\r\n \r\n ) : null}\r\n {/* workflow-end */}\r\n
\r\n
\r\n \r\n \r\n \r\n Can Override Mandatory Steps?\r\n \r\n \r\n handleClick('canOverrideMandatorySteps', true)}\r\n onNoClick={() => handleClick('canOverrideMandatorySteps', false)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Assign Jobs to Auditor?\r\n \r\n \r\n handleClick('canAssignJobsToAuditor', false)}\r\n onYesClick={() => handleClick('canAssignJobsToAuditor', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Return Jobs From Last Workflow?\r\n \r\n \r\n handleClick('canReturnJobsFromLastWorkflow', false)}\r\n onYesClick={() => handleClick('canReturnJobsFromLastWorkflow', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Delete Documents?\r\n \r\n \r\n handleClick('canDeleteDocuments', false)}\r\n onYesClick={() => handleClick('canDeleteDocuments', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Reset Password?\r\n \r\n \r\n handleClick('canResetPassword', false)}\r\n onYesClick={() => handleClick('canResetPassword', true)}\r\n />\r\n \r\n \r\n {state.userType == 'internal' && (\r\n \r\n \r\n Can Assign Job Priority?\r\n \r\n \r\n handleClick('canAssignJobPriority', false)}\r\n onYesClick={() => handleClick('canAssignJobPriority', true)}\r\n />\r\n \r\n \r\n )}\r\n {state.userType == 'internal' && (\r\n \r\n \r\n Can Assign Customer Rating?\r\n \r\n \r\n handleClick('canSetCustomerRating', false)}\r\n onYesClick={() => handleClick('canSetCustomerRating', true)}\r\n />\r\n \r\n \r\n )}\r\n {state.userType == 'internal' && (\r\n \r\n \r\n Can Assign Technician?\r\n \r\n \r\n handleClick('canAssignTechnician', false)}\r\n onYesClick={() => handleClick('canAssignTechnician', true)}\r\n />\r\n \r\n \r\n )}\r\n\r\n {(state.userType == 'internal' && portalSettings.portalSettingSpecialEquipmentEnabled) && (\r\n \r\n \r\n Special Equipment Allowed?\r\n \r\n \r\n handleClick('specialEquipmentAllowed', false)}\r\n onYesClick={() => handleClick('specialEquipmentAllowed', true)}\r\n />\r\n \r\n \r\n )}\r\n\r\n \r\n \r\n Can Amend To Do List?\r\n \r\n \r\n handleClick('canAmendToDoList', false)}\r\n onYesClick={() => handleClick('canAmendToDoList', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Amend Tech Write Up?\r\n \r\n \r\n handleClick('canAmendTechWriteUp', false)}\r\n onYesClick={() => handleClick('canAmendTechWriteUp', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Amend Job Notes?\r\n \r\n \r\n handleClick('canAmendJobNotes', false)}\r\n onYesClick={() => handleClick('canAmendJobNotes', true)}\r\n />\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n","import { Grid, FormLabel, FormControlLabel, InputLabel } from '@material-ui/core';\r\nimport React from 'react';\r\nimport TabView from '../../../Core/Controls/Tabs';\r\nimport { SecondaryCheckbox, Multiselect, SelectBox } from '../../../Core/FormInput';\r\nimport EwipModules from './ewipModule';\r\n\r\nexport default function UserModules(props) {\r\n const { state, handleCheckbox, AutoFranchiseChange, selectedData, franchiseData, portalSettings } = props;\r\n const tabs = [\r\n ...(portalSettings.portalSettingeWIPEnabled\r\n ? [\r\n {\r\n label: 'eWIP',\r\n body: (\r\n
\r\n \r\n
\r\n )\r\n }\r\n ]\r\n : []),\r\n ...(portalSettings.portalSettingReportingEnabled && state.userType == 'internal'\r\n ? [\r\n {\r\n label: 'Reporting',\r\n body: (\r\n \r\n \r\n \r\n Reporting Access\r\n \r\n \r\n \r\n }\r\n label=\"Reporting Allowed?\"\r\n />\r\n \r\n \r\n }\r\n label=\"Budget Allowed?\"\r\n />\r\n \r\n \r\n }\r\n label=\"Aged Measure?\"\r\n />\r\n } label=\"DOC\" />\r\n }\r\n label=\"KPIs\"\r\n />\r\n }\r\n label=\"Parts\"\r\n />\r\n }\r\n label=\"Sales\"\r\n />\r\n }\r\n label=\"Service\"\r\n />\r\n }\r\n label=\"Workshop\"\r\n />\r\n \r\n \r\n )\r\n }\r\n ]\r\n : []),\r\n ...(portalSettings.portalSettingCommunicatorEnabled\r\n ? [\r\n {\r\n label: 'Communicator ',\r\n body: (\r\n \r\n \r\n }\r\n label=\"Communicator Allowed?\"\r\n />\r\n \r\n {state.userType === 'customer' && (\r\n \r\n \r\n Customer Groups\r\n \r\n \r\n \r\n )}\r\n \r\n )\r\n }\r\n ]\r\n : []),\r\n ...(portalSettings.portalSettingInvoiceEnabled\r\n ? [\r\n {\r\n label: 'Invoice ',\r\n body: (\r\n \r\n \r\n }\r\n label=\"Invoice Allowed?\"\r\n />\r\n \r\n \r\n )\r\n }\r\n ]\r\n : [])\r\n ];\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormControl from '@material-ui/core/FormControl';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport Radio from '@material-ui/core/Radio';\r\nimport RadioGroup from '@material-ui/core/RadioGroup';\r\nimport AppContext from '../../../App/AppContext';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\nimport {\r\n TextBox,\r\n PasswordBox,\r\n SecondaryButton,\r\n PrimaryCheckbox,\r\n DialogContents,\r\n DialogTitles,\r\n DialogsActions,\r\n Dialogs,\r\n SecondaryCheckbox,\r\n Multiselect,\r\n MultiselectWithoutCheckbox,\r\n YesNoButton,\r\n SelectBox\r\n} from '../../../Core/FormInput';\r\nimport { getWorkflows } from '../../../Core/Service/workflow-service';\r\nimport { getBranches } from '../../../Core/Service/branches-service';\r\nimport { getCustomer } from '../../../Core/Service/customer-services';\r\nimport { Adduser, UpdateUser, getUser, getScreenDropdown } from '../../../Core/Service/admin-service';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { Checkbox, IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport UserModules from './userModules';\r\n\r\nconst AddUserModal = (props) => {\r\n const { hideModal, showToast, portalSettings, userRoles } = useContext(AppContext);\r\n const [masterData, setMasterData] = useState({\r\n workflows: []\r\n });\r\n\r\n const [brancheData, setbrancheData] = useState({\r\n branches: []\r\n });\r\n\r\n const [processData, setprocessData] = useState({\r\n processes: []\r\n });\r\n\r\n const [moduleData, setmoduleData] = useState({\r\n modules: [\r\n { name: 'eWIP', id: 'eWIP' },\r\n { name: 'Reporting', id: 'Reporting' },\r\n { name: 'Communicator', id: 'Communicator' }\r\n ]\r\n });\r\n\r\n const [franchiseData, setFranchisesData] = useState({\r\n franchises: []\r\n });\r\n\r\n const [customerData, setcustomerData] = useState({\r\n customers: []\r\n });\r\n\r\n const [custmerGroup, setCustomerGroup] = useState([]);\r\n\r\n const [selectedData, setSelectedData] = useState({\r\n customers: [],\r\n workflows: [],\r\n branches: [],\r\n processes: [],\r\n modules: [],\r\n franchises: []\r\n });\r\n\r\n const [state, setState] = useState({\r\n userType: '',\r\n email: '',\r\n name: '',\r\n phone: '',\r\n password: '',\r\n confirm: '',\r\n enableChange: false,\r\n allbranch: false,\r\n allprocess: false,\r\n allcust: false,\r\n allworkflow: false,\r\n isActive: true,\r\n isLocked: false,\r\n customer: [],\r\n workflow: [],\r\n branches: [],\r\n processes: [],\r\n doc_id: '',\r\n canOverrideMandatorySteps: false,\r\n canAssignJobsToAuditor: false,\r\n canReturnJobsFromLastWorkflow: false,\r\n canDeleteDocuments: false,\r\n canResetPassword: false,\r\n canAssignTechnician: false,\r\n canAssignJobPriority: false,\r\n franchises: [],\r\n isAgedMeasure: false,\r\n isDOC: false,\r\n isKPIs: false,\r\n isParts: false,\r\n isSales: false,\r\n isService: false,\r\n isWorkShop: false,\r\n eWIPAllowed: false,\r\n specialEquipmentAllowed: false,\r\n canAmendToDoList: false,\r\n canAmendTechWriteUp: false,\r\n canAmendJobNotes: false,\r\n canSetCustomerRating: false,\r\n eReportingAllowed: false,\r\n eCommunicatorAllowed: false,\r\n eInvoiceAllowed: false,\r\n isBudgetDashboard: false,\r\n userCustomerGroupID: null,\r\n sendEmailFromOwnEmail: false,\r\n canAccessBudget: false,\r\n defaultInternalDashboard: null\r\n });\r\n\r\n const user = props.users;\r\n\r\n useEffect(() => {\r\n if (user) {\r\n const selectedfranchises = franchiseData.franchises.filter((w) => state.franchises.indexOf(w.id) > -1);\r\n const selectedCust = customerData.customers.filter((w) => state.customer.indexOf(w.id) > -1);\r\n const selectedWorkflows = masterData.workflows.filter((w) => state.workflow.indexOf(w.id) > -1);\r\n const selectedBranches = brancheData.branches.filter((w) => state.branches.indexOf(w.id) > -1);\r\n const selectedProcesses = processData.processes.filter((w) => state.processes.indexOf(w.id) > -1);\r\n\r\n setSelectedData((st) => ({\r\n ...st,\r\n customers: selectedCust,\r\n workflows: selectedWorkflows,\r\n branches: selectedBranches,\r\n processes: selectedProcesses,\r\n franchises: selectedfranchises\r\n }));\r\n\r\n if (customerData.customers.length > 0 && customerData.customers === selectedCust.length) {\r\n setState((st) => ({ ...st, allcust: true }));\r\n }\r\n\r\n if (masterData.workflows.length > 0 && masterData.workflows.length === selectedWorkflows.length) {\r\n setState((st) => ({ ...st, allworkflow: true }));\r\n }\r\n\r\n if (brancheData.branches.length > 0 && brancheData.branches.length === selectedBranches.length) {\r\n setState((st) => ({ ...st, allbranch: true }));\r\n }\r\n\r\n if (processData.processes.length > 0 && processData.processes.length === selectedProcesses.length) {\r\n setState((st) => ({ ...st, allprocess: true }));\r\n }\r\n }\r\n }, [\r\n state.franchises,\r\n state.branches,\r\n state.processes,\r\n state.workflow,\r\n state.customer,\r\n masterData.workflows,\r\n brancheData.branches,\r\n processData.processes,\r\n customerData.customers,\r\n franchiseData.franchises\r\n ]);\r\n\r\n function updateDashboardList(portalSettings) {\r\n const updatedList = [];\r\n if (portalSettings.portalSettingeWIPEnabled) {\r\n updatedList.push({ id: 1, name: 'eWIP' });\r\n }\r\n if (portalSettings.portalSettingReportingEnabled) {\r\n updatedList.push({ id: 2, name: 'Reporting' });\r\n }\r\n if (portalSettings.portalSettingInvoiceEnabled) {\r\n updatedList.push({ id: 3, name: 'Invoices' });\r\n }\r\n if (portalSettings.portalSettingCommunicatorEnabled) {\r\n updatedList.push({ id: 4, name: 'Communicator' });\r\n }\r\n setState((st) => ({ ...st, DashboardList: updatedList }));\r\n }\r\n\r\n useEffect(async () => {\r\n let respo = await getScreenDropdown();\r\n if (respo.success) {\r\n const workflows = respo?.data?.workflows\r\n .filter((w) => !w.isTechnicianWorkflow)\r\n .map((w) => ({\r\n ...w\r\n }));\r\n const customerGroup = respo?.data?.customerGroups;\r\n const branches = respo?.data?.branches;\r\n const processes = respo?.data?.processes;\r\n const customers = respo?.data?.customers;\r\n setMasterData((st) => ({ ...st, workflows }));\r\n setbrancheData((st) => ({ ...st, branches }));\r\n setprocessData((st) => ({ ...st, processes }));\r\n setcustomerData((st) => ({ ...st, customers }));\r\n setFranchisesData((st) => ({ ...st, franchises: respo?.data?.franchiseCode }));\r\n setCustomerGroup(customerGroup);\r\n }\r\n updateDashboardList(portalSettings);\r\n if (user) {\r\n let result = await getUser(user.id);\r\n const updatedUser = result.data;\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n franchises: updatedUser.franchisesCode,\r\n doc_id: updatedUser.id,\r\n name: updatedUser.displayName,\r\n phone: updatedUser.phoneNo,\r\n email: updatedUser.email,\r\n userType: updatedUser.userRole,\r\n isActive: updatedUser.isActive,\r\n isLocked: updatedUser.isLocked,\r\n enableChange: true,\r\n workflow: updatedUser.workflowIds,\r\n branches: updatedUser.branchIds,\r\n processes: updatedUser.processIds,\r\n customer: updatedUser.customerIds,\r\n canOverrideMandatorySteps: updatedUser.canOverrideMandatorySteps,\r\n canAssignJobsToAuditor: updatedUser.canAssignJobsToAuditor,\r\n canReturnJobsFromLastWorkflow: updatedUser.canReturnJobsFromLastWorkflow,\r\n canDeleteDocuments: updatedUser.canDeleteDocuments,\r\n canResetPassword: updatedUser.canResetPassword,\r\n canAssignJobPriority: updatedUser.canAssignJobPriority,\r\n canAssignTechnician: updatedUser.canAssignTechnician,\r\n canSetCustomerRating: updatedUser.canSetCustomerRating,\r\n isAgedMeasure: updatedUser.isAgedMeasure,\r\n isDOC: updatedUser.isDOC,\r\n isKPIs: updatedUser.isKPIs,\r\n isParts: updatedUser.isParts,\r\n isSales: updatedUser.isSales,\r\n isService: updatedUser.isService,\r\n isWorkShop: updatedUser.isWorkShop,\r\n eWIPAllowed: updatedUser.eWIPAllowed,\r\n specialEquipmentAllowed: updatedUser.specialEquipmentAllowed,\r\n canAmendToDoList: updatedUser.canAmendToDoList,\r\n canAmendTechWriteUp: updatedUser.canAmendTechWriteUp,\r\n canAmendJobNotes: updatedUser.canAmendJobNotes,\r\n eReportingAllowed: updatedUser.eReportingAllowed,\r\n eCommunicatorAllowed: updatedUser.eCommunicatorAllowed,\r\n eInvoiceAllowed: updatedUser.eInvoiceAllowed,\r\n isBudgetDashboard: updatedUser.isBudgetDashboard,\r\n userCustomerGroupID: updatedUser.userCustomerGroupID,\r\n sendEmailFromOwnEmail: updatedUser.sendEmailFromOwnEmail,\r\n canAccessBudget: updatedUser.canAccessBudget,\r\n defaultInternalDashboard: updatedUser.defaultInternalDashboard\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const handleSubmit = async (e) => {\r\n let commonData = {\r\n id: state.doc_id || null,\r\n displayName: state.name,\r\n email: state.email,\r\n phone: state.phone,\r\n isLocked: state.isLocked,\r\n isActive: state.isActive,\r\n userRole: state.userType,\r\n sendEmailFromOwnEmail: state.sendEmailFromOwnEmail,\r\n processIds: state.processes\r\n };\r\n\r\n let nicolReportDefaultFlag = {\r\n canAccessBranchOverview: false,\r\n canAccessSalesProfitAndLoss: false,\r\n canAccessAfterSalesProfitAndLoss: false,\r\n canAccessProfitAndLossDetail: false,\r\n canAccessUsedStockValuation: false,\r\n canAccessUsedVehicleStock: false,\r\n canAccessAgedVehicleStock: false,\r\n canAccessOveragePriorityList: false,\r\n canAccessSalesReporting: false\r\n };\r\n\r\n let customData = {\r\n admin: {\r\n ...commonData,\r\n branchIds: [],\r\n customerIds: [],\r\n workflowIds: [],\r\n canOverrideMandatorySteps: false,\r\n canAssignJobsToAuditor: false,\r\n canReturnJobsFromLastWorkflow: false,\r\n canResetPassword: false,\r\n canAssignJobPriority: false,\r\n canAssignTechnician: false,\r\n canDeleteDocuments: false,\r\n canSetCustomerRating: false,\r\n specialEquipmentAllowed: false,\r\n canAmendToDoList: false,\r\n canAmendTechWriteUp: false,\r\n canAmendJobNotes: false,\r\n isAgedMeasure: false,\r\n isDOC: false,\r\n isKPIs: false,\r\n isParts: false,\r\n isSales: false,\r\n isService: false,\r\n isWorkShop: false,\r\n franchisesCode: [],\r\n eWIPAllowed: false,\r\n eReportingAllowed: false,\r\n eCommunicatorAllowed: false,\r\n eInvoiceAllowed: false,\r\n isBudgetDashboard: false, //state.isBudgetDashboard,\r\n userCustomerGroupID: null,\r\n canAccessBudget: false\r\n },\r\n auditor: {\r\n ...commonData,\r\n branchIds: [],\r\n customerIds: [],\r\n workflowIds: [],\r\n canOverrideMandatorySteps: false,\r\n canAssignJobsToAuditor: false,\r\n canReturnJobsFromLastWorkflow: false,\r\n canResetPassword: false,\r\n canAssignJobPriority: false,\r\n canAssignTechnician: false,\r\n canDeleteDocuments: false,\r\n canSetCustomerRating: false,\r\n specialEquipmentAllowed: false,\r\n canAmendToDoList: false,\r\n canAmendTechWriteUp: false,\r\n canAmendJobNotes: false,\r\n isAgedMeasure: false,\r\n isDOC: false,\r\n isKPIs: false,\r\n isParts: false,\r\n isSales: false,\r\n isService: false,\r\n isWorkShop: false,\r\n franchisesCode: state.franchises,\r\n eWIPAllowed: false,\r\n eReportingAllowed: false,\r\n eCommunicatorAllowed: false,\r\n eInvoiceAllowed: false,\r\n isBudgetDashboard: false, //state.isBudgetDashboard,\r\n userCustomerGroupID: null,\r\n canAccessBudget: false\r\n },\r\n customer: {\r\n ...commonData,\r\n branchIds: [],\r\n customerIds: state.customer,\r\n workflowIds: state.workflow,\r\n canOverrideMandatorySteps: state.canOverrideMandatorySteps,\r\n canAssignJobsToAuditor: state.canAssignJobsToAuditor,\r\n canReturnJobsFromLastWorkflow: state.canReturnJobsFromLastWorkflow,\r\n canResetPassword: state.canResetPassword,\r\n canAssignJobPriority: false,\r\n canAssignTechnician: false,\r\n canSetCustomerRating: false,\r\n specialEquipmentAllowed: false,\r\n canAmendToDoList: false,\r\n canAmendTechWriteUp: false,\r\n canAmendJobNotes: false,\r\n canDeleteDocuments: state.canDeleteDocuments,\r\n isAgedMeasure: false,\r\n isDOC: false,\r\n isKPIs: false,\r\n isParts: false,\r\n isSales: false,\r\n isService: false,\r\n isWorkShop: false,\r\n franchisesCode: state.franchises,\r\n eWIPAllowed: state.eWIPAllowed,\r\n eReportingAllowed: false,\r\n eCommunicatorAllowed: state.eCommunicatorAllowed,\r\n eInvoiceAllowed: state.eInvoiceAllowed,\r\n isBudgetDashboard: false, //state.isBudgetDashboard,\r\n userCustomerGroupID: state.userCustomerGroupID,\r\n canAccessBudget: false,\r\n defaultInternalDashboard: state.defaultInternalDashboard\r\n },\r\n internal: {\r\n ...commonData,\r\n branchIds: state.branches,\r\n customerIds: [],\r\n workflowIds: state.workflow,\r\n canOverrideMandatorySteps: state.canOverrideMandatorySteps,\r\n canAssignJobsToAuditor: state.canAssignJobsToAuditor,\r\n canReturnJobsFromLastWorkflow: state.canReturnJobsFromLastWorkflow,\r\n canResetPassword: state.canResetPassword,\r\n canAssignJobPriority: state.canAssignJobPriority,\r\n canAssignTechnician: state.canAssignTechnician,\r\n canDeleteDocuments: state.canDeleteDocuments,\r\n canSetCustomerRating: state.canSetCustomerRating,\r\n isAgedMeasure: state.isAgedMeasure,\r\n isDOC: state.isDOC,\r\n isKPIs: state.isKPIs,\r\n isParts: state.isParts,\r\n isSales: state.isSales,\r\n isService: state.isService,\r\n isWorkShop: state.isWorkShop,\r\n franchisesCode: state.franchises,\r\n eWIPAllowed: state.eWIPAllowed,\r\n specialEquipmentAllowed: state.specialEquipmentAllowed,\r\n canAmendToDoList: state.canAmendToDoList,\r\n canAmendTechWriteUp: state.canAmendTechWriteUp,\r\n canAmendJobNotes: state.canAmendJobNotes,\r\n eReportingAllowed: state.eReportingAllowed,\r\n eCommunicatorAllowed: state.eCommunicatorAllowed,\r\n eInvoiceAllowed: state.eInvoiceAllowed,\r\n isBudgetDashboard: false, //state.isBudgetDashboard,\r\n userCustomerGroupID: state.userCustomerGroupID,\r\n canAccessBudget: state.canAccessBudget,\r\n defaultInternalDashboard: state.defaultInternalDashboard\r\n },\r\n technician: {\r\n ...commonData,\r\n branchIds: state.branches,\r\n customerIds: [],\r\n workflowIds: [],\r\n canOverrideMandatorySteps: state.canOverrideMandatorySteps,\r\n canAssignJobsToAuditor: false,\r\n canReturnJobsFromLastWorkflow: false,\r\n canResetPassword: false,\r\n canAssignJobPriority: state.canAssignJobPriority,\r\n canSetCustomerRating: state.canSetCustomerRating,\r\n canAmendToDoList: state.canAmendToDoList,\r\n canAmendTechWriteUp: state.canAmendTechWriteUp,\r\n canAmendJobNotes: state.canAmendJobNotes,\r\n specialEquipmentAllowed: false,\r\n canAssignTechnician: state.canAssignTechnician,\r\n canDeleteDocuments: state.canDeleteDocuments,\r\n isAgedMeasure: false,\r\n isDOC: false,\r\n isKPIs: false,\r\n isParts: false,\r\n isSales: false,\r\n isService: false,\r\n isWorkShop: false,\r\n franchisesCode: state.franchises,\r\n eWIPAllowed: true,\r\n eReportingAllowed: false,\r\n eCommunicatorAllowed: false,\r\n eInvoiceAllowed: false,\r\n isBudgetDashboard: false, //state.isBudgetDashboard,\r\n userCustomerGroupID: null,\r\n canAccessBudget: false\r\n }\r\n };\r\n\r\n let data = {\r\n ...commonData,\r\n ...customData[`${state.userType}`],\r\n ...nicolReportDefaultFlag\r\n };\r\n\r\n let res = {};\r\n if (state.doc_id) {\r\n res = await UpdateUser(data);\r\n } else {\r\n data = { ...data, password: state.password, confirmPassword: state.confirm };\r\n res = await Adduser(data);\r\n }\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n };\r\n\r\n const AutoBrChange = (event, value) => {\r\n setSelectedData((st) => ({ ...st, branches: value }));\r\n setState((st) => {\r\n const nst = { ...st, branches: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const AutoPrChange = (event, value) => {\r\n setSelectedData((st) => ({ ...st, processes: value }));\r\n setState((st) => {\r\n const nst = { ...st, processes: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n // const AutoModuleChange = (event, value) => {\r\n // setSelectedData((st) => ({ ...st, modules: value }));\r\n // setState((st) => {\r\n // const nst = { ...st, modules: value.map((c) => c.id) };\r\n // return nst;\r\n // });\r\n // };\r\n\r\n const AutoFranchiseChange = (event, value) => {\r\n setSelectedData((st) => ({ ...st, franchises: value }));\r\n setState((st) => {\r\n const nst = { ...st, franchises: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const AutoCustChange = (event, value) => {\r\n setSelectedData((st) => ({ ...st, customers: value }));\r\n setState((st) => {\r\n const nst = { ...st, customer: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const AutoWorkChange = (event, value) => {\r\n setSelectedData((st) => ({ ...st, workflows: value }));\r\n setState((st) => {\r\n const nst = { ...st, workflow: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n if (!user) {\r\n nst.enableChange = nst.password && nst.email && nst.name && nst.password === nst.confirm;\r\n }\r\n return nst;\r\n });\r\n };\r\n\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n if (checked) {\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst[name] = checked;\r\n if (name == 'allbranch') {\r\n nst.branches = [...brancheData.branches.map((c) => c.id)];\r\n } else if (name == 'allprocess') {\r\n nst.processes = [...processData.processes.map((c) => c.id)];\r\n } else if (name == 'allcust') {\r\n nst.customer = [...customerData.customers.map((c) => c.id)];\r\n } else if (name == 'allworkflow') {\r\n nst.workflow = [...masterData.workflows.map((c) => c.id)];\r\n } else {\r\n nst[name] = checked;\r\n }\r\n return nst;\r\n });\r\n } else {\r\n setState((st) => {\r\n const nst = { ...st, [name]: checked };\r\n return nst;\r\n });\r\n }\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n {user ? Update User : Add User}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {!user ? (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : null}\r\n \r\n }\r\n label=\"Send Email From Own Email?\"\r\n />\r\n \r\n \r\n \r\n User Type\r\n \r\n \r\n } label=\"Admin\" />\r\n } label=\"Customer\" />\r\n } label=\"Internal User\" />\r\n {portalSettings.portalSettingeWIPEnabled && (\r\n <>\r\n } label=\"Auditor\" />\r\n } label=\"Technician\" />\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {state.userType == 'technician' || state.userType == 'internal' ? (\r\n \r\n \r\n }\r\n label=\"All Branches\"\r\n />\r\n \r\n \r\n {!state.allbranch ? (\r\n \r\n ) : null}\r\n \r\n \r\n ) : null}\r\n {state.userType != 'admin' ? (\r\n \r\n \r\n \r\n ) : null}\r\n\r\n \r\n \r\n }\r\n label=\"All Processes\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {state.userType == 'customer' ? (\r\n
\r\n \r\n }\r\n label=\"All Customer\"\r\n />\r\n \r\n \r\n {!state.allcust ? (\r\n \r\n ) : null}\r\n \r\n
\r\n ) : null}\r\n {(state.userType == 'customer' || state.userType == 'internal') && (\r\n \r\n \r\n \r\n Select Dashboard\r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n )}\r\n {state.userType == 'technician' && (\r\n \r\n \r\n \r\n Can Override Mandatory Steps?\r\n \r\n \r\n handleClick('canOverrideMandatorySteps', true)}\r\n onNoClick={() => handleClick('canOverrideMandatorySteps', false)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Assign Technician?\r\n \r\n \r\n handleClick('canAssignTechnician', false)}\r\n onYesClick={() => handleClick('canAssignTechnician', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Assign Customer Rating?\r\n \r\n \r\n handleClick('canSetCustomerRating', false)}\r\n onYesClick={() => handleClick('canSetCustomerRating', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Delete Documents?\r\n \r\n \r\n handleClick('canDeleteDocuments', false)}\r\n onYesClick={() => handleClick('canDeleteDocuments', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Assign Job Priority?\r\n \r\n \r\n handleClick('canAssignJobPriority', false)}\r\n onYesClick={() => handleClick('canAssignJobPriority', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Amend To Do List?\r\n \r\n \r\n handleClick('canAmendToDoList', false)}\r\n onYesClick={() => handleClick('canAmendToDoList', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Amend Tech Write Up?\r\n \r\n \r\n handleClick('canAmendTechWriteUp', false)}\r\n onYesClick={() => handleClick('canAmendTechWriteUp', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Can Amend Job Notes?\r\n \r\n \r\n handleClick('canAmendJobNotes', false)}\r\n onYesClick={() => handleClick('canAmendJobNotes', true)}\r\n />\r\n \r\n \r\n \r\n )}\r\n
\r\n\r\n \r\n }\r\n label=\"Is Active?\"\r\n />\r\n \r\n \r\n }\r\n label=\"Is Locked?\"\r\n />\r\n \r\n
\r\n
\r\n \r\n {!user ? (\r\n \r\n Submit\r\n \r\n ) : (\r\n \r\n Update\r\n \r\n )}\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default AddUserModal;\r\n","import React, { useEffect, useContext, useState, useMemo } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { SecondaryButton } from '../../../Core/FormInput/index';\r\nimport './UserManagement.css';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport Adduser from './AddUser';\r\nimport { getAllUsers } from '../../../Core/Service/admin-service';\r\nimport SetPassByAdminModal from './SetPassByAdmin';\r\nimport LockIcon from '@material-ui/icons/Lock';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { Link } from 'react-router-dom';\r\nimport { TextBox } from '../../../Core/FormInput';\r\nimport { some } from 'lodash';\r\nimport { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\n\r\nlet searchTimer;\r\n\r\nconst UserManagement = (props) => {\r\n const { loggedIn, showModal, showToast } = useContext(AppContext);\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n const [state, setState] = useState({\r\n show: false,\r\n showAddUserModal: false,\r\n rows_new: [],\r\n users: [],\r\n filterText: '',\r\n filteredRows: []\r\n });\r\n\r\n const pullUserAndUpdateState = async () => {\r\n let res = await getAllUsers();\r\n if (res.success) {\r\n setState((st) => ({ ...st, rows_new: [...res.data] }));\r\n }\r\n if (!res.success) {\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n useEffect(async () => {\r\n if (loggedIn) {\r\n pullUserAndUpdateState();\r\n } else {\r\n props.history.push('/login');\r\n }\r\n }, []);\r\n const handelUpdateUser = (props) => {\r\n const user = props && props.value.row;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n users: user\r\n };\r\n return nst;\r\n });\r\n };\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false }));\r\n refreshGrid && pullUserAndUpdateState();\r\n };\r\n const closeResetModal = (val) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showResetModal: val\r\n };\r\n return nst;\r\n });\r\n };\r\n const handelResetPass = (props) => {\r\n const user = props.value.row;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showResetModal: true,\r\n users: user\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleAdduserModel = () => {\r\n handelUpdateUser();\r\n };\r\n const Arrow = (props) => {\r\n return (\r\n <>\r\n \r\n handelUpdateUser(props)}>\r\n \r\n \r\n \r\n \r\n handelResetPass(props)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const baseColumns = [\r\n {\r\n field: 'id',\r\n headerName: 'ID',\r\n sortable: false,\r\n hide: true\r\n },\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 100,\r\n\r\n renderCell: (params) => \r\n },\r\n { field: 'displayName', headerName: 'Name', flex: 0.6 },\r\n // { field: 'phoneNo', headerName: 'Phone Number', flex: 0.6 },\r\n {\r\n field: 'email',\r\n headerName: 'Email',\r\n flex: 1\r\n }\r\n // {\r\n // field: 'userRole',\r\n // headerName: 'User Type',\r\n // flex: 0.4\r\n // },\r\n // {\r\n // field: 'isActive',\r\n // headerName: 'Is Active',\r\n // flex: 0.5,\r\n // valueGetter: (params) => (params.value ? 'Yes' : 'No')\r\n // }\r\n ];\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No user available
\r\n
\r\n );\r\n }\r\n const setFilterText = (e) => {\r\n const vl = e.target.value;\r\n setState((st) => ({ ...st, filterText: vl }));\r\n searchTimer && clearTimeout(searchTimer);\r\n searchTimer = setTimeout(() => {\r\n setFilteredRow();\r\n }, 500);\r\n };\r\n\r\n const setFilteredRow = () => {\r\n setState((st) => {\r\n const newSt = { ...st };\r\n const { rows_new, filterText } = newSt;\r\n let filterd = [];\r\n filterd = [...rows_new];\r\n if (filterText.trim().length > 0) {\r\n filterText\r\n .trim()\r\n .split(' ')\r\n .map((t) => t.trim().toLowerCase())\r\n .forEach((src) => {\r\n filterd = filterd.filter((rw) => some(rw, (vl) => `${vl}`.toLowerCase().includes(src)));\r\n });\r\n }\r\n newSt.filteredRows = filterd;\r\n return newSt;\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n setFilteredRow();\r\n }, [state.rows_new]);\r\n\r\n const column_new = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n tempCols.splice(5, 0, {\r\n field: 'userRole',\r\n headerName: 'User Type',\r\n flex: 0.4\r\n });\r\n if (WindowWidths > 750) {\r\n tempCols.splice(6, 0, { field: 'isLocked', headerName: 'Is Locked?', flex: 0.5, valueGetter: (params) => (params.value ? 'Yes' : 'No') });\r\n tempCols.splice(7, 0, {\r\n field: 'isActive',\r\n headerName: 'Is Active?',\r\n flex: 0.5,\r\n valueGetter: (params) => (params.value ? 'Yes' : 'No')\r\n });\r\n }\r\n return tempCols;\r\n }, [WindowWidths]);\r\n\r\n return (\r\n
\r\n
\r\n \r\n Add user\r\n \r\n
\r\n {state.show ? : null}\r\n {state.showResetModal ? : null}\r\n >\" aria-label=\"breadcrumb\" style={{ fontSize: '0.85rem' }}>\r\n \r\n Home\r\n \r\n \r\n Users\r\n \r\n \r\n
\r\n \r\n {/* table start*/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n {/* table end*/}\r\n \r\n
\r\n \r\n );\r\n};\r\nexport default UserManagement;\r\n","import React, { useContext, useState } from \"react\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport {\r\n PasswordBox,\r\n SecondaryButton,\r\n DialogContents,\r\n DialogTitles,\r\n Dialogs,\r\n} from \"../../../Core/FormInput\";\r\nimport { ResetPassByAdmin } from \"../../../Core/Service/admin-service\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\n\r\nconst SetPassByAdminModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n new: \"\",\r\n confirm: \"\",\r\n enableChange: false,\r\n });\r\n const user = props.users;\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n nst.enableChange =\r\n nst.new && nst.confirm && nst.new === nst.confirm;\r\n return nst;\r\n });\r\n };\r\n\r\n const handleResetPass = async (e) => {\r\n e.preventDefault();\r\n if (state.new && state.confirm) {\r\n let pattern = /(^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)(?=.*[@$!%*?&])[A-Za-z\\d@$!%*?&]{8,}$)/gm;\r\n if (!pattern.test(state.new)) {\r\n showToast(\"Password should be complex with 8 char minimum.\")\r\n } else {\r\n const res = await ResetPassByAdmin(user.id, state.new, state.confirm);\r\n if (!res.success) {\r\n console.error(`When admin trying to change user password (${user.id})`, res);\r\n showToast(res.messages);\r\n } else {\r\n showToast(res.message);\r\n props.onFormSubmit(false);\r\n hideModal();\r\n }\r\n }\r\n }\r\n // if (user) {\r\n // props.onFormSubmit(false);\r\n // }\r\n };\r\n return (\r\n \r\n \r\n \r\n Reset Password\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n Set Password\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default SetPassByAdminModal;\r\n","import React, { useState } from 'react';\r\nimport CssBaseline from '@material-ui/core/CssBaseline';\r\nimport Link from '@material-ui/core/Link';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport Container from '@material-ui/core/Container';\r\nimport { PasswordBox, SecondaryButton, TextBox } from '../../../Core/FormInput';\r\n\r\nfunction LoginForm(props) {\r\n const [state, setState] = useState({\r\n name: '',\r\n email: '',\r\n password: '',\r\n confirmpass: ''\r\n });\r\n\r\n const handleChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((prevState) => ({\r\n ...prevState,\r\n [name]: value\r\n }));\r\n };\r\n\r\n const handleSubmitClick = (e) => {\r\n e.preventDefault();\r\n const payload = {\r\n name: state.name,\r\n email: state.email,\r\n password: state.password,\r\n confirmpass: state.confirmpass\r\n };\r\n\r\n //post payload to the server\r\n props.history.push('/login');\r\n };\r\n\r\n const useStyles = makeStyles((theme) => ({\r\n paper: {\r\n marginTop: theme.spacing(8),\r\n display: 'flex',\r\n flexDirection: 'column',\r\n alignItems: 'center'\r\n },\r\n form: {\r\n width: '100%',\r\n marginTop: theme.spacing(1)\r\n }\r\n }));\r\n\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n
\r\n \r\n Register\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n Register\r\n \r\n \r\n \r\n \r\n {'Already have an account? Log in'}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default LoginForm;\r\n","import React, { useEffect, useState, useMemo } from 'react';\r\nimport { DataGrid } from '@material-ui/data-grid';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { TextBox } from '../FormInput';\r\nimport { some } from 'lodash';\r\nimport { FormLabel, makeStyles } from '@material-ui/core';\r\n\r\nlet searchTimer;\r\n\r\nexport default function DataGridComp(props) {\r\n const [state, setState] = useState({\r\n rows: [],\r\n columns: [],\r\n filteredRows: [],\r\n filterText: ''\r\n });\r\n\r\n const useStyles = makeStyles((theme) => ({\r\n root: {\r\n // '& .MuiDataGrid-renderingZone': {\r\n // backgroundColor: 'red',\r\n // maxHeight: 'none !important'\r\n // },\r\n '& .MuiDataGrid-renderingZone': {\r\n maxHeight: 'none !important'\r\n },\r\n '& .MuiDataGrid-cell': {\r\n lineHeight: 'unset !important',\r\n maxHeight: 'none !important',\r\n whiteSpace: 'normal !important'\r\n },\r\n '& .MuiDataGrid-row': {\r\n maxHeight: 'none !important'\r\n },\r\n '& .MuiDataGrid-virtualScroller': {\r\n overflowX: 'hidden'\r\n }\r\n }\r\n }));\r\n const classes = useStyles();\r\n\r\n const setFilterText = (e) => {\r\n const vl = e.target.value;\r\n setState((st) => ({ ...st, filterText: vl }));\r\n searchTimer && clearTimeout(searchTimer);\r\n searchTimer = setTimeout(() => {\r\n setFilteredRow();\r\n }, 500);\r\n };\r\n\r\n const setFilteredRow = () => {\r\n setState((st) => {\r\n const newSt = { ...st };\r\n const { rows, filterText } = newSt;\r\n let filterd = [];\r\n filterd = [...rows];\r\n if (filterText.trim().length > 0) {\r\n filterText\r\n .trim()\r\n .split(' ')\r\n .map((t) => t.trim().toLowerCase())\r\n .forEach((src) => {\r\n filterd = filterd.filter((rw) => some(rw, (vl) => `${vl}`.toLowerCase().includes(src)));\r\n });\r\n }\r\n newSt.filteredRows = filterd;\r\n return newSt;\r\n });\r\n };\r\n\r\n const gridStyle = useMemo(() => {\r\n return {\r\n height: props.height || props.offset ? `calc(100vh - ${props.offset}px)` : 'calc(100vh - 230px)',\r\n width: props.width || 'auto',\r\n minWidth: props.minWidth || 'auto',\r\n marginTop: props.enableSearch ? 10 : 20\r\n };\r\n }, [props.height, props.width, props.enableSearch]);\r\n\r\n useEffect(() => {\r\n setFilteredRow();\r\n }, [state.rows]);\r\n\r\n useEffect(() => {\r\n const rows = props.rows || [];\r\n const headerHeight = props.headerHeight || 30;\r\n const rowHeight = props.rowHeight || 30;\r\n setState((st) => ({ ...st, rows: rows, headerHeight: headerHeight, rowHeight: rowHeight }));\r\n }, [props.rows, props.headerHeight, props.rowHeight]);\r\n const CustomNoRowsOverlay = props.CustomNoRowsOverlay;\r\n return (\r\n
\r\n \r\n {props.enableSearch && (\r\n \r\n Search\r\n \r\n\r\n {/* */}\r\n \r\n )}\r\n {props.buttonComp && (\r\n \r\n {props.buttonComp}\r\n \r\n )}\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n}\r\n","import { get, post, put } from './http-calls';\r\n\r\nexport const getProcesses = async () => {\r\n let res = await get(`Process`, { useAuthToken: true });\r\n return res;\r\n};","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport {\r\n TextBox,\r\n DialogContents,\r\n DialogTitles,\r\n Dialogs,\r\n SecondaryButton,\r\n DialogsActions,\r\n DefaultButton,\r\n AppButtonGroup,\r\n YesNoButton\r\n} from '../../../Core/FormInput';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { Checkbox, IconButton, Typography } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport { addWorkflow, updateWorkflow, getWorkflowSteps, getWorkflows } from '../../../Core/Service/workflow-service';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport '../User Management/UserManagement.css';\r\nimport { getProcesses } from '../../../Core/Service/process-service';\r\nconst AddWorkflowModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({\r\n name: '',\r\n IsDeleted: true,\r\n nextWorkFlow: null,\r\n IsEntryPoint: false,\r\n orderIndex: null,\r\n IsForTechnician: false,\r\n displayJobPriorityButton: false,\r\n displayCustomerRatingButton: false,\r\n workFlowList: [],\r\n triggerList: [\r\n { triggerVal: 'After', triggerid: true },\r\n { triggerVal: 'Before', triggerid: false }\r\n ],\r\n timedIntervalTypeAfter: null,\r\n intervalList: [\r\n { intervalVal: 'Minutes', intervalid: 'M' },\r\n { intervalVal: 'Hour', intervalid: 'H' },\r\n { intervalVal: 'Day', intervalid: 'D' }\r\n ],\r\n timedInterval: null,\r\n timesIntervalDuration: null,\r\n timedWorkflowId: null,\r\n workflowProcessID: props.workflowProcessID\r\n });\r\n\r\n const [workflowType, setWorkflowType] = useState({\r\n IsEndPoint: false,\r\n IsEntryPoint: false,\r\n IsTechnicianWorkflow: false,\r\n Standard: true\r\n });\r\n\r\n const workflowId = props.workflowId;\r\n\r\n const WorkflowDetails = props.WorkflowDetails;\r\n\r\n useEffect(async () => {\r\n if (workflowId) {\r\n if (true) {\r\n setState((st) => ({\r\n ...st,\r\n name: WorkflowDetails.workflowName,\r\n nextWorkFlow: WorkflowDetails.nextWorkflowId,\r\n IsDeleted: WorkflowDetails.isDeleted ? false : true,\r\n orderIndex: WorkflowDetails.orderIndex,\r\n timesIntervalDuration: WorkflowDetails.timesIntervalDuration,\r\n timedInterval: WorkflowDetails.timedInterval,\r\n timedIntervalTypeAfter: WorkflowDetails.timedIntervalTypeAfter == true ? 'true' : 'false',\r\n timedWorkflowId: WorkflowDetails.timedWorkflowId,\r\n displayJobPriorityButton: WorkflowDetails.displayJobPriorityButton == 'Y' ? true : false,\r\n displayCustomerRatingButton: WorkflowDetails.displayCustomerRatingButton == 'Y' ? true : false\r\n }));\r\n setWorkflowType((st) => ({\r\n IsEntryPoint: WorkflowDetails.isEntryPoint,\r\n IsTechnicianWorkflow: WorkflowDetails.isTechnicianWorkflow,\r\n IsEndPoint: WorkflowDetails.isEndPoint,\r\n Standard: WorkflowDetails.isEntryPoint || WorkflowDetails.isTechnicianWorkflow || WorkflowDetails.isEndPoint ? false : true\r\n }));\r\n }\r\n }\r\n let result = await getWorkflows();\r\n if (result.success) {\r\n setState((st) => ({ ...st, workFlowList: result.data }));\r\n }\r\n\r\n let res = await getProcesses();\r\n if (res.success) {\r\n setState((st) => ({ ...st, processList: res.data }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n if (state.name && state.orderIndex) {\r\n let res = '';\r\n if (workflowId) {\r\n res = await updateWorkflow(\r\n workflowId,\r\n state.name,\r\n state.IsDeleted,\r\n state.nextWorkFlow,\r\n state.orderIndex,\r\n workflowType.IsTechnicianWorkflow,\r\n workflowType.IsEntryPoint,\r\n workflowType.IsEndPoint,\r\n state.timesIntervalDuration,\r\n state.timedInterval,\r\n state.timedIntervalTypeAfter,\r\n state.timedWorkflowId,\r\n state.displayJobPriorityButton,\r\n state.displayCustomerRatingButton,\r\n state.workflowProcessID\r\n );\r\n } else {\r\n res = await addWorkflow(\r\n state.name,\r\n state.nextWorkFlow,\r\n state.orderIndex,\r\n workflowType.IsTechnicianWorkflow,\r\n workflowType.IsEntryPoint,\r\n workflowType.IsEndPoint,\r\n state.timesIntervalDuration,\r\n state.timedInterval,\r\n state.timedIntervalTypeAfter,\r\n state.timedWorkflowId,\r\n state.displayJobPriorityButton,\r\n state.displayCustomerRatingButton,\r\n state.workflowProcessID\r\n );\r\n }\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n } else {\r\n showToast('Workflow Name and Sequence is required.');\r\n }\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleWorkflowType = (name) => {\r\n setWorkflowType((st) => {\r\n const nst = { ...st };\r\n Object.keys(nst).forEach((v) => {\r\n nst[v] = false;\r\n });\r\n nst[name] = true;\r\n return nst;\r\n });\r\n };\r\n\r\n const handleBtn = (val, name) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: val[name] };\r\n return nst;\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n {workflowId ? Update Workflow : Add Workflow}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Name\r\n \r\n \r\n \r\n Sequence\r\n \r\n \r\n \r\n Next Workflow\r\n \r\n {state.workFlowList\r\n .filter((m) => m.id != workflowId)\r\n .map((option) => (\r\n \r\n {option.workflowName}\r\n \r\n ))}\r\n \r\n \r\n \r\n Process\r\n \r\n {state.processList?.map((option) => (\r\n \r\n {option.processName}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n Timed Next Workflow\r\n \r\n \r\n \r\n \r\n Trigger\r\n \r\n \r\n {state.triggerList && (\r\n handleBtn(e, 'timedIntervalTypeAfter')}\r\n />\r\n )}\r\n \r\n \r\n \r\n Duration\r\n \r\n \r\n \r\n \r\n Interval\r\n \r\n \r\n {state.intervalList && (\r\n handleBtn(e, 'timedInterval')}\r\n />\r\n )}\r\n \r\n \r\n \r\n Timed Next Workflow\r\n \r\n {state.workFlowList\r\n .filter((m) => m.id != workflowId)\r\n .map((option) => (\r\n \r\n {option.workflowName}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n Workflow Type\r\n \r\n \r\n \r\n \r\n \r\n \r\n handleWorkflowType('IsTechnicianWorkflow')}\r\n >\r\n Technician\r\n \r\n \r\n \r\n handleWorkflowType('IsEntryPoint')}\r\n >\r\n First Workflow\r\n \r\n \r\n \r\n handleWorkflowType('IsEndPoint')}\r\n >\r\n Last Workflow\r\n \r\n \r\n \r\n handleWorkflowType('Standard')}\r\n >\r\n Standard\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Display Job Priority Button?\r\n \r\n \r\n handleClick('displayJobPriorityButton', false)}\r\n onYesClick={() => handleClick('displayJobPriorityButton', true)}\r\n />\r\n \r\n \r\n \r\n \r\n Display Customer Rating Button?\r\n \r\n \r\n handleClick('displayCustomerRatingButton', false)}\r\n onYesClick={() => handleClick('displayCustomerRatingButton', true)}\r\n />\r\n \r\n \r\n {workflowId && (\r\n \r\n \r\n Is Active?\r\n \r\n \r\n handleClick('IsDeleted', false)}\r\n onYesClick={() => handleClick('IsDeleted', true)}\r\n />\r\n \r\n \r\n )}\r\n {/* \r\n {workflowId ? (\r\n \r\n \r\n \r\n \r\n Is Active?\r\n \r\n \r\n \r\n handleClick('IsDeleted', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('IsDeleted', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n ) : (\r\n ''\r\n )}\r\n */}\r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddWorkflowModal;","import React, { useContext, useState, useEffect } from 'react';\r\nimport { Dialog, DialogActions, DialogContent, DialogTitle } from '@material-ui/core';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton, GreenButton } from '../../../Core/FormInput';\r\nimport { getWorkflowSteps, deleteWorflow } from '../../../Core/Service/workflow-service';\r\nimport Box from '@material-ui/core/Box';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\n\r\nconst DeleteWorkflowModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n workflowName: []\r\n });\r\n const workflowId = props.workflowId;\r\n useEffect(async () => {\r\n if (workflowId) {\r\n let result = await getWorkflowSteps(workflowId);\r\n if (true) {\r\n setState((st) => ({\r\n ...st,\r\n workflowName: result.data.workflowName\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const handleDelete = async () => {\r\n let res = await deleteWorflow(workflowId);\r\n if (res.success) {\r\n showToast(res?.data?.details[0]?.msg);\r\n props.onFormSubmit(true);\r\n hideModal();\r\n } else {\r\n showToast(res.msg);\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n Delete Workflow - {state.workflowName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n All workflow steps and settings will be deleted. Are you sure do you want to delete this workflow?\r\n \r\n \r\n \r\n No\r\n \r\n Yes\r\n \r\n \r\n );\r\n};\r\n\r\nexport default DeleteWorkflowModal;\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { SecondaryButton } from '../../../Core/FormInput/index';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport AddWorkflowModal from './AddWorkflow';\r\nimport { getWorkflows, getWorkflowsByProcessID } from '../../../Core/Service/workflow-service';\r\nimport AppContext from '../../../App/AppContext';\r\nimport DeleteWorkflow from './DeleteWorkflow';\r\nimport DeleteOutlineIcon from '@material-ui/icons/DeleteOutline';\r\nimport { Link } from 'react-router-dom';\r\nimport BuildIcon from '@material-ui/icons/Build';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport AssignmentReturnIcon from '@material-ui/icons/AssignmentReturn';\r\nimport DataGridComp from '../../../Core/Grid';\r\n\r\nconst WorkflowList = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n totalRec: 0,\r\n workflowId: null,\r\n showDel: false,\r\n WorkflowDetails: []\r\n });\r\n\r\n const { showToast } = useContext(AppContext);\r\n\r\n const { process } = props;\r\n\r\n useEffect(async () => {\r\n pullWorkflowAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n const workflow_id = params.value.row.id;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n workflowId: workflow_id,\r\n WorkflowDetails: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleDeleteWorkflow = (params) => {\r\n const workflow_id = params.value.row.id;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showDel: true,\r\n workflowId: workflow_id\r\n };\r\n return nst;\r\n });\r\n };\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleDeleteWorkflow(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n const getClass = (params) => {\r\n if (params.row.isDeleted) {\r\n return 'Deleted-record';\r\n }\r\n };\r\n const column_new = [\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 140,\r\n renderCell: (params) => \r\n },\r\n {\r\n field: 'id',\r\n headerName: 'ID',\r\n flex: 2,\r\n sortable: false,\r\n hide: true\r\n },\r\n { field: 'workflowName', headerName: 'Name', width: 250 },\r\n {\r\n field: 'nextWorkflowId',\r\n headerName: 'Next Workflow',\r\n flex: 2,\r\n valueGetter: (params) =>\r\n state.rows\r\n .filter((m) => params.value == m.id)\r\n .map((res) => {\r\n return res.workflowName;\r\n })\r\n },\r\n {\r\n field: 'orderIndex',\r\n headerName: 'Index',\r\n flex: 1\r\n },\r\n {\r\n field: 'isTechnicianWorkflow',\r\n headerName: 'Technician',\r\n valueGetter: (params) => (params.value ? 'Yes' : 'No'),\r\n flex: 1\r\n },\r\n {\r\n field: 'isEntryPoint',\r\n headerName: 'First Workflow',\r\n flex: 1,\r\n valueGetter: (params) => (params.value ? 'Yes' : 'No')\r\n },\r\n {\r\n field: 'isEndPoint',\r\n headerName: ' Last Workflow',\r\n flex: 1,\r\n valueGetter: (params) => (params.value ? 'Yes' : 'No')\r\n }\r\n ].map((c) => ({ ...c, cellClassName: getClass }));\r\n\r\n const pullWorkflowAndUpdateState = async () => {\r\n let result = await getWorkflowsByProcessID(process.processID, 'Y')\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n workflowId: null\r\n };\r\n });\r\n };\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No workflow available
\r\n
\r\n );\r\n }\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false }));\r\n\r\n refreshGrid && pullWorkflowAndUpdateState();\r\n };\r\n return (\r\n
\r\n
\r\n \r\n Add workflow\r\n \r\n
\r\n {state.show ? : null}\r\n {state.showDel ? : null}\r\n\r\n \r\n
\r\n );\r\n};\r\nexport default WorkflowList;","import { CircularProgress } from '@material-ui/core';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport React, { useContext, useEffect, useMemo, useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport AppContext from '../../../App/AppContext';\r\nimport TabView from '../../../Core/Controls/Tabs';\r\nimport { getProcesses } from '../../../Core/Service/process-service';\r\nimport WorkflowList from './workflowList';\r\n\r\nconst Workflow = (props) => {\r\n const [state, setState] = useState({\r\n processes: null,\r\n });\r\n\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullProcessTabs()\r\n }, []);\r\n\r\n const pullProcessTabs = async () => {\r\n let res = await getProcesses();\r\n if (res.success) {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n processes: res.data\r\n };\r\n return nst;\r\n });\r\n } else {\r\n showToast(\"Error Occurred - Could Not Get Workflow Processes\");\r\n }\r\n }\r\n\r\n const tabs = useMemo(() => {\r\n let arr = []\r\n\r\n state.processes?.map((process) => {\r\n const toPush = {\r\n label: process.processName,\r\n body: \r\n }\r\n arr.push(toPush)\r\n })\r\n\r\n return arr;\r\n }, [state.processes]);\r\n\r\n return (\r\n
\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Workflows\r\n \r\n \r\n\r\n \r\n\r\n {!state.processes && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n );\r\n};\r\nexport default Workflow;","import { get, post, put } from './http-calls';\r\n\r\nexport const addDefectReportedCategory = async (id, description) => {\r\n let res = await post(`/api/DefectReportedCategories`, {\r\n DefectReportedCategoryID: id,\r\n DefectReportedCategoryDescription: description,\r\n Mode: \"A\",\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const updateDefectReportedCategory = async (id, description) => {\r\n let res = await post(`/api/DefectReportedCategories`, {\r\n DefectReportedCategoryID: id,\r\n DefectReportedCategoryDescription: description,\r\n Mode: \"U\",\r\n }, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const deleteDefectReportedCategory = async (id) => {\r\n let res = await post(`/api/DefectReportedCategories/DeleteDefectReportedCategories`, {\r\n DefectReportedCategoryID: id,\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const getDefectReportedCategories = async () => {\r\n let res = await get('/api/DefectReportedCategories', { useAuthToken: true });\r\n return res;\r\n}","import React, { useContext, useState, useEffect } from \"react\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions} from \"../../../Core/FormInput\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport \"../User Management/UserManagement.css\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport { addDefectReportedCategory, updateDefectReportedCategory } from \"../../../Core/Service/DefectReportedCategory-service\";\r\n\r\nconst AddDefectReportedCategoryModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n id: \"\",\r\n description: \"\",\r\n errors: {},\r\n fields: {},\r\n });\r\n \r\n const DefectReportedCategoryDetails = props.DefectReportedCategoryDetails;\r\n\r\n useEffect(async () => {\r\n const DefectReportedCategoryData = DefectReportedCategoryDetails;\r\n if (DefectReportedCategoryDetails) {\r\n setState((st) => ({\r\n ...st,\r\n id: DefectReportedCategoryData.id,\r\n description: DefectReportedCategoryData.defectReportedCategoryDescription,\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n if(DefectReportedCategoryDetails) {\r\n let res = await updateDefectReportedCategory(\r\n state.id,\r\n state.description, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n } else {\r\n let res = await addDefectReportedCategory(\r\n state.id,\r\n state.description, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n }\r\n }\r\n };\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.description) {\r\n formIsValid = false;\r\n errors[\"description\"] = \"Description cannot be empty\";\r\n }\r\n if (state.description.length > 50) {\r\n formIsValid = false;\r\n errors[\"description\"] = \"description cannot be larger than 50 character\";\r\n }\r\n if (!state.id) {\r\n formIsValid = false;\r\n errors[\"id\"] = \"ID cannot be empty\";\r\n }\r\n if (state.id.length > 1) {\r\n formIsValid = false;\r\n errors[\"id\"] = \"ID cannot be larger than one character\";\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {DefectReportedCategoryDetails ? (\r\n Update Defect Reported Category\r\n ) : (\r\n Add Defect Reported Category\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Code\r\n \r\n \r\n {state.errors[\"id\"]}\r\n \r\n \r\n \r\n Description\r\n \r\n \r\n {state.errors[\"description\"]}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddDefectReportedCategoryModal;\r\n","import { IconButton } from \"@material-ui/core\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport { GridOverlay } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport React, { useContext, useEffect, useState } from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput/index\";\r\nimport DataGridComp from \"../../../Core/Grid\";\r\nimport { getDefectReportedCategories } from \"../../../Core/Service/DefectReportedCategory-service\";\r\nimport AddDefectReportedCategoriesModal from \"./AddUpdateModal\";\r\n\r\nconst DefectReportedCategories = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n DefectReportedCategoryDetails: [],\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullDefectReportedCatagoriesAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n DefectReportedCategoryDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 120,\r\n renderCell: (params) => ,\r\n },\r\n {\r\n field: 'id', //defectReportedCategoryID\r\n headerName: 'Code',\r\n width: 200,\r\n },\r\n {\r\n field: \"defectReportedCategoryDescription\",\r\n headerName: \"Description\",\r\n flex: 1,\r\n },\r\n ];\r\n\r\n const pullDefectReportedCatagoriesAndUpdateState = async () => {\r\n let result = await getDefectReportedCategories();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.list.map((w) => ({\r\n ...w,\r\n id: w.defectReportedCategoryID,\r\n defectReportedCategoryDescription: w.defectReportedCategoryDescription,\r\n })),\r\n show: false,\r\n showDel: false,\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n DefectReportedCategoryDetails: null,\r\n };\r\n });\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No defect reported categories available
\r\n
\r\n );\r\n }\r\n\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false }));\r\n refreshGrid && pullDefectReportedCatagoriesAndUpdateState();\r\n };\r\n\r\n return (\r\n
\r\n
\r\n \r\n Add Defect Reported Category\r\n \r\n
\r\n {state.show ? (\r\n \r\n ) : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Defect Reported Catagories\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default DefectReportedCategories;\r\n","import { get, post, put } from './http-calls';\r\n\r\nexport const getOcrDocuments = async () => {\r\n let res = await get('OCRDocument/OcrDocumentsList', { useAuthToken: true });\r\n return res;\r\n};\r\nexport const getOcrDocument = async (OcrDocumentId) => {\r\n let res = await get(`OCRDocument/GetOcrDocumentsDetails/${OcrDocumentId}`, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const addOcrDocument = async (id, name, ocrName = 1, tableName, columnName, OCRDocumentIgnoreDepartment) => {\r\n let res = await post(\r\n `OCRDocument/AddUpdateOcrDocuments`,\r\n {\r\n Id: id,\r\n Name: name,\r\n OcrApiId: 1,\r\n TableName: tableName,\r\n ColumnName: columnName,\r\n OCRDocumentIgnoreDepartment: OCRDocumentIgnoreDepartment \r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const getTableList = async () => {\r\n let res = await get('OCRDocument/GetTableList', { useAuthToken: true });\r\n return res;\r\n};\r\nexport const getTableColumnsList = async (tablename) => {\r\n let res = await get(`OCRDocument/GetTableColumnsList?TableName=${tablename}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getOcrApiList = async () => {\r\n let res = await get('OCRDocument/GetOcrApiList', { useAuthToken: true });\r\n return res;\r\n};\r\nexport const getOcrDocumentToProcess = async (ocrDocId) => {\r\n let res = await get(`OcrDocumentToProcess?OcrDocumentId=${ocrDocId}`, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const getOcrDocumentField = async (ocrDocId) => {\r\n let res = await get(`OcrDocumentFields?OcrDocumentId=${ocrDocId}`, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const addOCRDocFields = async (id, columnName, label, isRequired, isPrimary, OCRDocId) => {\r\n let res = await post(\r\n `OcrDocumentFields`,\r\n {\r\n Id: id,\r\n FieldLabel: label,\r\n OcrDocumentId: OCRDocId,\r\n IsRequired: isRequired,\r\n ColumnName: columnName,\r\n IsPrimaryKey: isPrimary\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\nexport const addOCRDocToProcess = async (ocrDocId, id, InputLocation, OutputLocation, BranchID, isDeleted) => {\r\n let res = await post(\r\n `OcrDocumentToProcess`,\r\n {\r\n Id: id,\r\n InputLocation: InputLocation,\r\n OcrDocumentId: ocrDocId,\r\n OutputLocation: OutputLocation,\r\n BranchID: BranchID,\r\n IsDeleted: isDeleted\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const getOCRDocumentFieldToProcess = async (ocrDocId) => {\r\n let res = await get(`OcrDocumentToProcess/DocumentFieldsToProcess/${ocrDocId}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getOCRDocumentFieldToProcessDropdown = async (ocrDocId) => {\r\n let res = await get(`OcrDocumentToProcess/DocumentFieldsToProcessDropdown/${ocrDocId}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const addUpdateDocumentFieldToProcess = async (data) => {\r\n let res = await post('OcrDocumentToProcess/DocumentFieldsToProcess', data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions } from '../../../Core/FormInput';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport { addOcrDocument, getOcrDocument, getTableList, getOcrApiList, getTableColumnsList } from '../../../Core/Service/OcrDocuments-service';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport Select from '@material-ui/core/Select';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport '../User Management/UserManagement.css';\r\nimport { YesNoButton } from '../../../Core/FormInput';\r\n\r\nconst AddOcrDocumentsModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n name: '',\r\n tableName: '',\r\n OcrApiId: null,\r\n columnName: '',\r\n tableList: [],\r\n ocrList: [],\r\n columnNameList: [],\r\n OCRDocumentIgnoreDepartment: false\r\n });\r\n const OcrDocumentId = props.OcrDocumentId;\r\n useEffect(async () => {\r\n let res1 = await getTableColumnsList(state.tableName);\r\n if (res1.data) {\r\n setState((st) => ({\r\n ...st,\r\n columnNameList: res1.data.rows\r\n }));\r\n }\r\n }, [state.tableName]);\r\n useEffect(async () => {\r\n if (OcrDocumentId) {\r\n let result = await getOcrDocument(OcrDocumentId);\r\n const ocrDoc = result.data.rows;\r\n if (result.data) {\r\n setState((st) => ({\r\n ...st,\r\n name: ocrDoc.name,\r\n tableName: ocrDoc.tableName,\r\n OcrApiId: ocrDoc.ocrApiId,\r\n columnName: ocrDoc.columnName,\r\n OCRDocumentIgnoreDepartment: ocrDoc.ocrDocumentIgnoreDepartment,\r\n }));\r\n }\r\n }\r\n let pros = [];\r\n pros.push(getTableList(), getOcrApiList());\r\n let responses = await Promise.all(pros);\r\n if (responses[0].success && responses[1].success) {\r\n setState((st) => ({\r\n ...st,\r\n tableList: responses[0].data.rows,\r\n ocrList: responses[1].data.rows\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (state.name) {\r\n let res = await addOcrDocument(OcrDocumentId, state.name, state.OcrApiId, state.tableName, state.columnName, state.OCRDocumentIgnoreDepartment);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n } else {\r\n showToast('Name is required.');\r\n }\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n {OcrDocumentId ? Update OCR Document : Add OCR Document}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Name\r\n \r\n \r\n \r\n \r\n Ignore Department?\r\n \r\n handleClick('OCRDocumentIgnoreDepartment', true)}\r\n onNoClick={() => handleClick('OCRDocumentIgnoreDepartment', false)}\r\n />\r\n \r\n {/* \r\n \r\n Select Table Name\r\n \r\n \r\n {state.tableList.length > 0 &&\r\n state.tableList.map((option) => (\r\n \r\n {option.tablE_NAME}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n Select Column Name\r\n \r\n \r\n {state.columnNameList.length > 0 &&\r\n state.columnNameList.map((option) => (\r\n \r\n {option.columN_NAME}\r\n \r\n ))}\r\n \r\n \r\n */}\r\n {/* \r\n Select OCR Api\r\n \r\n {state.ocrList.length > 0 &&\r\n state.ocrList.map((option) => (\r\n \r\n {option.name}\r\n \r\n ))}\r\n \r\n */}\r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddOcrDocumentsModal;\r\n","import React, { useEffect, useState, useContext } from \"react\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput/index\";\r\nimport { DataGrid } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport { getOcrDocuments } from \"../../../Core/Service/OcrDocuments-service\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport AddUpdateOcr from \"./AddUpdateOcr\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport { Link } from \"react-router-dom\";\r\nimport FolderOpenIcon from \"@material-ui/icons/FolderOpen\";\r\nimport AssignmentIcon from \"@material-ui/icons/Assignment\";\r\nimport DataGridComp from \"../../../Core/Grid\";\r\n\r\nconst OcrDocuments = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n totalRec: 0,\r\n OcrDocumentId: null,\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullOcrDocumentsAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n const OcrDocuments_id = params.value.row.id;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n OcrDocumentId: OcrDocuments_id,\r\n };\r\n return nst;\r\n });\r\n };\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n };\r\n const column_new = [\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 120,\r\n renderCell: (params) => ,\r\n },\r\n {\r\n field: \"id\",\r\n headerName: \"ID\",\r\n flex: 1,\r\n sortable: false,\r\n hide: true,\r\n },\r\n { field: \"name\", headerName: \"Name\", flex: 1 },\r\n { field: \"tableName\", headerName: \"Table\", flex: 0.6 },\r\n { field: \"columnName\", headerName: \"Column\", flex: 1 },\r\n { field: \"ocrApiId\", headerName: \"OCR Api\", flex: 1, hide: true },\r\n ];\r\n\r\n const pullOcrDocumentsAndUpdateState = async () => {\r\n let result = await getOcrDocuments();\r\n if (result.success) {\r\n setState((st) => ({ ...st, rows: result.data.rows }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false }));\r\n refreshGrid && pullOcrDocumentsAndUpdateState();\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n OcrDocumentId: null,\r\n };\r\n });\r\n };\r\n return (\r\n
\r\n
\r\n \r\n Add OCR Document\r\n \r\n
\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n OCR Documents\r\n \r\n \r\n {state.show ? : null}\r\n \r\n
\r\n );\r\n};\r\nexport default OcrDocuments;\r\n","import {get, post, put } from './http-calls';\r\n\r\nexport const addDefectActionedCategory = async(id, description) => {\r\n let res = await post(`/api/DefectActionedCategories`, {\r\n DefectActionedCategoryID: id,\r\n DefectActionedCategoryDescription: description,\r\n Mode: \"A\",\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const updateDefectActionedCategory = async(id, description) => {\r\n let res = await post(`/api/DefectActionedCategories`, {\r\n DefectActionedCategoryID: id,\r\n DefectActionedCategoryDescription: description,\r\n Mode: \"U\",\r\n }, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDefectActionedCategories = async() => {\r\n let res = await get('/api/DefectActionedCategories', { useAuthToken: true });\r\n return res;\r\n}","import React, { useContext, useState, useEffect } from \"react\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions} from \"../../../Core/FormInput\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport \"../User Management/UserManagement.css\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport { addDefectActionedCategory, updateDefectActionedCategory } from \"../../../Core/Service/DefectActionedCategory-service\";\r\n\r\nconst AddDefectActionedCategoryModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n id: \"\",\r\n description: \"\",\r\n errors: {},\r\n fields: {},\r\n });\r\n\r\n const DefectActionedCategoryDetails = props.DefectActionedCategoryDetails;\r\n\r\n useEffect(async () => {\r\n const DefectActionedCategoryData = DefectActionedCategoryDetails;\r\n if (DefectActionedCategoryDetails) {\r\n setState((st) => ({\r\n ...st,\r\n id: DefectActionedCategoryData.id,\r\n description: DefectActionedCategoryData.defectActionedCategoryDescription,\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n if(DefectActionedCategoryDetails) {\r\n let res = await updateDefectActionedCategory(\r\n state.id,\r\n state.description, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n } else {\r\n let res = await addDefectActionedCategory(\r\n state.id,\r\n state.description, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n }\r\n }\r\n };\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.description) {\r\n formIsValid = false;\r\n errors[\"description\"] = \"Description cannot be empty\";\r\n }\r\n if (state.description.length > 50) {\r\n formIsValid = false;\r\n errors[\"description\"] = \"description cannot be larger than 50 character\";\r\n }\r\n if (!state.id) {\r\n formIsValid = false;\r\n errors[\"id\"] = \"ID cannot be empty\";\r\n }\r\n if (state.id.length > 1) {\r\n formIsValid = false;\r\n errors[\"id\"] = \"ID cannot be larger than one character\";\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {DefectActionedCategoryDetails ? (\r\n Update Defect Actioned Category\r\n ) : (\r\n Add Defect Actioned Category\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Code\r\n \r\n \r\n {state.errors[\"id\"]}\r\n \r\n \r\n \r\n Description\r\n \r\n \r\n {state.errors[\"description\"]}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddDefectActionedCategoryModal;","import { IconButton } from \"@material-ui/core\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport { GridOverlay } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport React, { useContext, useEffect, useState } from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput/index\";\r\nimport DataGridComp from \"../../../Core/Grid\";\r\nimport AddDefectActionedCategoriesModal from \"./AddUpdateModal\";\r\nimport { getDefectActionedCategories } from \"../../../Core/Service/DefectActionedCategory-service\";\r\n\r\n\r\nconst DefectActionedCategories = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n DefectActionedCategoryDetails: [],\r\n showDel: false,\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullDefectActionedCatagoriesAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n DefectActionedCategoryDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 120,\r\n renderCell: (params) => ,\r\n },\r\n {\r\n field: 'id', //defectActionedCategoryID\r\n headerName: 'Code',\r\n width: 200,\r\n },\r\n {\r\n field: \"defectActionedCategoryDescription\",\r\n headerName: \"Description\",\r\n flex: 1,\r\n },\r\n ];\r\n\r\n const pullDefectActionedCatagoriesAndUpdateState = async () => {\r\n let result = await getDefectActionedCategories();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.list.map((w) => ({\r\n ...w,\r\n id: w.defectActionedCategoryID,\r\n defectActionedCategoryDescription: w.defectActionedCategoryDescription,\r\n })),\r\n show: false,\r\n showDel: false,\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n DefectActionedCategoryDetails: null,\r\n };\r\n });\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No defect reported categories available
\r\n
\r\n );\r\n }\r\n\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false }));\r\n refreshGrid && pullDefectActionedCatagoriesAndUpdateState();\r\n };\r\n\r\n return (\r\n
\r\n
\r\n \r\n Add Defect Actioned Category\r\n \r\n
\r\n {state.show ? (\r\n \r\n ) : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Defect Actioned Catagories\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default DefectActionedCategories;","import {get, post, put } from './http-calls';\r\n\r\nexport const addBatteryManufacturers = async(id, name) => {\r\n let res = await post(`/api/BatteryManufacturers`, {\r\n BatteryManufacturerID: id,\r\n BatteryManufacturerName: name,\r\n Mode: \"A\",\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const updateBatteryManufacturers = async(id, name) => {\r\n let res = await post(`/api/BatteryManufacturers`, {\r\n BatteryManufacturerID: id,\r\n BatteryManufacturerName: name,\r\n Mode: \"U\",\r\n }, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBatteryManufacturers = async() => {\r\n let res = await get('/api/BatteryManufacturers', { useAuthToken: true });\r\n return res;\r\n}","import React, { useContext, useState, useEffect } from \"react\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions} from \"../../../Core/FormInput\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport \"../User Management/UserManagement.css\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport { addBatteryManufacturers, updateBatteryManufacturers } from \"../../../Core/Service/BatteryManufacturers-service\";\r\n\r\nconst AddBatteryManufacturersModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n id: \"\",\r\n name:\"\",\r\n errors: {},\r\n fields: {},\r\n });\r\n\r\n const BatteryManufacturersDetails = props.BatteryManufacturersDetails;\r\n\r\n useEffect(async () => {\r\n const BatteryManufacturersData = BatteryManufacturersDetails;\r\n if (BatteryManufacturersDetails) {\r\n setState((st) => ({\r\n ...st,\r\n id: BatteryManufacturersData.id,\r\n name: BatteryManufacturersData.batteryManufacturerName,\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n if(BatteryManufacturersDetails) {\r\n let res = await updateBatteryManufacturers(\r\n state.id,\r\n state.name, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n } else {\r\n let res = await addBatteryManufacturers(\r\n null,\r\n state.name, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n }\r\n }\r\n };\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n\r\n if (!state.name) {\r\n formIsValid = false;\r\n errors[\"name\"] = \"name cannot be empty\";\r\n }\r\n\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {BatteryManufacturersDetails ? (\r\n Update Battery Manufacturers\r\n ) : (\r\n Add Battery Manufacturers\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Battery Manufacturer\r\n \r\n \r\n {state.errors[\"name\"]}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddBatteryManufacturersModal;","import { IconButton } from '@material-ui/core';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { GridOverlay } from '@material-ui/data-grid';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton } from '../../../Core/FormInput/index';\r\nimport DataGridComp from '../../../Core/Grid';\r\nimport AddBatteryManufacturersModal from './AddUpdateModal';\r\nimport { getBatteryManufacturers } from '../../../Core/Service/BatteryManufacturers-service';\r\n\r\nconst BatteryManufacturers = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n BatteryManufacturersDetails: [],\r\n showDel: false\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullBatteryManufacturersAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n BatteryManufacturersDetails: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 120,\r\n renderCell: (params) => \r\n },\r\n {\r\n field: 'id', //batteryManufacturersID\r\n headerName: 'id',\r\n flex: 1,\r\n hide: true\r\n },\r\n {\r\n field: 'batteryManufacturerName', //batteryManufacturersID\r\n headerName: 'Battery Manufacturer',\r\n flex: 1\r\n }\r\n ];\r\n\r\n const pullBatteryManufacturersAndUpdateState = async () => {\r\n let result = await getBatteryManufacturers();\r\n\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.list.map((w) => ({\r\n ...w,\r\n id: w.batteryManufacturerID,\r\n batteryManufacturerName: w.batteryManufacturerName\r\n })),\r\n show: false,\r\n showDel: false\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n BatteryManufacturersDetails: null\r\n };\r\n });\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Battery Manufacturers Logged
\r\n
\r\n );\r\n }\r\n\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false }));\r\n refreshGrid && pullBatteryManufacturersAndUpdateState();\r\n };\r\n\r\n return (\r\n
\r\n
\r\n \r\n Add Battery Manufacturer\r\n \r\n
\r\n {state.show ? (\r\n \r\n ) : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Battery Manufacturer\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default BatteryManufacturers;\r\n","import {get, post,put} from './http-calls';\r\nimport {memoize} from 'lodash'\r\n\r\nexport const getWorkflowListsAndOps = async (workflowId)=>{\r\n if(!workflowId){\r\n console.error('param [workflowId] can\\'t be NULL or undefined.');\r\n return { success: false };\r\n }\r\n let res = await get(`WorkflowStepList/ByWorkflowId/${workflowId}`, { useAuthToken: true }); \r\n return res;\r\n}\r\nexport const getWorkflowStepList = memoize(async () => {\r\n let res = await get(`WorkflowStepList/`, { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getWebForms = async () => {\r\n let res = await get('WebForms', { useAuthToken: true });\r\n return res;\r\n}\r\nexport const addWorkflowSteps = async (workflowId, id, data,workflowType) => {\r\n let res = await post(`WorkflowSteps/${workflowId}`, {\r\n StepId: id,\r\n StepLabel: data.Label,\r\n StepIndex:data.sequence,\r\n StepListId:data.stepListId,\r\n OcrDocumentId:data.documentName,\r\n WebFormTypeId:data.webFormId,\r\n IsVisible_Customer:data.IsVisibleCutomer,\r\n IsVisible_Auditor:data.IsVisibleAuditor,\r\n IsEditable:data.IsEditable,\r\n IsRequired:data.IsRequired,\r\n JsonPropertyName: data.jsonProperty,\r\n IsDeleted: data.IsActive ? false : true,\r\n IsTextboxType: workflowType.isTextboxType,\r\n DynamicFormID:data.dynamicFormID,\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\nexport const getWorkflowListOps = async (id)=>{ \r\n let res = await get(`WorkflowStepList/${id}`, { useAuthToken: true }); \r\n return res;\r\n}\r\n\r\nexport const addWorkflowStepList = async (name) => {\r\n let res = await post(`WorkflowStepList`, {\r\n ListName:name\r\n }, { useAuthToken: true });\r\n return res;\r\n }\r\n \r\nexport const updateWorkflowStepList = async (id, name) => {\r\n let res = await put( `WorkflowStepList/${id}`,\r\n {\r\n ListName:name\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const addWorkflowStepsListOptions =async (listId,data) => {\r\n let res = await post(`WorkflowStepList/${listId}`, data , { useAuthToken: true });\r\n return res;\r\n}\r\n \r\nexport const getWorkflowDataScreenDropdown = memoize(async () => {\r\n let res = await get(`workflowData/GetWorkflowDataScreenDropdown`, { useAuthToken: true });\r\n return res;\r\n});\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton, PrimaryButton, DefaultButton, SelectBox } from '../../../Core/FormInput';\r\nimport { getWorkflowStepList, getWebForms, getWorkflowDataScreenDropdown } from '../../../Core/Service/workflowList-service';\r\nimport Box from '@material-ui/core/Box';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton, InputLabel } from '@material-ui/core';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport '../User Management/UserManagement.css';\r\nimport { TextBox, PrimaryCheckbox, DialogContents, DialogTitles, Dialogs, DialogsActions } from '../../../Core/FormInput';\r\nimport { getOcrDocuments } from '../../../Core/Service/OcrDocuments-service';\r\nimport { addWorkflowSteps } from '../../../Core/Service/workflowList-service';\r\n\r\nconst AddWorkflowStep = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const workflowId = props.workflowId;\r\n const WorkflowStepDetails = props.WorkflowStepDetails;\r\n const [workflowType, setWorkflowType] = useState({\r\n isNoOption: true,\r\n isListType: false,\r\n isTextboxType: false\r\n });\r\n const [state, setState] = useState({\r\n SteplList: [],\r\n stepListId: '',\r\n OcrDocumnetList: [],\r\n documentName: '',\r\n WebFormList: [],\r\n webFormId: null,\r\n dynamicFormID: null,\r\n IsEditable: false,\r\n IsRequired: false,\r\n IsVisibleAuditor: false,\r\n IsVisibleCutomer: false,\r\n IsActive: true,\r\n Label: '',\r\n jsonProperty: '',\r\n sequence: '',\r\n stepID: null,\r\n isTextboxType: false,\r\n noOption: false,\r\n issteplist: true,\r\n errors: {}\r\n });\r\n\r\n useEffect(async () => {\r\n let res = await getWorkflowDataScreenDropdown();\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n SteplList: res?.data?.workflowSteps,\r\n OcrDocumnetList: res?.data?.ocrDoc,\r\n WebFormList: res?.data.webForm,\r\n dynamicFormList: res?.data?.dynamicForm\r\n }));\r\n }\r\n\r\n if (WorkflowStepDetails && WorkflowStepDetails.id) {\r\n setState((st) => ({\r\n ...st,\r\n stepID: WorkflowStepDetails.id,\r\n IsEditable: WorkflowStepDetails.isEditable,\r\n IsVisibleAuditor: WorkflowStepDetails.isVisible_Auditor,\r\n IsVisibleCutomer: WorkflowStepDetails.isVisible_Customer,\r\n IsRequired: WorkflowStepDetails.isRequired,\r\n documentName: WorkflowStepDetails.ocrDocumentId,\r\n sequence: WorkflowStepDetails.stepIndex,\r\n Label: WorkflowStepDetails.stepLabel,\r\n stepListId: WorkflowStepDetails.stepListId,\r\n webFormId: WorkflowStepDetails.webFormTypeId,\r\n dynamicFormID: WorkflowStepDetails?.dynamicFormID,\r\n jsonProperty: WorkflowStepDetails.jsonPropertyName,\r\n IsActive: WorkflowStepDetails.isDeleted ? false : true,\r\n issteplist: WorkflowStepDetails.stepListId == null || WorkflowStepDetails.stepListId == 0 ? false : true\r\n }));\r\n setWorkflowType((wt) => {\r\n let newSt = { ...wt };\r\n newSt.isTextboxType = WorkflowStepDetails.isTextboxType;\r\n newSt.isListType = WorkflowStepDetails.stepListId;\r\n if (WorkflowStepDetails.isTextboxType || WorkflowStepDetails.stepListId) {\r\n newSt.isNoOption = false;\r\n }\r\n return newSt;\r\n });\r\n }\r\n }, []);\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const handleValidation = () => {\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.Label) {\r\n formIsValid = false;\r\n errors['Label'] = 'Label cannot be empty';\r\n }\r\n if (!state.jsonProperty) {\r\n formIsValid = false;\r\n errors['jsonProperty'] = 'jsonProperty cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n const handelSubmit = async () => {\r\n if (handleValidation()) {\r\n if (workflowType.isListType) {\r\n state.isTextboxType = false;\r\n } else {\r\n state.stepListId = null;\r\n }\r\n let res = await addWorkflowSteps(workflowId, state.stepID, state, workflowType);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n\r\n return nst;\r\n });\r\n };\r\n const validateSpace = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n if (value.includes(' ')) {\r\n nst.jsonProperty = value.replace(/\\s/g, '');\r\n }\r\n nst[name] = value;\r\n return nst;\r\n });\r\n };\r\n const handleKeyDown = (e) => {\r\n if (e.key === ' ') {\r\n e.preventDefault();\r\n }\r\n };\r\n const handleWorkflowType = (name) => {\r\n setWorkflowType((st) => {\r\n const nst = { ...st };\r\n Object.keys(nst).forEach((v) => {\r\n nst[v] = false;\r\n });\r\n nst[name] = true;\r\n return nst;\r\n });\r\n if (name == 'isNoOption' || name === 'isTextboxType') {\r\n setState((st) => ({ ...st, stepListId: null }));\r\n }\r\n };\r\n return (\r\n \r\n \r\n {state.stepID ? Update Workflow Step : Add Workflow Step}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Label\r\n \r\n \r\n {state.errors['Label']}\r\n \r\n \r\n Sequence\r\n \r\n \r\n \r\n \r\n \r\n \r\n Step Type\r\n \r\n \r\n \r\n \r\n handleWorkflowType('isNoOption')}\r\n >\r\n No Option\r\n \r\n \r\n \r\n handleWorkflowType('isListType')}\r\n >\r\n List\r\n \r\n \r\n \r\n handleWorkflowType('isTextboxType')}\r\n >\r\n Text Box\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n Step List\r\n \r\n \r\n \r\n Web Form Name\r\n \r\n \r\n \r\n Dynamic Form Name\r\n \r\n \r\n \r\n Document Name\r\n \r\n \r\n\r\n \r\n \r\n JSON Property\r\n \r\n  (enter a unique name for the JSON property)\r\n \r\n {state.errors['jsonProperty']}\r\n \r\n\r\n \r\n \r\n \r\n \r\n Is Editable\r\n \r\n \r\n \r\n handleClick('IsEditable', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('IsEditable', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Is Required\r\n \r\n \r\n \r\n handleClick('IsRequired', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('IsRequired', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Visible To Cutomer\r\n \r\n \r\n \r\n handleClick('IsVisibleCutomer', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('IsVisibleCutomer', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Visible To Auditor\r\n \r\n \r\n \r\n handleClick('IsVisibleAuditor', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('IsVisibleAuditor', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Is Active?\r\n \r\n \r\n \r\n handleClick('IsActive', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('IsActive', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddWorkflowStep;\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { DataGrid, GridOverlay } from \"@material-ui/data-grid\";\r\nimport { getWorkflowSteps } from \"../../../Core/Service/workflow-service\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport { Link } from \"react-router-dom\";\r\nimport AddWorkflowStep from \"./AddWorkflowSteps\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput/index\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst WorkflowSteps = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n totalRec: 0,\r\n show: false,\r\n WorkflowStepDetails: [],\r\n WorkflowName: \"\",\r\n });\r\n\r\n useEffect(async () => {\r\n pullWorkflowStepsAndUpdateState();\r\n }, []);\r\n const getClass = (params) => {\r\n if (params.row.isDeleted) {\r\n return \"Deleted-record\";\r\n }\r\n };\r\n const column_new = [\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 90,\r\n renderCell: (params) => ,\r\n },\r\n {\r\n field: \"id\",\r\n headerName: \"ID\",\r\n width: 130,\r\n sortable: false,\r\n hide: true,\r\n },\r\n { field: \"ocrDocumentId\", headerName: \"\", flex: 1, hide: true },\r\n { field: \"stepIndex\", headerName: \"Index\", flex: 0.5, },\r\n { field: \"stepLabel\", headerName: \"Label\", flex: 1.5, },\r\n { field: \"stepListName\", headerName: \"List Name\", flex: 1, },\r\n { field: \"ocrDocumentName\", headerName: \"Document Name\", flex: 1, },\r\n {\r\n field: \"isEditable\",\r\n headerName: \"Editable\",\r\n flex: 0.6,\r\n valueGetter: (params) => (params.value ? \"Yes\" : \"No\"),\r\n },\r\n {\r\n field: \"isRequired\",\r\n headerName: \"Required\",\r\n flex: 0.6,\r\n valueGetter: (params) => (params.value ? \"Yes\" : \"No\"),\r\n },\r\n {\r\n field: \"isVisible_Customer\",\r\n headerName: \"Is Visible To Customer\",\r\n flex: 1,\r\n valueGetter: (params) => (params.value ? \"Yes\" : \"No\"),\r\n },\r\n {\r\n field: \"isVisible_Auditor\",\r\n headerName: \"Is Visible To Auditor\",\r\n flex: 1,\r\n valueGetter: (params) => (params.value ? \"Yes\" : \"No\"),\r\n },\r\n ].map((c) => ({ ...c, cellClassName: getClass }));\r\n const workflowID = props.match.params.workflowId;\r\n const pullWorkflowStepsAndUpdateState = async () => {\r\n getWorkflowSteps(workflowID,'','Y').then((res) => {\r\n if (res.success) {\r\n const results = res.data.steps.map((row) => ({\r\n ...row,\r\n id: row.stepId,\r\n }));\r\n setState({\r\n rows: results,\r\n WorkflowName: res.data.workflowName,\r\n });\r\n }\r\n });\r\n };\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n workflowId: workflowID,\r\n WorkflowStepDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No record found, for this workflow
\r\n
\r\n );\r\n }\r\n const handleAdd = (params) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n workflowId: workflowID,\r\n WorkflowStepDetails:null\r\n };\r\n });\r\n };\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) =>({...st, show: false}));\r\n refreshGrid && pullWorkflowStepsAndUpdateState(); \r\n };\r\n\r\n return (\r\n <>\r\n {state.show ? (\r\n \r\n ) : null}\r\n \r\n Add Workflow Step\r\n \r\n >\"\r\n aria-label=\"breadcrumb\"\r\n style={{ margin: \"14px\", fontSize: \"0.85rem\" }}\r\n >\r\n \r\n Home\r\n \r\n \r\n Workflow\r\n \r\n \r\n {\" \"}\r\n Workflow Steps\r\n \r\n \r\n {state.WorkflowName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\nexport default WorkflowSteps;\r\n","import React, { useContext, useState, useEffect } from \"react\";\r\nimport AppContext from \"../../../../App/AppContext\";\r\nimport {\r\n SecondaryButton,\r\n DefaultButton,\r\n TextBox,\r\n DialogContents,\r\n DialogTitles,\r\n Dialogs,\r\n DialogsActions,\r\n} from \"./../../../../Core/FormInput/index\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport \"./../../User Management/UserManagement.css\";\r\nimport {\r\n addOCRDocToProcess,\r\n} from \"./../../../../Core/Service/OcrDocuments-service\";\r\nimport { getBranches } from \"../../../../Core/Service/branches-service\";\r\n\r\nconst AddOCRDocToProcess = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const OCRDocToProcess = props.OCRDocToProcessList;\r\n const ocrDocId = props.ocrDocId;\r\n const [state, setState] = useState({\r\n InputLocation: \"\",\r\n OutputLocation: \"\",\r\n BranchID:null,\r\n OCRDocToProcessID: null,\r\n branches: [],\r\n IsDeleted: false,\r\n });\r\n useEffect(async () => {\r\n let res1 = await getBranches();\r\n if (res1.success) {\r\n const branches = res1.data.map((w) => ({\r\n id: w.id,\r\n name: w.branchShortName,\r\n }));\r\n setState((st) => ({ ...st, branches }));\r\n }\r\n if (OCRDocToProcess && OCRDocToProcess.id) {\r\n setState((st) => ({\r\n ...st,\r\n OCRDocToProcessID: OCRDocToProcess.id,\r\n InputLocation: OCRDocToProcess.inputLocation,\r\n OutputLocation: OCRDocToProcess.outputLocation,\r\n BranchID: OCRDocToProcess.branchID,\r\n IsDeleted:OCRDocToProcess.IsDeleted,\r\n }));\r\n }\r\n }, []);\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const handelSubmit = async () => {\r\n let res = await addOCRDocToProcess(\r\n ocrDocId,\r\n state.OCRDocToProcessID,\r\n state.InputLocation,\r\n state.OutputLocation,\r\n state.BranchID,\r\n state.IsDeleted,\r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n return (\r\n \r\n \r\n \r\n {state.OCRDocToProcessID ? (\r\n Update OCR Document To Process\r\n ) : (\r\n Add OCR Document To Process\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Input Location\r\n \r\n \r\n \r\n Output Location\r\n \r\n \r\n \r\n Branch\r\n \r\n {state.branches.map((option) => (\r\n \r\n {option.name}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddOCRDocToProcess;\r\n","import { IconButton, Typography } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport React, { useContext, useEffect, useState } from \"react\";\r\nimport AppContext from \"../../../../App/AppContext\";\r\nimport { DefaultButton, DialogContents, Dialogs, DialogsActions, DialogTitles, SecondaryButton, TextBox } from \"./../../../../Core/FormInput/index\";\r\nimport \"./../../User Management/UserManagement.css\";\r\nimport { getOCRDocumentFieldToProcess, getOCRDocumentFieldToProcessDropdown, addUpdateDocumentFieldToProcess } from \"../../../../Core/Service/OcrDocuments-service\";\r\nimport { Tooltip } from \"@material-ui/core\";\r\nimport RemoveCircleIcon from \"@material-ui/icons/RemoveCircle\";\r\nimport AddBoxIcon from \"@material-ui/icons/AddBox\";\r\n\r\nconst DocumentFieldToProcess = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({\r\n id: null,\r\n enabled: true,\r\n ocrDocumentFieldId: null,\r\n documentsList: [],\r\n errors: [],\r\n });\r\n\r\n const splitByList = [\r\n {\r\n displayName: `${'\\u00A0'}`,\r\n description: \" \"\r\n },\r\n {\r\n displayName: '_',\r\n description: '_'\r\n }\r\n ];\r\n\r\n const [inputList, setInputList] = useState([]);\r\n\r\n const handleInputChange = (e, index) => {\r\n const { name, value } = e.target;\r\n const list = [...inputList];\r\n\r\n list[index][name] = value;\r\n\r\n if (name === \"splitBy\" && value === \" \") {\r\n list[index].splitIndex = 1;\r\n }\r\n if (name === \"splitIndex\") {\r\n if (value > 9) {\r\n list[index].splitIndex = 9;\r\n }\r\n if (value < 1) {\r\n list[index].splitIndex = 1;\r\n }\r\n }\r\n\r\n setInputList(list);\r\n };\r\n const handleRemoveClick = (index) => {\r\n const list = [...inputList];\r\n list.splice(index, 1);\r\n setInputList(list);\r\n };\r\n const handleAddClick = () => {\r\n setInputList([\r\n ...inputList,\r\n {\r\n splitBy: ' ',\r\n splitIndex: 1,\r\n }\r\n ]);\r\n };\r\n\r\n useEffect(async () => {\r\n pulldata();\r\n pullDropdown();\r\n }, []);\r\n\r\n useEffect(() => {\r\n /* Called and Updated when scriptOnFileName state is set/changed. \r\n Do not modify that state unless this needs to be re-called */\r\n\r\n if (state?.scriptOnFileName) {\r\n /* convert the retrieved data into parsable JSON */\r\n const str = state.scriptOnFileName\r\n .replaceAll(\"'\", '\"')\r\n .replaceAll(\"]\", \"\")\r\n .replaceAll(\"[\", \"\")\r\n .replaceAll(\"method\", '\"method\"')\r\n .replaceAll(\"splitBy\", '\"splitBy\"')\r\n .replaceAll(\"parts\", '\"splitIndex\"')\r\n .replaceAll(\"by\", '\"splitBy\"');\r\n\r\n /* Parse JSON */\r\n const dataArr = JSON.parse(`[${str}]`);\r\n\r\n /* Remove un-needed field in JSON */\r\n dataArr.map((obj) => {\r\n delete obj.method;\r\n })\r\n\r\n /* Add JSON Objects to InputList (which adds visible rows) */\r\n setInputList([\r\n ...dataArr,\r\n ]);\r\n }\r\n }, [state?.scriptOnFileName]);\r\n\r\n const handleValidation = () => {\r\n let errors = {};\r\n let formIsValid = true;\r\n\r\n if (!state.ocrDocumentFieldId) {\r\n formIsValid = false;\r\n errors[\"ocrDocumentFieldId\"] = \"Document Field cannot be empty\";\r\n }\r\n\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n const pullDropdown = async () => {\r\n let resDropdown = await getOCRDocumentFieldToProcessDropdown(props.OCRDocToProcessList.id)\r\n\r\n if(resDropdown.success) {\r\n setState((st) => ({\r\n ...st,\r\n documentsList: resDropdown.data,\r\n }));\r\n }\r\n }\r\n\r\n const pulldata = async () => {\r\n let res = await getOCRDocumentFieldToProcess(props.OCRDocToProcessList.id);\r\n\r\n const data = res?.data[0];\r\n\r\n if (data.id) {\r\n setState((st) => ({\r\n ...st,\r\n id: data.id,\r\n enabled: !data.isDeleted,\r\n ocrDocumentFieldId: data.ocrDocumentFieldId,\r\n scriptOnFileName: data.scriptOnFileName,\r\n }));\r\n }\r\n };\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const handleSubmit = async () => {\r\n // Below is the format that is expected\r\n /* XENTRY [{method:'split',splitBy:'_',parts:[6]},{method:'split',splitBy:'_',parts:[7]},{method:'split',splitBy:'_',parts:[9]}] */\r\n /* OTHER [{method:'split',by:' ',parts:[1]}] */\r\n\r\n /* Re-Create the script string in format that is expected */\r\n let script = \"[\";\r\n inputList.map((x, i) => {\r\n script += `{method:'split',${inputList.length == 1 ? \"by\" : \"splitBy\"}:'${x.splitBy}',parts:[${x.splitIndex}]}` + ((i + 1) != inputList.length ? \",\" : \"]\");\r\n })\r\n\r\n const data = {\r\n Id: state.id ? state.id : null,\r\n OcrDocumentToProcessId: props.OCRDocToProcessList.id,\r\n OcrDocumentFieldId: state.ocrDocumentFieldId,\r\n IsDeleted: !state.enabled,\r\n ScriptOnFileName: script === \"[\" ? \"\" : script\r\n }\r\n\r\n if (handleValidation()) {\r\n let res = await addUpdateDocumentFieldToProcess(data);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n handleClose()\r\n }\r\n }\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n Update OCR Document Field\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Document Field\r\n \r\n {state.documentsList?.map((option) => (\r\n \r\n {option.fieldLabel}\r\n \r\n ))}\r\n \r\n \r\n {state.errors[\"ocrDocumentFieldId\"]}\r\n \r\n \r\n\r\n {inputList.length == 0 && (\r\n \r\n \r\n Add split data using the + icon\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {inputList.map((x, i) => (\r\n <>\r\n \r\n \r\n handleRemoveClick(i)} className=\"rightButton\">\r\n \r\n \r\n \r\n {inputList.length - 1 === i && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n\r\n \r\n Split By\r\n handleInputChange(e, i)}\r\n variant=\"outlined\"\r\n >\r\n {splitByList?.map((option) => (\r\n \r\n {option.displayName}\r\n \r\n ))}\r\n \r\n \r\n \r\n Split Index\r\n handleInputChange(e, i)}\r\n type=\"number\"\r\n value={x.splitIndex}\r\n />\r\n \r\n \r\n ))}\r\n\r\n \r\n \r\n Is Active?\r\n \r\n \r\n \r\n \r\n handleClick(\"enabled\", true)\r\n }\r\n >\r\n Yes\r\n \r\n \r\n \r\n \r\n handleClick(\"enabled\", false)\r\n }\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DocumentFieldToProcess;\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { Link } from 'react-router-dom';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { getOcrDocumentToProcess, getOcrDocuments } from './../../../../Core/Service/OcrDocuments-service';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { IconButton } from '@material-ui/core';\r\nimport { SecondaryButton } from '../../../../Core/FormInput/index';\r\nimport AddOCRDocToProcess from './AddUpdateModal';\r\nimport DataGridComp from '../../../../Core/Grid';\r\nimport AssignmentIcon from '@material-ui/icons/Assignment';\r\nimport DocumentFieldToProcess from './DocumentFieldModal';\r\n\r\nconst OcrDocumentToProcess = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n showDocumentFieldModal: false,\r\n branches: [],\r\n OCRName: ''\r\n });\r\n const { showToast } = useContext(AppContext);\r\n const ocrDocId = props.match.params.ocrDocId;\r\n const name = props.match.params.name;\r\n\r\n useEffect(async () => {\r\n pullOCRDocToprocessAndUpdateState();\r\n }, []);\r\n\r\n const column_new = [\r\n {\r\n field: 'id',\r\n headerName: 'ID',\r\n width: 130,\r\n sortable: false,\r\n hide: true\r\n },\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 100,\r\n renderCell: (params) => \r\n },\r\n {\r\n field: 'inputLocation',\r\n headerName: 'Input Location',\r\n flex: 1\r\n },\r\n {\r\n field: 'outputLocation',\r\n headerName: 'Output Location',\r\n flex: 1\r\n },\r\n {\r\n field: 'branch',\r\n headerName: 'Branch',\r\n flex: 0.6\r\n }\r\n ];\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n handleDocumentFieldModal(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const pullOCRDocToprocessAndUpdateState = async () => {\r\n let result = await getOcrDocumentToProcess(ocrDocId);\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data,\r\n show: false\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n OCRDocToProcessList: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleDocumentFieldModal = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showDocumentFieldModal: true,\r\n OCRDocToProcessList: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n OCRDocToProcessList: []\r\n };\r\n });\r\n };\r\n\r\n const modalClosed = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDocumentFieldModal: false }));\r\n refreshGrid && pullOCRDocToprocessAndUpdateState();\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No OCR Document To process available
\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n
\r\n \r\n Add OCR Document Process\r\n \r\n
\r\n\r\n {state.show ? : null}\r\n {state.showDocumentFieldModal ? : null}\r\n\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n OCR Documents\r\n \r\n \r\n OCR Document To Process\r\n \r\n \r\n {name}\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default OcrDocumentToProcess;\r\n","import React, { useContext, useState, useEffect } from \"react\";\r\nimport AppContext from \"../../../../App/AppContext\";\r\nimport {\r\n SecondaryButton,\r\n DefaultButton,\r\n TextBox,\r\n DialogContents,\r\n DialogTitles,\r\n Dialogs,\r\n DialogsActions,\r\n} from \"./../../../../Core/FormInput/index\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport \"./../../User Management/UserManagement.css\";\r\nimport {\r\n getOcrDocuments,\r\n addOCRDocFields,\r\n getTableColumnsList\r\n} from \"./../../../../Core/Service/OcrDocuments-service\";\r\n\r\nconst AddOCRDocFields = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const OCRDocFields = props.OCRDocFields;\r\n const ocrDocId = props.ocrDocId;\r\n const [state, setState] = useState({\r\n OcrDocumnetList: [],\r\n IsRequired: false,\r\n IsPrimary: false,\r\n Label: \"\",\r\n ColumnName: \"\",\r\n OCRDocFieldsID: null,\r\n columnNameList:[],\r\n });\r\n useEffect(async () => {\r\n let res2 = await getTableColumnsList(\"HeaderRecords\");\r\n if (res2.data) {\r\n setState((st) => ({\r\n ...st,\r\n columnNameList: res2.data.rows,\r\n }));\r\n }\r\n let result1 = await getOcrDocuments();\r\n if (result1.success) {\r\n setState((st) => ({\r\n ...st,\r\n OcrDocumnetList: result1.data.rows,\r\n }));\r\n } \r\n\r\n if (OCRDocFields && OCRDocFields.id) {\r\n setState((st) => ({\r\n ...st,\r\n OCRDocFieldsID: OCRDocFields.id,\r\n IsRequired: OCRDocFields.isRequired,\r\n IsPrimary: OCRDocFields.isPrimaryKey,\r\n Label: OCRDocFields.fieldLabel,\r\n ColumnName: OCRDocFields.columnName,\r\n }));\r\n }\r\n }, []);\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const handelSubmit = async () => {\r\n let res = await addOCRDocFields(\r\n state.OCRDocFieldsID,\r\n state.ColumnName,\r\n state.Label,\r\n state.IsRequired,\r\n state.IsPrimary,\r\n ocrDocId,\r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n const HeaderRecords = [\r\n {\r\n id: 1,\r\n name: \"WIPNumber\",\r\n },\r\n ];\r\n return (\r\n \r\n \r\n \r\n {state.OCRDocFieldsID ? (\r\n Update OCR Document Field\r\n ) : (\r\n Add OCR Document Field\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Label\r\n \r\n \r\n \r\n Column Name\r\n \r\n {state.columnNameList.map((option) => (\r\n \r\n {option.columN_NAME}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Is Required?\r\n \r\n \r\n \r\n \r\n handleClick(\"IsRequired\", true)\r\n }\r\n >\r\n Yes\r\n \r\n \r\n \r\n \r\n handleClick(\"IsRequired\", false)\r\n }\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Is Primary?\r\n \r\n \r\n \r\n \r\n handleClick(\"IsPrimary\", true)\r\n }\r\n >\r\n Yes\r\n \r\n \r\n \r\n \r\n handleClick(\"IsPrimary\", false)\r\n }\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddOCRDocFields;\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { Link } from 'react-router-dom';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { getOcrDocumentField, getOcrDocuments } from './../../../../Core/Service/OcrDocuments-service';\r\nimport AddOCRDocFields from './AddUpdateModal';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { IconButton } from '@material-ui/core';\r\nimport { SecondaryButton } from '../../../../Core/FormInput/index';\r\nimport DataGridComp from '../../../../Core/Grid';\r\n\r\nconst OcrDocumentField = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n OCRDocFields: [],\r\n OCRName: ''\r\n });\r\n const { showToast } = useContext(AppContext);\r\n const ocrDocId = props.match.params.ocrDocId;\r\n\r\n useEffect(async () => {\r\n pullOcrDocumentFieldAndUpdateState();\r\n }, []);\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n OCRDocFields: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n OCRDocFields: []\r\n };\r\n });\r\n };\r\n const column_new = [\r\n {\r\n field: 'id',\r\n headerName: 'ID',\r\n width: 130,\r\n sortable: false,\r\n hide: true\r\n },\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 100,\r\n renderCell: (params) => \r\n },\r\n {\r\n field: 'fieldLabel',\r\n headerName: 'Label',\r\n flex: 1\r\n },\r\n {\r\n field: 'isRequired',\r\n headerName: 'Is Required',\r\n flex: 1,\r\n valueGetter: (params) => (params.value ? 'Yes' : 'No')\r\n },\r\n {\r\n field: 'columnName',\r\n headerName: 'Column Name',\r\n flex: 1\r\n }\r\n ];\r\n\r\n const pullOcrDocumentFieldAndUpdateState = async () => {\r\n let pros = [];\r\n pros.push(getOcrDocuments(), getOcrDocumentField(ocrDocId));\r\n let responses = await Promise.all(pros);\r\n\r\n const getOCRName = responses[0].data.rows\r\n .filter((m) => ocrDocId == m.id)\r\n .map((res) => {\r\n return res.name;\r\n });\r\n if (responses[0].success && responses[1].success) {\r\n let sortedRows = [];\r\n responses[1].data.map((row) => row.ocrDocumentId == ocrDocId && sortedRows.push(row));\r\n setState((st) => ({\r\n ...st,\r\n OCRName: getOCRName,\r\n rows: sortedRows\r\n }));\r\n }\r\n let resWithErr = responses.find((r) => !r.success);\r\n if (resWithErr) {\r\n showToast(resWithErr.message);\r\n }\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No OCR Document Field available
\r\n
\r\n );\r\n }\r\n const modalClosed = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false }));\r\n refreshGrid && pullOcrDocumentFieldAndUpdateState();\r\n };\r\n return (\r\n
\r\n
\r\n \r\n Add OCR Document Field\r\n \r\n
\r\n {state.show ? : null}\r\n\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n OCR Documents\r\n \r\n \r\n OCR Document Field\r\n \r\n \r\n {state.OCRName}\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default OcrDocumentField;\r\n","import {get, post } from './http-calls';\r\nexport const addWebForm = async(id, name, url, buttonLabel, description, workflowID, navigateToDashboard) => {\r\n let res = await post(`WebForms`, {\r\n Id: id,\r\n Name: name,\r\n WebFormRelativeUrl: url,\r\n WebFormButtonLabel: buttonLabel,\r\n NonFunctionalDescription: description,\r\n NavigateToDashboardOnSubmit: navigateToDashboard,\r\n webformEditableWorkflowID: workflowID,\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\nexport const DeleteWebForm = async(id) => {\r\n let res = await post(`WebForms/DeleteWebForms/${id}`, {\r\n Id: id,\r\n }, { useAuthToken: true });\r\n return res;\r\n}","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions, DefaultButton } from '../../../Core/FormInput';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport '../User Management/UserManagement.css';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { addWebForm } from './../../../Core/Service/webForm-service';\r\nimport { MenuItem } from '@material-ui/core';\r\nimport { getWorkflows } from '../../../Core/Service/workflow-service';\r\n\r\nconst AddWebFormModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n name: '',\r\n buttonLabel: '',\r\n url: '',\r\n description: '',\r\n errors: {},\r\n fields: {},\r\n nextWorkFlow: null,\r\n workFlowList: [],\r\n navigateToDashboard: false\r\n });\r\n const WebFormId = props.WebFormId;\r\n const WebFormDetails = props.WebFormDetails;\r\n\r\n useEffect(async () => {\r\n const WebformData = WebFormDetails;\r\n if (WebFormDetails) {\r\n setState((st) => ({\r\n ...st,\r\n name: WebformData.name,\r\n url: WebformData.webFormRelativeUrl,\r\n buttonLabel: WebformData.webFormButtonLabel,\r\n description: WebformData.nonFunctionalDescription,\r\n nextWorkFlow: WebformData.webformEditableWorkflowID,\r\n navigateToDashboard: WebformData.navigateToDashboardOnSubmit\r\n }));\r\n }\r\n\r\n let result = await getWorkflows();\r\n if (result.success) {\r\n setState((st) => ({ ...st, workFlowList: result.data }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n let res = await addWebForm(WebFormId, state.name, state.url, state.buttonLabel, state.description, state.nextWorkFlow, state.navigateToDashboard);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.name) {\r\n formIsValid = false;\r\n errors['name'] = 'Name cannot be empty';\r\n }\r\n if (!state.url) {\r\n formIsValid = false;\r\n errors['url'] = 'Url cannot be empty';\r\n }\r\n if (!state.buttonLabel) {\r\n formIsValid = false;\r\n errors['buttonLabel'] = 'Button label cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n {WebFormId ? Update Web Form : Add Web Form}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Name\r\n \r\n \r\n {state.errors['name']}\r\n \r\n \r\n \r\n URL\r\n \r\n \r\n {state.errors['url']}\r\n \r\n \r\n \r\n Button Label\r\n \r\n \r\n {state.errors['buttonLabel']}\r\n \r\n \r\n Editable in Workflow\r\n \r\n {state.workFlowList\r\n .filter((m) => m.id)\r\n .map((option) => (\r\n \r\n {option.workflowName}\r\n \r\n ))}\r\n \r\n \r\n \r\n Description\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Navigate to dashboard?\r\n \r\n \r\n \r\n handleClick('navigateToDashboard', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('navigateToDashboard', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddWebFormModal;\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport { Dialog, DialogActions, DialogContent, DialogTitle } from '@material-ui/core';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton, PrimaryButton } from '../../../Core/FormInput';\r\nimport Box from '@material-ui/core/Box';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport { DeleteWebForm } from './../../../Core/Service/webForm-service';\r\nimport Typography from '@material-ui/core/Typography';\r\n\r\nconst DeleteWebFormModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n WebFormName: ''\r\n });\r\n const WebFormId = props.WebFormId;\r\n const name = props.WebFormDetails.name;\r\n useEffect(async () => {\r\n setState((st) => {\r\n const nst = { ...st, WebFormName: name };\r\n return nst;\r\n });\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const handleDelete = async () => {\r\n let res = await DeleteWebForm(WebFormId);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n Delete Web Form - {state.WebFormName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Are you sure to delete this web form\r\n \r\n \r\n \r\n \r\n No\r\n \r\n \r\n Yes\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DeleteWebFormModal;\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { SecondaryButton } from '../../../Core/FormInput/index';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { Link } from 'react-router-dom';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { getWebForms } from '../../../Core/Service/workflowList-service';\r\nimport AddWebFormModal from './AddWebFormModal';\r\nimport DeleteWebFormModal from './DeleteWebForm';\r\nimport DeleteOutlineIcon from '@material-ui/icons/DeleteOutline';\r\nimport DataGridComp from '../../../Core/Grid';\r\n\r\nconst WebForm = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n WebFormId: null,\r\n WebFormDetails: [],\r\n showDel: false\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullWebFormAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n const WebForm_id = params.value.row.id;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n WebFormId: WebForm_id,\r\n WebFormDetails: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleDeleteWebForm = (params) => {\r\n const WebForm_id = params.value.row.id;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showDel: true,\r\n WebFormId: WebForm_id,\r\n WebFormDetails: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n handleDeleteWebForm(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n const column_new = [\r\n {\r\n field: 'id',\r\n headerName: 'ID',\r\n width: 130,\r\n sortable: false,\r\n hide: true\r\n },\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 110,\r\n\r\n renderCell: (params) => \r\n },\r\n { field: 'name', headerName: 'Name', flex: 0.5 },\r\n {\r\n field: 'webFormRelativeUrl',\r\n headerName: 'URL',\r\n flex: 0.5\r\n },\r\n {\r\n field: 'webFormButtonLabel',\r\n headerName: 'Button Label',\r\n flex: 0.4\r\n },\r\n {\r\n field: 'nonFunctionalDescription',\r\n headerName: 'Description',\r\n flex: 1\r\n }\r\n ];\r\n\r\n const pullWebFormAndUpdateState = async () => {\r\n let result = await getWebForms();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.list\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n const modalClosed = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false }));\r\n refreshGrid && pullWebFormAndUpdateState();\r\n };\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n WebFormId: null,\r\n WebFormDetails: null\r\n };\r\n });\r\n };\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Web Form available
\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n
\r\n \r\n Add Web Form\r\n \r\n
\r\n {state.show ? : null}\r\n {state.showDel ? : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Web Forms\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default WebForm;\r\n","import { get, post, put } from './http-calls';\r\n\r\nexport const getByWorkflowIdAndHeaderId = async (workflowId, headerId) => {\r\n let res = await get(`ReturnReasons/ByWorkflowId/${workflowId}${headerId ? `/${headerId}` : ''}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\n// public long JobId { get; set; }\r\n// public int ReturnReasonId { get; set; }\r\n// public string Message { get; set; }\r\n// public bool? returnSelect { get; set; }\r\n// public long? TechnicianJobID { get; set; }\r\nexport const processsReturnReasonForJob = async (jobId, returnReasonId, anyNotes, selectedTechnician,resetSignature) => {\r\n let res = await post(\r\n `ReturnReasons/ProcessForJob`,\r\n {\r\n JobId: jobId,\r\n ReturnReasonId: returnReasonId,\r\n message: anyNotes,\r\n TechnicianJobID: selectedTechnician,\r\n resetSignature:resetSignature\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const addUpdateReturnReason = async (id, name, workflowID, nextWorkflow, isActive, UniqIdentifier, backgroundColorCode, textColorCode) => {\r\n let res = await post(\r\n `ReturnReasons`,\r\n {\r\n ReturnReasonID: id,\r\n ReturnReasonDescription: name,\r\n ReturnReasonWorkflowID: workflowID,\r\n ReturnReasonNextWorkflowID: nextWorkflow,\r\n ReturnReasonActive: isActive,\r\n UniqIdentifier: UniqIdentifier,\r\n returnReasonColourCode: backgroundColorCode,\r\n returnReasonTextColourCode: textColorCode,\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n","import { Checkbox, IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport { SketchPicker } from 'react-color';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { DialogContents, Dialogs, DialogsActions, DialogTitles, SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { addUpdateReturnReason } from '../../../../Core/Service/returnReason-service';\r\nimport { getWorkflows } from '../../../../Core/Service/workflow-service';\r\nimport '../../User Management/UserManagement.css';\r\n\r\nconst AddReturnReasonModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n Reason: '',\r\n uniqIdentifier: '',\r\n errors: {},\r\n fields: {},\r\n Id: null,\r\n isActive: true,\r\n nextWorkflow: null,\r\n workFlowList: [],\r\n backgroundColorCode: '',\r\n textColorCode: ''\r\n });\r\n const WorkflowID = props.WorkflowID;\r\n const ReturnReasonDetails = props.ReturnReasonDetails;\r\n\r\n useEffect(async () => {\r\n if (ReturnReasonDetails) {\r\n setState((st) => ({\r\n ...st,\r\n Id: ReturnReasonDetails.returnReasonID,\r\n Reason: ReturnReasonDetails.returnReasonDescription,\r\n uniqIdentifier: ReturnReasonDetails.uniqIdentifier,\r\n // isActive: ReturnReasonDetails.isDeleted ? false : true,\r\n isActive: ReturnReasonDetails.returnReasonActive,\r\n nextWorkflow: ReturnReasonDetails.returnReasonNextWorkflowID,\r\n backgroundColorCode: ReturnReasonDetails.returnReasonColourCode,\r\n textColorCode: ReturnReasonDetails.returnReasonTextColourCode\r\n }));\r\n }\r\n let result1 = await getWorkflows();\r\n setState((st) => ({\r\n ...st,\r\n workFlowList: result1.data\r\n }));\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst[name] = checked;\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n let res = await addUpdateReturnReason(\r\n state.Id,\r\n state.Reason,\r\n WorkflowID,\r\n state.nextWorkflow,\r\n state.isActive,\r\n state.uniqIdentifier,\r\n state.backgroundColorCode,\r\n state.textColorCode\r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(false);\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.Reason) {\r\n formIsValid = false;\r\n errors['Reason'] = 'Reason cannot be empty';\r\n }\r\n if (!state.uniqIdentifier) {\r\n formIsValid = false;\r\n errors['uniqIdentifier'] = 'Next Workflow cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n const validateSpace = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n if (value.includes(' ')) {\r\n nst.uniqIdentifier = value.replace(/\\s/g, '');\r\n }\r\n nst[name] = value;\r\n return nst;\r\n });\r\n };\r\n const handleKeyDown = (e) => {\r\n if (e.key === ' ') {\r\n e.preventDefault();\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n {state.Id ? Update Reason : Add Reason}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Reason\r\n \r\n \r\n {state.errors['Reason']}\r\n \r\n \r\n Next Workflow\r\n \r\n {state.workFlowList.map((option) => (\r\n \r\n {option.workflowName}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n Unique Identifier\r\n \r\n \r\n {state.errors['uniqIdentifier']}\r\n \r\n \r\n
\r\n Background Colour\r\n
\r\n
\r\n \r\n setState((state) => ({\r\n ...state,\r\n backgroundColorCode: updatedColor.hex\r\n }))\r\n }\r\n />\r\n
\r\n
\r\n \r\n
\r\n Text Colour\r\n
\r\n
\r\n \r\n setState((state) => ({\r\n ...state,\r\n textColorCode: updatedColor.hex\r\n }))\r\n }\r\n />\r\n
\r\n
\r\n \r\n } label=\"Active?\" />\r\n \r\n
\r\n
\r\n \r\n \r\n Submit\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default AddReturnReasonModal;\r\n","import React, { useEffect, useState, useContext } from \"react\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport { SecondaryButton } from \"../../../../Core/FormInput/index\";\r\nimport { DataGrid, GridOverlay } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport AppContext from \"../../../../App/AppContext\";\r\nimport { Link } from \"react-router-dom\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport { getByWorkflowIdAndHeaderId } from \"../../../../Core/Service/returnReason-service\";\r\nimport AddReturnReasonModal from \"./AddReturnReasonModal\";\r\nimport { getWorkflows } from \"../../../../Core/Service/workflow-service\";\r\nimport { makeStyles } from '@material-ui/core/styles';\r\n\r\nconst useStyles =(props)=> makeStyles((thems) => {\r\n return ({\r\n ...props\r\n })\r\n});\r\n\r\nconst ReturnReason = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n ReturnReasonId: null,\r\n ReturnReasonDetails: [],\r\n workflowList: [],\r\n });\r\n const { showToast } = useContext(AppContext);\r\n const WorkflowID = props.match.params.workflowId;\r\n useEffect(async () => {\r\n pullReturnReasonAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n const ReturnReason_id = params.value.row.id;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n ReturnReasonId: ReturnReason_id,\r\n ReturnReasonDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n var colorCodeObj = {};\r\n state.rows.forEach(c => {\r\n colorCodeObj[[c.id]] = {\r\n background: c.returnReasonColourCode,\r\n color: c.returnReasonTextColourCode\r\n };\r\n })\r\n const classes = useStyles(colorCodeObj)();\r\n\r\n const getClass = (params) => {\r\n if (params.row.returnReasonColourCode) {\r\n return classes[params.row.id]\r\n }\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: \"id\",\r\n headerName: \"ID\",\r\n width: 130,\r\n sortable: false,\r\n hide: true,\r\n },\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 120,\r\n\r\n renderCell: (params) => ,\r\n },\r\n {\r\n field: \"returnReasonDescription\",\r\n headerName: \"Reason\",\r\n flex: 1,\r\n },\r\n {\r\n field: \"returnReasonNextWorkflowID\",\r\n headerName: \"Next Workflow\",\r\n flex: 1,\r\n valueGetter: (params) =>\r\n state.workflowList\r\n .filter((m) => params.value == m.id)\r\n .map((res) => {\r\n return res.workflowName;\r\n }),\r\n },\r\n {\r\n field: \"uniqIdentifier\",\r\n headerName: \"Unique Identifier\",\r\n flex: 1,\r\n },\r\n {\r\n field: \"returnReasonColourCode\",\r\n headerName: \"Background Colour\",\r\n flex: 1,\r\n },\r\n {\r\n field: \"returnReasonTextColourCode\",\r\n headerName: \"Text Colour\",\r\n flex: 1,\r\n }\r\n ].map((c) => ({ ...c, cellClassName: getClass }));\r\n\r\n const pullReturnReasonAndUpdateState = async () => {\r\n let result = await getByWorkflowIdAndHeaderId(WorkflowID);\r\n let result1 = await getWorkflows();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.returnReasons.map((el) => ({\r\n ...el,\r\n id: el.returnReasonID,\r\n })),\r\n show: false,\r\n showDel: false,\r\n workflowList: result1.data,\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n ReturnReasonId: null,\r\n ReturnReasonDetails: null,\r\n };\r\n });\r\n };\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Return Reason data available
\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n {state.show ? (\r\n \r\n ) : null}\r\n \r\n Add Return Reason\r\n \r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Workflow\r\n \r\n \r\n Return Reasons\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n );\r\n};\r\nexport default ReturnReason;\r\n","import { get, post, put } from './http-calls';\r\n\r\nexport const getTechWriteUp = async (data, technicianJobId) => {\r\n let res = '';\r\n if (technicianJobId) {\r\n res = await get(`/TechnicianWriteUpFromHeaderRecordID/${data}?TechnicianJobId=${technicianJobId}`, { useAuthToken: true });\r\n } else {\r\n res = await get(`/TechnicianWriteUpFromHeaderRecordID/${data}`, { useAuthToken: true });\r\n }\r\n return res;\r\n};\r\n\r\nexport const AddTechWriteUp = async (data, NotesItem, val = 'S') => {\r\n let res = await post(\r\n '/SaveTechnicianWriteUp',\r\n {\r\n Mode: val,\r\n TechnicianNotesDate: data.date,\r\n TechnicianNotesHeaderRecordID: data.id,\r\n technicianNotesItem: NotesItem,\r\n TechnicianNotesMileageIn: data.mileagein,\r\n TechnicianNotesTimeIn: parseFloat(data.timein.replace(':', '.')),\r\n TechnicianNotesMileageOut: data.mileageout,\r\n TechnicianNotesTimeOut: parseFloat(data.timeout.replace(':', '.')),\r\n TechnicianNotesSmokeTestPerformed: data.smoketest,\r\n TechnicianNotesServiceIndicatorReset: data.serviceindicator,\r\n TechnicianNotesRadioCodeReset: data.radiocode,\r\n TechnicianNotesTimeClockReset: data.timeclock,\r\n TechnicianNotesTechnicianSignature: data.techniciansign,\r\n techWorkAccomplished: data.workaccomplished,\r\n TechnicianNotesReadingTaken: data.readingtaken,\r\n techFailureCodes: data.failurereason,\r\n TechnicianNotesTeamLeaderSignature: data.teamleadersign,\r\n TechnicianNotesReadingUnit: data.technicianNotesReadingUnit,\r\n TechnicianNotesJobID: data.newJOBId\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\nexport const getStandardWriteUp = async (IsAllRecord = 'N', langCode = 'en') => {\r\n let res = await get(`StandardWriteup?AllRecord=${IsAllRecord || 'N'}&LanguageCode=${langCode || 'en'}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const AddStandardWriteUp = async (data) => {\r\n let res = await post(`StandardWriteup`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const AddStandardWriteUpUpdate = async (data) => {\r\n let res = await post(`StandardWriteup/add`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const DeleteStandardWriteUp = async (id) => {\r\n let res = await post(\r\n `StandardWriteup/DeleteStandardWriteup/${id}`,\r\n {\r\n Id: id\r\n },\r\n { useAuthToken: true }\r\n );\r\n return res;\r\n};\r\n\r\nexport const getStandardWriteUpById = async (id) => {\r\n let res = await get(`StandardWriteup/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n","import React from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport SpeedDial from '@material-ui/lab/SpeedDial';\r\nimport SpeedDialIcon from '@material-ui/lab/SpeedDialIcon';\r\nimport SpeedDialAction from '@material-ui/lab/SpeedDialAction';\r\nimport './SpeedDialStyle.scss';\r\nimport { Backdrop } from '@material-ui/core';\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n transform: 'translateZ(0px)'\r\n // flexGrow: 1\r\n },\r\n exampleWrapper: {\r\n // position: 'relative'\r\n // marginTop: theme.spacing(3)\r\n },\r\n\r\n speedDial: {\r\n position: 'absolute',\r\n '&.MuiSpeedDial-directionDown, &.MuiSpeedDial-directionRight': {\r\n top: (props) => (props.top ? `${props.top}px` : theme.spacing(0)),\r\n left: (props) => (props.left ? `${props.left}px` : theme.spacing(0))\r\n },\r\n '&.MuiSpeedDial-directionUp, &.MuiSpeedDial-directionLeft': {\r\n bottom: (props) => (props.bottom ? `${props.bottom}px` : theme.spacing(0)),\r\n right: (props) => (props.right ? `${props.right}px` : theme.spacing(0))\r\n }\r\n }\r\n}));\r\n\r\nexport default function SpeedDials(props) {\r\n const { actions, direction } = props;\r\n const classes = useStyles(props);\r\n const [open, setOpen] = React.useState(false);\r\n\r\n const handleClose = () => {\r\n setOpen(false);\r\n };\r\n\r\n const handleOpen = () => {\r\n setOpen(true);\r\n };\r\n\r\n return (\r\n
\r\n
\r\n }\r\n onClose={handleClose}\r\n onOpen={handleOpen}\r\n open={open}\r\n direction={direction}\r\n color=\"secondary\"\r\n >\r\n {actions.map((m) => (\r\n \r\n ))}\r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React from 'react';\r\nimport { TextBox, SecondaryButton } from '../../FormInput';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { Grid } from '@material-ui/core';\r\n\r\nexport default function ConfirmationModal(props) {\r\n const [value, setValue] = React.useState({});\r\n\r\n return (\r\n \r\n {/* */}\r\n {props.message}\r\n {/* */}\r\n
\r\n \r\n \r\n \r\n Agree\r\n \r\n \r\n {props.handleCancel && (\r\n \r\n \r\n Cancel\r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton, TextBox, DialogContents, DialogTitles, Dialogs, DialogsActions, DefaultButton } from '../../../Core/FormInput/index';\r\nimport Box from '@material-ui/core/Box';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { Button, IconButton } from '@material-ui/core';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport '..//User Management/UserManagement.css';\r\nimport { AddStandardWriteUp, getStandardWriteUpById, AddStandardWriteUpUpdate } from '../../../Core/Service/techWriteUp-service';\r\nimport '../../technician/technician-app/TechnicianStyle.scss';\r\nimport SpeedDials from '../../../Core/Controls/SpeedDial';\r\nimport ConfirmationModal from '../../../Core/Controls/Dialog/ConfirmationModal';\r\nimport DialogComp from '../../../Core/Modal/dialogModal';\r\n\r\nconst AddUpdateModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const StandardWriteData = props.StandardWriteDataList;\r\n const [state, setState] = useState({\r\n complaint: '',\r\n cause: '',\r\n cure: '',\r\n Title: '',\r\n errors: {},\r\n StandardWriteUpID: null,\r\n isActive: true,\r\n languages: [],\r\n selectedLanguageCode: 'en',\r\n translationExistsY: [],\r\n translationExistsN: [],\r\n selectedData: '',\r\n selectedLanguages: []\r\n });\r\n\r\n useEffect(() => {\r\n if (StandardWriteData && StandardWriteData.id) {\r\n pullData();\r\n }\r\n }, []);\r\n\r\n const pullData = async () => {\r\n let result = await getStandardWriteUpById(StandardWriteData.id);\r\n let selectedData = result.data.standardWriteup.find((p) => state.selectedLanguageCode == p.languageCode);\r\n\r\n setState((st) => ({\r\n ...st,\r\n languages: result.data.languages,\r\n standardWriteupList: result.data.standardWriteup,\r\n StandardWriteUpID: StandardWriteData.id,\r\n TranslatedID: selectedData.id,\r\n complaint: selectedData.complaint,\r\n cause: selectedData.cause,\r\n cure: selectedData.cure,\r\n Title: selectedData.title,\r\n isActive: selectedData.isActive,\r\n selectedLanguages: []\r\n }));\r\n };\r\n\r\n useEffect(() => {\r\n setState((st) => ({\r\n ...st,\r\n translationExistsY: state.languages.filter((o) => o.translationExists == 'Y'),\r\n translationExistsN: state.languages\r\n .filter((o) => o.translationExists == 'N')\r\n .map((p) => {\r\n return {\r\n icon: `${p.languageCode.toUpperCase()}`,\r\n name: `${p.languageDescription}`,\r\n action: () => speedDialActionHandler(p)\r\n };\r\n })\r\n }));\r\n }, [state.languages]);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const speedDialActionHandler = (value) => {\r\n let tempSelectedLanguage = [...state.selectedLanguages];\r\n if (tempSelectedLanguage.indexOf(value.languageCode) === -1) {\r\n tempSelectedLanguage.push(value.languageCode);\r\n }\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst.showConfirmModal = true;\r\n nst.modalLaguage = value.languageDescription;\r\n nst.selectedLanguages = tempSelectedLanguage;\r\n nst.TranslatedID = null;\r\n return nst;\r\n });\r\n };\r\n\r\n const speedDialActionSubmitHandler = () => {\r\n handelSubmit(true);\r\n };\r\n\r\n const handleValidation = () => {\r\n let errors = {};\r\n let formIsValid = true;\r\n // if (!state.Title) {\r\n // formIsValid = false;\r\n // errors['Title'] = 'Title cannot be empty';\r\n // }\r\n if (!state.complaint) {\r\n formIsValid = false;\r\n errors['complaint'] = 'Complaint cannot be empty';\r\n }\r\n if (!state.cure) {\r\n formIsValid = false;\r\n errors['cure'] = 'Cure cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n const handelSubmit = async (flag) => {\r\n let tempLang = [];\r\n let res = '';\r\n if (flag && state.StandardWriteUpID) {\r\n tempLang = [...state.selectedLanguages];\r\n } else {\r\n tempLang.push(state.selectedLanguageCode);\r\n }\r\n if (handleValidation()) {\r\n let data = {\r\n Id: state.StandardWriteUpID,\r\n Title: state.Title,\r\n Complaint: state.complaint,\r\n Cause: state.cause,\r\n Cure: state.cure,\r\n isActive: state.isActive,\r\n Languages: tempLang,\r\n TranslatedID: state.TranslatedID || ''\r\n };\r\n if (state.StandardWriteUpID) {\r\n res = await AddStandardWriteUpUpdate(data);\r\n } else {\r\n res = await AddStandardWriteUp(data);\r\n }\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n !flag && props.onFormSubmit(true);\r\n flag && pullData();\r\n flag && confirmationModalClose();\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n if (StandardWriteData.id) {\r\n let selectedId = state.standardWriteupList.findIndex((p) => state.selectedLanguageCode == p.languageCode);\r\n\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n nst.standardWriteupList[selectedId][name] = value;\r\n return nst;\r\n });\r\n } else {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n }\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const confirmationModalClose = () => {\r\n setState((st) => ({ ...st, showConfirmModal: false }));\r\n };\r\n\r\n const TechBtnClick = (id) => {\r\n if (state.selectedLanguageCode != id) {\r\n let selectedData = state.standardWriteupList.find((p) => id == p.languageCode);\r\n\r\n setState((st) => ({\r\n ...st,\r\n selectedLanguageCode: id,\r\n TranslatedID: selectedData.id,\r\n complaint: selectedData.complaint,\r\n cause: selectedData.cause,\r\n cure: selectedData.cure,\r\n Title: selectedData.title,\r\n isActive: selectedData.isActive\r\n }));\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n {state.StandardWriteUpID ? (\r\n Update Standard Technician Write-Up\r\n ) : (\r\n Add Standard Technician Write-Up\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.StandardWriteUpID && (\r\n \r\n \r\n {state.translationExistsY.map((m) => (\r\n \r\n TechBtnClick(m.languageCode)}\r\n disabled={m.isDisabled}\r\n >\r\n {m.languageDescription}\r\n \r\n \r\n ))}\r\n \r\n\r\n {state.translationExistsN.length > 0 && (\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n {/* \r\n \r\n Title\r\n \r\n \r\n {state.errors['Title']}\r\n */}\r\n \r\n \r\n Complaint\r\n \r\n \r\n {state.errors['complaint']}\r\n \r\n \r\n Cause\r\n \r\n \r\n \r\n \r\n Cure\r\n \r\n \r\n {state.errors['cure']}\r\n \r\n {state.StandardWriteUpID && (\r\n \r\n \r\n \r\n \r\n Is Active?\r\n \r\n \r\n \r\n handleClick('isActive', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('isActive', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n handelSubmit(false)}>\r\n Submit\r\n \r\n \r\n \r\n {state.showConfirmModal ? (\r\n \r\n \r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nexport default AddUpdateModal;\r\n","import React, { useContext, useState, useEffect } from \"react\";\r\nimport {\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n} from \"@material-ui/core\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { SecondaryButton, PrimaryButton } from \"../../../Core/FormInput\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport { DeleteStandardWriteUp } from \"../../../Core/Service/techWriteUp-service\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\n\r\nconst DeleteStandardWriteUpModal = (props) => {\r\n const { hideModal,showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n StandardWriteUpName: \"\",\r\n });\r\n const StandardWriteUpID = props.StandardWriteUpID;\r\n const name = props.StandardWriteUpDetails;\r\n useEffect(async () => {\r\n setState((st) => {\r\n const nst = { ...st, StandardWriteUpName: name };\r\n return nst;\r\n });\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const handleDelete = async () => {\r\n let res = await DeleteStandardWriteUp(StandardWriteUpID);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Delete Standard Write Up - {state.StandardWriteUpName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Are you sure to delete this standard write-up\r\n \r\n \r\n \r\n \r\n No\r\n \r\n \r\n Yes\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DeleteStandardWriteUpModal;\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { Link } from 'react-router-dom';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { IconButton } from '@material-ui/core';\r\nimport { SecondaryButton } from '../../../Core/FormInput/index';\r\nimport AddUpdateModal from './AddUpdateModal';\r\nimport { getStandardWriteUp } from '../../../Core/Service/techWriteUp-service';\r\nimport DeleteOutlineIcon from '@material-ui/icons/DeleteOutline';\r\nimport DeleteStandardWriteUpModal from './DeleteStandardWriteUp';\r\nimport DataGridComp from '../../../Core/Grid';\r\n\r\nconst StandardTechWriteUp = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n branches: [],\r\n showDel: false,\r\n StandardWriteUpID: null\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullStandardWriteUpAndUpdateState();\r\n }, []);\r\n const getClass = (params) => {\r\n if (!params.row.isActive) {\r\n return 'Deleted-record';\r\n }\r\n };\r\n const column_new = [\r\n {\r\n field: 'id',\r\n headerName: 'ID',\r\n width: 130,\r\n sortable: false,\r\n hide: true\r\n },\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 100,\r\n renderCell: (params) => \r\n },\r\n { field: 'title', headerName: 'Title', flex: 1.5 },\r\n { field: 'complaint', headerName: 'Complaint', flex: 1.7 },\r\n {\r\n field: 'cause',\r\n headerName: 'Cause',\r\n flex: 3\r\n },\r\n {\r\n field: 'cure',\r\n headerName: 'Cure',\r\n flex: 4\r\n }\r\n ].map((c) => ({ ...c, cellClassName: getClass }));\r\n const handleDeleteStandardWriteUp = (params) => {\r\n const StandardWriteUp_id = params.value.row.id;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showDel: true,\r\n StandardWriteUpID: StandardWriteUp_id,\r\n StandardWriteUpDetails: params.value.row.title\r\n };\r\n return nst;\r\n });\r\n };\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n handleDeleteStandardWriteUp(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n const pullStandardWriteUpAndUpdateState = async () => {\r\n let result = await getStandardWriteUp('Y');\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.list\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n StandardWriteDataList: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n [props]: true,\r\n StandardWriteDataList: []\r\n };\r\n });\r\n };\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No record available
\r\n
\r\n );\r\n }\r\n const modalClosed = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false }));\r\n refreshGrid && pullStandardWriteUpAndUpdateState();\r\n };\r\n return (\r\n
\r\n
\r\n handleAdd('show')} className=\"btnadd\">\r\n Add Standard Technician Write Up\r\n \r\n
\r\n {state.show ? : null}\r\n {state.showDel ? (\r\n \r\n ) : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Standard Technician Write-Up\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default StandardTechWriteUp;\r\n","import {get, post} from './http-calls';\r\n\r\nexport const getFailureCodes = async ()=>{\r\n let res = await get('/failurecodes', { useAuthToken: true });\r\n return res;\r\n}\r\nexport const addFailureNotes = async (id, name) => {\r\n let res = await post(`failurecodes`, {\r\n FailureCode:id,\r\n FailureDescription: name,\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\nexport const DeleteFailureNotes = async (id) => {\r\n let res = await post(`WebForms/DeleteWebForms/${id}`, {\r\n Id: id,\r\n },{ useAuthToken: true });\r\n return res;\r\n}","import React, { useContext, useState, useEffect } from \"react\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport {\r\n TextBox,\r\n DialogContents,\r\n DialogTitles,\r\n Dialogs,\r\n SecondaryButton,\r\n DialogsActions,\r\n} from \"../../../Core/FormInput\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport \"../User Management/UserManagement.css\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport { addFailureNotes } from \"../../../Core/Service/failureCode-service\";\r\nconst AddFailureNoteModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n failureCode: null,\r\n description: \"\",\r\n errors: {},\r\n fields: {},\r\n });\r\n const FailureNotesDetails = props.FailureNotesDetails;\r\n\r\n useEffect(async () => {\r\n const FailureNotesData = FailureNotesDetails;\r\n if (FailureNotesDetails) {\r\n setState((st) => ({\r\n ...st,\r\n description: FailureNotesData.name,\r\n failureCode: FailureNotesData.id,\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n if (handleValidation()) {\r\n let res = await addFailureNotes(\r\n state.failureCode,\r\n state.description, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.description) {\r\n formIsValid = false;\r\n errors[\"description\"] = \"Description cannot be empty\";\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {state.failureCode ? (\r\n Update Failure Note\r\n ) : (\r\n Add Failure Note\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\r\n \r\n \r\n {state.errors[\"description\"]}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddFailureNoteModal;\r\n","import React, { useContext, useState, useEffect } from \"react\";\r\nimport {\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n} from \"@material-ui/core\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { SecondaryButton, PrimaryButton } from \"../../../Core/FormInput\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport { DeleteFailureNotes } from \"../../../Core/Service/failureCode-service\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\n\r\nconst DeleteFailureNotesModal = (props) => {\r\n const { hideModal,showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n FailureNotesName: \"\",\r\n });\r\n const FailureNotesId = props.FailureNotesDetails.id;\r\n const name = props.FailureNotesDetails.name;\r\n useEffect(async () => {\r\n setState((st) => {\r\n const nst = { ...st, FailureNotesName: name };\r\n return nst;\r\n });\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const handleDelete = async () => {\r\n let res = await DeleteFailureNotes(FailureNotesId);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Delete - {state.FailureNotesName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Are you sure to delete this failure note\r\n \r\n \r\n \r\n \r\n No\r\n \r\n \r\n Yes\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DeleteFailureNotesModal;\r\n","import React, { useEffect, useState, useContext } from \"react\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput/index\";\r\nimport { DataGrid, GridOverlay } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { Link } from \"react-router-dom\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport AddFailureNoteModal from \"./AddUpdateModal\";\r\nimport { getFailureCodes } from \"../../../Core/Service/failureCode-service\";\r\nimport DeleteFailureNotesModal from \"./DeleteFailureNotes\";\r\nimport DeleteOutlineIcon from \"@material-ui/icons/DeleteOutline\";\r\nimport DataGridComp from \"../../../Core/Grid\";\r\n\r\nconst FailureNotes = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n showDel: false,\r\n FailureNotesDetails: [],\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullFailureNotesAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n FailureNotesDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleDeleteWebForm = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showDel: true,\r\n FailureNotesDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n handleDeleteWebForm(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n const column_new = [\r\n {\r\n field: \"id\",\r\n headerName: \"ID\",\r\n width: 3,\r\n sortable: false,\r\n hide: true,\r\n },\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 110,\r\n\r\n renderCell: (params) => ,\r\n },\r\n { field: \"name\", headerName: \"Description\", flex: 2 },\r\n ];\r\n\r\n const pullFailureNotesAndUpdateState = async () => {\r\n let result = await getFailureCodes();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.map((w) => ({\r\n id: w.failureCode,\r\n name: w.failureDescription,\r\n })),\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n const modalClosed = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false }));\r\n refreshGrid && pullFailureNotesAndUpdateState();\r\n };\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n FailureNotesDetails: null,\r\n };\r\n });\r\n };\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Failure Notes available
\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n
\r\n \r\n Add Failure Notes\r\n \r\n
\r\n {state.show ? : null}\r\n {state.showDel ? : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Failure Notes\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default FailureNotes;\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions } from '../../../Core/FormInput';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport '../User Management/UserManagement.css';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { addWorkflowStepList, updateWorkflowStepList } from '../../../Core/Service/workflowList-service';\r\nconst AddWorkflowStepsListModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n listId: null,\r\n listName: '',\r\n errors: {},\r\n fields: {}\r\n });\r\n const WorkflowStepsListsDetails = props.WorkflowStepsListDetails;\r\n\r\n useEffect(async () => {\r\n if (WorkflowStepsListsDetails) {\r\n setState((st) => ({\r\n ...st,\r\n listName: WorkflowStepsListsDetails.listName,\r\n listId: WorkflowStepsListsDetails.listId\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n let res = '';\r\n if (state.listId) {\r\n res = await updateWorkflowStepList(state.listId, state.listName);\r\n } else {\r\n res = await addWorkflowStepList(state.listName);\r\n }\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(false);\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.listName) {\r\n formIsValid = false;\r\n errors['listName'] = 'listName cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {state.listId ? Update Workflow Steps List : Add Workflow Steps List}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n List Name\r\n \r\n \r\n {state.errors['listName']}\r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddWorkflowStepsListModal;\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, SecondaryButton, DialogContents, DialogTitles, Dialogs } from '../../../Core/FormInput';\r\nimport '../../../Core/Modal/model.css';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport { addWorkflowStepsListOptions } from '../../../Core/Service/workflowList-service';\r\nimport DeleteOutlineIcon from '@material-ui/icons/DeleteOutline';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { IconButton } from '@material-ui/core';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport { getWorkflowListOps } from '../../../Core/Service/workflowList-service';\r\nimport Box from '@material-ui/core/Box';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { SketchPicker } from 'react-color';\r\n// import { ChromePicker } from 'react-color';\r\n\r\nimport '../commonStyle.scss';\r\n\r\nconst popover = {\r\n position: 'absolute',\r\n zIndex: '2'\r\n};\r\nconst cover = {\r\n position: 'fixed',\r\n top: '0px',\r\n right: '0px',\r\n bottom: '0px',\r\n left: '0px'\r\n};\r\n\r\nconst WorkflowStepsListOptions = (props) => {\r\n const { showToast, hideModal } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({\r\n Description: '',\r\n rows: [],\r\n listName: '',\r\n isUpdate: false,\r\n optionID: null\r\n });\r\n\r\n const Id = props.WorkflowStepsListDetails;\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdateOptions(params)}>\r\n \r\n \r\n \r\n \r\n handleDeletePart(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const presetColors = ['rgb(255, 255, 0)', 'rgb(0,0,255)', 'rgb(0,255,0)', 'rgb(255,0,0)'];\r\n\r\n const handleUpdateOptions = (params) => {\r\n const row = params.value.row;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n id: params.value.row.id,\r\n Description: row.listOptionName,\r\n isUpdate: true,\r\n optionID: params.value.row.id,\r\n backgroundColour: params.value.row.backgroundColour,\r\n foregroundColour: params.value.row.foregroundColour\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleDeletePart = (params) => {\r\n const id = params.value.row.id;\r\n const newList = state.rows.filter((item) => item.id !== id);\r\n let newPartToSetIsDelete = {\r\n id: params.value.row.id,\r\n backgroundColour: params.value.row.backgroundColour,\r\n foregroundColour: params.value.row.foregroundColour,\r\n listOptionName: params.value.row.listOptionName,\r\n listOptionId: params.value.row.listOptionId,\r\n MarkForDelete: true\r\n };\r\n newList.push(newPartToSetIsDelete);\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n rows: newList\r\n };\r\n return nst;\r\n });\r\n };\r\n const columns = [\r\n {\r\n field: 'id',\r\n headerName: 'ID',\r\n width: 130,\r\n sortable: false,\r\n hide: true\r\n },\r\n { field: 'listOptionName', headerName: 'Name', width: 130 },\r\n { field: 'backgroundColour', headerName: 'Background Color', flex: 0.2 },\r\n { field: 'foregroundColour', headerName: 'Text Color', flex: 0.2 },\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 100,\r\n\r\n renderCell: (params) => \r\n }\r\n ];\r\n useEffect(async () => {\r\n pullWorkflowAndUpdateState();\r\n }, []);\r\n\r\n const pullWorkflowAndUpdateState = async () => {\r\n let result = await getWorkflowListOps(Id);\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.listOptions.map((w) => ({\r\n ...w,\r\n id: w.listOptionId,\r\n MarkForDelete: false,\r\n backgroundColour: w.backgroundColour,\r\n foregroundColour: w.foregroundColour\r\n })),\r\n listName: result.data.listName\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n\r\n const addOptionsToLocally = () => {\r\n if (state.Description === '') {\r\n showToast('Option Name is required');\r\n } else {\r\n let newPartToAdd = {\r\n listOptionId: state.optionID ? state.optionID : 0,\r\n listOptionName: state.Description,\r\n MarkForDelete: false,\r\n backgroundColour: state.backgroundColour,\r\n foregroundColour: state.foregroundColour\r\n };\r\n setState((st) => ({\r\n ...st,\r\n rows: state.rows.filter((item) => item.id !== state.optionID)\r\n }));\r\n setState((st) => {\r\n newPartToAdd.id = st.rows.length === 0 ? 1 : Math.max(...st.rows.map((c) => c.id)) + 1;\r\n return {\r\n ...st,\r\n rows: [...st.rows, newPartToAdd],\r\n Description: '',\r\n isUpdate: false,\r\n optionID: undefined\r\n };\r\n });\r\n }\r\n };\r\n const handelAddOptionToServer = async () => {\r\n let res = await addWorkflowStepsListOptions(\r\n Id,\r\n state.rows.map((c) => ({\r\n listOptionId: c.listOptionId,\r\n listOptionName: c.listOptionName,\r\n MarkForDelete: c.MarkForDelete,\r\n backgroundColour: c.backgroundColour,\r\n foregroundColour: c.foregroundColour\r\n }))\r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n }\r\n showToast(res.message);\r\n props.onFormSubmit(false);\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n return { ...st, [name]: value };\r\n });\r\n };\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No parts available
\r\n
\r\n );\r\n }\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n return (\r\n \r\n
\r\n \r\n \r\n Workflow Steps List Option\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n List Name - {state.listName}\r\n \r\n\r\n \r\n Option Name\r\n \r\n \r\n\r\n \r\n

Background Colour

\r\n \r\n setState((state) => ({\r\n ...state,\r\n backgroundColour: updatedColor.hex\r\n }))\r\n }\r\n />\r\n
\r\n \r\n

Text Colour

\r\n \r\n setState((state) => ({\r\n ...state,\r\n foregroundColour: updatedColor.hex\r\n }))\r\n }\r\n />\r\n
\r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n \r\n Update\r\n \r\n \r\n
\r\n\r\n \r\n item.MarkForDelete !== true)}\r\n disableColumnMenu={true}\r\n showColumnRightBorder={true}\r\n pageSize={100}\r\n />\r\n
\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default WorkflowStepsListOptions;\r\n","import React, { useEffect, useState, useContext } from \"react\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput/index\";\r\nimport { DataGrid, GridOverlay } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { Link } from \"react-router-dom\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport AddWorkflowStepsListModal from \"./AddUpdateModal\";\r\nimport { getWorkflowStepList } from \"../../../Core/Service/workflowList-service\";\r\nimport FormatListBulletedIcon from '@material-ui/icons/FormatListBulleted';\r\nimport WorkflowStepsListOptions from \"./../WorkflowStepsListOption\"\r\nimport DataGridComp from \"../../../Core/Grid\";\r\n\r\nconst WorkflowStepsList = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n WorkflowStepsListDetails: [],\r\n showOption:false,\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullWorkflowStepsListAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n WorkflowStepsListDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleOptions=(params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showOption: true,\r\n WorkflowStepsListDetails: params.value.row.id,\r\n };\r\n return nst;\r\n });\r\n };\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}\r\n >\r\n \r\n \r\n \r\n \r\n handleOptions(params)}\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n const column_new = [\r\n {\r\n field: \"id\",\r\n headerName: \"ID\",\r\n width: 130,\r\n sortable: false,\r\n hide: true,\r\n },\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 110,\r\n\r\n renderCell: (params) => ,\r\n },\r\n { field: \"listName\", headerName: \"Description\", flex: 2 },\r\n ];\r\n const pullWorkflowStepsListAndUpdateState = async () => {\r\n let result = await getWorkflowStepList();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.map((w) => ({\r\n ...w,\r\n id: w.listId,\r\n })),\r\n show: false,\r\n showOption:false,\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n WorkflowStepsListDetails: null,\r\n };\r\n });\r\n };\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Workflow Step List Option available
\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n
\r\n \r\n Add Workflow Steps List\r\n \r\n
\r\n {state.show ? (\r\n \r\n ) : null}\r\n {state.showOption ? (\r\n \r\n ) : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Workflow Steps List\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default WorkflowStepsList;\r\n","import {get, post} from './http-calls';\r\n\r\nexport const getWorkAccomplishCodes = async ()=>{\r\n let res = await get('/WorkAccomplishedCodes', { useAuthToken: true });\r\n return res;\r\n}\r\nexport const addWorkAccomplishedCodes = async (id, name) => {\r\n let res = await post(`WorkAccomplishedCodes`, {\r\n WorkAccomplishedCodeID:id,\r\n WorkAccomplishedDescription: name,\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\nexport const DeleteWorkAccomplishedCodes = async (id) => {\r\n let res = await post(`WorkAccomplishedCodes/DeleteWorkAccomplishedCode/${id}`, {\r\n Id: id,\r\n },{ useAuthToken: true });\r\n return res;\r\n}","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions } from '../../../Core/FormInput';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport '../User Management/UserManagement.css';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { addWorkAccomplishedCodes } from '../../../Core/Service/workaccomplished-service';\r\nconst AddWorkAccomplishedCodeModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n WorkAccompCodeId: null,\r\n Description: '',\r\n errors: {},\r\n fields: {}\r\n });\r\n const WorkAccomplishedCodesDetails = props.WorkAccomplishedCodeDetails;\r\n\r\n useEffect(async () => {\r\n if (WorkAccomplishedCodesDetails) {\r\n setState((st) => ({\r\n ...st,\r\n Description: WorkAccomplishedCodesDetails.workAccomplishedDescription,\r\n WorkAccompCodeId: WorkAccomplishedCodesDetails.id\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n let res = await addWorkAccomplishedCodes(state.WorkAccompCodeId, state.Description);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(false);\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.Description) {\r\n formIsValid = false;\r\n errors['Description'] = 'Description cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {state.WorkAccompCodeId ? (\r\n Update Work Accomplished Code\r\n ) : (\r\n Add Work Accomplished Code\r\n )}\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\r\n \r\n \r\n {state.errors['Description']}\r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddWorkAccomplishedCodeModal;\r\n","import React, { useContext, useState, useEffect } from \"react\";\r\nimport {\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n} from \"@material-ui/core\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { SecondaryButton, PrimaryButton } from \"../../../Core/FormInput\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport { DeleteWorkAccomplishedCodes } from \"../../../Core/Service/workaccomplished-service\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\n\r\nconst DeleteWorkAccCodeModal = (props) => {\r\n const { hideModal,showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n WorkAccCodeName: \"\",\r\n });\r\n const WorkAccCodeId = props.WorkAccomplishedCodeDetails.id;\r\n const name = props.WorkAccomplishedCodeDetails.workAccomplishedDescription;\r\n useEffect(async () => {\r\n setState((st) => {\r\n const nst = { ...st, WorkAccCodeName: name };\r\n return nst;\r\n });\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n const handleDelete = async () => {\r\n let res = await DeleteWorkAccomplishedCodes(WorkAccCodeId);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(false);\r\n }\r\n showToast(res.message);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Delete - {state.WorkAccCodeName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Are you sure to delete this work accomplished code\r\n \r\n \r\n \r\n \r\n No\r\n \r\n \r\n Yes\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DeleteWorkAccCodeModal;\r\n","import React, { useEffect, useState, useContext } from \"react\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput/index\";\r\nimport { DataGrid, GridOverlay } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { Link } from \"react-router-dom\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport AddWorkAccomplishedCodeModal from \"./AddUpdateModal\";\r\nimport { getWorkAccomplishCodes } from \"../../../Core/Service/workaccomplished-service\";\r\nimport DeleteOutlineIcon from \"@material-ui/icons/DeleteOutline\";\r\nimport DeleteWorkAccCodeModal from \"./DeleteModal\";\r\nimport DataGridComp from \"../../../Core/Grid\";\r\n\r\nconst WorkAccomplishedCode = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n WorkAccomplishedCodeDetails: [],\r\n showDel: false,\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullWorkAccomplishedCodeAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n WorkAccomplishedCodeDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleDeleteWebForm = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showDel: true,\r\n WorkAccomplishedCodeDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n handleDeleteWebForm(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n const column_new = [\r\n {\r\n field: \"id\",\r\n headerName: \"ID\",\r\n width: 130,\r\n sortable: false,\r\n hide: true,\r\n },\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 110,\r\n\r\n renderCell: (params) => ,\r\n },\r\n {\r\n field: \"workAccomplishedDescription\",\r\n headerName: \"Description\",\r\n flex: 2,\r\n },\r\n ];\r\n const pullWorkAccomplishedCodeAndUpdateState = async () => {\r\n let result = await getWorkAccomplishCodes();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.map((w) => ({\r\n ...w,\r\n id: w.workAccomplishedCodeID,\r\n })),\r\n show: false,\r\n showDel: false,\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n WorkAccomplishedCodeDetails: null,\r\n };\r\n });\r\n };\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Work Accomplished Code available
\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n
\r\n \r\n Add Work Accomplished Code\r\n \r\n
\r\n {state.show ? (\r\n \r\n ) : null}\r\n {state.showDel ? (\r\n \r\n ) : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Work Accomplished Code\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default WorkAccomplishedCode;\r\n","const imageSizeLimit = { height: 600, width: 800 };\r\n\r\nconst getMultiImgResized = async (selectedFile, cb) => {\r\n let dataUrl = '';\r\n let imgs = [];\r\n const can = document.createElement('canvas');\r\n document.body.append(can);\r\n can.style.display = 'none';\r\n var ctx = can.getContext('2d');\r\n let files = Array.from(selectedFile).map((file) => {\r\n var img = new Image();\r\n return new Promise((resolve) => {\r\n img.onload = () => {\r\n let ch = img.height;\r\n let cw = img.width;\r\n if (ch > imageSizeLimit.height || cw > imageSizeLimit.width) {\r\n if (ch > cw) {\r\n const ratio = imageSizeLimit.height / ch;\r\n cw = cw * ratio;\r\n ch = imageSizeLimit.height;\r\n } else {\r\n const ratio = imageSizeLimit.width / cw;\r\n ch = ch * ratio;\r\n cw = imageSizeLimit.width;\r\n }\r\n }\r\n if (ch > imageSizeLimit.height) {\r\n const ratio = imageSizeLimit.height / ch;\r\n cw = cw * ratio;\r\n ch = imageSizeLimit.height;\r\n }\r\n if (cw > imageSizeLimit.width) {\r\n const ratio = imageSizeLimit.width / cw;\r\n ch = ch * ratio;\r\n cw = imageSizeLimit.width;\r\n }\r\n can.height = ch;\r\n can.width = cw;\r\n ctx.drawImage(img, 0, 0, img.width, img.height, 0, 0, cw, ch);\r\n dataUrl = can.toDataURL('image/jpeg', 1);\r\n imgs.push(dataUrl);\r\n resolve(dataUrl);\r\n };\r\n img.src = URL.createObjectURL(file);\r\n });\r\n });\r\n let res = await Promise.all(files);\r\n cb(res);\r\n document.body.removeChild(can);\r\n};\r\n\r\nexport default getMultiImgResized;\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { InputLabel, Tooltip, CircularProgress } from '@material-ui/core';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton } from '../../../Core/FormInput';\r\nimport { getBranchById, postBranchData } from '../../../Core/Service/branch-screen-service';\r\nimport '../commonStyle.scss';\r\nimport { Backup } from '@material-ui/icons';\r\nimport RemoveCircle from '@material-ui/icons/RemoveCircle';\r\nimport getMultiImgResized from '../../../Core/CommonFunctions/multiImgResizer';\r\n\r\nfunction BranchModal(props) {\r\n const [state, setState] = useState({\r\n id: null,\r\n branchCode: '',\r\n branchName: '',\r\n branchStampImage: '',\r\n errors: {},\r\n showLoader: true\r\n });\r\n\r\n const [inputList, setInputList] = useState([]);\r\n\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n if (props.id) {\r\n let res = await getBranchById(props.id);\r\n if (res.success) {\r\n let data = res?.data?.stampImages;\r\n setInputList(data);\r\n setState((st) => ({\r\n ...st,\r\n branchName: props.branchName || '',\r\n branchCode: props.branchCode || '',\r\n id: props.id,\r\n showLoader: false\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n const upload = async (e) => {\r\n getMultiImgResized(e.target.files, (fileUrl) => {\r\n let data = fileUrl.map((m, i) => {\r\n return { branchStampID: null, branchStampName: state.branchName, branchStampImage: m };\r\n });\r\n setInputList([...inputList, ...data]);\r\n });\r\n };\r\n\r\n const onImageRemoveAll = () => {\r\n setInputList([]);\r\n };\r\n\r\n const handleRemoveClick = (index) => {\r\n const list = [...inputList];\r\n list.splice(index, 1);\r\n setInputList(list);\r\n };\r\n\r\n const submitHandler = async () => {\r\n const branchData = {\r\n id: state.id,\r\n BranchStampImage: inputList\r\n };\r\n let res = await postBranchData(branchData);\r\n if (res.success) {\r\n showToast('Branch Updated sucessfully');\r\n props.onClose(true);\r\n } else {\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {state.showLoader ? (\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n
\r\n Branch \r\n
\r\n
\r\n \r\n {`${props.branchCode} - ${state.branchName}`}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n  \r\n \r\n \r\n \r\n \r\n \r\n \r\n {inputList.map((item, i) => (\r\n \r\n \"No\r\n
\r\n handleRemoveClick(i)}>\r\n Remove\r\n \r\n
\r\n
\r\n ))}\r\n
\r\n
\r\n \r\n \r\n {props.vehicleCategoryID ? 'Update' : 'Add'}\r\n \r\n \r\n
\r\n \r\n )}\r\n
\r\n
\r\n );\r\n}\r\n//\r\nexport default BranchModal;\r\n\r\nconst lable_style = {\r\n fontSize: '20px',\r\n fontWeight: 'lighter'\r\n};\r\n","import moment from 'moment';\r\n\r\nconst formatters = {\r\n DateFormatter: (params) => {\r\n return params ? moment(params).format('YYYY-MM-DD') : '';\r\n },\r\n YearFormatter: (params) => {\r\n return params ? moment(params).format('DD/MM/YYYY') : '--:--';\r\n },\r\n MonthShortFormatter: (params) => {\r\n return params ? moment(params).format('DD-MMM-YYYY') : '-';\r\n },\r\n DateTimeFormatter: (params) => {\r\n return params ? moment(params).format('DD-MMM-YYYY HH:mm') : '';\r\n },\r\n DateTimeTHMSFormatter: (params) => {\r\n return params ? moment(params).format('YYYY-MM-DDTHH:mm') : '';\r\n },\r\n CurrencyThousandSeparator: (params) => {\r\n return params ? `£${params.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '£0.00';\r\n },\r\n\r\n CurrencyThousandSeparatorWithoutZero: (params) => {\r\n let param = Math.trunc(params);\r\n return params ? `£${param.toLocaleString()}` : '£0';\r\n },\r\n\r\n PercentageFormatter: (params) => {\r\n return params ? `${Math.round(params).toLocaleString()}%` : '0%';\r\n },\r\n\r\n ThousandSeparatorWithoutZero: (params) => {\r\n let param = Math.trunc(params);\r\n return params ? `${param.toLocaleString()}` : '0';\r\n },\r\n\r\n constantMonthList: (params) => {\r\n return [\r\n { description: 'January', id: '01' },\r\n { description: 'February', id: '02' },\r\n { description: 'March', id: '03' },\r\n { description: 'April', id: '04' },\r\n { description: 'May', id: '05' },\r\n { description: 'June', id: '06' },\r\n { description: 'July', id: '07' },\r\n { description: 'August', id: '08' },\r\n { description: 'September', id: '09' },\r\n { description: 'October', id: '10' },\r\n { description: 'November', id: '11' },\r\n { description: 'December', id: '12' }\r\n ];\r\n },\r\n ToFixedSeparator: (params) => {\r\n return params ? `${params.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '0.00';\r\n }\r\n};\r\n\r\nexport default formatters;\r\n","import { Checkbox, FormControlLabel, FormLabel, Grid, TableContainer, TextField } from '@material-ui/core';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport { Autocomplete } from '@material-ui/lab';\r\nimport React, { useContext, useMemo, useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport TabComponent from '../../../Core/Controls/Tabs';\r\nimport { SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport DataGridComp from '../../../Core/Grid';\r\nimport formatters from '../../../Core/Grid/inputFormatter';\r\nimport {\r\n AddExpenseCategory,\r\n AddOtherIncomeCategory,\r\n getBudgetDropDown,\r\n getBudgetExpenses,\r\n getBudgetOtherIncomes,\r\n getSalesTargets,\r\n postBudgetExpenceData,\r\n postSetOtherIncomes,\r\n setSalesTargets\r\n} from '../../../Core/Service/branch-screen-service';\r\n\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\n\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport '../commonStyle.scss';\r\nimport AppContext from '../../../App/AppContext';\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: 1250,\r\n\r\n '& .MuiTableCell-root': {\r\n padding: '10px'\r\n }\r\n },\r\n tableRowStyle: {\r\n backgroundColor: '#E0E0E0'\r\n }\r\n});\r\n\r\nconst MonthShortNameList = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\r\nconst tempNameList = [\r\n 'salesTargetRetail',\r\n 'salesTargetMotab',\r\n 'salesTarget',\r\n 'salesTargetCost',\r\n 'salesTargetAccessory',\r\n 'salesTargetAccessoryCost',\r\n 'salesTargetPDICost'\r\n];\r\n\r\nfunction isFiniteCheck(str) {\r\n return isFinite(str) ? str.toFixed(2) : '0.00';\r\n}\r\n\r\nconst SalesTargetScreen = (props) => {\r\n const [state, setState] = useState({ rows: {}, isActive: false, totals: {} });\r\n const { showToast } = useContext(AppContext);\r\n const classes = useStyles();\r\n const pullSalesTargetGridData = async () => {\r\n let res = await getSalesTargets(props.yearCode?.id, props.data.departmentID, props.branchCode);\r\n let temp = res.data.list.table;\r\n\r\n setState((st) => {\r\n return { ...st, rows: temp[0] };\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n pullSalesTargetGridData();\r\n }, [props.yearCode?.id]);\r\n\r\n useEffect(() => {\r\n let tempArr = { ...state.rows };\r\n let totals = {};\r\n tempNameList.forEach((o) => {\r\n let tempTotal = 0;\r\n MonthShortNameList.forEach((p) => {\r\n tempTotal += +tempArr[`${o}${p}`];\r\n });\r\n Object.assign(totals, { [`${o}Total`]: tempTotal });\r\n });\r\n //Gross profit = sales - cost of sales\r\n //Gross profit % = Gross profit / sales\r\n //Gross profit per unit = Gross profit / retail unit\r\n MonthShortNameList.forEach((p) => {\r\n totals[`vehicleGrossProfit${p}`] = isFiniteCheck(tempArr[`salesTarget${p}`] - tempArr[`salesTargetCost${p}`]);\r\n totals[`vehicleGrossProfitPercentage${p}`] = isFiniteCheck(totals[`vehicleGrossProfit${p}`] / tempArr[`salesTarget${p}`]);\r\n totals[`vehicleGrossProfitPerUnit${p}`] = isFiniteCheck(totals[`vehicleGrossProfit${p}`] / tempArr[`salesTargetRetail${p}`]);\r\n\r\n totals[`accessoryGrossProfit${p}`] = isFiniteCheck(tempArr[`salesTargetAccessory${p}`] - tempArr[`salesTargetAccessoryCost${p}`]);\r\n totals[`accessoryGrossProfitPercentage${p}`] = isFiniteCheck(totals[`accessoryGrossProfit${p}`] / tempArr[`salesTargetAccessory${p}`]);\r\n totals[`accessoryGrossProfitPerUnit${p}`] = isFiniteCheck(totals[`accessoryGrossProfit${p}`] / tempArr[`salesTargetRetail${p}`]);\r\n });\r\n\r\n setState((st) => {\r\n return { ...st, totals: totals };\r\n });\r\n }, [state.rows]);\r\n\r\n const gridInputChangeHandler = (e) => {\r\n let tempObj = { ...state.rows };\r\n tempObj[e.target.name] = e.target.value;\r\n setState((st) => {\r\n return { ...st, rows: tempObj };\r\n });\r\n };\r\n\r\n const InputWrapper = (name, value) => {\r\n return ;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let obj = { ...state.rows };\r\n let data = {\r\n salesTargetID: obj.salesTargetID < 0 ? null : obj.salesTargetID,\r\n salesTargetBranchID: props.branchCode,\r\n salesTargetDepartmentID: props.data.departmentID,\r\n salesTargetYear: props.yearCode?.id,\r\n salesTargetRetailJan: obj.salesTargetRetailJan,\r\n salesTargetRetailFeb: obj.salesTargetRetailFeb,\r\n salesTargetRetailMar: obj.salesTargetRetailMar,\r\n salesTargetRetailApr: obj.salesTargetRetailApr,\r\n salesTargetRetailMay: obj.salesTargetRetailMay,\r\n salesTargetRetailJun: obj.salesTargetRetailJun,\r\n salesTargetRetailJul: obj.salesTargetRetailJul,\r\n salesTargetRetailAug: obj.salesTargetRetailAug,\r\n salesTargetRetailSep: obj.salesTargetRetailSep,\r\n salesTargetRetailOct: obj.salesTargetRetailOct,\r\n salesTargetRetailNov: obj.salesTargetRetailNov,\r\n salesTargetRetailDec: obj.salesTargetRetailDec,\r\n salesTargetMotabJan: obj.salesTargetMotabJan,\r\n salesTargetMotabFeb: obj.salesTargetMotabFeb,\r\n salesTargetMotabMar: obj.salesTargetMotabMar,\r\n salesTargetMotabApr: obj.salesTargetMotabApr,\r\n salesTargetMotabMay: obj.salesTargetMotabMay,\r\n salesTargetMotabJun: obj.salesTargetMotabJun,\r\n salesTargetMotabJul: obj.salesTargetMotabJul,\r\n salesTargetMotabAug: obj.salesTargetMotabAug,\r\n salesTargetMotabSep: obj.salesTargetMotabSep,\r\n salesTargetMotabOct: obj.salesTargetMotabOct,\r\n salesTargetMotabNov: obj.salesTargetMotabNov,\r\n salesTargetMotabDec: obj.salesTargetMotabDec,\r\n salesTargetJan: obj.salesTargetJan,\r\n salesTargetFeb: obj.salesTargetFeb,\r\n salesTargetMar: obj.salesTargetMar,\r\n salesTargetApr: obj.salesTargetApr,\r\n salesTargetMay: obj.salesTargetMay,\r\n salesTargetJun: obj.salesTargetJun,\r\n salesTargetJul: obj.salesTargetJul,\r\n salesTargetAug: obj.salesTargetAug,\r\n salesTargetSep: obj.salesTargetSep,\r\n salesTargetOct: obj.salesTargetOct,\r\n salesTargetNov: obj.salesTargetNov,\r\n salesTargetDec: obj.salesTargetDec,\r\n salesTargetCostJan: obj.salesTargetCostJan,\r\n salesTargetCostFeb: obj.salesTargetCostFeb,\r\n salesTargetCostMar: obj.salesTargetCostMar,\r\n salesTargetCostApr: obj.salesTargetCostApr,\r\n salesTargetCostMay: obj.salesTargetCostMay,\r\n salesTargetCostJun: obj.salesTargetCostJun,\r\n salesTargetCostJul: obj.salesTargetCostJul,\r\n salesTargetCostAug: obj.salesTargetCostAug,\r\n salesTargetCostSep: obj.salesTargetCostSep,\r\n salesTargetCostOct: obj.salesTargetCostOct,\r\n salesTargetCostNov: obj.salesTargetCostNov,\r\n salesTargetCostDec: obj.salesTargetCostDec,\r\n salesTargetAccessoryJan: obj.salesTargetAccessoryJan,\r\n salesTargetAccessoryFeb: obj.salesTargetAccessoryFeb,\r\n salesTargetAccessoryMar: obj.salesTargetAccessoryMar,\r\n salesTargetAccessoryApr: obj.salesTargetAccessoryApr,\r\n salesTargetAccessoryMay: obj.salesTargetAccessoryMay,\r\n salesTargetAccessoryJun: obj.salesTargetAccessoryJun,\r\n salesTargetAccessoryJul: obj.salesTargetAccessoryJul,\r\n salesTargetAccessoryAug: obj.salesTargetAccessoryAug,\r\n salesTargetAccessorySep: obj.salesTargetAccessorySep,\r\n salesTargetAccessoryOct: obj.salesTargetAccessoryOct,\r\n salesTargetAccessoryNov: obj.salesTargetAccessoryNov,\r\n salesTargetAccessoryDec: obj.salesTargetAccessoryDec,\r\n salesTargetAccessoryCostJan: obj.salesTargetAccessoryCostJan,\r\n salesTargetAccessoryCostFeb: obj.salesTargetAccessoryCostFeb,\r\n salesTargetAccessoryCostMar: obj.salesTargetAccessoryCostMar,\r\n salesTargetAccessoryCostApr: obj.salesTargetAccessoryCostApr,\r\n salesTargetAccessoryCostMay: obj.salesTargetAccessoryCostMay,\r\n salesTargetAccessoryCostJun: obj.salesTargetAccessoryCostJun,\r\n salesTargetAccessoryCostJul: obj.salesTargetAccessoryCostJul,\r\n salesTargetAccessoryCostAug: obj.salesTargetAccessoryCostAug,\r\n salesTargetAccessoryCostSep: obj.salesTargetAccessoryCostSep,\r\n salesTargetAccessoryCostOct: obj.salesTargetAccessoryCostOct,\r\n salesTargetAccessoryCostNov: obj.salesTargetAccessoryCostNov,\r\n salesTargetAccessoryCostDec: obj.salesTargetAccessoryCostDec,\r\n salesTargetPDICostApr: obj.salesTargetPDICostApr,\r\n salesTargetPDICostAug: obj.salesTargetPDICostAug,\r\n salesTargetPDICostDec: obj.salesTargetPDICostDec,\r\n salesTargetPDICostFeb: obj.salesTargetPDICostFeb,\r\n salesTargetPDICostJan: obj.salesTargetPDICostJan,\r\n salesTargetPDICostJul: obj.salesTargetPDICostJul,\r\n salesTargetPDICostJun: obj.salesTargetPDICostJun,\r\n salesTargetPDICostMar: obj.salesTargetPDICostMar,\r\n salesTargetPDICostMay: obj.salesTargetPDICostMay,\r\n salesTargetPDICostNov: obj.salesTargetPDICostNov,\r\n salesTargetPDICostOct: obj.salesTargetPDICostOct,\r\n salesTargetPDICostSep: obj.salesTargetPDICostSep\r\n };\r\n\r\n let res = await setSalesTargets(data);\r\n if (res.success) {\r\n showToast('Sales Target Save Successfully');\r\n pullSalesTargetGridData();\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {MonthShortNameList.map((p) => {\r\n return {p};\r\n })}\r\n \r\n Total\r\n \r\n \r\n \r\n \r\n \r\n \r\n Retail Units\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {InputWrapper(`salesTargetRetail${p}`, state.rows[`salesTargetRetail${p}`])};\r\n })}\r\n {state.totals.salesTargetRetailTotal}\r\n \r\n \r\n \r\n Motab Units\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {InputWrapper(`salesTargetMotab${p}`, state.rows[`salesTargetMotab${p}`])};\r\n })}\r\n {state.totals.salesTargetMotabTotal}\r\n \r\n \r\n \r\n Vehicle Sales\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {InputWrapper(`salesTarget${p}`, state.rows[`salesTarget${p}`])};\r\n })}\r\n {state.totals.salesTargetTotal}\r\n \r\n \r\n \r\n Vehicle Cost Of Sales\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {InputWrapper(`salesTargetCost${p}`, state.rows[`salesTargetCost${p}`])};\r\n })}\r\n {state.totals.salesTargetCostTotal}\r\n \r\n \r\n \r\n Vehicle Gross Profit\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {state.totals[`vehicleGrossProfit${p}`]};\r\n })}\r\n \r\n \r\n \r\n Vehicle Gross Profit %\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {state.totals[`vehicleGrossProfitPercentage${p}`]};\r\n })}\r\n \r\n \r\n \r\n Vehicle Profit Per Unit\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {state.totals[`vehicleGrossProfitPerUnit${p}`]};\r\n })}\r\n \r\n \r\n \r\n Accessory Sales\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {InputWrapper(`salesTargetAccessory${p}`, state.rows[`salesTargetAccessory${p}`])};\r\n })}\r\n {state.totals.salesTargetAccessoryTotal}\r\n \r\n \r\n \r\n Accessory Cost Of Sales\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {InputWrapper(`salesTargetAccessoryCost${p}`, state.rows[`salesTargetAccessoryCost${p}`])};\r\n })}\r\n {state.totals.salesTargetAccessoryCostTotal}\r\n \r\n \r\n \r\n Accessory Gross Profit\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {state.totals[`accessoryGrossProfit${p}`]};\r\n })}\r\n \r\n \r\n \r\n Accessory Gross Profit %\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {state.totals[`accessoryGrossProfitPercentage${p}`]};\r\n })}\r\n \r\n \r\n \r\n Accessory Profit Per Unit\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {state.totals[`accessoryGrossProfitPerUnit${p}`]};\r\n })}\r\n \r\n \r\n \r\n PDI costs\r\n \r\n {MonthShortNameList.map((p) => {\r\n return {InputWrapper(`salesTargetPDICost${p}`, state.rows[`salesTargetPDICost${p}`])};\r\n })}\r\n {state.totals.salesTargetPDICostTotal}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SalesTargetScreen;\r\n","import { Checkbox, FormControlLabel, FormLabel, Grid, TextField } from '@material-ui/core';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport { Autocomplete } from '@material-ui/lab';\r\nimport React, { useContext, useMemo, useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport TabComponent from '../../../Core/Controls/Tabs';\r\nimport { SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport DataGridComp from '../../../Core/Grid';\r\nimport formatters from '../../../Core/Grid/inputFormatter';\r\nimport '../commonStyle.scss';\r\nimport {\r\n AddExpenseCategory,\r\n AddOtherIncomeCategory,\r\n getBudgetDropDown,\r\n getBudgetExpenses,\r\n getBudgetOtherIncomes,\r\n getSalesTargets,\r\n postBudgetExpenceData,\r\n postSetOtherIncomes\r\n} from '../../../Core/Service/branch-screen-service';\r\nimport SalesTargetScreen from './SalesTargetScreen';\r\nimport AppContext from '../../../App/AppContext';\r\n\r\nfunction CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No parts available
\r\n
\r\n );\r\n}\r\n\r\nconst MonthShortNameList = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\r\n\r\nconst ExpenseOtherIncomeComp = (props) => {\r\n const [state, setState] = useState({ rows: [], isActive: false, category: '', columnTotal: {} });\r\n const { showToast } = useContext(AppContext);\r\n\r\n const pullExpenseBudgetGridData = async () => {\r\n let res = await getBudgetExpenses(props.yearCode?.id, props.data.departmentID, props.branchCode);\r\n let temp = res.data.list.table.map((o) => {\r\n return { ...o, id: o.expenseCategoryID };\r\n });\r\n setState((st) => {\r\n return { ...st, rows: temp || [] };\r\n });\r\n };\r\n\r\n const pullOtherIncomesBudgetGridData = async () => {\r\n let res = await getBudgetOtherIncomes(props.yearCode?.id, props.data.departmentID, props.branchCode);\r\n let temp = res.data.list.table.map((o) => {\r\n return { ...o, id: o.otherIncomeCategoryID };\r\n });\r\n setState((st) => {\r\n return { ...st, rows: temp || [] };\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (props.fromPage == 'expense') {\r\n pullExpenseBudgetGridData();\r\n } else if (props.fromPage == 'otherIncome') {\r\n pullOtherIncomesBudgetGridData();\r\n }\r\n }, [props.yearCode?.id]);\r\n\r\n useEffect(() => {\r\n if (state.rows.length > 0) {\r\n let tempRows = [...state.rows];\r\n let frmpPage = props.fromPage == 'expense' ? 'expense' : props.fromPage == 'otherIncome' ? 'otherIncome' : '';\r\n let tempObj = {};\r\n let grandTotal = 0;\r\n MonthShortNameList.forEach((r) => {\r\n let total = 0;\r\n tempRows.forEach((q) => {\r\n total += +q[`${frmpPage}${r}`];\r\n });\r\n tempObj[`${frmpPage}${r}`] = total;\r\n grandTotal += tempObj[`${frmpPage}${r}`];\r\n });\r\n tempObj.grandTotal = grandTotal;\r\n setState((st) => {\r\n return { ...st, columnTotal: tempObj };\r\n });\r\n }\r\n }, [state.rows]);\r\n\r\n const column = [\r\n {\r\n field: `${props.fromPage == 'expense' ? 'expense' : props.fromPage == 'otherIncome' ? 'otherIncome' : ''}CategoryName`,\r\n headerName: 'Category',\r\n width: 300\r\n },\r\n ...MonthShortNameList.map((p) => {\r\n return {\r\n field: `${props.fromPage == 'expense' ? 'expense' : props.fromPage == 'otherIncome' ? 'otherIncome' : ''}${p}`,\r\n headerName: `${p}`,\r\n align: 'right',\r\n renderCell: (params) => {\r\n if (params.row.id != 'Columntotal') {\r\n return (\r\n \r\n );\r\n }\r\n },\r\n flex: 1\r\n };\r\n })\r\n ];\r\n\r\n const new_columns = useMemo(() => {\r\n let tempCols = [...column];\r\n tempCols.push({\r\n field: ``,\r\n headerName: 'Total',\r\n flex: 1,\r\n align: 'right',\r\n renderCell: (params) => {\r\n let frmpPage = props.fromPage == 'expense' ? 'expense' : props.fromPage == 'otherIncome' ? 'otherIncome' : '';\r\n let total = 0;\r\n MonthShortNameList.forEach((o) => {\r\n total += +params.row[`${frmpPage}${o}`];\r\n });\r\n return <>{total};\r\n }\r\n });\r\n\r\n return tempCols;\r\n }, [state.rows]);\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n return { ...st, [name]: value };\r\n });\r\n };\r\n\r\n const changeQantity = (id, des, name) => (e) => {\r\n let changedArray = [...state.rows];\r\n let objIndex = state.rows.findIndex((x) => x.id === id);\r\n changedArray[objIndex][name] = e.target.value;\r\n setState((st) => ({\r\n ...st,\r\n rows: changedArray\r\n }));\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let res = {};\r\n let fromPage = props.fromPage == 'expense' ? 'expense' : props.fromPage == 'otherIncome' ? 'otherIncome' : '';\r\n let data = {\r\n branchID: props.branchCode,\r\n year: props.yearCode?.id,\r\n expenseVM: state.rows.map((q) => {\r\n return {\r\n [`${fromPage}CategoryID`]: q[`${fromPage}CategoryID`],\r\n [`${fromPage}Jan`]: q[`${fromPage}Jan`],\r\n [`${fromPage}Feb`]: q[`${fromPage}Feb`],\r\n [`${fromPage}Mar`]: q[`${fromPage}Mar`],\r\n [`${fromPage}Apr`]: q[`${fromPage}Apr`],\r\n [`${fromPage}May`]: q[`${fromPage}May`],\r\n [`${fromPage}Jun`]: q[`${fromPage}Jun`],\r\n [`${fromPage}Jul`]: q[`${fromPage}Jul`],\r\n [`${fromPage}Aug`]: q[`${fromPage}Aug`],\r\n [`${fromPage}Sep`]: q[`${fromPage}Sep`],\r\n [`${fromPage}Oct`]: q[`${fromPage}Oct`],\r\n [`${fromPage}Nov`]: q[`${fromPage}Nov`],\r\n [`${fromPage}Dec`]: q[`${fromPage}Dec`]\r\n };\r\n })\r\n };\r\n\r\n if (props.fromPage == 'expense') {\r\n res = await postBudgetExpenceData(data);\r\n if (res.success) {\r\n showToast('Expense Target Save Successfully');\r\n pullExpenseBudgetGridData();\r\n }\r\n } else if (props.fromPage == 'otherIncome') {\r\n res = await postSetOtherIncomes(data);\r\n if (res.success) {\r\n showToast('Other Income Target Save Successfully');\r\n pullOtherIncomesBudgetGridData();\r\n }\r\n }\r\n };\r\n\r\n const handleCategorySubmit = async () => {\r\n let res = {};\r\n let data = {\r\n branchID: props.branchCode,\r\n departmentID: props.data.departmentID,\r\n categoryName: state.category,\r\n categoryIncludeInProfit: state.isActive\r\n };\r\n\r\n if (props.fromPage == 'expense') {\r\n res = await AddExpenseCategory(data);\r\n if (res.success) {\r\n showToast('Expense Category Added Successfully');\r\n pullExpenseBudgetGridData();\r\n }\r\n } else if (props.fromPage == 'otherIncome') {\r\n res = await AddOtherIncomeCategory(data);\r\n if (res.success) {\r\n showToast('Other Income Category Added Successfully');\r\n pullOtherIncomesBudgetGridData();\r\n }\r\n }\r\n };\r\n\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst[name] = checked;\r\n return nst;\r\n });\r\n };\r\n\r\n const TableFooter = () => {\r\n let frmpPage = props.fromPage == 'expense' ? 'expense' : props.fromPage == 'otherIncome' ? 'otherIncome' : '';\r\n return (\r\n \r\n \r\n Total\r\n \r\n {state.columnTotal &&\r\n MonthShortNameList.map((u) => {\r\n return (\r\n \r\n
{state.columnTotal[`${frmpPage}${u}`]}
\r\n
\r\n );\r\n })}\r\n \r\n
{state.columnTotal?.grandTotal}
\r\n
\r\n
\r\n );\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {(props.fromPage == 'expense' || props.fromPage == 'otherIncome') && (\r\n \r\n \r\n {/* Category */}\r\n \r\n \r\n \r\n }\r\n label=\"Include in Profit/Loss?\"\r\n />\r\n \r\n \r\n \r\n Add\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n\r\n \r\n TableFooter()}\r\n minWidth={1250}\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\nconst DepartmentDetailsComp = (props) => {\r\n const insideTabs = [\r\n ...(props.data.includeSales\r\n ? [{ label: 'Sales', body: }]\r\n : []),\r\n ...(props.data.includeExpenses\r\n ? [\r\n {\r\n label: 'Expense',\r\n body: \r\n }\r\n ]\r\n : []),\r\n ...(props.data.includeExpenses\r\n ? [\r\n {\r\n label: 'Other Income',\r\n body: \r\n }\r\n ]\r\n : [])\r\n ];\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst BranchTargetScreen = (props) => {\r\n const [state, setState] = useState({\r\n filterList: [],\r\n branchList: [],\r\n branchCode: props.branchCode || '',\r\n branchName: props.branchName || '',\r\n yearCode: { description: `${new Date().getFullYear()}`, id: `${new Date().getFullYear()}` },\r\n currentMonthDays: [],\r\n customerList: [],\r\n customerCode: {},\r\n filterData: [],\r\n budgetYear: [],\r\n salesDepartments: []\r\n });\r\n\r\n useEffect(async () => {\r\n let res = await getBudgetDropDown();\r\n\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.budgetYear = res.data.budgetYear.map((o) => {\r\n return { description: `${o.budgetYear}`, id: `${o.budgetYear}` };\r\n });\r\n newSt.salesDepartments = res.data.salesDepartments;\r\n\r\n return newSt;\r\n });\r\n }, []);\r\n\r\n const handleAutoChange = (fieldName) => (e, val) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt[fieldName] = val;\r\n return newSt;\r\n });\r\n };\r\n\r\n const tabs = state.salesDepartments.map((q) => {\r\n return { label: `${q.name}`, body: };\r\n });\r\n\r\n return (\r\n \r\n \r\n \r\n Select Year  \r\n \r\n \r\n (typeof option === 'string' ? option : option.description)}\r\n renderInput={(params) => }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default BranchTargetScreen;\r\n","import { Grid, FormLabel, Typography } from '@material-ui/core';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport { getBranchCodes, setBranchCodes } from '../../../Core/Service/branch-screen-service';\r\n\r\nconst UpdateBranchCodesModal = (props) => {\r\n const [state, setState] = useState({\r\n BranchInvoiceEmail: '',\r\n BranchContractBranchName: '',\r\n BranchRandMCodes: '',\r\n BranchWarrantyCodes: '',\r\n BranchCashCodes: '',\r\n BranchRectificationAccountCode: '',\r\n BranchServiceWarrantyWriteOffAccountCode: '',\r\n BranchPartsWarrantyWriteOffAccountCode: '',\r\n BranchConsumablesAccountCode: '',\r\n BranchMobiloVanAccountCode: '',\r\n });\r\n\r\n const { showToast } = useContext(AppContext);\r\n\r\n const handleSubmit = async () => {\r\n const data = {\r\n BranchID: props.branchID,\r\n BranchInvoiceEmail: state.BranchInvoiceEmail ? state.BranchInvoiceEmail : '',\r\n BranchContractBranchName: state.BranchContractBranchName ? state.BranchContractBranchName : '',\r\n BranchRandMCodes: state.BranchRandMCodes ? state.BranchRandMCodes : '',\r\n BranchWarrantyCodes: state.BranchWarrantyCodes ? state.BranchWarrantyCodes : '',\r\n BranchCashCodes: state.BranchCashCodes ? state.BranchCashCodes : '',\r\n BranchRectificationAccountCode: state.BranchRectificationAccountCode ? state.BranchRectificationAccountCode : '',\r\n BranchServiceWarrantyWriteOffAccountCode: state.BranchServiceWarrantyWriteOffAccountCode ? state.BranchServiceWarrantyWriteOffAccountCode : '',\r\n BranchPartsWarrantyWriteOffAccountCode: state.BranchPartsWarrantyWriteOffAccountCode ? state.BranchPartsWarrantyWriteOffAccountCode : '',\r\n BranchConsumablesAccountCode: state.BranchConsumablesAccountCode ? state.BranchConsumablesAccountCode : '',\r\n BranchMobiloVanAccountCode: state.BranchMobiloVanAccountCode ? state.BranchMobiloVanAccountCode : '',\r\n }\r\n let res = await setBranchCodes(data);\r\n if (!res.success) {\r\n console.error(res);\r\n showToast(\"Error occured.\")\r\n } else {\r\n showToast(\"Branch Codes updated successfully\")\r\n props.onClose()\r\n }\r\n }\r\n\r\n const pullAndUpdateState = async () => {\r\n let res = await getBranchCodes(props.branchID);\r\n if (res.success) {\r\n const data = res.data[0]\r\n setState((st) => ({\r\n ...st,\r\n BranchInvoiceEmail: data.branchInvoiceEmail,\r\n BranchContractBranchName: data.branchContractBranchName,\r\n BranchRandMCodes: data.branchRandMCodes,\r\n BranchWarrantyCodes: data.branchWarrantyCodes,\r\n BranchCashCodes: data.branchCashCodes,\r\n BranchRectificationAccountCode: data.branchRectificationAccountCode,\r\n BranchServiceWarrantyWriteOffAccountCode: data.branchServiceWarrantyWriteOffAccountCode,\r\n BranchPartsWarrantyWriteOffAccountCode: data.branchPartsWarrantyWriteOffAccountCode,\r\n BranchConsumablesAccountCode: data.branchConsumablesAccountCode,\r\n BranchMobiloVanAccountCode: data.branchMobiloVanAccountCode\r\n }));\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n pullAndUpdateState();\r\n }, []);\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n return { ...st, [name]: value };\r\n });\r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n Invoice Email\r\n \r\n \r\n\r\n \r\n Contract Branch Name\r\n \r\n \r\n\r\n \r\n RandM Codes\r\n \r\n \r\n\r\n \r\n Warranty Codes\r\n \r\n \r\n\r\n \r\n Cash Codes\r\n \r\n \r\n\r\n \r\n Rectification Account Code\r\n \r\n \r\n\r\n \r\n Service Warranty Write Off Account Code\r\n \r\n \r\n\r\n \r\n Parts Warranty Write Off Account Code\r\n \r\n \r\n\r\n \r\n Consumables Account Code\r\n \r\n \r\n\r\n \r\n Mobilo Van Account Code\r\n \r\n \r\n\r\n \r\n \r\n Note: Codes can be comma seperated i.e (1233,5232)\r\n \r\n \r\n\r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n}\r\nexport default UpdateBranchCodesModal;","import React, { useState, useEffect, useContext } from 'react';\r\nimport DataGridComp from '../../../Core/Grid';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport BranchModal from './BranchModal';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb/index';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { IconButton } from '@material-ui/core';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport { getAllBranch } from '../../../Core/Service/branch-screen-service';\r\nimport '../commonStyle.scss';\r\nimport BranchTargetScreen from './BranchTarget';\r\nimport AppContext from '../../../App/AppContext';\r\nimport TrackChangesIcon from '@material-ui/icons/TrackChanges';\r\nimport { Backup, Link } from '@material-ui/icons';\r\nimport UpdateBranchCodesModal from './BranchCodeModal';\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Branch', active: true }\r\n];\r\nconst styles = {\r\n gridImage: { width: 60, height: 'auto', backgroundSize: 'cover', marginTop: '5%' },\r\n gridImageContainer: { width: '100%', textAlign: 'center' }\r\n};\r\n\r\nfunction Braches(props) {\r\n let config = window._ENV_;\r\n let checkSite = window.location.host.includes('Nicol') ? true : false;\r\n\r\n const [state, setState] = useState({\r\n branchList: [],\r\n branchName: null,\r\n branchCode: '',\r\n id: null,\r\n loader: true,\r\n open: false\r\n });\r\n\r\n const { portalSettings } = useContext(AppContext);\r\n\r\n const stampRender = (data) => {\r\n let isBase64Image = data.row.branchStampImage.includes('base64');\r\n return (\r\n
\r\n {data.row.branchStampImage ? (\r\n \r\n ) : null}\r\n
\r\n );\r\n };\r\n\r\n useEffect(async () => {\r\n pullData();\r\n }, []);\r\n\r\n const pullData = async () => {\r\n let res = await getAllBranch();\r\n setState((state) => ({\r\n ...state,\r\n branchList: res.data\r\n }));\r\n };\r\n\r\n const btnHandler = (params) => {\r\n setState((state) => ({ ...state, open: true, id: params.id, branchName: params.branchName, branchCode: params.branchCode }));\r\n };\r\n\r\n const targetBtnHandler = (params) => {\r\n setState((state) => ({ ...state, openTargetModal: true, branchCode: params.branchCode, branchName: params.branchName }));\r\n };\r\n\r\n const codesBtnHandler = (params) => {\r\n setState((state) => ({ ...state, openCodeModal: true, id: params.id, branchCode: params.branchCode, branchName: params.branchName }));\r\n };\r\n\r\n const ActionButtons = (params) => {\r\n return (\r\n
\r\n \r\n btnHandler(params.value.row)}>\r\n {/* */}\r\n \r\n \r\n \r\n {portalSettings.portalSettingReportingEnabled && checkSite && (\r\n //Show this button to only Nicol site\r\n \r\n targetBtnHandler(params.value.row)}>\r\n \r\n \r\n \r\n )}\r\n \r\n codesBtnHandler(params.value.row)}>\r\n \r\n \r\n \r\n
\r\n );\r\n };\r\n\r\n const columns = [\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 100,\r\n renderCell: (params) => \r\n },\r\n { field: 'branchName', headerName: 'Branch Name', flex: 2 }\r\n // { field: 'branchStampImage', headerName: 'Stamps', flex: 2, renderCell: stampRender }\r\n ];\r\n\r\n const title = state.id ? 'Upload Stamps' : 'Add Stamps';\r\n\r\n const closeModal = (res) => {\r\n setState((state) => ({ ...state, open: false, openTargetModal: false, openCodeModal: false }));\r\n res && pullData();\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n {state.open ? (\r\n closeModal(false)} fullWidth maxWidth=\"md\">\r\n closeModal(true)} />\r\n \r\n ) : null}\r\n {state.openTargetModal ? (\r\n closeModal(false)} fullWidth maxWidth=\"xl\" fullScreen>\r\n \r\n \r\n ) : null}\r\n {state.openCodeModal ? (\r\n closeModal(false)} maxWidth=\"lg\">\r\n closeModal(false)} />\r\n \r\n ) : null}\r\n
\r\n );\r\n}\r\nexport default Braches;\r\n","import React, { useEffect, useMemo, useState, useContext } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\n\r\nimport './reportGijgoGrid.scss';\r\nimport ReactDOM from 'react-dom';\r\n\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport { makeStyles } from '@material-ui/core';\r\nimport moment from 'moment';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport { AppStorage } from '../../../../Core/Service/storage-service';\r\nimport { ExpBaseURL } from '../../../../Core/Service/http-calls';\r\nimport formatters from '../../../../Core/Grid/inputFormatter';\r\nimport MailIcon from '@material-ui/icons/Mail';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { GetExcelFileFromEndpoint } from '../../../../Core/Service/reportService';\r\n\r\nvar grid1;\r\nvar $ = window.$;\r\n\r\nlet addCommas = (val) => {\r\n if (val === '') {\r\n return '';\r\n } else {\r\n return val ? `£${val?.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '£0.00';\r\n }\r\n};\r\n\r\nconst ReportGijgoGrid = (props) => {\r\n let isAction = props.columns.find((c) => c.field === 'action');\r\n\r\n const useStyles = makeStyles((theme) => ({\r\n // gijgoGrid: {\r\n // '& .gj-grid-md th:first-of-type': {\r\n // // backgroundColor: 'red',\r\n // padding: (props) => {\r\n // return props.isAction ? '12px 5px 12px 5px' : '12px 15px 12px 10px';\r\n // }\r\n // }\r\n // }\r\n }));\r\n\r\n const classes = useStyles({ isAction: isAction });\r\n let token = AppStorage.getToken();\r\n const [state, setState] = useState({\r\n dropDownList: [],\r\n dropDownColNames: [],\r\n recordId: props.recordId,\r\n fileCount: `${props.fileCount || 0}`,\r\n configName: props.fileUploaderConfigName,\r\n columns: []\r\n });\r\n const [gridReload, setGridReload] = useState(new Date());\r\n\r\n const { hideModal, showToast } = useContext(AppContext);\r\n\r\n const gridFileCountRefresh = () => {\r\n setGridReload((st) => ({ ...st, gridReload: new Date() }));\r\n };\r\n\r\n useEffect(async () => {\r\n let dropDownColNames = [];\r\n let dropDownList = [];\r\n let finalColumns = [...props.columns].map((c) => {\r\n let tempObj = {\r\n ...c,\r\n // headerCssClass: 'gridHeader'\r\n align: c.align ? c.align : 'left'\r\n };\r\n let currencyRenderer = c.isCurrency;\r\n if (currencyRenderer) {\r\n tempObj.renderer = function (value, record) {\r\n return '' + formatters.CurrencyThousandSeparator(value) + '';\r\n };\r\n }\r\n if (c.isDropDown) {\r\n dropDownColNames.push(c);\r\n }\r\n return { ...tempObj };\r\n });\r\n\r\n if (dropDownColNames.length > 0) {\r\n dropDownList = typeof props.dropDownListProvider === 'function' ? await props.dropDownListProvider() : props.dropDownListProvider;\r\n }\r\n\r\n setState((st) => ({ ...st, columns: finalColumns, dropDownList: dropDownList, dropDownColNames: dropDownColNames }));\r\n }, [props.columns, gridReload, props.dropDownListProvider]);\r\n\r\n useEffect(async () => {\r\n if (state.columns.length > 0) {\r\n pullArchivedJobsAndUpdateState();\r\n }\r\n }, [state.columns, props.isReload, props.getUrl]);\r\n\r\n var GijgoFilterExtension = (function () {\r\n function DropdownFilter(grid, inputProperty, dropdown, changeValueConversion) {\r\n var id = $(grid).attr('id');\r\n var rowXPath = '#' + id + ' thead tr[data-role=\"filter\"]';\r\n var filterRow = $(rowXPath);\r\n if ($(filterRow).length == 1) {\r\n var colXPath = 'th [data-field=\"' + inputProperty.field + '\"]';\r\n var filterInput = $(filterRow).find(colXPath);\r\n if ($(filterInput).length) {\r\n $(filterInput).parent().addClass('grid-filter-select-th');\r\n $(dropdown).attr('data-field', inputProperty.field);\r\n $(filterInput).replaceWith(dropdown);\r\n $(dropdown).on('change', function () {\r\n ChangeFilter(grid, inputProperty, $(this), changeValueConversion);\r\n });\r\n }\r\n }\r\n }\r\n\r\n function ChangeFilter(grid, inputProperty, ddl, changeValueConversion) {\r\n if (changeValueConversion) {\r\n var propArr = changeValueConversion(ddl, inputProperty.field, grid);\r\n $(propArr).each(function (i, obj) {\r\n grid.data().params[obj.inputProperty.field] = obj.value;\r\n });\r\n if (propArr.length) {\r\n grid.reload();\r\n }\r\n } else {\r\n grid.data().params[`${inputProperty.queryParamName || inputProperty.field}`] = $(ddl).val();\r\n grid.reload();\r\n }\r\n }\r\n\r\n return {\r\n Dropdown: DropdownFilter\r\n };\r\n })();\r\n\r\n const pullArchivedJobsAndUpdateState = async () => {\r\n window.$(`#${'key1'}`).grid('destroy', true, true);\r\n\r\n const onSuccessFunc = function (response) {\r\n grid1.render(props.dataConverter(response));\r\n };\r\n\r\n grid1 = window.$(`#${'key1'}`).grid({\r\n primaryKey: 'Id',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/${props.getUrl}`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: onSuccessFunc\r\n },\r\n ...(props.minWidth !== null && { minWidth: 1350 }),\r\n ...(props.isGroupingId && { grouping: { groupBy: `${props.isGroupingId}` } }),\r\n // fixedHeader: true,\r\n // uiLibrary: 'bootstrap4',\r\n ...(!props.hideHeaderFilter && {\r\n headerFilter: {\r\n type: 'onchange'\r\n }\r\n }),\r\n ...(props.selectionType && { selectionType: props.selectionType }),\r\n ...(props.selectionMethod && { selectionMethod: props.selectionMethod }),\r\n // selectionType: 'multiple',\r\n // selectionMethod: 'checkbox',\r\n ...(props.detailTemplate && { detailTemplate: props.detailTemplate() }),\r\n columns: state.columns,\r\n ...(!props.hidePagination && { pager: { limit: 20, sizes: [20, 50, 100, 500, 1000, 2000, 5000] } })\r\n });\r\n\r\n if (state.dropDownColNames.length > 0) {\r\n state.dropDownColNames.forEach((q) => {\r\n var ddl = $('');\r\n\r\n state.dropDownList[`${q.listIdFromAPIResponse}`].forEach((k) => {\r\n let value = k[q.dropDownValueField || 'id'];\r\n if (value === undefined || value === null) {\r\n console.error(`${q.dropDownValueField} Invalid Property`);\r\n }\r\n ddl.append(``);\r\n });\r\n GijgoFilterExtension.Dropdown(grid1, q, ddl);\r\n });\r\n }\r\n\r\n let storedFiltterValue = props.FilterdParamsValues;\r\n props.columns.forEach((itm) => {\r\n if (storedFiltterValue) {\r\n var id = $(grid1).attr('id');\r\n var rowXPath = '#' + id + ' thead tr[data-role=\"filter\"]';\r\n var filterRow = $(rowXPath);\r\n if ($(filterRow).length == 1) {\r\n var colXPath = 'th [data-field=\"' + `${itm.field}` + '\"]';\r\n var filterInput = $(filterRow).find(colXPath);\r\n if ($(filterInput).length && storedFiltterValue[`${itm.field}`]) {\r\n $(filterInput).val(storedFiltterValue[`${itm.field}`]);\r\n grid1.data().params[itm.field] = storedFiltterValue[`${itm.field}`];\r\n }\r\n }\r\n }\r\n });\r\n\r\n grid1.on('dataBound', function (e, records, totalRecords) {\r\n let $tfoot = grid1.children('tfoot');\r\n let $thead = grid1.children('thead');\r\n if (props.hidePagination) {\r\n $tfoot.children('tr[data-role=\"pager\"]').remove();\r\n }\r\n if (props.hideFilterRow) {\r\n $thead.children('tr[data-role=\"filter\"]').remove();\r\n }\r\n if (props.isShowTotal) {\r\n let cal = state.columns.map((p) => {\r\n if (p.showColumnTotal) {\r\n let total = 0;\r\n records.forEach((u) => {\r\n total += +u[`${p.field}`];\r\n });\r\n return total;\r\n } else {\r\n return '';\r\n }\r\n });\r\n $tfoot.children('tr[data-role=\"TotalAmount\"]').remove();\r\n $tfoot.prepend(\r\n ` \r\n ${cal.map((y, i) => {\r\n if (i == 0) {\r\n return `Total`;\r\n }\r\n\r\n return `${addCommas(y)}`;\r\n })}\r\n `\r\n );\r\n }\r\n\r\n if (props.showCheckboxColFilterBtn) {\r\n // var SendMulitpleInvoiceslink = `\r\n // \r\n // `;\r\n // $('#key1').find('thead tr[data-role=\"filter\"] > th:nth-child(1)').html(SendMulitpleInvoiceslink);\r\n }\r\n if (props.showCheckboxColFilterBtn) {\r\n $('#key1')\r\n .find('thead tr[data-role=\"filter\"] > th:nth-child(1)')\r\n .html(() => props.showCheckboxColFilterBtn('#key1', records));\r\n }\r\n });\r\n\r\n grid1.on('rowDataBound', function (e, $row, id, record) {\r\n if (props.setRowStyleOnCondition) {\r\n let resColor = props.setRowStyleFunction(record);\r\n if (resColor) {\r\n for (var key in resColor) {\r\n $row.css(`${key}`, `${resColor[key]}`);\r\n }\r\n }\r\n }\r\n });\r\n\r\n grid1.on('cellDataBound', function (e, $displayEl, id, column, record) {\r\n if (props.setColStyleOnCondition) {\r\n let resColor = props.setColStyleFunction(record);\r\n if (resColor) {\r\n for (var key in resColor) {\r\n $displayEl.css(`${key}`, `${resColor[key]}`);\r\n }\r\n }\r\n }\r\n });\r\n\r\n grid1.reload();\r\n };\r\n\r\n const downloadCSVWrapper = async () => {\r\n showToast('Collating Data... This may take a while.');\r\n\r\n const data = grid1.data().params;\r\n\r\n let downloadURL = `${props.getUrl}${props.getUrl.includes('?') ? '&' : '?'}fileType=excel`;\r\n\r\n for (let key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n const value = data[key];\r\n downloadURL += `&${key}=${value}`;\r\n }\r\n }\r\n\r\n await GetExcelFileFromEndpoint(downloadURL, props.downloadName);\r\n };\r\n\r\n return (\r\n \r\n \r\n {props.downloadName && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default ReportGijgoGrid;\r\n","import {get, post, put } from './http-calls';\r\n\r\nexport const addBatteryResults = async(id, description) => {\r\n let res = await post(`/api/BatteryTestResults`, {\r\n BatteryTestResultCode: id,\r\n BatteryTestResultName: description,\r\n Mode: \"A\",\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const updateBatteryResults = async(id, description) => {\r\n let res = await post(`/api/BatteryTestResults`, {\r\n BatteryTestResultCode: id,\r\n BatteryTestResultName: description,\r\n Mode: \"U\",\r\n }, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getBatteryResults = async() => {\r\n let res = await get('/api/BatteryTestResults', { useAuthToken: true });\r\n return res;\r\n}","import React, { useContext, useState, useEffect } from \"react\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions} from \"../../../Core/FormInput\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport \"../User Management/UserManagement.css\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormLabel from \"@material-ui/core/FormLabel\";\r\nimport {addBatteryResults,updateBatteryResults} from \"../../../Core/Service/BatteryResults-service\";\r\n\r\nconst AddBatteryResultsModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n id: \"\",\r\n description: \"\",\r\n errors: {},\r\n fields: {},\r\n });\r\n\r\n const BatteryResultDetails = props.BatteryResultsDetails;\r\n\r\n useEffect(async () => {\r\n const BatteryResultData = BatteryResultDetails;\r\n if (BatteryResultDetails) {\r\n setState((st) => ({\r\n ...st,\r\n id: BatteryResultData.id,\r\n description: BatteryResultData.batteryTestResultName,\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n if(BatteryResultDetails) {\r\n let res = await updateBatteryResults(\r\n state.id,\r\n state.description, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n } else {\r\n let res = await addBatteryResults(\r\n state.id,\r\n state.description, \r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n showToast(res.message);\r\n }\r\n }\r\n };\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.description) {\r\n formIsValid = false;\r\n errors[\"description\"] = \"Battery Result Name cannot be empty\";\r\n }\r\n if (state.description.length > 50) {\r\n formIsValid = false;\r\n errors[\"description\"] = \"description cannot be larger than 50 character\";\r\n }\r\n if (!state.id) {\r\n formIsValid = false;\r\n errors[\"id\"] = \"Battery Result Code cannot be empty\";\r\n }\r\n if (state.id.length > 1) {\r\n formIsValid = false;\r\n errors[\"id\"] = \"ID cannot be larger than one character\";\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {BatteryResultDetails ? (\r\n Update Battery Results\r\n ) : (\r\n Add Battery Result\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Battery Result Code\r\n \r\n \r\n {state.errors[\"id\"]}\r\n \r\n \r\n \r\n Battery Result Name\r\n \r\n \r\n {state.errors[\"description\"]}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddBatteryResultsModal;","import { IconButton } from '@material-ui/core';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { GridOverlay } from '@material-ui/data-grid';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton } from '../../../Core/FormInput/index';\r\nimport DataGridComp from '../../../Core/Grid';\r\nimport AddBatteryResultsModal from './AddUpdateModal';\r\nimport { getBatteryResults } from '../../../Core/Service/BatteryResults-service';\r\n\r\nconst BatteryResults = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n BatteryResultsDetails: [],\r\n showDel: false\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n pullBatteryResultsAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n BatteryResultsDetails: params.value.row\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 120,\r\n renderCell: (params) => \r\n },\r\n {\r\n field: 'id', //batteryTestResultCode\r\n headerName: 'Battery Result Code',\r\n width: 200\r\n },\r\n {\r\n field: 'batteryTestResultName',\r\n headerName: 'Battery Result Name',\r\n flex: 1\r\n }\r\n ];\r\n\r\n const pullBatteryResultsAndUpdateState = async () => {\r\n let result = await getBatteryResults();\r\n\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.list.map((w) => ({\r\n ...w,\r\n id: w.batteryTestResultCode,\r\n batteryTestResultName: w.batteryTestResultName\r\n })),\r\n show: false,\r\n showDel: false\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n BatteryResultsDetails: null\r\n };\r\n });\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Battery Results Available
\r\n
\r\n );\r\n }\r\n\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false }));\r\n refreshGrid && pullBatteryResultsAndUpdateState();\r\n };\r\n\r\n return (\r\n
\r\n
\r\n \r\n Add Battery Result\r\n \r\n
\r\n {state.show ? : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Battery Results\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default BatteryResults;\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions, Multiselect } from '../../../Core/FormInput';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport '../User Management/UserManagement.css';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { Autocomplete } from '@material-ui/lab';\r\nimport { DefaultButton } from '../../../Core/FormInput';\r\nimport { addVideoCategory, getRoles, getVideoCategory } from '../../../Core/Service/video-service';\r\n\r\nconst AddVideoCategoryModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n id: '',\r\n videoCategoryDescription: '',\r\n videoCategoryActive: true,\r\n roleIDs: [],\r\n errors: {},\r\n fields: {}\r\n });\r\n\r\n const [roleData, setRoleData] = useState({\r\n roles: []\r\n });\r\n\r\n const [selectedData, setSelectedData] = useState({\r\n roles: []\r\n });\r\n\r\n const AutoRoleChange = (event, value) => {\r\n setSelectedData((st) => ({ ...st, roles: value }));\r\n setState((st) => {\r\n const nst = { ...st, roleIDs: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const VideoCategoryDetails = props.VideoCategoryDetails;\r\n\r\n useEffect(async () => {\r\n const VideoCategoryData = VideoCategoryDetails;\r\n\r\n let res = await getRoles();\r\n if (res.success) {\r\n const roles = res.data.roles.map((w) => ({\r\n id: w.id,\r\n name: w.name\r\n }));\r\n setRoleData((st) => ({ ...st, roles }));\r\n }\r\n if (VideoCategoryData) {\r\n setState((st) => ({\r\n ...st,\r\n id: VideoCategoryData.id,\r\n videoCategoryDescription: VideoCategoryData.videoCategoryDescription,\r\n videoCategoryActive: VideoCategoryData.videoCategoryActive\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (props.VideoCategoryDetails) {\r\n const rolesToAdd = [];\r\n props.VideoCategoryDetails.roles\r\n .replace(/ /g, '')\r\n .split(',')\r\n .map((role) => {\r\n roleData.roles.map((r) => {\r\n if (r.name.toLowerCase() == role) {\r\n rolesToAdd.push(r.id);\r\n }\r\n });\r\n setState((st) => ({\r\n ...st,\r\n roleIDs: rolesToAdd\r\n }));\r\n });\r\n }\r\n }, [roleData.roles]);\r\n\r\n useEffect(() => {\r\n if (props.VideoCategoryDetails) {\r\n const a = state.roleIDs.map((i) => i);\r\n const selectedModule = roleData.roles?.filter((w) => state.roleIDs.indexOf(w.id) > -1);\r\n setSelectedData((st) => ({ ...st, roles: selectedModule }));\r\n }\r\n }, [roleData.roles, state.roleIDs]);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n if (VideoCategoryDetails) {\r\n let res = await addVideoCategory(state.id, state.videoCategoryDescription, state.videoCategoryActive, state.roleIDs);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n } else {\r\n let res = await addVideoCategory(null, state.videoCategoryDescription, state.videoCategoryActive, state.roleIDs);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n }\r\n }\r\n };\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.videoCategoryDescription) {\r\n formIsValid = false;\r\n errors['videoCategoryDescription'] = 'Description cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n {VideoCategoryDetails ? Update Video Category : Add Video Category}\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\r\n \r\n \r\n {state.errors['videoCategoryDescription']}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Active?\r\n \r\n \r\n \r\n handleClick('videoCategoryActive', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('videoCategoryActive', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddVideoCategoryModal;\r\n","let imageSizeLimit = { height: 600, width: 800 };\r\n\r\nconst getResizedImage = (selectedFile, cb, imgh, imgw) => {\r\n if (imgh) {\r\n imageSizeLimit = { height: imgh, width: imgw };\r\n }\r\n\r\n let dataUrl = '';\r\n const can = document.createElement('canvas');\r\n document.body.append(can);\r\n can.style.display = 'none';\r\n var ctx = can.getContext('2d');\r\n var img = new Image();\r\n img.onload = function () {\r\n let ch = img.height;\r\n let cw = img.width;\r\n if (ch > imageSizeLimit.height || cw > imageSizeLimit.width) {\r\n if (ch > cw) {\r\n const ratio = imageSizeLimit.height / ch;\r\n cw = cw * ratio;\r\n ch = imageSizeLimit.height;\r\n } else {\r\n const ratio = imageSizeLimit.width / cw;\r\n ch = ch * ratio;\r\n cw = imageSizeLimit.width;\r\n }\r\n }\r\n if (ch > imageSizeLimit.height) {\r\n const ratio = imageSizeLimit.height / ch;\r\n cw = cw * ratio;\r\n ch = imageSizeLimit.height;\r\n }\r\n if (cw > imageSizeLimit.width) {\r\n const ratio = imageSizeLimit.width / cw;\r\n ch = ch * ratio;\r\n cw = imageSizeLimit.width;\r\n }\r\n can.height = ch;\r\n can.width = cw;\r\n ctx.drawImage(img, 0, 0, img.width, img.height, 0, 0, cw, ch);\r\n dataUrl = can.toDataURL('image/jpeg', 1);\r\n document.body.removeChild(can);\r\n cb(dataUrl);\r\n };\r\n img.src = URL.createObjectURL(selectedFile);\r\n};\r\n\r\nexport default getResizedImage;\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions } from '../../../Core/FormInput';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport '../User Management/UserManagement.css';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { DefaultButton } from '../../../Core/FormInput';\r\nimport { addVideo, getVideoCategory } from '../../../Core/Service/video-service';\r\nimport { InputLabel } from '@material-ui/core';\r\nimport getResizedImage from '../../../Core/CommonFunctions/imageResizer';\r\n\r\nconst AddVideoModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n videoID: '',\r\n videoTitle: '',\r\n videoURL: '',\r\n videoCategoryID: '',\r\n videoActive: true,\r\n errors: {},\r\n fields: {},\r\n thumbnail: ''\r\n });\r\n\r\n const VideoDetails = props.VideoDetails;\r\n const VideoCategoryDetails = props.VideoCategoryDetails;\r\n\r\n useEffect(async () => {\r\n if (VideoDetails) {\r\n setState((st) => ({\r\n ...st,\r\n videoID: VideoDetails.videoID,\r\n videoTitle: VideoDetails.videoTitle,\r\n videoURL: VideoDetails.videoURL,\r\n videoCategoryID: VideoCategoryDetails.videoCategoryID,\r\n videoActive: VideoDetails.videoActive,\r\n thumbnail: VideoDetails.videoThumbnail\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit(false);\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (e) => {\r\n e.preventDefault();\r\n\r\n if (handleValidation()) {\r\n if (VideoDetails) {\r\n let res = await addVideo(\r\n state.videoID,\r\n state.videoTitle,\r\n state.videoURL,\r\n VideoCategoryDetails.videoCategoryID,\r\n state.videoActive,\r\n state.thumbnail\r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n } else {\r\n let res = await addVideo(null, state.videoTitle, state.videoURL, VideoCategoryDetails.videoCategoryID, state.videoActive, state.thumbnail);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n props.onFormSubmit(true);\r\n }\r\n }\r\n }\r\n };\r\n\r\n // let handleImage = (bannerLogo) => (event) => {\r\n // let reader = new FileReader();\r\n // reader.onload = (e) => {\r\n // const { result } = e.target;\r\n // setState((st) => ({\r\n // ...st,\r\n // [bannerLogo]: result\r\n // }));\r\n // };\r\n // reader.readAsDataURL(event.target.files[0]);\r\n // };\r\n\r\n let handleImage = (event) => {\r\n if (event.target.files[0].type.includes('image')) {\r\n getResizedImage(\r\n event.target.files[0],\r\n (fileUrl) => {\r\n setState((state) => {\r\n const nst = { ...state, thumbnail: fileUrl };\r\n return nst;\r\n });\r\n },\r\n 200,\r\n 300\r\n );\r\n } else {\r\n showToast('Wrong file selected');\r\n }\r\n };\r\n\r\n const clearImage = (name) => (e) => {\r\n setState((st) => ({ ...st, [name]: null }));\r\n };\r\n\r\n const modelgridStyle = {\r\n gridContainer: { height: '600px' },\r\n formatterImageContainer: { width: '100%', textAlign: 'center' },\r\n formatterImage: { width: 120, maxHeight: 40, backgroundSize: 'cover' },\r\n formatterEditBtn: { textAlign: 'center' }\r\n };\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.videoURL) {\r\n formIsValid = false;\r\n errors['videoURL'] = 'URL cannot be empty';\r\n }\r\n if (!state.videoTitle) {\r\n formIsValid = false;\r\n errors['videoTitle'] = 'Title cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n {VideoDetails ? Update Video : Add Video}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Video Title\r\n \r\n \r\n {state.errors['videoTitle']}\r\n \r\n \r\n \r\n Video URL\r\n \r\n \r\n {state.errors['videoURL']}\r\n \r\n\r\n \r\n Thumbnail\r\n {state.thumbnail ? (\r\n Remove\r\n ) : (\r\n \r\n )}\r\n \r\n \r\n {state.thumbnail && (\r\n \r\n )}\r\n \r\n\r\n \r\n \r\n Active?\r\n \r\n \r\n \r\n handleClick('videoActive', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('videoActive', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddVideoModal;\r\n","import { IconButton } from \"@material-ui/core\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport { GridOverlay } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput\";\r\nimport DataGridComp from \"../../../Core/Grid\";\r\nimport { getVideos } from \"../../../Core/Service/video-service\";\r\nimport AddVideoModal from \"./VideoListModal\";\r\n\r\nconst VideoList = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n showLoader: true,\r\n VideoDetails: null,\r\n });\r\n\r\n const VideoCategoryDetails = props.VideoCategoryDetails;\r\n\r\n useEffect(async () => {\r\n pullVideosAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n VideoDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n VideoDetails: null,\r\n show: true,\r\n };\r\n });\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: \"id\",\r\n headerName: \"ID\",\r\n width: 130,\r\n sortable: false,\r\n hide: true,\r\n },\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 100,\r\n renderCell: (params) => ,\r\n },\r\n {\r\n field: \"videoTitle\",\r\n headerName: \"Title\",\r\n flex: 1,\r\n },\r\n {\r\n field: \"videoURL\",\r\n headerName: \"URL\",\r\n flex: 1,\r\n },\r\n {\r\n field: \"videoActive\",\r\n headerName: \"Active\",\r\n flex: 1,\r\n }\r\n ];\r\n\r\n const pullVideosAndUpdateState = async () => {\r\n let result = await getVideos();\r\n\r\n let sortedRows = [];\r\n result.data.list.map((row) => row.videoCategoryID == VideoCategoryDetails.id && sortedRows.push(row));\r\n\r\n if (result.success) {\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: sortedRows.map((w) => ({\r\n ...w,\r\n id: w.videoID,\r\n videoTitle: w.videoTitle,\r\n videoURL: w.videoURL,\r\n videoCategoryID: w.videoCategoryID,\r\n videoActive: w.videoActive,\r\n videoThumbnail: w.videoThumbnail,\r\n })),\r\n show: false,\r\n showDel: false,\r\n showLoader: false,\r\n }));\r\n }\r\n }\r\n if (!result.success) {\r\n console.log(result.message)\r\n // showToast(result.message);\r\n }\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Video available
\r\n
\r\n );\r\n }\r\n\r\n const modalClosed = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false }));\r\n refreshGrid && pullVideosAndUpdateState();\r\n };\r\n\r\n return (\r\n
\r\n
\r\n \r\n Add Video\r\n \r\n
\r\n {state.show ? (\r\n \r\n ) : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Video Categories\r\n \r\n \r\n {VideoCategoryDetails.videoCategoryDescription}\r\n \r\n \r\n {state.showLoader && (\r\n \r\n Loading Videos\r\n \r\n )}\r\n \r\n
\r\n );\r\n};\r\nexport default VideoList;\r\n","import { IconButton } from \"@material-ui/core\";\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport MovieCreationIcon from \"@material-ui/icons/MovieCreation\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport { GridOverlay } from \"@material-ui/data-grid\";\r\nimport EditOutlinedIcon from \"@material-ui/icons/EditOutlined\";\r\nimport React, { useContext, useEffect, useState } from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\nimport AppContext from \"../../../App/AppContext\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput/index\";\r\nimport DataGridComp from \"../../../Core/Grid\";\r\nimport AddVideoCategoryModal from \"./VideoCategoriesModal\";\r\nimport VideoList from \"./VideoList\";\r\nimport { getVideoCategories } from \"../../../Core/Service/video-service\";\r\n\r\nconst VideoCategories = (props) => {\r\n const [state, setState] = useState({\r\n rows: [],\r\n show: false,\r\n VideoCategoryDetails: null,\r\n showDel: false,\r\n showVideoList: false,\r\n });\r\n\r\n useEffect(async () => {\r\n pullVideoCategoriesAndUpdateState();\r\n }, []);\r\n\r\n const handleUpdate = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n show: true,\r\n VideoCategoryDetails: params.value.row,\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleVideoClick = (params) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showVideoList: !state.showVideoList,\r\n VideoCategoryDetails: state.showVideoList ? null : params.value.row,\r\n };\r\n return nst;\r\n });\r\n }\r\n\r\n const Arrow = (params) => {\r\n return (\r\n <>\r\n \r\n handleUpdate(params)}>\r\n \r\n \r\n \r\n\r\n \r\n handleVideoClick(params)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: \"\",\r\n headerName: \"Action\",\r\n sortable: false,\r\n width: 100,\r\n renderCell: (params) => ,\r\n },\r\n {\r\n field: 'id',\r\n headerName: 'id',\r\n width: 200,\r\n hide: true\r\n },\r\n {\r\n field: \"videoCategoryDescription\",\r\n headerName: \"Description\",\r\n flex: 1,\r\n },\r\n {\r\n field: \"roleID\",\r\n headerName: \"Roles\",\r\n flex: 1,\r\n },\r\n {\r\n field: \"videoCategoryActive\",\r\n headerName: \"Active\",\r\n flex: 1,\r\n },\r\n ];\r\n\r\n const pullVideoCategoriesAndUpdateState = async () => {\r\n let result = await getVideoCategories();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: result.data.list.map((w) => ({\r\n ...w,\r\n id: w.videoCategoryID,\r\n videoCategoryDescription: w.videoCategoryDescription,\r\n videoCategoryActive: w.videoCategoryActive,\r\n roleID: w.roles\r\n })),\r\n show: false,\r\n showDel: false,\r\n }));\r\n }\r\n if (!result.success) {\r\n console.log(result.message)\r\n // showToast(result.message);\r\n }\r\n };\r\n\r\n const handleAdd = (props) => {\r\n setState((st) => {\r\n return {\r\n ...st,\r\n show: true,\r\n VideoCategoryDetails: null,\r\n };\r\n });\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No Video Categories available
\r\n
\r\n );\r\n }\r\n\r\n const closeUpdateUser = (refreshGrid) => {\r\n setState((st) => ({ ...st, show: false, showDel: false, VideoCategoryDetails: null, }));\r\n refreshGrid && pullVideoCategoriesAndUpdateState();\r\n };\r\n\r\n return (\r\n
\r\n {\r\n state.showVideoList ? :\r\n <>\r\n
\r\n \r\n Add Video Category\r\n \r\n
\r\n {state.show ? (\r\n \r\n ) : null}\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n Video Categories\r\n \r\n \r\n \r\n \r\n }\r\n
\r\n );\r\n};\r\nexport default VideoCategories;","import React, { useEffect, useState, useContext } from 'react';\r\nimport { InputLabel } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\nimport { DefaultButton, SecondaryButton, TextBox, SelectBox, YesNoButton } from '../../../Core/FormInput';\r\nimport { Typography, Container } from '@material-ui/core';\r\nimport { SketchPicker } from 'react-color';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { getPortalSettings, addPortalSettings } from '../../../Core/Service/Settings';\r\nimport { getWorkflows } from '../../../Core/Service/workflow-service';\r\nimport CustomeEditor from '../../../Core/CkEditor';\r\nimport './style.scss';\r\nimport AppContext from '../../../App/AppContext';\r\nimport TabView from '../../../Core/Controls/Tabs';\r\nimport { FormControlLabel } from '@material-ui/core';\r\nimport { SecondaryCheckbox } from '../../../Core/FormInput';\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Settings', path: '/', active: true }\r\n];\r\n\r\nconst Settings = (props) => {\r\n const [state, setState] = useState({\r\n Title: '',\r\n CallUs: '',\r\n OpeningTimes: '',\r\n EmailUs: '',\r\n Diag: '',\r\n Qual: '',\r\n HeaderTextColorCode: '',\r\n HeaderBackgroundColorCode: '',\r\n MenubarTextColorCode: '',\r\n MenubarBackgroundColorCode: '',\r\n portalSettingTechnicianDeclaration: null,\r\n portalHighPriorityJobColour: '',\r\n productLogo: '',\r\n labelLogo: '',\r\n bannerLogo: '',\r\n navigationMenuActive: '',\r\n bannerImage: '',\r\n Id: '',\r\n workflowStepOptionsAsButtonGroup: false,\r\n portalSettingUnassignedTechnicianJobWorkflowID: null\r\n // portalSettingeWIPEnabled: false,\r\n // portalSettingReportingEnabled: false\r\n });\r\n const { showToast, portalSettings } = useContext(AppContext);\r\n\r\n const history = useHistory();\r\n\r\n const pullSettingsAndUpdateState = async () => {\r\n let res = await getPortalSettings();\r\n const data = res?.data?.details[0];\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n Id: data.portalSettingId,\r\n Title: data.portalSettingTitle,\r\n CallUs: data.portalSettingCallUs,\r\n OpeningTimes: data.portalSettingOpeningTime,\r\n EmailUs: data.portalSettingEmailUs,\r\n Diag: data.portalSettingDiagnosticCharges || '',\r\n Qual: data.portalSettingQCMessage || '',\r\n HeaderTextColorCode: data.portalHeaderTextColour,\r\n HeaderBackgroundColorCode: data.portalHeaderBackgroundColour,\r\n MenubarTextColorCode: data.portalMenuBarTextColour,\r\n MenubarBackgroundColorCode: data.portalMenuBarBackgroundColour,\r\n navigationMenuActive: data.portalSettingDisplayTopNavCounters,\r\n workflowStepOptionsAsButtonGroup: data.workflowStepOptionsAsButtonGroup,\r\n productLogo: data.portalSettingMainLogo,\r\n bannerLogo: data.portalSettingBanner,\r\n labelLogo: data.portalSettingAdditionalLogo,\r\n bannerImage: data.portalSettingBannerImage,\r\n portalSettingTechnicianDeclaration: data.portalSettingTechnicianDeclaration,\r\n portalSettingGridRefreshTime: data.portalSettingGridRefreshTime,\r\n portalSettingTechnWriteupHeight: data.portalSettingTechnWriteupHeight,\r\n portalSettingDisplayPartStockStatus: data.portalSettingDisplayPartStockStatus,\r\n\r\n portalSettingGridActionLabel: data.portalSettingGridActionLabel,\r\n portalSettingGridWIPNoLabel: data.portalSettingGridWIPNoLabel,\r\n portalSettingGridVehicleRegLabel: data.portalSettingGridVehicleRegLabel,\r\n portalSettingGridModelLabel: data.portalSettingGridModelLabel,\r\n portalSettingGridCustomerNameLabel: data.portalSettingGridCustomerNameLabel,\r\n portalSettingGridDateDueInLabel: data.portalSettingGridDateDueInLabel,\r\n portalSettingGridDateDueOutLabel: data.portalSettingGridDateDueOutLabel,\r\n portalSettingGridReturnReasonLabel: data.portalSettingGridReturnReasonLabel,\r\n portalSettingGridBranchLabel: data.portalSettingGridBranchLabel,\r\n portalSettingGridFranchiseLabel: data.portalSettingGridFranchiseLabel,\r\n portalSettingGridJobDescriptionLabel: data.portalSettingGridJobDescriptionLabel,\r\n portalSettingGridAccountLabel: data.portalSettingGridAccountLabel,\r\n portalSettingGridCreatedByLabel: data.portalSettingGridCreatedByLabel,\r\n portalSettingGridAssignedDateLabel: data.portalSettingGridAssignedDateLabel,\r\n portalSettingGridTimeTakenLabel: data.portalSettingGridTimeTakenLabel,\r\n portalSettingGridStatusLabel: data.portalSettingGridStatusLabel,\r\n portalSettingGridAssignedDaysLabel: data.portalSettingGridAssignedDaysLabel,\r\n portalSettingGridChassisNumberLabel: data.portalSettingGridChassisNumberLabel,\r\n portalSettingGridOwningOperatorLabel: data.portalSettingGridOwningOperatorLabel,\r\n portalSettingUnassignedTechnicianJobWorkflowID: data.portalSettingUnassignedTechnicianJobWorkflowID,\r\n // portalSettingeWIPEnabled: data.portalSettingeWIPEnabled,\r\n // portalSettingReportingEnabled: data.portalSettingReportingEnabled\r\n portalSettingSpecialEquipmentEnabled: data.portalSettingSpecialEquipmentEnabled,\r\n showRegNumberInCustomerRatingBox: data.showRegNumberInCustomerRatingBox,\r\n portalHighPriorityJobColour: data.portalHighPriorityJobColour || '',\r\n canCustomerViewNotesButton: data.canCustomerViewNotesButton,\r\n canCustomerViewHistoryButton: data.canCustomerViewHistoryButton,\r\n canCustomerViewSaveButton: data.canCustomerViewSaveButton,\r\n canCustomerViewSaveAndCompleteButton: data.canCustomerViewSaveAndCompleteButton,\r\n canCustomerViewReturnButton: data.canCustomerViewReturnButton,\r\n canCustomerViewReturnReasonHistoryButton: data.canCustomerViewReturnReasonHistoryButton,\r\n canCustomerViewAllDocumentsButton: data.canCustomerViewAllDocumentsButton,\r\n canAuditorViewNotesButton: data.canAuditorViewNotesButton,\r\n canAuditorViewHistoryButton: data.canAuditorViewHistoryButton,\r\n canAuditorViewSaveButton: data.canAuditorViewSaveButton,\r\n canAuditorViewSaveAndCompleteButton: data.canAuditorViewSaveAndCompleteButton,\r\n canAuditorViewReturnButton: data.canAuditorViewReturnButton,\r\n canAuditorViewReturnReasonHistoryButton: data.canAuditorViewReturnReasonHistoryButton,\r\n canAuditorViewAllDocumentsButton: data.canAuditorViewAllDocumentsButton\r\n }));\r\n }\r\n if (!res.success) {\r\n console.log(res.message);\r\n }\r\n };\r\n let handleImage = (bannerLogo) => (event) => {\r\n let reader = new FileReader();\r\n reader.onload = (e) => {\r\n const { result } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [bannerLogo]: result\r\n }));\r\n };\r\n reader.readAsDataURL(event.target.files[0]);\r\n };\r\n\r\n const clearImage = (name) => (e) => {\r\n setState((st) => ({ ...st, [name]: null }));\r\n };\r\n\r\n const modelgridStyle = {\r\n formatterImageContainer: { width: '100%', textAlign: 'left' },\r\n // formatterImage: { width: '40%', maxHeight: 60, backgroundSize: 'cover' },\r\n formatterImage: { width: 120, maxHeight: 60, backgroundSize: 'cover' }\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const handleSubmit = async () => {\r\n const data = {\r\n PortalSettingId: state.Id,\r\n PortalSettingCallUs: state.CallUs,\r\n PortalSettingOpeningTime: state.OpeningTimes,\r\n PortalSettingEmailUs: state.EmailUs,\r\n PortalSettingTitle: state.Title,\r\n PortalHeaderBackgroundColour: state.HeaderBackgroundColorCode,\r\n PortalHeaderTextColour: state.HeaderTextColorCode,\r\n PortalMenuBarBackgroundColour: state.MenubarBackgroundColorCode,\r\n PortalMenuBarTextColour: state.MenubarTextColorCode,\r\n PortalSettingBannerImage: state.bannerImage,\r\n PortalSettingTechnicianDeclaration: state.portalSettingTechnicianDeclaration,\r\n PortalSettingQCMessage: state.Qual,\r\n PortalSettingDisplayTopNavCounters: state.navigationMenuActive,\r\n workflowStepOptionsAsButtonGroup: state.workflowStepOptionsAsButtonGroup,\r\n PortalSettingMainLogo: state.productLogo,\r\n PortalSettingBanner: state.bannerLogo,\r\n PortalSettingAdditionalLogo: state.labelLogo,\r\n PortalSettingDiagnosticCharges: state.Diag,\r\n portalSettingGridRefreshTime: state.portalSettingGridRefreshTime,\r\n portalSettingTechnWriteupHeight: state.portalSettingTechnWriteupHeight,\r\n portalSettingDisplayPartStockStatus: state.portalSettingDisplayPartStockStatus,\r\n portalHighPriorityJobColour: state.portalHighPriorityJobColour,\r\n portalSettingGridActionLabel: state.portalSettingGridActionLabel || '',\r\n portalSettingGridWIPNoLabel: state.portalSettingGridWIPNoLabel || '',\r\n portalSettingGridVehicleRegLabel: state.portalSettingGridVehicleRegLabel || '',\r\n portalSettingGridModelLabel: state.portalSettingGridModelLabel || '',\r\n portalSettingGridCustomerNameLabel: state.portalSettingGridCustomerNameLabel || '',\r\n portalSettingGridDateDueInLabel: state.portalSettingGridDateDueInLabel || '',\r\n portalSettingGridDateDueOutLabel: state.portalSettingGridDateDueOutLabel || '',\r\n portalSettingGridReturnReasonLabel: state.portalSettingGridReturnReasonLabel || '',\r\n portalSettingGridBranchLabel: state.portalSettingGridBranchLabel || '',\r\n portalSettingGridFranchiseLabel: state.portalSettingGridFranchiseLabel || '',\r\n portalSettingGridJobDescriptionLabel: state.portalSettingGridJobDescriptionLabel || '',\r\n portalSettingGridAccountLabel: state.portalSettingGridAccountLabel || '',\r\n portalSettingGridCreatedByLabel: state.portalSettingGridCreatedByLabel || '',\r\n portalSettingGridAssignedDateLabel: state.portalSettingGridAssignedDateLabel || '',\r\n portalSettingGridTimeTakenLabel: state.portalSettingGridTimeTakenLabel || '',\r\n portalSettingGridStatusLabel: state.portalSettingGridStatusLabel || '',\r\n portalSettingGridAssignedDaysLabel: state.portalSettingGridAssignedDaysLabel || '',\r\n portalSettingGridChassisNumberLabel: state.portalSettingGridChassisNumberLabel || '',\r\n portalSettingGridOwningOperatorLabel: state.portalSettingGridOwningOperatorLabel || '',\r\n portalSettingUnassignedTechnicianJobWorkflowID: state.portalSettingUnassignedTechnicianJobWorkflowID,\r\n // portalSettingeWIPEnabled: state.portalSettingeWIPEnabled,\r\n // portalSettingReportingEnabled: state.portalSettingReportingEnabled\r\n portalSettingSpecialEquipmentEnabled: state.portalSettingSpecialEquipmentEnabled,\r\n showRegNumberInCustomerRatingBox: state.showRegNumberInCustomerRatingBox,\r\n\r\n canCustomerViewNotesButton: state.canCustomerViewNotesButton || false,\r\n canCustomerViewHistoryButton: state.canCustomerViewHistoryButton || false,\r\n canCustomerViewSaveButton: state.canCustomerViewSaveButton || false,\r\n canCustomerViewSaveAndCompleteButton: state.canCustomerViewSaveAndCompleteButton || false,\r\n canCustomerViewReturnButton: state.canCustomerViewReturnButton || false,\r\n canCustomerViewReturnReasonHistoryButton: state.canCustomerViewReturnReasonHistoryButton || false,\r\n canCustomerViewAllDocumentsButton: state.canCustomerViewAllDocumentsButton || false,\r\n canAuditorViewNotesButton: state.canAuditorViewNotesButton || false,\r\n canAuditorViewHistoryButton: state.canAuditorViewHistoryButton || false,\r\n canAuditorViewSaveButton: state.canAuditorViewSaveButton || false,\r\n canAuditorViewSaveAndCompleteButton: state.canAuditorViewSaveAndCompleteButton || false,\r\n canAuditorViewReturnButton: state.canAuditorViewReturnButton || false,\r\n canAuditorViewReturnReasonHistoryButton: state.canAuditorViewReturnReasonHistoryButton || false,\r\n canAuditorViewAllDocumentsButton: state.canAuditorViewAllDocumentsButton || false\r\n };\r\n\r\n let res = await addPortalSettings(data);\r\n if (res.success) {\r\n showToast('Portal setting saved successfully');\r\n props.history.push('/');\r\n } else {\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n useEffect(async () => {\r\n pullSettingsAndUpdateState();\r\n let result1 = await getWorkflows();\r\n setState((st) => ({\r\n ...st,\r\n workFlowList: result1.data.map((m) => ({ id: m.id, name: m.workflowName }))\r\n }));\r\n }, []);\r\n\r\n const handleCkeditorstate = (name) => (event, editor) => {\r\n const data = editor.getData();\r\n setState((st) => ({ ...st, [name]: data }));\r\n };\r\n\r\n const handleCheckbox = (e, a) => {\r\n setState((st) => ({ ...st, [e.target.name]: a }));\r\n };\r\n\r\n const EwipModule = () => {\r\n return (\r\n
\r\n \r\n \r\n \r\n Hide Work Accomplished and Failure Reasons?\r\n \r\n handleClick('workflowStepOptionsAsButtonGroup', true)}\r\n onNoClick={() => handleClick('workflowStepOptionsAsButtonGroup', false)}\r\n />\r\n \r\n \r\n \r\n Display Part Stock Status?\r\n \r\n handleClick('portalSettingDisplayPartStockStatus', true)}\r\n onNoClick={() => handleClick('portalSettingDisplayPartStockStatus', false)}\r\n />\r\n \r\n \r\n \r\n Workflow - unassigned technician job\r\n \r\n \r\n \r\n \r\n \r\n Grid Refresh Time (seconds)\r\n \r\n \r\n \r\n Tech Writeup Height\r\n \r\n \r\n \r\n\r\n {/* \r\n \r\n Special Equipment Enabled?\r\n \r\n handleClick('portalSettingSpecialEquipmentEnabled', true)}\r\n onNoClick={() => handleClick('portalSettingSpecialEquipmentEnabled', false)}\r\n />\r\n */}\r\n\r\n \r\n \r\n Show Reg In Customer Rating Box?\r\n \r\n handleClick('showRegNumberInCustomerRatingBox', true)}\r\n onNoClick={() => handleClick('showRegNumberInCustomerRatingBox', false)}\r\n />\r\n \r\n\r\n \r\n \r\n Diagnostic Charges\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n Quality Control\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n User Grid Columns\r\n \r\n
\r\n
\r\n \r\n \r\n Action\r\n \r\n \r\n \r\n WIP No\r\n \r\n \r\n \r\n Vehicle Reg\r\n \r\n \r\n \r\n Model\r\n \r\n \r\n \r\n Customer Name\r\n \r\n \r\n \r\n Date Due In\r\n \r\n \r\n \r\n Date Due Out\r\n \r\n \r\n \r\n Return Reason\r\n \r\n \r\n \r\n Branch\r\n \r\n \r\n \r\n Franchise\r\n \r\n \r\n \r\n Job Description\r\n \r\n \r\n \r\n Account\r\n \r\n \r\n \r\n Created By\r\n \r\n \r\n \r\n Assigned Date\r\n \r\n \r\n \r\n Time Taken\r\n \r\n \r\n \r\n Status\r\n \r\n \r\n \r\n Assigned Days\r\n \r\n \r\n \r\n Chassis Number\r\n \r\n \r\n \r\n Owning Operator\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n Workflow Button Visibility\r\n \r\n
\r\n
\r\n \r\n \r\n Customer\r\n \r\n \r\n \r\n \r\n }\r\n label=\"Show Notes Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show History Button?\"\r\n />\r\n \r\n \r\n }\r\n label=\"Show Save Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show Save & Complete Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show Return Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show Return History Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show All Documents Button?\"\r\n />\r\n \r\n\r\n \r\n \r\n Auditor\r\n \r\n \r\n \r\n }\r\n label=\"Show Notes Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show History Button?\"\r\n />\r\n \r\n \r\n }\r\n label=\"Show Save Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show Save & Complete Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show Return Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show Return History Button?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Show All Documents Button?\"\r\n />\r\n \r\n
\r\n
\r\n );\r\n };\r\n\r\n const CommunicatorModule = () => {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n High Priority Job Colour\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n portalHighPriorityJobColour: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n \r\n
\r\n );\r\n };\r\n\r\n const tabs = [\r\n ...(portalSettings.portalSettingeWIPEnabled\r\n ? [\r\n {\r\n label: 'eWIP',\r\n body: \r\n }\r\n ]\r\n : []),\r\n // ...(portalSettings.portalSettingReportingEnabled\r\n // ? [\r\n // {\r\n // label: 'Reporting',\r\n // body: <>\r\n // }\r\n // ]\r\n // : null)\r\n ...(!portalSettings.portalSettingCommunicatorEnabled\r\n ? [\r\n {\r\n label: 'Communicator',\r\n body: \r\n }\r\n ]\r\n : [])\r\n ];\r\n return (\r\n
\r\n \r\n \r\n \r\n Portal Title\r\n \r\n \r\n \r\n Call Us\r\n \r\n \r\n \r\n Opening Times\r\n \r\n \r\n \r\n Email Us\r\n \r\n \r\n \r\n \r\n \r\n \r\n Colors\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Header Text\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n HeaderTextColorCode: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Header Background\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n HeaderBackgroundColorCode: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Menu bar Text\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n MenubarTextColorCode: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n Menu bar Background\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n MenubarBackgroundColorCode: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n Logos\r\n \r\n
\r\n
\r\n \r\n Product Logo\r\n {state.productLogo ? (\r\n Remove Logo\r\n ) : (\r\n \r\n )}\r\n \r\n \r\n {'\\u{2800}'}\r\n {state.productLogo ? (\r\n \r\n ) : (\r\n

Using default logo

\r\n )}\r\n
\r\n \r\n \r\n Banner Image\r\n \r\n {state.bannerLogo ? (\r\n Remove Logo\r\n ) : (\r\n \r\n )}\r\n \r\n \r\n {'\\u{2800}'}\r\n {state.bannerLogo ? (\r\n \r\n ) : (\r\n

Using default logo

\r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n Settings\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Display Top Navigation Counter?\r\n \r\n handleClick('navigationMenuActive', true)}\r\n onNoClick={() => handleClick('navigationMenuActive', false)}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n Save\r\n \r\n \r\n \r\n {\r\n props.history.push('/');\r\n }}\r\n >\r\n Cancel\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default Settings;\r\n","import {get, post } from './http-calls';\r\n\r\nexport const getDropdowns = async() => {\r\n let res = await get(`translations/dropdowns`, \r\n { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const getAllTranslations = async(TranslationFileID, TranslationCategory, TranslationKey) => {\r\n let res = await get(`translations/all/${TranslationFileID}/${TranslationCategory}/${TranslationKey}`,\r\n { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const getEngTranslations = async() => {\r\n let res = await get(`translations/english`,\r\n { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const addUpdate = async(data) => {\r\n let res = await post(`translations`, data,\r\n { useAuthToken: true });\r\n return res;\r\n}","import { FormLabel, Grid, IconButton, TextField, Tooltip, Typography } from '@material-ui/core';\r\nimport EditOutlined from '@material-ui/icons/EditOutlined';\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\nimport React, { useEffect, useState } from 'react';\r\nimport { SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport DataGridComp from '../../../Core/Grid';\r\nimport { getDropdowns, getEngTranslations, getAllTranslations, addUpdate } from '../../../Core/Service/translation-service';\r\n\r\nconst Translations = (props) => {\r\n const [state, setState] = useState({\r\n fileDropdown: [],\r\n rows: [],\r\n editMode: false,\r\n errors: {},\r\n fields: {},\r\n disableSubmit: false,\r\n\r\n id: null,\r\n file: null,\r\n category: \"\",\r\n key: \"\",\r\n text: \"\",\r\n });\r\n\r\n useEffect(() => {\r\n pullData();\r\n }, []);\r\n\r\n const pullData = async () => {\r\n let dropdownRes = await getDropdowns();\r\n setState((st) => ({\r\n ...st,\r\n fileDropdown: dropdownRes.data?.translationFiles,\r\n }))\r\n\r\n let transRes = await getEngTranslations();\r\n setState((st) => ({\r\n ...st,\r\n rows: transRes.data?.table,\r\n }))\r\n }\r\n\r\n const handleArrowClick = async (input) => {\r\n setState((st) => ({\r\n ...st,\r\n editMode: true,\r\n file: { fileID: input.fileID, fileName: input.fileName },\r\n id: input.id,\r\n key: input.translationKey,\r\n text: input.translationText,\r\n category: input.category,\r\n }))\r\n\r\n let res = await getAllTranslations(input.fileID, input.category, input.translationKey);\r\n\r\n res.data?.table.map((arr) => {\r\n setState((st) => ({\r\n ...st,\r\n [arr.languageDescription]: { \"languageCode\": arr.languageCode, \"translationID\": arr.translationID, \"translationText\": arr.translationText }\r\n }))\r\n })\r\n }\r\n\r\n const ActionButtons = (params) => {\r\n return (\r\n <>\r\n \r\n handleArrowClick(params.value.row)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const columns = [\r\n {\r\n field: 'action',\r\n headerName: 'Action',\r\n width: 80,\r\n renderCell: (params) => \r\n },\r\n {\r\n field: 'fileName',\r\n headerName: 'File Name',\r\n width: 165,\r\n },\r\n {\r\n field: 'category',\r\n headerName: 'Category',\r\n width: 165,\r\n },\r\n {\r\n field: 'translationKey',\r\n headerName: 'Key',\r\n width: 165,\r\n },\r\n {\r\n field: 'translationText',\r\n headerName: 'Text',\r\n flex: 2\r\n },\r\n ];\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n\r\n if (name == \"Polish\" || name == \"Romanian\" || name == \"Hindi\") {\r\n setState((st) => ({\r\n ...st,\r\n [name]: { \"languageCode\": state[name]?.languageCode, \"translationID\": state[name]?.translationID, \"translationText\": value }\r\n }))\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }))\r\n }\r\n }\r\n\r\n const handleAutoChange = (e, value) => {\r\n if (value)\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.file = value;\r\n return newSt;\r\n });\r\n }\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n\r\n if (!state.category) {\r\n formIsValid = false;\r\n errors[\"category\"] = \"Category cannot be empty\";\r\n }\r\n if (!state.file) {\r\n formIsValid = false;\r\n errors[\"file\"] = \"File cannot be empty\";\r\n }\r\n if (!state.key) {\r\n formIsValid = false;\r\n errors[\"key\"] = \"Key cannot be empty\";\r\n }\r\n if (!state.text) {\r\n formIsValid = false;\r\n errors[\"text\"] = \"Text cannot be empty\";\r\n }\r\n\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n const getData = (input) => {\r\n let data = {\r\n \"TranslationFileID\": state.file.fileID,\r\n \"TranslationFileName\": state.file.fileName,\r\n \"TranslationCategory\": state.category,\r\n \"TranslationKey\": state.key,\r\n \"TranslationLanguageCode\": \"en\",\r\n \"TranslationID\": state.id,\r\n \"TranslationText\": state.text\r\n }\r\n\r\n if (input == \"English\") {\r\n return data;\r\n } else {\r\n data[\"TranslationLanguageCode\"] = state[input]?.languageCode\r\n data[\"TranslationID\"] = state[input]?.translationID || 0\r\n data[\"TranslationText\"] = state[input]?.translationText\r\n }\r\n return data;\r\n }\r\n\r\n const handleSubmit = async () => {\r\n if (handleValidation()) {\r\n setState((st) => ({\r\n ...st,\r\n disableSubmit: true,\r\n }))\r\n\r\n let res = await addUpdate(getData(\"English\"))\r\n let resPolish = await addUpdate(getData(\"Polish\"))\r\n let resRomanian = await addUpdate(getData(\"Romanian\"))\r\n let resHindi = await addUpdate(getData(\"Hindi\"))\r\n\r\n if (res.data?.success && resPolish.data?.success && resRomanian.data?.success && resHindi.data?.success) {\r\n setState((st) => ({\r\n ...st,\r\n editMode: false,\r\n key: null,\r\n category: \"\",\r\n id: null,\r\n file: null,\r\n category: \"\",\r\n key: \"\",\r\n text: \"\",\r\n Hindi: null,\r\n Romanian: null,\r\n Polish: null,\r\n disableSubmit: false,\r\n }))\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n disableSubmit: false,\r\n }))\r\n }\r\n }\r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n File\r\n \r\n (typeof option === 'string' ? option : option.fileName)}\r\n renderInput={(params) => }\r\n />\r\n \r\n {state.errors[\"file\"]}\r\n \r\n \r\n \r\n Category\r\n \r\n \r\n {state.errors[\"category\"]}\r\n \r\n \r\n \r\n Key\r\n \r\n \r\n {state.errors[\"key\"]}\r\n \r\n \r\n \r\n Text\r\n \r\n \r\n {state.errors[\"text\"]}\r\n \r\n \r\n\r\n \r\n \r\n Translation Literals\r\n \r\n
\r\n
\r\n\r\n \r\n Polish\r\n \r\n \r\n \r\n Romanian\r\n \r\n \r\n \r\n Hindi\r\n \r\n \r\n\r\n \r\n handleSubmit()}\r\n disabled={state.disableSubmit}\r\n >\r\n {state.editMode ? \"Save\" : \"Add\"}\r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
\r\n )\r\n}\r\nexport default Translations","import './budget.scss';\r\nimport { Grid } from '@material-ui/core';\r\nimport ArrowUpwardIcon from '@material-ui/icons/ArrowUpward';\r\nimport ArrowDownwardIcon from '@material-ui/icons/ArrowDownward';\r\nimport ProfitLoss from './profitLoss';\r\nimport ReactSpeedometer from 'react-d3-speedometer';\r\n\r\nexport const BudgetCard = (props) => {\r\n const { count, label, subCount1, sublabel1, subCount2, sublabel2, icon_1, icon_2 } = props;\r\n let Seticon = (props) => {\r\n let Icon = props.icon === 'up' ? ArrowUpwardIcon : ArrowDownwardIcon;\r\n return (\r\n
\r\n {props.counts || 0}\r\n {}\r\n
\r\n );\r\n };\r\n return (\r\n
\r\n \r\n \r\n
\r\n {count || 0}\r\n
\r\n
\r\n {label}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {sublabel1}\r\n
\r\n
\r\n\r\n \r\n \r\n\r\n
\r\n {sublabel2}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const BudgetCardTwo = (props) => {\r\n const { count, label, subCount, sublabel, icon } = props;\r\n\r\n let Seticon = (props) => {\r\n let Icon = props.icons === 'up' ? ArrowUpwardIcon : ArrowDownwardIcon;\r\n return (\r\n
\r\n {props.counts || 0}\r\n {}\r\n
\r\n );\r\n };\r\n return (\r\n
\r\n \r\n \r\n
\r\n {count || 0}\r\n
\r\n
\r\n {label}\r\n
\r\n \r\n
\r\n {sublabel}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const BudgetCardThree = (props) => {\r\n const { val, label, count_1, count_2, label_1, label_2, icon_1, icon_2 } = props;\r\n\r\n let Seticon = (props) => {\r\n let Icon = props.icon === 'up' ? ArrowUpwardIcon : ArrowDownwardIcon;\r\n return (\r\n
\r\n {props.counts || 0}\r\n {}\r\n
\r\n );\r\n };\r\n return (\r\n
\r\n \r\n \r\n
\r\n {val ? <>£{val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n
\r\n
\r\n {label}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {label_1}\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n {label_2}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const ProfitLossCard = (props) => {\r\n const { val, label, subValue_1, subValue_2 } = props;\r\n return (\r\n
\r\n \r\n
\r\n {label}\r\n
\r\n \r\n \r\n
\r\n Budget\r\n
\r\n
\r\n {subValue_1 ? <>£{subValue_1.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n
\r\n
\r\n \r\n
\r\n Profit\r\n
\r\n
\r\n {subValue_2 ? <>£{subValue_2.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const BudgetSubmeter = (props) => {\r\n const { val, subVal_1, subVal_2, title } = props;\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n Profit\r\n
\r\n
\r\n {subVal_1 ? <>£{subVal_1.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n
\r\n
\r\n \r\n
\r\n Budget\r\n
\r\n
\r\n {subVal_2 ? <>£{subVal_2.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import React from 'react';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport { ButtonGroup, Button } from '@material-ui/core';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport { useEffect, useState } from 'react';\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: 650\r\n }\r\n});\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(odd)': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nexport const ProfitTable = (props) => {\r\n const [state, setState] = useState({\r\n btn: 1,\r\n rows: props.rows ? props.rows : []\r\n });\r\n const classes = useStyles();\r\n useEffect(() => {\r\n setState((st) => ({ ...st, btn: 2, rows: [...props.rows].filter((m) => m.vehicleType === 'New') }));\r\n }, [props.rows]);\r\n\r\n useEffect(async () => {\r\n let newRows = [];\r\n if (state.btn === 1) {\r\n newRows = [...props.rows].reduce((acc, obj) => {\r\n var index = acc.find((item) => item.branch === obj.branch);\r\n if (index) {\r\n index.motabilityVolume += obj.motabilityVolume;\r\n index.retailVolume += obj.retailVolume;\r\n index.tradeVolume += obj.tradeVolume;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n }\r\n\r\n setState((st) => {\r\n let NewSt = { ...st };\r\n switch (st.btn) {\r\n case 1:\r\n NewSt.rows = newRows;\r\n break;\r\n case 2:\r\n NewSt.rows = [...props.rows].filter((m) => m.vehicleType === 'New');\r\n break;\r\n case 3:\r\n NewSt.rows = [...props.rows].filter((m) => m.vehicleType === 'Used');\r\n break;\r\n }\r\n return NewSt;\r\n });\r\n }, [state.btn]);\r\n\r\n const handleTable = (value) => {\r\n setState((st) => ({ ...st, btn: value }));\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n {\r\n handleTable(1);\r\n // setBtn(1);\r\n }}\r\n >\r\n COMBINED\r\n \r\n {\r\n handleTable(2);\r\n // setBtn(2);\r\n }}\r\n >\r\n NEW\r\n \r\n {\r\n // setBtn(3);\r\n handleTable(3);\r\n }}\r\n >\r\n USED\r\n \r\n \r\n \r\n \r\n Retail Volume\r\n \r\n \r\n Retail Profit\r\n \r\n \r\n Retail PPU\r\n \r\n \r\n {state.btn === 1 ? 'Total Volume' : state.btn === 2 ? 'Motability Profit' : state.btn === 3 ? 'Trade Profit' : 'Total Volume'}\r\n \r\n \r\n Total Profit\r\n \r\n \r\n Budget\r\n \r\n \r\n Difference (Profit:Budget)\r\n \r\n \r\n \r\n \r\n {state?.rows?.map((row, i) => {\r\n let Difference = row.totalProfit - row.budget;\r\n let volumeTotal = row.motabilityVolume + row.retailVolume + row.tradeVolume;\r\n return (\r\n \r\n \r\n {row.branch}\r\n \r\n {row.retailVolume}\r\n \r\n {row.retailProfit ? <>£{row.retailProfit.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n \r\n \r\n {row.retailPPU ? <>£{row.retailPPU.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n \r\n \r\n {state.btn === 1 ? (\r\n volumeTotal\r\n ) : state.btn === 2 ? (\r\n \r\n {row.motabilityProfit ? (\r\n <>£{row.motabilityProfit.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}\r\n ) : (\r\n <>£0.00\r\n )}\r\n \r\n ) : state.btn === 3 ? (\r\n {row.tradeProfit ? <>£{row.tradeProfit.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n ) : (\r\n 'N/A'\r\n )}\r\n \r\n \r\n {row.totalProfit ? <>£{row.totalProfit.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n \r\n \r\n {row.budget ? <>£{row.budget.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n \r\n \r\n {Difference ? <>£{Difference.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')} : <>£0.00}\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { ButtonGroup } from '@material-ui/core';\r\nimport { Button, Collapse, FormLabel, Grid, Hidden, Typography } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { Multiselect, TextBox, DatePicker } from '../../../Core/FormInput';\r\nimport { ProfitLossCard } from './budgetCard';\r\nimport { useState } from 'react';\r\nimport { ProfitTable } from './profitlossTable';\r\nimport { useEffect } from 'react';\r\nimport moment from 'moment';\r\n\r\nimport { getReportsDropdowns, getProfitLossbyID } from '../../../Core/Service/reportService';\r\nimport { FilterListIcon } from '@material-ui/icons/FilterList';\r\n\r\nconst ProfitLoss = () => {\r\n let startDate = moment().startOf('month').format('YYYY-MM-DD');\r\n let endDate = moment().format('YYYY-MM-DD');\r\n\r\n const [state, setState] = useState({\r\n startDate: startDate,\r\n endDate: endDate,\r\n branches: [],\r\n tableRow: [],\r\n branchList: [],\r\n franchise: [],\r\n groupIds: [],\r\n franchiseIds: []\r\n });\r\n\r\n const [temp, tempOption] = useState();\r\n\r\n const handleinput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }));\r\n };\r\n useEffect(async () => {\r\n let DropDownRes = await getReportsDropdowns();\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n branchList: DropDownRes.data.branch,\r\n franchise: DropDownRes.data.franchiseCode\r\n }));\r\n }\r\n }, []);\r\n useEffect(async () => {\r\n let res = await getProfitLossbyID(state.startDate, state.endDate, state.franchiseIds, state.groupIds);\r\n setState((st) => ({ ...st, branches: res?.data?.branches, tableRow: res?.data?.list }));\r\n }, [state.startDate, state.endDate, state.franchiseIds, state.groupIds]);\r\n\r\n const handleChanges = (event, value) => {\r\n tempOption((st) => ({ ...st, groupVal: value }));\r\n setState((st) => {\r\n const nst = { ...st, groupIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleChangesfranch = (event, value) => {\r\n tempOption((st) => ({ ...st, franchiseVal: value }));\r\n setState((st) => {\r\n const nst = { ...st, franchiseIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const [checked, setChecked] = useState(false);\r\n\r\n const handleChange = () => {\r\n setChecked((prev) => !prev);\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n Group\r\n \r\n \r\n \r\n \r\n \r\n Franchise\r\n \r\n \r\n \r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n \r\n {state?.branches?.map((m) => (\r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default ProfitLoss;\r\n","import { get, post } from './http-calls';\r\nimport { memoize } from 'lodash';\r\nimport ProfitLoss from './../../Components/internal/Budget/profitLoss';\r\nimport moment from 'moment';\r\n\r\nexport const getReportsDropdowns = async () => {\r\n let res = await get('Reports/ScreenDropdown', { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getReportsDropdownsResolveData = async () => {\r\n return (await getReportsDropdowns()).data;\r\n};\r\n\r\nexport const getReportsSalesDropdowns = async () => {\r\n let res = await get('Sales/ScreenDropdowns', { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getReportsSalesDropdownsResolveData = async () => {\r\n return (await getReportsSalesDropdowns()).data;\r\n};\r\n\r\nexport const getRportDashByID = async (start, end, fid, bid) => {\r\n let FranchiseCode = `FranchiseCode=${fid.join('&FranchiseCode=')}`;\r\n let BranchID = bid.length > 0 ? `BranchID=${bid.join('&BranchID=')}` : '';\r\n let res = await get(`Reports/GetDashBoard?StartDate=${start}&EndDate=${end || ''}&${FranchiseCode}&${BranchID}`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const getProfitLossbyID = async (start, end, fid, bid) => {\r\n let FranchiseCode = `FranchiseCode=${fid.join('&FranchiseCode=')}`;\r\n let BranchID = bid.length > 0 ? `BranchID=${bid.join('&BranchID=')}` : '';\r\n let res = await get(`Reports/GetProfitLoss?StartDate=${start}&EndDate=${end || ''}&${FranchiseCode}&${BranchID}`, { useAuthToken: true });\r\n\r\n return res;\r\n};\r\n\r\nexport const GetWIPHeaderByWIPNumber = async (wp, cn) => {\r\n let res = await get(`AgedMeasures/GetWIPHeader?WIPNumber=${wp}&Company=${cn}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const GetExcelFileFromEndpoint = async (URL, FileName) => {\r\n let res = await get(URL, {\r\n responseType: 'blob',\r\n returnOrgRes: true,\r\n useAuthToken: true\r\n });\r\n if (res) {\r\n const url = window.URL.createObjectURL(new Blob([res.data]));\r\n const link = document.getElementById('tempDownloadPDFLink') || document.createElement('a');\r\n link.id = 'tempDownloadPDFLink';\r\n link.href = url;\r\n link.setAttribute('download', `${FileName} ${moment().format('DD-MMM-YYYY HH:mm')}.xlsx`);\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n return true;\r\n }\r\n};\r\n\r\nexport const GetShiftCalender = async (BranchID, Code, Year) => {\r\n let res = await get(`ShiftCalender?BranchID=${BranchID}&Code=${Code}&Year=${Year}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const GetShiftCalenderScreenDropdowns = async (BranchID) => {\r\n let res = await get(`ShiftCalender/ScreenDropdowns?BranchID=${BranchID}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const GetResourceCalendar = async (BranchID, Code, Year) => {\r\n let res = await get(`ResourceCalendar?BranchID=${BranchID}&Code=${Code}&Year=${Year}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const GetResourceCalendarScreenDropdowns = async (BranchID) => {\r\n let res = await get(`ResourceCalendar/ScreenDropdowns?BranchID=${BranchID}`, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const GetBranchDeportmentScreenDropdowns = async () => {\r\n let res = await get(`Parts/BranchDeportmentScreenDropdowns`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getInvoiceBranchByID = async (id) => {\r\n let res = await get(`/api/Branches/GetBrancheByID/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\nexport const postInvoiceBranch = async (data) => {\r\n let res = await post(`Branches/BranchInvoiceUpdate`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport { getInvoiceBranchByID, postInvoiceBranch } from '../../../Core/Service/admin-Invoice_Branch-service';\r\nimport { Grid, InputLabel, Typography, FormLabel } from '@material-ui/core';\r\nimport { SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport AppContext from './../../../App/AppContext';\r\nconst EditBranchScreen = (props) => {\r\n const [state, setState] = useState({\r\n branchInvoice: [],\r\n branchID: props.branchID\r\n });\r\n\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n if (props.branchID) {\r\n let res = await getInvoiceBranchByID(props.branchID);\r\n if (res.success) {\r\n let data = res.data.branches.table[0];\r\n\r\n setState((st) => ({\r\n ...st,\r\n branchInvoice: res.data.branchInvoice.table,\r\n shortName: data.branchShortName,\r\n branchCode: data.branchCode,\r\n name: data.branchName,\r\n address1: data.branchAddressLine1,\r\n address2: data.branchAddressLine2,\r\n address3: data.branchAddressLine3,\r\n town: data.branchTown,\r\n county: data.branchCounty,\r\n country: data.branchCountry,\r\n postcode: data.branchPostCode,\r\n phone: data.branchPhone,\r\n branchID: data.branchID\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n const handleInput = (val) => (e) => {\r\n const { name, value } = e.target;\r\n let newBranchInvoice = [...state.branchInvoice];\r\n let index = state.branchInvoice.findIndex((m) => m.departmentCode == val);\r\n if (index) {\r\n newBranchInvoice[index].branchInvoiceResponseEmail = value;\r\n }\r\n setState((st) => ({\r\n ...st,\r\n branchInvoice: newBranchInvoice\r\n }));\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let branchInvoiceList = state.branchInvoice.map((m) => ({\r\n BranchID: props.branchID,\r\n departmentCode: m.departmentCode,\r\n departmentDescription: m.departmentDescription,\r\n branchInvoiceResponseID: m.branchInvoiceResponseID,\r\n branchInvoiceResponseEmail: m.branchInvoiceResponseEmail || ''\r\n }));\r\n\r\n let data = {\r\n branchInvoiceResponses: branchInvoiceList\r\n };\r\n\r\n let res = await postInvoiceBranch(data);\r\n if (res[0].success) {\r\n showToast(`Branches Updated Successfully`);\r\n props.onClose();\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {state.branchInvoice.map((m) => {\r\n return (\r\n <>\r\n \r\n {m.departmentDescription}\r\n \r\n \r\n \r\n Invoice Response Email\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default EditBranchScreen;\r\n","import React, { useMemo } from 'react';\r\nimport { SquareButton } from '../../../Core/FormInput/AppButton';\r\nimport ReportGijgoGrid from './../../internal/ReportsScreens/GijgoForReportsScreen/index';\r\nimport { Grid, Typography } from '@material-ui/core';\r\nimport ReactDOM from 'react-dom';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport EditBranchScreen from './editBranch';\r\nimport { useState } from 'react';\r\nimport DialogComp from './../../../Core/Modal/dialogModal';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\n\r\nconst baseColumns = [\r\n { field: 'action', sortable: false, title: ``, width: 70, filterable: false },\r\n { field: 'shortName', sortable: false, title: `Short Name`, width: 150 },\r\n\r\n { field: 'name', sortable: false, title: `Branch` },\r\n { field: 'address1', sortable: false, title: `Address` },\r\n {\r\n field: 'town',\r\n sortable: false,\r\n title: `Town`,\r\n width: 150\r\n },\r\n\r\n { field: 'country', sortable: false, title: `County`, width: 120 }\r\n];\r\n\r\nconst baseUrl = 'Branches/GetAllBranches';\r\n\r\nconst crumbs = (path) => [\r\n { name: 'Home', path: '' },\r\n { name: 'Invoices', active: true },\r\n { name: `Branch`, active: true }\r\n];\r\n\r\nconst BranchesScreen = () => {\r\n const [state, setState] = useState({\r\n showModal: false\r\n });\r\n\r\n const handleClose = () => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: false\r\n }));\r\n };\r\n\r\n const handleEdit = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: true,\r\n branchID: val.branchID\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n handleEdit(record)}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const randerSortCol = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n {record.shortName}  ({record.branchCode})\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n\r\n let colSortName = col.find((m) => m.field === 'shortName');\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n if (colSortName) {\r\n colSortName.renderer = randerSortCol;\r\n }\r\n\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n\r\n return col;\r\n }, []);\r\n return (\r\n
\r\n {state.showModal ? (\r\n \r\n \r\n \r\n ) : null}\r\n \r\n ({\r\n records: res.data.list,\r\n records: res?.data?.list.map((p) => ({ ...p }))\r\n })}\r\n columns={column}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n isShowTotal={false}\r\n // hidePagination={true}\r\n // isReload={state.isReload}\r\n // hidePagination={true}\r\n // hideFilterRow={true}\r\n />\r\n
\r\n );\r\n};\r\n\r\nexport default BranchesScreen;\r\n","import { get, post } from './http-calls';\r\n\r\nexport let addInvoiceCustomer = async (data) => {\r\n let res = await post(`Customers/Add`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport let editInvoiceCustomer = async (data) => {\r\n let res = await post(`Customers/Update`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport let editInvoiceCustomerNote = async (data) => {\r\n let res = await post(`Customers/UpdateNote`, data, { useAuthToken: true });\r\n return res;\r\n};\r\nexport let addBranchStatusEmails = async (data) => {\r\n let res = await post(`BranchStatusEmails`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport let editBranchStatusEmails = async (data) => {\r\n let res = await post(`BranchStatusEmails/update`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport let getInvoiceCustomerById = async (custId) => {\r\n let data = await get(`Customers?Id=${custId}`, { useAuthToken: true });\r\n return data;\r\n};\r\nexport let getBranchStatusEmailsById = async (InvoiceStatusId, BranchID) => {\r\n let data = await get(`BranchStatusEmails/GetById?InvoiceStatusId=${InvoiceStatusId}&BranchID=${BranchID}`, { useAuthToken: true });\r\n return data;\r\n};\r\nexport let deleteBranchStatusEmailsById = async (InvoiceStatusId, BranchID) => {\r\n let data = await post(`BranchStatusEmails/Delete?InvoiceStatusId=${InvoiceStatusId}&BranchID=${BranchID}`, {}, { useAuthToken: true });\r\n return data;\r\n};\r\nexport let getBranchStatusEmailsDropdown = async () => {\r\n let data = await get(`BranchStatusEmails/ScreenDropDown`, { useAuthToken: true });\r\n return data;\r\n};\r\nexport let getBranchInvoiceStatusDropdown = async (id) => {\r\n let data = await get(`Branches/GetBranchInvoiceStatus?BranchID=${id}`, { useAuthToken: true });\r\n return data;\r\n};\r\nexport let getDashboardForInvoice = async (data) => {\r\n let res = await get(`Invoices/Dashboard`, { useAuthToken: true });\r\n return res;\r\n};\r\n","export let validatePostCode = (postCode) => {\r\n // const pattern = /(^[A-Z]{1,2}[0-9]{1,2})([0-9][A-Z]{2}$)/i;\r\n const pattern =\r\n /([Gg][Ii][Rr] 0[Aa]{2})|((([A-Za-z][0-9]{1,2})|(([A-Za-z][A-Ha-hJ-Yj-y][0-9]{1,2})|(([A-Za-z][0-9][A-Za-z])|([A-Za-z][A-Ha-hJ-Yj-y][0-9][A-Za-z]?))))\\s?[0-9][A-Za-z]{2})/gm;\r\n return pattern.test(postCode);\r\n};\r\n\r\nexport let emailValidation = (emailValidation) => {\r\n const pattern =\r\n /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n\r\n if (!emailValidation || emailValidation == null) return false;\r\n\r\n if (emailValidation.includes(',')) {\r\n let multiEmailTest = true;\r\n emailValidation.split(',').map((email) => {\r\n if (!pattern.test(email)) multiEmailTest = false;\r\n });\r\n return multiEmailTest;\r\n } else {\r\n return pattern.test(emailValidation);\r\n }\r\n};\r\n\r\nexport let singleEmailValidation = (emailValidation) => {\r\n const pattern =\r\n /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n return pattern.test(emailValidation);\r\n};\r\n","import { Checkbox, FormControlLabel, FormLabel, Grid, InputLabel, TextField } from '@material-ui/core';\r\nimport React, { useEffect, useState, useContext } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { SecondaryButton, SelectBox, TextBox } from '../../../../Core/FormInput';\r\nimport {\r\n addBranchStatusEmails,\r\n editBranchStatusEmails,\r\n getBranchInvoiceStatusDropdown,\r\n getBranchStatusEmailsById,\r\n getBranchStatusEmailsDropdown\r\n} from '../../../../Core/Service/InvoiceScreen-service';\r\nimport { singleEmailValidation } from '../../../../Core/Service/StaticService';\r\n\r\nconst EditBranchStatusEmail = (props) => {\r\n const [state, setState] = useState({\r\n branchInvoice: [],\r\n branchID: props.branchID,\r\n errors: {},\r\n resData: {},\r\n branchName: '',\r\n invoiceStatus: '',\r\n email: '',\r\n emailContext: '',\r\n isActive: false,\r\n branchList: [],\r\n invoiceStatusList: []\r\n });\r\n\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n const pullData = async () => {\r\n let res = await getBranchStatusEmailsById(props.InvoiceStatusId, props.BranchID);\r\n setState((st) => ({\r\n ...st,\r\n branchName: res.data?.list?.table[0]?.branchName,\r\n invoiceStatus: res.data?.list?.table[0]?.invoiceStatus,\r\n email: res.data?.list?.table[0]?.email,\r\n emailContext: res.data?.list?.table[0]?.emailContext,\r\n isActive: res.data?.list?.table[0]?.isActive || false\r\n }));\r\n };\r\n\r\n useEffect(async () => {\r\n let dropDownRes = await getBranchStatusEmailsDropdown();\r\n setState((st) => ({\r\n ...st,\r\n branchList: dropDownRes.data.branchList,\r\n invoiceStatusList: dropDownRes.data.invoiceStatusList\r\n }));\r\n if (props.InvoiceStatusId && props.BranchID) {\r\n pullData();\r\n }\r\n }, [props.InvoiceStatusId, props.BranchID]);\r\n\r\n // useEffect(async () => {\r\n // if (state.branchID) {\r\n // let dropDownRes = await getBranchInvoiceStatusDropdown(state.branchID);\r\n // console.log(dropDownRes, 'dropDownRes');\r\n // }\r\n // }, [state.branchID]);\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt[name] = value;\r\n return newSt;\r\n });\r\n };\r\n\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst[name] = checked;\r\n return nst;\r\n });\r\n };\r\n\r\n const validations = () => {\r\n const { email } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (!singleEmailValidation(email)) {\r\n errors.email = 'Invalid Email Id';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validations()) {\r\n let data = {\r\n branchID: props.BranchID || state.branchID,\r\n invoiceStatusId: props.InvoiceStatusId || state.invoiceStatusId,\r\n isActive: state.isActive,\r\n email: state.email,\r\n emailContext: state.emailContext\r\n };\r\n if (props.InvoiceStatusId && props.BranchID) {\r\n let res = await editBranchStatusEmails(data);\r\n if (res.success) {\r\n showToast(`${res.message}`);\r\n props.onClose(true);\r\n } else {\r\n console.error(res.message);\r\n }\r\n } else {\r\n let res = await addBranchStatusEmails(data);\r\n if (res.success) {\r\n showToast(`${res.message}`);\r\n props.onClose(true);\r\n } else {\r\n console.error(res.message);\r\n }\r\n }\r\n }\r\n };\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n return (\r\n \r\n \r\n {props.InvoiceStatusId && props.BranchID ? (\r\n \r\n \r\n {`Branch Name`}\r\n \r\n \r\n {`${state.branchName}`}\r\n \r\n \r\n ) : (\r\n \r\n \r\n Branch\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n {props.InvoiceStatusId && props.BranchID ? (\r\n \r\n \r\n {`Invoice Status`}\r\n \r\n \r\n {`${state.invoiceStatus}`}\r\n \r\n \r\n ) : (\r\n \r\n \r\n Status\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n Email\r\n \r\n {state.errors['email']}\r\n \r\n \r\n Email Body\r\n \r\n {state.errors['emailContext']}\r\n \r\n {props.InvoiceStatusId && props.BranchID && (\r\n \r\n } label=\"Active?\" />\r\n \r\n )}\r\n \r\n \r\n Save\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default EditBranchStatusEmail;\r\n","import React, { useContext, useMemo } from 'react';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\n\r\nimport { Grid, Typography } from '@material-ui/core';\r\nimport ReactDOM from 'react-dom';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\n\r\nimport { useState } from 'react';\r\nimport ReportGijgoGrid from '../../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport EditBranchStatusEmail from './editBranchStatusEmail';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport DeleteForeverIcon from '@material-ui/icons/DeleteForever';\r\nimport ConfirmationModal from '../../../../Core/Controls/Dialog/ConfirmationModal';\r\nimport { deleteBranchStatusEmailsById } from '../../../../Core/Service/InvoiceScreen-service';\r\nimport AppContext from '../../../../App/AppContext';\r\n\r\nconst baseColumns = [\r\n { field: 'action', sortable: false, title: ``, width: 90, filterable: false },\r\n { field: 'branchName', sortable: false, title: `Branch` },\r\n { field: 'invoiceStatus', sortable: false, title: `Status` },\r\n { field: 'email', sortable: false, title: `Email` },\r\n {\r\n field: 'emailAllow',\r\n sortable: false,\r\n title: `isActive`,\r\n width: 150\r\n }\r\n];\r\n\r\nconst crumbs = (path) => [\r\n { name: 'Home', path: '' },\r\n { name: 'Invoices', active: true },\r\n { name: `Branch Status Emails`, active: true }\r\n];\r\n\r\nconst baseUrl = 'BranchStatusEmails';\r\n\r\nconst BranchStatusEmail = () => {\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({\r\n showModal: false\r\n });\r\n\r\n const handleEdit = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: true,\r\n branchID: val?.branchID,\r\n invoiceStatusId: val?.invoiceStatusId\r\n }));\r\n };\r\n const handleDelete = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showConfirmModal: true,\r\n branchID: val?.branchID,\r\n invoiceStatusId: val?.invoiceStatusId\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n handleEdit(record)}\r\n toolTipTitle=\"Edit Branch Status Emails\"\r\n >\r\n \r\n \r\n \r\n \r\n handleDelete(record)}\r\n toolTipTitle=\"Edit Branch Status Emails\"\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n\r\n return col;\r\n }, []);\r\n\r\n const handleClose = (res) => {\r\n let newSt = {};\r\n newSt.showModal = false;\r\n newSt.branchID = '';\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setState((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n const deleteStatusEmailHandler = async () => {\r\n let res = await deleteBranchStatusEmailsById(state.invoiceStatusId, state.branchID);\r\n if (res.success) {\r\n showToast(`${res.message}`);\r\n confirmationModalClose(true);\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n const confirmationModalClose = (flag) => {\r\n let newSt = {};\r\n newSt.showConfirmModal = false;\r\n newSt.branchID = '';\r\n if (flag) {\r\n newSt.isReload = new Date();\r\n }\r\n setState((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n return (\r\n
\r\n {state.showModal ? (\r\n handleClose(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n {state.showConfirmModal ? (\r\n confirmationModalClose(false)} maxWidth=\"sm\">\r\n confirmationModalClose(false)}\r\n />\r\n \r\n ) : null}\r\n \r\n \r\n \r\n \r\n \r\n handleEdit()}\r\n toolTipTitle=\"Add Branch Status Emails\"\r\n >\r\n \r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={column}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n isShowTotal={false}\r\n // hidePagination={true}\r\n // isReload={state.isReload}\r\n // hidePagination={true}\r\n // hideFilterRow={true}\r\n />\r\n
\r\n );\r\n};\r\n\r\nexport default BranchStatusEmail;\r\n","import { Checkbox, FormControlLabel, FormLabel, Grid, InputLabel, Typography } from '@material-ui/core';\r\nimport React, { useContext, useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { SecondaryButton, SelectBox, TextBox } from '../../../../Core/FormInput';\r\nimport { getBranchParametersById, getBranchParametersScreenDropdown, postBranchParameters } from '../../../../Core/Service/communicator-service';\r\nimport TableChartIcon from '@material-ui/icons/TableChart';\r\nimport { AppStorage } from '../../../../Core/Service/storage-service';\r\nimport CustomeEditor from '../../../../Core/CkEditor';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\n\r\nconst crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Communicator', active: true },\r\n { name: 'Branch Parameters', active: true }\r\n];\r\n\r\nconst useStyles = makeStyles({\r\n branchSelectLable: {\r\n color: (props) => props.portalHeaderTextColour\r\n },\r\n branchSelectInput: {\r\n // background: (props) => props.portalHeaderBackgroundColour,\r\n // color: (props) => props.portalHeaderTextColour,\r\n\r\n '& .MuiOutlinedInput-input': {\r\n padding: '3.5px 3.5px',\r\n color: (props) => props.portalMenuBarTextColour,\r\n backgroundColor: (props) => props.portalMenuBarBackgroundColour\r\n },\r\n '& .MuiSelect-icon': {\r\n color: (props) => props.portalMenuBarTextColour\r\n }\r\n }\r\n});\r\n\r\nconst BranchParametersScreen = (props) => {\r\n const portalSetting = AppStorage.getPortalSetting();\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const classes = useStyles(portalSetting);\r\n\r\n const [state, setState] = useState({\r\n branchID: '',\r\n overdueEmail: '',\r\n partStatusEmail: '',\r\n urgentActionEmailAddress: '',\r\n cashCustomerMessage: '',\r\n feedbackEmailAddress: '',\r\n technicalAssistanceEmail: '',\r\n workshopDiaryEmail: '',\r\n branchJobApprovedEmail: '',\r\n collectionStatusEmail: '',\r\n jobApprovedEmail: '',\r\n branchOverdueBodyTemplate: '',\r\n branchTechnicalAssistanceBodyTemplate: '',\r\n branchPartStatusBodyTemplate: '',\r\n branchWorkshopDiaryBodyTemplate: '',\r\n branchFeedbackBodyTemplate: '',\r\n branchUrgentActionBodyTemplate: '',\r\n branchJobApprovedBodyTemplate: '',\r\n branchCollectionStatusBodyTemplate: '',\r\n branchList: [],\r\n branchVORStatusEmail: '',\r\n branchVORStatusBodyTemplate: '',\r\n branchSiteVehicleStatusEmail: '',\r\n branchSiteVehicleStatusBodyTemplate: ''\r\n });\r\n\r\n const pullBranchDropDown = async () => {\r\n let res = await getBranchParametersScreenDropdown();\r\n setState((st) => ({ ...st, branchList: res.data.list.table }));\r\n };\r\n\r\n const pullBranchById = async () => {\r\n let res = await getBranchParametersById(state.branchID);\r\n let data = res.data.list.table[0];\r\n setState((st) => ({\r\n ...st,\r\n overdueEmail: data.overdueEmail || '',\r\n partStatusEmail: data.partStatusEmail || '',\r\n urgentActionEmailAddress: data.urgentActionEmailAddress || '',\r\n cashCustomerMessage: data.cashCustomerMessage || '',\r\n feedbackEmailAddress: data.feedbackEmailAddress || '',\r\n technicalAssistanceEmail: data.technicalAssistanceEmail || '',\r\n workshopDiaryEmail: data.workshopDiaryEmail || '',\r\n branchJobApprovedEmail: '',\r\n collectionStatusEmail: data.collectionStatusEmail || '',\r\n jobApprovedEmail: data.jobApprovedEmail || '',\r\n branchOverdueBodyTemplate: data.branchOverdueBodyTemplate || '',\r\n branchTechnicalAssistanceBodyTemplate: data.branchTechnicalAssistanceBodyTemplate || '',\r\n branchPartStatusBodyTemplate: data.branchPartStatusBodyTemplate || '',\r\n branchWorkshopDiaryBodyTemplate: data.branchWorkshopDiaryBodyTemplate || '',\r\n branchFeedbackBodyTemplate: data.branchFeedbackBodyTemplate || '',\r\n branchUrgentActionBodyTemplate: data.branchUrgentActionBodyTemplate || '',\r\n branchJobApprovedBodyTemplate: data.branchJobApprovedBodyTemplate || '',\r\n branchCollectionStatusBodyTemplate: data.branchCollectionStatusBodyTemplate || '',\r\n branchBookingRequestEmail: data.branchBookingRequestEmail,\r\n branchVORStatusEmail: data.branchVORStatusEmail,\r\n branchVORStatusBodyTemplate: data.branchVORStatusBodyTemplate || '',\r\n branchSiteVehicleStatusEmail: data.branchSiteVehicleStatusEmail,\r\n branchSiteVehicleStatusBodyTemplate: data.branchSiteVehicleStatusBodyTemplate || ''\r\n }));\r\n };\r\n\r\n useEffect(() => {\r\n pullBranchDropDown();\r\n }, []);\r\n\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst[name] = checked;\r\n return nst;\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (state.branchID) {\r\n pullBranchById();\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n overdueEmail: '',\r\n partStatusEmail: '',\r\n urgentActionEmailAddress: '',\r\n cashCustomerMessage: '',\r\n feedbackEmailAddress: '',\r\n technicalAssistanceEmail: '',\r\n workshopDiaryEmail: '',\r\n branchJobApprovedEmail: '',\r\n collectionStatusEmail: '',\r\n jobApprovedEmail: '',\r\n branchOverdueBodyTemplate: '',\r\n branchTechnicalAssistanceBodyTemplate: '',\r\n branchPartStatusBodyTemplate: '',\r\n branchWorkshopDiaryBodyTemplate: '',\r\n branchFeedbackBodyTemplate: '',\r\n branchUrgentActionBodyTemplate: '',\r\n branchJobApprovedBodyTemplate: '',\r\n branchCollectionStatusBodyTemplate: '',\r\n branchVORStatusEmail: '',\r\n branchVORStatusBodyTemplate: '',\r\n branchSiteVehicleStatusEmail: '',\r\n branchSiteVehicleStatusBodyTemplate: ''\r\n }));\r\n }\r\n }, [state.branchID]);\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let data = {\r\n branchID: state.branchID,\r\n feedbackEmailAddress: state.feedbackEmailAddress,\r\n overdueEmail: state.overdueEmail,\r\n technicalAssistanceEmail: state.technicalAssistanceEmail,\r\n workshopDiaryEmail: state.workshopDiaryEmail,\r\n urgentActionEmailAddress: state.urgentActionEmailAddress,\r\n partStatusEmail: state.partStatusEmail,\r\n collectionStatusEmail: state.collectionStatusEmail,\r\n cashCustomerMessage: state.cashCustomerMessage,\r\n jobApprovedEmail: state.jobApprovedEmail,\r\n branchOverdueBodyTemplate: state.branchOverdueBodyTemplate,\r\n branchTechnicalAssistanceBodyTemplate: state.branchTechnicalAssistanceBodyTemplate,\r\n branchPartStatusBodyTemplate: state.branchPartStatusBodyTemplate,\r\n branchWorkshopDiaryBodyTemplate: state.branchWorkshopDiaryBodyTemplate,\r\n branchFeedbackBodyTemplate: state.branchFeedbackBodyTemplate,\r\n branchUrgentActionBodyTemplate: state.branchUrgentActionBodyTemplate,\r\n branchJobApprovedBodyTemplate: state.branchJobApprovedBodyTemplate,\r\n branchCollectionStatusBodyTemplate: state.branchCollectionStatusBodyTemplate,\r\n branchBookingRequestEmail: state.branchBookingRequestEmail,\r\n branchVORStatusBodyTemplate: state.branchVORStatusBodyTemplate,\r\n branchVORStatusEmail: state.branchVORStatusEmail,\r\n branchSiteVehicleStatusEmail: state.branchSiteVehicleStatusEmail,\r\n branchSiteVehicleStatusBodyTemplate: state.branchSiteVehicleStatusBodyTemplate\r\n };\r\n\r\n let res = await postBranchParameters(data);\r\n if (!res.success) {\r\n console.error(res);\r\n showToast(res.message);\r\n } else {\r\n showToast('Branch Parameters save successfully');\r\n pullBranchById();\r\n }\r\n };\r\n\r\n const handleCkeditorstate = (name) => (event, editor) => {\r\n const data = editor.getData();\r\n setState((st) => ({ ...st, [name]: data }));\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Branch Parameters\r\n \r\n \r\n \r\n \r\n {/* \r\n Branch Parameters\r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Update\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n Branch Parameters\r\n \r\n \r\n \r\n */}\r\n \r\n \r\n Booking Email Received request\r\n \r\n \r\n \r\n Cash Customer Message\r\n \r\n \r\n\r\n \r\n \r\n \r\n Overdue Reminder Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Job Approved Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Awaiting Parts Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n High Priority Jobs Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {/* \r\n \r\n \r\n Feedback Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n */}\r\n \r\n \r\n \r\n Technical Assistance Required Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Workshop Vehicles Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Awaiting Collection Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n VOR Status Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Site Vehicle Email\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default BranchParametersScreen;\r\n","import { Button, ButtonGroup, FormHelperText, Grid, InputLabel, Typography } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { Multiselect, SecondaryButton, SelectBox, TextBox } from '../../../../Core/FormInput';\r\nimport { getAdminDropDown, getNotificationGroupsById, postNotificationGroups } from '../../../../Core/Service/communicator-service';\r\nimport { useEffect } from 'react';\r\nimport { useState } from 'react';\r\nimport { MultiselectWithoutCheckbox } from '../../../../Core/FormInput/MultiSelect';\r\nimport { useContext } from 'react';\r\nimport AppContext from './../../../../App/AppContext';\r\nimport { FormatColorResetRounded } from '@material-ui/icons';\r\n\r\nconst AddCustomerGroups = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n customerList: [],\r\n customerGroupSiteVehiclesOnly: false,\r\n sendSMSUpdates: false,\r\n sendEmailNotifaction: false,\r\n customerGroupList: [],\r\n frequencyList: [],\r\n frequency: '',\r\n errors: {},\r\n ocrDocumentsList: [],\r\n ocrDocumentSelectIDs: []\r\n });\r\n\r\n const [selectedData, setSelectedData] = useState({\r\n customerGroups: [],\r\n ocrDocuments: []\r\n });\r\n\r\n useEffect(async () => {\r\n let res = await getAdminDropDown();\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n frequencyList: res.data.frequency,\r\n customerGroupList: res.data.customerGroupList,\r\n ocrDocumentsList: res.data?.ocrDocuments\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (props.customerGroupID) {\r\n pullDataById(props.customerGroupID);\r\n }\r\n }, []);\r\n\r\n const pullDataById = async (val) => {\r\n let res = await getNotificationGroupsById(val);\r\n if (res.success) {\r\n let data = res.data.list[0];\r\n let customerSelectIDs = res.data.customerSelectIDs;\r\n let ocrDocumentSelectIDs = res.data.ocrDocumentSelectIDs;\r\n setState((st) => ({\r\n ...st,\r\n customerGroupEmail: data.customerGroupEmail,\r\n customerGroupID: data.customerGroupID,\r\n customerGroupName: data.customerGroupName,\r\n customerGroupSiteVehiclesOnly: data.customerGroupSiteVehiclesOnly,\r\n feedbackEmailAddress: data.feedbackEmailAddress,\r\n frequency: data.frequency,\r\n sendEmailNotifaction: data.sendEmailNotifaction,\r\n sendSMSUpdates: data.sendSMSUpdates,\r\n sMSNumber: data.smsNumber,\r\n vORTimer: data.vorTimer,\r\n customerSelectIDs: customerSelectIDs,\r\n ocrDocumentSelectIDs: ocrDocumentSelectIDs\r\n }));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n if (state.customerSelectIDs && state.customerGroupList.length > 0) {\r\n setSelectedData((st) => ({\r\n ...st,\r\n customerGroups: state.customerGroupList.filter((w) => state.customerSelectIDs.indexOf(w.id) > -1)\r\n }));\r\n }\r\n }, [state.customerSelectIDs, state.customerGroupList]);\r\n\r\n useEffect(() => {\r\n if (state.ocrDocumentSelectIDs && state.ocrDocumentsList.length > 0) {\r\n setSelectedData((st) => ({\r\n ...st,\r\n ocrDocuments: state.ocrDocumentsList.filter((w) => state.ocrDocumentSelectIDs.indexOf(w.id) > -1)\r\n }));\r\n }\r\n }, [state.ocrDocumentSelectIDs, state.ocrDocumentsList]);\r\n\r\n const handleYesNo = (name, val) => {\r\n setState((st) => ({ ...st, [name]: val }));\r\n };\r\n\r\n const handleInput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const AutoWorkAccomplish = (event, value) => {\r\n setSelectedData((st) => ({\r\n ...st,\r\n customerGroups: value\r\n }));\r\n setState((st) => {\r\n const nst = { ...st, customerSelectIDs: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const AutoOcrDocuments = (event, value) => {\r\n setSelectedData((st) => ({\r\n ...st,\r\n ocrDocuments: value\r\n }));\r\n setState((st) => {\r\n const nst = { ...st, ocrDocumentSelectIDs: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n const validation = () => {\r\n let errors = {};\r\n let isValid = true;\r\n\r\n let { customerGroupName, customerGroupEmail } = state;\r\n\r\n if (!customerGroupName) {\r\n isValid = false;\r\n errors.name = 'Notification Group is required';\r\n }\r\n if (!customerGroupEmail) {\r\n isValid = false;\r\n errors.email = 'Emails is required';\r\n }\r\n if (selectedData.customerGroups.length == 0) {\r\n isValid = false;\r\n errors.customer = 'Customers is required';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n\r\n return isValid;\r\n };\r\n\r\n const handlesubmit = async () => {\r\n if (validation()) {\r\n let data = {\r\n customerGroupID: props.customerGroupID || null,\r\n customerGroupName: state.customerGroupName || '',\r\n customerGroupEmail: state.customerGroupEmail || '',\r\n customerGroupSiteVehiclesOnly: state.customerGroupSiteVehiclesOnly || false,\r\n sendEmailNotifaction: state.sendEmailNotifaction || false,\r\n vORTimer: state.vORTimer || '',\r\n frequency: state.frequency || '',\r\n feedbackEmailAddress: state.feedbackEmailAddress || '',\r\n sendSMSUpdates: state.sendSMSUpdates || false,\r\n sMSNumber: state.sMSNumber || '',\r\n customerSelectIDs: state.customerSelectIDs || [],\r\n ocrDocumentSelectIDs: state.ocrDocumentSelectIDs || []\r\n };\r\n\r\n let res = await postNotificationGroups(data);\r\n if (res.success) {\r\n showToast(`Customer Group ${props.customerGroupID ? 'Updated' : 'Added'} successfully`);\r\n props.onClose(true);\r\n } else {\r\n showToast(`Customer Group Failed to ${props.customerGroupID ? 'Update' : 'Add'}`);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Notification Group\r\n \r\n \r\n {state.errors.name}\r\n \r\n \r\n \r\n Email Updates\r\n \r\n \r\n \r\n Send Notification?\r\n
\r\n \r\n handleYesNo('sendEmailNotifaction', true)}\r\n >\r\n Yes\r\n \r\n handleYesNo('sendEmailNotifaction', false)}\r\n >\r\n No\r\n \r\n \r\n
\r\n\r\n \r\n Site Vehicles Only?\r\n
\r\n \r\n handleYesNo('customerGroupSiteVehiclesOnly', true)}\r\n >\r\n Yes\r\n \r\n handleYesNo('customerGroupSiteVehiclesOnly', false)}\r\n >\r\n No\r\n \r\n \r\n
\r\n \r\n Frequency\r\n \r\n \r\n \r\n VOR Alert (Hours)\r\n \r\n \r\n \r\n \r\n Emails\r\n \r\n \r\n {state.errors.email}\r\n \r\n \r\n Feedback Email \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n SMS Updates\r\n \r\n\r\n \r\n \r\n Send SMS Updates?\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n Mobile\r\n \r\n \r\n \r\n \r\n Customers\r\n \r\n \r\n {state.errors.customer}\r\n \r\n \r\n \r\n Documents\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {props.customerGroupID ? 'Update' : 'Submit'}\r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default AddCustomerGroups;\r\n","import { Container, FormLabel, Grid, Typography, InputLabel, ButtonGroup, Button } from '@material-ui/core';\r\nimport React from 'react';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\n\r\nimport { getCommunicatorSmsStatus, postCommunicatorSms } from '../../../../Core/Service/communicator-service';\r\nimport { useEffect, useMemo } from 'react';\r\nimport { useState } from 'react';\r\nimport { useContext } from 'react';\r\n// import AppContext from '../../../../App/AppContext';\r\n// import BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { SecondaryButton, SquareButton } from './../../../../Core/FormInput/AppButton';\r\nimport SelectBox from './../../../../Core/FormInput/SelectBox';\r\nimport { TextBox } from '../../../../Core/FormInput';\r\nimport ReportGijgoGrid from '../../../internal/ReportsScreens/GijgoForReportsScreen';\r\n// import { Typography } from '@material-ui/core/Typography';\r\nimport ReactDOM from 'react-dom';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport AddCustomerGroups from './addCustomergroup';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\n\r\nconst baseColumns = [\r\n { title: 'Action', field: 'action', width: '5%', filterable: false },\r\n { title: 'Group Name', field: 'customerGroupName', width: '15%', sortable: true },\r\n\r\n {\r\n title: 'Group Email',\r\n field: 'customerGroupEmail',\r\n width: '75%',\r\n sortable: true\r\n }\r\n];\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Communicator', active: true },\r\n { name: 'Notifications Groups', active: true }\r\n];\r\n\r\nconst baseUrl = `CustomerGroups`;\r\n\r\nconst AdminVehicleNotification = () => {\r\n const [state, setState] = useState({\r\n showAddCustGroup: false\r\n });\r\n\r\n const handleAddCust = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showAddCustGroup: true,\r\n customerGroupID: val.customerGroupID,\r\n customerGroupName: val.customerGroupName,\r\n customerGroupEmail: val.customerGroupEmail\r\n }));\r\n };\r\n\r\n const handleClose = (res) => () => {\r\n setState((st) => ({\r\n ...st,\r\n showAddCustGroup: false,\r\n isReload: res ? new Date() : ''\r\n }));\r\n };\r\n\r\n const handleEdit = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n handleAddCust(record)}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n let tempColumn = [...baseColumns];\r\n\r\n let actionCol = tempColumn.find((m) => m.field === 'action');\r\n if (actionCol) {\r\n actionCol.renderer = handleEdit;\r\n }\r\n return tempColumn;\r\n }, []);\r\n return (\r\n
\r\n \r\n
\r\n \r\n \r\n + Add Customer Group\r\n \r\n\r\n \r\n ({\r\n records: res.data?.list,\r\n total: res.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n displayPagination={true}\r\n isReload={state.isReload}\r\n />\r\n \r\n \r\n
\r\n\r\n {state.showAddCustGroup ? (\r\n \r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nexport default AdminVehicleNotification;\r\n","import React from 'react';\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport { SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { Checkbox, Container, FormControlLabel } from '@material-ui/core';\r\nimport { getCommunicatorSmsStatus, postCommunicatorSms } from '../../../../Core/Service/communicator-service';\r\nimport { useEffect } from 'react';\r\nimport { useState } from 'react';\r\nimport { useContext } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { AppStorage } from '../../../../Core/Service/storage-service';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n // backgroundColor: 'black',\r\n // color: 'White',\r\n fontSize: 16\r\n },\r\n body: {\r\n fontSize: 16,\r\n padding: '5px 16px'\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(even)': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: 700,\r\n border: '1px solid lightgrey'\r\n },\r\n container: {\r\n maxHeight: 440\r\n }\r\n});\r\n\r\nconst SMSStatusUpdate = () => {\r\n const portalSetting = AppStorage.getPortalSetting();\r\n const classes = useStyles();\r\n const { hideModal, showToast } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({\r\n updateSmsList: [],\r\n showLoader: true\r\n });\r\n useEffect(async () => {\r\n let res = await getCommunicatorSmsStatus();\r\n if (res.success) {\r\n setState((st) => ({ ...st, updateSmsList: res?.data?.list?.table, showLoader: false }));\r\n }\r\n }, []);\r\n\r\n const handleCheckbox = (id) => (e) => {\r\n let tempList = [...state.updateSmsList];\r\n let index = state.updateSmsList.findIndex((m) => m.id === id);\r\n const {checked, name} = e.target;\r\n\r\n tempList[index][name] = checked;\r\n tempList[index].validation = true\r\n\r\n setState((st) => ({ ...st, updateSmsList: tempList }));\r\n };\r\n\r\n const handleChange = (id) => (e) => {\r\n let tempList = [...state.updateSmsList];\r\n let index = state.updateSmsList.findIndex((m) => m.id === id);\r\n tempList[index].smsText = e.target.value;\r\n tempList[index].validation = true;\r\n setState((st) => ({ ...st, updateSmsList: tempList }));\r\n };\r\n\r\n const handleSubmit = async (val) => {\r\n let data = { \r\n vehicleStatusCode: val.id, \r\n sendSMSUpdate: val.sendSMSUpdate, \r\n sMSText: val.smsText || '',\r\n includeInSiteVehicles: val.includeInSiteVehicles,\r\n includeInVORVehicles: val.includeInVORVehicles\r\n };\r\n let res = await postCommunicatorSms(data);\r\n if (res.success) {\r\n showToast('SMS Updated Successfully');\r\n } else {\r\n alert('Failed To Update');\r\n }\r\n };\r\n\r\n const crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Communicator', active: true },\r\n { name: 'Vehicle Status Update', active: true }\r\n ];\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n Vehicle Status\r\n \r\n \r\n Include In Site Vehicles\r\n \r\n \r\n Include In VOR Vehicles\r\n \r\n \r\n Send Text\r\n \r\n \r\n SMS Text\r\n \r\n \r\n Action\r\n \r\n \r\n \r\n \r\n {state.showLoader ? null : state.updateSmsList.length > 0 ? (\r\n state.updateSmsList.map((m) => (\r\n \r\n \r\n {m.vehicleStatusDescription}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* {m.smsTextMessage ? {m.smsTextMessage} : null} */}\r\n \r\n \r\n handleSubmit(m)} disabled={(!m.smsText && m.sendSMSUpdate) || !m.validation}>\r\n Update\r\n \r\n \r\n \r\n ))\r\n ) : (\r\n \r\n \r\n \r\n \r\n
No Data Available
\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SMSStatusUpdate;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getTickers = async () => {\r\n let res = await get(`Tickers`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getTickerbyId = async (id) => {\r\n let res = await get(`Tickers/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getTickerDelete = async (id, data) => {\r\n let res = await post(`Tickers/delete/${id}`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const addTicker = async (data) => {\r\n let res = await post(`Tickers`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import { FormControlLabel, Grid, InputLabel, FormHelperText } from '@material-ui/core';\r\nimport React, { useState } from 'react';\r\nimport { SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport { getTickerbyId, addTicker } from '../../../Core/Service/KPI_message-service';\r\nimport { useEffect, useContext } from 'react';\r\nimport AppContext from './../../../App/AppContext';\r\n\r\nconst AddEditTicker = (props) => {\r\n const [state, setState] = useState({\r\n id: null,\r\n message: ''\r\n });\r\n\r\n const { hideModal, showToast } = useContext(AppContext);\r\n useEffect(async () => {\r\n if (props.id) {\r\n let res = await getTickerbyId(props.id);\r\n setState((st) => ({\r\n ...st,\r\n message: res?.data.list.table[0].message,\r\n id: res?.data.list.table[0].id\r\n }));\r\n }\r\n }, []);\r\n\r\n const Validation = () => {\r\n let messages = '';\r\n let isValid = true;\r\n\r\n if (!state.message) {\r\n messages = 'Ticker Message is required';\r\n isValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, messages: messages }));\r\n return isValid;\r\n };\r\n\r\n const handlesubmit = async () => {\r\n if (Validation()) {\r\n let data = {\r\n message: state.message,\r\n id: props.id || null\r\n };\r\n\r\n let res = await addTicker(data);\r\n if (res.success) {\r\n showToast(`Ticker Message ${props.id ? 'Updated' : 'Added'} successfully`);\r\n props.onClose(true);\r\n } else {\r\n showToast(`Ticker Message Failed to ${props.id ? 'Update' : 'Add'}`);\r\n }\r\n }\r\n };\r\n\r\n const handleInput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Ticker Message\r\n \r\n \r\n {state.messages}\r\n \r\n \r\n \r\n {props.id ? 'Update' : 'Submit'}\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default AddEditTicker;\r\n","import React, { useContext } from 'react';\r\nimport DataGridComp from '../../../Core/Grid';\r\nimport { getTickers, getTickerDelete } from '../../../Core/Service/KPI_message-service';\r\nimport { useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport DialogComp from '../../../Core/Modal/dialogModal';\r\nimport AddEditTicker from './addEditTicker';\r\nimport { Grid, Tooltip } from '@material-ui/core';\r\nimport { SquareButton } from '../../../Core/FormInput/AppButton';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport ClearIcon from '@material-ui/icons/Clear';\r\nimport AppContext from '../../../App/AppContext';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\n\r\nconst KipMessages = () => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n tickerList: [],\r\n showAddUpdate: false\r\n });\r\n\r\n const handleAddUpdate = (val) => {\r\n setState((st) => ({ ...st, showAddUpdate: true, id: val.id }));\r\n };\r\n\r\n const closeAddUpdate = (res) => {\r\n setState((st) => ({ ...st, showAddUpdate: false, id: '' }));\r\n res && pulldata();\r\n };\r\n\r\n const handledelete = async (val) => {\r\n let data = { id: val.id };\r\n let res = await getTickerDelete(val.id, data);\r\n if (res.success) {\r\n showToast(`Ticker Message Deleted successfully`);\r\n pulldata();\r\n } else {\r\n showToast(`Ticker Message Failed to Delete`);\r\n }\r\n };\r\n\r\n const handleEdit = (val) => {\r\n return (\r\n \r\n \r\n \r\n handleAddUpdate(val.row)} />\r\n \r\n \r\n \r\n \r\n handledelete(val.row)} />\r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 120,\r\n renderCell: handleEdit\r\n },\r\n {\r\n field: 'id',\r\n headerName: 'TICKER ID',\r\n width: 120,\r\n sortable: false,\r\n renderCell: (params) => {\r\n
{params}
;\r\n }\r\n },\r\n {\r\n field: 'message',\r\n headerName: 'TICKER MESSAGE',\r\n flex: 1,\r\n renderCell: (params) => {\r\n
{params}
;\r\n }\r\n }\r\n ];\r\n const pulldata = async () => {\r\n let res = await getTickers();\r\n if (res.success) {\r\n setState((st) => ({ ...st, tickerList: res.data.list }));\r\n }\r\n };\r\n useEffect(() => {\r\n pulldata();\r\n }, []);\r\n\r\n const crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Ticker Messages', active: true }\r\n ];\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n \r\n + Add Ticker Message\r\n \r\n \r\n \r\n
\r\n {state.showAddUpdate ? (\r\n closeAddUpdate(false)} title={!state.id ? `Add Ticker Message` : 'Update Ticker Message'} fullWidth=\"lg\">\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nexport default KipMessages;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const addUpdateResultList = async (data) => {\r\n let res = await post(`qc/lists`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const addUpdateResultListOption = async (data) => {\r\n let res = await post(`qc/options`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const addUpdateQCItem = async (data) => {\r\n let res = await post(`qc/Items`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport let getFranchiseHeaders = async () => {\r\n let data = await get(`qc/FranchiseHeaders`, { useAuthToken: true });\r\n return data;\r\n};\r\n\r\nexport let getDropdown = async () => {\r\n let data = await get(`qc/ResultListDropdown`, { useAuthToken: true });\r\n return data;\r\n};\r\n","import { FormLabel, Grid } from '@material-ui/core';\r\nimport React, { useContext, useState } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { addUpdateResultList } from '../../../../Core/Service/qc-service';\r\n\r\nconst EditResultList = (props) => {\r\n const [state, setState] = useState({\r\n QCResultListID: props?.focusedRow?.qcResultListID ? props?.focusedRow?.qcResultListID : null,\r\n QCResultListDescription: props?.focusedRow?.qcResultListDescription ? props?.focusedRow?.qcResultListDescription : '',\r\n\r\n errors: [],\r\n });\r\n\r\n const { showToast } = useContext(AppContext);\r\n\r\n const handleFieldChange = (e) => {\r\n const name = e.target.name;\r\n const val = e.target.value;\r\n\r\n setState((st) => ({\r\n ...st,\r\n [name]: val\r\n }))\r\n }\r\n\r\n const validations = () => {\r\n const {\r\n QCResultListDescription\r\n } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (QCResultListDescription == null || QCResultListDescription == '') {\r\n errors.QCResultListDescription = 'Description field is required';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if(validations()) {\r\n const data = {\r\n \"QCResultListID\": state.QCResultListID ? state.QCResultListID : null,\r\n \"QCResultListDescription\": state.QCResultListDescription\r\n }\r\n let res = await addUpdateResultList(data);\r\n if (!res.success) {\r\n console.error(res);\r\n showToast(\"Error occured.\")\r\n } else {\r\n showToast(\"QC Results List updated successfully\")\r\n props.onClose()\r\n }\r\n }\r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Result List Description\r\n \r\n \r\n {state.errors['QCResultListDescription']}\r\n \r\n\r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n}\r\nexport default EditResultList;\r\n","import { FormLabel, Grid, InputLabel } from '@material-ui/core';\r\nimport React, { useContext, useState } from 'react';\r\nimport { SketchPicker } from 'react-color';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { CustomColorPicker, DefaultButton, SecondaryButton, TextBox, YesNoButton } from '../../../../Core/FormInput';\r\nimport { addUpdateResultListOption } from '../../../../Core/Service/qc-service';\r\n\r\nconst EditResultOption = (props) => {\r\n const [state, setState] = useState({\r\n QCResultOptionID: props?.focusedRow?.qcResultOptionID ? props?.focusedRow?.qcResultOptionID : null,\r\n QCResultOptionDescription: props?.focusedRow?.qcResultOptionDescription ? props?.focusedRow?.qcResultOptionDescription : '',\r\n QCResultOptionActive: props?.focusedRow?.qcResultOptionActive ? props?.focusedRow?.qcResultOptionActive : true,\r\n QCResultOptionBackgroundColour: props?.focusedRow?.qcResultOptionBackgroundColour ? props?.focusedRow?.qcResultOptionBackgroundColour : '#ff0000',\r\n QCResultOptionForegroundColour: props?.focusedRow?.qcResultOptionForegroundColour ? props?.focusedRow?.qcResultOptionForegroundColour : '#ff0000',\r\n QCResultOptionDefectRequired: props.focusedRow?.qcResultOptionDefectRequired || false,\r\n QCResultOptionIsFailed: props.focusedRow?.qcResultOptionIsFailed || false,\r\n\r\n errors: []\r\n });\r\n const { showToast } = useContext(AppContext);\r\n\r\n const handleFieldChange = (e) => {\r\n const name = e.target.name;\r\n const val = e.target.value;\r\n\r\n setState((st) => ({\r\n ...st,\r\n [name]: val\r\n }));\r\n };\r\n\r\n const onColorChange = (updatedColor, name) => {\r\n if (updatedColor) {\r\n setState((state) => ({\r\n ...state,\r\n [name]: updatedColor?.hex\r\n }));\r\n }\r\n };\r\n\r\n const validations = () => {\r\n const { QCResultOptionDescription } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (QCResultOptionDescription == null || QCResultOptionDescription == '') {\r\n errors.QCResultOptionDescription = 'Description field is required';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validations()) {\r\n const data = {\r\n QCResultOptionID: state.QCResultOptionID ? state.QCResultOptionID : null,\r\n QCResultOptionDescription: state.QCResultOptionDescription,\r\n QCResultOptionActive: state.QCResultOptionActive ? state.QCResultOptionActive : true,\r\n QCResultOptionListID: props.QCResultListID,\r\n QCResultOptionBackgroundColour: state.QCResultOptionBackgroundColour ? state.QCResultOptionBackgroundColour : '',\r\n QCResultOptionForegroundColour: state.QCResultOptionForegroundColour ? state.QCResultOptionForegroundColour : '',\r\n QCResultOptionDefectRequired: state.QCResultOptionDefectRequired,\r\n QCResultOptionIsFailed: state.QCResultOptionIsFailed\r\n };\r\n let res = await addUpdateResultListOption(data);\r\n if (!res.success) {\r\n console.error(res);\r\n props.onClose(false);\r\n showToast('Error occured.');\r\n } else {\r\n showToast('QC Results List option updated successfully');\r\n props.onClose(true);\r\n }\r\n }\r\n };\r\n\r\n const handleClick = (compon, val) => {\r\n setState((st) => ({\r\n ...st,\r\n [compon]: val\r\n }));\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Results List Option Description\r\n \r\n \r\n {state.errors['QCResultOptionDescription']}\r\n \r\n\r\n \r\n Background Colour\r\n onColorChange(m, 'QCResultOptionBackgroundColour')}\r\n />\r\n \r\n \r\n Foreground Colour\r\n onColorChange(m, 'QCResultOptionForegroundColour')}\r\n />\r\n \r\n \r\n \r\n \r\n Is Required?\r\n \r\n \r\n handleClick('QCResultOptionDefectRequired', true)}\r\n onNoClick={() => handleClick('QCResultOptionDefectRequired', false)}\r\n />\r\n \r\n \r\n \r\n \r\n Is Failed?\r\n \r\n \r\n handleClick('QCResultOptionIsFailed', true)}\r\n onNoClick={() => handleClick('QCResultOptionIsFailed', false)}\r\n />\r\n \r\n \r\n \r\n \r\n Is Active?\r\n \r\n \r\n handleClick('QCResultOptionActive', true)}\r\n onNoClick={() => handleClick('QCResultOptionActive', false)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default EditResultOption;\r\n","import { Grid } from '@material-ui/core';\r\nimport { Edit } from '@material-ui/icons';\r\nimport React, { useEffect, useMemo, useState } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { SecondaryButton } from '../../../../Core/FormInput';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport ReportGijgoGrid from '../../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport EditResultOption from './editResultOption';\r\n\r\nconst ResultListOptions = (props) => {\r\n const [state, setState] = useState({\r\n QCResultListID: props.QCResultListID,\r\n showAddEdit: false,\r\n\r\n focusedRow: null\r\n });\r\n\r\n useEffect(async () => {}, []);\r\n\r\n const handelColseModal = (val) => {\r\n console.log(val, 'valllllllllll');\r\n let newSt = {};\r\n if (val) newSt.isReload = new Date();\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: false,\r\n ...newSt\r\n }));\r\n };\r\n const handleAddEditModal = (val, row) => {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: true,\r\n focusedRow: row\r\n }));\r\n };\r\n const baseUrl = `QC/Options/${state.QCResultListID}`;\r\n\r\n const baseColumns = [\r\n {\r\n field: 'action',\r\n sortable: false,\r\n title: `Action`,\r\n width: '3%',\r\n filterable: false\r\n },\r\n {\r\n field: 'qcResultOptionID',\r\n title: `ID`,\r\n hidden: true\r\n },\r\n {\r\n field: 'qcResultOptionDescription',\r\n title: `Description`,\r\n width: '30%'\r\n },\r\n {\r\n field: 'qcResultOptionBackgroundColour',\r\n title: `Foreground`,\r\n width: '15%'\r\n },\r\n {\r\n field: 'qcResultOptionForegroundColour',\r\n title: `Background`,\r\n width: '15%'\r\n },\r\n {\r\n field: 'qcResultOptionActive',\r\n title: `Active`,\r\n width: '10%'\r\n }\r\n ];\r\n\r\n const crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'QC', active: true },\r\n { name: `Results List Options`, active: true }\r\n ];\r\n\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n {\r\n handleAddEditModal(true, record);\r\n }}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let actionCol = tempCols.find((element) => element.field === 'action');\r\n\r\n if (actionCol) {\r\n actionCol.renderer = editButton({});\r\n }\r\n\r\n return tempCols;\r\n }, []);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n handleAddEditModal(true, null)} className=\"btnadd\">\r\n Add Results List Option\r\n \r\n \r\n \r\n\r\n \r\n \r\n ({\r\n records: res?.data,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n />\r\n \r\n \r\n\r\n {state.showAddEdit ? (\r\n handelColseModal(false)}\r\n fullWidth\r\n height=\"460px\"\r\n >\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\nexport default ResultListOptions;\r\n","import { Grid } from '@material-ui/core';\r\nimport { Edit, List } from '@material-ui/icons';\r\nimport React, { useMemo, useState } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { SecondaryButton } from '../../../../Core/FormInput';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport ReportGijgoGrid from '../../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport EditResultList from './editResultList';\r\nimport ResultListOptions from './resultListOptions';\r\n\r\nconst QCResultsList = () => {\r\n const [state, setState] = useState({\r\n showAddEdit: false,\r\n showOptions: false,\r\n\r\n focusedRow: null\r\n });\r\n\r\n const baseColumns = [\r\n {\r\n field: 'action',\r\n sortable: false,\r\n title: `Action`,\r\n width: '10%',\r\n filterable: false\r\n },\r\n {\r\n field: 'qcResultListID',\r\n title: `ID`,\r\n hidden: true\r\n },\r\n {\r\n field: 'qcResultListDescription',\r\n title: `Description`,\r\n width: '90%'\r\n },\r\n ];\r\n\r\n const crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'QC', active: true },\r\n { name: `Results Lists`, active: true }\r\n ];\r\n\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n {\r\n handleAddEdit(true)\r\n setState((st) => ({\r\n ...st,\r\n focusedRow: record\r\n }))\r\n }}\r\n >\r\n \r\n \r\n {\r\n handleOptions()\r\n setState((st) => ({\r\n ...st,\r\n focusedRow: record\r\n }))\r\n }}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let actionCol = tempCols.find((element) => element.field === 'action');\r\n\r\n if (actionCol) {\r\n actionCol.renderer = editButton({});\r\n }\r\n\r\n return tempCols;\r\n }, []);\r\n\r\n const handleAddEdit = (val) => {\r\n if (val) {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: val,\r\n isReload: false\r\n }))\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: val,\r\n focusedRow: null,\r\n isReload: true\r\n }))\r\n }\r\n }\r\n\r\n const handleOptions = () => {\r\n setState((st) => ({\r\n ...st,\r\n showOptions: true\r\n }))\r\n }\r\n\r\n const baseUrl = 'QC/Lists';\r\n\r\n return (\r\n
\r\n {state.showOptions ?\r\n <>\r\n \r\n \r\n :\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n handleAddEdit(true)}\r\n className=\"btnadd\"\r\n >\r\n Add Results List\r\n \r\n \r\n \r\n\r\n \r\n \r\n ({\r\n records: res?.data,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n />\r\n \r\n \r\n\r\n {state.showAddEdit ? (\r\n handleAddEdit(false)} fullWidth>\r\n handleAddEdit(false)} />\r\n \r\n ) : null}\r\n \r\n }\r\n
\r\n );\r\n}\r\nexport default QCResultsList;\r\n","import { FormLabel, Grid, MenuItem } from '@material-ui/core';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { DefaultButton, SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { addUpdateQCItem, getDropdown } from '../../../../Core/Service/qc-service';\r\n\r\nconst AddEditItem = (props) => {\r\n const [state, setState] = useState({\r\n QCItemID: props.focusedRow?.qcItemID ? props.focusedRow?.qcItemID : null,\r\n QCItemVehicleTypeID: props.QCItemVehicleTypeID,\r\n QCItemTitle: props.focusedRow?.qcItemTitle ? props.focusedRow?.qcItemTitle : '',\r\n QCItemSequence: props.focusedRow?.qcItemSequence ? props.focusedRow?.qcItemSequence : 0,\r\n QCItemActive: props.focusedRow?.qcItemActive ? props.focusedRow?.qcItemActive : true,\r\n QCItemResultListID: props.focusedRow?.qcItemResultListID ? props.focusedRow?.qcItemResultListID : null,\r\n\r\n QCItemResultLists: [],\r\n errors: []\r\n });\r\n\r\n const { showToast } = useContext(AppContext);\r\n\r\n const handleFieldChange = (e) => {\r\n const name = e.target.name;\r\n const val = e.target.value;\r\n\r\n setState((st) => ({\r\n ...st,\r\n [name]: val\r\n }));\r\n };\r\n\r\n const validations = () => {\r\n const { QCItemID, QCItemVehicleTypeID, QCItemTitle, QCItemSequence, QCItemActive, QCItemResultListID } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (QCItemTitle == null || QCItemTitle == '') {\r\n errors.QCItemTitle = 'QC Item Title field is required';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validations()) {\r\n const data = {\r\n QCItemID: state.QCItemID || null,\r\n QCItemVehicleTypeID: state.QCItemVehicleTypeID,\r\n QCItemTitle: state.QCItemTitle,\r\n QCItemSequence: state.QCItemSequence,\r\n QCItemActive: state.QCItemActive,\r\n QCItemResultListID: state.QCItemResultListID\r\n };\r\n let res = await addUpdateQCItem(data);\r\n if (!res.success) {\r\n console.error(res);\r\n showToast('Error occured.');\r\n } else {\r\n showToast('QC Item updated successfully');\r\n props.onClose();\r\n }\r\n }\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleClick = (compon, val) => {\r\n setState((st) => ({\r\n ...st,\r\n [compon]: val\r\n }));\r\n };\r\n\r\n const pullDropdown = async () => {\r\n let result = await getDropdown();\r\n\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n QCItemResultLists: result.data,\r\n QCItemResultListID: st.QCItemResultListID ? st.QCItemResultListID : result.data[0].qcResultListID\r\n }));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n pullDropdown();\r\n }, []);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n QC Item Title\r\n \r\n \r\n {state.errors['QCItemTitle']}\r\n \r\n\r\n \r\n Sequence\r\n \r\n \r\n\r\n \r\n QC Result List\r\n \r\n {state.QCItemResultLists?.map((option) => (\r\n \r\n {option.qcResultListDescription}\r\n \r\n ))}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n Is Active?\r\n \r\n \r\n \r\n handleClick('QCItemActive', true)}\r\n >\r\n Yes\r\n \r\n \r\n \r\n handleClick('QCItemActive', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default AddEditItem;\r\n","import { Grid } from '@material-ui/core';\r\nimport { Edit } from '@material-ui/icons';\r\nimport React, { useEffect, useMemo, useState } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { SecondaryButton } from '../../../../Core/FormInput';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport { getFranchiseHeaders } from '../../../../Core/Service/qc-service';\r\nimport ReportGijgoGrid from '../../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport AddEditItem from './AddEditItem';\r\n\r\nconst QCItems = () => {\r\n const [state, setState] = useState({\r\n franchiseHeaders: [],\r\n\r\n focusedFranchise: {},\r\n focusedQCItemID: null,\r\n showAddEdit: false\r\n });\r\n\r\n const crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'QC', active: true },\r\n { name: `Items`, active: true }\r\n ];\r\n\r\n const baseColumns = [\r\n {\r\n field: 'action',\r\n sortable: false,\r\n title: `Action`,\r\n width: '3%',\r\n filterable: false\r\n },\r\n {\r\n field: 'qcItemID',\r\n title: `ID`,\r\n hidden: true\r\n },\r\n {\r\n field: 'qcItemTitle',\r\n title: `Title`,\r\n width: '22%'\r\n },\r\n {\r\n field: 'qcResultListDescription',\r\n title: `List`,\r\n width: '22%'\r\n },\r\n {\r\n field: 'qcItemSequence',\r\n title: `Sequence`,\r\n width: '22%'\r\n },\r\n {\r\n field: 'qcItemActive',\r\n title: `Active`,\r\n width: '22%'\r\n },\r\n ];\r\n\r\n const pullFranchiseHeaders = async () => {\r\n let result = await getFranchiseHeaders();\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n franchiseHeaders: result.data,\r\n focusedFranchise: result.data[0]\r\n }));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n pullFranchiseHeaders();\r\n }, []);\r\n\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n {\r\n handleAddEdit(true)\r\n setState((st) => ({\r\n ...st,\r\n focusedRow: record\r\n }))\r\n }}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let actionCol = tempCols.find((element) => element.field === 'action');\r\n\r\n if (actionCol) {\r\n actionCol.renderer = editButton({});\r\n }\r\n\r\n return tempCols;\r\n }, []);\r\n\r\n const handleAddEdit = (val) => {\r\n if (val) {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: val,\r\n isReload: false\r\n }))\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: val,\r\n focusedRow: null,\r\n isReload: true\r\n }))\r\n }\r\n }\r\n\r\n let baseUrl = `qc/Items/${state.focusedFranchise.letterIdentifier}`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n handleAddEdit(true)}\r\n className=\"btnadd\"\r\n >\r\n Add QC Item\r\n \r\n \r\n \r\n\r\n \r\n {state.franchiseHeaders.map((franchise) => {\r\n return (\r\n \r\n setState((st) => ({ ...st, focusedFranchise: franchise }))}\r\n >\r\n {franchise.franchiseName}\r\n \r\n \r\n )\r\n })}\r\n \r\n\r\n {state.focusedFranchise ?\r\n \r\n \r\n ({\r\n records: res?.data,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n />\r\n \r\n \r\n : null}\r\n\r\n {state.showAddEdit ? (\r\n handleAddEdit(false)}\r\n fullWidth\r\n >\r\n handleAddEdit(false)} />\r\n \r\n ) : null}\r\n
\r\n );\r\n}\r\nexport default QCItems;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getDiagnosticFaultByID = async (id) => {\r\n let res = await get(`DiagnosticFaults/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postDiagnosticFaults = async (data) => {\r\n let res = await post(`DiagnosticFaults`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDiagnosticNoiseApparentsByID = async (id) => {\r\n let res = await get(`DiagnosticNoiseApparents/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postDiagnosticNoiseApparents = async (data) => {\r\n let res = await post(`DiagnosticNoiseApparents`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDiagnosticLocationsByID = async (id) => {\r\n let res = await get(`DiagnosticLocations/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postDiagnosticLocations = async (data) => {\r\n let res = await post(`DiagnosticLocations`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDiagnosticEngineFaultsByID = async (id) => {\r\n let res = await get(`DiagnosticEngineFaults/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postDiagnosticEngineFaults = async (data) => {\r\n let res = await post(`DiagnosticEngineFaults`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport { getDiagnosticFaultByID, postDiagnosticFaults } from '../../../Core/Service/diagnosticFaults-service';\r\nimport { Grid, InputLabel, Typography, FormLabel } from '@material-ui/core';\r\nimport { SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport AppContext from './../../../App/AppContext';\r\nimport getResizedImage from '../../../Core/CommonFunctions/imageResizer';\r\nimport { Tooltip } from '@material-ui/core';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\n\r\nconst modelgridStyle = {\r\n formatterImageContainer: { width: '100%', textAlign: 'left' },\r\n // formatterImage: { width: '40%', maxHeight: 60, backgroundSize: 'cover' },\r\n formatterImage: { width: 120, maxHeight: 60, backgroundSize: 'cover' }\r\n};\r\nconst EditBranchScreen = (props) => {\r\n const [state, setState] = useState({\r\n name: '',\r\n color: '',\r\n icon: '',\r\n id: props.id,\r\n errors: {}\r\n });\r\n\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n if (props.id) {\r\n let res = await getDiagnosticFaultByID(props.id);\r\n if (res.success) {\r\n let data = res.data?.list?.table[0];\r\n setState((st) => ({\r\n ...st,\r\n name: data.name,\r\n id: data.id,\r\n icon: data.icon,\r\n color: data.color\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n const handleInput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }));\r\n };\r\n const clearImage = (name) => (e) => {\r\n setState((st) => ({ ...st, [name]: null }));\r\n };\r\n let handleImage = (event) => {\r\n if (event.target.files[0].type.includes('image')) {\r\n getResizedImage(\r\n event.target.files[0],\r\n (fileUrl) => {\r\n setState((state) => {\r\n const nst = { ...state, icon: fileUrl };\r\n return nst;\r\n });\r\n },\r\n 200,\r\n 300\r\n );\r\n } else {\r\n showToast('Wrong file selected');\r\n }\r\n };\r\n const handleSubmit = async () => {\r\n let data = {\r\n id: state.id,\r\n name: state.name,\r\n color: state.color,\r\n icon: state.icon\r\n };\r\n let res = await postDiagnosticFaults(data);\r\n if (res.success) {\r\n showToast(`Branches Updated Successfully`);\r\n props.onClose(true);\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Name\r\n \r\n \r\n {state.errors?.name}\r\n \r\n \r\n \r\n Color\r\n \r\n \r\n {state.errors?.color}\r\n \r\n \r\n \r\n Icon\r\n \r\n \r\n {state.icon ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default EditBranchScreen;\r\n","import React, { useMemo } from 'react';\r\nimport { SquareButton } from '../../../Core/FormInput/AppButton';\r\nimport ReportGijgoGrid from './../../internal/ReportsScreens/GijgoForReportsScreen/index';\r\nimport { Grid, Typography } from '@material-ui/core';\r\nimport ReactDOM from 'react-dom';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport DiagnosticFaultsModal from './DiagnosticFaultsModal';\r\nimport { useState } from 'react';\r\nimport DialogComp from './../../../Core/Modal/dialogModal';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\n\r\nconst baseColumns = [\r\n { field: 'action', sortable: false, title: ``, width: 70, filterable: false },\r\n\r\n { field: 'name', sortable: false, title: `Name` },\r\n { field: 'color', sortable: false, title: `Color` },\r\n {\r\n field: 'icon',\r\n sortable: false,\r\n title: `Icon`,\r\n width: 150\r\n }\r\n];\r\n\r\nconst baseUrl = 'DiagnosticFaults';\r\n\r\nconst crumbs = (path) => [\r\n { name: 'Home', path: '' },\r\n { name: 'Diagnostic Sheets', active: true },\r\n { name: 'Faults', active: true }\r\n];\r\n\r\nconst DiagnosticFault = () => {\r\n const [state, setState] = useState({\r\n showModal: false\r\n });\r\n\r\n const handleClose = () => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: false,\r\n isReload: new Date()\r\n }));\r\n };\r\n\r\n const handleEdit = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: true,\r\n id: val.id\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n handleEdit(record)}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const RenderIconImage = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n {value ? (\r\n \r\n ) : (\r\n 'No Icon Found'\r\n )}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n\r\n let renderImg = col.find((m) => m.field === 'icon');\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n if (renderImg) {\r\n renderImg.renderer = RenderIconImage;\r\n }\r\n return col;\r\n }, []);\r\n return (\r\n
\r\n {state.showModal ? (\r\n \r\n setState((st) => ({\r\n ...st,\r\n showModal: false\r\n }))\r\n }\r\n fullWidth\r\n >\r\n \r\n \r\n ) : null}\r\n \r\n ({\r\n records: res.data.list,\r\n total: res?.data?.total\r\n })}\r\n columns={column}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n isShowTotal={false}\r\n />\r\n
\r\n );\r\n};\r\n\r\nexport default DiagnosticFault;\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport { getDiagnosticFaultByID, postDiagnosticFaults } from '../../../../Core/Service/diagnosticFaults-service';\r\nimport { Grid, InputLabel, Typography, FormLabel } from '@material-ui/core';\r\nimport { SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport {\r\n getDiagnosticEngineFaultsByID,\r\n getDiagnosticLocationsByID,\r\n getDiagnosticNoiseApparentsByID,\r\n postDiagnosticEngineFaults,\r\n postDiagnosticLocations,\r\n postDiagnosticNoiseApparents\r\n} from '../../../../Core/Service/diagnosticFaults-service';\r\n\r\nconst DiagnosticCommonModal = (props) => {\r\n const [state, setState] = useState({\r\n name: '',\r\n id: props.id,\r\n errors: {}\r\n });\r\n\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n let res = {};\r\n if (props.id) {\r\n if (props.screenName == 'Diagnostic Engine Faults') {\r\n res = await getDiagnosticEngineFaultsByID(props.id);\r\n } else if (props.screenName == 'Diagnostic Noise Apparents') {\r\n res = await getDiagnosticNoiseApparentsByID(props.id);\r\n } else if (props.screenName == 'Diagnostic Locations') {\r\n res = await getDiagnosticLocationsByID(props.id);\r\n } else {\r\n res = {};\r\n }\r\n if (res.success) {\r\n let data = res.data?.list?.table[0];\r\n setState((st) => ({\r\n ...st,\r\n name: data.name,\r\n id: data.id\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n const handleInput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }));\r\n };\r\n\r\n const validation = () => {\r\n let errors = {};\r\n let isValid = true;\r\n\r\n let { name } = state;\r\n\r\n if (!name) {\r\n isValid = false;\r\n errors.name = 'Name is required';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n\r\n return isValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validation()) {\r\n let res = {};\r\n let data = {\r\n id: state.id,\r\n name: state.name\r\n };\r\n if (props.screenName == 'Diagnostic Engine Faults') {\r\n res = await postDiagnosticEngineFaults(data);\r\n } else if (props.screenName == 'Diagnostic Noise Apparents') {\r\n res = await postDiagnosticNoiseApparents(data);\r\n } else if (props.screenName == 'Diagnostic Locations') {\r\n res = await postDiagnosticLocations(data);\r\n } else {\r\n res = {};\r\n }\r\n if (res.success) {\r\n showToast(`${props.screenSortName} ${state.id ? 'Updated' : 'Added'} Successfully`);\r\n props.onClose(true);\r\n } else {\r\n console.error(res.message);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Name\r\n \r\n \r\n {state.errors?.name}\r\n \r\n\r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default DiagnosticCommonModal;\r\n","import React, { useMemo } from 'react';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\nimport ReportGijgoGrid from '../../../internal/ReportsScreens/GijgoForReportsScreen/index';\r\nimport { Grid, Typography } from '@material-ui/core';\r\nimport ReactDOM from 'react-dom';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\n// import DiagnosticFaultsModal from '../DiagnosticFaultsModal';\r\nimport { useState } from 'react';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { useEffect } from 'react';\r\nimport DiagnosticCommonModal from './addEditModal';\r\n\r\nconst baseColumns = [\r\n { field: 'action', sortable: false, title: ``, width: 70, filterable: false },\r\n { field: 'name', sortable: false, title: `Name` }\r\n];\r\n\r\nconst crumbs = (path) => [\r\n { name: 'Home', path: '' },\r\n { name: 'Diagnostic Sheets', active: true },\r\n { name: `${path}`, active: true }\r\n];\r\n\r\nconst DiagnosticEngineFaults = (props) => {\r\n const [state, setState] = useState({\r\n showModal: false\r\n });\r\n\r\n useEffect(() => {\r\n let url = '';\r\n if (props.screenName == 'Diagnostic Engine Faults') {\r\n url = 'DiagnosticEngineFaults';\r\n } else if (props.screenName == 'Diagnostic Noise Apparents') {\r\n url = 'DiagnosticNoiseApparents';\r\n } else if (props.screenName == 'Diagnostic Locations') {\r\n url = 'DiagnosticLocations';\r\n } else {\r\n url = '';\r\n }\r\n\r\n setState((st) => ({\r\n ...st,\r\n url: url,\r\n screenSortName: props.screenName.substr(props.screenName.indexOf(' ') + 1)\r\n }));\r\n }, [props.screenName]);\r\n\r\n const handleClose = () => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: false,\r\n isReload: new Date()\r\n }));\r\n };\r\n\r\n const handleEdit = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: true,\r\n id: val?.id\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n handleEdit(record)}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n\r\n return col;\r\n }, []);\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n + Add {`${state.screenSortName}`}\r\n \r\n \r\n \r\n ({\r\n records: res.data.list,\r\n total: res?.data?.total\r\n })}\r\n columns={column}\r\n getUrl={state.url}\r\n isReload={state.isReload}\r\n isShowTotal={false}\r\n />\r\n {state.showModal ? (\r\n \r\n setState((st) => ({\r\n ...st,\r\n showModal: false\r\n }))\r\n }\r\n fullWidth\r\n >\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nexport default DiagnosticEngineFaults;\r\n","import { get, post, put } from './http-calls';\r\n\r\nexport const addUpdateVorType = async (data) => {\r\n let res = await post(`VOR/VORTypes`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const addUpdateVorReason = async (data) => {\r\n let res = await post(`VOR/VORReasons`, data, { useAuthToken: true });\r\n return res;\r\n};","import { FormLabel, Grid, MenuItem } from '@material-ui/core';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox } from '../../../Core/FormInput';\r\nimport { DefaultButton } from '../../../Core/FormInput';\r\nimport { SecondaryButton } from '../../../Core/FormInput';\r\nimport { addUpdateVorType } from '../../../Core/Service/vor-service';\r\n\r\nconst AddEditVorType = (props) => {\r\n const [state, setState] = useState({\r\n errors: {},\r\n\r\n vorTypeDescription: props.focusedRow?.vorTypeDescription ? props.focusedRow.vorTypeDescription : '',\r\n vorTypeCode: props.focusedRow?.vorTypeCode ? props.focusedRow.vorTypeCode : '',\r\n vorTypeID: props.focusedRow?.vorTypeID ? props.focusedRow.vorTypeID : null\r\n });\r\n\r\n const { showToast } = useContext(AppContext);\r\n\r\n const handleFieldChange = (e) => {\r\n const name = e.target.name;\r\n const val = e.target.value;\r\n\r\n setState((st) => ({\r\n ...st,\r\n [name]: val\r\n }));\r\n };\r\n\r\n const validations = () => {\r\n const { vorTypeDescription, vorTypeCode } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (vorTypeDescription == null || vorTypeDescription == '') {\r\n errors.vorTypeDescription = 'Description field is required';\r\n formIsValid = false;\r\n }\r\n\r\n if (vorTypeCode == null || vorTypeCode == '') {\r\n errors.vorTypeCode = 'Code field is required';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validations()) {\r\n const data = {\r\n vorTypeDescription: state.vorTypeDescription,\r\n vorTypeCode: state.vorTypeCode,\r\n vorTypeID: state.vorTypeID\r\n };\r\n let res = await addUpdateVorType(data);\r\n if (!res.success) {\r\n console.error(res);\r\n showToast('Error occured.');\r\n } else {\r\n showToast('Vor type updated successfully');\r\n props.onClose();\r\n }\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Description\r\n \r\n \r\n {state.errors['vorTypeDescription']}\r\n \r\n\r\n \r\n \r\n Code\r\n \r\n \r\n {state.errors['vorTypeCode']}\r\n \r\n\r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\nexport default AddEditVorType;\r\n","import { FormLabel, Grid, MenuItem } from '@material-ui/core';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox } from '../../../Core/FormInput';\r\nimport { DefaultButton } from '../../../Core/FormInput';\r\nimport { SecondaryButton } from '../../../Core/FormInput';\r\nimport { addUpdateVorReason, addUpdateVorType } from '../../../Core/Service/vor-service';\r\n\r\nconst AddEditVorReason = (props) => {\r\n const [state, setState] = useState({\r\n errors: {},\r\n\r\n vorReasonDescription: props.focusedRow?.vorReasonDescription ? props.focusedRow.vorReasonDescription : '',\r\n vorReasonID: props.focusedRow?.vorReasonID ? props.focusedRow.vorReasonID : null\r\n });\r\n\r\n const { showToast } = useContext(AppContext);\r\n\r\n const handleFieldChange = (e) => {\r\n const name = e.target.name;\r\n const val = e.target.value;\r\n\r\n setState((st) => ({\r\n ...st,\r\n [name]: val\r\n }))\r\n }\r\n\r\n const validations = () => {\r\n const {\r\n vorReasonDescription\r\n } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (vorReasonDescription == null || vorReasonDescription == '') {\r\n errors.vorReasonDescription = 'Description field is required';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validations()) {\r\n const data = {\r\n vorReasonDescription: state.vorReasonDescription,\r\n VORReasonTypeID: props.VORReasonTypeID,\r\n vorReasonID: state.vorReasonID,\r\n }\r\n let res = await addUpdateVorReason(data);\r\n if (!res.success) {\r\n console.error(res);\r\n showToast(\"Error occured.\")\r\n } else {\r\n showToast(\"Vor reason updated successfully\")\r\n props.onClose()\r\n }\r\n }\r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n Description\r\n \r\n {state.errors['vorReasonDescription']}\r\n \r\n\r\n \r\n \r\n Save\r\n \r\n \r\n \r\n
\r\n );\r\n}\r\nexport default AddEditVorReason;\r\n","import { Grid } from '@material-ui/core';\r\nimport { Edit } from '@material-ui/icons';\r\nimport React, { useEffect, useMemo, useState } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\nimport { SecondaryButton } from '../../../Core/FormInput';\r\nimport { SquareButton } from '../../../Core/FormInput/AppButton';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport ReportGijgoGrid from '../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport AddEditVorReason from './AddEditVorReason';\r\n\r\nconst VorReasons = (props) => {\r\n const [state, setState] = useState({\r\n showAddEdit: false\r\n });\r\n\r\n const crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'VOR', active: true },\r\n { name: `VOR Reasons`, active: true },\r\n { name: `${props.focusedRow.vorTypeDescription}`, active: true }\r\n ];\r\n\r\n const baseColumns = [\r\n {\r\n field: 'action',\r\n sortable: false,\r\n title: `Action`,\r\n width: '5%',\r\n filterable: false\r\n },\r\n {\r\n field: 'vorReasonID',\r\n title: `ID`,\r\n hidden: true\r\n },\r\n {\r\n field: 'vorReasonDescription',\r\n title: `Description`,\r\n },\r\n ];\r\n\r\n useEffect(() => {\r\n\r\n }, []);\r\n\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n {\r\n handleAddEdit(true)\r\n setState((st) => ({\r\n ...st,\r\n focusedRow: record\r\n }))\r\n }}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let actionCol = tempCols.find((element) => element.field === 'action');\r\n\r\n if (actionCol) {\r\n actionCol.renderer = editButton({});\r\n }\r\n\r\n return tempCols;\r\n }, []);\r\n\r\n const handleAddEdit = (val) => {\r\n if (val) {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: val,\r\n isReload: false\r\n }))\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: val,\r\n focusedRow: null,\r\n isReload: true\r\n }))\r\n }\r\n }\r\n\r\n let baseUrl = `VOR/VORReasons/${props.focusedRow.vorTypeID}`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n handleAddEdit(true)}\r\n className=\"btnadd\"\r\n >\r\n Add Vor Reason\r\n \r\n \r\n \r\n\r\n \r\n \r\n ({\r\n records: res?.data,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n />\r\n \r\n \r\n\r\n {state.showAddEdit ? (\r\n handleAddEdit(false)}\r\n fullWidth\r\n >\r\n handleAddEdit(false)} />\r\n \r\n ) : null}\r\n
\r\n );\r\n}\r\nexport default VorReasons;\r\n","import { Grid } from '@material-ui/core';\r\nimport { Assignment, Edit } from '@material-ui/icons';\r\nimport React, { useEffect, useMemo, useState } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\nimport { SecondaryButton } from '../../../Core/FormInput';\r\nimport { SquareButton } from '../../../Core/FormInput/AppButton';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport ReportGijgoGrid from '../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport AddEditVorType from './AddEditVorType';\r\nimport VorReasons from './VorReasons';\r\n\r\nconst VorTypes = () => {\r\n const [state, setState] = useState({\r\n showAddEdit: false,\r\n showVorReasons: false,\r\n });\r\n\r\n const crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'VOR', active: true },\r\n { name: `VOR Types`, active: true }\r\n ];\r\n\r\n const baseColumns = [\r\n {\r\n field: 'action',\r\n sortable: false,\r\n title: `Action`,\r\n width: '110',\r\n filterable: false\r\n },\r\n {\r\n field: 'vorTypeID',\r\n title: `ID`,\r\n hidden: true\r\n },\r\n {\r\n field: 'vorTypeDescription',\r\n title: `Description`,\r\n },\r\n {\r\n field: 'vorTypeCode',\r\n title: `code`,\r\n },\r\n ];\r\n\r\n useEffect(() => {\r\n\r\n }, []);\r\n\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n {\r\n handleAddEdit(true)\r\n setState((st) => ({\r\n ...st,\r\n focusedRow: record\r\n }))\r\n }}\r\n >\r\n \r\n \r\n {\r\n setState((st) => ({\r\n ...st,\r\n showVorReasons: true,\r\n focusedRow: record\r\n }))\r\n }}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let actionCol = tempCols.find((element) => element.field === 'action');\r\n\r\n if (actionCol) {\r\n actionCol.renderer = editButton({});\r\n }\r\n\r\n return tempCols;\r\n }, []);\r\n\r\n const handleAddEdit = (val) => {\r\n if (val) {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: val,\r\n isReload: false\r\n }))\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n showAddEdit: val,\r\n focusedRow: null,\r\n isReload: true\r\n }))\r\n }\r\n }\r\n\r\n let baseUrl = `VOR/VORTypes`;\r\n\r\n return (\r\n
\r\n {state.showVorReasons ?\r\n <>\r\n \r\n \r\n :\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n handleAddEdit(true)}\r\n className=\"btnadd\"\r\n >\r\n Add Vor Type\r\n \r\n \r\n \r\n\r\n \r\n \r\n ({\r\n records: res?.data,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n />\r\n \r\n \r\n\r\n {state.showAddEdit ? (\r\n handleAddEdit(false)}\r\n fullWidth\r\n >\r\n handleAddEdit(false)} />\r\n \r\n ) : null}\r\n }\r\n
\r\n );\r\n}\r\nexport default VorTypes;\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport { postBookingRequestStatus } from '../../../../Core/Service/communicator-service';\r\nimport { Grid, InputLabel, Typography, FormLabel, FormControlLabel, Checkbox } from '@material-ui/core';\r\nimport { SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport AppContext from './../../../../App/AppContext';\r\nimport CustomeEditor from '../../../../Core/CkEditor';\r\nimport Multiselect from './../../../../Core/FormInput/MultiSelect';\r\nconst AddUpdateBookingStatus = (props) => {\r\n const [state, setState] = useState({\r\n branchInvoice: [],\r\n sendEmail: false,\r\n body: props.data.body,\r\n iD: null\r\n });\r\n\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n // if (props.data) {\r\n setState((st) => ({\r\n ...st,\r\n iD: props.reqID,\r\n description: props.data.description,\r\n sendEmail: props.data.email,\r\n subject: props.data.subjects\r\n // body: .toString()\r\n }));\r\n // }\r\n }, [props]);\r\n\r\n console.log(state, 'state');\r\n\r\n const handleInput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }));\r\n };\r\n\r\n const handleCkeditorstate = (name) => (event, editor) => {\r\n const data = editor.getData();\r\n setState((st) => ({ ...st, [name]: data }));\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let data = {\r\n iD: props.reqID || null,\r\n description: state.description || '',\r\n sendEmail: state.sendEmail || false,\r\n subject: state.subject || '',\r\n body: state.body || ''\r\n };\r\n\r\n let res = await postBookingRequestStatus(data);\r\n if (res.data.success) {\r\n showToast(`Booking Request Status ${props.reqID ? 'Updated' : 'Added'} successfully`);\r\n props.onClose(true);\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst[name] = checked;\r\n return nst;\r\n });\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n Description\r\n \r\n \r\n \r\n Subject\r\n \r\n \r\n \r\n Body\r\n
\r\n\r\n \r\n
\r\n \r\n } label=\"Send Email?\" />\r\n \r\n \r\n \r\n Save\r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default AddUpdateBookingStatus;\r\n","import { Grid } from '@material-ui/core';\r\nimport React, { useMemo, useState } from 'react';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\nimport ReportGijgoGrid from '../../../internal/ReportsScreens/GijgoForReportsScreen';\r\n\r\nimport ReactDOM from 'react-dom';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport AddUpdateBookingStatus from './addUpdateBooking';\r\nimport DialogComp from './../../../../Core/Modal/dialogModal';\r\n\r\nconst baseColumns = [\r\n { field: 'action', sortable: false, title: ``, width: 70, filterable: false },\r\n\r\n { field: 'description', sortable: false, title: `Description` },\r\n { field: 'subject', sortable: false, title: `Subject`, width: 200 },\r\n\r\n { field: 'body', sortable: false, title: `Body` },\r\n {\r\n field: 'email',\r\n sortable: false,\r\n title: `Email`,\r\n width: 150,\r\n renderer: (val) => {\r\n return val ? 'Yes' : 'No';\r\n }\r\n }\r\n];\r\n\r\nconst crumbs = (path) => [\r\n { name: 'Home', path: '' },\r\n { name: 'Communicator', active: true },\r\n { name: `Booking Request Status`, active: true }\r\n];\r\n\r\nconst BookingRequestStatus = () => {\r\n const [state, setState] = useState({\r\n showModal: false,\r\n isReload: ''\r\n });\r\n\r\n const handleClose = (res) => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: false,\r\n isReload: res ? new Date() : ''\r\n }));\r\n };\r\n\r\n const handleEdit = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: true,\r\n reqID: val.id,\r\n data: val\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n handleEdit(record)}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n\r\n return col;\r\n }, []);\r\n const baseUrl = 'CommunicatorBookingRequest/GetBookingRequestStatus';\r\n return (\r\n
\r\n ({\r\n records: res.data.list.table\r\n })}\r\n columns={baseColumns}\r\n getUrl={baseUrl}\r\n // isReload={state.isReload}\r\n isShowTotal={false}\r\n // hidePagination={true}\r\n isReload={state.isReload}\r\n // hidePagination={true}\r\n // hideFilterRow={true}\r\n />\r\n {state.showModal ? (\r\n handleClose(false)}>\r\n handleClose(true)} reqID={state.reqID} data={state.data} />\r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nexport default BookingRequestStatus;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getDynamicFormDetails = async (Id) => {\r\n let res = await get(`DynamicForms/GetByID/${Id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const saveDynamicForms = async (data) => {\r\n let res = await post(`DynamicForms `, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const deleteDynamicForm = async (id) => {\r\n let res = await post(`DynamicForms/DeleteDynamicForm/${id}`, {}, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const saveDynamicFormFields = async (data) => {\r\n let res = await post(`DynamicFormFields `, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDynamicFormFieldsById = async (Id) => {\r\n let res = await get(`DynamicFormFields/${Id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDynamicFormFieldsByFormID = async (id) => {\r\n let res = await get(`DynamicFormFields/ByFormID/${id} `, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getOptionsByDynamicFormId = async (id) => {\r\n let res = await get(`DynamicFormFields/OptionsByDynamicFormId/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDynamicFormDataByID = async (headerRecordId, dynamicFormId) => {\r\n let res = await get(`DynamicForms/DynamicFormData/${headerRecordId}/${dynamicFormId}`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\nexport const getGetDynamicFormDocuments = async (headerRecordId, documentFieldID) => {\r\n let res = await get(`DynamicForms/GetDynamicFormDocuments/${headerRecordId}/${documentFieldID}`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const saveDynamicFormFieldUploadDoc = async (headerRecordId, dynamicFormFieldId, formData) => {\r\n let res = await post(`DynamicForms/UploadDoc/${headerRecordId}/${dynamicFormFieldId}`, formData, {\r\n useAuthToken: true\r\n });\r\n\r\n return res;\r\n};\r\n\r\nexport const deleteDocDynamicFormField = async (headerRecordId, documentID, formData) => {\r\n let res = await post(\r\n `DynamicForms/DeleteDoc/${headerRecordId}/${documentID}`,\r\n {},\r\n {\r\n useAuthToken: true\r\n }\r\n );\r\n\r\n return res;\r\n};\r\nexport const saveDynamicFormData = async (headerRecordId, dynamicFormId, data) => {\r\n let res = await post(`DynamicForms/DynamicFormData/${headerRecordId}/${dynamicFormId}`, data, {\r\n useAuthToken: true\r\n });\r\n\r\n return res;\r\n};\r\n\r\nexport const swapDynamicFormFields = async (DynamicFormID, DynamicFormFieldId1, DynamicFormFieldId2) => {\r\n let res = await post(`DynamicFormFields/SwapDynamicFormFields`, {\r\n DynamicFormID: DynamicFormID,\r\n DynamicFormFieldId1: DynamicFormFieldId1,\r\n DynamicFormFieldId2: DynamicFormFieldId2,\r\n }, {\r\n useAuthToken: true\r\n });\r\n\r\n return res;\r\n};","import React from 'react';\r\nimport { Accordion, AccordionDetails, AccordionSummary, Card, CardContent, CardHeader, makeStyles, Typography } from '@material-ui/core';\r\nimport { ExpandMore } from '@material-ui/icons';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%',\r\n background: 'cyan'\r\n },\r\n summary: {\r\n background: theme.palette.primary.main,\r\n color: theme.palette.primary.contrastText\r\n },\r\n heading: {\r\n fontSize: theme.typography.pxToRem(15),\r\n fontWeight: theme.typography.fontWeightRegular\r\n },\r\n cardRoot: {\r\n margin: theme.spacing(2),\r\n '&.MuiCardContent-root:last-child': {\r\n paddingBottom: 0\r\n }\r\n },\r\n cardHeader: {\r\n '&.MuiCardHeader-content': {\r\n // background: 'red'\r\n },\r\n '&.MuiTypography-h5': {\r\n fontSize: '0.9rem'\r\n }\r\n }\r\n}));\r\n\r\nexport const FieldWrappper = React.memo((props) => {\r\n const { children, heading, isAccordion, setState, state, component: Comps } = props;\r\n let { isCard } = props;\r\n const classes = useStyles();\r\n if (!isAccordion) {\r\n if (isCard === undefined) {\r\n isCard = true;\r\n }\r\n }\r\n\r\n const FinalRender = () => (Comps ? : children);\r\n\r\n return (\r\n <>\r\n {isAccordion ? (\r\n \r\n }>\r\n {heading}\r\n \r\n {FinalRender()}\r\n \r\n ) : isCard ? (\r\n \r\n \r\n {FinalRender()}\r\n \r\n ) : (\r\n <>{FinalRender()}\r\n )}\r\n \r\n );\r\n});\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, DialogContents, DialogTitles, Dialogs, SecondaryButton, DialogsActions, DefaultButton, YesNoButton } from '../../../Core/FormInput';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport '../User Management/UserManagement.css';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { addWebForm } from '../../../Core/Service/webForm-service';\r\nimport { MenuItem } from '@material-ui/core';\r\nimport { getWorkflows } from '../../../Core/Service/workflow-service';\r\nimport { getDynamicFormDetails, saveDynamicForms } from '../../../Core/Service/dynamic-forms-service';\r\nimport { SketchPicker } from 'react-color';\r\nimport { FieldWrappper } from '../../../Core/FieldWrapper';\r\n\r\nconst AddEditDynamicFormsModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n name: '',\r\n buttonLabel: '',\r\n url: '',\r\n description: '',\r\n errors: {},\r\n fields: {},\r\n nextWorkFlow: null,\r\n workFlowList: [],\r\n navigateToDashboard: false,\r\n dynamicFormBackgroundColor: '#FFFFFF',\r\n dynamicFormTextColor: '#000000'\r\n });\r\n\r\n useEffect(async () => {\r\n let result = await getWorkflows();\r\n if (result.success) {\r\n setState((st) => ({ ...st, workFlowList: result.data }));\r\n }\r\n if (props.recordId) {\r\n let res = await getDynamicFormDetails(props.recordId);\r\n if (res.success) {\r\n let data = res.data.list.table[0];\r\n setState((st) => ({\r\n ...st,\r\n name: data.name,\r\n buttonLabel: data.buttonLabel,\r\n description: data.description,\r\n nextWorkFlow: data.editableWorkflowID,\r\n navigateToDashboard: data.navigateToDashboardOnSubmit,\r\n dynamicFormBackgroundColor: data.backgroundColor || '#FFFFFF',\r\n dynamicFormTextColor: data.textColor || '#000000'\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n const handleClose = () => {\r\n props.onClose(false);\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value, fields: fields };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async () => {\r\n if (handleValidation()) {\r\n let data = {\r\n Id: props.recordId || null,\r\n name: state.name,\r\n buttonLabel: state.buttonLabel,\r\n description: state.description,\r\n EditableWorkflowID: state.nextWorkFlow,\r\n navigateToDashboardOnSubmit: state.navigateToDashboard,\r\n dynamicFormBackgroundColor: state.dynamicFormBackgroundColor,\r\n dynamicFormTextColor: state.dynamicFormTextColor\r\n };\r\n\r\n let res = await saveDynamicForms(data);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n props.onClose(true);\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n let formIsValid = true;\r\n if (!state.name) {\r\n formIsValid = false;\r\n errors['name'] = 'Name cannot be empty';\r\n }\r\n\r\n if (!state.buttonLabel) {\r\n formIsValid = false;\r\n errors['buttonLabel'] = 'Button label cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n return (\r\n \r\n \r\n {props.recordId ? Update Dynamic Form : Add Dynamic Form}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Name\r\n \r\n \r\n {state.errors['name']}\r\n \r\n\r\n \r\n \r\n Button Label\r\n \r\n \r\n {state.errors['buttonLabel']}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Form Background\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n dynamicFormBackgroundColor: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Form Text\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n dynamicFormTextColor: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Editable in Workflow\r\n \r\n {state.workFlowList\r\n .filter((m) => m.id)\r\n .map((option) => (\r\n \r\n {option.workflowName}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Navigate to dashboard?\r\n \r\n handleClick('navigateToDashboard', true)}\r\n onNoClick={() => handleClick('navigateToDashboard', false)}\r\n />\r\n \r\n \r\n \r\n\r\n \r\n Description\r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default AddEditDynamicFormsModal;\r\n","import React, { useContext, useState, useEffect } from 'react';\r\nimport { Dialog, DialogActions, DialogContent, DialogTitle } from '@material-ui/core';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { SecondaryButton, PrimaryButton } from '../../../Core/FormInput';\r\nimport Box from '@material-ui/core/Box';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton } from '@material-ui/core';\r\nimport { DeleteWebForm } from './../../../Core/Service/webForm-service';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { deleteDynamicForm } from '../../../Core/Service/dynamic-forms-service';\r\n\r\nconst DeleteDynamicForm = (props) => {\r\n const { showToast } = useContext(AppContext);\r\n\r\n const handleClose = () => {\r\n props.onClose(false);\r\n };\r\n\r\n const handleDelete = async () => {\r\n let res = await deleteDynamicForm(props.recordId);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n props.onClose(true);\r\n }\r\n showToast(res.message);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n Delete Dynamic Form - {props.dynamicFormName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Are you sure to delete this dynamic form\r\n \r\n \r\n \r\n \r\n No\r\n \r\n \r\n Yes\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DeleteDynamicForm;\r\n","import React, { useMemo } from 'react';\r\nimport { SquareButton } from '../../../Core/FormInput/AppButton';\r\n\r\nimport { Grid, IconButton } from '@material-ui/core';\r\n\r\nimport ReactDOM from 'react-dom';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\n// import DiagnosticFaultsModal from '../DiagnosticFaultsModal';\r\nimport { useState } from 'react';\r\nimport DialogComp from '../../../Core/Modal/dialogModal';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\nimport { useEffect } from 'react';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport ReportGijgoGrid from '../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport AddEditDynamicFormsModal from './AddEditDynamicForm';\r\nimport DeleteDynamicForm from './deleteDynamicForm';\r\nimport { Link, useHistory } from 'react-router-dom';\r\nimport BuildIcon from '@material-ui/icons/Build';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\n\r\nconst baseColumns = [\r\n { field: 'action', title: 'Action', width: 140, filterable: false, sortable: false },\r\n { field: 'name', sortable: false, title: `Name` },\r\n { field: 'buttonLabel', sortable: false, title: `Button Label`, width: 190 },\r\n { field: 'description', sortable: false, title: `Description` }\r\n];\r\n\r\nconst crumbs = (path) => [\r\n { name: 'Home', path: '' },\r\n { name: 'Dynamic Forms', active: true }\r\n];\r\n\r\nconst DynamicFormsList = (props) => {\r\n const [state, setState] = useState({\r\n showModal: false\r\n });\r\n\r\n const handleClose = (res) => {\r\n let newSt = {};\r\n newSt.showModal = false;\r\n newSt.deleteModal = false;\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setState((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n const handleEdit = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: true,\r\n id: val?.id\r\n }));\r\n };\r\n\r\n const handleDelete = async (val) => {\r\n setState((st) => ({\r\n ...st,\r\n id: val?.id,\r\n dynamicFormName: val?.name,\r\n deleteModal: true\r\n }));\r\n };\r\n const history = useHistory();\r\n\r\n const GotoDynamicFormField = (val) => {\r\n history.push({\r\n pathname: `/DynamicForm/${val.id}`\r\n });\r\n };\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n handleEdit(record)}\r\n >\r\n \r\n \r\n \r\n \r\n GotoDynamicFormField(record)}\r\n >\r\n \r\n \r\n \r\n \r\n handleDelete(record)}\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n\r\n return col;\r\n }, []);\r\n\r\n const url = 'DynamicForms';\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n + Add Dynamic Form\r\n \r\n \r\n \r\n ({\r\n records: res.data.list,\r\n total: res?.data?.total\r\n })}\r\n columns={column}\r\n getUrl={url}\r\n isReload={state.isReload}\r\n isShowTotal={false}\r\n />\r\n {state.showModal ? : null}\r\n {state.deleteModal ? : null}\r\n
\r\n );\r\n};\r\n\r\nexport default DynamicFormsList;\r\n","import {\r\n Box,\r\n Checkbox,\r\n CircularProgress,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n FormControlLabel,\r\n FormLabel,\r\n Grid,\r\n IconButton,\r\n InputLabel,\r\n Tooltip\r\n} from '@material-ui/core';\r\nimport React, { useContext, useState } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { DefaultButton, Dialogs, PrimaryButton, SecondaryButton, SelectBox, TextBox, YesNoButton } from '../../../../Core/FormInput';\r\nimport { getDynamicFormFieldsById, saveDynamicFormFields } from '../../../../Core/Service/dynamic-forms-service';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport { useEffect } from 'react';\r\nimport { getWorkflowStepList, getWebForms, getWorkflowDataScreenDropdown } from '../../../../Core/Service/workflowList-service';\r\nimport { FieldWrappper } from '../../../../Core/FieldWrapper';\r\nimport { SketchPicker } from 'react-color';\r\nimport { Backup } from '@material-ui/icons';\r\nimport LinkIcon from '@material-ui/icons/Link';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport RemoveCircleOutlineIcon from '@material-ui/icons/RemoveCircleOutline';\r\nimport _uniqueId from 'lodash/uniqueId';\r\nimport moment from 'moment';\r\n\r\nconst useStyles = makeStyles({\r\n btnContainer: {\r\n margin: '9px 0px 0px 0px !important',\r\n height: '38px !important'\r\n }\r\n});\r\n\r\nconst AddEditDynamicFormFields = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const classes = useStyles();\r\n const [state, setState] = useState({\r\n SteplList: [],\r\n stepListId: '',\r\n OcrDocumnetList: [],\r\n documentName: '',\r\n WebFormList: [],\r\n webFormId: null,\r\n IsEditable: false,\r\n IsRequired: false,\r\n IsVisibleAuditor: false,\r\n IsVisibleCutomer: false,\r\n IsActive: true,\r\n Label: '',\r\n dynamicFormFieldJsonPropertyName: _uniqueId('DyamicForm_'),\r\n sequence: '',\r\n stepID: null,\r\n isTextboxType: false,\r\n noOption: false,\r\n issteplist: true,\r\n errors: {},\r\n isListType: true,\r\n isTextboxType: false,\r\n dynamicFormFieldDisplayType: '',\r\n dynamicFormFieldIndex: _uniqueId(),\r\n dynamicFormFieldListId: '',\r\n dynamicFormFieldLabel: '',\r\n dynamicFormFieldOcrDocumentId: '',\r\n dynamicFormFieldType: 1,\r\n dynamicFormFieldShowUpload: false,\r\n dynamicFormFieldShowView: false,\r\n dynamicFormFieldShowEmail: false,\r\n dynamicFormFieldIsDeleted: false,\r\n dynamicFormFieldIsRequired: false,\r\n dynamicFormFieldBackgroundColor: '#FFFFFF',\r\n dynamicFormFieldTextColor: '#000000',\r\n dynamicFormFieldTextImage: '',\r\n dynamicFormFieldTextURL: '',\r\n dynamicFormFieldSubtitle: ''\r\n });\r\n console.log(state.dynamicFormFieldJsonPropertyName, state.dynamicFormFieldIndex);\r\n useEffect(async () => {\r\n let res = await getWorkflowDataScreenDropdown();\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n SteplList: res?.data?.workflowSteps,\r\n OcrDocumnetList: res?.data?.ocrDoc,\r\n WebFormList: res?.data.webForm,\r\n dynamicFormList: res?.data?.dynamicForm\r\n }));\r\n }\r\n\r\n if (props.dynamicFormFieldId) {\r\n let res = await getDynamicFormFieldsById(props.dynamicFormFieldId);\r\n let data = res.data.list.table[0];\r\n setState((st) => ({\r\n ...st,\r\n dynamicFormID: props.DynamicFormID,\r\n dynamicFormFieldId: props.dynamicFormFieldId || null,\r\n dynamicFormFieldLabel: data.dynamicFormFieldLabel,\r\n dynamicFormFieldIndex: data.dynamicFormFieldIndex,\r\n dynamicFormFieldListId: data.dynamicFormFieldListId,\r\n dynamicFormFieldIsRequired: data.dynamicFormFieldIsRequired,\r\n dynamicFormFieldJsonPropertyName: data.dynamicFormFieldJsonPropertyName,\r\n dynamicFormFieldShowUpload: data.dynamicFormFieldShowUpload,\r\n dynamicFormFieldShowView: data.dynamicFormFieldShowView,\r\n dynamicFormFieldShowEmail: data.dynamicFormFieldShowEmail,\r\n dynamicFormFieldType: data.dynamicFormFieldType,\r\n isListType: data.dynamicFormFieldType == 1,\r\n isTextboxType: data.dynamicFormFieldType == 2,\r\n dynamicFormFieldDisplayType: data.dynamicFormFieldDisplayType,\r\n dynamicFormFieldIsDeleted: data.dynamicFormFieldIsDeleted,\r\n dynamicFormFieldNumberOfRows: data.dynamicFormFieldNumberOfRows,\r\n dynamicFormFieldBackgroundColor: data.dynamicFormFieldBackgroundColor || '#FFFFFF',\r\n dynamicFormFieldTextColor: data.dynamicFormFieldTextColor || '#000000',\r\n dynamicFormFieldTextImage: data.dynamicFormFieldTextImage,\r\n dynamicFormFieldTextURL: data.dynamicFormFieldTextURL,\r\n dynamicFormFieldSubtitle: data.dynamicFormFieldSubtitle\r\n }));\r\n }\r\n }, []);\r\n\r\n const fieldChange = (e) => {\r\n const { name, value, type, checked } = e.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n if (type === 'checkbox') {\r\n nst[name] = checked;\r\n } else {\r\n nst[name] = value;\r\n }\r\n return nst;\r\n });\r\n };\r\n\r\n const handleClick = (name, value) => {\r\n console.log(name, value);\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n return nst;\r\n });\r\n };\r\n\r\n const validateSpace = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n if (value.includes(' ')) {\r\n nst.dynamicFormFieldJsonPropertyName = value.replace(/\\s/g, '');\r\n }\r\n nst[name] = value;\r\n return nst;\r\n });\r\n };\r\n const handleKeyDown = (e) => {\r\n if (e.key === ' ') {\r\n e.preventDefault();\r\n }\r\n };\r\n\r\n const handleWorkflowType = (name) => {\r\n setState((st) => {\r\n const nst = { ...st };\r\n if (name == 'isListType') {\r\n nst.isListType = true;\r\n nst.isTextboxType = false;\r\n nst.dynamicFormFieldType = 1;\r\n nst.dynamicFormFieldNumberOfRows = '';\r\n } else {\r\n nst.isListType = false;\r\n nst.isTextboxType = true;\r\n nst.dynamicFormFieldType = 2;\r\n nst.dynamicFormFieldListId = '';\r\n }\r\n nst.dynamicFormFieldDisplayType = null;\r\n return nst;\r\n });\r\n };\r\n\r\n const validation = () => {\r\n let errors = {};\r\n let isValid = true;\r\n let { dynamicFormFieldLabel, dynamicFormFieldJsonPropertyName, dynamicFormFieldIndex, dynamicFormFieldDisplayType, dynamicFormFieldListId } = state;\r\n if (!dynamicFormFieldJsonPropertyName) {\r\n isValid = false;\r\n errors.dynamicFormFieldJsonPropertyName = 'Field ID is required';\r\n }\r\n if (!dynamicFormFieldLabel) {\r\n isValid = false;\r\n errors.dynamicFormFieldLabel = 'Label is required';\r\n }\r\n if (!dynamicFormFieldIndex) {\r\n isValid = false;\r\n errors.dynamicFormFieldIndex = 'Sequance is required';\r\n }\r\n if (state.dynamicFormFieldIsRequired && !dynamicFormFieldDisplayType) {\r\n isValid = false;\r\n errors.dynamicFormFieldDisplayType = 'Display Type is required';\r\n }\r\n if (dynamicFormFieldDisplayType && state.isListType && !dynamicFormFieldListId) {\r\n isValid = false;\r\n errors.dynamicFormFieldListId = 'Please select List';\r\n }\r\n\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n\r\n return isValid;\r\n };\r\n\r\n const handelSubmit = async () => {\r\n if (validation()) {\r\n let data = {\r\n dynamicFormID: props.DynamicFormID,\r\n dynamicFormFieldId: props.dynamicFormFieldId || null,\r\n dynamicFormFieldLabel: state.dynamicFormFieldLabel,\r\n dynamicFormFieldIndex: state.dynamicFormFieldIndex,\r\n dynamicFormFieldListId: state.dynamicFormFieldListId,\r\n dynamicFormFieldOcrDocumentId: '',\r\n dynamicFormFieldIsRequired: state.dynamicFormFieldIsRequired,\r\n dynamicFormFieldJsonPropertyName: state.dynamicFormFieldJsonPropertyName,\r\n dynamicFormFieldShowUpload: state.dynamicFormFieldShowUpload,\r\n dynamicFormFieldShowView: state.dynamicFormFieldShowView,\r\n dynamicFormFieldShowEmail: state.dynamicFormFieldShowEmail,\r\n dynamicFormFieldType: state.dynamicFormFieldType,\r\n dynamicFormFieldDisplayType: state.dynamicFormFieldDisplayType,\r\n dynamicFormFieldIsDeleted: state.dynamicFormFieldIsDeleted,\r\n dynamicFormFieldNumberOfRows: state.dynamicFormFieldNumberOfRows,\r\n\r\n dynamicFormFieldBackgroundColor: state.dynamicFormFieldBackgroundColor,\r\n dynamicFormFieldTextColor: state.dynamicFormFieldTextColor,\r\n dynamicFormFieldTextImage: state.dynamicFormFieldTextImage,\r\n dynamicFormFieldTextURL: state.dynamicFormFieldTextURL,\r\n dynamicFormFieldSubtitle: state.dynamicFormFieldSubtitle\r\n };\r\n\r\n let res = await saveDynamicFormFields(data);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n props.onClose(true);\r\n }\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n let handleImage = (imageField) => (event) => {\r\n let reader = new FileReader();\r\n reader.onload = (e) => {\r\n const { result } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [imageField]: result\r\n }));\r\n };\r\n reader.readAsDataURL(event.target.files[0]);\r\n };\r\n\r\n const clearImage = (e) => {\r\n setState((st) => ({ ...st, dynamicFormFieldTextImage: '', dynamicFormFieldTextURL: '' }));\r\n };\r\n\r\n const videoLinkModalHandler = (e) => {\r\n setState((st) => ({ ...st, showVideoLinkModal: true }));\r\n };\r\n const closeVideoLinkModalHandler = (e) => {\r\n setState((st) => ({ ...st, showVideoLinkModal: false }));\r\n };\r\n\r\n const getLink = (URL) => {\r\n if (!URL.includes('youtube.com')) {\r\n return URL;\r\n }\r\n if (URL.includes('youtube.com') && !URL.includes('/embed/')) {\r\n return 'https://www.youtube.com/embed/' + URL.split('?v=')[1];\r\n }\r\n return URL;\r\n };\r\n\r\n return (\r\n \r\n {/* \r\n \r\n Field ID\r\n \r\n  (enter a unique name for the Field ID)\r\n \r\n {state.errors['dynamicFormFieldJsonPropertyName']}\r\n \r\n \r\n \r\n Sequence\r\n \r\n \r\n {state.errors['dynamicFormFieldIndex']}\r\n */}\r\n \r\n \r\n Label\r\n \r\n \r\n {state.errors['dynamicFormFieldLabel']}\r\n \r\n \r\n Subtitle\r\n \r\n {state.errors['dynamicFormFieldSubtitle']}\r\n \r\n \r\n \r\n \r\n Field Type\r\n \r\n \r\n handleWorkflowType('isListType')}\r\n >\r\n List\r\n \r\n \r\n \r\n handleWorkflowType('isTextboxType')}\r\n >\r\n Text Box\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Display Type\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.errors['dynamicFormFieldDisplayType']}\r\n \r\n \r\n \r\n \r\n \r\n List\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.errors['dynamicFormFieldListId']}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Field Background\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n dynamicFormFieldBackgroundColor: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Field Text\r\n \r\n \r\n \r\n \r\n setState((state) => ({\r\n ...state,\r\n dynamicFormFieldTextColor: updatedColor.hex\r\n }))\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Choose Media\r\n \r\n \r\n \r\n {/* */}\r\n {state.dynamicFormFieldTextURL || state.dynamicFormFieldTextImage ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n <>\r\n \r\n\r\n \r\n \r\n \r\n )}\r\n {/* */}\r\n \r\n \r\n {state.dynamicFormFieldTextURL && (\r\n
\r\n \r\n
\r\n )}\r\n {state.dynamicFormFieldTextImage && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {/* \r\n Attached Document\r\n \r\n */}\r\n \r\n }\r\n label=\"Can Upload?\"\r\n labelPlacement=\"start\"\r\n />\r\n \r\n \r\n }\r\n label=\"Can View?\"\r\n labelPlacement=\"start\"\r\n />\r\n \r\n \r\n }\r\n label=\"Can Email?\"\r\n labelPlacement=\"start\"\r\n />\r\n \r\n \r\n }\r\n label=\"Can Delete?\"\r\n labelPlacement=\"start\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Is Required?\r\n \r\n handleClick('dynamicFormFieldIsRequired', true)}\r\n onNoClick={() => handleClick('dynamicFormFieldIsRequired', false)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n {state.showVideoLinkModal && }\r\n
\r\n );\r\n};\r\n\r\nexport default AddEditDynamicFormFields;\r\n\r\nconst GetVideoLink = (props) => {\r\n const { userRoles } = useContext(AppContext);\r\n const [loading, setLoading] = useState(true);\r\n return (\r\n \r\n \r\n \r\n Video URL\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n URL\r\n \r\n \r\n {/* {state.errors['dynamicFormFieldTextURL']} */}\r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n","import React, { useMemo } from 'react';\r\nimport { Grid, IconButton } from '@material-ui/core';\r\nimport ReactDOM from 'react-dom';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport { useState } from 'react';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { useEffect } from 'react';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport ReportGijgoGrid from '../../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\nimport AddEditDynamicFormFields from './AddEditDynamicFields';\r\nimport { ArrowDownwardRounded, ArrowUpwardRounded, SignalCellularNoSimOutlined } from '@material-ui/icons';\r\nimport { swapDynamicFormFields } from '../../../../Core/Service/dynamic-forms-service';\r\n\r\nconst baseColumns = [\r\n { field: 'action', sortable: false, title: ``, width: 90, filterable: false },\r\n { field: 'sequence', sortable: false, title: `Index`, hidden: true },\r\n { field: 'label', sortable: false, title: `Label` },\r\n { field: 'dynamicFormListName', sortable: false, title: `List Name`, hidden: true },\r\n { field: 'ocrDocument', sortable: false, title: `Document Name` },\r\n { field: 'isRequired', sortable: false, title: `Required` },\r\n { field: 'showView', sortable: false, title: `Can View` },\r\n { field: 'showUpload', sortable: false, title: `Can Upload` },\r\n { field: 'showEmail', sortable: false, title: `Can Email` }\r\n];\r\n\r\nconst crumbs = (path) => [\r\n { name: 'Home', path: '' },\r\n { name: 'Dynamic Forms', path: '/DynamicFormsList' },\r\n { name: 'Dynamic Forms Field', active: true }\r\n];\r\n\r\nconst DynamicFormFields = (props) => {\r\n const [state, setState] = useState({\r\n showModal: false,\r\n smallSequence: null,\r\n bigSequence: null,\r\n });\r\n\r\n const handleClose = (res) => {\r\n let newSt = {};\r\n newSt.showModal = false;\r\n newSt.deleteModal = false;\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setState((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n const handleEdit = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showModal: true,\r\n dynamicFormFieldId: val?.id\r\n }));\r\n };\r\n\r\n const handleData = (res) => {\r\n const data = res.data.list.sort((a, b) => { return a.sequence - b.sequence; })\r\n\r\n setState((st) => ({\r\n ...st,\r\n smallSequence: data.reduce((acc, loc) => acc.sequence < loc.sequence ? acc : loc).sequence,\r\n bigSequence: data.reduce((acc, loc) => acc.sequence > loc.sequence ? acc : loc).sequence,\r\n data: data,\r\n }));\r\n\r\n if(!state.data || state.data == null) {\r\n setState((st) => ({\r\n ...st,\r\n isReload: new Date()\r\n }));\r\n }\r\n\r\n return {\r\n records: data,\r\n total: res.data.total\r\n }\r\n }\r\n\r\n const handleMoveClick = async (record, move) => {\r\n let switchRecord;\r\n let index = state?.data?.map(function (e) { return e.id; }).indexOf(record.id);\r\n\r\n if (move == \"up\") {\r\n switchRecord = state.data[index - 1]\r\n }\r\n\r\n if (move == \"down\") {\r\n switchRecord = state.data[index + 1]\r\n }\r\n\r\n const formID = PramDynamicFormID\r\n const rec1 = record.id\r\n const rec2 = switchRecord.id;\r\n\r\n const res = await swapDynamicFormFields(formID, rec1, rec2).then(() => {\r\n setState((st) => ({\r\n ...st,\r\n data: null,\r\n isReload: new Date()\r\n }));\r\n });\r\n }\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n <>\r\n \r\n \r\n {record.sequence != state.smallSequence && (\r\n \r\n handleMoveClick(record, \"up\")}>\r\n \r\n \r\n \r\n )}\r\n {record.sequence != state.bigSequence && (\r\n \r\n handleMoveClick(record, \"down\")}>\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n handleEdit(record)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n return col;\r\n }, [state.isReload]);\r\n\r\n let PramDynamicFormID = props.match.params.DynamicFormID || '';\r\n const url = `DynamicFormFields?DynamicFormID=${PramDynamicFormID}`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n + Add Dynamic Form Field\r\n \r\n \r\n \r\n handleData(res)}\r\n columns={column}\r\n getUrl={url}\r\n isReload={state.isReload}\r\n isShowTotal={false}\r\n />\r\n {state.showModal ? (\r\n \r\n setState((st) => ({\r\n ...st,\r\n showModal: false\r\n }))\r\n }\r\n fullWidth\r\n overflow=\"auto\"\r\n >\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nexport default DynamicFormFields;\r\n","import { get, post } from './http-calls';\r\nimport moment from 'moment';\r\n\r\nexport const nicoleDownloadFileWithExt = async (res, fileExt, fileName) => {\r\n if (res) {\r\n const url = window.URL.createObjectURL(new Blob([res.data]));\r\n const link = document.getElementById('tempDownloadPDFLink') || document.createElement('a');\r\n link.id = 'tempDownloadPDFLink';\r\n link.href = url;\r\n link.setAttribute('download', `${fileName}${moment().format('DD-MMM-YYYY HH:mm')}.${fileExt}`);\r\n document.body.appendChild(link);\r\n link.click();\r\n link.remove();\r\n return true;\r\n }\r\n};\r\n\r\nexport let getReportingNotes = async (smn) => {\r\n let data = await get(`AgedMeasures/GetReportingAccountQuery?ReportingAccountQuerySystemMatchNumber=${smn}`, { useAuthToken: true });\r\n return data;\r\n};\r\nexport let getHoverReportingNotes = async (smn) => {\r\n let data = await get(`AgedMeasures/GetReportingAccountQueryNotes?smn=10846442`, { useAuthToken: true });\r\n return data;\r\n};\r\n\r\nexport let getReportingWIPLogs = async (headerRecordID) => {\r\n let data = await get(`agedMeasures/GetReportingWIPLogs?headerRecordID=${headerRecordID}`, { useAuthToken: true });\r\n return data;\r\n};\r\nexport let addReportingWIPLogs = async (data) => {\r\n let res = await post(`AgedMeasures/SaveReportingWIPLog`, data, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const addReportingNotes = async (data) => {\r\n let res = await post(`AgedMeasures/SaveReportingAccountQuery`, data, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport let getWeeklyFlashReport = async () => {\r\n let data = await get(`Docs/WeeklyFlashReport`, { useAuthToken: true });\r\n return data;\r\n};\r\n\r\nexport let getMotHistory = async (regNo, FranchiseCode) => {\r\n let data = await get(`services/CheckMotHistory?regNo=${regNo.replace(/\\s/g, '')}&FranchiseCode=${FranchiseCode}`, { useAuthToken: true });\r\n return data;\r\n};\r\n\r\nexport let getAgedMeasuresViewDocument = async (InvoiceFileName) => {\r\n let data = await get(`AgedMeasures/ViewDocument?InvoiceFileName=${InvoiceFileName}`, { useAuthToken: true, responseType: 'blob' });\r\n return data;\r\n};\r\n\r\nexport let getReportingBudgetScreenDropDown = async (smn) => {\r\n let data = await get(`ReportingBudget/ScreenDropDown`, {\r\n useAuthToken: true\r\n });\r\n return data;\r\n};\r\n\r\nexport let getReportingBudget = async (Type, Year) => {\r\n let data = await get(`ReportingBudget?Type=${Type}&Year=${Year}`, {\r\n useAuthToken: true\r\n });\r\n return data;\r\n};\r\n\r\nexport const addReportingBudget = async (dataList) => {\r\n let prom = [];\r\n dataList.forEach((o) => {\r\n prom.push(post(`ReportingBudget`, o, { useAuthToken: true }));\r\n });\r\n\r\n return Promise.all(prom)\r\n .then((ress) => {\r\n return {\r\n success: true,\r\n message: 'Budget Save Successfully.'\r\n };\r\n })\r\n .catch((ex) => {\r\n console.error(ex);\r\n return {\r\n success: false,\r\n message: 'Failed To Save Budget. Please try again.'\r\n };\r\n });\r\n\r\n // let res = await post(`ReportingBudget`, data, { useAuthToken: true });\r\n // return res;\r\n};\r\n\r\nexport const getUsedStockValuation = async (data) => {\r\n let res = await get(`ProfitLoss/GetUsedStockValuationDashBoardData?Type=${data}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postUsedVehicleStockGetExcelFile = async (data, fileName) => {\r\n let res = await post(`ProfitLoss/UsedVehicleStock/GetExcelFile`, data, {\r\n responseType: 'blob',\r\n returnOrgRes: true,\r\n useAuthToken: true\r\n });\r\n nicoleDownloadFileWithExt(res, 'xlsx', fileName);\r\n};\r\n\r\nexport const getVehicleProfileListDropDown = async (data) => {\r\n let res = await get(`AgedMeasures/ReportingGetProgressCodes`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const postUsedVehicleStockValuation = async (data) => {\r\n let res = await post(`ProfitLoss/GetUsedVehicleStockDashBoardData`, data, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const getAgedStockValuation = async (data) => {\r\n let res = await get(`ProfitLoss/GetAgedStockValuationDashBoardData`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const postOveragePriorityList = async (data) => {\r\n let res = await post(`ProfitLoss/GetOveragePriorityListDashBoardData`, data, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const postOveragePriorityGetExcelFile = async (data, fileName) => {\r\n let res = await post(`ProfitLoss/OveragePriority/GetExcelFile`, data, {\r\n responseType: 'blob',\r\n returnOrgRes: true,\r\n useAuthToken: true\r\n });\r\n nicoleDownloadFileWithExt(res, 'xlsx', fileName);\r\n};\r\n\r\nexport const getReprtingDashboard = async () => {\r\n let res = await get(`ReportingBudget/ReportingInternalDashboard`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const getReprtingAfterSaleDashboard = async () => {\r\n let res = await get(`ReportingBudget/ReportingInternalAfterSalesDashboard`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n\r\nexport const getReportingInternalHighLevelDashboard = async () => {\r\n let res = await get(`ReportingBudget/ReportingInternalHighLevelDashboard`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n};\r\n","import { CircularProgress, Grid, Typography } from '@material-ui/core';\r\nimport React, { useEffect } from 'react';\r\nimport { useState } from 'react';\r\nimport formatters from '../../../../Core/Grid/inputFormatter';\r\nimport { getReportingInternalHighLevelDashboard } from '../../../../Core/Service/ReportScreens-service';\r\nimport './miniStyle.scss';\r\nimport { useHistory } from 'react-router-dom';\r\nconst MiniViewReportingDashboard = (props) => {\r\n const [state, setState] = useState({ data: {}, parts: [], isLoader: true });\r\n const history = useHistory();\r\n const handleRedirect = () => {\r\n let link = '/RepotingTab';\r\n history.push({\r\n pathname: link\r\n });\r\n };\r\n\r\n useEffect(async () => {\r\n let res = await getReportingInternalHighLevelDashboard();\r\n setState((st) => ({\r\n ...st,\r\n data: res.data.data[0],\r\n parts: res.data.parts,\r\n isLoader: false\r\n }));\r\n }, []);\r\n\r\n return (\r\n \r\n {state.isLoader ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n handleRedirect()}>\r\n \r\n \r\n Sold(Hours/Value)\r\n \r\n \r\n\r\n \r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(state.data?.soldHours)}\r\n {' '}\r\n /{' '}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(state.data?.soldAmount)}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n handleRedirect()}>\r\n \r\n \r\n WIP(Hours/Value @RR)\r\n \r\n \r\n\r\n \r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(state.data?.wipHours)}\r\n {' '}\r\n /{' '}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(state.data?.wipAmount)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n handleRedirect()}>\r\n \r\n \r\n No. of Technicians\r\n \r\n \r\n\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(state.data?.technicianBudget)}{' '}\r\n /{' '}\r\n state.data?.technicianWorking ? 'red' : 'green' }}>\r\n {formatters.ThousandSeparatorWithoutZero(state.data?.technicianWorking)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* //// */}\r\n \r\n \r\n \r\n handleRedirect()}>\r\n \r\n \r\n Customer throughput MTD\r\n \r\n \r\n\r\n \r\n handleRedirect()}>\r\n {formatters.ThousandSeparatorWithoutZero(state.data?.uniqueCustomers)}\r\n \r\n \r\n \r\n \r\n\r\n \r\n handleRedirect()}\r\n >\r\n \r\n \r\n {/* Parts */}\r\n \r\n \r\n\r\n \r\n \r\n Warranty(Hours/Value)\r\n \r\n\r\n GoToDailyInvoicedHours({ startDateType: 'mtd' })}\r\n >\r\n \r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(state.data?.warrantyHours)}\r\n {' '}\r\n /{' '}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(state.data?.warrantyAmount)}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n R&M(Hours/Value)\r\n \r\n\r\n \r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(state.data?.rmHours)} /{' '}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(state.data?.rmAmount)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* /// */}\r\n \r\n \r\n \r\n handleRedirect()}>\r\n \r\n \r\n Surcharges(Quantity/Value)\r\n \r\n \r\n\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(state.data?.surchargeQuantity)}{' '}\r\n /{' '}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(state.data?.surchargeAmount)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n handleRedirect()}>\r\n \r\n \r\n Parts\r\n \r\n \r\n \r\n {state.parts.map((item) => {\r\n return (\r\n \r\n \r\n {item.partsDepartment}\r\n \r\n\r\n \r\n item.partsAmount ? 'red' : 'green' }}>\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(item.partsAmount)}\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default MiniViewReportingDashboard;\r\n","import {get, post} from './http-calls';\r\nimport {memoize} from 'lodash'\r\n\r\n\r\nexport const getauditorDashboard = memoize(async () => {\r\n let res = await get('AuditorJobs/Dashboard', { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getAuditorList = memoize(async()=>{\r\n let res = await get('Auditor/Search', { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const assignAuditorsToJob = async(jobId, isUpdate, auditors)=>{\r\n let res = await post('Auditor/AssignJobs',{\r\n jobId,\r\n isUpdate,\r\n auditors\r\n }, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getAuditorsByJob = async jobId=>{\r\n let res = await get(`Auditor/GetByJob/${jobId}`, { useAuthToken: true });\r\n return res;\r\n};","import React, { useEffect, useContext, useState } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { Link } from 'react-router-dom';\r\nimport { getauditorDashboard } from '../../../Core/Service/Auditor-services';\r\nimport './dashboard.scss';\r\nimport Card from '@material-ui/core/Card';\r\nimport CardContent from '@material-ui/core/CardContent';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Container from '@material-ui/core/Container';\r\nimport { makeStyles } from '@material-ui/styles';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%',\r\n margin: 3,\r\n border: '2px solid #f5f5f5 ',\r\n Opacity: 0.9,\r\n minWidth: 120,\r\n padding: '5px 0px',\r\n background: '#f5f5f5',\r\n borderRadius: 10\r\n },\r\n lable: {\r\n fontFamily: `\"Public Sans\", sans-serif`,\r\n textDecoration: 'none',\r\n color: 'black'\r\n }\r\n}));\r\nconst AuditorDashboard = (props) => {\r\n const [state, setState] = useState({\r\n rows_new: []\r\n });\r\n const { showToast } = useContext(AppContext);\r\n const classes = useStyles();\r\n\r\n useEffect(async () => {\r\n let res = await getauditorDashboard();\r\n if (res.success) {\r\n setState((st) => ({ ...st, rows_new: res.data }));\r\n }\r\n if (!res.success) {\r\n showToast(res.message);\r\n }\r\n }, []);\r\n const cards = [\r\n {\r\n id: 1,\r\n name: 'Current Month',\r\n color: '#3498db',\r\n count: state.rows_new.currentMonth\r\n },\r\n {\r\n id: 2,\r\n name: 'Current Year',\r\n color: '#2ecc71',\r\n count: state.rows_new.currentYear\r\n },\r\n {\r\n id: 3,\r\n name: 'Last Year',\r\n color: '#dc3545',\r\n count: state.rows_new.preYear\r\n },\r\n {\r\n id: 4,\r\n name: 'Total',\r\n color: '#868e96',\r\n count: state.rows_new.total\r\n }\r\n ];\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n Available Jobs\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n {cards.map((option) => (\r\n \r\n \r\n \r\n
\r\n {option.name} \r\n
{option.count}
\r\n
\r\n \r\n
\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\nexport default AuditorDashboard;\r\n","import React, { useEffect } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { Link } from 'react-router-dom';\r\nimport { grid } from 'gijgo';\r\nimport { AppStorage } from './../../../Core/Service/storage-service';\r\nimport '../Dashboard/dashboard.scss';\r\nimport { IconButton } from '@material-ui/core';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport { ExpBaseURL } from './../../../Core/Service/http-calls';\r\nimport moment from 'moment';\r\n\r\nconst AuditorJobDetails = (props) => {\r\n const token = AppStorage.getToken();\r\n useEffect(async () => {\r\n if (token) {\r\n pullJobDetailsAndUpdateState();\r\n } else {\r\n window.location = '/';\r\n AppStorage.performLogout();\r\n }\r\n }, [token]);\r\n const pullJobDetailsAndUpdateState = async () => {\r\n const onSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.rows,\r\n total: response.data.total\r\n };\r\n grid1.render(obj);\r\n };\r\n const handleBtnClcik = (val) => {\r\n props.history.push(`/Job/${val}/7`);\r\n };\r\n const editButton = (vl) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n
{handleBtnClcik(vl)} } className=\"px-10\">\r\n \r\n \r\n \r\n
\r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const GridID = props.match.params.id;\r\n const SelectedPireod = props.match.params.name;\r\n\r\n var grid1 = window.$('#grid').grid({\r\n primaryKey: 'Id',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/AuditorJobs?ShowRecord=${GridID}`,\r\n headers: { Authorization: `Bearer ${token}` },\r\n success: onSuccessFunc\r\n },\r\n headerFilter: true,\r\n columns: [\r\n {\r\n title: 'Action',\r\n field: 'id',\r\n renderer: editButton,\r\n width: 20,\r\n filterable: false\r\n },\r\n {\r\n title: 'WIP Number',\r\n field: 'wipNo',\r\n width: 100,\r\n sortable: true\r\n },\r\n {\r\n title: 'Vehicle Reg',\r\n field: 'registration',\r\n width: 100,\r\n sortable: true\r\n },\r\n {\r\n field: 'dateDueIn',\r\n sortable: true,\r\n title: 'Due Date In',\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n {\r\n title: 'Model',\r\n field: 'makeModel',\r\n width: 100,\r\n sortable: true\r\n },\r\n {\r\n title: 'Branch',\r\n field: 'branchShortName',\r\n width: 100,\r\n sortable: true\r\n }\r\n ].map((c) => {\r\n if (c.title !== 'Action') {\r\n c.events = {\r\n click: function (e) {\r\n props.history.push(`/Job/${e.data.record.headerRecordID}/7`);\r\n }\r\n };\r\n }\r\n return {\r\n ...c,\r\n headerCssClass: 'gridHeader'\r\n };\r\n }),\r\n pager: { limit: 10 }\r\n });\r\n };\r\n return (\r\n
\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n {props.match.params.name}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\nexport default AuditorJobDetails;\r\n","import { useEffect, useState } from 'react';\r\nimport { DefaultButton, PrimaryButton, SecondaryButton } from '../FormInput';\r\nimport { useHistory } from 'react-router-dom';\r\nimport './BasicButtonGroup.scss';\r\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\r\nimport ChevronLeftIcon from '@material-ui/icons/ChevronLeft';\r\nimport { useWindowSize } from '../Controls/ScreenResolution';\r\n\r\nexport const SpaceType = {\r\n start: 'start',\r\n spaceAround: 'space-around',\r\n spaceBetween: 'space-between'\r\n};\r\n\r\nfunction scrollbarVisible(element) {\r\n return element?.scrollWidth > element?.clientWidth;\r\n}\r\n\r\nconst scrollNext = (id) => {\r\n document.getElementById('WorkFlow-Btn').scrollBy({ left: 100, top: 0, behavior: 'smooth' });\r\n};\r\n\r\nconst scrollPrev = (id) => {\r\n document.getElementById('WorkFlow-Btn').scrollBy({ left: -100, top: 0, behavior: 'smooth' });\r\n};\r\n\r\nconst BasicButtonGroup = ({\r\n className = '',\r\n buttons = [],\r\n btnSelectedId,\r\n selectedId = 0,\r\n triggerButtonClickOnLoad = true,\r\n onClick,\r\n spaceType = SpaceType.start,\r\n margin = 0,\r\n color = 'secondary',\r\n allGrid\r\n}) => {\r\n let WorkFlowBtnElementscrollWidth = document.getElementById('WorkFlow-Btn');\r\n\r\n const [state, setState] = useState({\r\n selectedId,\r\n buttons: [],\r\n basicStyle: { minHeight: 30, display: 'flex', justifyContent: spaceType, margin, overflow: 'auto' }\r\n });\r\n\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n useEffect(() => {\r\n if (triggerButtonClickOnLoad && onClick) {\r\n if (btnSelectedId !== 'All' && btnSelectedId) {\r\n const hasSelected = buttons.filter((b) => b.id === +btnSelectedId).length === 1;\r\n hasSelected ? buttonClicked(buttons.filter((b) => b.id === +btnSelectedId)[0]) : buttons.length > 0 && buttonClicked(buttons[0]);\r\n }\r\n if (!allGrid) {\r\n const hasSelected = buttons.filter((b) => b.id === state.selectedId).length === 1;\r\n hasSelected ? buttonClicked(buttons.filter((b) => b.id === state.selectedId)[0]) : buttons.length > 0 && buttonClicked(buttons[0]);\r\n }\r\n } else {\r\n const hasSelected = buttons.filter((b) => b.id === selectedId).length === 1;\r\n hasSelected ? buttonClicked(buttons.filter((b) => b.id === selectedId)[0]) : buttons.length > 0 && buttonClicked(buttons[0]);\r\n }\r\n setState((st) => ({\r\n ...st,\r\n buttons\r\n }));\r\n }, [selectedId, buttons]);\r\n\r\n useEffect(() => {\r\n setState((st) => ({\r\n ...st,\r\n isShowScrollArrow: scrollbarVisible(WorkFlowBtnElementscrollWidth)\r\n }));\r\n }, [WindowWidths, WorkFlowBtnElementscrollWidth?.scrollWidth]);\r\n\r\n const buttonClicked = (btn) => {\r\n setState((st) => ({ ...st, selectedId: btn.id }));\r\n onClick && onClick(btn);\r\n };\r\n\r\n let history = useHistory();\r\n let mainWorkflowButtonId = history.location.pathname.split('/')[3];\r\n\r\n const wfbuttonClicked = (btn) => {\r\n setState((st) => ({ ...st, selectedId: btn.id, showHighlightedButton: true }));\r\n onClick && onClick(btn);\r\n }\r\n\r\n useEffect(() => {\r\n setState((st) => ({ ...st, showHighlightedButton: !(mainWorkflowButtonId == 7) }));\r\n }, [history])\r\n\r\n return (\r\n
\r\n {state.isShowScrollArrow && (\r\n scrollPrev()} className=\"ScrollArrow-Container\">\r\n \r\n \r\n )}\r\n
\r\n {state.buttons.map((btn) => {\r\n if (btn.id == mainWorkflowButtonId) {\r\n return (\r\n buttonClicked(btn)}>\r\n {btn.label}\r\n \r\n );\r\n }\r\n if (btn.id === state.selectedId && state.showHighlightedButton) {\r\n if (color === 'secondary') {\r\n return (\r\n wfbuttonClicked(btn)}>\r\n {btn.label}\r\n \r\n );\r\n }\r\n return (\r\n wfbuttonClicked(btn)}>\r\n {btn.label}\r\n \r\n );\r\n } else {\r\n return (\r\n wfbuttonClicked(btn)}>\r\n {btn.label}\r\n \r\n );\r\n }\r\n })}\r\n
\r\n {state.isShowScrollArrow && (\r\n scrollNext()} className=\"ScrollArrow-Container\">\r\n \r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default BasicButtonGroup;\r\n","import React, { useEffect, useMemo, useState } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\n// import { ExpBaseURL } from '../../Basic/HttpService';\r\n// import { AppStorage } from '../../Basic/storage-service';\r\nimport './gijgoIndex.scss';\r\n// import FileUploaderButton from '../GenericFileUploader'; //'../GenericFileUploader';\r\n// import { isValidConfig } from '../GenericFileUploader/FileUploaderConfig';\r\nimport ReactDOM from 'react-dom';\r\n// import { useLoginInfo } from '../../Hooks/useLoginInfo';\r\n// import { useToast } from '../../Hooks/useToast';\r\n// import { AddButton, EditButton, DataGrid, BreadCrumbs, formatters } from '../';\r\n// import { CustomChip, ChipWithoutLable } from '../Inputs/DatePicker';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport { makeStyles } from '@material-ui/core';\r\nimport moment from 'moment';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport { AppStorage } from '../../Service/storage-service';\r\nimport { ExpBaseURL } from '../../../Core/Service/http-calls';\r\n\r\nvar grid1;\r\nvar $ = window.$;\r\n\r\nconst CommonGijgoGrid = (props) => {\r\n let isAction = props.columns.find((c) => c?.key === 'action');\r\n\r\n const useStyles = makeStyles((theme) => ({\r\n gijgoGrid: {\r\n '& .gj-grid-md th:first-of-type': {\r\n // backgroundColor: 'red',\r\n padding: (props) => {\r\n return props.isAction ? '12px 5px 12px 5px' : '12px 15px 12px 10px';\r\n }\r\n }\r\n }\r\n }));\r\n\r\n const classes = useStyles({ isAction: isAction });\r\n let token = AppStorage.getToken();\r\n const [state, setState] = useState({\r\n recordId: props.recordId,\r\n fileCount: `${props.fileCount || 0}`,\r\n configName: props.fileUploaderConfigName,\r\n columns: []\r\n });\r\n const [gridReload, setGridReload] = useState(new Date());\r\n\r\n const gridFileCountRefresh = () => {\r\n setGridReload((st) => ({ ...st, gridReload: new Date() }));\r\n };\r\n\r\n useEffect(() => {\r\n let finalColumns = [...props.columns].map((c) => ({ ...c, headerCssClass: 'gridHeader' }));\r\n setState((st) => ({ ...st, columns: finalColumns }));\r\n }, [props.columns, gridReload]);\r\n\r\n useEffect(async () => {\r\n if (state.columns.length > 0) {\r\n pullArchivedJobsAndUpdateState();\r\n }\r\n }, [state.columns, props.isReload, props.getUrl]);\r\n\r\n const pullArchivedJobsAndUpdateState = async () => {\r\n window.$(`#${'key1'}`).grid('destroy', true, true);\r\n\r\n const onSuccessFunc = function (response) {\r\n grid1.render(props.dataConverter(response));\r\n };\r\n\r\n grid1 = window.$(`#${'key1'}`).grid({\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/${props.getUrl}`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: onSuccessFunc\r\n },\r\n ...(props.minWidth !== null && { minWidth: 1200 }),\r\n // fixedHeader: true,\r\n headerFilter: {\r\n type: 'onchange'\r\n },\r\n\r\n columns: [...state.columns],\r\n pager: {\r\n limit: 20\r\n }\r\n });\r\n\r\n // grid1.on('dataBound', function (e, records, totalRecords) {\r\n // const gridActionSpn = document.createElement('span');\r\n\r\n // ReactDOM.render(gridActionGrid, gridActionSpn);\r\n // var gridActionSpnRef = gridActionSpn;\r\n\r\n // GijgoActionBtn(grid1, 'action', gridActionSpnRef);\r\n // });\r\n\r\n grid1.on('rowDataBound', function (e, $row, id, record) {\r\n if (props.setRowStyleOnCondition) {\r\n let resColor = props.setRowStyleFunction(record);\r\n if (resColor) {\r\n for (var key in resColor) {\r\n $row.css(`${key}`, `${resColor[key]}`);\r\n }\r\n }\r\n }\r\n });\r\n\r\n grid1.on('cellDataBound', function (e, $displayEl, id, column, record) {\r\n if (props.setColStyleOnCondition) {\r\n let resColor = props.setColStyleFunction(record);\r\n if (resColor) {\r\n for (var key in resColor) {\r\n $displayEl.css(`${key}`, `${resColor[key]}`);\r\n }\r\n }\r\n }\r\n });\r\n\r\n grid1.reload();\r\n };\r\n\r\n const downloadCSVWrapper = () => {\r\n if (typeof props.downloadBtnName === 'function') {\r\n props.downloadBtnName();\r\n } else {\r\n grid1?.downloadCSV(`${props.downloadBtnName}-${moment().format('DD-MMM-YYYY HH:mm')}.csv`);\r\n }\r\n };\r\n return (\r\n \r\n \r\n {props.downloadBtnName && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport default CommonGijgoGrid;\r\n","import React, { useState } from 'react';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport { Checkbox } from '@material-ui/core';\r\nimport moment from 'moment';\r\nimport { PrimaryButton, SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { searchJobByText } from '../../../../Core/Service/workflowJobDocument-service';\r\n\r\nconst MatchingJobRow = ({ job, onJobSelect }) => {\r\n return \r\n \r\n onJobSelect(e.target.checked, job.headerId)}\r\n />\r\n \r\n {job.wipNumber}\r\n {job.registration}\r\n {job.customerName}\r\n {job.dateDueIn ? moment(job.dateDueIn).format(\"LLL\") : ' - '}\r\n \r\n}\r\n\r\nconst MatchingJobsTable = ({ jobs, loading, onJobSelect }) => {\r\n return <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
WIPReg.CustomerDue In
\r\n
\r\n \r\n \r\n {jobs.map((j, i) => )}\r\n {jobs.length === 0 && }\r\n \r\n
{loading ? 'Loading...' : 'No record found.'}
\r\n
\r\n \r\n}\r\n\r\nlet timer;\r\n\r\nconst OtherJobSelectionToMoveDoc = props => {\r\n const [state, setState] = useState({\r\n headerId: props.headerId,\r\n loading: false,\r\n selectedHeaderId: undefined,\r\n searchText:'',\r\n matchedJob: []\r\n });\r\n\r\n const setSearchText = e=> {\r\n const searchText = e.target.value;\r\n timer && clearTimeout(timer);\r\n setState(st=>({...st, searchText, selectedHeaderId: undefined}));\r\n timer = setTimeout(()=>{\r\n if(searchText.length > 2){\r\n setState(st=>({...st, loading: true}));\r\n searchJobByText(state.headerId, searchText)\r\n .then(res=>{\r\n if(res.success){\r\n setState(st=>({...st, matchedJob: res.data.map(j=>({...j, isSelected: false}))}));\r\n }else{\r\n props.showToast(res.message);\r\n }\r\n })\r\n .finally(()=>{\r\n setState(st=>({...st, loading: false}));\r\n })\r\n }\r\n }, 500);\r\n }\r\n \r\n const onJobSelect = (checked, jobHeaderId) => {\r\n setState(st => {\r\n let newSt = { ...st };\r\n let job = newSt.matchedJob.find(d => d.headerId === jobHeaderId);\r\n if (job) {\r\n newSt.matchedJob.forEach(d => d.isSelected = false);\r\n job.isSelected = checked; \r\n newSt.selectedHeaderId = checked ? jobHeaderId : undefined; \r\n newSt.matchedJob = [...newSt.matchedJob]\r\n }\r\n return newSt;\r\n }); \r\n }\r\n\r\n const handleClose = () => {\r\n props.onClose && props.onClose();\r\n };\r\n\r\n const processDocMovement = ()=> {\r\n props.onProcess && props.onProcess(state.selectedHeaderId);\r\n }\r\n\r\n return \r\n Search Job\r\n
\r\n ×\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n Cancel\r\n Move Document\r\n \r\n
\r\n}\r\n\r\nexport default OtherJobSelectionToMoveDoc;","export const initState = {};\r\n\r\nexport let reducer = function (state, action) {\r\n switch (action.type) {\r\n case 'HandleInput':\r\n let { name, value } = action.payload;\r\n return { ...state, [name]: value };\r\n\r\n default:\r\n return { state };\r\n }\r\n};\r\n","import React, { useReducer } from 'react';\r\nimport { Grid, Typography, InputLabel, RadioGroup, FormControlLabel, Radio, Checkbox, FormHelperText } from '@material-ui/core';\r\nimport { reducer, initState } from '../../../Reducer/action';\r\nimport { SecondaryButton, TextBox, YesNoButton } from '../../../../Core/FormInput/index';\r\nimport { useState, useCallback } from 'react';\r\nimport CommonGijgoGrid from '../../../../Core/Controls/GijgoGrid/index';\r\nimport { moment } from 'moment';\r\nimport SelectBox from '../../../../Core/FormInput/SelectBox';\r\nimport DataGridComp from '../../../../Core/Grid';\r\nimport { GridOverlay } from '@material-ui/data-grid';\r\nimport { Email } from '@material-ui/icons';\r\nimport { postCommunicatorAddActionLog } from '../../../../Core/Service/communicator-service';\r\nimport { useContext } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\n\r\nconst AddEditActionLog = (props) => {\r\n const [state, setState] = useState({\r\n logVisibleToCustomer: false,\r\n logHighPriority: false,\r\n isCustomerUpdate: false,\r\n isUpdateSms: false,\r\n errors: {}\r\n });\r\n\r\n const { showToast, showModal } = useContext(AppContext);\r\n const handleInput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const handleCheck = (e) => {\r\n const { name, checked } = e.target;\r\n setState((st) => ({ ...st, [name]: checked }));\r\n };\r\n\r\n const Newvalidation = () => {\r\n console.log(props, 'props');\r\n let { logText, logActionTime } = state;\r\n let errors = {};\r\n let newlogTextmessage = '';\r\n let logActionTimeMessage = '';\r\n let isValid = true;\r\n if (!logText) {\r\n isValid = false;\r\n newlogTextmessage = 'Log Message is required';\r\n }\r\n if (!logActionTime) {\r\n isValid = false;\r\n logActionTimeMessage = 'Reminder Action Date & Time is required';\r\n }\r\n if (state.isUpdateSms && !state.isPhoneNo) {\r\n isValid = false;\r\n errors.isPhoneNo = 'SMS is required';\r\n }\r\n if (state.isCustomerUpdate && !state.isUpdateCustomerEmail) {\r\n isValid = false;\r\n errors.isUpdateCustomerEmail = 'Email is required';\r\n }\r\n if (state.logHighPriority && !state.isHighPriorityEmail) {\r\n isValid = false;\r\n errors.isHighPriorityEmail = 'Email is required';\r\n }\r\n setState((st) => ({ ...st, newlogTextmessage: newlogTextmessage, logActionTimeMessage: logActionTimeMessage, errors: errors }));\r\n return isValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (Newvalidation()) {\r\n let data = {\r\n logID: null,\r\n logHeaderRecordID: props.headerRecordID,\r\n logText: state.logText,\r\n logActionTime: state.logActionTime,\r\n logResultText: state.logResultText,\r\n logVisibleToCustomer: state.logVisibleToCustomer,\r\n logHighPriority: state.logHighPriority,\r\n isPhoneNo: state.isPhoneNo || '',\r\n isUpdateCustomerEmail: state.isUpdateCustomerEmail || '',\r\n isHighPriorityEmail: state.isHighPriorityEmail || ''\r\n };\r\n\r\n let res = await postCommunicatorAddActionLog(data);\r\n if (res.success) {\r\n showToast(`Action Log Added Successfully`);\r\n props.onClose(true);\r\n } else {\r\n showToast(`Action Log Failed To Add`);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n WIP No:  {props.wip}    Reg. No:  {props.reg}\r\n {/* \r\n Key No:  63216{' '}\r\n */}\r\n \r\n \r\n \r\n \r\n Log Message (\r\n {' '}\r\n Visible to customer?)\r\n \r\n \r\n {state.newlogTextmessage}\r\n \r\n \r\n \r\n Reminder Action Date & Time\r\n \r\n \r\n {state.logActionTimeMessage}\r\n \r\n\r\n \r\n \r\n \r\n High Priority\r\n \r\n \r\n {state.errors.isHighPriorityEmail}\r\n \r\n\r\n \r\n \r\n \r\n Customer Email\r\n \r\n \r\n {state.errors.isUpdateCustomerEmail}\r\n \r\n \r\n \r\n \r\n Phone Number\r\n \r\n \r\n {state.errors.isPhoneNo}\r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default AddEditActionLog;\r\n","import React, { useReducer } from 'react';\r\nimport { Grid, Typography, InputLabel, RadioGroup, FormControlLabel, Radio, Checkbox, DialogTitle, Chip, Avatar, FormHelperText } from '@material-ui/core';\r\nimport { reducer, initState } from '../../../Reducer/action';\r\nimport { SecondaryButton, TextBox, YesNoButton } from '../../../../Core/FormInput/index';\r\nimport { useState, useCallback } from 'react';\r\nimport CommonGijgoGrid from '../../../../Core/Controls/GijgoGrid/index';\r\nimport DialogComp from '../../../../Core/Controls/Dialog/DialogComp';\r\nimport AssignmentIcon from '@material-ui/icons/Assignment';\r\nimport LogHistory from './logHistory';\r\nimport { postCommunicatorAddActionLog, getActionLogByID } from '../../../../Core/Service/communicator-service';\r\nimport { useEffect } from 'react';\r\nimport moment from 'moment';\r\nimport { useContext } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\n\r\nconst EditActionLog = (props) => {\r\n const { showToast, showModal } = useContext(AppContext);\r\n const [show, setShow] = useState({\r\n history: false\r\n });\r\n\r\n const [state, setState] = useState({\r\n logVisibleToCustomer: false,\r\n logHighPriority: false,\r\n isCustomerUpdate: false,\r\n isUpdateSms: false,\r\n newisCustomerUpdate: false,\r\n newisUpdateSms: false,\r\n errors: {},\r\n resultDateAndTime: moment().format('YYYY-MM-DD HH:MM')\r\n });\r\n\r\n const handleCheck = (e) => {\r\n const { name, checked } = e.target;\r\n setState((st) => ({ ...st, [name]: checked }));\r\n if (state.logHighPriority) {\r\n setState((st) => ({ ...st, newisHighPriorityEmail: state.highPriorityEmail }));\r\n }\r\n };\r\n\r\n useEffect(async () => {\r\n let res = await getActionLogByID(props.id);\r\n let data = res.data.list[0];\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n logActionTime: data.logActionTime,\r\n logActioned: data.logActioned,\r\n logCreatedUserID: data.logCreatedUserID,\r\n logDateCreated: data.logDateCreated,\r\n logHeaderRecordID: data.logHeaderRecordID,\r\n logHighPriority: data.logHighPriority,\r\n logID: data.logID,\r\n logText: data.logText,\r\n logVisibleToCustomer: data.logVisibleToCustomer,\r\n highPriorityEmail: data.highPriorityEmail,\r\n newisHighPriorityEmail: data.logHighPriority ? data.highPriorityEmail : ''\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleHistory = () => {\r\n setShow((st) => ({\r\n ...st,\r\n history: true\r\n }));\r\n };\r\n\r\n const handleInput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const validation = () => {\r\n let { logResultText } = state;\r\n let message = '';\r\n let isValid = true;\r\n let errors = {};\r\n if (!logResultText) {\r\n isValid = false;\r\n message = 'Log Result is required';\r\n }\r\n if (state.isUpdateSms && !state.isPhoneNo) {\r\n isValid = false;\r\n errors.isPhoneNo = 'SMS is required';\r\n }\r\n if (state.isCustomerUpdate && !state.isUpdateCustomerEmail) {\r\n isValid = false;\r\n errors.isUpdateCustomerEmail = 'Email is required';\r\n }\r\n setState((st) => ({ ...st, message: message, errors: errors }));\r\n return isValid;\r\n };\r\n\r\n const Newvalidation = () => {\r\n let { newlogText, newlogActionTime } = state;\r\n let logActionTimeMessage = '';\r\n let newlogTextmessage = '';\r\n let errors = {};\r\n let isValid = true;\r\n if (!newlogText) {\r\n isValid = false;\r\n newlogTextmessage = 'Log Message is required';\r\n }\r\n if (!newlogActionTime) {\r\n isValid = false;\r\n logActionTimeMessage = 'Reminder Action Date & Time is required';\r\n }\r\n if (state.newisUpdateSms && !state.newisPhoneNo) {\r\n isValid = false;\r\n errors.newisPhoneNo = 'SMS is required';\r\n }\r\n if (state.newisCustomerUpdate && !state.newisUpdateCustomerEmail) {\r\n isValid = false;\r\n errors.newisUpdateCustomerEmail = 'Email is required';\r\n }\r\n if (state.newlogHighPriority && !state.newisHighPriorityEmail) {\r\n isValid = false;\r\n errors.newisHighPriorityEmail = 'Email is required';\r\n }\r\n setState((st) => ({ ...st, newlogTextmessage: newlogTextmessage, logActionTimeMessage: logActionTimeMessage, errors: errors }));\r\n return isValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validation()) {\r\n let data = {\r\n logID: props.id,\r\n logHeaderRecordID: props.headerRecordID,\r\n logText: state.logText,\r\n logActionTime: state.logActionTime,\r\n logResultText: state.logResultText,\r\n logVisibleToCustomer: state.logVisibleToCustomer,\r\n logHighPriority: state.logHighPriority,\r\n isPhoneNo: state.isPhoneNo || '',\r\n isUpdateCustomerEmail: state.isUpdateCustomerEmail || '',\r\n isHighPriorityEmail: state.isHighPriorityEmail || ''\r\n };\r\n\r\n let res = await postCommunicatorAddActionLog(data);\r\n if (res.success) {\r\n showToast(`Action Log Closed Successfully`);\r\n props.onClose(true);\r\n } else {\r\n showToast(`Action Log Failed close`);\r\n }\r\n }\r\n };\r\n\r\n const handleNewSubmit = async () => {\r\n if (Newvalidation()) {\r\n let data = {\r\n logID: null,\r\n logHeaderRecordID: props.headerRecordID,\r\n logText: state.newlogText,\r\n logActionTime: state.newlogActionTime,\r\n logResultText: state.logResultText || '',\r\n logVisibleToCustomer: state.logVisibleToCustomer,\r\n logHighPriority: state.logHighPriority,\r\n isPhoneNo: state.newisPhoneNo || '',\r\n isUpdateCustomerEmail: state.newisUpdateCustomerEmail || '',\r\n isHighPriorityEmail: state.newisHighPriorityEmail || ''\r\n };\r\n\r\n let res = await postCommunicatorAddActionLog(data);\r\n if (res.success) {\r\n handleSubmit();\r\n showToast(`New Action Log Added Successfully`);\r\n props.onClose(true);\r\n } else {\r\n showToast(`Action Log Failed To New Add`);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n Update Action Log\r\n \r\n \r\n \r\n }\r\n label=\"History\"\r\n onClick={handleHistory}\r\n />\r\n \r\n \r\n }\r\n onClose={() => props.onClose(false)}\r\n fullWidth\r\n maxWidth=\"lg\"\r\n >\r\n
\r\n \r\n \r\n WIP No:  {props.wip}    Reg. No:  {props.reg}{' '}\r\n {/* \r\n Key No:  63216{' '}\r\n */}\r\n \r\n \r\n \r\n \r\n {' '}\r\n Action Log Message ( @ {moment(state.logActionTime).format('LLL')} ) \r\n \r\n
\r\n \r\n {state.logText}\r\n \r\n
\r\n \r\n \r\n {' '}\r\n Result\r\n \r\n
\r\n\r\n \r\n {state.message}\r\n
\r\n\r\n \r\n \r\n {' '}\r\n Result Completion Date & Time\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Email Customer\r\n \r\n \r\n {state.errors.isUpdateCustomerEmail}\r\n \r\n \r\n \r\n \r\n Phone Number\r\n \r\n \r\n {state.errors.isPhoneNo}\r\n \r\n\r\n \r\n \r\n Close Action Log\r\n \r\n \r\n
\r\n\r\n \r\n \r\n Next Action Log\r\n \r\n \r\n \r\n Log Message (\r\n \r\n Visible to customer?)\r\n \r\n \r\n {state.newlogTextmessage}\r\n \r\n \r\n \r\n {' '}\r\n Reminder Action Date & Time\r\n \r\n \r\n {state.logActionTimeMessage}\r\n \r\n \r\n \r\n \r\n Phone Number\r\n \r\n \r\n {state.errors.newisPhoneNo}\r\n \r\n\r\n \r\n \r\n \r\n High Priority\r\n \r\n \r\n {state.errors.newisHighPriorityEmail}\r\n \r\n\r\n \r\n \r\n \r\n Email Customer\r\n \r\n \r\n {state.errors.newisUpdateCustomerEmail}\r\n \r\n\r\n \r\n \r\n Close & Create New Action Log\r\n \r\n \r\n \r\n
\r\n
\r\n {show.history ? (\r\n {\r\n setShow((st) => ({\r\n ...st,\r\n history: false\r\n }));\r\n }}\r\n />\r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nexport default EditActionLog;\r\n","import moment from 'moment';\r\nimport { useEffect } from 'react';\r\nimport { getActionLogHistory } from '../../../../Core/Service/communicator-service';\r\nimport { useState } from 'react';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport { Avatar, Chip, DialogTitle } from '@material-ui/core';\r\nimport ListAltIcon from '@material-ui/icons/ListAlt';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport AddEditActionLog from './addEditActionLog';\r\nimport EditActionLog from './editActionLog';\r\nimport { useWindowSize } from '../../../../Core/Controls/ScreenResolution';\r\n\r\nconst LogHistory = (props) => {\r\n const [state, setState] = useState({\r\n messaegList: [],\r\n actionLog: false,\r\n editActionLog: false\r\n });\r\n\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n useEffect(async () => {\r\n let res = await getActionLogHistory(props.headerRecordID);\r\n if (res.success) {\r\n setState((st) => ({ ...st, messaegList: res?.data?.list }));\r\n }\r\n }, []);\r\n\r\n const handleActionLog = () => {\r\n setState((st) => ({\r\n ...st,\r\n actionLog: !st.actionLog\r\n }));\r\n };\r\n\r\n const handleEditActionLog = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n editActionLog: true,\r\n headerRecordID: props.headerRecordID,\r\n id: val.logID\r\n }));\r\n // props.onClose();\r\n };\r\n\r\n const handleClose = () => {\r\n setState((st) => ({\r\n ...st,\r\n editActionLog: false\r\n }));\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n Action Log History\r\n {!props.hideAddActionBtn && (\r\n \r\n \r\n \r\n }\r\n label=\"Add New Log\"\r\n onClick={handleActionLog}\r\n />\r\n )}\r\n \r\n \r\n }\r\n onClose={() => props.onClose(false)}\r\n fullScreen={WindowWidths < 1260 ? true : false}\r\n maxWidth=\"md\"\r\n fullWidth\r\n >\r\n
\r\n
\r\n WIP No:  {props.wip}    Reg. No:  {props.reg}\r\n
\r\n
\r\n {state.messaegList.length > 0 ? (\r\n
\r\n {state.messaegList.map((m) => (\r\n
\r\n
\r\n {m.logText}{' '}\r\n {m.logActioned ? null : (\r\n \r\n \r\n \r\n }\r\n size=\"small\"\r\n label=\"Close\"\r\n onClose={() => props.onClose(false)}\r\n onClick={() => handleEditActionLog(m)}\r\n />\r\n )}\r\n
\r\n\r\n
\r\n {m.logResultText} \r\n \r\n {moment(m.logActionTime).format('LLL')} ( Created by : {m.createdBy} @ {moment(m.logDateCreated).format('LLL')} )\r\n \r\n
\r\n
\r\n ))}\r\n
\r\n ) : (\r\n
\r\n
No Log Available
\r\n
\r\n )}\r\n
\r\n \r\n\r\n {state.editActionLog ? (\r\n \r\n ) : null}\r\n\r\n {state.actionLog ? (\r\n \r\n \r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nexport default LogHistory;\r\n","import { FormLabel, Grid } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { useContext } from 'react';\r\nimport { useState } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { GreenButton, SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport { postSetPriority } from '../../../Core/Service/workflow-service';\r\n\r\nconst JobPriorityModal = (props) => {\r\n const [state, setState] = useState({\r\n jobPriority: props.workFlowData.priorityNumber == 999999 ? '' : props.workFlowData.priorityNumber,\r\n isSetDisabled: props.workFlowData.priorityNumber < 999999 ? false : true\r\n });\r\n const { hideTopNavAndMenu, showToast } = useContext(AppContext);\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n nst.isSetDisabled = nst.jobPriority ? false : true;\r\n return nst;\r\n });\r\n };\r\n\r\n const handelSubmit = async (flag) => {\r\n let data = {\r\n headerRecordID: props.jobId,\r\n jobPriority: flag == 'submit' && state.jobPriority < 999999 ? state.jobPriority : 999999\r\n };\r\n const res = await postSetPriority(data);\r\n if (res.success) {\r\n showToast(res.message);\r\n props.handleCancel(true);\r\n }\r\n if (!res.success) {\r\n console.error(res);\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n WIP No:  {props.workFlowData.wipNo}    Reg. No:  {props.workFlowData.registration}\r\n \r\n
\r\n \r\n Priority Number\r\n \r\n \r\n \r\n handelSubmit('submit')} disabled={state.isSetDisabled}>\r\n Set\r\n \r\n \r\n \r\n handelSubmit('reset')}>\r\n Reset\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default JobPriorityModal;\r\n","import { FormLabel, Grid } from '@material-ui/core';\r\nimport React, { useEffect } from 'react';\r\nimport { useContext } from 'react';\r\nimport { useState } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { GreenButton, SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport { postCustomerRating, getCustomerRating } from '../../../Core/Service/workflow-service';\r\n// import { SelectBox } from '';\r\nimport SelectBox from './../../../Core/FormInput/SelectBox';\r\nimport StarIcon from '@material-ui/icons/Star';\r\n\r\nconst CustomerRating = (props) => {\r\n const [state, setState] = useState({ customerRatingIcon: null });\r\n const { hideTopNavAndMenu, showToast, portalSettings } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n if (props.jobId) {\r\n let res = await getCustomerRating(props.jobId);\r\n if (res?.success) {\r\n let data = res?.data?.table[0];\r\n setState((st) => ({\r\n ...st,\r\n headerRecordID: data.headerRecordID,\r\n customerRatingIcon: data.customerRatingIcon || null,\r\n customerRatingNotes: data.customerRatingNotes || '',\r\n enteredRegNo: data.enteredRegNo || '',\r\n s24ChassisNumber: data.s24ChassisNumber || '',\r\n registration: data.registration,\r\n wipNo: data.wipNumber\r\n }));\r\n }\r\n }\r\n }, []);\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n // nst.isSetDisabled = nst.jobPriority ? false : true;\r\n return nst;\r\n });\r\n };\r\n\r\n const ratingList = [\r\n {\r\n id: 1,\r\n name: (\r\n <>\r\n Gold\r\n \r\n )\r\n },\r\n {\r\n id: 2,\r\n name: (\r\n <>\r\n Silver\r\n \r\n )\r\n },\r\n {\r\n id: 3,\r\n name: (\r\n <>\r\n Bronze\r\n \r\n )\r\n }\r\n ];\r\n\r\n const handelSubmit = async () => {\r\n let data = {\r\n headerRecordID: props.jobId,\r\n customerRatingIcon: state.customerRatingIcon,\r\n customerRatingNotes: state.customerRatingNotes,\r\n enteredRegNo: state.enteredRegNo,\r\n s24ChassisNumber: state.s24ChassisNumber\r\n };\r\n const res = await postCustomerRating(data);\r\n if (res.success) {\r\n showToast(res.data.list.table[0].msg);\r\n props.handleCancel(true);\r\n }\r\n if (!res.success) {\r\n console.error(res);\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n WIP No:  {state.wipNo} {state.registration}\r\n \r\n \r\n Reg No:  {state.registration}\r\n \r\n
\r\n {portalSettings.showRegNumberInCustomerRatingBox && (\r\n <>\r\n \r\n S24 Chassis Number\r\n \r\n \r\n \r\n Reg No\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n Customer Rating Icon\r\n \r\n \r\n \r\n \r\n Notes\r\n \r\n \r\n \r\n handelSubmit('reset')}>\r\n Submit\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default CustomerRating;\r\n","import { CircularProgress, Grid, InputLabel } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport { getMotHistory } from '../../../../Core/Service/ReportScreens-service';\r\nimport CheckCircleIcon from '@material-ui/icons/CheckCircle';\r\nimport CancelIcon from '@material-ui/icons/Cancel';\r\nimport Alert from '@material-ui/lab/Alert';\r\nimport ErrorIcon from '@material-ui/icons/Error';\r\nimport './motHistory.scss';\r\nimport { SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport formatters from '../../../../Core/Grid/inputFormatter';\r\n\r\nvar dateInPast = function (firstDate) {\r\n if (firstDate && new Date(firstDate).setHours(0, 0, 0, 0) <= new Date().setHours(0, 0, 0, 0)) {\r\n return true;\r\n }\r\n return false;\r\n};\r\n\r\nconst MotHistoryScreen = (props) => {\r\n const [state, setState] = useState({\r\n dvla: null,\r\n lcvMot: null,\r\n hgvMOT: null,\r\n errors: {},\r\n isResponse: false,\r\n isLoader: false\r\n });\r\n const pullMotHistory = async (regNo, FranchiseCode) => {\r\n if (props.regNo || regNo) {\r\n setState((st) => ({\r\n ...st,\r\n isResponse: false,\r\n isLoader: true\r\n }));\r\n const res = await getMotHistory(regNo || props.regNo, props.FranchiseCode || '');\r\n setState((st) => ({\r\n ...st,\r\n dvla: res.data.dvla.response,\r\n lcvMot: res.data.lcvMot.response,\r\n hgvMOT: res.data.hgvMOT.response,\r\n isMotExpiryDate: dateInPast(res.data.dvla?.response?.motExpiryDate),\r\n isAnnualTestExpiryDate: dateInPast(res.data.hgvMOT?.response?.annualTestExpiryDate),\r\n isResponse: true,\r\n isLoader: false\r\n }));\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n dvla: null,\r\n lcvMot: null,\r\n hgvMOT: null,\r\n isMotExpiryDate: null,\r\n isAnnualTestExpiryDate: null,\r\n isResponse: false,\r\n isLoader: false\r\n }));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n pullMotHistory();\r\n }, [props.regNo, props.FranchiseCode]);\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt[name] = value.toUpperCase();\r\n return newSt;\r\n });\r\n };\r\n\r\n const handleSubmit = () => {\r\n pullMotHistory(state.regNumber, '');\r\n };\r\n\r\n return (\r\n
\r\n {!props.hideSeachText && (\r\n \r\n \r\n Reg Number\r\n \r\n {state.errors['regNumber']}\r\n \r\n \r\n \r\n GO\r\n \r\n \r\n \r\n )}\r\n {state.isResponse ? (\r\n \r\n {state.lcvMot != null ? (\r\n <>\r\n {state.isMotExpiryDate && (\r\n \r\n

This Vehicle's MOT has expired

\r\n

You can fined up to £1000 for Driving without a valid MOT

\r\n

\r\n This vehicle may be MOT exempt, for more information refer to\r\n \r\n MOT exemption guidance\r\n \r\n

\r\n
\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n Reg No\r\n \r\n \r\n {state.lcvMot.registration}\r\n \r\n \r\n \r\n \r\n Make/Model\r\n \r\n \r\n {`${state.lcvMot.make} (${state.lcvMot.model})`}\r\n \r\n \r\n \r\n \r\n {state.lcvMot.motTests ? 'MOT Valid Until' : 'MOT Due Date'}\r\n \r\n \r\n \r\n {state.lcvMot.motTests\r\n ? formatters.YearFormatter(state.lcvMot.motTests[0].expiryDate)\r\n : formatters.YearFormatter(state.lcvMot.motTestDueDate)}\r\n \r\n \r\n \r\n \r\n \r\n Tax Status\r\n \r\n \r\n {state.dvla.taxStatus}\r\n \r\n \r\n\r\n {state.dvla.taxDueDate != null && (\r\n \r\n \r\n Tax Due\r\n \r\n \r\n {formatters.YearFormatter(state.dvla.taxDueDate)}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {state.lcvMot.motTests != null ? (\r\n <>\r\n {state.lcvMot.motTests.map((q, i) => {\r\n return (\r\n \r\n \r\n {`Test Date: ${formatters.YearFormatter(q.completedDate)}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {q.testResult == 'PASSED' ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n
ResultTest No.MileageExpiry Date
\r\n \r\n \r\n \r\n \r\n Pass\r\n \r\n \r\n \r\n \r\n \r\n \r\n Fail\r\n \r\n {q.motTestNumber}{q.odometerValue}{q.expiryDate != null ? formatters.YearFormatter(q.expiryDate) : ''}
\r\n
\r\n\r\n {q.rfrAndComments != null && (\r\n <>\r\n {q.rfrAndComments.map((m) => {\r\n return (\r\n \r\n {m.type == 'ADVISORY' ? (\r\n }\r\n >\r\n {m.text}\r\n \r\n ) : m.type == 'PRS' ||\r\n m.type == 'FAILED' ||\r\n // m.type == 'MAJOR' ||\r\n // m.type == 'MINOR' ||\r\n q.testResult == 'FAILED' ? (\r\n }>\r\n {m.text}\r\n \r\n ) : (\r\n }>\r\n {m.text}\r\n \r\n )}\r\n \r\n );\r\n })}\r\n \r\n )}\r\n
\r\n );\r\n })}\r\n \r\n ) : (\r\n <>\r\n \r\n }>\r\n MOT records not available\r\n \r\n \r\n \r\n )}\r\n
\r\n \r\n \r\n ) : state.hgvMOT != null ? (\r\n <>\r\n {state.isAnnualTestExpiryDate && (\r\n \r\n

This Vehicle's annual test has expired

\r\n
\r\n

\r\n If the vehicle has been tested recently, it can take up to 10 working day for DVSA to update records\r\n

\r\n
\r\n

\r\n This vehicle may be MOT exempt, for more information refer to\r\n \r\n MOT exemption guidance\r\n \r\n

\r\n
\r\n )}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n Reg No\r\n \r\n \r\n {state.hgvMOT.registration}\r\n \r\n \r\n \r\n \r\n Make/Model\r\n \r\n \r\n {`${state.hgvMOT.make} (${state.hgvMOT.model})`}\r\n \r\n \r\n\r\n {state.hgvMOT.annualTestExpiryDate != null && (\r\n \r\n \r\n MOT Valid Until\r\n \r\n \r\n {formatters.YearFormatter(state.hgvMOT.annualTestExpiryDate)}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Tax Status\r\n \r\n \r\n {state.dvla.taxStatus}\r\n \r\n \r\n {state.dvla.taxDueDate != null && (\r\n \r\n \r\n Tax Due\r\n \r\n \r\n {formatters.YearFormatter(state.dvla.taxDueDate)}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n\r\n \r\n {state.hgvMOT.annualTests != null ? (\r\n <>\r\n {state.hgvMOT.annualTests.map((q, i) => {\r\n return (\r\n \r\n \r\n {`Test Date: ${formatters.YearFormatter(q.testDate)}`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {q.testResult == 'Pass' ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n
ResultTest No.Expiry DateLocation
\r\n \r\n \r\n \r\n \r\n Pass\r\n \r\n \r\n \r\n \r\n \r\n \r\n Fail\r\n \r\n {q.testCertificateNumber}{q.expiryDate != null ? formatters.YearFormatter(q.expiryDate) : ''}{q.location}
\r\n
\r\n\r\n {q.defects != null ? (\r\n <>\r\n {q.defects.map((m) => {\r\n return (\r\n \r\n {m.severityCode == 'A' ? (\r\n }\r\n >\r\n {`${m.failureReason}-${m.severityDescription}`}\r\n \r\n ) : m.severityCode == 'F' ? (\r\n }>\r\n {`${m.failureReason}-${m.severityDescription}`}\r\n \r\n ) : (\r\n }>\r\n {`${m.failureReason}-${m.severityDescription}`}\r\n \r\n )}\r\n \r\n );\r\n })}\r\n \r\n ) : q.testResult == 'Pass' ? (\r\n <>\r\n \r\n }>\r\n {`Passed MOT with no advisories`}\r\n \r\n \r\n \r\n ) : (\r\n ''\r\n )}\r\n
\r\n );\r\n })}\r\n \r\n ) : (\r\n \r\n \r\n }>\r\n No MOT with no advisories\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n ) : (\r\n \r\n }>\r\n Resource not found\r\n \r\n \r\n )}\r\n \r\n ) : (\r\n \r\n {state.isLoader ? : null}\r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default MotHistoryScreen;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getJobNotes = async (jobId) => {\r\n let res = await get(`JobNotes/${jobId}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const addJobNotes = async (jobId, message) => {\r\n let res = await post(`JobNotes`, { jobId, message }, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const updateJobNotes = async (message, jobId) => {\r\n let res = await post(`JobNotes/update`, { jobId, message }, { useAuthToken: true });\r\n return res;\r\n};\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport { PrimaryButton, SecondaryButton, TextBox } from '../../../Core/FormInput';\r\nimport { addJobNotes, getJobNotes, updateJobNotes } from '../../../Core/Service/jobNotes-service';\r\nimport moment from 'moment';\r\nimport { Delete, Edit } from '@material-ui/icons';\r\nimport { IconButton, Typography } from '@material-ui/core';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\n\r\nconst NotesModal = (props) => {\r\n const [state, setState] = useState({\r\n loading: false,\r\n notes: [],\r\n newNote: '',\r\n\r\n selectedID: 0,\r\n editMode: false,\r\n showDeleteConfirm: false\r\n });\r\n\r\n const JobSingleNote = (props) => {\r\n return (\r\n
\r\n
\r\n {AppStorage.getCanAmendJobNotes() && (\r\n <>\r\n handleEditNote(true, props.note)} style={{ padding: '0px' }}>\r\n \r\n \r\n handleDeleteNote(true, props.note)} style={{ marginRight: '5px' }}>\r\n \r\n \r\n \r\n )}\r\n
{props.note.msg}
\r\n
\r\n
\r\n {props.note.by} @ {moment(props.note.at).format('LLL')}\r\n
\r\n
\r\n );\r\n };\r\n\r\n const notesContainer = useRef(null);\r\n const handleClose = () => {\r\n props.onClose && props.onClose();\r\n };\r\n\r\n const setNewNote = (e) => {\r\n const newNote = e.target.value;\r\n setState((st) => ({ ...st, newNote }));\r\n };\r\n\r\n const deleteNoteFromServer = () => {\r\n let tempNotes = JSON.parse(\r\n JSON.stringify(\r\n state.notes.filter((x) => {\r\n return x.id != state.selectedID;\r\n })\r\n )\r\n );\r\n\r\n tempNotes.map((note) => {\r\n delete note.id;\r\n });\r\n\r\n const data = JSON.stringify(tempNotes);\r\n\r\n updateJobNotes(data, props.jobId).then((res) => {\r\n if (res.success) {\r\n setState((st) => ({ ...st, newNote: '', selectedID: 0, editMode: false, showDeleteConfirm: false }));\r\n getJobNotesAndSaveToState();\r\n }\r\n });\r\n };\r\n\r\n const addNotesToServer = () => {\r\n if (state.editMode) {\r\n let tempNotes = JSON.parse(JSON.stringify(state.notes));\r\n\r\n tempNotes.map((note) => {\r\n if (note.id == state.selectedID) {\r\n note.msg = state.newNote;\r\n }\r\n delete note.id;\r\n });\r\n\r\n const data = JSON.stringify(tempNotes);\r\n\r\n updateJobNotes(data, props.jobId).then((res) => {\r\n if (res.success) {\r\n setState((st) => ({ ...st, newNote: '', selectedID: 0, editMode: false }));\r\n getJobNotesAndSaveToState();\r\n }\r\n });\r\n } else {\r\n addJobNotes(props.jobId, state.newNote).then((res) => {\r\n if (res.success) {\r\n props.onNotesAdded && props.onNotesAdded(state.newNote);\r\n setState((st) => ({ ...st, newNote: '' }));\r\n getJobNotesAndSaveToState();\r\n }\r\n });\r\n }\r\n };\r\n\r\n const getJobNotesAndSaveToState = () => {\r\n setState((st) => ({ ...st, loading: true }));\r\n getJobNotes(props.jobId)\r\n .then((res) => {\r\n if (res.success) {\r\n const notes = res.data.map((item, index) => ({ ...item, id: index + 1 }));\r\n setState((st) => ({ ...st, notes: notes }));\r\n }\r\n notesContainer.current && (notesContainer.current.scrollTop = 0);\r\n })\r\n .finally(() => {\r\n setState((st) => ({ ...st, loading: false }));\r\n });\r\n };\r\n\r\n const handleEditNote = (editMode, note) => {\r\n setState((st) => ({ ...st, editMode: editMode, newNote: note ? note.msg : '', selectedID: editMode ? note.id : 0 }));\r\n };\r\n\r\n const handleDeleteNote = (val, note) => {\r\n setState((st) => ({ ...st, showDeleteConfirm: val, selectedID: note ? note.id : 0 }));\r\n };\r\n\r\n useEffect(() => {\r\n getJobNotesAndSaveToState();\r\n }, [props.jobId]);\r\n\r\n return (\r\n <>\r\n \r\n \r\n Job Notes\r\n
\r\n \r\n {state.editMode ? 'Save Note' : 'New Note'}\r\n \r\n\r\n {state.editMode && (\r\n handleEditNote(false)} disabled={state.newNote.length === 0}>\r\n Cancel Edit\r\n \r\n )}\r\n\r\n \r\n ×\r\n \r\n
\r\n
\r\n \r\n {props.modalSubHeaderTitle ?
{props.modalSubHeaderTitle()}
: null}\r\n\r\n \r\n
\r\n {state.loading && }\r\n {state.notes.map((n, i) => (\r\n \r\n ))}\r\n
\r\n
\r\n
\r\n\r\n {state.showDeleteConfirm && (\r\n handleDeleteNote(false)} maxWidth=\"xs\" className=\"dialog-custom job-notes-modal\">\r\n \r\n Confirm Delete Note\r\n
\r\n handleDeleteNote(false)}>\r\n ×\r\n \r\n
\r\n
\r\n \r\n deleteNoteFromServer()}>\r\n Delete\r\n \r\n handleDeleteNote(false)}>\r\n Cancel\r\n \r\n \r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default NotesModal;\r\n","import React, { useEffect, useState, useMemo, useContext } from 'react';\r\n\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport { IconButton, Tooltip, Typography } from '@material-ui/core';\r\nimport { BasicButtonGroup } from '../../../Core/ButtonGroup';\r\nimport { getWorkflows } from '../../../Core/Service/workflow-service';\r\nimport AppContext from '../../../App/AppContext';\r\n\r\nimport moment from 'moment';\r\nimport './dashboard.scss';\r\n\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport AssignmentIndIcon from '@material-ui/icons/AssignmentInd';\r\nimport { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\n\r\nimport Grid from '@material-ui/core/Grid';\r\nimport ReactDOM from 'react-dom';\r\nimport GijgoGrid from './';\r\nimport FilterListIcon from '@material-ui/icons/FilterList';\r\nimport DialogComp from '../../../Core/Modal/dialogModal';\r\nimport GridFilterModal from './FilterModal';\r\nimport { getGridFilterList, postGridFilterList } from '../../../Core/Service/workflow-service';\r\nimport AssignTech from '../assign-technician/assignTechnModal.jsx';\r\nimport { Customi18 } from '../../../Core/Controls/i18react/customei18';\r\nimport _ from 'lodash';\r\nimport AssignmentIcon from '@material-ui/icons/Assignment';\r\nimport LogHistory from '../Communicator/OpenActionLogs/logHistory';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport JobPriorityModal from './jobPriorityModal';\r\nimport LowPriorityIcon from '@material-ui/icons/LowPriority';\r\nimport ReportIcon from '@material-ui/icons/Report';\r\nimport CustomerRating from './customerRating';\r\nimport StarIcon from '@material-ui/icons/Star';\r\nimport MotHistoryScreen from '../ReportsScreens/MotHistoryScreen';\r\nimport { SpeakerNotes } from '@material-ui/icons';\r\nimport JobNotesModal from '../workflow-job/JobNotes';\r\n\r\nconst useStyles = (props) =>\r\n makeStyles((thems) => {\r\n return {\r\n ...props\r\n };\r\n });\r\n\r\nlet config = {\r\n wipNumber: {\r\n from: 'displayWIPNo',\r\n to: 'userGridColumnDisplayWIPNo'\r\n },\r\n registration: {\r\n from: 'displayVehicleReg',\r\n to: 'userGridColumnDisplayVehicleReg'\r\n },\r\n makeModel: {\r\n from: 'displayModel',\r\n to: 'userGridColumnDisplayModel'\r\n },\r\n customerName: {\r\n from: 'displayCustomer',\r\n to: 'userGridColumnDisplayCustomer'\r\n },\r\n dateDueIn: {\r\n from: 'displayDateDueIn',\r\n to: 'userGridColumnDisplayDateDueIn'\r\n },\r\n dateDueOut: {\r\n from: 'displayDateDueOut',\r\n to: 'userGridColumnDisplayDateDueOut'\r\n },\r\n returnReason: {\r\n from: 'displayReturnReason',\r\n to: 'userGridColumnDisplayReturnReason'\r\n },\r\n branchShortName: {\r\n from: 'displayBranch',\r\n to: 'userGridColumnDisplayBranch'\r\n },\r\n franchiseName: {\r\n from: 'displayFranchise',\r\n to: 'userGridColumnDisplayFranchise'\r\n },\r\n st: {\r\n from: 'displayJobDescription',\r\n to: 'userGridColumnDisplayJobDescription'\r\n },\r\n accountNo: {\r\n from: 'displayAccount',\r\n to: 'userGridColumnDisplayAccount'\r\n },\r\n cb: {\r\n from: 'displayCreatedBy',\r\n to: 'userGridColumnDisplayCreatedBy'\r\n },\r\n assigned: {\r\n from: 'displayAssignedDate',\r\n to: 'userGridColumnDisplayAssignedDate'\r\n },\r\n taken: {\r\n from: 'displayTimeTaken',\r\n to: 'userGridColumnDisplayTimeTaken'\r\n },\r\n status: {\r\n from: 'displayStatus',\r\n to: 'UserGridColumnDisplayStatus'\r\n },\r\n assignedDays: {\r\n from: 'displayAssignedDays',\r\n to: 'UserGridColumnDisplayAssignedDays'\r\n },\r\n owningOperator: {\r\n from: 'displayOwningOperator',\r\n to: 'UserGridDisplayColumnOwningOperator'\r\n }\r\n};\r\n\r\nconst isFalseValue = (val) => {\r\n if (val == false) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n};\r\n\r\nconst ratingList = {\r\n 1: ,\r\n 2: ,\r\n 3: \r\n};\r\n\r\nlet Dashboard = (props) => {\r\n const [state, setState] = useState({\r\n workflowButtons: [],\r\n rows: [],\r\n filteredRows: [],\r\n totalRec: 0,\r\n filterText: '',\r\n btnSelectedId: props.location.query?.workFlowId || localStorage.getItem('currentWorkflowId'),\r\n currentWorkflowId: props.location.query?.workFlowId || localStorage.getItem('currentWorkflowId'),\r\n returnReasonID: props.location.query?.returnReasonID || '',\r\n hasQueryValues: props.location.query?.returnReasonID ? true : false,\r\n tempObj: {},\r\n filterList: [],\r\n displayPagination: true,\r\n showTechAssign: false,\r\n isReload: null,\r\n timeID: JSON.parse(localStorage.getItem('FiltterParams'))?.branchTime || '',\r\n logHistory: false,\r\n displayJobPriorityButton: false,\r\n showCustomerRating: false,\r\n displayCustomerRatingButton: false,\r\n displayCustomerMessage: false\r\n });\r\n\r\n // const { t, i18n, langLabel } = Customi18();\r\n const [loading, setLoading] = React.useState(false);\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n const { portalSettings, getUserPreference, isAppReaload } = useContext(AppContext);\r\n const isCommunicatorAllowed = AppStorage.getCommunicatorAllowed() && portalSettings.portalSettingCommunicatorEnabled;\r\n const canSetCustomerRating = AppStorage.getCanSetCustomerRating();\r\n const pullGridFilterList = async () => {\r\n // let timeID = JSON.parse(localStorage.getItem('FiltterParams'));\r\n let data = await getUserPreference();\r\n if (data) {\r\n setState((st) => ({\r\n ...st,\r\n appbarLocation: data.details[0].appbarLocation || 'T',\r\n languageCode: data.details[0].languageCode,\r\n languageData: data.languages,\r\n tempObj: data.details[0] || {},\r\n displayPagination: isFalseValue(data.details[0]?.displayPagination)\r\n // timeID: timeID?.branchTime\r\n }));\r\n }\r\n };\r\n\r\n // useEffect(() => {\r\n // if (props.location.query) {\r\n // setState((st) => ({\r\n // ...st,\r\n // returnReasonID: props.location.query.returnReasonID,\r\n // filterText: props.location.query.returnReason,\r\n // btnSelectedId: props.location.query?.workFlowId,\r\n // hasQueryValues: true\r\n // }));\r\n // }\r\n // }, []);\r\n\r\n useEffect(async () => {\r\n setLoading(true);\r\n let res = await getWorkflows();\r\n if (res.success) {\r\n const buttons = res.data.map((w) => ({\r\n id: w.id,\r\n label: w.workflowName,\r\n displayJobPriorityButton: w.displayJobPriorityButton == 'Y' ? true : false,\r\n displayCustomerRatingButton: w.displayCustomerRatingButton == 'Y' ? true : false\r\n }));\r\n setState((st) => ({ ...st, workflowButtons: buttons }));\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (isAppReaload) {\r\n pullGridFilterList();\r\n }\r\n }, [isAppReaload]);\r\n\r\n var colorCodeObj = {};\r\n state.filteredRows.forEach((c) => {\r\n colorCodeObj[[c.id]] = {\r\n background: c.returnReasonColourCode,\r\n color: c.returnReasonTextColourCode\r\n };\r\n });\r\n const classes = useStyles(colorCodeObj)();\r\n\r\n const handleBtnClcik = (val) => {\r\n props.history.push(`/Job/${val.headerRecordID}/${val.workflowID}`);\r\n };\r\n\r\n const handleAssignmentBtnClick = (val) => {\r\n // props.history.push(`/assign-technician/${val.headerRecordID}`);\r\n\r\n setState((st) => ({\r\n ...st,\r\n jobId: val.headerRecordID,\r\n showTechAssign: true\r\n }));\r\n };\r\n\r\n const custerRating = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n jobId: val.headerRecordID,\r\n workFlowData: val,\r\n showCustomerRating: true\r\n }));\r\n };\r\n\r\n const handleCustmer = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n customerMessage: val,\r\n displayCustomerMessage: true\r\n }));\r\n };\r\n\r\n const handleShowJobPriorityBtnClick = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n jobId: val.headerRecordID,\r\n workFlowData: val,\r\n showJobPriority: true\r\n }));\r\n };\r\n\r\n const handleLogHistory = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n logHistory: true,\r\n headerRecordID: val.headerRecordID,\r\n reg: val.registration,\r\n wip: val.wipNumber\r\n }));\r\n };\r\n\r\n const handleJobNotes = (val, on) => {\r\n setState((st) => ({\r\n ...st,\r\n jobNotes: on,\r\n headerRecordID: val.headerRecordID,\r\n reg: val.registration,\r\n wip: val.wipNumber\r\n }));\r\n };\r\n\r\n const editButton = (id, val) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n {/* \r\n handleBtnClcik(val)}>\r\n \r\n \r\n */}\r\n {isCommunicatorAllowed && (\r\n \r\n \r\n handleLogHistory(val)}>\r\n \r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n handleJobNotes(val, true)}>\r\n \r\n \r\n \r\n \r\n\r\n \r\n {canSetCustomerRating ? (\r\n <>\r\n {val.customerRatingIcon ? (\r\n \r\n custerRating(val)}>\r\n {ratingList[val.customerRatingIcon]}\r\n \r\n \r\n ) : (\r\n \r\n custerRating(val)}>\r\n \r\n \r\n \r\n )}\r\n \r\n ) : (\r\n state.displayCustomerRatingButton && (\r\n \r\n handleCustmer(val.customerRatingNotes)}>\r\n {ratingList[val.customerRatingIcon]}\r\n \r\n \r\n )\r\n )}\r\n {/* {val.customerRatingIcon ? (\r\n \r\n handleCustmer(val.customerRatingNotes)}>\r\n {ratingList[val.customerRatingIcon]}\r\n \r\n \r\n ) : (\r\n state.displayCustomerRatingButton && (\r\n \r\n custerRating(val)}>\r\n \r\n \r\n \r\n )\r\n )} */}\r\n \r\n\r\n \r\n \r\n handleShowJobPriorityBtnClick(val) : () => false}>\r\n {val.priorityNumber == 999999 && state.displayJobPriorityButton ? (\r\n \r\n ) : (\r\n <>{val.priorityNumber < 999999 ? val.priorityNumber : ''}\r\n )}\r\n \r\n \r\n \r\n\r\n \r\n {val.technicians && (\r\n // \r\n state.currentWorkflowId == 8 && handleAssignmentBtnClick(val)}>\r\n \r\n \r\n // \r\n )}\r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const baseColumns = [\r\n {\r\n title: 'Action',\r\n field: '',\r\n renderer: editButton,\r\n width: 95,\r\n filterable: false\r\n },\r\n { field: 'wipNumber', sortable: true, title: `${portalSettings.portalSettingGridWIPNoLabel || 'WIP No'}`, width: 70 },\r\n { field: 'registration', sortable: true, title: `${portalSettings.portalSettingGridVehicleRegLabel || 'Vehicle Reg'}`, width: 90 },\r\n { field: 'makeModel', sortable: true, title: `${portalSettings.portalSettingGridModelLabel || 'Model'}`, width: 200 },\r\n { field: 'customerName', sortable: true, title: `${portalSettings.portalSettingGridCustomerNameLabel || 'Customer Name'}`, width: 200 },\r\n {\r\n field: 'dateDueIn',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridDateDueInLabel || 'Due Date In'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n // flex: 0.6\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n {\r\n field: 'dateDueOut',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridDateDueOutLabel || 'Date Due Out'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueOut != null) {\r\n return moment(record.dateDueOut).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n { field: 'returnReason', sortable: true, title: `${portalSettings.portalSettingGridReturnReasonLabel || 'Return Reason'}`, width: 190 },\r\n // { field: 'chassisNumber', sortable: true,title: 'Chassis Number', },\r\n { field: 'branchShortName', sortable: true, title: `${portalSettings.portalSettingGridBranchLabel || 'Branch'}`, width: 120 },\r\n { field: 'franchiseName', sortable: true, title: `${portalSettings.portalSettingGridFranchiseLabel || 'Franchise'}`, width: 160 },\r\n { field: 'st', sortable: true, title: `${portalSettings.portalSettingGridJobDescriptionLabel || 'Job Description'}`, width: 170 },\r\n { field: 'accountNo', sortable: true, title: `${portalSettings.portalSettingGridAccountLabel || 'Account'}`, width: 80 },\r\n { field: 'cb', sortable: true, title: `${portalSettings.portalSettingGridCreatedByLabel || 'Created By'}`, width: 120 },\r\n {\r\n field: 'assigned',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridAssignedDateLabel || 'Assigned Date'}`,\r\n width: 120,\r\n renderer: function (value, record) {\r\n if (record.assigned != null) {\r\n return moment(record.assigned).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n {\r\n field: 'taken',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridTimeTakenLabel || 'Time Taken'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'status',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridStatusLabel || 'Status'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'assignedDays',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridAssignedDaysLabel || 'Assigned Days'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'owningOperator',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridOwningOperatorLabel || 'Owning Operator'}`,\r\n width: 100\r\n }\r\n ];\r\n\r\n if (state.currentWorkflowId === 'All') {\r\n baseColumns.push({\r\n field: 'wn',\r\n sortable: true,\r\n isShow: true,\r\n title: `Workflow Name`,\r\n width: 160\r\n });\r\n }\r\n\r\n const regNumberRendrer = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showMotHistory: true, regNo: record?.registration, FranchiseCode: record?.f }))}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n let Column = baseColumns.map((c) => {\r\n let obj = {};\r\n if (c.title !== 'Action' && c.field !== 'registration') {\r\n obj.events = {\r\n click: function (e) {\r\n props.history.push(`/Job/${e.data.record.headerRecordID}/${e.data.record.workflowID}`);\r\n }\r\n };\r\n if (Object.keys(state.tempObj).length > 0 && !c.isShow) {\r\n obj.hidden = !state.tempObj[config[c.field]?.from];\r\n } else {\r\n obj.hidden = false;\r\n }\r\n }\r\n if (c.field == 'registration') {\r\n c.renderer = regNumberRendrer({});\r\n }\r\n return {\r\n ...c,\r\n ...obj,\r\n headerCssClass: 'gridHeader'\r\n };\r\n });\r\n\r\n const buttonClicked = async (btn) => {\r\n localStorage.setItem('currentWorkflowId', btn.id);\r\n setState((st) => {\r\n const newSt = { ...st };\r\n if (!newSt.hasQueryValues) {\r\n newSt.returnReasonID = '';\r\n } else {\r\n newSt.hasQueryValues = false;\r\n }\r\n newSt.currentWorkflowId = btn.id;\r\n newSt.currentWorkflowLabel = btn.label;\r\n newSt.displayJobPriorityButton = btn.displayJobPriorityButton || false;\r\n newSt.displayCustomerRatingButton = btn.displayCustomerRatingButton || false;\r\n return newSt;\r\n });\r\n };\r\n\r\n const handleOpen = () => {\r\n let tempArr = [...Column]\r\n .map((q) => {\r\n return {\r\n field: q.field,\r\n title: q.title,\r\n hidden: !q.hidden,\r\n fieldName: config[q.field]?.to,\r\n isShow: q.isShow ? q.isShow : false\r\n };\r\n })\r\n .filter((p) => (!p.isShow ? p : null));\r\n tempArr.push({\r\n field: 'pagination',\r\n title: 'Pagination',\r\n hidden: state.displayPagination,\r\n fieldName: 'UserGridColumnDisplayPagination'\r\n });\r\n\r\n setState((st) => ({ ...st, showFilter: true, filterList: tempArr }));\r\n };\r\n\r\n const closeDialog = (res) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.showFilter = false;\r\n newSt.showTechAssign = false;\r\n if (res) newSt.isReload = new Date();\r\n return newSt;\r\n });\r\n res && pullGridFilterList();\r\n };\r\n\r\n const closeTechAssignDialog = (res) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.showJobPriority = false;\r\n newSt.showTechAssign = false;\r\n newSt.showCustomerRating = false;\r\n newSt.displayCustomerMessage = false;\r\n if (res) newSt.isReload = new Date();\r\n return newSt;\r\n });\r\n };\r\n\r\n // let getUrl = `WorkflowJobs/GetWorkflow/${state.currentWorkflowId === 'All' ? '' : state.currentWorkflowId}?${\r\n // state.returnReasonID ? `ReturnReasonID=${state.returnReasonID}` : ''\r\n // }${state.timeID ? `&Time=${state.timeID}` : ''}`;\r\n useEffect(async () => {\r\n if (portalSettings.portalSettingGridRefreshTime > 0) {\r\n const intervalId = await setInterval(() => {\r\n setState((st) => {\r\n const newSt = { ...st };\r\n newSt.isReload = new Date();\r\n return newSt;\r\n });\r\n }, portalSettings.portalSettingGridRefreshTime * 1000);\r\n return () => clearInterval(intervalId);\r\n }\r\n }, [portalSettings.portalSettingGridRefreshTime]);\r\n\r\n useEffect(() => {\r\n let tempUrl = `WorkflowJobs/GetWorkflow/${state.currentWorkflowId === 'All' ? '' : state.currentWorkflowId}?${\r\n state.returnReasonID ? `ReturnReasonID=${state.returnReasonID}` : ''\r\n }${state.timeID ? `&Time=${state.timeID}` : ''}`;\r\n setState((st) => {\r\n const newSt = { ...st };\r\n newSt.getUrl = tempUrl;\r\n newSt.isReload = new Date();\r\n return newSt;\r\n });\r\n }, [state.currentWorkflowId, state.returnReasonID, state.timeID, state.displayJobPriorityButton]);\r\n\r\n const modalSubHeaderTitle = () => {\r\n return (\r\n
\r\n \r\n WIP No: {state.wip} Reg No: {state.reg}\r\n \r\n
\r\n );\r\n };\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {state.currentWorkflowId && !_.isEmpty(state.tempObj) && (\r\n \r\n )}\r\n
\r\n {state.showFilter ? (\r\n closeDialog(false)}>\r\n \r\n \r\n ) : null}\r\n {state.showTechAssign ? (\r\n closeTechAssignDialog(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n {state.showJobPriority ? (\r\n closeTechAssignDialog(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n {state.showCustomerRating ? (\r\n closeTechAssignDialog(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n {state.jobNotes ? (\r\n handleJobNotes([], false)}\r\n onNotesAdded={() => {\r\n console.log('');\r\n }}\r\n />\r\n ) : null}\r\n {state.displayCustomerMessage ? (\r\n closeTechAssignDialog(false)} fullWidth>\r\n \r\n {state.customerMessage}\r\n \r\n \r\n ) : null}\r\n {state.logHistory ? (\r\n {\r\n setState((st) => ({\r\n ...st,\r\n logHistory: false\r\n }));\r\n }}\r\n />\r\n ) : null}\r\n {state.showMotHistory && (\r\n setState((st) => ({ ...st, showMotHistory: false }))} maxWidth=\"md\" fullWidth overflow={'auto'}>\r\n \r\n \r\n )}\r\n
\r\n );\r\n};\r\nexport default Dashboard;\r\n","import { Grid } from '@material-ui/core';\r\nimport React from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport GijgoGrid from '../../../Components/internal/dashboard';\r\nimport moment from 'moment';\r\nimport { useContext } from 'react';\r\nimport { IconButton, Tooltip } from '@material-ui/core';\r\nimport { useState } from 'react';\r\nimport AssignmentIndIcon from '@material-ui/icons/AssignmentInd';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport ReactDOM from 'react-dom';\r\nimport { useEffect } from 'react';\r\nimport AssignTech from '../../../Components/internal/assign-technician/assignTechnModal';\r\nimport DialogComp from '../../Modal/dialogModal';\r\n\r\nconst TechDashboardGrid = (props) => {\r\n const { portalSettings, getUserPreference, isAppReaload } = useContext(AppContext);\r\n const [state, setState] = useState({});\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamTid = params.get('tid') || '';\r\n let ParamBnm = params.get('bnm') || '';\r\n\r\n useEffect(() => {\r\n return () => {\r\n console.log('cleaned up');\r\n };\r\n }, [ParamTid]);\r\n\r\n const handleBtnClcik = (val) => {\r\n props.history.push(`/Job/${val.headerRecordID}/${val.workflowID}`);\r\n };\r\n\r\n const handleAssignmentBtnClick = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n jobId: val.headerRecordID,\r\n showTechAssign: true\r\n }));\r\n };\r\n\r\n const editButton = (id, val) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n handleBtnClcik(val)}>\r\n \r\n \r\n \r\n \r\n {val.workflowID == 8 && (\r\n // \r\n handleAssignmentBtnClick(val)}>\r\n \r\n \r\n // \r\n )}\r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const baseColumns = [\r\n {\r\n title: 'Action',\r\n field: '',\r\n renderer: editButton,\r\n width: 90,\r\n filterable: false\r\n },\r\n {\r\n field: 'userName',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridOwningOperatorLabel || 'Technician'}`,\r\n width: 150\r\n },\r\n { field: 'wipNo', sortable: true, title: `${portalSettings.portalSettingGridWIPNoLabel || 'WIP No'}`, width: 70 },\r\n { field: 'registration', sortable: true, title: `${portalSettings.portalSettingGridVehicleRegLabel || 'Vehicle Reg'}`, width: 90 },\r\n { field: 'customerName', sortable: true, title: `${portalSettings.portalSettingGridCustomerNameLabel || 'Customer Name'}`, width: 200 },\r\n {\r\n field: 'dateDueIn',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridDateDueInLabel || 'Due Date In'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n // flex: 0.6\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n {\r\n field: 'dateDueOut',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridDateDueOutLabel || 'Date Due Out'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueOut != null) {\r\n return moment(record.dateDueOut).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n { field: 'returnReason', sortable: true, title: `${portalSettings.portalSettingGridReturnReasonLabel || 'Return Reason'}`, width: 190 },\r\n // { field: 'chassisNumber', sortable: true,title: 'Chassis Number', },\r\n // { field: 'branchShortName', sortable: true, title: `${portalSettings.portalSettingGridBranchLabel || 'Branch'}`, width: 120 },\r\n { field: 'serviceText', sortable: true, title: `${portalSettings.portalSettingGridJobDescriptionLabel || 'Job Description'}`, width: 170 },\r\n {\r\n field: 'assigned',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridAssignedDateLabel || 'Assigned Date'}`,\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.assigned != null) {\r\n return moment(record.assigned).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n {\r\n field: 'assignedDays',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridAssignedDaysLabel || 'Assigned Days'}`,\r\n width: 110\r\n },\r\n {\r\n field: 'taken',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridTimeTakenLabel || 'Time Taken'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'status',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridStatusLabel || 'Status'}`,\r\n width: 135\r\n }\r\n\r\n // { field: 'makeModel', sortable: true, title: `${portalSettings.portalSettingGridModelLabel || 'Model'}`, width: 200 }\r\n ];\r\n\r\n let Column = baseColumns.map((c) => {\r\n let obj = {};\r\n if (c.title !== 'Action') {\r\n obj.events = {\r\n click: function (e) {\r\n props.history.push(`/Job/${e.data.record.headerRecordID}/${e.data.record.workflowID}`);\r\n }\r\n };\r\n }\r\n return {\r\n ...c,\r\n ...obj,\r\n headerCssClass: 'gridHeader'\r\n };\r\n });\r\n\r\n const closeTechAssignDialog = (res) => {\r\n setState((st) => ({ ...st, showTechAssign: false, isReload: res ? new Date() : null }));\r\n };\r\n\r\n let getUrl = `TechnicianAssigned?Id=${ParamTid}&branchShortName=${ParamBnm}`;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {state.showTechAssign ? (\r\n closeTechAssignDialog(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nexport default TechDashboardGrid;\r\n","import {\r\n get,\r\n post\r\n} from './http-calls';\r\n\r\nexport const saveDocumentStamps = async (jobId, docId, docName, stamps) => {\r\n let res = await post(`Jobdocuments/SetDocumentStampsJSON`, {\r\n headerRecordId: jobId,\r\n ocrDocumentId: docId,\r\n documentName: docName,\r\n documentStampsJSON: stamps\r\n }, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n}\r\n\r\n//this is new stamping logic, we send one canvas not all multiple stamps\r\nexport const saveDocumentStampsV2 = async (jobId, docId, docName, canvasofPages) => {\r\n let res = await post(`Jobdocuments/v2/SetDocumentStampsJSON`, {\r\n headerRecordId: jobId,\r\n ocrDocumentId: docId,\r\n documentName: docName,\r\n canvasofPages\r\n }, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n}\r\n\r\nexport const getDocumentStamps = async (jobId, docId, docName) => {\r\n let res = await get(`Jobdocuments/GetDocumentStampsJSON/${jobId}?ocrDocumentId=${docId}&documentName=${docName}`, {\r\n useAuthToken: true\r\n });\r\n return res;\r\n}\r\n","import { get, post } from './http-calls'\r\n\r\nexport let getDocumentByName = async (docName, pageNo) => {\r\n let data = await get(`WorkflowDocument/${docName}${pageNo?`/${pageNo}`:''}`, { useAuthToken: true });\r\n return data;\r\n}\r\n\r\nexport let uploadOcrDoc = async (jobId, ocrDocId, formData) => {\r\n let data = await post(`WorkflowDocument/${jobId}/${ocrDocId}`, formData, { useAuthToken: true });\r\n return data;\r\n}\r\n\r\nexport const getOcrDocumentHistoryForJob = async (jobId, ocrDocId) => {\r\n let res = await get(`WorkflowDocument/history/${jobId}/${ocrDocId}`, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const deleteJobOcrDocument = async (jobId, ocrDocumentId, jobDocumentId, deletingCurrent) => {\r\n let res = await post(`WorkflowDocument/delete`, {\r\n jobId,\r\n ocrDocumentId,\r\n jobDocumentId,\r\n deletingCurrent\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const setAsCurrentDocument = async (jobId, ocrDocumentId, jobDocumentId) => {\r\n let res = await post(`WorkflowDocument/MoveToSameJob`, {\r\n jobId,\r\n ocrDocumentId,\r\n jobDocumentId\r\n }, { useAuthToken: true });\r\n return res;\r\n}\r\n\r\nexport const searchJobByText = async (jobId, searchText) => {\r\n let res = await get(`WorkflowDocument/SearchWip/${jobId}/${searchText}`, {useAuthToken: true})\r\n return res;\r\n}\r\n\r\nexport const moveDocToOtherJob = async (jobId, nextJobId, ocrDocumentId, jobDocumentId, isCurrent ) => {\r\n let res = await post(`WorkflowDocument/MoveToOtherJob`, {\r\n jobId,\r\n nextJobId,\r\n ocrDocumentId,\r\n jobDocumentId,\r\n isCurrent\r\n }, { useAuthToken: true })\r\n return res;\r\n}\r\n\r\nexport const mailDocument = async(data)=> {\r\n let res = await post(`WorkflowDocument/SendMail`, data, { useAuthToken: true })\r\n return res;\r\n}","import _, { find, some, remove, values } from 'lodash';\r\nimport React, { createContext, useEffect, useState } from 'react';\r\nimport { getWorkflows, getWorkflowSteps } from '../../../Core/Service/workflow-service';\r\nimport { getWorkflowData, saveWorkflowData } from './../../../Core/Service/workflowData-service';\r\nimport { getWorkflowListsAndOps } from '../../../Core/Service/workflowList-service';\r\nimport { getBranchById } from '../../../Core/Service/branch-screen-service';\r\nimport { saveDocumentStamps, saveDocumentStampsV2 } from '../../../Core/Service/workflowJobsDocumentStamp-service';\r\nimport moment from 'moment';\r\nimport { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\nimport { getOcrDocumentHistoryForJob } from '../../../Core/Service/workflowJobDocument-service';\r\nimport { useHistory } from 'react-router-dom';\r\n\r\nexport const ScreenContext = createContext();\r\n\r\nexport const MarkingType = {\r\n Stamp: 1,\r\n Check: 2,\r\n Cross: 3,\r\n Calendar: 4,\r\n Sign: 5,\r\n Text: 6,\r\n NA: 7,\r\n FreeDrawing: 8\r\n};\r\n\r\nexport const FixedImage = {\r\n Check: 'data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAOpJREFUOE9j/Prr63/uNm4GcsCt7FsMjAwNDP/J0QzTQ7IBmyM2M/iu8IXbSZIBD/IfMMgLyDPMOTOHIXVrKtgQog2AaQZramAE6STegJXBKxnCdMIgGpA0E+eCfwwM/xsh4czdzM3w7d83lDBH8cL/+v8MjI1Qt0GVgcRA4M+/PwyszawYEQY3gOkfE8Pfxr9gBZIdkgwvfr5ggGkGOxXNYKzRiKzhzfc3DCKcIhB/49CMNQyQDYHbQooBIE3EOJ1gSoQZgs/5BKNRmVeZ4e7nu3izCtEpEZcpjI8/PP4vO0GWrAy5M2YnAwDQEVzuLW10/AAAAABJRU5ErkJggg==',\r\n Cross: 'data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAKFJREFUOE+1U8kNgDAMcxgB8eHHQuzABvxYgg8jMBoLsAJGhRZBFBDl6CdSFLu2lQhJommAtkXUq2ug6yCsKqLvo7DbcFlCCPAZekX9RDBNQJIchVk9U4EbFPH6fKV36aoiti0EgA4nEO/65xloEgN8HeIrglcW9uAg2+r5HM5D1J4dSVSIN9fzg00sCmIYbv6nxvIcspxzlgHjGEeSpgtmBnmGSrnWchiJAAAAAElFTkSuQmCC',\r\n // NA: `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAcNJREFUOE/tlL1rVFEQxc8ZliWxtNt379tgpwhqqWilEhsLlYA2dgEL104LCxU//oOAK9oKgtikEgTRQiRNmggxxSs278576wcoWChLsnfksdmQ9aPaLXO7KeZ3z5wzDDHhxwnzsAsc39FtD9M0uU7amzzvLlfYZtNdNoufQ+i+2qpvmuF7CMWjqvY+aZEIIZSLO2VsA71PemYsp6d/Hc6ybz/StLEEyHIIxdUt4BoZz6+vdz/OzDQOxCirZvZJtfQA+kPoCJBk3QyPVYsrO4He+0MAnqnqwarROfdAxE6Z4YgIz+Z58fqfQICLJOZIO2Nm94cK09TdI2l5rncA0HuXiWDBDLMAyxB0/j9AqXw5GqOdJPmTtLfVyM65VZIXVfWDc+6YCN6TNgvIiRjjtampPY0sy3oVdGRkQFr1ev35xkZvpcoFwENA2mR8kefF/qohTf0CYK3RfbBzw3D+Aqrqk2YzOW3GKt02ya9mJiEUtwHUnHNKWlu1vDv4oLEUo3SKorj0h0I/X6vFd51OuTZYC39BpP+l35cbJG+p6or3fq+IzW1u2suyLMMg/eR4jLJPVZ+OAMdf6QFh9ziM7+TEPfwN4xzRFTcNfGsAAAAASUVORK5CYII=`\r\n NA: `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAUCAYAAAB4d5a9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAShJREFUeNrsVLGKAkEMfZ5go2Bpp72FvYV/oH9gb2GvYONuoaC1gpWdYK9gr39gaWdpp51Wc/cIuczCyHHCXnM+CJkkm7ydvGUz+byLAAyRHuLMF4lDyvjAH+BN8jrJZALsdsBgkMzRfKzXyRx7aLXaExZ+XWr7vftGtWo5mj5Tr0u915O407Ge2cye8+3puhaLcL7bFb/dim82xR+PQKv1C004oNGwAT6YY/18BopFi1croFwO9wRJ+n3x02ky327LYL2FvjlzqkfwNiFNeB6NbNeqyWbj3PUa1lDh13/UZD4HbjeLKxVbjcZcKbUoFMTYoyv0kc3lokgDXvnxkP3Sn05AqSSD7nc5j8fA5SIEjJdLqRPsITn94WAk7x/kPyaJU+aIPwUYAIMN3CpVOzsAAAAAAElFTkSuQmCC`\r\n};\r\n\r\nexport const WorkflowJobDetailsProvider = (props) => {\r\n const [widths] = useWindowSize();\r\n const tabView = widths < 1260 ? true : false;\r\n const tabSize = widths;\r\n\r\n const [screenState, setScreenState] = useState({\r\n allFilled: false,\r\n isReadonly: true,\r\n showNotesModal: false,\r\n showHistoryModal: false,\r\n showReturnReasonModal: false,\r\n showOcrDocHistory: false,\r\n documentRotateBy: 0,\r\n zoomFactor: 1,\r\n showMailModal: false,\r\n docInfoToMail: undefined,\r\n showAllDocModal: false,\r\n showWarning: false,\r\n showReturnReasonHistoryModal: false,\r\n showBarCode: false,\r\n showCustomerNotes: false,\r\n showHeaderDetails: false\r\n });\r\n\r\n const [state, setState] = useState({\r\n tabView: tabView ? true : false,\r\n jobId: +props.match.params.jobId,\r\n selectedWorkflowId: +props.match.params.workflowId,\r\n technicianJobId: props.match.params.technicianJobId || null,\r\n isTechReadonly: props.match.params.isTechReadonly,\r\n fromPage: props.match.params.frompage || '',\r\n selectedOcrDocId: undefined,\r\n selectedOcrDocName: undefined,\r\n selectedOcrDocHistoryCount: undefined,\r\n workflows: [],\r\n workflowSteps: [],\r\n workflowStepsList: [],\r\n imagesFromUrl: [],\r\n isSelectedFilePdf: false,\r\n loadingDoc: false,\r\n currentVisibleDocName: undefined,\r\n hasSubmitedForm: false\r\n });\r\n\r\n const [stampImages, setStampImages] = useState({\r\n loading: false,\r\n loaded: false,\r\n images: []\r\n });\r\n\r\n const [markingState, setMarkingState] = useState({\r\n markingType: null,\r\n isStart: false,\r\n isContinue: false,\r\n needModal: false,\r\n stamps: [],\r\n\r\n //below are for v2\r\n haveAnySelected: false,\r\n fabricCanvasData: {},\r\n base64FromFabric: {}\r\n });\r\n let history = useHistory();\r\n\r\n const startMarkingMode = () => {\r\n setMarkingState((st) => ({ ...st, isStart: true, markingType: null }));\r\n };\r\n\r\n const stopMarkingMode = () => {\r\n setMarkingState((st) => {\r\n let newSt = { ...st };\r\n newSt.isStart = false;\r\n\r\n if (props.canUseNewStamp) {\r\n newSt.markingType = null;\r\n newSt.haveAnySelected = false;\r\n newSt.fabricCanvasData = {};\r\n newSt.base64FromFabric = {};\r\n } else {\r\n remove(newSt.stamps, (el) => el.isNew);\r\n newSt.stamps = [...newSt.stamps];\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n const saveCanvasDataForPageNo = (pageNo, fullJson, base64Data, haveAnySelected) => {\r\n setMarkingState((st) => {\r\n let newSt = { ...st };\r\n newSt.markingType = newSt.isContinue ? newSt.markingType : null;\r\n newSt.fabricCanvasData = { ...newSt.fabricCanvasData, [pageNo]: fullJson };\r\n newSt.base64FromFabric = { ...newSt.base64FromFabric, [pageNo]: base64Data };\r\n newSt.haveAnySelected = haveAnySelected;\r\n\r\n return newSt;\r\n });\r\n };\r\n\r\n const hasAnythingToSave = () => {\r\n return values(markingState.fabricCanvasData).some((o) => o.objects.length);\r\n };\r\n\r\n const markingTypeSelection = (e, typ) => {\r\n let other;\r\n switch (typ) {\r\n case MarkingType.Stamp:\r\n if (!stampImages.loading && !stampImages.loaded) {\r\n setStampImages((st) => ({ ...st, loading: true }));\r\n getBranchById(workflowData?.jobBasicDetail?.branchID).then((res) => {\r\n const imgs = res.data.stampImages.map((x) => ({ id: x.branchStampID, src: x.branchStampImage }));\r\n setStampImages((st) => ({ ...st, loading: false, loaded: true, images: imgs }));\r\n });\r\n }\r\n other = { isContinue: false, needModal: true };\r\n break;\r\n case MarkingType.Sign:\r\n case MarkingType.Text:\r\n other = { isContinue: false, needModal: true };\r\n break;\r\n case MarkingType.Check:\r\n case MarkingType.Cross:\r\n case MarkingType.NA:\r\n other = { isContinue: true, needModal: false };\r\n break;\r\n case MarkingType.Calendar:\r\n other = { isContinue: false, needModal: false };\r\n break;\r\n case MarkingType.FreeDrawing:\r\n other = { isContinue: true, needModal: false };\r\n break;\r\n default:\r\n other = { markingType: null, isContinue: false, needModal: false };\r\n break;\r\n }\r\n setMarkingState((st) => ({ ...st, ...other, markingType: typ }));\r\n };\r\n\r\n const removeStamp = (stampId) => () => {\r\n setMarkingState((st) => {\r\n let newSt = { ...st };\r\n remove(newSt.stamps, (el) => el.id === stampId);\r\n newSt.stamps = [...newSt.stamps];\r\n return newSt;\r\n });\r\n };\r\n\r\n const addNewStamp = (newStamp, heightWidth) => {\r\n setMarkingState((st) => {\r\n let newSt = { ...st };\r\n newSt.markingType = newSt.isContinue ? newSt.markingType : null;\r\n newSt.stamps = [...newSt.stamps];\r\n const last = { ...newStamp, id: moment().valueOf(), isNew: true, info: { ...newStamp.info, ...heightWidth } };\r\n newSt.stamps.push(last);\r\n return newSt;\r\n });\r\n };\r\n\r\n const setLoadedStamps = (stampData) => {\r\n setMarkingState((st) => ({ ...st, stamps: stampData || [], markingType: null }));\r\n };\r\n\r\n const updateStampInfo = (stampId, info) => {\r\n setMarkingState((st) => {\r\n let newSt = { ...st };\r\n let stamp = st.stamps.find((s) => s.id === stampId);\r\n if (stamp) {\r\n stamp.info = { ...stamp.info, ...info };\r\n }\r\n newSt.stamps = [...newSt.stamps];\r\n return newSt;\r\n });\r\n };\r\n\r\n const saveStampData = async () => {\r\n if (props.canUseNewStamp) {\r\n const canvasofPages = { ...markingState.base64FromFabric };\r\n let res = await saveDocumentStampsV2(state.jobId, state.selectedOcrDocId, state.selectedOcrDocName, canvasofPages);\r\n if (res.success) {\r\n stopMarkingMode();\r\n }\r\n return res;\r\n } else {\r\n const stampObj = { allStamps: markingState.stamps.map((c) => _.omit(c, 'isNew')) };\r\n let res = await saveDocumentStamps(state.jobId, state.selectedOcrDocId, state.selectedOcrDocName, stampObj);\r\n if (res.success) {\r\n setLoadedStamps(stampObj.allStamps);\r\n }\r\n return res;\r\n }\r\n };\r\n\r\n const [workflowData, setWorkflowData] = useState({\r\n currentChanges: {},\r\n fullMergedWorkflowData: {},\r\n tempMergedData: {},\r\n workflowDocs: [],\r\n jobBasicDetail: {},\r\n hasSomethingToSave: false,\r\n hasNotes: false\r\n });\r\n\r\n const updateState = (update) => {\r\n setState((st) => ({\r\n ...st,\r\n ...update\r\n }));\r\n };\r\n\r\n const addDocumentImagesData = (ocrDocId, docName, imgBase64Src) => {\r\n setState((st) => {\r\n const imagesFromUrl = [...st.imagesFromUrl];\r\n imagesFromUrl.push(imgBase64Src);\r\n return {\r\n ...st,\r\n selectedOcrDocId: ocrDocId,\r\n selectedOcrDocName: docName,\r\n imagesFromUrl\r\n };\r\n });\r\n };\r\n\r\n const hasPrev = (pageNo) => {\r\n return pageNo > 0;\r\n };\r\n\r\n const hasNext = (pageNo) => {\r\n let total = state.imagesFromUrl.length;\r\n return pageNo < total - 1;\r\n };\r\n\r\n const dropDownValueSelected = (o) => {\r\n setWorkflowData((dt) => {\r\n const newSt = {\r\n ...dt\r\n };\r\n newSt.currentChanges = {\r\n ...newSt.currentChanges,\r\n ...o\r\n };\r\n newSt.tempMergedData = {\r\n ...newSt.tempMergedData,\r\n ...o\r\n };\r\n newSt.hasSomethingToSave = !_(newSt.currentChanges)\r\n .omitBy((a, b) => (newSt.fullMergedWorkflowData[b] || '') === a)\r\n .isEmpty();\r\n return newSt;\r\n });\r\n };\r\n\r\n const getListOptionById = (id) => {\r\n const list = state.workflowStepsList.filter((l) => l.id === id);\r\n return list && list.length === 1 ? list[0].listOptions : [];\r\n };\r\n const rotateDoc = (explicit = undefined) => {\r\n if (explicit === undefined) {\r\n setScreenState((st) => ({\r\n ...st,\r\n documentRotateBy: (st.documentRotateBy + 90) % 360\r\n }));\r\n } else {\r\n setScreenState((st) => ({\r\n ...st,\r\n documentRotateBy: explicit\r\n }));\r\n }\r\n };\r\n\r\n const changeZoomFactor = (changeBy) => {\r\n setScreenState((st) => ({\r\n ...st,\r\n zoomFactor: Math.min(2.5, Math.max(0.5, st.zoomFactor + changeBy))\r\n }));\r\n };\r\n\r\n const getDocumentFromOcrDocId = (docId) => {\r\n return find(workflowData.workflowDocs, {\r\n ocrDocId: docId\r\n });\r\n };\r\n\r\n const setDocumentWithOcrDocId = (ocrDocId, docName) => {\r\n const doc = getDocumentFromOcrDocId(ocrDocId);\r\n if (doc) {\r\n doc.docName = docName;\r\n setWorkflowData((st) => ({\r\n ...st,\r\n workflowDocs: [...st.workflowDocs]\r\n }));\r\n } else {\r\n setWorkflowData((st) => ({\r\n ...st,\r\n workflowDocs: [\r\n ...st.workflowDocs,\r\n {\r\n ocrDocId,\r\n docName\r\n }\r\n ]\r\n }));\r\n }\r\n };\r\n\r\n const showNotes = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showNotesModal: true\r\n }));\r\n };\r\n\r\n const hideNotesModal = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showNotesModal: false\r\n }));\r\n };\r\n\r\n const notesAdded = () => {\r\n setWorkflowData((st) => ({\r\n ...st,\r\n hasNotes: true\r\n }));\r\n };\r\n\r\n const showHeaderDetailsHandler = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showHeaderDetails: true\r\n }));\r\n };\r\n\r\n const closeHeaderDetails = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showHeaderDetails: false\r\n }));\r\n };\r\n\r\n const showHistory = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showHistoryModal: true\r\n }));\r\n };\r\n\r\n const showReturnReasonHistory = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showReturnReasonHistoryModal: true\r\n }));\r\n };\r\n const hideReturnReasonHistory = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showReturnReasonHistoryModal: false\r\n }));\r\n };\r\n const hideHistoryModal = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showHistoryModal: false\r\n }));\r\n };\r\n\r\n const showReturnReason = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showReturnReasonModal: true\r\n }));\r\n };\r\n\r\n const hideReturnReason = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showReturnReasonModal: false\r\n }));\r\n };\r\n\r\n const handleCustomerNotes = (val) => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showCustomerNotes: val\r\n }));\r\n };\r\n\r\n const showMail = (docInfoToMail) => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showMailModal: true,\r\n docInfoToMail\r\n }));\r\n };\r\n\r\n const hideMail = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showMailModal: false,\r\n docInfoToMail: undefined\r\n }));\r\n };\r\n\r\n const showAllDoc = () => {\r\n pullWorkflowDataAndSet();\r\n setScreenState((st) => ({\r\n ...st,\r\n showAllDocModal: true\r\n }));\r\n };\r\n\r\n const hideAllDoc = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showAllDocModal: false\r\n }));\r\n };\r\n const hideWarningMsg = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showWarning: false\r\n }));\r\n };\r\n\r\n const returnProcessed = async (hasMsg) => {\r\n setWorkflowData((st) => ({\r\n ...st,\r\n hasNotes: hasMsg,\r\n showReturnReasonModal: false\r\n }));\r\n pullWorkflowSteps();\r\n };\r\n\r\n const pullWorkflowSteps = () => {\r\n getWorkflowSteps(state.selectedWorkflowId, state.jobId).then((res) => {\r\n if (res.success) {\r\n updateState({\r\n workflowSteps: res.data.steps\r\n });\r\n }\r\n });\r\n };\r\n\r\n const pullWorkflowDataAndSet = async (val = null) => {\r\n //val is true when we want to move workflow on submit\r\n getWorkflowData(state.jobId).then((res) => {\r\n if (res.success) {\r\n setWorkflowData((st) => ({\r\n ...st,\r\n currentChanges: {},\r\n fullMergedWorkflowData: res.data.workflowData,\r\n tempMergedData: {\r\n ...res.data.workflowData\r\n },\r\n workflowDocs: res.data.documents,\r\n jobBasicDetail: res.data.jobBasicDetail,\r\n hasNotes: res.data.hasNotes,\r\n hasSomethingToSave: false\r\n }));\r\n if (res.data.jobBasicDetail?.workflowID && val) {\r\n history.push(`/Job/${res.data.jobBasicDetail?.jobId}/${res.data.jobBasicDetail?.workflowID}`);\r\n }\r\n }\r\n });\r\n };\r\n\r\n const tryToSaveWorkflowData = async (markComplete) => {\r\n let res = await saveWorkflowData(\r\n state.jobId,\r\n {\r\n done: markComplete,\r\n workflowData: workflowData.currentChanges,\r\n workflowId: state.selectedWorkflowId\r\n },\r\n state.technicianJobId\r\n );\r\n if (res.success) {\r\n pullWorkflowDataAndSet(true);\r\n //setWorkflowData(dt=>({...dt, currentChanges:{}, hasSomethingToSave: false}));\r\n markComplete && pullWorkflowSteps();\r\n }\r\n return res;\r\n };\r\n\r\n const showOcrDocHistoryModal = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showOcrDocHistory: true,\r\n showAllDocModal: false\r\n }));\r\n };\r\n\r\n const hideOcrDocHistoryModal = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showOcrDocHistory: false\r\n }));\r\n pullWorkflowDataAndSet();\r\n };\r\n const onBarCodeClick = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showBarCode: true\r\n }));\r\n };\r\n const onBarCodeClose = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showBarCode: false\r\n }));\r\n };\r\n const onVehicleStatusClick = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n siteVehicle: true\r\n }));\r\n };\r\n\r\n const handleHistoryModal = (val) => {\r\n setScreenState((st) => ({ ...st, history: true }));\r\n };\r\n const closeHistoryModal = (val) => {\r\n setScreenState((st) => ({ ...st, history: false }));\r\n };\r\n\r\n const handleVehicleStatusClose = (res) => {\r\n let newSt = {};\r\n newSt.siteVehicle = false;\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setScreenState((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n const getDocumentHistory = (jobId, ocrDocId) => {\r\n return getOcrDocumentHistoryForJob(jobId, ocrDocId);\r\n };\r\n\r\n useEffect(() => {\r\n if (workflowData.jobBasicDetail.stopFlag) {\r\n setScreenState((st) => ({\r\n ...st,\r\n showWarning: true\r\n }));\r\n }\r\n }, [workflowData.jobBasicDetail.stopFlag]);\r\n\r\n useEffect(() => {\r\n let fulFormFilled = true;\r\n state.workflowSteps\r\n .filter((s) => s.isRequired)\r\n .forEach((s) => {\r\n fulFormFilled = fulFormFilled && !!workflowData.tempMergedData[s.jsonPropertyName];\r\n return fulFormFilled;\r\n });\r\n let isReadonlyWorkflow = !some(state.workflowSteps, (s) => s.isEditable);\r\n setScreenState((st) => ({\r\n ...st,\r\n allFilled: fulFormFilled,\r\n isReadonly: isReadonlyWorkflow\r\n }));\r\n }, [workflowData.tempMergedData, state.workflowSteps]);\r\n\r\n useEffect(() => {\r\n setState((st) => ({\r\n ...st,\r\n jobId: +props.match?.params?.jobId,\r\n selectedWorkflowId: +props.match?.params?.workflowId,\r\n technicianJobId: props.match?.params?.technicianJobId || null,\r\n isTechReadonly: props.match?.params?.isTechReadonly,\r\n fromPage: props.match?.params?.frompage || ''\r\n }));\r\n }, [props.match?.params]);\r\n\r\n useEffect(() => {\r\n pullWorkflowSteps();\r\n pullWorkflowDataAndSet();\r\n }, [state.jobId]);\r\n useEffect(() => {\r\n getWorkflows().then((res) => {\r\n if (res.success) {\r\n const buttons = res.data.map((w) => ({\r\n id: w.id,\r\n label: w.workflowName,\r\n isSelected: w.id === state.selectedWorkflowId\r\n }));\r\n updateState({\r\n workflows: buttons\r\n });\r\n }\r\n });\r\n\r\n pullWorkflowDataAndSet();\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (state.selectedWorkflowId) {\r\n pullWorkflowSteps();\r\n\r\n getWorkflowListsAndOps(state.selectedWorkflowId).then((res) => {\r\n if (res.success) {\r\n updateState({\r\n workflowStepsList: res.data\r\n });\r\n }\r\n });\r\n }\r\n }, [state.selectedWorkflowId]);\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","import React, { useState } from 'react';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport { PrimaryButton, PrimaryCheckbox, SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { AttachFile } from '@material-ui/icons';\r\nimport { mailDocument } from '../../../../Core/Service/workflowJobDocument-service';\r\nimport { CircularProgress, FormControlLabel } from '@material-ui/core';\r\n\r\nconst MailDocModal = props=> {\r\n const wip = props.jobBasicDetail?.wipNumber;\r\n let fileName = `${props.docInfoToMail.ocrDocumentName}_WIP_${wip}`;\r\n const [state, setState] = useState({\r\n toEmail:'',\r\n subject:`${props.docInfoToMail.ocrDocumentName} (WIP - ${wip})`,\r\n body:'',\r\n attachmentName: `${fileName}.pdf`,\r\n ocrDocName:props.docInfoToMail.docName,\r\n allFilled:false,\r\n sending: false,\r\n headerId: props.jobId,\r\n ocrDocId: props.docInfoToMail.ocrDocIdToMail,\r\n sendAllVersions: false,\r\n })\r\n const handleClose = () => {\r\n props.onClose && props.onClose();\r\n };\r\n\r\n const sendDoc = async ()=> {\r\n setState(st=>({...st, sending: true}));\r\n // setTimeout(()=>{\r\n // setState(st=>({...st, sending: false}));\r\n // }, 5000);\r\n let res = await mailDocument({...state});\r\n if(res.success){\r\n props.onClose();\r\n }\r\n setState(st=>({...st, sending: false}));\r\n props.showToast(res.message);\r\n }\r\n\r\n const updateState = e=> {\r\n let { name, value } = e.target;\r\n setState( st => {\r\n let newSt = { ...st }\r\n newSt[name] = value;\r\n newSt.allFilled = newSt.toEmail && newSt.subject;\r\n return newSt;\r\n });\r\n }\r\n\r\n const toggleSendAll = (e) => {\r\n let { checked } = e.target;\r\n setState(st => ({ ...st, sendAllVersions: checked}));\r\n }\r\n\r\n return \r\n Mail Document\r\n
\r\n ×\r\n
\r\n
\r\n \r\n \r\n } label=\"Send all versions\" />\r\n (This will send all the versions as single zip.)\r\n \r\n \r\n
\r\n \r\n {fileName}.{state.sendAllVersions ? 'zip' : 'pdf'}\r\n {state.sendAllVersions &&  (As link in mail.)}\r\n
\r\n
\r\n \r\n Cancel\r\n Send\r\n {state.sending && }\r\n \r\n\r\n \r\n
\r\n}\r\n\r\n\r\nexport default MailDocModal;","import React, { useContext, useState, useRef, useEffect } from 'react';\r\nimport SignaturePad from 'react-signature-canvas';\r\nimport { CustomButton } from '../FormInput';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport BorderColorIcon from '@material-ui/icons/BorderColor';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport { AppStorage } from '../Service/storage-service';\r\nimport AppContext from '../../App/AppContext';\r\nimport './signature.scss';\r\nimport { InputLabel } from '@material-ui/core';\r\nexport const CustomeSignPad = (props) => {\r\n const { showToast } = useContext(AppContext);\r\n\r\n const signCanvas = useRef({});\r\n const [state, setState] = useState({ isSignExist: false });\r\n\r\n useEffect(() => {\r\n signCanvas.current.clear();\r\n signCanvas.current.on();\r\n setState((st) => ({ ...st, isSignExist: false }));\r\n if (props.sign) {\r\n signCanvas.current.fromDataURL(props.sign);\r\n props.sign && signCanvas.current.off();\r\n setState((st) => ({ ...st, isSignExist: true }));\r\n }\r\n }, [props.sign]);\r\n\r\n const useDefaultSig = () => {\r\n let userSign = AppStorage.getSignature();\r\n if (userSign) {\r\n signCanvas.current.fromDataURL(AppStorage.getSignature());\r\n signCanvas.current.off();\r\n setState((st) => ({ ...st, teamleadersign: AppStorage.getSignature() }));\r\n props.onChange && props.onChange({ [props.name]: AppStorage.getSignature() });\r\n } else {\r\n showToast('User signature not found');\r\n }\r\n };\r\n\r\n const clearLeaderSign = () => {\r\n signCanvas.current.clear();\r\n signCanvas.current.on();\r\n props.clearSig();\r\n };\r\n\r\n const GetTeamleaderSign = () => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n teamleadersign: signCanvas.current.toDataURL()\r\n };\r\n return nst;\r\n });\r\n props.onChange && props.onChange({ [props.name]: signCanvas.current.toDataURL() });\r\n };\r\n\r\n return (\r\n \r\n \r\n {props.content}\r\n \r\n \r\n  \r\n {!state.isSignExist && !props.hideBtn && }\r\n {!state.isSignExist && !props.hideBtn && (\r\n \r\n )}\r\n \r\n\r\n {\r\n GetTeamleaderSign();\r\n }}\r\n canvasProps={{\r\n className: `${state.isSignExist || props.hideBtn ? 'existSignature' : 'signatureClass'}`\r\n }}\r\n />\r\n \r\n );\r\n};\r\n","import { useContext, useEffect, useState } from 'react';\r\nimport { Checkbox, FormControl, FormControlLabel, FormGroup, Grid, MenuItem, NativeSelect, Radio, RadioGroup, TextField } from '@material-ui/core';\r\nimport { ToggleButton, ToggleButtonGroup } from '@material-ui/lab';\r\n\r\nimport { makeStyles, useTheme } from '@material-ui/core/styles';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { SelectBox } from '../../../../Core/FormInput';\r\nimport { CustomeSignPad } from '../../../../Core/SignaturePad';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n appSelectBtnGrp: {\r\n // marginRight: 4,\r\n '& button': {\r\n textTransform: 'unset',\r\n wordWrap: 'break-word',\r\n '&.Mui-selected': {\r\n color: (props) => `${props.foregroundColour || 'white'}`,\r\n backgroundColor: (props) => `${props.backgroundColour || 'rgb(83, 175, 80)'}`\r\n },\r\n '&.Mui-selected:hover': {\r\n color: (props) => `${props.foregroundColour || 'white'}`,\r\n backgroundColor: (props) => `${props.backgroundColour || 'rgb(83, 175, 80)'}`\r\n },\r\n '&.MuiToggleButton-sizeSmall': {\r\n // padding: '4px'\r\n },\r\n '&.MuiToggleButton-root:hover': {\r\n backgroundColor: 'lightgray'\r\n }\r\n }\r\n }\r\n}));\r\n\r\nconst DynamicAppSelect = (props) => {\r\n const { portalSettings } = useContext(AppContext);\r\n\r\n const classes = useStyles(props.options.find((m) => m[props.valuePropertyName] === +props.value));\r\n\r\n const ConvertOps = (ops) => {\r\n return ops.map((op) => {\r\n return {\r\n value: `${op[props.valuePropertyName || 'value']}`,\r\n text: `${op[props.textPropertyName || 'text']}`\r\n };\r\n });\r\n };\r\n\r\n const [state, setState] = useState({\r\n value: `${props.value}`,\r\n options: ConvertOps(props.options) || []\r\n });\r\n\r\n useEffect(() => {\r\n setState((st) => ({ ...st, value: props.value }));\r\n }, [props.value]);\r\n\r\n useEffect(() => {\r\n props.options && setState((st) => ({ ...st, options: ConvertOps(props.options) }));\r\n }, [props.options]);\r\n\r\n const handleChange = (e) => {\r\n const val = e.target.value;\r\n setState((st) => ({ ...st, value: val }));\r\n props.onChange && props.onChange({ [props.name]: val });\r\n };\r\n\r\n const clickBtnGrup = (e, val) => {\r\n if (!props.disabled) {\r\n setState((st) => ({ ...st, value: val }));\r\n props.onChange && props.onChange({ [props.name]: val });\r\n }\r\n };\r\n const checkBoxOnchange = (value) => (e) => {\r\n const val = e.target.checked;\r\n let temp = Array.isArray(state.value) ? [...state.value] : [];\r\n if (val) {\r\n temp.push(value);\r\n } else {\r\n const index = temp.indexOf(value);\r\n if (index > -1) {\r\n temp.splice(index, 1);\r\n }\r\n }\r\n setState((st) => ({ ...st, value: temp }));\r\n props.onChange && props.onChange({ [props.name]: temp });\r\n };\r\n\r\n const isValueChecked = (val) => {\r\n let tempArray = state.value || [];\r\n let isvalue = tempArray.includes(+val);\r\n return isvalue;\r\n };\r\n\r\n if (props.displayType == 1) {\r\n return (\r\n \r\n {state.options.map((op, i) => (\r\n \r\n {op.text}\r\n \r\n ))}\r\n \r\n );\r\n } else if (props.displayType == 4) {\r\n return (\r\n \r\n {state.options.length > 0 &&\r\n state.options.map((op, i) => (\r\n \r\n {op.text}\r\n \r\n ))}\r\n \r\n );\r\n } else if (props.displayType == 2) {\r\n return (\r\n \r\n \r\n {state.options.map((op, i) => (\r\n }\r\n label={op.text}\r\n />\r\n ))}\r\n \r\n \r\n );\r\n } else if (props.displayType == 3) {\r\n return (\r\n \r\n {state.options.map((op) => {\r\n return (\r\n \r\n } label={op.text} />\r\n \r\n );\r\n })}\r\n \r\n );\r\n }\r\n};\r\n\r\nexport default DynamicAppSelect;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getDiagnosticSheetsDropDown = async (jobId) => {\r\n let res = await get(`DiagnosticSheets/DropDown`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDiagnosticSheetModelFalutList = async (id) => {\r\n let res = await get(`DiagnosticSheets/GetModelFalutList?Id=${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDiagnosticSheetHeaderDetails = async (HeaderRecordId) => {\r\n let res = await get(`DiagnosticSheets/HeaderDetails?Id=${HeaderRecordId}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getDiagnosticSheetDetails = async (sheetId) => {\r\n let res = await get(`DiagnosticSheets/${sheetId}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const saveDiagnosticSheets = async (data) => {\r\n let res = await post(`DiagnosticSheets `, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import _, { find } from 'lodash';\r\nimport React, { createContext, useEffect, useState } from 'react';\r\nimport {\r\n getDynamicFormDataByID,\r\n getDynamicFormFieldsByFormID,\r\n getOptionsByDynamicFormId,\r\n saveDynamicFormData\r\n} from '../../../../Core/Service/dynamic-forms-service';\r\nimport { getDiagnosticSheetHeaderDetails } from '../../../../Core/Service/diagnosticSheets';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { useContext } from 'react';\r\nimport getMultiImgResized from '../../../../Core/CommonFunctions/multiImgResizer';\r\n\r\nexport const ScreenContext = createContext();\r\n\r\nexport const DynamicFormFieldProvider = (props) => {\r\n const { showToast } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({\r\n workFlowStepList: [],\r\n formFields: [],\r\n selectedOcrDocId: undefined,\r\n selectedOcrDocName: undefined,\r\n imagesFromUrl: [],\r\n showLoader: true,\r\n imageList: []\r\n });\r\n const [dynamicFormData, setDynamicFormData] = useState({\r\n currentChanges: {},\r\n fullMergedWorkflowData: {},\r\n tempMergedData: {},\r\n dynamicFormDescription: '',\r\n workflowDocs: []\r\n });\r\n\r\n const [screenState, setScreenState] = useState({\r\n allFilled: false\r\n });\r\n useEffect(() => {\r\n pullDynamicFormData();\r\n }, [props.headerRecordId]);\r\n\r\n useEffect(async () => {\r\n let res = await getDynamicFormFieldsByFormID(props.dynamicFormID);\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n formFields: res.data.list,\r\n showLoader: false\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(async () => {\r\n let result1 = await getOptionsByDynamicFormId(props.dynamicFormID);\r\n if (result1.success) {\r\n setState((st) => ({\r\n ...st,\r\n workFlowStepList: result1.data\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n let fulFormFilled = true;\r\n state.formFields\r\n .filter((s) => s.isRequired)\r\n .forEach((s) => {\r\n fulFormFilled = fulFormFilled && !!dynamicFormData.tempMergedData[s.jsonPropertyName];\r\n return fulFormFilled;\r\n });\r\n\r\n setScreenState((st) => ({\r\n ...st,\r\n allFilled: fulFormFilled\r\n }));\r\n }, [dynamicFormData.tempMergedData, state.formFields]);\r\n\r\n const pullDynamicFormData = async () => {\r\n let result = await getDiagnosticSheetHeaderDetails(props.headerRecordId);\r\n getDynamicFormDataByID(props.headerRecordId, props.dynamicFormID).then((res) => {\r\n if (res.success) {\r\n setDynamicFormData((st) => ({\r\n ...st,\r\n currentChanges: {},\r\n fullMergedWorkflowData: res.data.dynamicFormData,\r\n tempMergedData: {\r\n ...res.data.dynamicFormData\r\n },\r\n workflowDocs: res.data.documents,\r\n dynamicFormDescription: res.data.dynamicFormDescription,\r\n hasNotes: res.data.hasNotes,\r\n hasSomethingToSave: false,\r\n jobBasicDetail: result?.data?.headerDetails[0] || {}\r\n }));\r\n }\r\n });\r\n };\r\n\r\n const tryToSaveDynamicFormData = async (markComplete) => {\r\n let res = await saveDynamicFormData(props.headerRecordId, props.dynamicFormID, {\r\n done: markComplete,\r\n DynamicFormData: dynamicFormData.currentChanges,\r\n DynamicFormID: props.dynamicFormID\r\n });\r\n if (res.success) {\r\n pullDynamicFormData();\r\n props.closeFormModal();\r\n }\r\n showToast(res.message);\r\n return res;\r\n };\r\n\r\n const getListOptionById = (id) => {\r\n const list = state.workFlowStepList?.filter((l) => l.id === id);\r\n return list && list.length === 1 ? list[0].listOptions : [];\r\n };\r\n\r\n const dropDownValueSelected = (o) => {\r\n setDynamicFormData((dt) => {\r\n const newSt = {\r\n ...dt\r\n };\r\n newSt.currentChanges = {\r\n ...newSt.currentChanges,\r\n ...o\r\n };\r\n newSt.tempMergedData = {\r\n ...newSt.tempMergedData,\r\n ...o\r\n };\r\n newSt.hasSomethingToSave = !_(newSt.currentChanges)\r\n .omitBy((a, b) => (newSt.fullMergedWorkflowData[b] || '') === a)\r\n .isEmpty();\r\n return newSt;\r\n });\r\n };\r\n const updateState = (update) => {\r\n setState((st) => ({\r\n ...st,\r\n ...update\r\n }));\r\n };\r\n\r\n const getDocumentFromOcrDocId = (docId) => {\r\n return find(dynamicFormData.workflowDocs, {\r\n ocrDocId: docId\r\n });\r\n };\r\n\r\n const setDocumentWithOcrDocId = (ocrDocId, docName) => {\r\n const doc = getDocumentFromOcrDocId(ocrDocId);\r\n if (doc) {\r\n doc.docName = docName;\r\n setDynamicFormData((st) => ({\r\n ...st,\r\n workflowDocs: [...st.workflowDocs]\r\n }));\r\n } else {\r\n setDynamicFormData((st) => ({\r\n ...st,\r\n workflowDocs: [\r\n ...st.workflowDocs,\r\n {\r\n ocrDocId,\r\n docName\r\n }\r\n ]\r\n }));\r\n }\r\n };\r\n const addDocumentImagesData = (ocrDocId, docName, imgBase64Src) => {\r\n setState((st) => {\r\n const imagesFromUrl = [...st.imagesFromUrl];\r\n imagesFromUrl.push(imgBase64Src);\r\n return {\r\n ...st,\r\n selectedOcrDocId: ocrDocId,\r\n selectedOcrDocName: docName,\r\n imagesFromUrl\r\n };\r\n });\r\n };\r\n\r\n const showMail = (docInfoToMail) => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showMailModal: true,\r\n docInfoToMail\r\n }));\r\n };\r\n\r\n const hideMail = () => {\r\n setScreenState((st) => ({\r\n ...st,\r\n showMailModal: false\r\n }));\r\n };\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","export default \"data:image/png;base64,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\"","import { useContext, useEffect, useState } from 'react';\r\nimport { CircularProgress, FormLabel, Grid, IconButton, InputLabel, Tooltip } from '@material-ui/core';\r\nimport { Backup, Mail, Visibility } from '@material-ui/icons';\r\nimport { AppSelect, Dialogs, PrimaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { uploadOcrDoc } from '../../../../Core/Service/workflowJobDocument-service';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { useHistory } from 'react-router-dom';\r\nimport DynamicAppSelect from './dynamicAppSelect';\r\nimport { getWorkflowStepList } from '../../../../Core/Service/workflowList-service';\r\nimport { ScreenContext } from './DynamicFormProvider';\r\nimport { CustomeSignPad } from '../../../../Core/SignaturePad';\r\nimport { useCallback } from 'react';\r\nimport doc from '../doc.png';\r\nimport '../workflow-job.scss';\r\n// import DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport MailDocModal from '../more/MailDoc';\r\nimport DialogComp from '../../../../Core/Controls/Dialog/DialogComp';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport { useWindowSize } from '../../../../Core/Controls/ScreenResolution';\r\n\r\nconst useStyles = makeStyles({\r\n inputContainerBackgroundColor: {\r\n backgroundColor: (props) => `${props.backgroundColor}`\r\n },\r\n inputContainerTextColor: {\r\n color: (props) => `${props.textColor}`\r\n }\r\n});\r\n\r\nconst DynamicFormFields = ({ step, jobId, onDropdownChange, dropdownValue, fieldLabel, downloadDocument }) => {\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n const classes = useStyles({ backgroundColor: step.backgroundColor, textColor: step.textColor });\r\n const [uploading, setUploading] = useState(false);\r\n const { showToast } = useContext(AppContext);\r\n const { showMail, state, getListOptionById, setDocumentWithOcrDocId, getDocumentFromOcrDocId, updateState } = useContext(ScreenContext);\r\n const ocrDoc = getDocumentFromOcrDocId(step.ocrDocumentId);\r\n\r\n const ops = step.listId && getListOptionById(step.listId);\r\n\r\n const GetTechnicianSign = (name, val) => {\r\n onDropdownChange({ [name]: val[name] });\r\n };\r\n\r\n const clearSig = (name) => {\r\n onDropdownChange && onDropdownChange({ [name]: '' });\r\n };\r\n\r\n const docAction = (actionType) => {\r\n switch (actionType) {\r\n case 'VIEW':\r\n // downloadDocument(step.ocrDocumentId, ocrDoc.docName);\r\n downloadDocument(jobId, step.fieldId);\r\n updateState({ showDoc: true, selectedFieldData: { fieldId: step.fieldId, showUpload: step.showUpload, isDeleted: step.isDeleted } });\r\n break;\r\n case 'MAIL':\r\n showMail({ ocrDocumentName: step.ocrDocumentName, docName: ocrDoc.docName || '', ocrDocIdToMail: step.ocrDocumentId });\r\n break;\r\n default:\r\n showToast(`Event Type: ${actionType} is not implement yet.`);\r\n }\r\n };\r\n\r\n const getLink = (URL) => {\r\n if (!URL.includes('youtube.com')) {\r\n return URL;\r\n }\r\n if (URL.includes('youtube.com') && !URL.includes('/embed/')) {\r\n return 'https://www.youtube.com/embed/' + URL.split('?v=')[1];\r\n }\r\n return URL;\r\n };\r\n\r\n const getDocumentAction = () => {\r\n if (step.ocrDocumentId) {\r\n return (\r\n <>\r\n {/* {step.showUpload && (\r\n \r\n )} */}\r\n {step.showView && (\r\n \r\n )}\r\n {/* {step.showEmail && (\r\n \r\n )} */}\r\n \r\n );\r\n }\r\n };\r\n\r\n return (\r\n \r\n {step.displayType != 7 && (\r\n \r\n \r\n \r\n {fieldLabel}\r\n \r\n {getDocumentAction()}\r\n \r\n {step.subtitle && (\r\n \r\n \r\n \r\n {step.subtitle}\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n {(step.textURL || step.textImage) && (\r\n \r\n
\r\n {step.textImage && (\r\n
\r\n \r\n
\r\n )}\r\n {step.textURL && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n )}\r\n \r\n {step.displayType == 5 || step.displayType == 6 || step.displayType == 8 || step.displayType == 9 ? (\r\n <>\r\n onDropdownChange({ [step.jsonPropertyName]: e.target.value })}\r\n />\r\n \r\n ) : step.displayType == 1 || step.displayType == 4 || step.displayType == 2 || step.displayType == 3 ? (\r\n \r\n ) : step.displayType == 7 ? (\r\n GetTechnicianSign(step.jsonPropertyName, val)}\r\n content={fieldLabel}\r\n value={dropdownValue}\r\n name={step.jsonPropertyName}\r\n sign={dropdownValue}\r\n clearSig={() => clearSig(step.jsonPropertyName)}\r\n isRequired={step.isRequired}\r\n />\r\n ) : null}\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default DynamicFormFields;\r\n","import React from 'react';\r\n// import { s3URL } from './../../Constants/constants';\r\nconst selfBgCss = {\r\n backgroundSize: 'cover',\r\n backgroundRepeat: 'no-repeat',\r\n backgroundPosition: 'center',\r\n filter: 'blur(8px)',\r\n opacity: '0.5',\r\n height: '100%',\r\n width: '100%',\r\n position: 'absolute',\r\n top: 0,\r\n left: 0\r\n};\r\nconst ImageCard = ({ avtar, selfBg }) => {\r\n if (avtar) {\r\n return (\r\n
\r\n {/* {selfBg &&
} */}\r\n \"wheel\"\r\n
\r\n );\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nexport default ImageCard;\r\n","import React, { useState, useEffect } from 'react';\r\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\r\nimport ChevronLeftIcon from '@material-ui/icons/ChevronLeft';\r\nimport './imageModal.scss';\r\n\r\nimport {\r\n Grid,\r\n Paper,\r\n InputLabel,\r\n TableContainer,\r\n Table,\r\n TableHead,\r\n TableBody,\r\n TableRow,\r\n TableCell,\r\n Button,\r\n Typography,\r\n Tooltip,\r\n CircularProgress,\r\n FormHelperText,\r\n Badge\r\n} from '@material-ui/core';\r\nimport BackupIcon from '@material-ui/icons/Backup';\r\n\r\nimport ImageCard from './imageCard';\r\nimport IndeterminateCheckBoxIcon from '@material-ui/icons/IndeterminateCheckBox';\r\nimport RemoveCircleIcon from '@material-ui/icons/RemoveCircle';\r\n\r\nimport DeleteSweepIcon from '@material-ui/icons/DeleteSweep';\r\nimport { useWindowSize } from '../../../../../Core/Controls/ScreenResolution';\r\nimport { SecondaryButton } from '../../../../../Core/FormInput';\r\nimport DialogComp from '../../../../../Core/Modal/dialogModal';\r\n\r\nconst MultiImageSliderModal = (props) => {\r\n const [windowWidth, windowHeight] = useWindowSize();\r\n\r\n const [image, setImage] = useState();\r\n\r\n const scrollNext = (id) => {\r\n document.getElementById('slider-scroll').scrollBy({ left: 100, top: 0, behavior: 'smooth' });\r\n };\r\n\r\n const scrollPrev = (id) => {\r\n document.getElementById('slider-scroll').scrollBy({ left: -100, top: 0, behavior: 'smooth' });\r\n };\r\n\r\n const setCurrentImage = (image) => {\r\n setImage(image);\r\n };\r\n\r\n const TitleComp = (props) => (\r\n
\r\n
Documents
\r\n
\r\n );\r\n\r\n return (\r\n \r\n }\r\n onClose={props.onClose}\r\n maxWidth=\"md\"\r\n fullWidth\r\n className=\"dialog-container\"\r\n >\r\n
\r\n {props.disabled ? null : (\r\n
\r\n \r\n {props.isUploading && }\r\n
\r\n )}\r\n {props.isLoading ? (\r\n
\r\n \r\n
\r\n ) : props.imageList.length > 0 ? (\r\n \r\n ) : (\r\n
\r\n No image found\r\n
\r\n )}\r\n
\r\n
\r\n {props.imageList.map((im, i) => (\r\n \r\n {!props.isDelete ? null : (\r\n \r\n props.onImageRemove(im)} style={{ fill: '#f44336', cursor: 'pointer' }} />\r\n \r\n )}\r\n setCurrentImage(im.docFile)} src={im.docFile} />\r\n \r\n ))}\r\n
\r\n scrollPrev()}>\r\n \r\n \r\n scrollNext()}>\r\n \r\n \r\n
\r\n
\r\n
\r\n {/* {props.disabled ? null : (\r\n
\r\n Submit\r\n
\r\n )} */}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default MultiImageSliderModal;\r\n","import { CircularProgress, FormLabel, Grid, Typography } from '@material-ui/core';\r\nimport { Alert } from '@material-ui/lab';\r\nimport { useContext, useState } from 'react';\r\nimport { SecondaryButton } from '../../../../Core/FormInput';\r\nimport MailDocModal from '../more/MailDoc';\r\nimport DynamicFormFields from './dynamicFormFields';\r\nimport { DynamicFormFieldProvider as StateProvider, ScreenContext } from './DynamicFormProvider';\r\nimport doc from '../doc.png';\r\nimport { getDocumentByName } from '../../../../Core/Service/workflowJobDocument-service';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport { useCallback } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { getGetDynamicFormDocuments, deleteDocDynamicFormField, saveDynamicFormFieldUploadDoc } from '../../../../Core/Service/dynamic-forms-service';\r\nimport MultiImageSliderModal from './MultiImageSliderModal';\r\nimport getMultiImgResized from '../../../../Core/CommonFunctions/multiImgResizer';\r\nimport { useWindowSize } from '../../../../Core/Controls/ScreenResolution';\r\n\r\nconst RenderForm = (props) => {\r\n const { headerRecordId, dynamicFormID } = props;\r\n const { state, dropDownValueSelected, dynamicFormData, tryToSaveDynamicFormData, screenState, hideMail, addDocumentImagesData, updateState } =\r\n useContext(ScreenContext);\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n const { allFilled } = screenState;\r\n const saveBtnEnabled = allFilled;\r\n\r\n const [currentPageNo, setPageNo] = useState(0);\r\n const { showToast } = useContext(AppContext);\r\n\r\n const downloadDocument = async (jobId, fieldId) => {\r\n updateState({\r\n isLoading: true\r\n });\r\n let res = await getGetDynamicFormDocuments(jobId, fieldId);\r\n if (res.success) {\r\n updateState({\r\n isLoading: false,\r\n imageList: res.data || []\r\n });\r\n } else {\r\n updateState({\r\n isLoading: false\r\n });\r\n }\r\n };\r\n\r\n const uploadFiles = async (e, arrName) => {\r\n const formData = new FormData();\r\n for (let i = 0; i < e.target.files.length; i++) {\r\n formData.append(e.target.files[i].name, e.target.files[i]);\r\n }\r\n updateState({\r\n isUploading: true\r\n });\r\n let res = await saveDynamicFormFieldUploadDoc(headerRecordId, state.selectedFieldData?.fieldId, formData);\r\n if (res.success) {\r\n downloadDocument(headerRecordId, state.selectedFieldData?.fieldId);\r\n showToast('File Uploaded successfully.');\r\n updateState({\r\n isUploading: false\r\n });\r\n }\r\n };\r\n\r\n const onImageRemove = async (data) => {\r\n let res = await deleteDocDynamicFormField(headerRecordId, data.id);\r\n if (res.success) {\r\n let tempData = state.imageList;\r\n let objIndex = tempData.findIndex((x) => x.id === data.id);\r\n if (objIndex > -1) {\r\n tempData.splice(objIndex, 1);\r\n }\r\n updateState({\r\n imageList: tempData\r\n });\r\n // downloadDocument(headerRecordId, state.selectedFieldData?.fieldId);\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n const pullDocumentWithPage = useCallback(async (docId, docName, pageNo = 1) => {\r\n return getDocumentByName(docName, pageNo).then((res) => {\r\n addDocumentImagesData(docId, docName, res.imgBase64Src);\r\n return res.hasMorePage && pullDocumentWithPage(docId, docName, pageNo + 1);\r\n });\r\n }, []);\r\n\r\n const displayDoc = () => {\r\n if (state.imagesFromUrl.length === 0) {\r\n return \"No;\r\n } else {\r\n return (\r\n
\r\n \"Document's\"\r\n
\r\n );\r\n }\r\n };\r\n\r\n const mainContainerPaddingPercentage = WindowWidths < 500 ? '3%' : WindowWidths < 800 ? '6%' : WindowWidths < 1200 ? '10%' : '20%';\r\n\r\n return (\r\n \r\n {state.showLoader ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n {dynamicFormData.dynamicFormDescription}\r\n \r\n \r\n\r\n \r\n * Required\r\n \r\n\r\n \r\n
\r\n
\r\n \r\n {state.formFields.map((s, i) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n })}\r\n
\r\n \r\n tryToSaveDynamicFormData(false)} disabled={!saveBtnEnabled}>\r\n Save\r\n \r\n \r\n \r\n Cancel\r\n \r\n
\r\n )}\r\n\r\n {state.showDoc && (\r\n \r\n updateState({\r\n showDoc: false,\r\n imageList: []\r\n })\r\n }\r\n />\r\n )}\r\n\r\n {screenState.showMailModal && (\r\n \r\n )}\r\n \r\n );\r\n};\r\nconst Screen = (props) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Screen;\r\n","import { useContext, useEffect, useState } from 'react';\r\nimport { CircularProgress, DialogTitle, Grid, IconButton, Tooltip } from '@material-ui/core';\r\nimport { Backup, Mail, Visibility } from '@material-ui/icons';\r\nimport { AppSelect, Dialogs, PrimaryButton, TextBox } from '../../../Core/FormInput';\r\nimport { ScreenContext } from './WorkflowJob.Provider';\r\nimport { uploadOcrDoc } from '../../../Core/Service/workflowJobDocument-service';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { useHistory } from 'react-router-dom';\r\nimport RenderForm from './DynamicForm/renderForm';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\nconst WorkflowStep = ({ step, jobId, onDropdownChange, dropdownValue, onDocumentAction, technicianJobId, isTechReadonly }) => {\r\n const [uploading, setUploading] = useState(false);\r\n const { showToast } = useContext(AppContext);\r\n const { updateState, state, screenState, getListOptionById, getDocumentFromOcrDocId, setDocumentWithOcrDocId } = useContext(ScreenContext);\r\n\r\n const ops = step.stepListId && getListOptionById(step.stepListId);\r\n const ocrDoc = getDocumentFromOcrDocId(step.ocrDocumentId);\r\n const enableViewEmail = ocrDoc && ocrDoc.docName;\r\n const showDoc = () => {\r\n updateState({ tabView: false });\r\n docAction('VIEW');\r\n };\r\n const docAction = (actionType) => {\r\n onDocumentAction &&\r\n onDocumentAction({\r\n eventType: actionType,\r\n stepId: step.stepId,\r\n ocrDocumentId: step.ocrDocumentId,\r\n doc: ocrDoc,\r\n step\r\n });\r\n };\r\n\r\n const uploadDoc = async (e) => {\r\n const firstFile = e.target.files[0];\r\n if (firstFile) {\r\n const formData = new FormData();\r\n formData.append(firstFile.name, firstFile);\r\n setUploading(true);\r\n let res = await uploadOcrDoc(state.jobId, step.ocrDocumentId, formData);\r\n setDocumentWithOcrDocId(step.ocrDocumentId, res.data.docName);\r\n setUploading(false);\r\n if (res.success) {\r\n showToast('File Uploaded successfully.');\r\n }\r\n }\r\n };\r\n\r\n const getDocumentAction = () => {\r\n if (step.ocrDocumentId) {\r\n return (\r\n <>\r\n {step.ocrDocument_ShowUpload && (\r\n \r\n \r\n \r\n )}\r\n {step.ocrDocument_ShowView && (\r\n \r\n showDoc('VIEW')}\r\n disabled={!enableViewEmail}\r\n >\r\n \r\n \r\n \r\n )}\r\n {step.ocrDocument_ShowEmail && (\r\n \r\n docAction('MAIL')} disabled={!enableViewEmail}>\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n };\r\n\r\n return (\r\n
\r\n
\r\n
\r\n {step.stepLabel}\r\n {step.isRequired && *}\r\n
\r\n
{getDocumentAction()}
\r\n
\r\n
\r\n {step.isTextboxType ? (\r\n onDropdownChange({ [step.jsonPropertyName]: e.target.value })}\r\n />\r\n ) : (\r\n ops && (\r\n \r\n )\r\n )}\r\n {step.webFormTypeId && (\r\n \r\n )}\r\n {step.dynamicFormID && (\r\n \r\n )}\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst StepWebFormButton = ({ ops, step, jobId, navigate, technicianJobId, isTechReadonly }) => {\r\n const { workflowData, tryToSaveWorkflowData } = useContext(ScreenContext);\r\n const [showStepWebFormModal, setShowStepWebFormModal] = useState(false);\r\n\r\n const openStepWebformModal = () => {\r\n if (workflowData.hasSomethingToSave) {\r\n tryToSaveWorkflowData(false); //false: just save data, but dont mark step completed.\r\n }\r\n setShowStepWebFormModal(true);\r\n };\r\n\r\n const closeStepWebformModal = () => setShowStepWebFormModal(false);\r\n\r\n const effectiveLabel = step.webFormButtonLabel || step.webFormTypeName;\r\n const iFrameHeaderName = step.stepLabel || step.webFormButtonLabel || step.webFormTypeName;\r\n const history = useHistory();\r\n useEffect(() => {\r\n const listenMsg = ({ data }) => {\r\n if (data.type === 'close-modal') {\r\n closeStepWebformModal();\r\n } else if (data.type === 'navigate-dashboard') {\r\n history.push('/');\r\n }\r\n };\r\n window.addEventListener('message', listenMsg);\r\n return () => {\r\n window.removeEventListener('message', listenMsg);\r\n };\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n {effectiveLabel}\r\n \r\n {showStepWebFormModal && (\r\n \r\n )}\r\n \r\n );\r\n};\r\nconst StepWebFormModal = ({ step, closeModal, jobId, screenName, navigate, url, technicianJobId, isTechReadonly }) => {\r\n const { userRoles } = useContext(AppContext);\r\n const isTechnician = userRoles.includes('technician');\r\n const isInternal = userRoles.includes('internal');\r\n const newUrl = () => {\r\n if (isTechnician) {\r\n if (url == '/technicianwriteup') {\r\n return `${url}/${jobId}/${technicianJobId}/${isTechReadonly}/?fromStep=true&navigate=${navigate}`;\r\n } else if (url == '/partrequisitions' || url == '/partreq-approve' || url == '/partreq-qty-issue') {\r\n return `${url}/${jobId}/${technicianJobId}/${isTechReadonly}/?fromStep=true&navigate=${navigate}`;\r\n } else {\r\n return `${url}/${jobId}/?fromStep=true&navigate=${navigate}`;\r\n }\r\n }\r\n if (isInternal) {\r\n if (url == '/defectsworkshopcontroller') {\r\n return `${url}/${jobId}/${!step.isEditable}/?fromStep=true&navigate=${navigate}`;\r\n } else {\r\n return `${url}/${jobId}/?fromStep=true&navigate=${navigate}`;\r\n }\r\n } else {\r\n return `${url}/${jobId}/?fromStep=true&navigate=${navigate}`;\r\n }\r\n };\r\n const [loading, setLoading] = useState(true);\r\n return (\r\n \r\n \r\n {screenName}\r\n
\r\n \r\n ×\r\n \r\n
\r\n
\r\n {loading && }\r\n \r\n )}\r\n \r\n );\r\n};\r\nexport default ViewPdfModal;\r\n","import React, { useEffect, useState, useMemo } from 'react';\r\nimport moment from 'moment';\r\nimport { Grid, FormLabel, IconButton } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { SingelSelect, TextBox } from '../../../../../Core/FormInput';\r\nimport { ExpBaseURL } from '../../../../../Core/Service/http-calls';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport GetWIPHeader from '../../GetWIPDetails';\r\nimport DialogComp from '../../../../../Core/Controls/Dialog/DialogComp';\r\nimport { getAgedMeasuresViewDocument } from '../../../../../Core/Service/ReportScreens-service';\r\nimport ViewPdfModal from '../../../../../Core/Modal/PdfViweModal';\r\nimport ReactDOM from 'react-dom';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { GetExcelFileFromEndpoint } from '../../../../../Core/Service/reportService';\r\nimport AppContext from '../../../../../App/AppContext';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { useContext } from 'react';\r\nimport { GetBranchDeportmentScreenDropdowns } from '../../../../../Core/Service/reportService';\r\n\r\nconst baseColumns = [\r\n { field: 'bn', title: `Branch`, width: 180 },\r\n { field: 'sold', title: `Sold Hours`, width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.ToFixedSeparator },\r\n { field: 'taken', title: `Taken Hours`, width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.ToFixedSeparator },\r\n { field: 'eff', title: `Efficiency %`, width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.ToFixedSeparator },\r\n { field: 'sale', title: `Sale Value`, width: 150, align: 'right', renderer: formatters.CurrencyThousandSeparator, filterable: false, sortable: false },\r\n { field: 'cost', title: `Cost Value`, width: 120, align: 'right', renderer: formatters.CurrencyThousandSeparator, filterable: false, sortable: false },\r\n { field: 'profit', title: `Profit`, width: 120, align: 'right', renderer: formatters.CurrencyThousandSeparator, filterable: false, sortable: false },\r\n { field: 'marginPerc', title: 'Margin %', width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.ToFixedSeparator },\r\n { field: 'recRate', title: 'Rec Rate ', width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.CurrencyThousandSeparator }\r\n];\r\n\r\nvar opColumns = [\r\n { title: 'Operator', field: 'opName', width: 90, sortable: true },\r\n { title: 'Sold', field: 'sold', width: 70, sortable: true, align: 'right' },\r\n { title: 'Taken', field: 'taken', width: 70, sortable: true, align: 'right' },\r\n { title: '% Eff.', field: 'eff', width: 66, sortable: true, align: 'right' },\r\n { title: 'Sale Value', field: 'sale', width: 80, sortable: true, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { title: 'Cost Value', field: 'cost', width: 80, sortable: true, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { title: 'Profit', field: 'profit', width: 80, sortable: true, align: 'right' },\r\n { title: 'Margin %', field: 'marginPerc', width: 60, sortable: true, align: 'right' },\r\n { title: 'Rec Rate ', renderer: formatters.CurrencyThousandSeparator, field: 'recRate', width: 60, sortable: true, align: 'right' }\r\n];\r\n\r\nconst wipColumns = [\r\n { title: 'WIP', field: 'wipNumber', width: 70, sortable: true },\r\n { title: 'Invoice No', field: 'invoiceNumber', width: 70, sortable: true },\r\n { title: 'Customer', field: 'customersName', width: 130, sortable: true },\r\n { title: 'Sold', field: 'sold', width: 70, sortable: true, align: 'right' },\r\n { title: 'Taken', field: 'taken', width: 70, sortable: true, align: 'right' },\r\n { title: '% Eff.', field: 'eff', width: 70, sortable: true, align: 'right' },\r\n { title: 'Sale Value', field: 'sale', width: 60, sortable: true, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { title: 'Cost Value', field: 'cost', width: 70, sortable: true, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { title: 'Profit', field: 'profit', width: 70, sortable: true, align: 'right' },\r\n { title: 'Margin %', field: 'marginPerc', width: 70, sortable: true, align: 'right' },\r\n { title: 'Rec Rate ', field: 'recRate', width: 70, sortable: true, align: 'right', renderer: formatters.CurrencyThousandSeparator }\r\n];\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Services', active: true },\r\n { name: 'Invoiced Hours', active: true }\r\n];\r\nvar mainGrid, opGrid, wipsGrid;\r\nvar $ = window.$;\r\n\r\nconst InvoicedHours = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamStartDateType = params.get('startDateType') || '';\r\n let ParamBranchID = params.get('branchID') || '';\r\n\r\n let dateType = ParamStartDateType == 'ytd' ? 'year' : 'month';\r\n let startDate = moment().startOf(`${dateType}`).format('YYYY-MM-DD');\r\n let endDate = moment().format('YYYY-MM-DD');\r\n\r\n const [state, setState] = useState({\r\n startDate: startDate,\r\n endDate: endDate,\r\n BranchList: [],\r\n branchID: null\r\n });\r\n\r\n useEffect(async () => {\r\n let res = await GetBranchDeportmentScreenDropdowns();\r\n if (res.success) {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.BranchList = res.data?.branchList || [];\r\n if (ParamBranchID) {\r\n newSt.branchID = res.data?.branchList.find((r) => r.id == ParamBranchID);\r\n }\r\n return newSt;\r\n });\r\n }\r\n }, []);\r\n\r\n const fieldChange = (e) => {\r\n let { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n let token = AppStorage.getToken();\r\n\r\n const mainGridOnSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n mainGrid.render(obj);\r\n };\r\n\r\n const opGridOnSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n opGrid.render(obj);\r\n };\r\n const onSuccessWipFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n wipsGrid.render(obj);\r\n };\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showWIPDetails: true, wipNumber: record.wipNumber, company: record.company }))}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const documentHandler = async (record) => {\r\n let res = await getAgedMeasuresViewDocument(record.invoiceFileName);\r\n if (res) {\r\n setState((st) => ({ ...st, showPdfModal: true, pdfFileData: res }));\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n\r\n const docEditButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n let isFile = record.invoiceFileName;\r\n const lnk = (\r\n documentHandler(record) : ''}>\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const NewWipcolumns = useMemo(() => {\r\n const tempCols = [...wipColumns];\r\n let wipNumberCol = tempCols.find((element) => element.field === 'wipNumber');\r\n let ViewDocCol = tempCols.find((element) => element.field === 'invoiceNumber');\r\n if (ViewDocCol) {\r\n ViewDocCol.renderer = docEditButton;\r\n }\r\n if (wipNumberCol) {\r\n wipNumberCol.renderer = editButton({});\r\n }\r\n return tempCols;\r\n });\r\n let getUrl = `${ExpBaseURL}/api/services/DailyInvoicedHours?StartDate=${state.startDate}&EndDate=${state.endDate}&branchID=${state.branchID?.id || ''}`;\r\n\r\n const pullInvoiceHours = async () => {\r\n window.$(`#tb_InvoicedHours`).grid('destroy', true, true);\r\n\r\n mainGrid = $('#tb_InvoicedHours').grid({\r\n primaryKey: 'branchID',\r\n\r\n dataSource: {\r\n url: getUrl,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: mainGridOnSuccessFunc\r\n },\r\n detailTemplate: '
',\r\n columns: baseColumns,\r\n pager: { limit: 15 }\r\n });\r\n mainGrid.on('dataBound', function (e, records, totalRecords) {\r\n var recordsCount = records.length;\r\n var sumsold = 0,\r\n sumtaken = 0,\r\n sumeff = 0,\r\n sumsale = 0,\r\n sumcost = 0,\r\n sumprofit = 0,\r\n summarginPerc = 0,\r\n sumrecRate = 0,\r\n $tfoot;\r\n $.each(records, function () {\r\n sumsold += parseFloat(this.sold);\r\n sumtaken += parseFloat(this.taken);\r\n sumeff += parseFloat(this.eff);\r\n sumsale += parseFloat(this.sale);\r\n sumcost += parseFloat(this.cost);\r\n sumprofit += parseFloat(this.profit);\r\n summarginPerc += parseFloat(this.marginPerc);\r\n sumrecRate += parseFloat(this.recRate);\r\n });\r\n sumeff = parseFloat((sumsold / sumtaken) * 100);\r\n summarginPerc = parseFloat(summarginPerc / recordsCount);\r\n sumrecRate = parseFloat(sumrecRate / recordsCount);\r\n $tfoot = mainGrid.children('tfoot');\r\n $tfoot.children('tr[data-role=\"TotalAmount\"]').remove();\r\n $tfoot.children('tr[data-role=\"pager\"]').remove();\r\n $tfoot.prepend(\r\n ''\r\n );\r\n });\r\n mainGrid.on('detailExpand', function (e, $detailWrapper, branchID) {\r\n opGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID },\r\n primaryKey: 'opno',\r\n\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/DailyInvoicedHours?StartDate=${state.startDate}&EndDate=${state.endDate}&Mode=B`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: opGridOnSuccessFunc\r\n },\r\n columns: opColumns,\r\n pager: { limit: 10 },\r\n detailTemplate: '
Total' +\r\n formatters.ToFixedSeparator(sumsold) +\r\n '' +\r\n formatters.ToFixedSeparator(sumtaken) +\r\n '' +\r\n formatters.ToFixedSeparator(sumeff) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumsale) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumcost) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumprofit) +\r\n '' +\r\n formatters.ToFixedSeparator(summarginPerc) +\r\n '' +\r\n formatters.ToFixedSeparator(sumrecRate) +\r\n '
'\r\n });\r\n\r\n opGrid.on('detailExpand', function (e, $detailWrapper, opno) {\r\n wipsGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID, opno: opno },\r\n primaryKey: 'id',\r\n\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/DailyInvoicedHours?StartDate=${state.startDate}&EndDate=${state.endDate}`,\r\n headers: {\r\n Authorization: `Bearer ${token}`,\r\n domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host\r\n },\r\n success: onSuccessWipFunc\r\n },\r\n columns: NewWipcolumns,\r\n pager: { limit: 10 }\r\n });\r\n });\r\n\r\n opGrid.on('detailCollapse', function (e, $detailWrapper, opno) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n });\r\n mainGrid.on('detailCollapse', function (e, $detailWrapper, id) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n mainGrid.reload();\r\n };\r\n useEffect(() => {\r\n if (state.BranchList.length > 0) {\r\n pullInvoiceHours();\r\n }\r\n }, [state.startDate, state.endDate, state.branchID, state.BranchList]);\r\n\r\n const downloadCSVWrapper = async () => {\r\n showToast('Collating Data... This may take a while.');\r\n const data = mainGrid.data().params;\r\n let downloadURL = `services/DailyInvoicedHours?StartDate=${state.startDate}&EndDate=${state.endDate}${getUrl.includes('?') ? '&' : '?'}fileType=excel`;\r\n for (let key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n const value = data[key];\r\n downloadURL += `&${key}=${value}`;\r\n }\r\n }\r\n await GetExcelFileFromEndpoint(downloadURL, 'InvoicedHours');\r\n };\r\n const singleSelectChange = (nm) => (ev, val) => {\r\n setState((st) => {\r\n let newSt = { ...st, [nm]: val };\r\n return newSt;\r\n });\r\n };\r\n return (\r\n
\r\n \r\n {state.showWIPDetails && (\r\n setState((st) => ({ ...st, showWIPDetails: false }))} maxWidth=\"xl\" fullWidth>\r\n \r\n \r\n )}\r\n {state.showPdfModal ? (\r\n setState((st) => ({ ...st, showPdfModal: false }))} fullWidth>\r\n \r\n \r\n ) : null}\r\n \r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n Select Branch\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default InvoicedHours;\r\n","import React, { useEffect, useState } from 'react';\r\nimport moment from 'moment';\r\nimport { Grid, FormLabel, IconButton } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { TextBox } from '../../../../../Core/FormInput';\r\nimport { ExpBaseURL } from '../../../../../Core/Service/http-calls';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { GetExcelFileFromEndpoint } from '../../../../../Core/Service/reportService';\r\nimport AppContext from '../../../../../App/AppContext';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { useContext } from 'react';\r\n\r\nconst nominalColumns = [\r\n { title: 'Technician', field: 'rn', width: 100, sortable: true },\r\n { title: 'Total Idle Hours', field: 'totalIdleHours', width: 100, sortable: true, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Productive Hours', field: 'productiveHours', width: 90, sortable: true, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Non Productive Hours', field: 'nonProductiveHours', width: 100, align: 'right', sortable: true, renderer: formatters.ToFixedSeparator }\r\n];\r\n\r\nconst techCol = [\r\n { title: 'Idle Reason', align: 'right', field: 'idle', width: 100 },\r\n { title: 'Hour Taken', field: 'ht', width: 100, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Date In', field: 'di', width: 90, align: 'right' },\r\n { title: 'Date Out', field: 'do', width: 90, align: 'right' },\r\n { title: 'Adj Mode', field: 'adj', width: 100, align: 'right' },\r\n { title: 'Shift', field: 'sn', width: 100, align: 'right' }\r\n];\r\n\r\nconst baseColumns = [\r\n { field: 'bn', title: 'Branch' },\r\n { field: 'totalIdleHours', title: 'Total Idle Hours', align: 'right', renderer: formatters.ToFixedSeparator },\r\n { field: 'productiveHours', title: 'Productive Hours', align: 'right', renderer: formatters.ToFixedSeparator },\r\n { field: 'nonProductiveHours', title: 'Non Productive Hours', align: 'right', renderer: formatters.ToFixedSeparator }\r\n];\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Services', active: true },\r\n { name: 'Idle Time Analysis', active: true }\r\n];\r\n\r\nvar $ = window.$;\r\nvar mainGrid, opGrid, techGrid;\r\n\r\nconst IdleTimeAnalysis = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n\r\n let startDate = moment().startOf('month').format('YYYY-MM-DD');\r\n let endDate = moment().format('YYYY-MM-DD');\r\n\r\n const [state, setState] = useState({\r\n startDate: startDate,\r\n endDate: endDate\r\n });\r\n const fieldChange = (e) => {\r\n let { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n let token = AppStorage.getToken();\r\n const onSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n mainGrid.render(obj);\r\n };\r\n\r\n const onSuccessOperatorFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n opGrid.render(obj);\r\n };\r\n\r\n const onSuccessTechFun = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n techGrid.render(obj);\r\n };\r\n let getUrl = `${ExpBaseURL}/api/services/IdleTimeAnalysis`;\r\n\r\n const PullSalesNominalData = async () => {\r\n window.$(`#IdleTimeAnalysis`).grid('destroy', true, true);\r\n mainGrid = $('#IdleTimeAnalysis').grid({\r\n primaryKey: 'branchID',\r\n dataSource: {\r\n url: getUrl,\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: onSuccessFunc\r\n },\r\n detailTemplate: '
',\r\n headerFilter: false,\r\n columns: baseColumns,\r\n pager: { limit: 10 }\r\n });\r\n mainGrid.on('dataBound', function (e, records, totalRecords) {\r\n var sumIdleHours = 0,\r\n sumProductiveHours = 0,\r\n sumNonProductiveHours = 0,\r\n $tfoot;\r\n $.each(records, function () {\r\n sumIdleHours += parseFloat(this.totalIdleHours);\r\n sumProductiveHours += parseFloat(this.productiveHours);\r\n sumNonProductiveHours += parseFloat(this.nonProductiveHours);\r\n });\r\n $tfoot = mainGrid.children('tfoot');\r\n $tfoot.children('tr[data-role=\"TotalAmount\"]').remove();\r\n $tfoot.children('tr[data-role=\"pager\"]').remove();\r\n $tfoot.prepend(\r\n ''\r\n );\r\n });\r\n mainGrid.on('detailExpand', function (e, $detailWrapper, branchID) {\r\n opGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID },\r\n headerFilter: false,\r\n primaryKey: 'rc',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/IdleTimeAnalysis`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n success: onSuccessOperatorFunc\r\n },\r\n columns: nominalColumns,\r\n detailTemplate: '
Total' +\r\n formatters.ToFixedSeparator(sumIdleHours) +\r\n '' +\r\n formatters.ToFixedSeparator(sumProductiveHours) +\r\n '' +\r\n formatters.ToFixedSeparator(sumNonProductiveHours) +\r\n '
'\r\n });\r\n\r\n opGrid.on('detailExpand', function (e, $detailWrapper, rc) {\r\n console.log(rc, 'ressss');\r\n techGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID, res: rc },\r\n headerFilter: false,\r\n primaryKey: 'rn',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/IdleTimeAnalysis`,\r\n headers: {\r\n Authorization: `Bearer ${token}`,\r\n domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host\r\n },\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n success: onSuccessTechFun\r\n },\r\n columns: techCol\r\n });\r\n });\r\n opGrid.on('detailCollapse', function (e, $detailWrapper, id) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n });\r\n\r\n mainGrid.on('detailCollapse', function (e, $detailWrapper, id) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n mainGrid.reload();\r\n };\r\n useEffect(() => {\r\n PullSalesNominalData();\r\n }, [state.startDate, state.endDate, props.type]);\r\n const downloadCSVWrapper = async () => {\r\n showToast('Collating Data... This may take a while.');\r\n const data = mainGrid.data().params;\r\n let downloadURL = `services/IdleTimeAnalysis${getUrl.includes('?') ? '&' : '?'}fileType=excel&StartDate=${state.startDate}&EndDate=${state.endDate}`;\r\n for (let key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n const value = data[key];\r\n downloadURL += `&${key}=${value}`;\r\n }\r\n }\r\n await GetExcelFileFromEndpoint(downloadURL, 'IdelTimeAnalysis');\r\n };\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n );\r\n};\r\nexport default IdleTimeAnalysis;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport { useHistory } from 'react-router-dom';\r\nimport ReactDOM from 'react-dom';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\n\r\nlet addCommas = (val) => {\r\n return val ? `£${val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '£0.00';\r\n};\r\n\r\nconst baseColumns = [\r\n { field: 'agedMeasureDescription', sortable: false, title: `Measures`, width: 180, filterable: false },\r\n {\r\n field: 'currentProvision',\r\n title: `Current Provision`,\r\n width: 120,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true\r\n },\r\n {\r\n title: `Provision Required`,\r\n field: 'provisionRequired',\r\n sortable: true,\r\n width: 130,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true\r\n },\r\n {\r\n field: 'provisionDifference',\r\n sortable: true,\r\n title: `Provision Difference`,\r\n width: 130,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true\r\n },\r\n { field: 'totalAmount', sortable: true, title: `Total`, width: 120, showColumnTotal: true, align: 'right', filterable: false, isCurrency: true },\r\n { field: 'currentMonthTotal', sortable: true, title: `Current`, width: 120, showColumnTotal: true, align: 'right', filterable: false, isCurrency: true },\r\n {\r\n field: 'oneMonthTotal',\r\n sortable: true,\r\n title: `1 Month`,\r\n width: 120,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n isCurrency: true\r\n },\r\n { field: 'twoMonthsTotal', sortable: true, title: `2 Month`, width: 120, showColumnTotal: true, align: 'right', filterable: false, isCurrency: true },\r\n { field: 'threeMonthsTotal', sortable: true, title: `3 Month`, width: 120, showColumnTotal: true, align: 'right', filterable: false, isCurrency: true },\r\n {\r\n field: 'fourMonthsAndOverTotal',\r\n sortable: true,\r\n title: '4+ Month',\r\n width: 120,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n isCurrency: true\r\n },\r\n {\r\n field: 'unallocatedItemsTotal',\r\n title: 'Unallocated',\r\n width: 120,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true\r\n }\r\n];\r\n// const crumbs = (measuredesc) => [\r\n// { name: 'Home', path: '/' },\r\n// { name: 'Aged Measures', path: '/AgedMeasures' },\r\n// { name: measuredesc, active: true }\r\n// ];\r\n\r\nconst crumbs = (val, menuPermissionCounter) => {\r\n let list = [{ name: 'Home', path: '/' }];\r\n if (menuPermissionCounter !== 1) {\r\n list.push({ name: 'Reports', path: '/ReportsDashboard' });\r\n }\r\n if (val) {\r\n list.push({ name: 'Aged Measures', path: '/AgedMeasures' }, { name: val, active: true });\r\n }\r\n return list;\r\n};\r\nconst AgedMeasuresDashBoard = (props) => {\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n const history = useHistory();\r\n\r\n const redirectToScreens = (value, record) => {\r\n history.push({\r\n pathname: `/AgedMeasures/${record.agedMeasureDescription.replace(/\\s/g, '')}`\r\n });\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n redirectToScreens(value, record)} style={{ cursor: 'pointer' }}>\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n // const totalAmountWrapper = (value, record) => {\r\n // const spn = document.createElement('span');\r\n // const lnk = (\r\n // \r\n // {addCommas(record.currentMonthTotal + record.oneMonthTotal + record.twoMonthsTotal + record.threeMonthsTotal + record.fourMonthsAndOverTotal)}\r\n // \r\n // );\r\n // ReactDOM.render(lnk, spn);\r\n // return spn;\r\n // };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let agedMeasureDescriptionCol = tempCols.find((element) => element.field === 'agedMeasureDescription');\r\n\r\n if (agedMeasureDescriptionCol) {\r\n agedMeasureDescriptionCol.renderer = editButton;\r\n }\r\n // let totalAmount = tempCols.find((element) => element.field === 'totalAmount');\r\n\r\n // if (totalAmount) {\r\n // totalAmount.renderer = totalAmountWrapper;\r\n // }\r\n\r\n return tempCols;\r\n }, [props.MeasureID]);\r\n\r\n const baseUrl = `AgedMeasures/GetAllBranchByAgedMeasures`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list.map((p) => {\r\n console.log(p, 'p');\r\n return {\r\n ...p,\r\n totalAmount: p.currentMonthTotal + p.oneMonthTotal + p.twoMonthsTotal + p.threeMonthsTotal + p.fourMonthsAndOverTotal\r\n };\r\n }),\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isShowTotal={true}\r\n hidePagination={true}\r\n hideFilterRow={true}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default AgedMeasuresDashBoard;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport ReactDOM from 'react-dom';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\nlet addCommas = (val) => {\r\n return val ? `£${val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '£0.00';\r\n};\r\nconst baseColumns = [\r\n { field: 'branch', sortable: false, title: `Branch`, width: 180, filterable: false },\r\n {\r\n field: 'currentProvision',\r\n title: `Current Provision`,\r\n width: 120,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true\r\n },\r\n {\r\n field: 'provisionRequired',\r\n sortable: true,\r\n title: `Provision Required`,\r\n width: 130,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true\r\n },\r\n {\r\n field: 'provisionDifference',\r\n sortable: true,\r\n title: `Provision Difference`,\r\n width: 140,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true\r\n },\r\n { field: 'totalAmount', sortable: true, title: `Total`, width: 120, showColumnTotal: true, align: 'right', filterable: false, isCurrency: true },\r\n { field: 'currentMonthTotal', sortable: true, title: `Current`, width: 120, showColumnTotal: true, align: 'right', filterable: false },\r\n {\r\n field: 'oneMonthTotal',\r\n sortable: true,\r\n title: `1 Month`,\r\n width: 150,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false\r\n },\r\n { field: 'twoMonthsTotal', sortable: true, title: `2 Months`, width: 120, showColumnTotal: true, align: 'right', filterable: false },\r\n { field: 'threeMonthsTotal', sortable: true, title: `3 Months`, width: 120, showColumnTotal: true, align: 'right', filterable: false },\r\n {\r\n field: 'fourMonthsAndOverTotal',\r\n sortable: true,\r\n title: '4+ Months',\r\n width: 120,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false\r\n },\r\n {\r\n field: 'unallocatedItemsTotal',\r\n title: 'Unallocated',\r\n width: 120,\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false\r\n }\r\n];\r\n// const crumbs = (path) => [\r\n// { name: 'Home', path: '/' },\r\n// { name: 'Aged Measures', path: '/AgedMeasures' },\r\n// { name: `${path}`, active: true }\r\n// ];\r\n\r\nconst crumbs = (val, menuPermissionCounter) => {\r\n let list = [{ name: 'Home', path: '/' }];\r\n if (menuPermissionCounter !== 1) {\r\n list.push({ name: 'Reports', path: '/ReportsDashboard' });\r\n }\r\n if (val) {\r\n list.push({ name: 'Aged Measures', path: '/AgedMeasures' }, { name: val, active: true });\r\n }\r\n return list;\r\n};\r\n\r\nconst GetAllBranchByAgedMeasures = (props) => {\r\n const history = useHistory();\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let Measuredesc = params.get('measuredesc') || '';\r\n let MeasureID = params.get('MeasureID') || '';\r\n const redirectToScreens = (value, record, MeasureID, field) => {\r\n let searchQuery = `?branchID=${record.branchID}&bn=${\r\n record.branch\r\n }&measuredesc=${Measuredesc}&MeasureID=${MeasureID}&fromPage=${'Aged Measures'}&month=${field.month == 0 ? 0 : field.month || ''}&unallocated=${\r\n field.unallocated || ''\r\n }`;\r\n if (MeasureID == '1') {\r\n history.push({\r\n pathname: '/sales/AgedMeasuresWorkingProgress',\r\n search: searchQuery\r\n });\r\n } else if (MeasureID == '17') {\r\n history.push({\r\n pathname: '/sales/AgedMeasuresWorkingProgress',\r\n search: `${searchQuery}&DepartmentDes=${record.department}&departmentCode=${record.departmentCode}`\r\n });\r\n } else if (MeasureID == '2') {\r\n history.push({\r\n pathname: '/AgedMeasures/GetAgedMeasuresDirtyUnits',\r\n search: searchQuery\r\n });\r\n } else if (MeasureID == '6' || MeasureID == '21') {\r\n history.push({\r\n pathname: '/AgedMeasures/GetAgedMeasuresRanMWarrantyCashGen',\r\n search: `${searchQuery}&departmentCode=${record.departmentCode}&isGroupingById=prSentTo`\r\n });\r\n } else if (MeasureID == '3' || MeasureID == '4' || MeasureID == '5' || MeasureID == '7') {\r\n history.push({\r\n pathname: '/AgedMeasures/GetAgedMeasuresRanMWarrantyCashGen',\r\n search: `${searchQuery}&departmentCode=${record.departmentCode}`\r\n });\r\n } else return false;\r\n };\r\n\r\n const editButton = (field) => (value, record) => {\r\n let isClickable = record.accessAllowed.trim() === 'Y';\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n redirectToScreens(value, record, MeasureID, field) : ''}\r\n style={{ cursor: isClickable ? 'pointer' : '' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const monthsActionHandler = (field) => (value, record) => {\r\n let isClickable = record.accessAllowed.trim() === 'Y';\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n redirectToScreens(value, record, MeasureID, field) : ''}\r\n style={{ cursor: isClickable ? 'pointer' : '' }}\r\n >\r\n {addCommas(value)}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n // const totalAmountWrapper = (value, record) => {\r\n // const spn = document.createElement('span');\r\n // const lnk = (\r\n // \r\n // {addCommas(record.currentMonthTotal + record.oneMonthTotal + record.twoMonthsTotal + record.threeMonthsTotal + record.fourMonthsAndOverTotal)}\r\n // \r\n // );\r\n // ReactDOM.render(lnk, spn);\r\n // return spn;\r\n // };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let branchCol = tempCols.find((element) => element.field === 'branch');\r\n // let totalAmount = tempCols.find((element) => element.field === 'totalAmount');\r\n let currentMonthTotalCol = tempCols.find((element) => element.field === 'currentMonthTotal');\r\n let oneMonthTotalCol = tempCols.find((element) => element.field === 'oneMonthTotal');\r\n let twoMonthTotalCol = tempCols.find((element) => element.field === 'twoMonthsTotal');\r\n let threeMonthTotalCol = tempCols.find((element) => element.field === 'threeMonthsTotal');\r\n let fourPlusMonthTotalCol = tempCols.find((element) => element.field === 'fourMonthsAndOverTotal');\r\n let unallocatedTotalCol = tempCols.find((element) => element.field === 'unallocatedItemsTotal');\r\n if (branchCol) {\r\n branchCol.renderer = editButton({});\r\n }\r\n // if (totalAmount) {\r\n // totalAmount.renderer = totalAmountWrapper;\r\n // }\r\n if (currentMonthTotalCol) {\r\n currentMonthTotalCol.renderer = monthsActionHandler({ month: 0, toolTipLabel: 'currentMonthCount' });\r\n }\r\n if (oneMonthTotalCol) {\r\n oneMonthTotalCol.renderer = monthsActionHandler({ month: 1, toolTipLabel: 'oneMonthCount' });\r\n }\r\n if (twoMonthTotalCol) {\r\n twoMonthTotalCol.renderer = monthsActionHandler({ month: 2, toolTipLabel: 'twoMonthsCount' });\r\n }\r\n if (threeMonthTotalCol) {\r\n threeMonthTotalCol.renderer = monthsActionHandler({ month: 3, toolTipLabel: 'threeMonthsCount' });\r\n }\r\n if (fourPlusMonthTotalCol) {\r\n fourPlusMonthTotalCol.renderer = monthsActionHandler({ month: 4, toolTipLabel: 'fourMonthsAndOverCount' });\r\n }\r\n if (unallocatedTotalCol) {\r\n unallocatedTotalCol.renderer = monthsActionHandler({ unallocated: 1, toolTipLabel: 'unallocatedItemsCount' });\r\n }\r\n return tempCols;\r\n }, [MeasureID]);\r\n\r\n const baseUrl = `AgedMeasures/GetAllBranchByAgedMeasures?MeasureID=${MeasureID}`;\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list.map((p) => {\r\n return {\r\n ...p,\r\n totalAmount: p.currentMonthTotal + p.oneMonthTotal + p.twoMonthsTotal + p.threeMonthsTotal + p.fourMonthsAndOverTotal\r\n };\r\n }),\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isShowTotal={true}\r\n // hidePagination={true}\r\n hideFilterRow={true}\r\n downloadName={Measuredesc || 'Aged Measures'}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default GetAllBranchByAgedMeasures;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../../GijgoForReportsScreen';\r\nimport ReactDOM from 'react-dom';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { AppStorage } from '../../../../../../Core/Service/storage-service';\r\nimport formatters from '../../../../../../Core/Grid/inputFormatter';\r\n\r\n\r\n\r\nconst getCrumbs = (menuPermissionCounter,ParamMeasureID, ParamMeasuredesc, ParamBranchName, ParamMonth, ParamUnallocated) => {\r\n let temp = {};\r\n let final = [\r\n { name: 'Home', path: '' },\r\n // { name: 'Aged Measures', active: true }\r\n ];\r\n if (menuPermissionCounter !== 1) {\r\n final.push({ name: 'Reports', path: '/ReportsDashboard' });\r\n } \r\n final.push({ name: 'Aged Measures', path: '/AgedMeasures' });\r\n \r\n if (ParamMeasureID == '2') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/DirtyUnits' };\r\n } else {\r\n temp = { name: `${ParamMeasuredesc}`, active: true };\r\n }\r\n final = [...final, { ...temp }];\r\n if (ParamBranchName) {\r\n temp = {\r\n name: `${ParamBranchName} ${ParamMonth > 0 ? `(${ParamMonth} ${ParamMonth == 1 ? 'Month' : 'Months'})` : ''} ${\r\n ParamUnallocated > 0 ? `(Unallocated)` : ''\r\n }`,\r\n active: true\r\n };\r\n }\r\n final = [...final, { ...temp }];\r\n return final;\r\n};\r\n\r\nconst baseColumns = [\r\n { title: 'Part Number', field: 'pnp', width: 110, sortable: true },\r\n { title: 'Description', field: 'pd', width: 150, sortable: true },\r\n { title: 'Quantity', field: 'qty', width: 100, sortable: true, align: 'right' },\r\n {\r\n title: 'Surcharge',\r\n field: 'sv',\r\n width: 100,\r\n sortable: true,\r\n isCurrency: true,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Sale Surcharge',\r\n field: 'ssv',\r\n width: 100,\r\n sortable: true,\r\n isCurrency: true,\r\n align: 'right'\r\n },\r\n { title: 'Location', field: 'bl', width: 90, sortable: true },\r\n {\r\n title: 'Last Purchased',\r\n field: 'dlp',\r\n width: 90,\r\n sortable: true,\r\n renderer: formatters.MonthShortFormatter\r\n },\r\n {\r\n title: 'Last Sold',\r\n field: 'dls',\r\n width: 90,\r\n sortable: true,\r\n renderer: formatters.MonthShortFormatter\r\n },\r\n {\r\n title: 'Last Bought',\r\n field: 'dlb',\r\n width: 90,\r\n sortable: true,\r\n renderer: formatters.MonthShortFormatter\r\n },\r\n { title: 'Months', field: 'am', width: 70, sortable: true, align: 'right' },\r\n { title: 'Days', field: 'ad', width: 70, sortable: true, align: 'right' }\r\n // { title: 'Branch', field: 'bn', width: 100, sortable: true }\r\n];\r\n\r\nconst GetAgedMeasuresDirtyUnits = (props) => {\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter()\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamMeasureID = params.get('MeasureID') || '';\r\n let ParamMeasuredesc = params.get('measuredesc') || '';\r\n let ParamMonth = params.get('month') || '';\r\n let ParamBranchName = params.get('bn') || '';\r\n let ParamBranchId = params.get('branchID') || params.get('branchId') || '';\r\n let ParamUnallocated = params.get('unallocated') || '';\r\n if (ParamMeasureID !== '2') {\r\n baseColumns.push({ title: 'Branch', field: 'bn', width: 100, sortable: true });\r\n }\r\n\r\n const baseUrl = `AgedMeasures/GetAgedMeasuresDirtyUnits?BranchID=${ParamBranchId}&mont=${ParamMonth}`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={baseColumns}\r\n getUrl={baseUrl}\r\n // isShowTotal={true}\r\n // hidePagination={true}\r\n // hideFilterRow={true}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default GetAgedMeasuresDirtyUnits;\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\n\r\nimport moment from 'moment';\r\nimport { PrimaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { addReportingNotes, getReportingNotes } from '../../../../Core/Service/ReportScreens-service';\r\nimport './reportingNotes.scss';\r\nconst JobSingleNote = (props) => {\r\n return (\r\n
\r\n
{props.note.reportingAccountQueryNotes}
\r\n
\r\n {props.note.userName} @ {moment(props.note.reportingAccountQueryCreated).format('LLL')}\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst ReportNotesModal = (props) => {\r\n const [state, setState] = useState({\r\n loading: false,\r\n notes: [],\r\n newNote: ''\r\n });\r\n\r\n const notesContainer = useRef(null);\r\n const handleClose = () => {\r\n props.onClose && props.onClose(false);\r\n };\r\n\r\n const setNewNote = (e) => {\r\n const newNote = e.target.value;\r\n setState((st) => ({ ...st, newNote }));\r\n };\r\n\r\n const addNotesToServer = () => {\r\n let data = {\r\n reportingAccountQuerySystemMatchNumber: props.smn,\r\n reportingAccountQueryCreated: '',\r\n notes: state.newNote\r\n };\r\n addReportingNotes(data).then((res) => {\r\n if (res.success) {\r\n setState((st) => ({ ...st, newNote: '' }));\r\n getJobNotesAndSaveToState();\r\n props.onClose(true);\r\n }\r\n });\r\n };\r\n\r\n const getJobNotesAndSaveToState = async () => {\r\n setState((st) => ({ ...st, loading: true }));\r\n getReportingNotes(props.smn)\r\n .then((res) => {\r\n if (res.success) {\r\n setState((st) => ({ ...st, notes: res.data.list }));\r\n }\r\n notesContainer.current && (notesContainer.current.scrollTop = 0);\r\n })\r\n .finally(() => {\r\n setState((st) => ({ ...st, loading: false }));\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n getJobNotesAndSaveToState();\r\n }, [props.smn]);\r\n\r\n return (\r\n \r\n \r\n Reporting Account Query Notes ({props.dn})\r\n
\r\n \r\n Add Notes\r\n \r\n \r\n ×\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {state.loading && }\r\n {state.notes.map((n, i) => (\r\n \r\n ))}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default ReportNotesModal;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel, IconButton, CircularProgress } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../../GijgoForReportsScreen';\r\nimport ReactDOM from 'react-dom';\r\nimport { useHistory } from 'react-router-dom';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport ReportNotesModal from '../../../ReportingNotesScreen';\r\nimport { useState } from 'react';\r\nimport '../../../ReportingScreensStyle.scss';\r\nimport { getAgedMeasuresViewDocument, getHoverReportingNotes } from '../../../../../../Core/Service/ReportScreens-service';\r\nimport { SquareButton } from '../../../../../../Core/FormInput/AppButton';\r\nimport ViewPdfModal from '../../../../../../Core/Modal/PdfViweModal';\r\nimport DialogComp from '../../../../../../Core/Controls/Dialog/DialogComp';\r\nimport GetWIPHeader from '../../../GetWIPDetails';\r\nimport { getReportsDropdownsResolveData } from '../../../../../../Core/Service/reportService';\r\nimport formatters from '../../../../../../Core/Grid/inputFormatter';\r\nconst gridColumns = [\r\n {\r\n title: 'Document',\r\n field: 'dn',\r\n width: 80,\r\n sortable: true,\r\n align: 'right'\r\n },\r\n { title: 'Type', field: 'dt', width: 40, sortable: true },\r\n {\r\n title: 'Original',\r\n field: 'o',\r\n width: 70,\r\n sortable: true,\r\n isCurrency: true,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Balance',\r\n field: 'b',\r\n width: 70,\r\n sortable: true,\r\n isCurrency: true,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Date',\r\n field: 'dd',\r\n width: 75,\r\n sortable: true,\r\n renderer: formatters.MonthShortFormatter,\r\n cssClass: 'text-center'\r\n },\r\n {\r\n title: 'Due Date',\r\n field: 'dud',\r\n width: 75,\r\n sortable: true,\r\n renderer: formatters.MonthShortFormatter,\r\n cssClass: 'text-center'\r\n },\r\n { title: 'Days', field: 'ad', width: 40, sortable: true, align: 'right' },\r\n { title: 'Months', field: 'am', width: 50, sortable: true, align: 'right' },\r\n { title: 'Misc Ref', field: 'mr', width: 80, sortable: true },\r\n { title: 'Customer Ref', field: 'cr', width: 90, sortable: true },\r\n { title: 'Account Code', field: 'accountCode', width: 80, sortable: true }\r\n];\r\n\r\nconst getCrumbs = (\r\n ParamMeasureID,\r\n ParamMeasuredesc,\r\n ParamBranchName,\r\n ParamMonth,\r\n ParamUnallocated,\r\n ParamDepartmentName,\r\n ParamAccCode,\r\n Paramsalesexec,\r\n ParentScreen\r\n) => {\r\n let isSubTitle = ParamBranchName || ParamDepartmentName || ParamAccCode || ParamMonth || ParamUnallocated;\r\n let temp = {},\r\n temp2 = {};\r\n let final = [\r\n { name: 'Home', path: '' },\r\n { name: ParentScreen ? 'Sales' : 'Aged Measures', path: ParentScreen ? '/sales/dashboard' : '/AgedMeasures' }\r\n ];\r\n if (ParamMeasuredesc == 'Account Queries by Salesexec') {\r\n final.push({ name: `${ParamMeasuredesc}`, path: '/sales/AccountQueriesbySalesexec' });\r\n temp = { name: `${Paramsalesexec}`, active: true };\r\n } else if (ParamMeasureID == '6') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/AccountQueries' };\r\n } else if (ParamMeasureID == '21') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/AccountQueriesByDepartment' };\r\n } else if (ParamMeasureID == '3') {\r\n temp = { name: `${'R&M'}`, path: '/AgedMeasures/R&M' };\r\n } else if (ParamMeasureID == '4') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/Warranty' };\r\n } else if (ParamMeasureID == '5') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/Cash' };\r\n } else if (ParamMeasureID == '7') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/AgedDebt-Branch' };\r\n } else if (ParamMeasureID == '8') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/AgedDebt-Company' };\r\n } else if (ParamMeasureID == '9') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/VehicleDebt' };\r\n } else if (ParamMeasuredesc == 'Account Queries by Salesexec') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/sales/AccountQueriesbySalesexec' };\r\n } else if (ParamMeasureID == '20') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/CashByDepartment' };\r\n } else {\r\n temp = { name: `${ParamMeasuredesc}`, active: true };\r\n }\r\n final = [...final, { ...temp }];\r\n if (isSubTitle) {\r\n temp = {\r\n name: `${ParamBranchName ? ParamBranchName : ''} ${ParamDepartmentName ? ParamDepartmentName : ''} ${ParamAccCode ? ParamAccCode : ''} ${\r\n ParamMonth > 0 ? `(${ParamMonth} ${ParamMonth == 1 ? 'Month' : 'Months'})` : ''\r\n } ${ParamUnallocated > 0 ? `(Unallocated)` : ''}`,\r\n active: true\r\n };\r\n final = [...final, { ...temp }];\r\n }\r\n\r\n return final;\r\n};\r\n\r\nconst GetAgedMeasuresRanMWarrantyCashGen = (props) => {\r\n const [state, setState] = useState({ hoverDetailNote: '', showWIPDetails: '', wipNumber: '', company: '', showLoader: true });\r\n\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamMeasureID = params.get('MeasureID') || '';\r\n let ParamMeasuredesc = params.get('measuredesc') || '';\r\n let ParamMonth = params.get('month') || '';\r\n let ParamBranchName = params.get('bn') || '';\r\n let ParamDepartmentName = params.get('Department') || '';\r\n let ParamDepartmentCode = params.get('departmentCode') || '';\r\n let ParamBranchId = params.get('branchID') || params.get('branchId') || '';\r\n let ParamUnallocated = params.get('unallocated') || '';\r\n let ParamAccCode = params.get('accCode') || '';\r\n let ParamCashAccountTypeID = params.get('cashAccountTypeID') || '';\r\n let ParamIsGroupingById = params.get('isGroupingById') || '';\r\n let Paramsalesexec = params.get('salesexec') || '';\r\n let ParamPRSentTo = params.get('PRSentTo') || '';\r\n let ParentScreen = params.get('from') || '';\r\n const notesActionHandler = (record) => {\r\n setState((st) => ({\r\n ...st,\r\n showNotesModal: true,\r\n smn: record.smn,\r\n dn: record.dn\r\n }));\r\n };\r\n const notesHoverHandler = async (record) => {\r\n let res = await getHoverReportingNotes(record.smn);\r\n setState((st) => ({\r\n ...st,\r\n hoverDetailNote: res.data.list[0].notes\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n notesActionHandler(record)}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const documentHandler = async (record) => {\r\n setState((st) => ({ ...st, showPdfModal: true }));\r\n let res = await getAgedMeasuresViewDocument(record.invfile);\r\n if (res) {\r\n setState((st) => ({ ...st, pdfFileData: res, showLoader: false }));\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n\r\n const wipNumberHandler = async (record) => {\r\n setState((st) => ({ ...st, showWIPDetails: true, wipNumber: record.wn, company: record.company }));\r\n };\r\n\r\n const docEditButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n let isFile = record.invfile;\r\n const lnk = (\r\n documentHandler(record) : ''}>\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const wipNumberRenderer = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n wipNumberHandler(record)}>\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const closeNotesHandler = (res) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n if (res) {\r\n newSt.isReload = new Date();\r\n } else {\r\n newSt.showNotesModal = false;\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n let Columns = useMemo(() => {\r\n let tempColumns = [...gridColumns];\r\n let actionCol = tempColumns.find((element) => element.field === 'rhid');\r\n if (ParamMeasuredesc != 'Account Queries by Salesexec') {\r\n // actionCol.renderer = editButton;\r\n tempColumns.splice(0, 0, { title: '', width: 55, field: 'rhid', filterable: false, sortable: true, align: 'center', renderer: editButton });\r\n }\r\n let ViewDocCol = tempColumns.find((element) => element.field === 'dn');\r\n if (ViewDocCol) {\r\n ViewDocCol.renderer = docEditButton;\r\n }\r\n if (ParamMeasureID == 6 || ParamMeasureID == 21) {\r\n tempColumns.push({\r\n title: 'PR Code',\r\n field: 'prCode',\r\n width: 50,\r\n sortable: true\r\n });\r\n tempColumns.push({\r\n title: 'Date Raised',\r\n field: 'prDateRaised',\r\n width: 90,\r\n sortable: true,\r\n type: 'date',\r\n format: 'dd-mmm-yyyy',\r\n cssClass: 'text-center'\r\n });\r\n tempColumns.push({\r\n title: 'PR FollowUp',\r\n field: 'prFollowUpDate',\r\n width: 90,\r\n sortable: true,\r\n type: 'date',\r\n format: 'dd-mmm-yyyy',\r\n cssClass: 'text-center'\r\n });\r\n tempColumns.push({\r\n title: 'PR Comment',\r\n field: 'prComment',\r\n width: 160,\r\n sortable: true\r\n });\r\n tempColumns.push({\r\n title: 'PR SentTo',\r\n field: 'prSentTo',\r\n width: 160,\r\n sortable: true\r\n });\r\n } else {\r\n tempColumns.push({\r\n title: 'WIP',\r\n field: 'wn',\r\n width: 50,\r\n sortable: true,\r\n renderer: wipNumberRenderer\r\n });\r\n }\r\n // if (!(ParamMeasureID == 6 || ParamMeasureID == 21)) {\r\n // console.log(ParamMeasureID, 'ParamMeasureID');\r\n // tempColumns.push({\r\n // title: 'PR SentTo',\r\n // field: 'prSentTo',\r\n // width: 70,\r\n // sortable: true\r\n // });\r\n // }\r\n if (ParamAccCode.trim() != '') {\r\n tempColumns.push({\r\n title: 'Branch',\r\n field: 'branchShortName',\r\n width: 90,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'branch',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name',\r\n queryParamName: 'bn'\r\n });\r\n }\r\n return tempColumns;\r\n }, [ParamMeasureID]);\r\n\r\n const baseUrl = `AgedMeasures/GetAgedMeasuresRanMWarrantyCashGen?BranchID=${ParamBranchId}&mont=${ParamMonth}&MeasureID=${ParamMeasureID}&Unallocated=${ParamUnallocated}&AccountCode=${ParamAccCode}&CashAccountTypeID=${ParamCashAccountTypeID}&Department=${ParamDepartmentCode}&salesexec=${Paramsalesexec}&PRSentTo=${ParamPRSentTo}`;\r\n\r\n return (\r\n
\r\n \r\n {state.showWIPDetails && (\r\n setState((st) => ({ ...st, showWIPDetails: false }))} maxWidth=\"xl\" fullWidth>\r\n \r\n \r\n )}\r\n {state.showPdfModal ? (\r\n setState((st) => ({ ...st, showPdfModal: false }))} fullWidth>\r\n {state.showLoader ? (\r\n
\r\n \r\n \r\n
\r\n
\r\n ) : (\r\n \r\n )}\r\n \r\n ) : null}\r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={Columns}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n // isShowTotal={true}\r\n // hidePagination={true}\r\n // hideFilterRow={true}\r\n isGroupingId={ParamIsGroupingById ? ParamIsGroupingById : ''}\r\n dropDownListProvider={getReportsDropdownsResolveData}\r\n />\r\n \r\n \r\n {state.showNotesModal && }\r\n \r\n );\r\n};\r\n\r\nexport default GetAgedMeasuresRanMWarrantyCashGen;\r\n","import React from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\n\r\nconst baseColumns = [\r\n { field: 'rn', title: `Reg No`, width: 180 },\r\n {\r\n field: 'mc',\r\n title: `Model`,\r\n width: 120,\r\n showColumnTotal: true\r\n },\r\n {\r\n field: 'ex',\r\n sortable: true,\r\n title: `Sales Exec`,\r\n width: 120,\r\n showColumnTotal: true\r\n },\r\n {\r\n field: 'bal',\r\n sortable: true,\r\n title: `Balance`,\r\n width: 120,\r\n showColumnTotal: true,\r\n align: 'right'\r\n },\r\n { field: 'id', sortable: true, title: `Invoice Date`, width: 120, showColumnTotal: true, type: 'date', format: 'dd-mmm-yyyy' },\r\n { field: 'age', sortable: true, title: `Age`, width: 120, showColumnTotal: true, align: 'right' },\r\n {\r\n field: 'dn',\r\n sortable: true,\r\n title: `Invoice No`,\r\n width: 150,\r\n showColumnTotal: true\r\n },\r\n { field: 'loc', sortable: true, title: `Sold By`, width: 120, showColumnTotal: true },\r\n { field: 'ac', sortable: true, title: `Account`, width: 120, showColumnTotal: true },\r\n {\r\n field: 'cn',\r\n sortable: true,\r\n title: 'Customer Name',\r\n width: 120,\r\n showColumnTotal: true\r\n }\r\n];\r\nconst crumbs = (measuredesc) => [\r\n { name: 'Home', path: '/' },\r\n { name: measuredesc, active: true }\r\n];\r\n\r\nconst getCrumbs = (menuPermissionCounter,ParamMeasureID, ParamMeasuredesc, ParamMc, ParamMonth) => {\r\n let temp = {};\r\n let final = [{ name: 'Home', path: '' } ];\r\n if (menuPermissionCounter !== 1) {\r\n final.push({ name: 'Reports', path: '/ReportsDashboard' });\r\n }\r\n final.push({ name: 'Aged Measures', path: '/AgedMeasures'})\r\n \r\n if (ParamMeasureID == '11') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/NewFusoStock' };\r\n } else if (ParamMeasureID == '18') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/NewMaxusVans' };\r\n } else if (ParamMeasureID == '10') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/NewTruckStock' };\r\n } else if (ParamMeasureID == '12') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/NewVanStock' };\r\n } else if (ParamMeasureID == '14') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/UsedFusoStock' };\r\n } else if (ParamMeasureID == '19') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/UsedMaxusVans' };\r\n } else if (ParamMeasureID == '16') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/UsedNon-franchiseStock' };\r\n } else if (ParamMeasureID == '13') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/UsedTruckStock' };\r\n } else if (ParamMeasureID == '15') {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/UsedVanStock' };\r\n } else {\r\n temp = { name: `${ParamMeasuredesc}`, active: true };\r\n }\r\n final = [...final, { ...temp }];\r\n if (ParamMc || ParamMonth) {\r\n temp = {\r\n name: `${ParamMc ? ParamMc : ''} ${ParamMonth > 0 ? `(${ParamMonth} ${ParamMonth == 1 ? 'Month' : 'Months'})` : ''}`,\r\n active: true\r\n };\r\n final = [...final, { ...temp }];\r\n }\r\n\r\n return final;\r\n};\r\n\r\nconst GetUsedAndNewVehicleDebt = (props) => {\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamMeasureID = params.get('MeasureID') || '';\r\n let ParamMeasuredesc = params.get('measuredesc') || '';\r\n let ParamMonth = params.get('month') || '';\r\n let ParamFranchise = params.get('franchise') || '';\r\n let ParamMc = params.get('mc') || '';\r\n\r\n let baseUrl = '';\r\n\r\n if (ParamMeasureID == 11 || ParamMeasureID == 18 || ParamMeasureID == 10 || ParamMeasureID == 12) {\r\n baseUrl = `sales/GetNewVehicleDebt?Franchise=${ParamFranchise}&Month=${ParamMonth}&mc=${ParamMc}`;\r\n } else {\r\n baseUrl = `sales/GetUsedVehicleDebt?Franchise=${ParamFranchise}&Month=${ParamMonth}&mc=${ParamMc}`;\r\n }\r\n\r\n const detailTemplate = () => {\r\n return `
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Invoice NameStockbook NumberOrder DateReg Date
{iname}{sn}{od}{rd}
\r\n
`;\r\n };\r\n // Invoice Name\tComm Number\tStockbook Number\tOrder Date\tConsignment Date\tBuild Date\tAdoption Date\tReg Date\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={baseColumns}\r\n getUrl={baseUrl}\r\n detailTemplate={detailTemplate}\r\n // isShowTotal={true}\r\n // hidePagination={true}\r\n // hideFilterRow={true}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default GetUsedAndNewVehicleDebt;\r\n","import React, { useState, useEffect, useMemo } from 'react';\r\nimport moment from 'moment';\r\nimport { Grid, FormLabel, Hidden, Collapse } from '@material-ui/core';\r\nimport { Multiselect, SecondaryButton, DatePicker } from '../../../../Core/FormInput';\r\nimport NestedGijgoGrid from '../../../../Core/Controls/GijgoGrid/nestedGijgoGrid';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport formatters from '../../../../Core/Grid/inputFormatter';\r\nimport { getReportsDropdowns } from '../../../../Core/Service/reportService';\r\nimport FilterListIcon from '@material-ui/icons/FilterList';\r\nimport ReactDOM from 'react-dom';\r\n\r\nconst baseColumns = [\r\n { title: 'Type', field: 'moi_type', width: 40, sortable: true },\r\n { title: 'Sales Type', field: 'salestypedesc', width: 55, sortable: true },\r\n { title: 'Branch', field: 'branchdesc', width: 110, sortable: true },\r\n { title: 'Date', field: 'solddate', width: 59, sortable: true },\r\n { title: 'Name', field: 'name', width: 90, sortable: true },\r\n { title: 'Make', field: 'modelofinterestmanu', width: 80, sortable: true },\r\n { title: 'Model', field: 'modelofinterestmodel', width: 130, sortable: true },\r\n { title: 'Reg No', field: 'regNo', width: 55, sortable: true },\r\n // { title: 'Profit', field: 'ownedbydesc', width: 80, sortable: true },// need to add this column\r\n { title: 'Media', field: 'mediasourcelabel', width: 70, sortable: true },\r\n {\r\n title: 'Cash/Finance',\r\n field: 'isfinanced',\r\n width: 60,\r\n sortable: true\r\n },\r\n { title: 'Sales Exec', field: 'ownedbydesc', width: 70, sortable: true }\r\n];\r\n\r\nconst detailTemplate = () => {\r\n return `
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
IdMonthly PaymentDepositMileageDescriptionPX RegPX DORPX ConditionPX OfferSettlement
{enquiry_id}{approxmonthlypayment}{deposit}{Mileage}{px_description}{partExchange}{px_dor}{px_condition}{px_offered}{px_settlement}
\r\n
`;\r\n};\r\n// {partExchange}\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Enquiry', path: '/', active: true }\r\n];\r\n\r\nconst EnquirieList = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n\r\n let startDate = moment().startOf('month').format('YYYY-MM-DD');\r\n let endDate = moment().format('YYYY-MM-DD');\r\n\r\n const [state, setState] = useState({\r\n startDate: startDate,\r\n endDate: endDate,\r\n moiType: '',\r\n isReload: null,\r\n franchiseIds: [],\r\n bnIds: [],\r\n branchList: [],\r\n franchise: []\r\n });\r\n\r\n const [checked, setChecked] = React.useState(false);\r\n\r\n const handleChange = () => {\r\n setChecked((prev) => !prev);\r\n };\r\n\r\n const [selectedData, setSelectedData] = useState({\r\n brnIds: [],\r\n fnIds: []\r\n });\r\n useEffect(async () => {\r\n let DropDownRes = await getReportsDropdowns();\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n branchList: DropDownRes.data.branch,\r\n franchise: DropDownRes.data.franchiseCode\r\n }));\r\n }\r\n }, []);\r\n useEffect(() => {\r\n setState((st) => ({\r\n ...st,\r\n startDate: params.get('start') || startDate,\r\n endDate: params.get('end') || endDate,\r\n moiType: params.get('type') || '',\r\n franchiseIds: props.location?.state?.fnCode,\r\n bnIds: props.location?.state?.bn\r\n }));\r\n }, [window.location.search]);\r\n\r\n useEffect(() => {\r\n if (state.branchList.lenght > 0 || state.franchise.length > 0) {\r\n const selectedfranchises = state.franchise.filter((w) => props.location?.state?.fnCode?.indexOf(w.id) > -1);\r\n const selectedCust = state.branchList.filter((w) => props.location?.state?.bn?.indexOf(w.id) > -1);\r\n setSelectedData((st) => ({\r\n ...st,\r\n brnIds: selectedCust,\r\n fnIds: selectedfranchises\r\n }));\r\n }\r\n }, [props.location?.state, state.branchList, state.franchise]);\r\n\r\n const fieldChange = (e) => {\r\n let { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n const handleChanges = (e, value) => {\r\n setSelectedData((st) => ({ ...st, brnIds: value }));\r\n setState((st) => {\r\n const nst = { ...st, bnIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleChangesfranch = (e, value) => {\r\n setSelectedData((st) => ({ ...st, fnIds: value }));\r\n setState((st) => {\r\n const nst = { ...st, franchiseIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n let FranchiseCode = `FranchiseCode=${state.franchiseIds.join('&FranchiseCode=')}`;\r\n let BranchID = state.bnIds.length > 0 ? `BranchID=${state.bnIds.join('&BranchID=')}` : '';\r\n const RenderFinance = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n
\r\n {record.isfinanced}({record.financeterm})\r\n
\r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let isFinancedCol = tempCols.find((element) => element.field === 'isfinanced');\r\n if (isFinancedCol) {\r\n isFinancedCol.renderer = RenderFinance();\r\n }\r\n return tempCols;\r\n }, []);\r\n const baseUrl = `AgedMeasures/GetEnquirieList?moi_type=${state.moiType}&StartDate=${state.startDate}&EndDate=${state.endDate}&${FranchiseCode}&${BranchID}`;\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n   Filters\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n Branch\r\n \r\n \r\n \r\n \r\n \r\n Franchise\r\n \r\n \r\n \r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n Branch\r\n \r\n \r\n \r\n \r\n \r\n Franchise\r\n \r\n \r\n \r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n displayPagination={true}\r\n detailTemplate={detailTemplate}\r\n isReload={state.isReload}\r\n />\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default EnquirieList;\r\n","import React, { PureComponent } from 'react';\r\nimport { BarChart, Bar, Cell, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer, Label, ComposedChart } from 'recharts';\r\nimport { LineChart, Line, PieChart, Pie, Sector, LabelList } from 'recharts';\r\n// import { Tooltip } from '@material-ui/core';\r\n\r\nconst COLORS = [\r\n '#0074D9',\r\n '#FF4136',\r\n '#2ECC40',\r\n '#FF851B',\r\n '#7FDBFF',\r\n '#B10DC9',\r\n '#FFDC00',\r\n '#001f3f',\r\n '#39CCCC',\r\n '#01FF70',\r\n '#85144b',\r\n '#F012BE',\r\n '#3D9970',\r\n '#111111',\r\n '#AAAAAA'\r\n];\r\n\r\nconst barColors = {\r\n 0: '#0074D9',\r\n 1: '#FF4136',\r\n 2: '#2ECC40',\r\n 3: '#FF851B',\r\n 4: '#7FDBFF',\r\n 5: '#B10DC9',\r\n 6: '#FFDC00',\r\n 7: '#001f3f',\r\n 8: '#39CCCC',\r\n 9: '#01FF70',\r\n 10: '#85144b',\r\n 11: '#F012BE',\r\n 12: '#3D9970',\r\n 13: '#111111',\r\n 14: '#AAAAAA'\r\n};\r\n\r\nconst RADIAN = Math.PI / 180;\r\n\r\nconst renderCustomizedLabel = ({ cx, cy, midAngle, innerRadius, outerRadius, percent, index }) => {\r\n const radius = innerRadius + (outerRadius - innerRadius) * 0.5;\r\n const x = cx + radius * Math.cos(-midAngle * RADIAN);\r\n const y = cy + radius * Math.sin(-midAngle * RADIAN);\r\n\r\n return {`${(percent * 100).toFixed(0)}%`};\r\n};\r\n\r\nexport const ServicePieChart = (props) => {\r\n return (\r\n <>\r\n {props.data?.length > 0 ? (\r\n <>\r\n \r\n \r\n \r\n {props.data.map((entry, index) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n {/* */}\r\n \r\n
\r\n {props.data.map((m, i) => {\r\n let color = COLORS[i];\r\n return (\r\n
\r\n
\r\n {' '}\r\n
\r\n
 {m.name}
\r\n
 ({m.total})
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n \r\n ) : (\r\n \r\n No Record found\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport const ServieBarChart = (props) => {\r\n return (\r\n <>\r\n {props.data?.length > 0 ? (\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n {props.data.map((entry, index) => (\r\n {\r\n props.onClick && props.onClick();\r\n }}\r\n style={{ cursor: 'pointer' }}\r\n />\r\n ))}\r\n \r\n \r\n \r\n ) : (\r\n \r\n No Record found\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport const ServiceLineChart = (props) => {\r\n return (\r\n <>\r\n {props.data?.length > 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 No Record found\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import { get } from './http-calls';\r\nimport { memoize } from 'lodash';\r\n\r\nexport const getWarrantyDashBoard = memoize(async () => {\r\n let res = await get(`services/WarrantyDashBoard`, { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getSoldHoursDashBoard = memoize(async () => {\r\n let res = await get(`services/SoldHoursDashBoard`, { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getWIPDashBoard = memoize(async () => {\r\n let res = await get(`services/WIPDashBoard`, { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getGetUserFilterRecords = memoize(async () => {\r\n let res = await get(`services/GetUserFilterRecords`, { useAuthToken: true });\r\n return res;\r\n});\r\n","import React, { useEffect, useState } from 'react';\r\nimport Dashboard from './../../../dashboard/dashboard';\r\n\r\nimport { ServicePieChart, ServieBarChart, ServiceLineChart } from './serviceChart';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { getWarrantyDashBoard, getSoldHoursDashBoard, getWIPDashBoard, getGetUserFilterRecords } from './../../../../../Core/Service/serviceDashboard_service';\r\nimport { CircularProgress, Grid, Typography } from '@material-ui/core';\r\n\r\nconst ServiceDashboard = () => {\r\n const [state, setState] = useState({\r\n soldbyMonth: [],\r\n soldbyBranch: [],\r\n servicecWarrenty: [],\r\n partWarrenty: [],\r\n WipHour: [],\r\n WipOutStanding: [],\r\n showLoader: true\r\n });\r\n useEffect(async () => {\r\n let res = await getWarrantyDashBoard();\r\n let res_2 = await getSoldHoursDashBoard();\r\n let res_3 = await getWIPDashBoard();\r\n let res_4 = await getGetUserFilterRecords();\r\n\r\n setState((st) => ({\r\n ...st,\r\n servicecWarrenty: res.data?.table?.map((n) => {\r\n return {\r\n name: n.branch,\r\n total: n.totalAmount\r\n };\r\n }),\r\n partWarrenty: res.data?.table1?.map((n) => {\r\n return {\r\n name: n.branch,\r\n total: n.totalAmount\r\n };\r\n }),\r\n soldbyMonth: res_2.data?.table?.map((n) => {\r\n return {\r\n name: n.labourMonth,\r\n total: n.labourHours\r\n };\r\n }),\r\n soldbyBranch: res_2.data?.table1?.map((n) => {\r\n return {\r\n name: n.branchShortName,\r\n total: n.labourTotal\r\n };\r\n }),\r\n\r\n WipHour: res_3.data?.table?.map((n) => {\r\n return {\r\n name: n.branchShortName,\r\n total: n.totalHours\r\n };\r\n }),\r\n WipOutStanding: res_3.data?.table1?.map((n) => {\r\n return {\r\n name: n.branchShortName,\r\n total: n.totalOutstanding\r\n };\r\n }),\r\n showLoader: false\r\n }));\r\n }, []);\r\n const history = useHistory();\r\n\r\n const GoToWorkInProgress = () => {\r\n history.push({\r\n pathname: `/AgedMeasures/WorkInProgress`\r\n });\r\n };\r\n const GoToServiceNominals = () => {\r\n history.push({\r\n pathname: `/Services/ServiceWarrantyWriteOff`\r\n });\r\n };\r\n const GoToDailyInvoicedHours = () => {\r\n history.push({\r\n pathname: `/Services/InvoicedHours`\r\n });\r\n };\r\n const GoToPartsWarrantyOff = () => {\r\n history.push({\r\n pathname: `/Services/PartsWarrantyWriteOff`\r\n });\r\n };\r\n return (\r\n
\r\n {state.showLoader ? (\r\n
\r\n
\r\n \r\n
\r\n
\r\n ) : (\r\n \r\n \r\n \r\n \r\n
\r\n \r\n Work In Progress Clocked Hours\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n Service Warranty Write off\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Part Warranty Write off\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n Sold Hours By Month Total\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Sold Hours By Branch\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default ServiceDashboard;\r\n","import { Checkbox, FormControlLabel, FormLabel, Grid, InputLabel } from '@material-ui/core';\r\nimport React, { useContext } from 'react';\r\nimport { useState } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { addInvoiceCustomer } from '../../../../Core/Service/InvoiceScreen-service';\r\n\r\nconst InvoiceCustomersAddScreen = () => {\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({\r\n errors: {},\r\n customerCode: '',\r\n name: '',\r\n address1: '',\r\n address2: '',\r\n address3: '',\r\n postcode: '',\r\n contactName: '',\r\n contactPhone: '',\r\n invoiceEmail: '',\r\n sendInvoiceByEmail: false,\r\n shortName: '',\r\n address4: '',\r\n address5: ''\r\n });\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n let newSt = { ...st };\r\n\r\n newSt[name] = value;\r\n\r\n return newSt;\r\n });\r\n };\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst[name] = checked;\r\n return nst;\r\n });\r\n };\r\n\r\n const validations = (mode) => {\r\n const { name } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (!name) {\r\n errors.name = 'Customer Name is required';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validations()) {\r\n let data = {\r\n Id: state.id,\r\n customerCode: state.customerCode,\r\n name: state.name,\r\n address1: state.address1,\r\n address2: state.address2,\r\n address3: state.address3,\r\n postcode: state.postcode,\r\n contactName: state.contactName,\r\n contactPhone: state.contactPhone,\r\n invoiceEmail: state.invoiceEmail,\r\n sendInvoiceByEmail: state.sendInvoiceByEmail,\r\n shortName: state.shortName,\r\n address4: state.address4,\r\n address5: state.address5\r\n };\r\n let res = await addInvoiceCustomer(data);\r\n if (res.success) {\r\n showToast(`Customer added with Id ${res.customerId}`);\r\n } else {\r\n console.error(res.message);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n Short Name\r\n \r\n {state.errors['shortName']}\r\n \r\n \r\n Account Code\r\n \r\n {state.errors['customerCode']}\r\n \r\n \r\n Name\r\n \r\n {state.errors['name']}\r\n \r\n \r\n Address 1\r\n \r\n {state.errors['address1']}\r\n \r\n \r\n Address 2\r\n \r\n {state.errors['address2']}\r\n \r\n \r\n Address 3\r\n \r\n {state.errors['address3']}\r\n \r\n \r\n Address 4\r\n \r\n {state.errors['address4']}\r\n \r\n \r\n Address 5\r\n \r\n {state.errors['address5']}\r\n \r\n \r\n Postcode\r\n \r\n {state.errors['postcode']}\r\n \r\n \r\n Phone\r\n \r\n {state.errors['Reason']}\r\n \r\n\r\n \r\n Contact Name\r\n \r\n {state.errors['contactName']}\r\n \r\n \r\n Contact Phone\r\n \r\n {state.errors['contactPhone']}\r\n \r\n\r\n \r\n Invoice Email\r\n \r\n {state.errors['invoiceEmail']}\r\n \r\n \r\n }\r\n label=\"Send Invoice by email?\"\r\n />\r\n \r\n \r\n \r\n Add\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default InvoiceCustomersAddScreen;\r\n","import { Checkbox, FormControlLabel, Grid, InputLabel } from '@material-ui/core';\r\nimport React, { useContext, useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { SecondaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { editInvoiceCustomer, getInvoiceCustomerById } from '../../../../Core/Service/InvoiceScreen-service';\r\nimport { isNull } from 'lodash';\r\nimport { emailValidation } from '../../../../Core/Service/StaticService';\r\n\r\nconst InvoiceCustomersEditScreen = (props) => {\r\n const [state, setState] = useState({ errors: {}, custData: {}, invoiceEmail: '', sendInvoiceByEmail: false });\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n let res = await getInvoiceCustomerById(props.customerId);\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst.custData = res.data.table[0];\r\n nst.sendInvoiceByEmail = res.data.table[0].sendInvoiceByEmail;\r\n nst.invoiceEmail = res.data.table[0].invoiceEmail;\r\n return nst;\r\n });\r\n }, []);\r\n\r\n const handleCheckbox = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst[name] = checked;\r\n return nst;\r\n });\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n let newSt = { ...st };\r\n\r\n newSt[name] = value;\r\n\r\n return newSt;\r\n });\r\n };\r\n\r\n const validations = () => {\r\n const { invoiceEmail } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (!emailValidation(invoiceEmail)) {\r\n errors.invoiceEmail = 'Invalid Email Id';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (validations()) {\r\n let data = { id: props.customerId, invoiceEmail: state.invoiceEmail, sendInvoiceByEmail: state.sendInvoiceByEmail };\r\n\r\n let res = await editInvoiceCustomer(data);\r\n if (res.success) {\r\n showToast(`Customer Updated Successfully`);\r\n props.onClose(true);\r\n } else {\r\n console.error(res.message);\r\n }\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {`Name`}\r\n \r\n \r\n {`${state.custData.customerSName}(${state.custData.customerCode})`}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Address\r\n \r\n \r\n {`${state.custData.addressLine1} ${state.custData.addressLine2} ${state.custData.addressLine3} ${state.custData.addressLine4} ${state.custData.addressLine5}`}\r\n \r\n \r\n \r\n\r\n \r\n }\r\n label=\"Send Invoice by email?\"\r\n />\r\n \r\n \r\n \r\n Invoice Email {`(Please use comma to separate multiple email addresses)`}\r\n \r\n\r\n \r\n {state.errors['invoiceEmail']}\r\n \r\n \r\n \r\n Save\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default InvoiceCustomersEditScreen;\r\n","import { Grid, Typography } from '@material-ui/core';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport CustomeEditor from '../../../../Core/CkEditor';\r\nimport { SecondaryButton } from '../../../../Core/FormInput';\r\nimport { getInvoiceCustomerById, editInvoiceCustomerNote } from '../../../../Core/Service/InvoiceScreen-service';\r\nimport './style.scss'\r\n\r\nconst InvoiceCustomersNoteScreen = (props) => {\r\n const [state, setState] = useState({ errors: {}, custData: {}, customerInternalNotes: '' });\r\n const { showToast, showModal } = useContext(AppContext);\r\n\r\n useEffect(async () => {\r\n let res = await getInvoiceCustomerById(props.customerId);\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst.custData = res.data.table[0];\r\n nst.customerInternalNotes = res.data.table[0].customerInternalNotes ? res.data.table[0].customerInternalNotes : \"\";\r\n return nst;\r\n });\r\n }, []);\r\n\r\n const handleSubmit = async () => {\r\n let data = {\r\n id: props.customerId,\r\n customerInternalNotes: state.customerInternalNotes\r\n };\r\n\r\n let res = await editInvoiceCustomerNote(data);\r\n if (res.success) {\r\n showToast(`Customer Updated Successfully`);\r\n props.onClose(true);\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n\r\n const handleCkeditorstate = (name) => (event, editor) => {\r\n const data = editor.getData();\r\n setState((st) => ({ ...st, [name]: data }));\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {`Name`}\r\n \r\n \r\n {`${state.custData.customerSName}(${state.custData.customerCode})`}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Address\r\n \r\n \r\n {`${state.custData.addressLine1} ${state.custData.addressLine2} ${state.custData.addressLine3} ${state.custData.addressLine4} ${state.custData.addressLine5}`}\r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n Customer Notes\r\n \r\n
\r\n \r\n
\r\n\r\n \r\n \r\n Save\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default InvoiceCustomersNoteScreen;","import { Grid } from '@material-ui/core';\r\nimport React, { useMemo } from 'react';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../ReportsScreens/GijgoForReportsScreen';\r\nimport ReactDOM from 'react-dom';\r\nimport MailIcon from '@material-ui/icons/Mail';\r\nimport { NoteAdd } from '@material-ui/icons';\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport { SecondaryButton, SquareButton } from '../../../../Core/FormInput/AppButton';\r\nimport InvoiceCustomersAddScreen from './addScreen';\r\nimport { useState } from 'react';\r\nimport DialogComp from '../../../../Core/Modal/dialogModal';\r\nimport InvoiceCustomersEditScreen from './editScreen';\r\nimport InvoiceCustomersNoteScreen from './noteScreen';\r\nimport { getCustomerExcelFile } from '../../../../Core/Service/customer-services';\r\nimport moment from 'moment/moment';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { Tooltip, IconButton } from '@material-ui/core';\r\n\r\nconst baseColumns = [\r\n { field: 'action', sortable: false, title: `Action`, width: 30, filterable: false },\r\n {\r\n field: 'name',\r\n title: `Customer Name`,\r\n width: 120\r\n },\r\n {\r\n field: 'customerCode',\r\n title: `Code`,\r\n width: 40\r\n },\r\n {\r\n field: 'invoiceEmail',\r\n title: `Invoice Email`,\r\n width: 120\r\n },\r\n {\r\n field: 'address1',\r\n title: `Address`,\r\n width: 120\r\n },\r\n {\r\n field: 'town',\r\n title: `Town`,\r\n width: 80\r\n },\r\n {\r\n field: 'contactName',\r\n title: `Contact Name`,\r\n width: 100\r\n }\r\n];\r\nconst crumbs = (path) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Invoices', active: true },\r\n { name: `Customers`, active: true }\r\n];\r\n\r\nconst InvoiceCustomersListScreen = (props) => {\r\n const [state, setState] = useState({ showModal: false });\r\n\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n handleEdit(record)}\r\n >\r\n \r\n \r\n \r\n \r\n handleNote(record)}\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let branchCol = tempCols.find((element) => element.field === 'action');\r\n\r\n if (branchCol) {\r\n branchCol.renderer = editButton({});\r\n }\r\n\r\n return tempCols;\r\n }, [props.MeasureID]);\r\n\r\n const handleEdit = (record) => {\r\n setState((st) => ({\r\n ...st,\r\n showEditModal: true,\r\n custId: record.customerId\r\n }));\r\n };\r\n\r\n const handleNote = (record) => {\r\n setState((st) => ({\r\n ...st,\r\n showNoteModal: true,\r\n custId: record.customerId\r\n }));\r\n };\r\n\r\n const handleEditClose = (res) => {\r\n let newSt = {};\r\n newSt.showEditModal = false;\r\n newSt.showNoteModal = false;\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setState((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n const handleClose = (res) => {\r\n let newSt = {};\r\n newSt.showModal = false;\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setState((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n const downloadCSVWrapper = async () => {\r\n getCustomerExcelFile();\r\n };\r\n\r\n const baseUrl = `Customers/CustomerList`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n\r\n {/* \r\n \r\n setState((st) => ({\r\n ...st,\r\n showModal: true\r\n }))\r\n }\r\n startIcon={}\r\n >\r\n Add Customer\r\n \r\n */}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n // records: res?.data?.list.map((p) => ({ ...p })),\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n // isShowTotal={true}\r\n // hidePagination={true}\r\n // hideFilterRow={true}\r\n />\r\n \r\n \r\n\r\n {state.showModal ? (\r\n handleClose(false)} fullWidth>\r\n handleClose(true)} />\r\n \r\n ) : null}\r\n {state.showEditModal ? (\r\n handleEditClose(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n {state.showNoteModal ? (\r\n handleEditClose(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nexport default InvoiceCustomersListScreen;\r\n","import { get, post } from './http-calls';\r\n\r\nexport let getInvoicePdf = async (InvoiceFileName) => {\r\n let data = await get(`Invoices/DownloadInvoice?id=${InvoiceFileName}`, { useAuthToken: true, responseType: 'blob' });\r\n return data;\r\n};\r\n\r\nexport let getInvoicesByID = async (id) => {\r\n let data = await get(`Invoices/${id}`, { useAuthToken: true });\r\n return data;\r\n};\r\n\r\nexport let invoiceScreenDropDown = async (id) => {\r\n let data = await get(`Invoices/ScreenDropDown`, { useAuthToken: true });\r\n return data;\r\n};\r\n\r\nexport let getMessageGridList = async (id) => {\r\n let data = await get(`Invoices/GetInvoiceMessageList?id=${id}`, { useAuthToken: true });\r\n return data;\r\n};\r\n\r\nexport const postInvoiceMessage = async (data) => {\r\n let res = await post(`Invoices/SaveInvoiceMessages`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport let getsendInvoice = async (list) => {\r\n let data = await get(`Invoices/SendInvoices?Invoices=${list}`, { useAuthToken: true });\r\n return data;\r\n};\r\n\r\nexport const postMulitpleInvoices = async (data) => {\r\n let res = await post(`Invoices/SendMulitpleInvoices`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postUpdateInvoice = async (data) => {\r\n let res = await post(`Invoices/Update`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import React, { useState } from 'react';\r\nimport { Grid, InputLabel, Checkbox, FormHelperText } from '@material-ui/core';\r\nimport { TextBox } from '../../../../Core/FormInput';\r\nimport { SecondaryButton } from './../../../../Core/FormInput/AppButton';\r\nimport DataGridComp from '../../../../Core/Grid';\r\nimport { useEffect } from 'react';\r\nimport { getMessageGridList, postInvoiceMessage } from '../../../../Core/Service/internal_Invoice-service';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { useContext } from 'react';\r\nimport moment from 'moment';\r\n\r\n// const columns = [\r\n// {\r\n// field: 'invoiceMessageDateSent',\r\n// headerName: 'Date Sent',\r\n// renderCell: (params) => (params.value ? moment(params.value).format('DD-MMM-YYYY') : '-'),\r\n// width: 150\r\n// },\r\n// {\r\n// field: 'invoiceMessageText',\r\n// headerName: 'Message',\r\n// renderCell: (params) => (params.value ? params.value : '-'),\r\n// width: 250\r\n// },\r\n\r\n// {\r\n// field: 'invoiceMessageFromUser',\r\n// headerName: 'From User',\r\n// renderCell: (params) => (params.value ? params.value : '-'),\r\n// width: 200\r\n// },\r\n// {\r\n// field: 'invoiceMessageDateReplied',\r\n// headerName: 'Date Replied',\r\n// width: 150,\r\n// renderCell: (params) => (params.value ? moment(params.value).format('DD-MMM-YYYY') : '-')\r\n// },\r\n// {\r\n// field: 'invoiceMessageReplyUser',\r\n// headerName: 'Reply User',\r\n// renderCell: (params) => (params.value ? params.value : '-'),\r\n// width: 150\r\n// }\r\n// ];\r\n\r\nconst InvoiceMessage = (props) => {\r\n const { showToast, showModal } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n error: {},\r\n messageList: [],\r\n list: []\r\n });\r\n\r\n useEffect(async () => {\r\n if (props.invoice) {\r\n let res = await getMessageGridList(props.invoice.invoicePDFID);\r\n let dataList = res?.data?.list || [];\r\n let newList = [];\r\n if (dataList.length > 0) {\r\n newList = dataList.map((n, i) => {\r\n return { ...n, id: i };\r\n });\r\n }\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n messageList: newList\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n let Validation = () => {\r\n let isValid = true;\r\n let error = {};\r\n if (!state.email && state.sendEmail) {\r\n isValid = false;\r\n error.email = 'Invoice Email is required';\r\n }\r\n if (!state.invoiceMessageText) {\r\n isValid = false;\r\n error.invoiceMessageText = 'Invoice Message is required';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n error: error\r\n }));\r\n return isValid;\r\n };\r\n const SubmitMessage = async (status) => {\r\n if (Validation()) {\r\n let data = {\r\n id: null,\r\n invoiceMessageInvoiceID: props.invoice.invoiceId,\r\n invoiceMessageText: state.invoiceMessageText,\r\n invoiceMessageClosed: status,\r\n sendEmail: state.sendEmail || false,\r\n email: state.email,\r\n invoiceNumber: props.invoice.invoiceCreditNo001,\r\n invoiceMessagePDFID: props.invoice.invoicePDFID\r\n };\r\n\r\n let res = await postInvoiceMessage(data);\r\n if (res.success) {\r\n showToast(`Invoice Message ${status ? 'Closed' : 'Save'} Successfully`);\r\n props.onClose(true);\r\n } else {\r\n showToast(res.message);\r\n }\r\n }\r\n };\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value, checked, type } = e.target;\r\n\r\n if (type == 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {/* \r\n \r\n   Send Email\r\n \r\n */}\r\n \r\n \r\n \r\n Send Email\r\n \r\n \r\n \r\n {state.error.email}\r\n \r\n \r\n {/* Email */}\r\n \r\n {state.error.invoiceMessageText}\r\n \r\n \r\n SubmitMessage(false)}>\r\n send\r\n \r\n \r\n \r\n SubmitMessage(true)}>\r\n Close Message\r\n \r\n \r\n \r\n {state.messageList.length > 0 ? (\r\n
\r\n {state.messageList.map((m) => (\r\n
\r\n
{m.invoiceMessageText}
\r\n\r\n
\r\n \r\n From User: {m.invoiceMessageFromUser} @ {moment(m.invoiceMessageDateSent).format('LLL')}  {' '}\r\n {m.invoiceMessageReplyUser\r\n ? `( Reply by :\r\n ${m.invoiceMessageReplyUser ? m.invoiceMessageReplyUser : ''} @\r\n ${m.invoiceMessageDateReplied ? moment(m.invoiceMessageDateReplied).format('LLL') : ''} )`\r\n : ''}\r\n \r\n
\r\n
\r\n ))}\r\n
\r\n ) : (\r\n
\r\n
No Messages Available
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default InvoiceMessage;\r\n","import React from 'react';\r\nimport { Grid, InputLabel, Checkbox } from '@material-ui/core';\r\nimport { SelectBox, TextBox } from '../../../../Core/FormInput';\r\nimport { SecondaryButton } from './../../../../Core/FormInput/AppButton';\r\nimport ViewPdfModal from '../../../../Core/Modal/PdfViweModal';\r\nimport { useEffect, useState } from 'react';\r\nimport { getInvoicesByID, invoiceScreenDropDown, getInvoicePdf, postUpdateInvoice } from '../../../../Core/Service/internal_Invoice-service';\r\nimport moment from 'moment';\r\nimport { useContext } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\n\r\nconst EditInvoice = (props) => {\r\n const { showToast, showModal } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n invoiceStatusList: [],\r\n branchList: []\r\n });\r\n useEffect(async () => {\r\n if (props.invoiceID) {\r\n let res = await getInvoicesByID(props.invoiceID);\r\n\r\n let data = res?.data?.table[0];\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n invoiceId: data.invoiceId,\r\n invoiceCreditNo001: data.invoiceCreditNo001,\r\n wipNumber: data.wipNumber,\r\n netValue: data.netValue,\r\n grossValue: data.grossValue,\r\n invoiceStatusID: data.invoiceStatusID,\r\n customerName: data.customerName,\r\n invoiceBranchID: data.invoiceBranchID,\r\n postingDate: moment(data.postingDate).format('YYYY-MM-DD'),\r\n invoiceFileName: data.invoiceFileName,\r\n invoiceCustomerId: data.invoiceCustomerId,\r\n oldInvoiceID: data.invoiceStatusID\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n useEffect(async () => {\r\n if (state.invoiceFileName) {\r\n let res = await getInvoicePdf(state.invoiceFileName);\r\n\r\n if (res) {\r\n setState((st) => ({ ...st, pdfFileData: res }));\r\n } else {\r\n console.error(res.message);\r\n }\r\n }\r\n }, [state.invoiceFileName]);\r\n\r\n useEffect(async () => {\r\n let res = await invoiceScreenDropDown();\r\n\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n invoiceStatusList: res.data?.invoiceStatusList || [],\r\n branchList: res.data?.branchList || []\r\n }));\r\n }\r\n }, []);\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let data = {\r\n grossValue: state.grossValue,\r\n invoiceBranchID: state.invoiceBranchID,\r\n invoiceCustomerId: state.invoiceCustomerId,\r\n id: state.invoiceId,\r\n invoiceNet: state.netValue,\r\n postDate: state.postingDate,\r\n invoiceWIPNumber: state.wipNumber,\r\n oldInvoiceStatusID: state.oldInvoiceID,\r\n invoiceStatusID: state.invoiceStatusID,\r\n invoiceNumber: props.invoiceNo\r\n };\r\n\r\n let res = await postUpdateInvoice(data);\r\n if (res.success) {\r\n showToast(`Invoice Updated Successfully`);\r\n props.onClose(true);\r\n } else {\r\n showToast(`Invoice Failed To Update`);\r\n }\r\n };\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n Invoice Number\r\n \r\n \r\n \r\n WIP Number\r\n \r\n \r\n \r\n Invoice Net\r\n \r\n \r\n \r\n Invoice Gross Value\r\n \r\n \r\n \r\n Post Date\r\n \r\n \r\n \r\n \r\n Status\r\n \r\n \r\n \r\n \r\n Customer\r\n \r\n \r\n \r\n \r\n Branch\r\n \r\n \r\n \r\n \r\n \r\n Update Invoice\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n alert('Functionallity is pending')}>\r\n Upload\r\n \r\n */}\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default EditInvoice;\r\n","import React from 'react';\r\nimport { Grid, InputLabel, Checkbox, FormHelperText } from '@material-ui/core';\r\nimport { TextBox } from '../../../../Core/FormInput';\r\nimport { SecondaryButton } from './../../../../Core/FormInput/AppButton';\r\nimport { Alert } from '@material-ui/lab';\r\nimport { getsendInvoice } from '../../../../Core/Service/internal_Invoice-service';\r\nimport { useEffect } from 'react';\r\nimport { useState } from 'react';\r\nimport { postMulitpleInvoices } from './../../../../Core/Service/internal_Invoice-service';\r\nimport AppContext from './../../../../App/AppContext';\r\nimport { useContext } from 'react';\r\n\r\nconst SendInvoices = (props) => {\r\n const { showToast, showModal } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n showAlert: false,\r\n error: {}\r\n });\r\n\r\n useEffect(async () => {\r\n if (props.invoiceIDList.length > 0) {\r\n let res = await getsendInvoice(props.invoiceIDList);\r\n setState((st) => ({\r\n ...st,\r\n multiInvoiceFileName: res.multiInvoiceFileName,\r\n multiInvoiceId: res.multiInvoiceId,\r\n multiInvoiceNo: res.multiInvoiceNo,\r\n sendInvoiceContent: res.sendInvoiceContent,\r\n sendInvoiceEmail: res.sendInvoiceEmail\r\n }));\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n showAlert: true\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n let Validation = () => {\r\n let isValid = true;\r\n let error = {};\r\n if (!state.sendInvoiceContent) {\r\n isValid = false;\r\n error.sendInvoiceContent = 'Email Message is required';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n error: error\r\n }));\r\n return isValid;\r\n };\r\n\r\n const SubmitMessage = async () => {\r\n if (Validation()) {\r\n let data = {\r\n multiInvoiceId: state.multiInvoiceId,\r\n multiInvoiceNo: state.multiInvoiceNo,\r\n sendInvoiceContent: state.sendInvoiceContent,\r\n sendInvoiceEmail: state.sendInvoiceEmail,\r\n multiInvoiceFileName: state.multiInvoiceFileName\r\n };\r\n let res = await postMulitpleInvoices(data);\r\n if (res.success) {\r\n showToast(`Invoice Message Send Successfully`);\r\n props.onClose(true);\r\n } else {\r\n console.error();\r\n }\r\n }\r\n };\r\n\r\n return (\r\n
\r\n {state.showAlert ? (\r\n \r\n \r\n \r\n Please Select some Invoices No to Send the Invoice.\r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n Invoice Numbers:\r\n
\r\n \r\n \r\n {state.multiInvoiceNo}\r\n
\r\n \r\n \r\n \r\n Email\r\n \r\n \r\n \r\n Email Message\r\n \r\n {state.error.sendInvoiceContent}\r\n \r\n \r\n \r\n send\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default SendInvoices;\r\n","import React, { useContext, useEffect, useMemo, useState } from 'react';\r\nimport ReportGijgoGrid from './../../ReportsScreens/GijgoForReportsScreen/index';\r\nimport formatters from './../../../../Core/Grid/inputFormatter';\r\nimport { SquareButton } from '../../../../Core/FormInput/AppButton';\r\n// import { EditIcon } from '@material-ui/icons/Edit';\r\nimport { Grid } from '@material-ui/core';\r\nimport ReactDOM from 'react-dom';\r\nimport MessageIcon from '@material-ui/icons/Message';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport GetAppIcon from '@material-ui/icons/GetApp';\r\n// import {getInvoicePdf} from ''\r\nimport { getInvoicePdf, sendInvoice } from './../../../../Core/Service/internal_Invoice-service';\r\nimport InvoiceMessage from './invoiceMessage';\r\nimport DialogComp from './../../../../Core/Controls/Dialog/DialogComp';\r\nimport EditInvoice from './editInvoice';\r\nimport SendInvoices from './sendInvoices';\r\nimport EmailIcon from '@material-ui/icons/Email';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { AppStorage } from '../../../../Core/Service/storage-service';\r\n\r\nvar $ = window.$;\r\n\r\nconst baseCol = [\r\n { title: 'Action', sortable: true, field: 'action', width: 126, filterable: false },\r\n { title: 'Invoice No', field: 'invoiceCreditNo001', width: 95, sortable: true },\r\n {\r\n title: 'Net',\r\n field: 'netValue',\r\n width: 76,\r\n isCurrency: true,\r\n filterable: true,\r\n sortable: true,\r\n cssClass: 'text-right'\r\n },\r\n {\r\n title: 'Gross',\r\n field: 'grossValue',\r\n isCurrency: true,\r\n width: 76,\r\n filterable: true,\r\n sortable: true\r\n },\r\n {\r\n title: 'Status',\r\n field: 'invoiceStatus',\r\n width: 150,\r\n filterable: true,\r\n sortable: true\r\n },\r\n { title: 'Date', field: 'postingDate', width: 100, sortable: true, cssClass: 'text-right', renderer: formatters.MonthShortFormatter },\r\n { title: 'WIP No', field: 'wipNumber', width: 90, sortable: true },\r\n { title: 'Branch', field: 'branchName', width: 200, sortable: true },\r\n { title: 'Customer', field: 'customerName', width: 280, sortable: true }\r\n];\r\n\r\nconst crumbsList = {\r\n 1: 'Invoices Outstanding',\r\n 2: 'Invoices Queried',\r\n 3: 'Invoices Paid',\r\n '-1': 'Messages Received',\r\n '-2': 'Messages Sent'\r\n};\r\n\r\nconst getCrumbs = (val, menuPermissionCounter) => {\r\n let list = [{ name: 'Home', path: '/' }];\r\n if (menuPermissionCounter !== 1) {\r\n list.push({ name: 'Invoices', path: '/invoice/dashboard' });\r\n }\r\n if (val) {\r\n list.push({ name: crumbsList[val], active: true });\r\n } else {\r\n list.push({ name: 'All Invoices', active: true });\r\n }\r\n return list;\r\n};\r\n\r\nconst InvoiceScreens = (props) => {\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n const { userRoles } = useContext(AppContext);\r\n const isCustomer = userRoles.includes('customer');\r\n const [state, setState] = useState({\r\n showInvoiceMessage: false,\r\n showEditInvoice: false,\r\n showSendInvoice: false,\r\n invoiceIDList: []\r\n });\r\n\r\n const onButtonClick = async (val) => {\r\n let res = await getInvoicePdf(val.invoiceFileName);\r\n const url = window.URL.createObjectURL(new Blob([res], { type: 'application/pdf; charset=utf-8' }));\r\n let alink = document.createElement('a');\r\n alink.href = url;\r\n alink.download = `${val.invoiceFileName}`;\r\n alink.click();\r\n alink.target = '_parent';\r\n alink.remove();\r\n };\r\n\r\n const handleMessage = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showInvoiceMessage: true,\r\n invoice: val\r\n }));\r\n };\r\n\r\n const handleEditInvoice = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n showEditInvoice: true,\r\n invoiceID: val.invoiceId,\r\n invoiceNo: val.invoiceCreditNo001\r\n }));\r\n };\r\n\r\n const actioncolFields = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n handleMessage(record)}\r\n >\r\n \r\n \r\n \r\n \r\n handleEditInvoice(record)}\r\n >\r\n \r\n \r\n \r\n \r\n onButtonClick(record)}\r\n >\r\n \r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const getVal = async (gridRef, recList) => {\r\n var val = [];\r\n $(`${gridRef} tbody :checkbox:checked`).each(function (i) {\r\n val[i] = $(this).val();\r\n });\r\n\r\n let newList = val.map((m, i) => {\r\n let getValues = m - 1;\r\n return recList[getValues]?.invoiceId;\r\n });\r\n\r\n setState((st) => ({\r\n ...st,\r\n showSendInvoice: true,\r\n invoiceID: val.invoiceId,\r\n invoiceIDList: newList\r\n }));\r\n };\r\n\r\n const mailButton = (gridRef, valueList) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n getVal(gridRef, valueList)}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const column = useMemo(() => {\r\n let newCol = [...baseCol];\r\n let actionCol = newCol.find((n) => n.field === 'action');\r\n if (actionCol) {\r\n actionCol.renderer = actioncolFields;\r\n }\r\n return newCol;\r\n }, []);\r\n\r\n let baseUrl = '';\r\n if (isCustomer) {\r\n baseUrl = `Invoices/GetCustomerUserInvoiceList?invoiceStatusID=${props.status || ''}`;\r\n } else {\r\n baseUrl = `Invoices?invoiceStatusID=${props.status || ''}`;\r\n }\r\n\r\n return (\r\n
\r\n \r\n ({\r\n records: res.data.list,\r\n total: res.data.total\r\n })}\r\n columns={column}\r\n selectionType=\"multiple\"\r\n selectionMethod=\"checkbox\"\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n isShowTotal={false}\r\n hidePagination={false}\r\n hideFilterRow={false}\r\n showCheckboxColFilterBtn={mailButton}\r\n downloadName={crumbsList[+props.status] || 'All Invoices'}\r\n />\r\n {state.showInvoiceMessage ? (\r\n \r\n setState((st) => ({\r\n ...st,\r\n showInvoiceMessage: false\r\n }))\r\n }\r\n fullWidth\r\n >\r\n \r\n setState((st) => ({\r\n ...st,\r\n showInvoiceMessage: false,\r\n isReload: new Date()\r\n }))\r\n }\r\n invoice={state.invoice}\r\n />\r\n \r\n ) : null}\r\n {state.showEditInvoice ? (\r\n \r\n setState((st) => ({\r\n ...st,\r\n showEditInvoice: false\r\n }))\r\n }\r\n fullWidth\r\n >\r\n \r\n setState((st) => ({\r\n ...st,\r\n showEditInvoice: false,\r\n isReload: new Date()\r\n }))\r\n }\r\n invoiceID={state.invoiceID}\r\n invoiceNo={state.invoiceNo}\r\n />\r\n \r\n ) : null}\r\n {state.showSendInvoice ? (\r\n \r\n setState((st) => ({\r\n ...st,\r\n showSendInvoice: false\r\n }))\r\n }\r\n fullWidth\r\n >\r\n \r\n setState((st) => ({\r\n ...st,\r\n showSendInvoice: false,\r\n isReload: new Date()\r\n }))\r\n }\r\n invoiceIDList={state.invoiceIDList}\r\n />\r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nexport default InvoiceScreens;\r\n","import React, { useEffect, useContext, useState } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport AppContext from '../../App/AppContext';\r\nimport { Link, useHistory } from 'react-router-dom';\r\nimport { Avatar, Card, CardContent, Typography, Container, makeStyles, Tooltip } from '@material-ui/core';\r\nimport '../Auditor/Dashboard/dashboard.scss';\r\nimport { getDashboardForInvoice } from '../../Core/Service/InvoiceScreen-service';\r\nimport EmailIcon from '@material-ui/icons/Email';\r\nimport DescriptionIcon from '@material-ui/icons/Description';\r\nimport PeopleIcon from '@material-ui/icons/People';\r\nimport { getCustomerDashboard } from '../../Core/Service/customer-services';\r\nimport { getCommunicatorDash } from '../../Core/Service/CustUserCommunicator/communicator-service';\r\nimport { AppStorage } from './../../Core/Service/storage-service';\r\nimport LocalShippingIcon from '@material-ui/icons/LocalShipping';\r\nimport DriveEtaIcon from '@material-ui/icons/DriveEta';\r\nimport TimerIcon from '@material-ui/icons/Timer';\r\nimport CalendarTodayIcon from '@material-ui/icons/CalendarToday';\r\nimport DateRangeIcon from '@material-ui/icons/DateRange';\r\nimport MessageIcon from '@material-ui/icons/Message';\r\nimport AttachMoneyIcon from '@material-ui/icons/AttachMoney';\r\nimport LiveHelpIcon from '@material-ui/icons/LiveHelp';\r\nimport AnnouncementIcon from '@material-ui/icons/Announcement';\r\nimport ForumIcon from '@material-ui/icons/Forum';\r\nimport TelegramIcon from '@material-ui/icons/Telegram';\r\nimport CheckIcon from '@material-ui/icons/Check';\r\nimport DoneAllIcon from '@material-ui/icons/DoneAll';\r\nimport LibraryAddCheckIcon from '@material-ui/icons/LibraryAddCheck';\r\nimport ShoppingCartIcon from '@material-ui/icons/ShoppingCart';\r\nimport DepartureBoardIcon from '@material-ui/icons/DepartureBoard';\r\nimport EventAvailableIcon from '@material-ui/icons/EventAvailable';\r\nimport DialogComp from '../../Core/Modal/dialogModal';\r\nimport BookingRequestedModal from './bookingRequested/bookingRequestedModal';\r\nimport { SecondaryButton } from '../../Core/FormInput';\r\nimport CancelPresentationIcon from '@material-ui/icons/CancelPresentation';\r\nimport SendIcon from '@material-ui/icons/Send';\r\nimport ScheduleIcon from '@material-ui/icons/Schedule';\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%',\r\n border: '2px solid rgb(90 114 123 / 20%)',\r\n Opacity: 0.9,\r\n minWidth: 345,\r\n borderRadius: 15,\r\n boxShadow: 'rgb(90 114 123 / 11%) 0px 7px 30px 0px',\r\n paddingBottom: 20\r\n },\r\n\r\n avatar: {\r\n height: 40,\r\n width: 40\r\n }\r\n}));\r\n\r\nexport const RenderTiles = (props) => {\r\n const classes = useStyles();\r\n const { cards, label } = props;\r\n let history = useHistory();\r\n\r\n let onChange = (val, logID) => {\r\n let tempUrlObj = { state: logID ? logID : '' };\r\n if (val.pathname) {\r\n tempUrlObj = { ...val, ...tempUrlObj };\r\n } else {\r\n tempUrlObj = { pathname: val, ...tempUrlObj };\r\n }\r\n history.push(tempUrlObj);\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n {props.label}\r\n \r\n\r\n \r\n {cards?.map((m, i) => {\r\n let Icons = m.icon;\r\n return (\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {Icons}\r\n \r\n
\r\n\r\n onChange(m?.url, m.logID)}\r\n >\r\n
{m?.name}
\r\n\r\n {m?.count}\r\n
\r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n );\r\n};\r\nconst CustCommonDash = (props) => {\r\n const portalSettings = AppStorage.getPortalSetting();\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n const [state, setState] = useState({\r\n InvoiceData: [],\r\n eWIPData: [],\r\n communicatorData: [],\r\n isReload: null\r\n });\r\n const { showToast, userRoles } = useContext(AppContext);\r\n const isCustomer = userRoles.includes('customer');\r\n const isInternal = userRoles.includes('internal');\r\n\r\n useEffect(async () => {\r\n if (AppStorage.getWIPAllowed() && portalSettings.portalSettingeWIPEnabled) {\r\n let res2 = await getCustomerDashboard();\r\n if (res2.success) {\r\n setState((st) => ({ ...st, eWIPData: res2.data }));\r\n }\r\n if (!res2.success) {\r\n showToast(res2.message);\r\n }\r\n }\r\n\r\n if (AppStorage.getInvoiceAllowed()) {\r\n let res = await getDashboardForInvoice();\r\n if (res.success) {\r\n setState((st) => ({ ...st, InvoiceData: res.data.list[0] }));\r\n } else {\r\n showToast(res.message);\r\n }\r\n }\r\n\r\n if (AppStorage.getCommunicatorAllowed()) {\r\n let communicator = await getCommunicatorDash();\r\n if (communicator.success) {\r\n setState((st) => ({ ...st, communicatorData: communicator.data?.list[0] }));\r\n }\r\n if (!communicator.success) {\r\n showToast(communicator.message);\r\n }\r\n }\r\n }, [state.isReload]);\r\n\r\n const bookingReqShowModal = () => {\r\n setState((st) => ({ ...st, isBookingRequesteModal: true }));\r\n };\r\n\r\n const closeModal = (val) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.isBookingRequesteModal = false;\r\n if (val) {\r\n newSt.isReload = new Date();\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n const InvoiceMember = [\r\n {\r\n id: 1,\r\n name: 'All Invoices',\r\n color: '#1abc9c',\r\n count: state.InvoiceData.allInvoices || 0,\r\n icon: ,\r\n url: '/invoice/allInvoices'\r\n },\r\n {\r\n id: 2,\r\n name: 'Invoices Outstanding',\r\n color: '#e74c3c',\r\n count: state.InvoiceData.unPaidInvoices || 0,\r\n icon: ,\r\n url: '/invoice/Invoice_Outstanding'\r\n },\r\n {\r\n id: 3,\r\n name: 'Invoices Queried',\r\n color: '#ff9f00',\r\n count: state.InvoiceData.queriedCount || 0,\r\n icon: ,\r\n url: '/invoice/Invoice_Queried'\r\n },\r\n {\r\n id: 4,\r\n name: 'Invoices Paid',\r\n color: '#1abc9c',\r\n count: state.InvoiceData.paidInvoices || 0,\r\n icon: ,\r\n url: '/invoice/Invoice_Paid'\r\n },\r\n {\r\n id: 5,\r\n name: 'Messages Sent',\r\n color: '#95a5a6',\r\n count: state.InvoiceData.messagesSent || 0,\r\n icon: ,\r\n url: '/invoice/messagesSent'\r\n },\r\n {\r\n id: 5,\r\n name: 'Messages Received',\r\n color: '#9b6bcc',\r\n count: state.InvoiceData.messagesReceived || 0,\r\n icon: ,\r\n url: '/invoice/messagesReceived'\r\n }\r\n // {\r\n // id: 5,\r\n // name: 'Total Customer',\r\n // color: '#2ecc71',\r\n // count: state.InvoiceData.customerCount || 0,\r\n // icon: ,\r\n // url: '/invoice/Customers'\r\n // }\r\n ];\r\n const eWIPDataMember = [\r\n {\r\n id: 1,\r\n name: 'Current Month',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.eWIPData.currentMonth,\r\n url: '/Customer/Current Month/1'\r\n },\r\n {\r\n id: 2,\r\n name: 'Current Year',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.eWIPData.currentYear,\r\n url: '/Customer/Current Year/2'\r\n },\r\n {\r\n id: 3,\r\n name: 'Last Year',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.eWIPData.preYear,\r\n url: '/Customer/Last Year/3'\r\n },\r\n {\r\n id: 4,\r\n name: 'Total',\r\n color: '#868e96',\r\n icon: ,\r\n count: state.eWIPData.total,\r\n url: '/Customer/Total/4'\r\n }\r\n ];\r\n\r\n const CommunicatorMember = [\r\n {\r\n id: 1,\r\n name: 'Awaiting Authority',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.awaitingAuthorityCount,\r\n url: isInternal ? { pathname: '/SiteVehicles', search: `?status=AUTH` } : '/AwaitingAuthority'\r\n },\r\n // {\r\n // id: 2,\r\n // name: 'Site Vehicles',\r\n // color: '#2ecc71',\r\n // icon: ,\r\n // count: state.communicatorData.siteVehiclesCount,\r\n // url: '/SiteVehicles'\r\n // },\r\n // {\r\n // id: 10,\r\n // name: 'Bookings',\r\n // color: '#3498db',\r\n // icon: ,\r\n // count: state.communicatorData.bookingCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=BOOKED` }\r\n // },\r\n {\r\n id: 17,\r\n name: 'Work Completed',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.workCompletedCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=WC` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 18,\r\n name: ' Awaiting Collection',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.awaitingCollectionCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=ACOLLECTION` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 3,\r\n name: 'VOR Vehicles',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.vorVehiclesCount,\r\n url: '/VORVehicles'\r\n }\r\n ];\r\n\r\n let permissionCounterCustList = [\r\n {\r\n id: 1,\r\n name: 'VOR Vehicles',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.vorVehiclesCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=VOR` }\r\n },\r\n // {\r\n // id: 4,\r\n // name: 'Awaiting Full Order',\r\n // color: '#dc3545',\r\n // icon: ,\r\n // count: state.communicatorData.awaitingFullOrderNumberCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=AFON` }\r\n // },\r\n // {\r\n // id: 13,\r\n // name: 'Site Vehicles',\r\n // color: '#3498db',\r\n // icon: ,\r\n // count: state.communicatorData.siteVehiclesCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=S` }\r\n // },\r\n {\r\n id: 17,\r\n name: 'Work Completed',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.workCompletedCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=WC` }\r\n },\r\n {\r\n id: 18,\r\n name: ' Awaiting Collection',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.awaitingCollectionCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=ACOLLECTION` }\r\n }\r\n ];\r\n\r\n const CommunicatorBookingsSec = [\r\n {\r\n id: 10,\r\n name: 'Bookings',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=BOOKED` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 10,\r\n name: isInternal ? 'Request Received' : 'Request Sent',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingRequestCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=1` },\r\n isShowCustomer: true\r\n },\r\n\r\n ...(!isInternal\r\n ? [\r\n {\r\n id: 10,\r\n name: 'Re-Schedule Received',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingReScheduleReceivedSentCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=2` }\r\n },\r\n {\r\n id: 10,\r\n name: 'Re-Schedule Sent',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingReScheduleSentCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=3` },\r\n isShowCustomer: true\r\n }\r\n ]\r\n : [\r\n {\r\n id: 10,\r\n name: 'Re-Schedule Sent',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingReScheduleSentCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=2` }\r\n },\r\n\r\n {\r\n id: 10,\r\n name: 'Re-Schedule Received',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingReScheduleReceivedSentCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=3` },\r\n isShowCustomer: true\r\n }\r\n ]),\r\n\r\n {\r\n id: 10,\r\n name: 'Booking Confirmed',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.bookingConfirmedCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=4` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 10,\r\n name: 'Booking Cancelled',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.bookingCancelCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=5` },\r\n isShowCustomer: true\r\n }\r\n ];\r\n\r\n const CommunicatorHeaderComp = () => {\r\n return (\r\n
\r\n Bookings\r\n
\r\n Request Booking\r\n
\r\n
\r\n );\r\n };\r\n\r\n return (\r\n
\r\n \r\n {AppStorage.getWIPAllowed() && portalSettings.portalSettingeWIPEnabled ? (\r\n \r\n \r\n \r\n ) : null}\r\n {AppStorage.getInvoiceAllowed() && (\r\n \r\n \r\n \r\n )}\r\n {AppStorage.getCommunicatorAllowed() && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {state.isBookingRequesteModal && (\r\n // closeModal(false)} maxWidth=\"md\" fullWidth overflow=\"auto\">\r\n \r\n // \r\n )}\r\n
\r\n );\r\n};\r\nexport default CustCommonDash;\r\n","import React, { useEffect, useContext, useState } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { Link } from 'react-router-dom';\r\nimport { Avatar, Card, CardContent, Typography, Container } from '@material-ui/core';\r\nimport '../../../Auditor/Dashboard/dashboard.scss';\r\nimport { getDashboardForInvoice } from '../../../../Core/Service/InvoiceScreen-service';\r\nimport EmailIcon from '@material-ui/icons/Email';\r\nimport DescriptionIcon from '@material-ui/icons/Description';\r\nimport PeopleIcon from '@material-ui/icons/People';\r\nimport AttachMoneyIcon from '@material-ui/icons/AttachMoney';\r\nimport LiveHelpIcon from '@material-ui/icons/LiveHelp';\r\nimport AnnouncementIcon from '@material-ui/icons/Announcement';\r\nimport ForumIcon from '@material-ui/icons/Forum';\r\nimport TelegramIcon from '@material-ui/icons/Telegram';\r\nimport { RenderTiles } from '../../../customer/CustCommonDash';\r\nimport { AppStorage } from '../../../../Core/Service/storage-service';\r\nconst InvoicesDashboard = (props) => {\r\n const [state, setState] = useState({\r\n rows_new: []\r\n });\r\n const { showToast, userRoles } = useContext(AppContext);\r\n let isCustomer = userRoles[0] === 'customer';\r\n\r\n useEffect(async () => {\r\n let res = await getDashboardForInvoice();\r\n if (res.success) {\r\n setState((st) => ({ ...st, rows_new: res.data.list[0] }));\r\n } else {\r\n showToast(res.message);\r\n }\r\n }, []);\r\n const cards = [\r\n {\r\n id: 1,\r\n name: 'All Invoices',\r\n color: '#1abc9c',\r\n count: state.rows_new.allInvoices || 0,\r\n icon: ,\r\n url: '/invoice/allInvoices'\r\n },\r\n {\r\n id: 2,\r\n name: 'Invoices Outstanding',\r\n color: '#2ecc71',\r\n count: state.rows_new.unPaidInvoices || 0,\r\n icon: ,\r\n url: '/invoice/Invoice_Outstanding'\r\n },\r\n {\r\n id: 3,\r\n name: 'Invoices Queried',\r\n color: '#e74c3c',\r\n count: state.rows_new.queriedCount || 0,\r\n icon: ,\r\n url: '/invoice/Invoice_Queried'\r\n },\r\n {\r\n id: 4,\r\n name: 'Invoices Paid',\r\n color: '#3498db',\r\n count: state.rows_new.paidInvoices || 0,\r\n icon: ,\r\n url: '/invoice/Invoice_Paid'\r\n },\r\n {\r\n id: 5,\r\n name: 'Messages Sent',\r\n color: '#95a5a6',\r\n count: state.rows_new.messagesSent || 0,\r\n icon: ,\r\n url: '/invoice/messagesSent'\r\n },\r\n {\r\n id: 5,\r\n name: 'Messages Received',\r\n color: '#9b6bcc',\r\n count: state.rows_new.messagesReceived || 0,\r\n icon: ,\r\n url: '/invoice/messagesReceived'\r\n }\r\n ];\r\n\r\n if (!isCustomer) {\r\n cards.push({\r\n id: 5,\r\n name: 'Total Customer',\r\n color: '#2ecc71',\r\n count: state.rows_new.customerCount || 0,\r\n icon: ,\r\n url: '/invoice/Customers'\r\n });\r\n }\r\n\r\n return (\r\n //
\r\n // \r\n // \r\n // {cards.map((option) => (\r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // {option.icon ? option.icon : £}\r\n // \r\n // \r\n // \r\n // \r\n // {option.count}\r\n // \r\n // \r\n // {option.name}\r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // \r\n // ))}\r\n // \r\n // \r\n //
\r\n
\r\n \r\n {AppStorage.getInvoiceAllowed() && (\r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n};\r\nexport default InvoicesDashboard;\r\n","import React from 'react';\r\nimport './budgetCommon.scss';\r\nimport CallMadeIcon from '@material-ui/icons/CallMade';\r\n\r\nexport const FilterBtn = (props) => {\r\n const { active, children, ...rest } = props;\r\n\r\n return (\r\n <>\r\n
\r\n {children}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const FilterBtnWithIcon = (props) => {\r\n const { active, children, ...rest } = props;\r\n\r\n return (\r\n <>\r\n
\r\n {children}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const BudgetSendBtn = (props) => {\r\n return (\r\n <>\r\n
\r\n {' '}\r\n {' '}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const SmallBudgetSendBtn = (props) => {\r\n return (\r\n <>\r\n
\r\n {' '}\r\n {' '}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const LinkedButton = (props) => {\r\n return (\r\n <>\r\n
\r\n {props.children}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const SmallLinkedButton = (props) => {\r\n return (\r\n <>\r\n
\r\n {props.children}\r\n
\r\n \r\n );\r\n};\r\n","import React, { useState } from 'react';\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport './wipHours.scss';\r\nimport { Grid, Typography } from '@material-ui/core';\r\n\r\nconst GraphCell = withStyles((theme) => ({\r\n head: {\r\n fontSize: 12,\r\n border: '1px solid #f9f9f9',\r\n padding: 4,\r\n backgroundColor: '#E31C48',\r\n textAlign: 'center',\r\n color: theme.palette.common.white\r\n },\r\n body: {\r\n fontSize: 12,\r\n border: '1px solid #f9f9f9',\r\n padding: 4,\r\n backgroundColor: 'white',\r\n border: '1px solid rgba(0,0,0,0.03)',\r\n // textAlign: 'center',\r\n color: theme.palette.common.black\r\n }\r\n}))(TableCell);\r\n\r\nconst EmptyGraphCell = withStyles((theme) => ({\r\n head: {\r\n fontSize: 14,\r\n // border: '1px solid #f9f9f9',\r\n padding: 6,\r\n backgroundColor: '#f9f9f9',\r\n textAlign: 'center',\r\n color: '#f9f9f9'\r\n },\r\n body: {\r\n fontSize: 14,\r\n border: '1px solid #f9f9f9',\r\n padding: 6,\r\n backgroundColor: 'white',\r\n // textAlign: 'center',\r\n color: theme.palette.common.black\r\n }\r\n}))(TableCell);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n width: '100%'\r\n },\r\n container: {\r\n // maxHeight: 200\r\n }\r\n});\r\n\r\nexport const WipGraphTable = (props) => {\r\n const [state, setState] = useState({\r\n index: 0\r\n });\r\n\r\n const handleIndex = (index) => {\r\n setState((st) => ({ ...st, index: index }));\r\n };\r\n const temp = [];\r\n const newtemp = [];\r\n\r\n props.data.forEach((q) => {\r\n let date = newtemp.findIndex((t) => t.date == q.date);\r\n if (date > -1) {\r\n newtemp[date]['monthTotal'] += q.hours;\r\n } else {\r\n newtemp.push({\r\n date: q.date,\r\n monthTotal: q.hours\r\n });\r\n }\r\n });\r\n props.data.forEach((q) => {\r\n let isIDExist = temp.findIndex((t) => t.branchID == q.branchID);\r\n if (isIDExist > -1) {\r\n temp[isIDExist].data.push({ date: q.date, hours: q.hours });\r\n } else {\r\n temp.push({\r\n branchID: q.branchID,\r\n branch: q.branch,\r\n data: [{ date: q.date, hours: q.hours }]\r\n });\r\n }\r\n });\r\n\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n branch\r\n {temp[0]?.data.map((m, i) => {\r\n return (\r\n <>\r\n {m.date}\r\n {/* Hours */}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n {newtemp?.map((m, index) => {\r\n return (\r\n <>\r\n \r\n {m.monthTotal}\r\n \r\n \r\n );\r\n })}\r\n \r\n {temp?.map((m, index) => {\r\n return (\r\n handleIndex(index)}>\r\n \r\n {m.branch}\r\n \r\n\r\n {m?.data.map((n, i) => {\r\n return (\r\n <>\r\n {/* \r\n {n.date}\r\n */}\r\n \r\n {n.hours}\r\n \r\n \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 const WipTiles = (props) => {\r\n// const temp = [];\r\n// props.data.forEach((q) => {\r\n// let isIDExist = temp.findIndex((t) => t.branchID == q.branchID);\r\n// if (isIDExist > -1) {\r\n// temp[isIDExist].data.push({ date: q.date, hours: q.hours });\r\n// } else {\r\n// temp.push({\r\n// branchID: q.branchID,\r\n// branch: q.branch,\r\n// data: [{ date: q.date, hours: q.hours }]\r\n// });\r\n// }\r\n// });\r\n\r\n// return (\r\n//
\r\n// {temp.map((m, i) => {\r\n// return (\r\n// \r\n// \r\n// {m.branch}\r\n// \r\n// \r\n// \r\n// {m.data.map((n) => {\r\n// return (\r\n// <>\r\n// \r\n// {n.date}\r\n// {n.hours}\r\n// \r\n// \r\n// );\r\n// })}\r\n// \r\n// \r\n// \r\n// );\r\n// })}\r\n//
\r\n// );\r\n// };\r\n","import { Typography } from '@material-ui/core';\r\n// import { color } from 'html2canvas/dist/types/css/types/color';\r\nimport React, { PureComponent } from 'react';\r\nimport { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer } from 'recharts';\r\nimport { WipGraphTable, WipTiles } from './wipTable';\r\n\r\nconst COLORS = {\r\n 0: '#0074D9',\r\n 1: '#FF4136',\r\n 2: '#2ECC40',\r\n 3: '#FF851B',\r\n 4: '#7FDBFF',\r\n 5: '#B10DC9',\r\n 6: '#FFDC00',\r\n 7: '#C33C9A',\r\n 8: '#39CCCC',\r\n 9: '#01FF70',\r\n 10: '#85144b',\r\n 11: '#F012BE',\r\n 12: '#3D9970',\r\n 13: '#111111',\r\n 14: '#AAAAAA'\r\n};\r\n\r\nclass CustomizedLabel extends PureComponent {\r\n render() {\r\n const { x, y, stroke, value } = this.props;\r\n\r\n return (\r\n \r\n {value}\r\n \r\n );\r\n }\r\n}\r\n\r\nexport const WIPLineCharts = (props) => {\r\n return (\r\n <>\r\n \r\n {props.label}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.tempData && }\r\n {props?.keys ? (\r\n props.keys.map((m, i) => {\r\n return ;\r\n })\r\n ) : (\r\n } />\r\n )}\r\n \r\n \r\n {props.showTable ? : null}\r\n \r\n );\r\n};\r\n","import { CircularProgress, Grid, Typography } from '@material-ui/core';\r\nimport React from 'react';\r\nimport formatters from '../../../Core/Grid/inputFormatter';\r\nimport './ReportingScreensStyle.scss';\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { Bar, BarChart, CartesianGrid, Cell, LabelList, Legend, LineChart, ReferenceLine, ResponsiveContainer, Tooltip, XAxis, YAxis } from 'recharts';\r\nimport { RenderTiles } from '../../customer/CustCommonDash';\r\nimport LocalShippingIcon from '@material-ui/icons/LocalShipping';\r\nimport GraphicEqIcon from '@material-ui/icons/GraphicEq';\r\nimport DepartureBoardIcon from '@material-ui/icons/DepartureBoard';\r\nimport TimerIcon from '@material-ui/icons/Timer';\r\nimport { WIPLineCharts } from './WIpHours/WipLineChart';\r\n\r\nfunction isFiniteCheck(str) {\r\n return isFinite(str) ? str.toFixed(2) : '0.00';\r\n}\r\n\r\nvar colorCombi = {\r\n 0: { succ: '#abeaab', fail: '#e58f87' },\r\n 1: { succ: '#188f18', fail: '#792222' }\r\n};\r\n\r\nconst COLORS = {\r\n 0: '#0074D9',\r\n 1: '#FF4136',\r\n 2: '#2ECC40',\r\n 3: '#FF851B',\r\n 4: '#7FDBFF',\r\n 5: '#B10DC9',\r\n 6: '#FFDC00',\r\n 7: '#C33C9A',\r\n 8: '#39CCCC',\r\n 9: '#01FF70',\r\n 10: '#85144b',\r\n 11: '#F012BE',\r\n 12: '#3D9970',\r\n 13: '#111111',\r\n 14: '#AAAAAA'\r\n};\r\n\r\nconst minMaxYAxisCal = (dataMin, dataMax) => {\r\n // return [dataMin, dataMax];\r\n const absMax = Math.max(Math.abs(dataMin), Math.abs(dataMax));\r\n // if (dataMax < 0) {\r\n // dataMin = dataMin + dataMin / 10;\r\n // dataMax = 0 - dataMin / 10;\r\n // }\r\n // else {\r\n // dataMin = dataMin + dataMin / 10;\r\n // dataMax = dataMax + dataMax / 5;\r\n // }\r\n\r\n return [-absMax - absMax / 6, absMax + absMax / 6];\r\n};\r\n\r\nconst CustomTooltip = ({ active, payload, label, formatter }) => {\r\n if (active && payload && payload.length) {\r\n return (\r\n
\r\n
{label}
\r\n
\r\n {payload[0].name}:  \r\n {formatter ? formatters[`${formatter}`](+payload[0].value) : +payload[0].value}\r\n
\r\n
\r\n );\r\n }\r\n\r\n return null;\r\n};\r\nconst renderCustomizedLabel = (props) => {\r\n const { x, y, width, height, value, formatter, fill } = props;\r\n\r\n return (\r\n 0 ? y - 10 : y + 10} fill={fill} textAnchor=\"middle\" dominantBaseline=\"middle\" fontSize={14}>\r\n {formatter ? formatters[`${formatter}`](value) : value}\r\n \r\n );\r\n};\r\n\r\nconst PartCustomTooltip = ({ active, payload, label, formatter }) => {\r\n if (active && payload && payload.length) {\r\n return (\r\n
\r\n
{label}
\r\n
\r\n {payload[0].name}:  \r\n {formatter ? formatters[`${formatter}`](+payload[0].value) : +payload[0].value}\r\n
\r\n
\r\n {payload[1].name}:  \r\n {formatter ? formatters[`${formatter}`](+payload[1].value) : +payload[1].value}\r\n
\r\n
\r\n );\r\n }\r\n\r\n return null;\r\n};\r\n\r\nconst renderPartsCustomizedLabel = (props) => {\r\n const { x, y, width, height, value } = props;\r\n\r\n return (\r\n 0 ? y - 10 : y + 10}\r\n fill={value < 0 ? '#792222' : '#188f18'}\r\n textAnchor=\"middle\"\r\n dominantBaseline=\"middle\"\r\n fontSize={14}\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(value)}\r\n \r\n );\r\n};\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#5c5c5c',\r\n color: 'white',\r\n padding: 9,\r\n border: 'none',\r\n fontWeight: 600\r\n },\r\n body: {\r\n fontSize: 14,\r\n border: 'none',\r\n padding: 9,\r\n borderBottom: '1px solid rgba(0,0,0,0.009)'\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(odd)': {\r\n backgroundColor: 'rgba(0,0,0,0.009)'\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nconst StyledTableRowGrey = withStyles((theme) => ({\r\n root: {\r\n backgroundColor: 'lightGrey'\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n overflow: 'auto',\r\n minWidth: '1200px',\r\n border: '1px solid rgba(0,0,0,0.002)'\r\n },\r\n surChargetable: {\r\n overflow: 'auto',\r\n minWidth: '100%',\r\n border: '1px solid rgba(0,0,0,0.002)'\r\n }\r\n});\r\n\r\nexport const VehicleCard = (props) => {\r\n const { row, MTD, YTD, label, BudgetMTD, BudgetYTD } = props;\r\n\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {label}\r\n \r\n \r\n\r\n \r\n MTD\r\n {formatters.ThousandSeparatorWithoutZero(MTD)}\r\n
\r\n
{BudgetMTD || 0}
\r\n
\r\n
\r\n\r\n \r\n YTD\r\n {formatters.ThousandSeparatorWithoutZero(YTD)}\r\n \r\n
{BudgetYTD || 0}
\r\n \r\n
\r\n
\r\n\r\n \r\n {' '}\r\n \r\n \r\n \r\n \r\n Franchise\r\n MTD\r\n YTD\r\n {/* MTD Budget\r\n YTD Budget */}\r\n \r\n \r\n \r\n {row.map((n, i) => {\r\n return (\r\n \r\n \r\n {n.franchiseName}\r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.mtdTotal)}\r\n {formatters.ThousandSeparatorWithoutZero(n.ytdTotal)}\r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const StockCard = (props) => {\r\n const { row, label } = props;\r\n\r\n return (\r\n \r\n \r\n {row.map((n) => {\r\n return (\r\n \r\n \r\n \r\n \r\n {label}\r\n \r\n \r\n \r\n \r\n \r\n Current Stock Value\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.currentStockTotal)}\r\n \r\n \r\n\r\n \r\n Average Stock Value\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.currentStockTotal / n.currentStockCount)}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n 0 - 30 DAYS\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.total0to30)}\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.count0to30)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 31 -60 DAYS\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.total31to60)}\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.count31to60)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 61 - 90 DAYS\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.total61to90)}\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.count61to90)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 91 - 120 DAYS\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.total91to120)}\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.count91to120)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 121 - 150 DAYS\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.total121to150)}\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.count121to150)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 150+ DAYS\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.total150Plus)}\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.count150Plus)}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n};\r\n\r\nlet configIndex = [\r\n { name: 'MTD Hours', keyName: 'mtdSold' },\r\n { name: 'Hours Taken', keyName: 'mtdTaken' },\r\n { name: 'Available Hours', keyName: 'ytdAvailable' },\r\n { name: 'YTD Hours', keyName: 'ytdSold' },\r\n { name: 'YTD Taken', keyName: 'ytdTaken' }\r\n];\r\nlet configIndex2 = [\r\n { name: 'MTD Sold', keyName: 'mtdSale' },\r\n { name: 'YTD Sold', keyName: 'ytdSale' }\r\n];\r\n\r\nexport const AfterSaleCombined = (props) => {\r\n const classes = useStyles();\r\n const { row, label } = props;\r\n const history = useHistory();\r\n\r\n props.list.forEach((o, i) => {\r\n configIndex.forEach((p) => {\r\n p[`${o.bn}`] = o[p.keyName];\r\n });\r\n configIndex2.forEach((p) => {\r\n p[`${o.bn}`] = o[p.keyName];\r\n });\r\n });\r\n\r\n const GoToDailyInvoicedHours = (params) => {\r\n let searchQuery = `startDateType=${params?.startDateType || ''}&branchID=${params?.branchId || ''}`;\r\n history.push({\r\n pathname: `/Services/InvoicedHours`,\r\n search: searchQuery\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {label}\r\n \r\n \r\n \r\n \r\n \r\n Sold Hours\r\n \r\n MTD\r\n\r\n GoToDailyInvoicedHours({ startDateType: 'mtd' })}\r\n >\r\n {formatters.ThousandSeparatorWithoutZero(props.sold)}\r\n \r\n \r\n
\r\n {formatters.ThousandSeparatorWithoutZero(props.MTDTotalBudget) || 0}\r\n
\r\n \r\n
\r\n YTD\r\n GoToDailyInvoicedHours({ startDateType: 'ytd' })}\r\n >\r\n {formatters.ThousandSeparatorWithoutZero(props.YTDsold)}\r\n \r\n
\r\n
\r\n {formatters.ThousandSeparatorWithoutZero(props.YTDTotalBudget) || 0}\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n Sales\r\n \r\n MTD\r\n GoToDailyInvoicedHours({ startDateType: 'mtd' })}\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(props.sale)}\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(props.mtdBudget) || 0}\r\n
\r\n
\r\n
\r\n YTD\r\n GoToDailyInvoicedHours({ startDateType: 'ytd' })}\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(props.YTDsale)}\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(props.ytdBudget) || 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 value.toFixed(2)} />\r\n \r\n \r\n \r\n\r\n {props.list.map((p, i) => {\r\n return (\r\n \r\n {props.list.map((entry, index) => (\r\n \r\n ))}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {/* Dummy */}\r\n \r\n \r\n \r\n \r\n value.toFixed(2)} />\r\n \r\n \r\n \r\n\r\n {props.list.map((p, i) => {\r\n return (\r\n \r\n {props.list.map((entry, index) => (\r\n \r\n ))}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n MTD Hours\r\n MTD Sold\r\n Hours Taken\r\n Available Hours\r\n Recovery Rate\r\n {/* MTD Cost */}\r\n YTD Hours\r\n YTD Sold\r\n YTD Taken\r\n {/* YTD Cost */}\r\n \r\n \r\n \r\n {props?.list.map((n, i) => {\r\n return (\r\n \r\n GoToDailyInvoicedHours({ branchId: n.branchID })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {n.bn}\r\n \r\n GoToDailyInvoicedHours({ branchId: n.branchID, startDateType: 'mtd' })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {formatters.ThousandSeparatorWithoutZero(n.mtdSold)}\r\n \r\n GoToDailyInvoicedHours({ branchId: n.branchID, startDateType: 'mtd' })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.mtdSale)}\r\n \r\n GoToDailyInvoicedHours({ branchId: n.branchID, startDateType: 'mtd' })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {formatters.ThousandSeparatorWithoutZero(n.mtdTaken)}\r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.ytdAvailable)}\r\n {formatters.CurrencyThousandSeparator(n.recRateTable)}\r\n\r\n GoToDailyInvoicedHours({ branchId: n.branchID, startDateType: 'ytd' })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {formatters.ThousandSeparatorWithoutZero(n.ytdSold)}\r\n \r\n GoToDailyInvoicedHours({ branchId: n.branchID, startDateType: 'ytd' })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.ytdSale)}\r\n \r\n GoToDailyInvoicedHours({ branchId: n.branchID, startDateType: 'ytd' })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {formatters.ThousandSeparatorWithoutZero(n.ytdTaken)}\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n Invoicing Hours\r\n \r\n \r\n \r\n \r\n minMaxYAxisCal(dataMin, dataMax)}\r\n tickFormatter={(value) => value.toFixed(2)}\r\n />\r\n } />\r\n\r\n \r\n\r\n \r\n renderCustomizedLabel({ ...props, formatter: 'ThousandSeparatorWithoutZero' })}\r\n />\r\n\r\n {props.list.map((entry, index) => (\r\n GoToDailyInvoicedHours({ branchId: entry.branchID })}\r\n />\r\n ))}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Invoicing\r\n (£'s)\r\n \r\n \r\n \r\n \r\n \r\n minMaxYAxisCal(dataMin, dataMax)}\r\n tickFormatter={(value) => value.toFixed(2)}\r\n />\r\n } />\r\n\r\n \r\n\r\n \r\n renderCustomizedLabel({ ...props, formatter: 'CurrencyThousandSeparatorWithoutZero' })}\r\n />\r\n {props.list.map((entry, index) => (\r\n GoToDailyInvoicedHours({ branchId: entry.branchID })}\r\n />\r\n ))}\r\n \r\n \r\n \r\n \r\n\r\n \r\n Recovery Rate\r\n \r\n \r\n \r\n \r\n minMaxYAxisCal(dataMin, dataMax)}\r\n tickFormatter={(value) => value.toFixed(2)}\r\n />\r\n } />\r\n\r\n \r\n\r\n \r\n renderCustomizedLabel({ ...props, formatter: 'CurrencyThousandSeparator' })}\r\n position=\"top\"\r\n />\r\n {props.list.map((entry, index) => (\r\n GoToDailyInvoicedHours({ branchId: entry.branchID })}\r\n />\r\n ))}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n Efficiency\r\n (Sold/Taken hrs)\r\n \r\n \r\n \r\n \r\n \r\n minMaxYAxisCal(dataMin, dataMax)}\r\n tickFormatter={(value) => value.toFixed(2)}\r\n />\r\n } />\r\n\r\n \r\n\r\n \r\n renderCustomizedLabel({ ...props, formatter: 'PercentageFormatter' })}\r\n />\r\n {props.list.map((entry, index) => (\r\n GoToDailyInvoicedHours({ branchId: entry.branchID })}\r\n />\r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const AfterSaleBranchCardPart = (props) => {\r\n const history = useHistory();\r\n\r\n const onRedirect = (params) => {\r\n let searchQuery = `desc=Total&code=MT&startDateType=${params?.startDateType || ''}&branchID=${params?.branchId || ''}&dc=${params?.dc || ''}`;\r\n history.push({\r\n pathname: 'Total',\r\n search: searchQuery\r\n });\r\n };\r\n\r\n const classes = useStyles();\r\n const { row, label } = props;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {label}\r\n \r\n \r\n {props.showLoader ? (\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n Group Sales\r\n \r\n \r\n \r\n \r\n {props.partsCalculatedList.map((item, i) => {\r\n return (\r\n \r\n MTD {item.d}\r\n\r\n onRedirect({ startDateType: 'mtd', dc: item.dc })}\r\n style={{\r\n fontSize: 20,\r\n fontWeight: '600',\r\n cursor: 'pointer',\r\n textAlign: 'left'\r\n }}\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(item.mtdSaleValue)}\r\n {!item.d ? ({isFiniteCheck(item.mtdgpp)}%) : null}\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(item.mtdBudget) || 0}\r\n
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n \r\n {props.partsCalculatedList.map((item, i) => {\r\n return (\r\n \r\n YTD {item.d}\r\n\r\n onRedirect({ startDateType: 'ytd', dc: item.dc })}\r\n style={{\r\n fontSize: 20,\r\n fontWeight: '600',\r\n cursor: 'pointer',\r\n textAlign: 'left'\r\n }}\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(item.ytdSaleValue)}\r\n {!item.d ? ({isFiniteCheck(item.ytdgpp)}%) : null}\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(item.ytdBudget) || 0}\r\n
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n \r\n Parts Sales Variance\r\n \r\n \r\n \r\n \r\n value.toFixed(2)}\r\n domain={([dataMin, dataMax]) => minMaxYAxisCal(dataMin, dataMax)}\r\n />\r\n } />\r\n\r\n \r\n {props.graphData.uniqueKeys.map((q, i) => {\r\n return (\r\n \r\n \r\n {props.graphData.list.map((entry, index) => {\r\n return (\r\n 0 ? colorCombi[`${i}`]?.succ : colorCombi[`${i}`]?.fail}\r\n cursor=\"pointer\"\r\n onClick={() => onRedirect({ branchId: entry.branchID, dc: q.code })}\r\n />\r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n {props.uniqueBranchList.map((n, i) => {\r\n return (\r\n \r\n
\r\n {n.bn}\r\n
\r\n MTD / YTD\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n \r\n {props.list.map((itm, i) => {\r\n return (\r\n \r\n onRedirect({ dc: itm.dc })}>\r\n {itm.d}\r\n \r\n \r\n \r\n \r\n Required\r\n \r\n \r\n Accomplished\r\n \r\n \r\n \r\n {itm.data.map((dataItme, dataItmIndex) => {\r\n return (\r\n \r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(dataItme.mtdBudget)} /{' '}\r\n {formatters.CurrencyThousandSeparatorWithoutZero(dataItme.ytdBudget)}\r\n \r\n \r\n \r\n onRedirect({\r\n startDateType: 'mtd',\r\n dc: itm.dc,\r\n branchId: dataItme.branchID\r\n })\r\n }\r\n style={{ cursor: 'pointer' }}\r\n className={\r\n dataItme.mtdSaleValue < dataItme.mtdBudget\r\n ? 'customChipRed'\r\n : 'customChip'\r\n }\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(dataItme.mtdSaleValue)}\r\n \r\n {' / '}\r\n \r\n onRedirect({\r\n startDateType: 'ytd',\r\n dc: itm.dc,\r\n branchId: dataItme.branchID\r\n })\r\n }\r\n style={{ cursor: 'pointer' }}\r\n className={\r\n dataItme.ytdSaleValue < dataItme.ytdBudget\r\n ? 'customChipRed'\r\n : 'customChip'\r\n }\r\n >\r\n {formatters.CurrencyThousandSeparatorWithoutZero(dataItme.ytdSaleValue)}\r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n )}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const AfterSaleSupercharge = (props) => {\r\n const classes = useStyles();\r\n const history = useHistory();\r\n\r\n const onRedirect = (params) => {\r\n let searchQuery = `?branchID=${params.branchId}&bn=${\r\n params.branch\r\n }&measuredesc=${'Surcharges'}&MeasureID=${2}&fromPage=${'Aged Measures'}&month=${''}&unallocated=${''}`;\r\n history.push({\r\n pathname: '/AgedMeasures/GetAgedMeasuresDirtyUnits',\r\n search: searchQuery\r\n });\r\n };\r\n\r\n const { row, label } = props;\r\n return (\r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n {label}\r\n \r\n */}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n {label}\r\n \r\n \r\n Qty\r\n Surcharge\r\n \r\n \r\n \r\n {props.list.map((n, i) => {\r\n return (\r\n \r\n onRedirect({ branchId: n.branchID, branch: n.bsn })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {n.branch}\r\n \r\n {formatters.ThousandSeparatorWithoutZero(n.qty)}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.surchargevalue)}\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const AfterSaleJobsDetails = (props) => {\r\n let communicatorDashList = [\r\n {\r\n id: 1,\r\n name: 'VOR Vehicles',\r\n color: '#dc3545',\r\n icon: ,\r\n count: props.partsVOR?.vor,\r\n url: { pathname: '/SiteVehicles', search: `?status=VOR` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 1,\r\n name: 'Part Back Order, ETA > 72 hrs',\r\n color: '#dc3545',\r\n count: props.partsVOR?.partsBackOrder,\r\n icon: ,\r\n url: { pathname: '/SiteVehicles', search: `?status=PB` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 1,\r\n name: 'Awaiting Collection',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: props.partsVOR?.awaitingCollection,\r\n url: { pathname: '/SiteVehicles', search: `?status=ACOLLECTION` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 1,\r\n name: 'Awaiting Authority',\r\n color: '#3498db',\r\n icon: ,\r\n count: props.partsVOR?.awaitingAuthority,\r\n url: { pathname: '/SiteVehicles', search: `?status=AUTH` },\r\n isShowCustomer: true\r\n }\r\n ];\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.label}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const AfterSaleYtdMtdSection = (props) => {\r\n const classes = useStyles();\r\n const history = useHistory();\r\n\r\n const onRedirect = (params) => {\r\n let searchQuery = `branchID=${params?.branchId || ''}&bn=${params.branch}`;\r\n history.push({\r\n pathname: `/AgedMeasures/WorkInProgressbyDepartement`,\r\n search: searchQuery\r\n });\r\n };\r\n\r\n const { row, label } = props;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n {label}\r\n */}\r\n \r\n \r\n Group WIP MTD\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.dailyWIPsUniqueDateList.map((n, i) => {\r\n return (\r\n \r\n
\r\n {n.name}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n \r\n {props.dailyWIPsCombinedList.map((n, i) => {\r\n return (\r\n \r\n onRedirect({ branchId: n.branchID, branch: n.branchShortCode })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {n.branchShortCode}\r\n \r\n {n.data.map((q) => {\r\n return (\r\n {formatters.ThousandSeparatorWithoutZero(q.hours)}\r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n Total\r\n
\r\n
\r\n {props.dailyWIPsUniqueDateList.map((n, i) => {\r\n return (\r\n \r\n
\r\n {formatters.ThousandSeparatorWithoutZero(n.Total)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Group WIP Monthly\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.monthlyWIPsUniqueDateList.map((n, i) => {\r\n return (\r\n \r\n
\r\n {n.name}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n \r\n {props.monthlyWIPsCombinedList.map((n, i) => {\r\n return (\r\n \r\n onRedirect({ branchId: n.branchID, branch: n.branchShortCode })}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {n.branchShortCode}\r\n \r\n {n.data.map((q) => {\r\n return (\r\n {formatters.ThousandSeparatorWithoutZero(q.hours)}\r\n );\r\n })}\r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n Total\r\n
\r\n
\r\n {props.monthlyWIPsUniqueDateList.map((n, i) => {\r\n return (\r\n \r\n
\r\n {formatters.ThousandSeparatorWithoutZero(n.Total)}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import React, { useEffect, useState, useContext } from 'react';\r\nimport moment from 'moment';\r\nimport { Grid, FormLabel, Tooltip, IconButton } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { TextBox } from '../../../../../Core/FormInput';\r\nimport { ExpBaseURL } from '../../../../../Core/Service/http-calls';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport DialogComp from '../../../../../Core/Modal/dialogModal';\r\nimport ViewPdfModal from '../../../../../Core/Modal/PdfViweModal';\r\nimport { useMemo } from 'react';\r\nimport { getAgedMeasuresViewDocument } from '../../../../../Core/Service/ReportScreens-service';\r\nimport ReactDOM from 'react-dom';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { GetExcelFileFromEndpoint } from '../../../../../Core/Service/reportService';\r\nimport AppContext from '../../../../../App/AppContext';\r\n\r\nconst baseNominalColumns = [\r\n {\r\n title: 'Posted',\r\n field: 'pd',\r\n width: 100,\r\n sortable: true,\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Document Date',\r\n field: 'dd',\r\n width: 100,\r\n sortable: true,\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n { title: 'Base Value', field: 'bv', width: 90, sortable: true, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { title: 'Document Number', field: 'dn', width: 100, sortable: true, align: 'right' },\r\n { title: 'Journal Reference', field: 'jr', width: 110, sortable: true }\r\n];\r\n\r\nconst baseColumns = [\r\n { field: 'bn', title: 'Branch', width: 120, showColumnTotal: false },\r\n { field: 'cc', title: 'Cost Centre', width: 120, showColumnTotal: false },\r\n { field: 'ec', title: 'Expense Code', width: 120, showColumnTotal: false },\r\n { field: 'currentPostings', title: 'Current Postings', width: 120, showColumnTotal: true, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { field: 'broughtForward', title: 'Brought Forward', width: 120, showColumnTotal: true, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n {\r\n field: 'dateLastPosting',\r\n title: 'Last Posted',\r\n width: 120,\r\n showColumnTotal: false,\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n }\r\n];\r\nconst screenName = {\r\n C: 'Consumables',\r\n M: 'Mobilovan',\r\n R: 'NPW Rectification',\r\n P: 'Parts Warranty Write Off',\r\n S: 'Service Warranty Write Off'\r\n};\r\n// const crumbs = (code) => {\r\n// let final = [\r\n// { name: 'Home', path: '/' },\r\n// { name: 'Services', active: true },\r\n// { name: screenName[code], active: true }\r\n// ];\r\n// return final;\r\n// };\r\nconst crumbs = (code, menuPermissionCounter) => {\r\n let list = [{ name: 'Home', path: '/' }];\r\n if (menuPermissionCounter !== 1) {\r\n list.push({ name: 'Reports', path: '/ReportsDashboard' });\r\n }\r\n if (code) {\r\n list.push( { name: 'Services', active: true }, { name: screenName[code], active: true });\r\n }\r\n return list;\r\n};\r\n\r\nvar $ = window.$;\r\nvar mainGrid, opGrid;\r\n\r\nconst ServiceNominals = (props) => { \r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n const { showToast } = useContext(AppContext);\r\n\r\n let startDate = moment().startOf('month').format('YYYY-MM-DD');\r\n let endDate = moment().format('YYYY-MM-DD');\r\n\r\n const [state, setState] = useState({\r\n startDate: startDate,\r\n endDate: endDate\r\n });\r\n const fieldChange = (e) => {\r\n let { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n let token = AppStorage.getToken();\r\n const onSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n mainGrid.render(obj);\r\n };\r\n\r\n const onSuccessOperatorFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n opGrid.render(obj);\r\n };\r\n\r\n const documentHandler = async (record) => {\r\n let res = await getAgedMeasuresViewDocument(record.ifn);\r\n if (res) {\r\n setState((st) => ({ ...st, showPdfModal: true, pdfFileData: res }));\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n\r\n const docEditButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n let isFile = record.ifn;\r\n const lnk = (\r\n documentHandler(record) : ''}>\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const nominalColumns = useMemo(() => {\r\n let tempColumns = [...baseNominalColumns];\r\n let ViewDocCol = tempColumns.find((element) => element.field === 'dn');\r\n if (ViewDocCol) {\r\n ViewDocCol.renderer = docEditButton;\r\n }\r\n return tempColumns;\r\n }, []);\r\n let getUrl = `${ExpBaseURL}/api/services/ServiceNominalsList`;\r\n const PullSalesNominalData = async () => {\r\n window.$(`#ServiceNominals`).grid('destroy', true, true);\r\n mainGrid = $('#ServiceNominals').grid({\r\n primaryKey: 'branchID',\r\n dataSource: {\r\n url: getUrl,\r\n data: { Type: props.type },\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: onSuccessFunc\r\n },\r\n detailTemplate: '
',\r\n headerFilter: false,\r\n columns: baseColumns,\r\n pager: { limit: 10 }\r\n });\r\n mainGrid.on('dataBound', function (e, records, totalRecords) {\r\n var sumCurrent = 0,\r\n sumBroughtForward = 0,\r\n $tfoot;\r\n $.each(records, function () {\r\n sumCurrent += parseFloat(this.currentPostings);\r\n sumBroughtForward += parseFloat(this.broughtForward);\r\n });\r\n $tfoot = mainGrid.children('tfoot');\r\n $tfoot.children('tr[data-role=\"TotalAmount\"]').remove();\r\n $tfoot.children('tr[data-role=\"pager\"]').remove();\r\n $tfoot.prepend(\r\n ''\r\n );\r\n });\r\n mainGrid.on('detailExpand', function (e, $detailWrapper, branchID) {\r\n opGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID },\r\n headerFilter: true,\r\n primaryKey: 'dn',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/ServiceNominalsList`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n data: { Type: props.type, StartDate: state.startDate, EndDate: state.endDate },\r\n success: onSuccessOperatorFunc\r\n },\r\n columns: nominalColumns\r\n });\r\n });\r\n\r\n mainGrid.on('detailCollapse', function (e, $detailWrapper, id) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n mainGrid.reload();\r\n };\r\n const downloadCSVWrapper = async () => {\r\n showToast('Collating Data... This may take a while.');\r\n let downloadURL = `services/ServiceNominalsList?Type=${props.type}&fileType=excel`;\r\n await GetExcelFileFromEndpoint(downloadURL, screenName[props.type]);\r\n };\r\n\r\n useEffect(() => {\r\n PullSalesNominalData();\r\n }, [state.startDate, state.endDate, props.type]);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
Total' +\r\n formatters.CurrencyThousandSeparator(sumCurrent) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumBroughtForward) +\r\n '
\r\n \r\n {state.showPdfModal ? (\r\n setState((st) => ({ ...st, showPdfModal: false }))} fullWidth>\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\nexport default ServiceNominals;\r\n","import React, { useEffect, useState, useMemo, useContext } from 'react';\r\nimport moment from 'moment';\r\nimport { Grid, FormLabel, Tooltip, IconButton } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { TextBox } from '../../../../../Core/FormInput';\r\nimport { ExpBaseURL } from '../../../../../Core/Service/http-calls';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport GetWIPHeader from '../../GetWIPDetails';\r\nimport ReactDOM from 'react-dom';\r\nimport DialogComp from '../../../../../Core/Controls/Dialog/DialogComp';\r\nimport { getAgedMeasuresViewDocument } from '../../../../../Core/Service/ReportScreens-service';\r\nimport ViewPdfModal from '../../../../../Core/Modal/PdfViweModal';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { GetExcelFileFromEndpoint } from '../../../../../Core/Service/reportService';\r\nimport AppContext from '../../../../../App/AppContext';\r\n\r\nconst baseColumns = [\r\n { field: 'bn', title: 'Branch', width: 120, filterable: false, sortable: false },\r\n { field: 'sold', title: 'Sold Hours', width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.ToFixedSeparator },\r\n { field: 'taken', title: 'Taken Hours', width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.ToFixedSeparator },\r\n { field: 'eff', title: 'Efficiency %', width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.ToFixedSeparator },\r\n { field: 'sale', title: 'Sale Value', width: 120, filterable: false, sortable: false, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { field: 'cost', title: 'Cost Value', width: 120, filterable: false, sortable: false, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { field: 'profit', title: 'Profit', width: 120, filterable: false, sortable: false, align: 'right', renderer: formatters.CurrencyThousandSeparator, },\r\n { field: 'marginPerc', title: 'Margin %', width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.ToFixedSeparator },\r\n { field: 'recRate', title: 'Rec Rate', width: 120, align: 'right', filterable: false, sortable: false, renderer: formatters.CurrencyThousandSeparator, }\r\n];\r\nvar opColumns = [\r\n { title: 'Technician', field: 'tech', width: 90, sortable: false, align: 'left', tmpl: '{tech}' },\r\n { title: 'Sold', field: 'sold', width: 70, sortable: false, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Taken', field: 'taken', width: 70, sortable: false, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: '% Eff.', field: 'eff', width: 66, sortable: false, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Sale Value', field: 'sale', width: 80, sortable: false, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { title: 'Cost Value', field: 'cost', width: 80, sortable: false, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { title: 'Profit', field: 'profit', width: 80, sortable: false, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { title: 'Margin %', field: 'marginPerc', width: 60, sortable: false, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Rec Rate', field: 'recRate', width: 60, sortable: false, align: 'right', renderer: formatters.CurrencyThousandSeparator, }\r\n];\r\nvar wipColumns = [\r\n {\r\n title: 'WIP',\r\n field: 'wipNumber',\r\n width: 66,\r\n sortable: true,\r\n align: 'left'\r\n },\r\n {\r\n title: 'Invoice No',\r\n field: 'invoiceNumber',\r\n width: 70,\r\n sortable: true\r\n },\r\n { title: 'Customer', field: 'customersName', width: 130, sortable: true },\r\n { title: 'Sold', field: 'sold', width: 60, sortable: true, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Taken', field: 'taken', width: 60, sortable: true, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: '% Eff.', field: 'eff', width: 60, sortable: true, align: 'right', renderer: formatters.ToFixedSeparator },\r\n {\r\n title: 'Sale Value',\r\n field: 'sale',\r\n width: 70,\r\n sortable: true,\r\n renderer: formatters.CurrencyThousandSeparator,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Cost Value',\r\n field: 'cost',\r\n width: 70,\r\n sortable: true,\r\n renderer: formatters.CurrencyThousandSeparator,\r\n align: 'right'\r\n },\r\n { title: 'Profit', field: 'profit', width: 60, sortable: true, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { title: 'Margin %', field: 'marginPerc', width: 60, sortable: true, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Rec Rate', field: 'recRate', width: 60, sortable: true, align: 'right', renderer: formatters.CurrencyThousandSeparator }\r\n];\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Services', active: true },\r\n { name: 'Technician Efficiency', active: true }\r\n];\r\nvar mainGrid, opGrid, wipsGrid;\r\nvar $ = window.$;\r\n\r\nconst TechnicianEfficiency = (props) => {\r\n const { showToast } = useContext(AppContext);\r\n\r\n let startDate = moment().startOf('month').format('YYYY-MM-DD');\r\n let endDate = moment().format('YYYY-MM-DD');\r\n\r\n const [state, setState] = useState({\r\n startDate: startDate,\r\n endDate: endDate,\r\n showWIPDetails: false,\r\n wipNumber: '',\r\n company: ''\r\n });\r\n const fieldChange = (e) => {\r\n let { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showWIPDetails: true, wipNumber: record.wipNumber, company: record.company }))}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const documentHandler = async (record) => {\r\n let res = await getAgedMeasuresViewDocument(record.invoiceFileName);\r\n if (res) {\r\n setState((st) => ({ ...st, showPdfModal: true, pdfFileData: res }));\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n\r\n const docEditButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n let isFile = record.invoiceFileName;\r\n const lnk = (\r\n documentHandler(record) : ''}>\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const columns = useMemo(() => {\r\n const tempCols = [...wipColumns];\r\n let wipNumberCol = tempCols.find((element) => element.field === 'wipNumber');\r\n let ViewDocCol = tempCols.find((element) => element.field === 'invoiceNumber');\r\n if (ViewDocCol) {\r\n ViewDocCol.renderer = docEditButton;\r\n }\r\n if (wipNumberCol) {\r\n wipNumberCol.renderer = editButton({});\r\n }\r\n return tempCols;\r\n });\r\n let token = AppStorage.getToken();\r\n const onSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n mainGrid.render(obj);\r\n };\r\n\r\n const onSuccessOperatorFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n opGrid.render(obj);\r\n };\r\n const onSuccessWipFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n wipsGrid.render(obj);\r\n };\r\n\r\n const PullSalesNominalData = async () => {\r\n window.$(`#TechEfficiency`).grid('destroy', true, true);\r\n mainGrid = $('#TechEfficiency').grid({\r\n primaryKey: 'branchID',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/TechEfficiency`,\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: onSuccessFunc\r\n },\r\n detailTemplate: '
',\r\n headerFilter: false,\r\n columns: baseColumns,\r\n pager: { limit: 10 }\r\n });\r\n\r\n mainGrid.on('dataBound', function (e, records, totalRecords) {\r\n var recordsCount = records.length;\r\n var sumSold = 0,\r\n sumTaken = 0,\r\n sumEff = 0,\r\n sumSale = 0,\r\n sumCost = 0,\r\n sumProfit = 0,\r\n sumMarginPerc = 0,\r\n sumRecRate = 0,\r\n $tfoot;\r\n $.each(records, function () {\r\n sumSold += parseFloat(this.sold);\r\n sumTaken += parseFloat(this.taken);\r\n sumSale += parseFloat(this.sale);\r\n sumCost += parseFloat(this.cost);\r\n sumProfit += parseFloat(this.profit);\r\n sumMarginPerc += parseFloat(this.marginPerc);\r\n sumRecRate += parseFloat(this.recRate);\r\n });\r\n sumEff = parseFloat((sumSold / sumTaken) * 100);\r\n sumMarginPerc = parseFloat(sumMarginPerc / recordsCount);\r\n sumRecRate = parseFloat(sumRecRate / recordsCount);\r\n $tfoot = mainGrid.children('tfoot');\r\n $tfoot.children('tr[data-role=\"TotalAmount\"]').remove();\r\n $tfoot.children('tr[data-role=\"pager\"]').remove();\r\n $tfoot.prepend(\r\n ''\r\n );\r\n });\r\n mainGrid.on('detailExpand', function (e, $detailWrapper, branchID) {\r\n opGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID },\r\n // headerFilter: true,\r\n primaryKey: 'code',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/TechEfficiency`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n success: onSuccessOperatorFunc\r\n },\r\n columns: opColumns,\r\n pager: { limit: 10 },\r\n detailTemplate: '
Total' +\r\n formatters.ToFixedSeparator(sumSold) +\r\n '' +\r\n formatters.ToFixedSeparator(sumTaken) +\r\n '' +\r\n formatters.ToFixedSeparator(sumEff) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumSale) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumCost) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumProfit) +\r\n '' +\r\n formatters.ToFixedSeparator(sumMarginPerc) +\r\n '' +\r\n formatters.ToFixedSeparator(sumRecRate) +\r\n '
'\r\n });\r\n opGrid.on('detailExpand', function (e, $detailWrapper, code) {\r\n wipsGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID, code: code },\r\n primaryKey: 'id',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/TechEfficiency`,\r\n headers: {\r\n Authorization: `Bearer ${token}`,\r\n domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host\r\n },\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n success: onSuccessWipFunc\r\n },\r\n columns: columns,\r\n pager: { limit: 10 }\r\n });\r\n });\r\n\r\n opGrid.on('detailCollapse', function (e, $detailWrapper, code) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n });\r\n\r\n mainGrid.on('detailCollapse', function (e, $detailWrapper, id) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n mainGrid.reload();\r\n };\r\n const downloadCSVWrapper = async () => {\r\n showToast('Collating Data... This may take a while.');\r\n let downloadURL = `services/TechEfficiency?fileType=excel&StartDate=${state.startDate}&EndDate=${state.endDate}`;\r\n await GetExcelFileFromEndpoint(downloadURL, 'TechEfficiency');\r\n };\r\n useEffect(() => {\r\n PullSalesNominalData();\r\n }, [state.startDate, state.endDate, props.type]);\r\n return (\r\n
\r\n \r\n \r\n {state.showWIPDetails && (\r\n setState((st) => ({ ...st, showWIPDetails: false }))} maxWidth=\"xl\" fullWidth>\r\n \r\n \r\n )}\r\n {state.showPdfModal ? (\r\n setState((st) => ({ ...st, showPdfModal: false }))} fullWidth>\r\n \r\n \r\n ) : null}\r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default TechnicianEfficiency;\r\n","import React, { useEffect, useState, useMemo, useContext } from 'react';\r\nimport moment from 'moment';\r\nimport { Grid, FormLabel, IconButton } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../Core/Controls/Breadcrumb';\r\nimport { SingelSelect, TextBox } from '../../../../Core/FormInput';\r\nimport { ExpBaseURL } from '../../../../Core/Service/http-calls';\r\nimport { AppStorage } from '../../../../Core/Service/storage-service';\r\nimport formatters from '../../../../Core/Grid/inputFormatter';\r\nimport GetWIPHeader from '../GetWIPDetails';\r\nimport ReactDOM from 'react-dom';\r\nimport DialogComp from '../../../../Core/Controls/Dialog/DialogComp';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { GetExcelFileFromEndpoint, GetBranchDeportmentScreenDropdowns } from '../../../../Core/Service/reportService';\r\nimport AppContext from '../../../../App/AppContext';\r\n\r\nconst baseColumns = [\r\n { field: 'bn', title: `Branch`, width: 180 },\r\n {\r\n field: 'grossProfit',\r\n title: `Gross Profit `,\r\n width: 120,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n renderer: formatters.CurrencyThousandSeparator\r\n },\r\n { field: 'grossProfitPercent', title: `Gross Profit % `, width: 120, align: 'right', filterable: false, sortable: false },\r\n { field: 'saleValue', title: `Sale Value`, width: 120, align: 'right', renderer: formatters.CurrencyThousandSeparator, filterable: false, sortable: false },\r\n { field: 'costValue', title: `Cost Value`, width: 120, align: 'right', renderer: formatters.CurrencyThousandSeparator, filterable: false, sortable: false },\r\n {\r\n field: 'retailPrice',\r\n title: 'Retail Price',\r\n width: 120,\r\n align: 'right',\r\n renderer: formatters.CurrencyThousandSeparator,\r\n filterable: false,\r\n sortable: false\r\n },\r\n {\r\n field: 'surchargeValue',\r\n title: 'Surcharge Value',\r\n width: 120,\r\n align: 'right',\r\n renderer: formatters.CurrencyThousandSeparator,\r\n filterable: false,\r\n sortable: false\r\n }\r\n];\r\n\r\nvar opColumns = [\r\n { title: 'Operator', field: 'opName', width: 90, sortable: true, align: 'left' },\r\n {\r\n field: 'grossProfit',\r\n title: `Gross Profit `,\r\n width: 120,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n renderer: formatters.CurrencyThousandSeparator\r\n },\r\n { field: 'grossProfitPercent', title: `Gross Profit % `, width: 120, align: 'right', filterable: false, sortable: false },\r\n { field: 'saleValue', title: `Sale Value`, width: 120, align: 'right', renderer: formatters.CurrencyThousandSeparator, filterable: false, sortable: false },\r\n { field: 'costValue', title: `Cost Value`, width: 120, align: 'right', renderer: formatters.CurrencyThousandSeparator, filterable: false, sortable: false },\r\n {\r\n field: 'retailPrice',\r\n title: 'Retail Price',\r\n width: 120,\r\n align: 'right',\r\n renderer: formatters.CurrencyThousandSeparator,\r\n filterable: false,\r\n sortable: false\r\n },\r\n {\r\n field: 'surchargeValue',\r\n title: 'Surcharge Value',\r\n width: 120,\r\n align: 'right',\r\n renderer: formatters.CurrencyThousandSeparator,\r\n filterable: false,\r\n sortable: false\r\n }\r\n];\r\n\r\nconst wipColumns = [\r\n { field: 'wn', title: 'WIP', width: 75 },\r\n { field: 'inv', title: 'Invoice No', width: 90 },\r\n { field: 'ind', title: 'Date', width: 90, renderer: formatters.MonthShortFormatter },\r\n { field: 'an', title: `Account No`, width: 60 },\r\n { field: 'cn', title: `Customer`, width: 80 },\r\n { field: 'rp', title: `Retail Price`, width: 60, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { field: 'sv', title: `Sale`, width: 80, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { field: 'cv', title: `Cost`, width: 80, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { field: 'sur', title: `Surcharge`, width: 80, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { field: 'gp', title: `Gross Profit`, width: 100, align: 'right', renderer: formatters.CurrencyThousandSeparator },\r\n { field: 'gpp', title: `Profit %`, width: 80 }\r\n];\r\n\r\nconst crumbs = (desc) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Parts', active: true },\r\n { name: desc, active: true }\r\n];\r\nvar mainGrid, opGrid, wipsGrid;\r\nvar $ = window.$;\r\n\r\nconst PartSales = (props) => {\r\n const { showToast } = useContext(AppContext);\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamStartDateType = params.get('startDateType') || '';\r\n let ParamBranchID = params.get('branchID') || '';\r\n let ParamDcID = params.get('dc') || '';\r\n\r\n let dateType = ParamStartDateType == 'ytd' ? 'year' : 'month';\r\n let startDate = moment().startOf(`${dateType}`).format('YYYY-MM-DD');\r\n let endDate = moment().format('YYYY-MM-DD');\r\n let ParamMeasuredesc = params.get('desc') || '';\r\n const [state, setState] = useState({\r\n startDate: startDate,\r\n endDate: endDate,\r\n showWIPDetails: false,\r\n wipNumber: '',\r\n company: '',\r\n BranchList: [],\r\n DepartmentList: [],\r\n branchID: null,\r\n departmentCode: ''\r\n });\r\n\r\n useEffect(async () => {\r\n let res = await GetBranchDeportmentScreenDropdowns();\r\n if (res.success) {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.BranchList = res.data?.branchList || [];\r\n newSt.DepartmentList = res.data?.departmentCodes || [];\r\n if (ParamBranchID) {\r\n newSt.branchID = res.data?.branchList.find((r) => r.id == ParamBranchID);\r\n }\r\n if (ParamDcID) {\r\n newSt.departmentCode = res.data?.departmentCodes.find((r) => r.id == ParamDcID);\r\n }\r\n return newSt;\r\n });\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (params.get('code')) {\r\n let findDepartmentcode = state.DepartmentList.find((m) => m.id == params.get('code') || '');\r\n if (findDepartmentcode) {\r\n setState((st) => ({\r\n ...st,\r\n departmentCode: findDepartmentcode\r\n }));\r\n }\r\n }\r\n }, [state.DepartmentList, params.get('code')]);\r\n\r\n const fieldChange = (e) => {\r\n let { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n let token = AppStorage.getToken();\r\n\r\n const mainGridOnSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n mainGrid.render(obj);\r\n };\r\n\r\n const opGridOnSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n opGrid.render(obj);\r\n };\r\n const onSuccessWipFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n wipsGrid.render(obj);\r\n };\r\n const getUrl = `${ExpBaseURL}/api/Parts/PartsSales?dc=${state.departmentCode?.id || ''}&StartDate=${state.startDate}&EndDate=${state.endDate}&branchID=${\r\n state.branchID?.id || ''\r\n }`;\r\n\r\n const pullPartsSalesList = async () => {\r\n window.$(`#tb_PartsSales`).grid('destroy', true, true);\r\n\r\n mainGrid = $('#tb_PartsSales').grid({\r\n primaryKey: 'branchID',\r\n\r\n dataSource: {\r\n url: getUrl,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: mainGridOnSuccessFunc\r\n },\r\n detailTemplate: '
',\r\n columns: baseColumns,\r\n pager: { limit: 15 }\r\n });\r\n mainGrid.on('dataBound', function (e, records, totalRecords) {\r\n var sumgrossProfit = 0,\r\n sumgrossProfitPercent = 0,\r\n sumsaleValue = 0,\r\n sumcostValue = 0,\r\n sumretailPrice = 0,\r\n sumsurchargeValue = 0,\r\n $tfoot;\r\n $.each(records, function () {\r\n sumgrossProfit += parseFloat(this.grossProfit);\r\n sumgrossProfitPercent += parseFloat(this.grossProfitPercent);\r\n sumsaleValue += parseFloat(this.saleValue);\r\n sumcostValue += parseFloat(this.costValue);\r\n sumretailPrice += parseFloat(this.retailPrice);\r\n sumsurchargeValue += parseFloat(this.surchargeValue);\r\n });\r\n $tfoot = mainGrid.children('tfoot');\r\n $tfoot.children('tr[data-role=\"TotalAmount\"]').remove();\r\n $tfoot.children('tr[data-role=\"pager\"]').remove();\r\n $tfoot.prepend(\r\n ''\r\n );\r\n });\r\n mainGrid.on('detailExpand', function (e, $detailWrapper, branchID) {\r\n opGrid = $detailWrapper.find('table').grid({\r\n params: { BranchID: branchID },\r\n primaryKey: 'opno',\r\n\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/Parts/PartsSales?dc=${state.departmentCode?.id || ''}&StartDate=${state.startDate}&EndDate=${state.endDate}&Mode=B`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: opGridOnSuccessFunc\r\n },\r\n columns: opColumns,\r\n pager: { limit: 10 },\r\n detailTemplate: '
Total' +\r\n formatters.CurrencyThousandSeparator(sumgrossProfit) +\r\n '' +\r\n '' +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumsaleValue) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumcostValue) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumretailPrice) +\r\n '' +\r\n formatters.CurrencyThousandSeparator(sumsurchargeValue) +\r\n '
'\r\n });\r\n\r\n opGrid.on('detailExpand', function (e, $detailWrapper, opno) {\r\n wipsGrid = $detailWrapper.find('table').grid({\r\n params: { BranchID: branchID, opno: opno },\r\n primaryKey: 'id',\r\n\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/Parts/PartsSales?dc=${state.departmentCode?.id || ''}&StartDate=${state.startDate}&EndDate=${state.endDate}`,\r\n headers: {\r\n Authorization: `Bearer ${token}`,\r\n domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host\r\n },\r\n success: onSuccessWipFunc\r\n },\r\n columns: WipRendererNColumns\r\n });\r\n });\r\n\r\n opGrid.on('detailCollapse', function (e, $detailWrapper, opno) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n });\r\n\r\n mainGrid.on('detailCollapse', function (e, $detailWrapper, id) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n mainGrid.reload();\r\n };\r\n const editButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showWIPDetails: true, wipNumber: record.wn, company: record.co }))} style={{ cursor: 'pointer' }}>\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const WipRendererNColumns = useMemo(() => {\r\n const tempCols = [...wipColumns];\r\n let wipNumberCol = tempCols.find((element) => element.field === 'wn');\r\n if (wipNumberCol) {\r\n wipNumberCol.renderer = editButton({});\r\n }\r\n return tempCols;\r\n });\r\n\r\n useEffect(() => {\r\n if (state.BranchList.length > 0) {\r\n pullPartsSalesList();\r\n }\r\n }, [state.startDate, state.endDate, state.branchID, state.departmentCode, state.BranchList]);\r\n\r\n const downloadCSVWrapper = async () => {\r\n showToast('Collating Data... This may take a while.');\r\n\r\n const data = mainGrid.data().params;\r\n let downloadURL = `Parts/PartsSales?dc=${state.departmentCode?.id || ''}&StartDate=${state.startDate}&EndDate=${state.endDate}&fileType=excel`;\r\n\r\n for (let key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n const value = data[key];\r\n downloadURL += `&${key}=${value}`;\r\n }\r\n }\r\n await GetExcelFileFromEndpoint(downloadURL, ParamMeasuredesc);\r\n };\r\n\r\n const singleSelectChange = (nm) => (ev, val) => {\r\n setState((st) => {\r\n let newSt = { ...st, [nm]: val };\r\n return newSt;\r\n });\r\n };\r\n\r\n return (\r\n
\r\n \r\n {state.showWIPDetails && (\r\n setState((st) => ({ ...st, showWIPDetails: false }))} maxWidth=\"xl\" fullWidth>\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n Select Branch\r\n \r\n \r\n \r\n \r\n \r\n Select Department\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default PartSales;\r\n","import { Grid, IconButton } from '@material-ui/core';\r\nimport React, { useContext } from 'react';\r\nimport { useEffect } from 'react';\r\nimport { ExpBaseURL } from '../../../../../Core/Service/http-calls';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport ReactDOM from 'react-dom';\r\nimport { useState } from 'react';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\n\r\nimport '../../GijgoForReportsScreen/reportGijgoGrid.scss';\r\nimport { getAgedMeasuresViewDocument } from '../../../../../Core/Service/ReportScreens-service';\r\nimport DialogComp from '../../../../../Core/Modal/dialogModal';\r\nimport ViewPdfModal from '../../../../../Core/Modal/PdfViweModal';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { GetExcelFileFromEndpoint } from '../../../../../Core/Service/reportService';\r\nimport AppContext from '../../../../../App/AppContext';\r\n\r\nvar mainGrid, ccGrid;\r\nvar $ = window.$;\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'Outstanding Invoices', active: true }\r\n];\r\n\r\nconst OutstandingInvoices = () => {\r\n let token = AppStorage.getToken();\r\n const { hideModal, showToast } = useContext(AppContext);\r\n\r\n const [state, setState] = useState({});\r\n const mainGridOnSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n mainGrid.render(obj);\r\n };\r\n const ccGridOnSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n ccGrid.render(obj);\r\n };\r\n\r\n let getUrl = `${ExpBaseURL}/api/Sales/CustomerOutstandingInvoices`;\r\n const documentHandler = async (record) => {\r\n let res = await getAgedMeasuresViewDocument(record.ifn);\r\n if (res) {\r\n setState((st) => ({ ...st, showPdfModal: true, pdfFileData: res }));\r\n } else {\r\n console.error(res.message);\r\n }\r\n };\r\n\r\n const docEditButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n let isFile = record.ifn;\r\n const lnk = (\r\n documentHandler(record) : ''}>\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n let mainGridcolumns = [\r\n { field: 'cc', title: 'Account Code', width: 120 },\r\n { field: 'cn', title: 'Customer Name', width: 250 },\r\n { field: 'os', title: 'O/S Amount', renderer: formatters.CurrencyThousandSeparator, align: 'right', width: 110 },\r\n { field: 'osi', title: '# Of Invoices', width: 100, align: 'right' },\r\n { field: 'atdt', title: 'ATD Turnover', width: 150, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { field: 'ptdt', title: 'PTD Turnover', width: 150, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { field: 'pu', title: 'Periods Unused', width: 150, align: 'right' },\r\n { field: 'lp', title: 'Last Payment', width: 150, renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n {\r\n field: 'lpd',\r\n title: 'Last Day',\r\n width: 150,\r\n renderer: formatters.MonthShortFormatter,\r\n align: 'right'\r\n }\r\n ];\r\n\r\n let ccGridcolumns = [\r\n { field: 'dn', title: 'Document No', width: 156, align: 'right', renderer: docEditButton },\r\n { field: 'bal', title: 'Balance', renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { field: 'org', title: 'Orignal', renderer: formatters.CurrencyThousandSeparator, align: 'right' },\r\n { field: 'dd', title: 'Document Date', width: 150, renderer: formatters.MonthShortFormatter },\r\n { field: 'due', title: 'Due', width: 150, renderer: formatters.MonthShortFormatter },\r\n { field: 'am', title: 'Age (Months)', width: 150, align: 'right' },\r\n { field: 'ag', title: 'Age (Days)', width: 150, align: 'right' },\r\n { field: 'br', title: 'Branch', width: 150 }\r\n ];\r\n\r\n useEffect(() => {\r\n mainGrid = $('#OutstandingInvoices').grid({\r\n primaryKey: 'cc',\r\n dataSource: {\r\n url: getUrl,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: mainGridOnSuccessFunc\r\n },\r\n minWidth: 1200,\r\n detailTemplate: '
',\r\n columns: mainGridcolumns,\r\n headerFilter: {\r\n type: 'onchange'\r\n },\r\n pager: { limit: 20 }\r\n });\r\n mainGrid.on('detailExpand', function (e, $detailWrapper, cc) {\r\n ccGrid = $detailWrapper.find('table').grid({\r\n params: { type: 2, cc: cc.trim() },\r\n primaryKey: 'opno',\r\n headerFilter: {\r\n type: 'onchange'\r\n },\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/Sales/CustomerOutstandingInvoices`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: ccGridOnSuccessFunc\r\n },\r\n columns: ccGridcolumns\r\n });\r\n });\r\n });\r\n const downloadCSVWrapper = async () => {\r\n showToast('Collating Data... This may take a while.');\r\n\r\n const data = mainGrid.data().params;\r\n let downloadURL = `Sales/CustomerOutstandingInvoices${getUrl.includes('?') ? '&' : '?'}fileType=excel`;\r\n\r\n for (let key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n const value = data[key];\r\n downloadURL += `&${key}=${value}`;\r\n }\r\n }\r\n await GetExcelFileFromEndpoint(downloadURL, 'OutstandingInvoices');\r\n };\r\n return (\r\n
\r\n {state.showPdfModal ? (\r\n setState((st) => ({ ...st, showPdfModal: false }))} fullWidth>\r\n \r\n \r\n ) : null}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n );\r\n};\r\n\r\nexport default OutstandingInvoices;\r\n","import {\r\n Container,\r\n Grid,\r\n Avatar,\r\n Typography,\r\n Button,\r\n ButtonGroup,\r\n CircularProgress,\r\n} from \"@material-ui/core\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport SpeedIcon from \"@material-ui/icons/Speed\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { getReprtingDashboard } from \"../../../Core/Service/ReportScreens-service\";\r\nimport { SmallLinkedButton } from \"./ReportsScreens/BudgetCore/budgetButton\";\r\nimport formatters from \"../../../Core/Grid/inputFormatter\";\r\nimport \"./ReportingScreensStyle.scss\";\r\nimport Dashboard from \"./../dashboard/dashboard\";\r\nimport { forEach } from \"lodash\";\r\nimport { BorderRight } from \"@material-ui/icons\";\r\nimport { SecondaryButton } from \"../../../Core/FormInput\";\r\nimport { StockCard, VehicleCard } from \"./saleDashboardCard\";\r\n// import { Typography from '@material-ui/core/Typography';\r\n\r\nconst reportButton = [\r\n {\r\n name: \"New Vehicle\",\r\n id: 1,\r\n },\r\n {\r\n name: \"Used Vehicle\",\r\n id: 2,\r\n },\r\n {\r\n name: \"Registrations\",\r\n id: 3,\r\n },\r\n {\r\n name: \"New Vehicle Stock\",\r\n id: 4,\r\n },\r\n {\r\n name: \"Used Vehicle Stock\",\r\n id: 5,\r\n },\r\n {\r\n name: \"Aged Stock\",\r\n id: 6,\r\n },\r\n];\r\n\r\nconst tilte = {\r\n new: \"New Vehicle\",\r\n used: \"Used Vehicle\",\r\n reg: \"Registrations\",\r\n ns: \"New Vehicle Stock\",\r\n US: \"Used Vehicle Stock\",\r\n AS: \"Aged Stock\",\r\n};\r\n\r\nconst ReportingDashboard = () => {\r\n const history = useHistory();\r\n\r\n const RedirectToDash = (val) => {\r\n history.push({\r\n pathname: val,\r\n });\r\n };\r\n const [state, setState] = useState({\r\n // newVehicle: [],\r\n // usedVehicle: [],\r\n // registrations: [],\r\n // newVehicleStock: [],\r\n // usedVehicleStock: [],\r\n // agedStock: [],\r\n // buttonID: reportButton[0].id,\r\n newVehiclesumofytd: 0,\r\n newVehiclesumofmtd: 0,\r\n usedVehiclesumofytd: 0,\r\n usedVehiclesumofmtd: 0,\r\n registrationssumofytd: 0,\r\n registrationssumofmtd: 0,\r\n newVehicleStocksumofytd: 0,\r\n newVehicleStocksumofmtd: 0,\r\n usedVehicleStocksumofytd: 0,\r\n usedVehicleStocksumofmtd: 0,\r\n agedStocksumofytd: 0,\r\n agedStocksumofmtd: 0,\r\n registrationsFranchiseArr: [],\r\n usedVehicleFranchiseArr: [],\r\n newVehicleStockFranchiseArr: [],\r\n newVehicleFranchiseArr: [],\r\n usedVehicleStockFranchiseArr: [],\r\n agedStockFranchiseArr: [],\r\n isRelod: true,\r\n });\r\n\r\n useEffect(async () => {\r\n let res = await getReprtingDashboard();\r\n\r\n let newVehicle = [...res.data?.newVehicle];\r\n let usedVehicle = [...res.data?.usedVehicle];\r\n let registrations = [...res.data?.registrations];\r\n let newVehicleStock = [...res.data?.newVehicleStock];\r\n let usedVehicleStock = [...res.data?.usedVehicleStock];\r\n // let agedStock = [...res.data?.agedStock];\r\n\r\n if (res.success) {\r\n //new Vehivle\r\n if (newVehicle.length > 0) {\r\n let newVehiclesumofytd = 0;\r\n let newVehiclesumofmtd = 0;\r\n let newVehiclesumofBudgetmtd = 0;\r\n let newVehiclesumofBudgetYtd = 0;\r\n let totalCount = [...newVehicle].forEach(function (item) {\r\n newVehiclesumofytd += item.ytdTotal;\r\n newVehiclesumofmtd += item.mtdTotal;\r\n newVehiclesumofBudgetmtd += item.mtdTotalBudget;\r\n newVehiclesumofBudgetYtd += item.ytdTotalBudget;\r\n });\r\n\r\n var newVehicleFranchiseArr = newVehicle.reduce((acc, obj) => {\r\n var index = acc.find(\r\n (item) => item.franchiseName === obj.franchiseName\r\n );\r\n if (index) {\r\n index.mtdTotal += obj.mtdTotal;\r\n index.ytdTotal += obj.ytdTotal;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n setState((st) => ({\r\n ...st,\r\n newVehiclesumofytd: newVehiclesumofytd,\r\n newVehiclesumofmtd: newVehiclesumofmtd,\r\n newVehicleFranchiseArr: newVehicleFranchiseArr,\r\n newVehiclesumofBudgetmtd: newVehiclesumofBudgetmtd,\r\n newVehiclesumofBudgetYtd: newVehiclesumofBudgetYtd,\r\n isRelod: false,\r\n }));\r\n }\r\n //Used Vehicle\r\n if (usedVehicle.length > 0) {\r\n let usedVehiclesumofytd = 0;\r\n let usedVehiclesumofmtd = 0;\r\n let usedVehiclesumofBudgetmtd = 0;\r\n let usedVehiclesumofBudgetYtd = 0;\r\n let totalCount = [...usedVehicle].forEach(function (item) {\r\n usedVehiclesumofytd += item.ytdTotal;\r\n usedVehiclesumofmtd += item.mtdTotal;\r\n usedVehiclesumofBudgetmtd += item.mtdBudget;\r\n usedVehiclesumofBudgetYtd += item.ytdBudget;\r\n });\r\n\r\n var usedVehicleFranchiseArr = usedVehicle.reduce((acc, obj) => {\r\n var index = acc.find(\r\n (item) => item.franchiseName === obj.franchiseName\r\n );\r\n if (index) {\r\n index.mtdTotal += obj.mtdTotal;\r\n index.ytdTotal += obj.ytdTotal;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n setState((st) => ({\r\n ...st,\r\n usedVehiclesumofytd: usedVehiclesumofytd,\r\n usedVehiclesumofmtd: usedVehiclesumofmtd,\r\n usedVehicleFranchiseArr: usedVehicleFranchiseArr,\r\n usedVehiclesumofBudgetmtd: usedVehiclesumofBudgetmtd,\r\n usedVehiclesumofBudgetYtd: usedVehiclesumofBudgetYtd,\r\n }));\r\n }\r\n //Registrations\r\n\r\n if (registrations.length > 0) {\r\n let registrationssumofytd = 0;\r\n let registrationssumofmtd = 0;\r\n let registrationBudgetmtd = 0;\r\n let registrationBudgetYtd = 0;\r\n let totalCount = [...registrations].forEach(function (item) {\r\n registrationssumofytd += item.ytdTotal;\r\n registrationssumofmtd += item.mtdTotal;\r\n registrationBudgetmtd += item.mtdBudget;\r\n registrationBudgetYtd += item.ytdBudget;\r\n });\r\n\r\n var registrationsFranchiseArr = registrations.reduce((acc, obj) => {\r\n var index = acc.find(\r\n (item) => item.franchiseName === obj.franchiseName\r\n );\r\n if (index) {\r\n index.mtdTotal += obj.mtdTotal;\r\n index.ytdTotal += obj.ytdTotal;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n setState((st) => ({\r\n ...st,\r\n registrationssumofytd: registrationssumofytd,\r\n registrationssumofmtd: registrationssumofmtd,\r\n registrationsFranchiseArr: registrationsFranchiseArr,\r\n registrationBudgetmtd: registrationBudgetmtd,\r\n registrationBudgetYtd: registrationBudgetYtd,\r\n }));\r\n }\r\n\r\n //newVehicleStock\r\n if (newVehicleStock.length > 0) {\r\n let newVehicleStocksumofytd = 0;\r\n let newVehicleStocksumofmtd = 0;\r\n let totalCount = [...newVehicleStock].forEach(function (item) {\r\n newVehicleStocksumofytd += item.ytdTotal;\r\n newVehicleStocksumofmtd += item.mtdTotal;\r\n });\r\n\r\n var newVehicleStockFranchiseArr = newVehicleStock.reduce((acc, obj) => {\r\n var index = acc.find(\r\n (item) => item.franchiseName === obj.franchiseName\r\n );\r\n if (index) {\r\n index.mtdTotal += obj.mtdTotal;\r\n index.ytdTotal += obj.ytdTotal;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n setState((st) => ({\r\n ...st,\r\n newVehicleStocksumofytd: newVehicleStocksumofytd,\r\n newVehicleStocksumofmtd: newVehicleStocksumofmtd,\r\n newVehicleStockFranchiseArr: newVehicleStockFranchiseArr,\r\n }));\r\n }\r\n //usedVehicleStock\r\n if (usedVehicleStock.length > 0) {\r\n setState((st) => ({\r\n ...st,\r\n usedVehicleStock: usedVehicleStock,\r\n }));\r\n }\r\n }\r\n }, []);\r\n return (\r\n
\r\n \r\n \r\n {!state.isRelod ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n
\r\n )}\r\n {/*
{tilte[state.buttonID]}
*/}\r\n {/* {state.newVehicle.map((m) => {\r\n return (\r\n <>\r\n \r\n
{m.branch || 'N / A'}
\r\n\r\n \r\n \r\n \r\n \r\n
New Vehicle
\r\n
\r\n {m.data.map((n) => {\r\n if (n.type === 'new') {\r\n return (\r\n \r\n \r\n \r\n {n.franchiseName || 'N/A'}\r\n \r\n \r\n \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.mtdTotal)}\r\n
\r\n
MTD
\r\n
\r\n\r\n \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.ytdTotal)}\r\n
\r\n
YTD
\r\n
\r\n
\r\n );\r\n }\r\n })}\r\n
\r\n
\r\n \r\n \r\n \r\n
Used Vehicle
\r\n
\r\n {m.data.map((n) => {\r\n if (n.type === 'used') {\r\n return (\r\n \r\n \r\n \r\n {n.franchiseName || 'N/A'}\r\n \r\n \r\n \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.mtdTotal)}\r\n
\r\n
MTD
\r\n
\r\n\r\n \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.ytdTotal)}\r\n
\r\n
YTD
\r\n
\r\n
\r\n );\r\n }\r\n })}\r\n
\r\n
\r\n \r\n \r\n \r\n
Registrations
\r\n
\r\n {m.data.map((n) => {\r\n if (n.type === 'reg') {\r\n return (\r\n \r\n \r\n \r\n {n.franchiseName || 'N/A'}\r\n \r\n \r\n \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.mtdTotal)}\r\n
\r\n
MTD
\r\n
\r\n\r\n \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(n.ytdTotal)}\r\n
\r\n
YTD
\r\n
\r\n
\r\n );\r\n }\r\n })}\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n );\r\n })} */}\r\n \r\n \r\n {/* \r\n \r\n RedirectToDash('/AgedMeasures')}\r\n >\r\n
\r\n \r\n
Aged Measures
\r\n
\r\n \r\n
\r\n \r\n RedirectToDash('/service/dashboard')}\r\n >\r\n
\r\n \r\n
Service Dashboard
\r\n
\r\n \r\n
\r\n \r\n RedirectToDash('/sales/dashboard')}\r\n >\r\n
\r\n \r\n
Sales Dashboard v1
\r\n
\r\n \r\n
\r\n \r\n RedirectToDash('/sales/dashboardtwo')}\r\n >\r\n
\r\n \r\n
Sales Dashboard V2
\r\n
\r\n \r\n
\r\n
*/}\r\n \r\n );\r\n};\r\n\r\nexport default ReportingDashboard;\r\n","import { Grid } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { useState } from 'react';\r\nimport { SecondaryButton } from '../../../Core/FormInput';\r\n\r\nconst DiagnosticSheetsImageComponent = (props) => {\r\n return (\r\n \r\n \r\n \r\n {props.ImageList.map((item, i) => (\r\n \r\n \"No\r\n
\r\n props.handleRemoveClick(i)}>\r\n Remove\r\n \r\n
\r\n
\r\n ))}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default DiagnosticSheetsImageComponent;\r\n","import { Button, ButtonGroup, FormControlLabel, FormLabel, Grid } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { SecondaryCheckbox, TextBox } from '../../../../Core/FormInput';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n marginTop: 15\r\n },\r\n table: {\r\n minWidth: '100%'\r\n },\r\n\r\n title: {\r\n color: '#f50057',\r\n marginLeft: 8,\r\n marginTop: 8,\r\n marginBottom: 8\r\n },\r\n loader: {\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n marginTop: 300\r\n },\r\n paper: {\r\n padding: '7px 16px 16px 16px',\r\n // color: theme.palette.text.secondary,\r\n border: '1px solid rgba(0,0,0,0.2)',\r\n width: '100%'\r\n // boxShadow: 'rgba(100, 100, 111, 0.2) 0px 7px 29px 0px'\r\n },\r\n axelTitles: {\r\n textAlign: 'center',\r\n color: '#f50057',\r\n width: '100%'\r\n },\r\n headings: {\r\n color: '#f50057',\r\n margin: 0\r\n // marginLeft: -4,\r\n // marginBottom: 20\r\n }\r\n}));\r\n\r\nconst SectionOne = (props) => {\r\n const { state, handleFieldChange, handleCheckbox, handleYesNo } = props;\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n

Section 1: Engine/Transmission

\r\n
\r\n
\r\n \r\n \r\n Description of concern\r\n \r\n \r\n\r\n \r\n \r\n \r\n Engine fault:\r\n \r\n \r\n \r\n {state.enginefault.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Warning light:\r\n \r\n \r\n \r\n \r\n \r\n handleYesNo('diagnosticSheetEngineTransmissionWarningLight', true)}\r\n >\r\n Yes\r\n \r\n\r\n handleYesNo('diagnosticSheetEngineTransmissionWarningLight', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n Description\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default SectionOne;\r\n","import { Button, ButtonGroup, FormControlLabel, FormLabel, Grid, Tooltip } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { SecondaryCheckbox, TextBox } from '../../../../Core/FormInput';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport DiagnosticSheetsImageComponent from '../imageSlider';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n marginTop: 15\r\n },\r\n table: {\r\n minWidth: '100%'\r\n },\r\n\r\n title: {\r\n color: '#f50057',\r\n marginLeft: 8,\r\n marginTop: 8,\r\n marginBottom: 8\r\n },\r\n loader: {\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n marginTop: 300\r\n },\r\n paper: {\r\n padding: '7px 16px 16px 16px',\r\n // color: theme.palette.text.secondary,\r\n border: '1px solid rgba(0,0,0,0.2)',\r\n width: '100%'\r\n // boxShadow: 'rgba(100, 100, 111, 0.2) 0px 7px 29px 0px'\r\n },\r\n axelTitles: {\r\n textAlign: 'center',\r\n color: '#f50057',\r\n width: '100%'\r\n },\r\n headings: {\r\n color: '#f50057',\r\n margin: 0\r\n // marginLeft: -4,\r\n // marginBottom: 20\r\n }\r\n}));\r\n\r\nconst SectionTwo = (props) => {\r\n const { state, handleFieldChange, handleCheckbox, handleYesNo, upload, handleRemoveClick } = props;\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n

Section 2: Noise/Vibration

\r\n
\r\n
\r\n \r\n \r\n Description of concern\r\n \r\n \r\n\r\n \r\n \r\n \r\n Noise apparent:\r\n \r\n \r\n \r\n \r\n \r\n handleYesNo('diagnosticSheetIsNoiseApparent', true)}\r\n >\r\n Yes\r\n \r\n\r\n handleYesNo('diagnosticSheetIsNoiseApparent', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n {/* {state.diagnosticSheetIsNoiseApparent && ( */}\r\n \r\n \r\n {state.noiseApparent.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n {/* )} */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Location:\r\n \r\n \r\n \r\n {state.location.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Type of noise:\r\n \r\n \r\n \r\n {state.typeOfNoise.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {`Other (specify)`}:\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {`Images`}:\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleRemoveClick(i, 'diagnosticSheetNoiseVibrationImg')}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default SectionTwo;\r\n","import { Button, ButtonGroup, FormControlLabel, FormLabel, Grid, Tooltip } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { SecondaryCheckbox, TextBox } from '../../../../Core/FormInput';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport DiagnosticSheetsImageComponent from '../imageSlider';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n marginTop: 15\r\n },\r\n table: {\r\n minWidth: '100%'\r\n },\r\n\r\n title: {\r\n color: '#f50057',\r\n marginLeft: 8,\r\n marginTop: 8,\r\n marginBottom: 8\r\n },\r\n loader: {\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n marginTop: 300\r\n },\r\n paper: {\r\n padding: '7px 16px 16px 16px',\r\n // color: theme.palette.text.secondary,\r\n border: '1px solid rgba(0,0,0,0.2)',\r\n width: '100%'\r\n // boxShadow: 'rgba(100, 100, 111, 0.2) 0px 7px 29px 0px'\r\n },\r\n axelTitles: {\r\n textAlign: 'center',\r\n color: '#f50057',\r\n width: '100%'\r\n },\r\n headings: {\r\n color: '#f50057',\r\n margin: 0\r\n // marginLeft: -4,\r\n // marginBottom: 20\r\n }\r\n}));\r\n\r\nconst SectionThree = (props) => {\r\n const { state, handleFieldChange, handleCheckbox, handleYesNo, upload, handleRemoveClick } = props;\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n

Section 3: Water Leaks

\r\n
\r\n
\r\n \r\n \r\n Description of concern\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Has the vehicle had any body repairs:\r\n \r\n \r\n \r\n handleYesNo('diagnosticSheetWaterLeaksehadAnyBodyRepairs', true)}\r\n >\r\n Yes\r\n \r\n\r\n handleYesNo('diagnosticSheetWaterLeaksehadAnyBodyRepairs', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {`*If Yes, what repair was carried out:`}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Vehicle position:\r\n \r\n \r\n \r\n {state.vehiclePosition.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Occurs:\r\n \r\n \r\n \r\n {state.occurs.map((c) => {\r\n return (\r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Water:\r\n \r\n \r\n \r\n {state.water.map((c) => {\r\n return (\r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {`Images`}:\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n handleRemoveClick(i, 'diagnosticSheetWaterLeakImg')}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default SectionThree;\r\n","import { Button, ButtonGroup, FormControlLabel, FormLabel, Grid, Tooltip } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { SecondaryCheckbox, TextBox } from '../../../../Core/FormInput';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport DiagnosticSheetsImageComponent from '../imageSlider';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n marginTop: 15\r\n },\r\n table: {\r\n minWidth: '100%'\r\n },\r\n\r\n title: {\r\n color: '#f50057',\r\n marginLeft: 8,\r\n marginTop: 8,\r\n marginBottom: 8\r\n },\r\n loader: {\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n marginTop: 300\r\n },\r\n paper: {\r\n padding: '7px 16px 16px 16px',\r\n // color: theme.palette.text.secondary,\r\n border: '1px solid rgba(0,0,0,0.2)',\r\n width: '100%'\r\n // boxShadow: 'rgba(100, 100, 111, 0.2) 0px 7px 29px 0px'\r\n },\r\n axelTitles: {\r\n textAlign: 'center',\r\n color: '#f50057',\r\n width: '100%'\r\n },\r\n headings: {\r\n color: '#f50057',\r\n margin: 0\r\n // marginLeft: -4,\r\n // marginBottom: 20\r\n }\r\n}));\r\n\r\nconst SectionFour = (props) => {\r\n const { state, handleFieldChange, handleCheckbox, handleYesNo, upload, handleRemoveClick } = props;\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n

Section 4: Electronics, Controls and Audio

\r\n
\r\n
\r\n \r\n \r\n Description of concern\r\n \r\n \r\n \r\n \r\n \r\n Malfunction:\r\n \r\n \r\n \r\n {state.malfunction.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {`Other (specify)`}:\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default SectionFour;\r\n","import { Button, ButtonGroup, FormControlLabel, FormLabel, Grid, Radio, RadioGroup, Tooltip } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { SecondaryCheckbox, TextBox } from '../../../../Core/FormInput';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport DiagnosticSheetsImageComponent from '../imageSlider';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n marginTop: 15\r\n },\r\n table: {\r\n minWidth: '100%'\r\n },\r\n\r\n title: {\r\n color: '#f50057',\r\n marginLeft: 8,\r\n marginTop: 8,\r\n marginBottom: 8\r\n },\r\n loader: {\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n marginTop: 300\r\n },\r\n paper: {\r\n padding: '7px 16px 16px 16px',\r\n // color: theme.palette.text.secondary,\r\n border: '1px solid rgba(0,0,0,0.2)',\r\n width: '100%'\r\n // boxShadow: 'rgba(100, 100, 111, 0.2) 0px 7px 29px 0px'\r\n },\r\n axelTitles: {\r\n textAlign: 'center',\r\n color: '#f50057',\r\n width: '100%'\r\n },\r\n headings: {\r\n color: '#f50057',\r\n margin: 0\r\n // marginLeft: -4,\r\n // marginBottom: 20\r\n }\r\n}));\r\n\r\nconst GeneralSection = (props) => {\r\n const { state, handleFieldChange, handleCheckbox, handleYesNo, upload, handleRemoveClick } = props;\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n \r\n

General

\r\n
\r\n \r\n
\r\n Model :  \r\n\r\n \r\n \r\n \r\n {state.models.map((btn, i) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n Fault codes\r\n \r\n \r\n \r\n Can the customer resolve the issue in any way, e.g. switching the engine off and on?\r\n \r\n \r\n \r\n \r\n {state.modelItemList.map((p) => {\r\n return (\r\n \r\n }\r\n label={p.name}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n Fault:\r\n \r\n \r\n \r\n \r\n {state.generalFualts.map((p) => {\r\n return } label={p.name} />;\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Engine condition:\r\n \r\n \r\n \r\n {state.engineCondition.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Weather related:\r\n \r\n \r\n \r\n {state.weatherRelated.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Driving condition:\r\n \r\n \r\n \r\n {state.drivingCondition.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Road conditions:\r\n \r\n \r\n \r\n {state.roadCondition.map((c) => {\r\n return (\r\n \r\n \r\n }\r\n label={`${c.name}`}\r\n />\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Speed:\r\n \r\n \r\n \r\n \r\n MPH\r\n \r\n \r\n \r\n RPM\r\n \r\n \r\n \r\n \r\n }\r\n label=\"All speeds\"\r\n />\r\n \r\n \r\n \r\n \r\n Gear\r\n \r\n \r\n\r\n \r\n {state.gear.map((p) => {\r\n return } label={p.name} />;\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default GeneralSection;\r\n","import {\r\n Button,\r\n ButtonGroup,\r\n FormControlLabel,\r\n FormLabel,\r\n Grid,\r\n IconButton,\r\n InputLabel,\r\n Paper,\r\n Radio,\r\n RadioGroup,\r\n Tooltip,\r\n Typography\r\n} from '@material-ui/core';\r\nimport React from 'react';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport { useState } from 'react';\r\nimport { CustomButton, SecondaryButton, SecondaryCheckbox, SelectBox, TextBox } from '../../../Core/FormInput';\r\nimport { useEffect } from 'react';\r\nimport {\r\n getDiagnosticSheetsDropDown,\r\n getDiagnosticSheetModelFalutList,\r\n getDiagnosticSheetHeaderDetails,\r\n getDiagnosticSheetDetails,\r\n saveDiagnosticSheets\r\n} from '../../../Core/Service/diagnosticSheets';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { useContext } from 'react';\r\nimport { some } from 'lodash';\r\nimport DiagnosticSheetsImageComponent from './imageSlider';\r\nimport { Backup } from '@material-ui/icons';\r\nimport getMultiImgResized from '../../../Core/CommonFunctions/multiImgResizer';\r\n\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\n\r\nimport SectionOne from './SectionsScreens/sectionOne';\r\nimport SectionTwo from './SectionsScreens/sectionTwo';\r\nimport SectionThree from './SectionsScreens/sectionThree';\r\nimport SectionFour from './SectionsScreens/sectionFour';\r\nimport GeneralSection from './SectionsScreens/generalSection';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n marginTop: 15\r\n },\r\n table: {\r\n minWidth: '100%'\r\n },\r\n\r\n title: {\r\n color: '#f50057',\r\n marginLeft: 8,\r\n marginTop: 8,\r\n marginBottom: 8\r\n },\r\n loader: {\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n marginTop: 300\r\n },\r\n paper: {\r\n padding: '7px 16px 16px 16px',\r\n // color: theme.palette.text.secondary,\r\n border: '1px solid rgba(0,0,0,0.2)',\r\n width: '100%'\r\n // boxShadow: 'rgba(100, 100, 111, 0.2) 0px 7px 29px 0px'\r\n },\r\n axelTitles: {\r\n textAlign: 'center',\r\n color: '#f50057',\r\n width: '100%'\r\n },\r\n headings: {\r\n color: '#f50057',\r\n margin: 0\r\n // marginLeft: -4,\r\n // marginBottom: 20\r\n }\r\n}));\r\n\r\nlet config = [\r\n { arrName: 'enginefault', ids: 'enginefaultResultsIDs' },\r\n { arrName: 'noiseApparent', ids: 'noiseApparentResultsIDs' },\r\n { arrName: 'location', ids: 'locationResultsIDs' },\r\n { arrName: 'typeOfNoise', ids: 'typeOfNoiseResultsIDs' },\r\n { arrName: 'vehiclePosition', ids: 'vehiclePositionResultsIDs' },\r\n { arrName: 'occurs', ids: 'occurResultsIDs' },\r\n { arrName: 'water', ids: 'waterResultsIDs' },\r\n { arrName: 'malfunction', ids: 'malfunctionResultsIDs' },\r\n { arrName: 'engineCondition', ids: 'engineConditionResultsIDs' },\r\n { arrName: 'weatherRelated', ids: 'weatherResultsIDs' },\r\n { arrName: 'drivingCondition', ids: 'drivingConditionResultsIDs' },\r\n { arrName: 'roadCondition', ids: 'roadConditionResultsIDs' }\r\n];\r\n\r\nconst DiagnosticSheets = (props) => {\r\n const classes = useStyles();\r\n const { hideModal, hideTopNavAndMenu, showToast, portalSettings } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n modelDropDown: [],\r\n modelItemList: [],\r\n enginefault: [],\r\n noiseApparent: [],\r\n location: [],\r\n typeOfNoise: [],\r\n vehiclePosition: [],\r\n occurs: [],\r\n water: [],\r\n malfunction: [],\r\n engineCondition: [],\r\n weatherRelated: [],\r\n drivingCondition: [],\r\n roadCondition: [],\r\n gear: [],\r\n models: [],\r\n modelFaultIDs: [],\r\n generalFualts: [],\r\n diagnosticSheetNoiseVibrationImg: [],\r\n diagnosticSheetWaterLeakImg: [],\r\n headerData: {},\r\n diagnosticSheetModelID: '',\r\n diagnosticSheetElectronicsConcern: '',\r\n diagnosticSheetElectronicsSpecification: '',\r\n diagnosticSheetEngineTransmissionConcern: '',\r\n diagnosticSheetEngineTransmissionWarningLight: false,\r\n diagnosticSheetFaultCodes: '',\r\n diagnosticSheetGenerelIssue: '',\r\n diagnosticSheetHeaderRecordID: '',\r\n diagnosticSheetID: '',\r\n diagnosticSheetIsNoiseApparent: false,\r\n diagnosticSheetNoiseVibrationConcern: '',\r\n diagnosticSheetNoiseVibrationOther: '',\r\n diagnosticSheetNoiseVibrationPhoto: '',\r\n diagnosticSheetSpeedAllSpeed: false,\r\n diagnosticSheetSpeedGear: '',\r\n diagnosticSheetSpeedGearType: '',\r\n diagnosticSheetSpeedMPH: '',\r\n diagnosticSheetSpeedRPM: '',\r\n diagnosticSheetWarningLightDescription: '',\r\n diagnosticSheetWaterLeaksBodyRepairsDescription: '',\r\n diagnosticSheetWaterLeaksConcern: '',\r\n diagnosticSheetWaterLeaksPhoto: '',\r\n diagnosticSheetWaterLeaksehadAnyBodyRepairs: false,\r\n drivingConditionResultsIDs: '',\r\n diagnosticSheetGeneralFaultId: ''\r\n });\r\n const [btnLoader, setBtnLoader] = useState(false);\r\n\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const headerId = props?.match?.params?.jobId;\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n\r\n useEffect(async () => {\r\n let headerRes = await getDiagnosticSheetHeaderDetails(headerId);\r\n let dropRes = await getDiagnosticSheetsDropDown();\r\n setState((st) => ({\r\n ...st,\r\n enginefault: dropRes.data.enginefault.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n noiseApparent: dropRes.data.noiseApparent.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n location: dropRes.data.location.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n typeOfNoise: dropRes.data.typeOfNoise.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n vehiclePosition: dropRes.data.vehiclePosition.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n occurs: dropRes.data.occurs.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n water: dropRes.data.water.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n malfunction: dropRes.data.malfunction.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n engineCondition: dropRes.data.engineCondition.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n weatherRelated: dropRes.data.weatherRelated.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n drivingCondition: dropRes.data.drivingCondition.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n roadCondition: dropRes.data.roadCondition.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n generalFualts: dropRes.data.generalFualts.map((p) => {\r\n return { ...p, checked: false };\r\n }),\r\n gear: dropRes.data.gear,\r\n models: dropRes.data.models,\r\n headerData: headerRes?.data?.headerDetails[0] || {}\r\n }));\r\n }, []);\r\n\r\n useEffect(async () => {\r\n if (state.diagnosticSheetModelID) {\r\n let res = await getDiagnosticSheetModelFalutList(state.diagnosticSheetModelID);\r\n if (state.modelFaultIDs?.length > 0) {\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst.modelItemList = res.data.models.map((p) => {\r\n nst.modelFaultIDs.forEach((o) => {\r\n if (p.id == o) {\r\n p.checked = true;\r\n }\r\n });\r\n return p;\r\n });\r\n return nst;\r\n });\r\n } else {\r\n setState((st) => ({ ...st, modelItemList: res.data.models }));\r\n }\r\n } else {\r\n setState((st) => ({ ...st, modelItemList: [] }));\r\n }\r\n }, [state.diagnosticSheetModelID]);\r\n\r\n useEffect(async () => {\r\n if (state.headerData.diagnosticSheetID) {\r\n let res = await getDiagnosticSheetDetails(state.headerData.diagnosticSheetID);\r\n setState((st) => {\r\n const nst = { ...st };\r\n nst.diagnosticSheetHeaderRecordID = res.data.details[0].diagnosticSheetHeaderRecordID;\r\n nst.diagnosticSheetFaultCodes = res.data.details[0].diagnosticSheetFaultCodes;\r\n nst.diagnosticSheetEngineTransmissionConcern = res.data.details[0].diagnosticSheetEngineTransmissionConcern;\r\n nst.diagnosticSheetWarningLightDescription = res.data.details[0].diagnosticSheetWarningLightDescription;\r\n nst.diagnosticSheetEngineTransmissionWarningLight = res.data.details[0].diagnosticSheetEngineTransmissionWarningLight;\r\n nst.diagnosticSheetNoiseVibrationConcern = res.data.details[0].diagnosticSheetNoiseVibrationConcern;\r\n nst.diagnosticSheetNoiseVibrationOther = res.data.details[0].diagnosticSheetNoiseVibrationOther;\r\n nst.diagnosticSheetIsNoiseApparent = res.data.details[0].diagnosticSheetIsNoiseApparent;\r\n nst.diagnosticSheetWaterLeaksConcern = res.data.details[0].diagnosticSheetWaterLeaksConcern;\r\n nst.diagnosticSheetWaterLeaksehadAnyBodyRepairs = res.data.details[0].diagnosticSheetWaterLeaksehadAnyBodyRepairs;\r\n nst.diagnosticSheetWaterLeaksBodyRepairsDescription = res.data.details[0].diagnosticSheetWaterLeaksBodyRepairsDescription;\r\n nst.diagnosticSheetElectronicsConcern = res.data.details[0].diagnosticSheetElectronicsConcern;\r\n nst.diagnosticSheetElectronicsSpecification = res.data.details[0].diagnosticSheetElectronicsSpecification;\r\n nst.diagnosticSheetGenerelIssue = res.data.details[0].diagnosticSheetGenerelIssue;\r\n nst.diagnosticSheetNoiseVibrationPhoto = res.data.details[0].diagnosticSheetNoiseVibrationPhoto;\r\n nst.diagnosticSheetWaterLeaksPhoto = res.data.details[0].diagnosticSheetWaterLeaksPhoto;\r\n nst.diagnosticSheetModelID = res.data.details[0].diagnosticSheetModelID;\r\n nst.reportedTakenBy = res.data.details[0].reportedTakenBy;\r\n nst.diagnosticSheetSpeedMPH = res.data.details[0].diagnosticSheetSpeedMPH;\r\n nst.diagnosticSheetSpeedRPM = res.data.details[0].diagnosticSheetSpeedRPM;\r\n nst.diagnosticSheetSpeedGear = res.data.details[0].diagnosticSheetSpeedGear;\r\n nst.diagnosticSheetSpeedAllSpeed = res.data.details[0].diagnosticSheetSpeedAllSpeed;\r\n nst.diagnosticSheetSpeedGearType = res.data.details[0].diagnosticSheetSpeedGearType;\r\n nst.diagnosticSheetGeneralFaultId = res.data.details[0].diagnosticSheetGeneralFaultId;\r\n nst.modelFaultIDs = res.data.modelFaultIDs || [];\r\n nst.diagnosticSheetNoiseVibrationImg = res.data.diagnosticSheetNoiseVibrationImg || [];\r\n nst.diagnosticSheetWaterLeakImg = res.data.diagnosticSheetWaterLeakImg || [];\r\n config.forEach((o) => {\r\n nst[o.arrName].forEach((p) => {\r\n res.data[o.ids].forEach((idv) => {\r\n if (p.id == idv) {\r\n p.checked = true;\r\n }\r\n });\r\n });\r\n });\r\n return nst;\r\n });\r\n }\r\n }, [state.headerData.diagnosticSheetID]);\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const handleCheckbox = (arrName, id) => (event) => {\r\n const { name, checked } = event.target;\r\n\r\n setState((st) => {\r\n const nst = { ...st };\r\n if (arrName) {\r\n let index = nst[`${arrName}`].findIndex((p) => p.id == id);\r\n if (index > -1) {\r\n nst[arrName][index] = { ...nst[arrName][index], checked };\r\n }\r\n } else {\r\n nst[name] = checked;\r\n }\r\n return nst;\r\n });\r\n };\r\n\r\n const handleYesNo = (name, val) => {\r\n setState((st) => ({ ...st, [name]: val }));\r\n };\r\n const handleRemoveClick = (index, arrName) => {\r\n const list = [...state[`${arrName}`]];\r\n list.splice(index, 1);\r\n setState((st) => ({ ...st, [`${arrName}`]: list }));\r\n };\r\n\r\n const upload = async (e, arrName) => {\r\n getMultiImgResized(e.target.files, (fileUrl) => {\r\n let data = fileUrl.map((m, i) => {\r\n return { diagnosticSheetImgID: null, diagnosticSheetImgImage: m };\r\n });\r\n\r\n setState((st) => ({ ...st, [`${arrName}`]: [...state[`${arrName}`], ...data] }));\r\n });\r\n };\r\n\r\n const handelSubmit = async () => {\r\n setBtnLoader(true);\r\n let data = {\r\n diagnosticSheetID: state.headerData?.diagnosticSheetID,\r\n diagnosticSheetHeaderRecordID: headerId,\r\n diagnosticSheetFaultCodes: state.diagnosticSheetFaultCodes,\r\n diagnosticSheetEngineTransmissionConcern: state.diagnosticSheetEngineTransmissionConcern,\r\n diagnosticSheetWarningLightDescription: state.diagnosticSheetWarningLightDescription,\r\n diagnosticSheetEngineTransmissionWarningLight: state.diagnosticSheetEngineTransmissionWarningLight,\r\n diagnosticSheetNoiseVibrationConcern: state.diagnosticSheetNoiseVibrationConcern,\r\n diagnosticSheetNoiseVibrationOther: state.diagnosticSheetNoiseVibrationOther,\r\n diagnosticSheetIsNoiseApparent: state.diagnosticSheetIsNoiseApparent,\r\n diagnosticSheetWaterLeaksConcern: state.diagnosticSheetWaterLeaksConcern,\r\n diagnosticSheetWaterLeaksehadAnyBodyRepairs: state.diagnosticSheetWaterLeaksehadAnyBodyRepairs,\r\n diagnosticSheetWaterLeaksBodyRepairsDescription: state.diagnosticSheetWaterLeaksBodyRepairsDescription,\r\n diagnosticSheetGenerelIssue: state.diagnosticSheetGenerelIssue,\r\n diagnosticSheetElectronicsConcern: state.diagnosticSheetElectronicsConcern,\r\n diagnosticSheetElectronicsSpecification: state.diagnosticSheetElectronicsSpecification,\r\n diagnosticSheetNoiseVibrationPhoto: state.diagnosticSheetNoiseVibrationPhoto,\r\n diagnosticSheetWaterLeaksPhoto: state.diagnosticSheetWaterLeaksPhoto,\r\n diagnosticSheetModelID: state.diagnosticSheetModelID,\r\n diagnosticSheetSpeedAllSpeed: state.diagnosticSheetSpeedAllSpeed,\r\n diagnosticSheetSpeedMPH: state.diagnosticSheetSpeedMPH,\r\n diagnosticSheetSpeedRPM: state.diagnosticSheetSpeedRPM,\r\n diagnosticSheetSpeedGear: state.diagnosticSheetSpeedGear,\r\n diagnosticSheetSpeedGearType: state.diagnosticSheetSpeedGearType,\r\n diagnosticSheetGeneralFaultId: state.diagnosticSheetGeneralFaultId,\r\n\r\n diagnosticSheetNoiseVibrationImg: state.diagnosticSheetNoiseVibrationImg,\r\n diagnosticSheetWaterLeakImg: state.diagnosticSheetWaterLeakImg,\r\n\r\n enginefaultResultsIDs: state.enginefault.filter((m) => m.checked).map((p) => p.id),\r\n noiseApparentResultsIDs: state.noiseApparent.filter((m) => m.checked).map((p) => p.id),\r\n locationResultsIDs: state.location.filter((m) => m.checked).map((p) => p.id),\r\n typeOfNoiseResultsIDs: state.typeOfNoise.filter((m) => m.checked).map((p) => p.id),\r\n vehiclePositionResultsIDs: state.vehiclePosition.filter((m) => m.checked).map((p) => p.id),\r\n occurResultsIDs: state.occurs.filter((m) => m.checked).map((p) => p.id),\r\n waterResultsIDs: state.water.filter((m) => m.checked).map((p) => p.id),\r\n malfunctionResultsIDs: state.malfunction.filter((m) => m.checked).map((p) => p.id),\r\n engineConditionResultsIDs: state.engineCondition.filter((m) => m.checked).map((p) => p.id),\r\n weatherResultsIDs: state.weatherRelated.filter((m) => m.checked).map((p) => p.id),\r\n drivingConditionResultsIDs: state.drivingCondition.filter((m) => m.checked).map((p) => p.id),\r\n roadConditionResultsIDs: state.roadCondition.filter((m) => m.checked).map((p) => p.id),\r\n modelFaultIDs: state.modelItemList.filter((m) => m.checked).map((p) => p.id)\r\n };\r\n let res = await saveDiagnosticSheets(data);\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n }\r\n showToast(res.message);\r\n setBtnLoader(false);\r\n if (res.success && fromStep) {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {/*
*/}\r\n \r\n

Customer Details

\r\n
\r\n {/*
*/}\r\n \r\n \r\n Cutomer Name\r\n

\r\n \r\n {state.headerData.customerName}\r\n \r\n
\r\n \r\n Wip number\r\n

\r\n \r\n {state.headerData.wipNumber}\r\n \r\n
\r\n \r\n Registration number\r\n

\r\n \r\n {state.headerData.registration}\r\n \r\n
\r\n \r\n Repeat repair\r\n

\r\n \r\n {state.headerData.repeatRepair == 'N' ? 'No' : 'Yes'}\r\n \r\n
\r\n {state.reportedTakenBy && (\r\n \r\n Report taken by\r\n

\r\n \r\n {state.reportedTakenBy}\r\n \r\n
\r\n )}\r\n
\r\n {/*
*/}\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {btnLoader ? 'Saving' : 'Submit'}\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default DiagnosticSheets;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport { useHistory } from 'react-router-dom';\r\nimport ReactDOM from 'react-dom';\r\n\r\nconst baseColumns = [\r\n { field: 'salesExec', sortable: false, title: `Sales Exec`, width: 180, filterable: false },\r\n { field: 'currentMonthTotal', sortable: true, title: `Current`, width: 120, showColumnTotal: true, align: 'right', filterable: false },\r\n { field: 'oneMonthTotal', sortable: true, title: `1 Month`, width: 150, showColumnTotal: true, align: 'right', filterable: false },\r\n { field: 'twoMonthsTotal', sortable: true, title: `2 Month`, width: 120, showColumnTotal: true, align: 'right', filterable: false },\r\n { field: 'threeMonthsTotal', sortable: true, title: `3 Month`, width: 120, showColumnTotal: true, align: 'right', filterable: false },\r\n { field: 'fourMonthsAndOverTotal', sortable: true, title: '4+ Month', width: 120, showColumnTotal: true, align: 'right', filterable: false },\r\n { field: 'unallocatedTotal', title: 'Unallocated', width: 120, showColumnTotal: true, align: 'right', filterable: false, sortable: false }\r\n];\r\nconst crumbs = (measuredesc) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'Account Queries Sales exec', active: true }\r\n];\r\nlet addCommas = (val) => {\r\n return val ? `£${val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '£0.00';\r\n};\r\nconst AccountQueriesbySalesexec = (props) => {\r\n const history = useHistory();\r\n const redirectToScreens = (value, record, MeasureID, field) => {\r\n let searchQuery = `?&measuredesc=${'Account Queries by Salesexec'}&month=${field.month == 0 ? 0 : field.month || ''}&MeasureID=${\r\n field.MeasureID || ''\r\n }&unallocated=${field.unallocated || ''}&isGroupingById=accountCode&salesexec=${record.salesExec || ''}&PRSentTo=${record.prSentTo || ''}&from=\"Sales\"\r\n `;\r\n history.push({\r\n pathname: '/AgedMeasures/GetAgedMeasuresRanMWarrantyCashGen',\r\n search: searchQuery\r\n });\r\n };\r\n const monthsActionHandler = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n redirectToScreens(value, record, props.MeasureID, field)}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {addCommas(value)}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const salesExecActionHandler = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n redirectToScreens(value, record, props.MeasureID, field)}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let salesExecCol = tempCols.find((element) => element.field === 'salesExec');\r\n let currentMonthTotalCol = tempCols.find((element) => element.field === 'currentMonthTotal');\r\n let oneMonthTotalCol = tempCols.find((element) => element.field === 'oneMonthTotal');\r\n let twoMonthTotalCol = tempCols.find((element) => element.field === 'twoMonthsTotal');\r\n let threeMonthTotalCol = tempCols.find((element) => element.field === 'threeMonthsTotal');\r\n let fourPlusMonthTotalCol = tempCols.find((element) => element.field === 'fourMonthsAndOverTotal');\r\n let unallocatedTotalCol = tempCols.find((element) => element.field === 'unallocatedItemsTotal');\r\n if (salesExecCol) {\r\n salesExecCol.renderer = salesExecActionHandler({ MeasureID: 6 });\r\n }\r\n if (currentMonthTotalCol) {\r\n currentMonthTotalCol.renderer = monthsActionHandler({ month: 0, toolTipLabel: 'currentMonthCount' });\r\n }\r\n if (oneMonthTotalCol) {\r\n oneMonthTotalCol.renderer = monthsActionHandler({ month: 1, toolTipLabel: 'oneMonthCount' });\r\n }\r\n if (twoMonthTotalCol) {\r\n twoMonthTotalCol.renderer = monthsActionHandler({ month: 2, toolTipLabel: 'twoMonthsCount' });\r\n }\r\n if (threeMonthTotalCol) {\r\n threeMonthTotalCol.renderer = monthsActionHandler({ month: 3, toolTipLabel: 'threeMonthsCount' });\r\n }\r\n if (fourPlusMonthTotalCol) {\r\n fourPlusMonthTotalCol.renderer = monthsActionHandler({ month: 4, toolTipLabel: 'fourMonthsAndOverCount' });\r\n }\r\n if (unallocatedTotalCol) {\r\n unallocatedTotalCol.renderer = monthsActionHandler({ unallocated: 1, toolTipLabel: 'unallocatedItemsCount' });\r\n }\r\n return tempCols;\r\n }, [props.MeasureID]);\r\n const baseUrl = `Sales/AccountQueriesSalesexec`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isShowTotal={true}\r\n hidePagination={true}\r\n hideFilterRow={true}\r\n downloadName={'Account Queries Sales exec'}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default AccountQueriesbySalesexec;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel, Breadcrumbs } from '@material-ui/core';\r\nimport { TextBox } from './../../../../../Core/FormInput';\r\n// import NestedGijgoGrid from './../../../../Core/Controls/GijgoGrid/nestedGijgoGrid';\r\nimport { Link } from 'react-router-dom';\r\n// import BreadCrumbs from './../../../../Core/Controls/Breadcrumb';\r\nimport NestedGijgoGrid from './../../../../../Core/Controls/GijgoGrid/nestedGijgoGrid';\r\nimport BreadCrumbs from './../../../../../Core/Controls/Breadcrumb/index';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport { useState } from 'react';\r\nimport MotHistoryScreen from '../../MotHistoryScreen';\r\nimport DialogComp from '../../../../../Core/Modal/dialogModal';\r\nimport ReactDOM from 'react-dom';\r\nimport { getReportsSalesDropdownsResolveData } from '../../../../../Core/Service/reportService';\r\n\r\nvar monthNames = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\r\nlet addCommas = (val) => {\r\n return val ? `£${val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '0.00';\r\n};\r\n\r\nconst baseColumns = [\r\n { title: 'Stock No', field: 'sn', width: 80, sortable: true },\r\n { title: 'Comm Number', field: 'cn', width: 90, sortable: true },\r\n { title: 'Reg Number', field: 'rn', width: 100, sortable: true },\r\n {\r\n title: 'Progress',\r\n field: 'pd',\r\n width: 80,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'progressCodes',\r\n dropDownValueField: 'id',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Model',\r\n field: 'mc',\r\n width: 90,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelRecords',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Stock Days',\r\n field: 'd',\r\n width: 90,\r\n sortable: true,\r\n\r\n cssClass: 'text-center'\r\n },\r\n {\r\n title: 'Type',\r\n field: 'mac',\r\n width: 70,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelAnalysisCodes',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Branch',\r\n field: 'bn',\r\n width: 100,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'branchList',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Customer',\r\n field: 'cust',\r\n width: 100,\r\n sortable: true\r\n },\r\n {\r\n title: 'Sold By',\r\n field: 'sp',\r\n width: 90,\r\n sortable: true\r\n },\r\n {\r\n title: 'Latest Profit',\r\n field: 'latestProfitValue',\r\n width: 100,\r\n sortable: true,\r\n align: 'right',\r\n renderer: function (value, record) {\r\n return addCommas(value);\r\n }\r\n },\r\n {\r\n title: 'Cost',\r\n field: 'cost',\r\n width: 70,\r\n sortable: true,\r\n renderer: function (value, record) {\r\n return addCommas(value);\r\n },\r\n align: 'right'\r\n },\r\n {\r\n title: 'Order Date',\r\n field: 'od',\r\n width: 100,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Build Date',\r\n field: 'bd',\r\n width: 100,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Cons Date',\r\n field: 'cd',\r\n width: 100,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Est Date',\r\n field: 'estimDeliveryDate',\r\n width: 100,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n }\r\n];\r\n\r\nconst detailTemplate = () => {\r\n return `
\r\n `;\r\n};\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'Sales Work In Progress', active: true }\r\n];\r\n\r\nconst SalesWorkinProgress = (props) => {\r\n const [state, setState] = useState({ showMotHistory: false });\r\n\r\n const regNumberRendrer = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showMotHistory: true, regNo: record?.rn, FranchiseCode: record?.f }))}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let regNumberCol = tempCols.find((element) => element.field === 'rn');\r\n if (regNumberCol) {\r\n regNumberCol.renderer = regNumberRendrer({});\r\n }\r\n\r\n return tempCols;\r\n }, []);\r\n\r\n const baseUrl = `Sales/NewVehicleOrdersWIP`;\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n displayPagination={true}\r\n detailTemplate={detailTemplate}\r\n downloadName={'Sales Work In Progress'}\r\n dropDownListProvider={getReportsSalesDropdownsResolveData}\r\n />\r\n \r\n \r\n {state.showMotHistory && (\r\n setState((st) => ({ ...st, showMotHistory: false }))} maxWidth=\"md\" fullWidth overflow={'auto'}>\r\n \r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default SalesWorkinProgress;\r\n","import React from 'react';\r\nimport moment from 'moment';\r\nimport { Grid, FormLabel, Breadcrumbs, InputLabel } from '@material-ui/core';\r\nimport { TextBox } from '../../../../../Core/FormInput';\r\n// import NestedGijgoGrid from './../../../../Core/Controls/GijgoGrid/nestedGijgoGrid';\r\nimport { Link } from 'react-router-dom';\r\n// import BreadCrumbs from './../../../../Core/Controls/Breadcrumb';\r\nimport NestedGijgoGrid from '../../../../../Core/Controls/GijgoGrid/nestedGijgoGrid';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb/index';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport { useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport { getReportsSalesDropdownsResolveData } from '../../../../../Core/Service/reportService';\r\n\r\nvar monthNames = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\r\nlet addCommas = (val) => {\r\n return val ? `${val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '0.00';\r\n};\r\n\r\nconst baseColumns = [\r\n { title: 'Stock No', field: 'sn', width: 80, sortable: true },\r\n { title: 'Comm Number', field: 'cn', width: 100, sortable: true },\r\n { title: 'Reg Number', field: 'rn', width: 90, sortable: true },\r\n {\r\n title: 'Progress',\r\n field: 'pd',\r\n width: 80,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'progressCodes',\r\n dropDownValueField: 'id',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Model',\r\n field: 'mc',\r\n width: 90,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelRecords',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Stock Days',\r\n field: 'd',\r\n width: 100,\r\n sortable: true,\r\n // renderer: formatters.MonthShortFormatter,\r\n cssClass: 'text-center'\r\n },\r\n {\r\n title: 'Type',\r\n field: 'mac',\r\n width: 50,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelAnalysisCodes',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Branch',\r\n field: 'bn',\r\n width: 150,\r\n sortable: true,\r\n // align: 'right',\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'branchList',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Customer',\r\n field: 'cust',\r\n width: 200,\r\n sortable: true,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Sold By',\r\n field: 'sp',\r\n width: 100,\r\n sortable: true,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Latest Profit',\r\n field: 'latestProfitValue',\r\n renderer: formatters.CurrencyThousandSeparator,\r\n width: 70,\r\n sortable: true,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Cost',\r\n field: 'cost',\r\n renderer: formatters.CurrencyThousandSeparator,\r\n width: 70,\r\n sortable: true,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Order Date',\r\n field: 'od',\r\n width: 70,\r\n sortable: true,\r\n renderer: formatters.MonthShortFormatter,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Build Date',\r\n field: 'bd',\r\n width: 70,\r\n sortable: true,\r\n renderer: formatters.MonthShortFormatter,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Cons Date',\r\n field: 'cd',\r\n width: 90,\r\n sortable: true,\r\n renderer: formatters.MonthShortFormatter,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Est Date',\r\n field: 'EstimDeliveryDate',\r\n renderer: formatters.MonthShortFormatter,\r\n width: 70,\r\n sortable: true,\r\n align: 'right'\r\n }\r\n];\r\n\r\nconst detailTemplate = () => {\r\n return (\r\n \"
Vehicle DescriptionNotesEst Profit
  {vd}    {n}    Â£{estimatedProfit}
\" +\r\n ''\r\n );\r\n};\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'Registration Report', active: true }\r\n];\r\n\r\n// let startDate = ;\r\n\r\nconst RegistrationReports = (props) => {\r\n const [state, setState] = useState({\r\n EndDate: moment().format('YYYY-MM-DD'),\r\n StartDate: moment().startOf('month').format('YYYY-MM-DD')\r\n });\r\n const handleInput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }));\r\n };\r\n\r\n const baseUrl = `Sales/RegistrationReport?StartDate=${state.StartDate}&EndDate=${state.EndDate}`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={baseColumns}\r\n getUrl={baseUrl}\r\n displayPagination={true}\r\n detailTemplate={detailTemplate}\r\n downloadName={'Registration Report'}\r\n dropDownListProvider={getReportsSalesDropdownsResolveData}\r\n />\r\n
\r\n );\r\n};\r\n\r\nexport default RegistrationReports;\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\n\r\nimport moment from 'moment';\r\nimport { PrimaryButton, TextBox } from '../../../../Core/FormInput';\r\nimport { addReportingWIPLogs, getReportingWIPLogs } from '../../../../Core/Service/ReportScreens-service';\r\nimport '../ReportingNotesScreen/reportingNotes.scss';\r\n\r\nconst JobSingleNote = (props) => {\r\n return (\r\n
\r\n
{props.note.notes}
\r\n
\r\n {props.note.userName} @ {moment(props.note.created).format('LLL')}\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst ReportingWipLogsModal = (props) => {\r\n const [state, setState] = useState({\r\n loading: false,\r\n notes: [],\r\n newNote: ''\r\n });\r\n\r\n const notesContainer = useRef(null);\r\n const handleClose = () => {\r\n props.onClose && props.onClose();\r\n };\r\n\r\n const setNewNote = (e) => {\r\n const newNote = e.target.value;\r\n setState((st) => ({ ...st, newNote }));\r\n };\r\n\r\n const addNotesToServer = () => {\r\n let data = {\r\n reportingWIPLogHeaderID: props.hid,\r\n notes: state.newNote\r\n };\r\n\r\n addReportingWIPLogs(data).then((res) => {\r\n if (res.success) {\r\n setState((st) => ({ ...st, newNote: '' }));\r\n getJobNotesAndSaveToState();\r\n props.onClose(true);\r\n }\r\n });\r\n };\r\n\r\n const getJobNotesAndSaveToState = async () => {\r\n setState((st) => ({ ...st, loading: true }));\r\n getReportingWIPLogs(props.hid)\r\n .then((res) => {\r\n if (res.success) {\r\n setState((st) => ({ ...st, notes: res.data.list }));\r\n }\r\n notesContainer.current && (notesContainer.current.scrollTop = 0);\r\n })\r\n .finally(() => {\r\n setState((st) => ({ ...st, loading: false }));\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n getJobNotesAndSaveToState();\r\n }, [props.hid]);\r\n\r\n return (\r\n \r\n \r\n Reporting Log ({props.wipNo})\r\n
\r\n \r\n Add Notes\r\n \r\n \r\n ×\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {state.loading && }\r\n {state.notes.map((n, i) => (\r\n \r\n ))}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default ReportingWipLogsModal;\r\n","import React, { useMemo, useState } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel, IconButton } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport ReactDOM from 'react-dom';\r\nimport GetWIPHeader from '../../GetWIPDetails';\r\nimport DialogComp from '../../../../../Core/Controls/Dialog/DialogComp';\r\nimport { SquareButton } from '../../../../../Core/FormInput/AppButton';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport ReportingWipLogsModal from '../../ReportingWipLogsModal';\r\nimport MotHistoryScreen from '../../MotHistoryScreen';\r\nimport { getReportsDropdownsResolveData, getReportsSalesDropdownsResolveData } from '../../../../../Core/Service/reportService';\r\n\r\nconst baseColumns = [\r\n { field: 'action', sortable: false, title: `Action`, width: 60, filterable: false },\r\n { field: 'wn', title: `WIP`, width: 60 },\r\n { field: 'an', title: `Account`, width: 60 },\r\n { field: 'companyName', title: `Company`, width: 80 },\r\n { field: 'cn', title: `Customer`, width: 80 },\r\n { field: 'rn', title: `Reg No`, width: 80 },\r\n { field: 'vd', title: `Details`, width: 100 },\r\n { field: 'po', title: `Parts`, width: 80, isCurrency: true },\r\n { field: 'lh', title: `Hours`, width: 60 },\r\n { field: 'lo', title: `Labour`, width: 80, isCurrency: true },\r\n { field: 'so', title: `Sub`, width: 80, isCurrency: true },\r\n {\r\n field: 'dr',\r\n title: `Raised`,\r\n width: 75,\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n field: 'dd',\r\n title: `Due In`,\r\n width: 75,\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n { field: 'am', title: `Months`, width: 60 },\r\n { field: 'ad', title: `Days`, width: 50 },\r\n {\r\n field: 'fn',\r\n title: `Franchise`,\r\n width: 80,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'franchiseRecords',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n { field: 'opn', title: `Operator`, width: 80 },\r\n {\r\n field: 'bn',\r\n title: `Branch`,\r\n width: 80,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'branchList',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n field: 'dn',\r\n title: `Department`,\r\n width: 80,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'departmentCodes',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n }\r\n // {\r\n // field: 'provisionRequired',\r\n // title: `Current Provision`,\r\n // width: 120,\r\n // showColumnTotal: true,\r\n // align: 'right',\r\n // filterable: false,\r\n // sortable: false,\r\n // isCurrency: true\r\n // },\r\n];\r\nconst crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'Aged Measures WorkIn Progress', active: true }\r\n];\r\n\r\nconst getCrumbs = (ParamMeasureID, ParamMeasuredesc, ParamBranchName, ParamMonth, ParamUnallocated, ParamFromPage) => {\r\n let temp = {};\r\n let final = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true }\r\n ];\r\n if (ParamFromPage) {\r\n final[1].name = ParamFromPage;\r\n final[1].active = false;\r\n final[1].path = '/AgedMeasures';\r\n }\r\n if (ParamMeasureID == 1) {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/WorkInProgress' };\r\n } else if (ParamMeasureID == 17) {\r\n temp = { name: `${ParamMeasuredesc}`, path: '/AgedMeasures/WorkInProgressbyDepartement' };\r\n } else {\r\n temp = { name: `Aged Measures WorkIn Progress`, active: true };\r\n }\r\n final = [...final, { ...temp }];\r\n if (ParamBranchName || ParamMonth) {\r\n temp = {\r\n name: `${ParamBranchName} ${ParamMonth > 0 ? `(${ParamMonth} ${ParamMonth == 1 ? 'Month' : 'Months'})` : ''} ${\r\n ParamUnallocated > 0 ? `(Unallocated)` : ''\r\n }`,\r\n active: true\r\n };\r\n final = [...final, { ...temp }];\r\n }\r\n\r\n return final;\r\n};\r\n\r\nconst AgedMeasuresWorkingProgress = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamMeasureID = params.get('MeasureID') || '';\r\n let ParamMeasuredesc = params.get('measuredesc') || '';\r\n let ParamMonth = params.get('month') || '';\r\n let ParamBranchName = params.get('bn') || '';\r\n let ParamBranchId = params.get('branchID') || '';\r\n let ParamUnallocated = params.get('unallocated') || '';\r\n let ParamDepartmentDescription = params.get('DepartmentDes') || '';\r\n let ParamDepartmentCode = params.get('departmentCode') || '';\r\n let ParamFromPage = params.get('fromPage') || '';\r\n let ParamCashAccountTypeID = params.get('cashAccountTypeID') || '';\r\n let ParamIsGroupingById = params.get('isGroupingById') || '';\r\n const [state, setState] = useState({\r\n showWIPDetails: false,\r\n wipNumber: '',\r\n company: '',\r\n showMotHistory: false\r\n });\r\n\r\n const reportingWIPLogsHandler = (record) => {\r\n setState((st) => ({\r\n ...st,\r\n showNotesModal: true,\r\n hid: record.hid,\r\n wipNo: record.wn\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n reportingWIPLogsHandler(record)}\r\n >\r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const WIPButton = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showWIPDetails: true, wipNumber: record?.wn, company: record?.company }))}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const regNumberRendrer = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showMotHistory: true, regNo: record?.rn, FranchiseCode: record?.franchiseCode }))}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n let actionCol = tempCols.find((element) => element.field === 'action');\r\n let wipNumberCol = tempCols.find((element) => element.field === 'wn');\r\n let regNumberCol = tempCols.find((element) => element.field === 'rn');\r\n if (wipNumberCol) {\r\n wipNumberCol.renderer = WIPButton({});\r\n }\r\n if (regNumberCol) {\r\n regNumberCol.renderer = regNumberRendrer({});\r\n }\r\n if (actionCol) {\r\n actionCol.renderer = editButton;\r\n }\r\n if (ParamMeasureID == 1) {\r\n tempCols.splice(17, 1);\r\n }\r\n if (ParamMeasureID == 17) {\r\n tempCols.splice(17, 2);\r\n }\r\n return tempCols;\r\n }, []);\r\n\r\n const closeNotesHandler = (res) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n if (res) {\r\n newSt.isReload = new Date();\r\n } else {\r\n newSt.showNotesModal = false;\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n const baseUrl = `Sales/GetAllAgedMeasuresWorkInProgress?BranchID=${ParamBranchId}&mont=${ParamMonth}${\r\n ParamDepartmentDescription && `&dn=${ParamDepartmentDescription}`\r\n }&Department=${ParamDepartmentCode}`;\r\n\r\n return (\r\n
\r\n \r\n \r\n {state.showWIPDetails && (\r\n setState((st) => ({ ...st, showWIPDetails: false }))} maxWidth=\"xl\" fullWidth>\r\n \r\n \r\n )}\r\n {state.showMotHistory && (\r\n setState((st) => ({ ...st, showMotHistory: false }))}\r\n maxWidth=\"md\"\r\n fullWidth\r\n overflow={'auto'}\r\n >\r\n \r\n \r\n )}\r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isReload={state.isReload}\r\n downloadName=\"Aged Measures Workin Progress\"\r\n dropDownListProvider={getReportsSalesDropdownsResolveData}\r\n />\r\n \r\n \r\n {state.showNotesModal && }\r\n
\r\n );\r\n};\r\n\r\nexport default AgedMeasuresWorkingProgress;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport ReactDOM from 'react-dom';\r\nimport { useHistory } from 'react-router-dom';\r\nlet addCommas = (val) => {\r\n return val ? `£${val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '£0.00';\r\n};\r\nconst baseColumns = [\r\n { field: 'salesExec', sortable: false, title: `Sales Exec`, filterable: false },\r\n {\r\n field: 'totalAmount',\r\n title: 'Total',\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true\r\n },\r\n {\r\n field: 'sevenDays',\r\n title: '7 Days',\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false\r\n },\r\n {\r\n field: 'fourteenDays',\r\n title: '8-14 Days',\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false\r\n },\r\n {\r\n field: 'twentyOneDays',\r\n title: '15-21 Days',\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false\r\n },\r\n {\r\n field: 'overTwentyOneDays',\r\n title: 'Over 21 Days',\r\n showColumnTotal: true,\r\n align: 'right',\r\n filterable: false,\r\n sortable: false\r\n }\r\n];\r\nconst crumbs = (measuredesc) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'Vehicle Aged Debt By Salesexec', active: true }\r\n];\r\nconst VehicleAgedDebtBySalesexec = (props) => {\r\n const history = useHistory();\r\n const redirectToScreens = (value, record, MeasureID, field) => {\r\n let searchQuery = `?SalesExecCode=${record.salesExecCode}&AgeDays=${field.AgeDays}&salesExec=${record.salesExec}`;\r\n history.push({\r\n pathname: '/sales/ViewDebtDetailsSalesexec',\r\n search: searchQuery\r\n });\r\n };\r\n\r\n const monthsActionHandler = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n redirectToScreens(value, record, props.MeasureID, field)}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {field.AgeDays ? addCommas(value) : value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n\r\n let salesExecCol = tempCols.find((element) => element.field === 'salesExec');\r\n let sevenDaysCol = tempCols.find((element) => element.field === 'sevenDays');\r\n let fourteenDaysCol = tempCols.find((element) => element.field === 'fourteenDays');\r\n let twentyOneDaysCol = tempCols.find((element) => element.field === 'twentyOneDays');\r\n let overTwentyOneDaysCol = tempCols.find((element) => element.field === 'overTwentyOneDays');\r\n\r\n if (salesExecCol) {\r\n salesExecCol.renderer = monthsActionHandler({ AgeDays: '' });\r\n }\r\n if (sevenDaysCol) {\r\n sevenDaysCol.renderer = monthsActionHandler({ AgeDays: 7 });\r\n }\r\n if (fourteenDaysCol) {\r\n fourteenDaysCol.renderer = monthsActionHandler({ AgeDays: 14 });\r\n }\r\n if (twentyOneDaysCol) {\r\n twentyOneDaysCol.renderer = monthsActionHandler({ AgeDays: 21 });\r\n }\r\n if (overTwentyOneDaysCol) {\r\n overTwentyOneDaysCol.renderer = monthsActionHandler({ AgeDays: 22 });\r\n }\r\n\r\n return tempCols;\r\n }, []);\r\n\r\n const baseUrl = `Sales/VehicleDebt`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n isShowTotal={true}\r\n hidePagination={true}\r\n hideFilterRow={true}\r\n downloadName=\"Vehicle Aged Debt By Salesexec\"\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default VehicleAgedDebtBySalesexec;\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport BreadCrumbs from './../../../../../Core/Controls/Breadcrumb/index';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport { getReportsSalesDropdownsResolveData } from '../../../../../Core/Service/reportService';\r\n\r\nconst baseColumns = [\r\n { title: 'Stock No', field: 'sn', width: 80, sortable: true },\r\n { title: 'Status', field: 's', width: 60, sortable: true },\r\n {\r\n title: 'Progress',\r\n field: 'pd',\r\n width: 80,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'progressCodes',\r\n dropDownValueField: 'id',\r\n dropDownLableField: 'name',\r\n sortable: true\r\n },\r\n {\r\n title: 'Model Code',\r\n field: 'mc',\r\n width: 90,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelRecords',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Vehicle Description',\r\n field: 'vd',\r\n width: 250,\r\n sortable: true,\r\n\r\n cssClass: 'text-center'\r\n },\r\n {\r\n title: 'Comm Number',\r\n field: 'cn',\r\n width: 100,\r\n sortable: true\r\n },\r\n\r\n {\r\n title: 'Cons Date',\r\n field: 'cd',\r\n width: 90,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Build Date',\r\n field: 'bd',\r\n width: 90,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Days',\r\n field: 'd',\r\n width: 90,\r\n sortable: true\r\n },\r\n {\r\n title: 'Sold By',\r\n field: 'bn',\r\n width: 150,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'branchList',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Notes',\r\n field: 'n',\r\n width: 150,\r\n sortable: true\r\n },\r\n {\r\n title: 'Latest Loc',\r\n field: 'rsc',\r\n width: 90,\r\n sortable: true\r\n // renderer: function (value, record) {\r\n // return addCommas(value);\r\n // }\r\n },\r\n {\r\n title: 'Vehicle Group',\r\n field: 'mac',\r\n width: 100,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelAnalysisCodes',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n }\r\n];\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'New Vehicle Stock (Excluding WIP)', active: true }\r\n];\r\n\r\nconst VehicleStocksExWip = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let Prampd = params.get('pd') || '';\r\n let PramMC = params.get('mc') || '';\r\n let PramMAC = params.get('mac') || '';\r\n const baseUrl = `Sales/SalesVehicleStock`;\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={baseColumns}\r\n getUrl={baseUrl}\r\n displayPagination={true}\r\n FilterdParamsValues={{ pd: Prampd, mc: PramMC, mac: PramMAC }}\r\n downloadName={'New Vehicle Stock'}\r\n dropDownListProvider={getReportsSalesDropdownsResolveData}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default VehicleStocksExWip;\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport BreadCrumbs from './../../../../../Core/Controls/Breadcrumb/index';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport { getReportsSalesDropdownsResolveData } from '../../../../../Core/Service/reportService';\r\n\r\nconst baseColumns = [\r\n { title: 'Stock No', field: 'sn', width: 80, sortable: true },\r\n { title: 'Status', field: 's', width: 80, sortable: true },\r\n {\r\n title: 'Progress',\r\n field: 'pd',\r\n width: 80,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'progressCodes',\r\n dropDownValueField: 'id',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Model',\r\n field: 'mc',\r\n width: 90,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelRecords',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Vehicle Description',\r\n field: 'vd',\r\n width: 250,\r\n sortable: true,\r\n\r\n cssClass: 'text-center'\r\n },\r\n {\r\n title: 'Comm Number',\r\n field: 'cn',\r\n width: 110,\r\n sortable: true\r\n },\r\n\r\n {\r\n title: 'Cons Date',\r\n field: 'cd',\r\n width: 90,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Build Date',\r\n field: 'bd',\r\n width: 90,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Days',\r\n field: 'd',\r\n width: 90,\r\n sortable: true\r\n },\r\n {\r\n title: 'Sold By',\r\n field: 'bn',\r\n width: 100,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'branchList',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Notes',\r\n field: 'n',\r\n width: 150,\r\n sortable: true\r\n },\r\n {\r\n title: 'Latest Loc',\r\n field: 'rsc',\r\n width: 90,\r\n sortable: true\r\n // renderer: function (value, record) {\r\n // return addCommas(value);\r\n // }\r\n },\r\n {\r\n title: 'Vehicle Group',\r\n field: 'mac',\r\n width: 100,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelAnalysisCodes',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n }\r\n];\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'New Vehicle Orders', active: true }\r\n];\r\n\r\nconst VehicleNewOrder = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let PramMC = params.get('mc') || '';\r\n const baseUrl = `Sales/NewVehicleOrders`;\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={baseColumns}\r\n getUrl={baseUrl}\r\n displayPagination={true}\r\n FilterdParamsValues={{ mc: PramMC }}\r\n downloadName={'New Vehicle Orders'}\r\n dropDownListProvider={getReportsSalesDropdownsResolveData}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default VehicleNewOrder;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel, Breadcrumbs } from '@material-ui/core';\r\nimport { TextBox } from './../../../../../Core/FormInput';\r\nimport { Link } from 'react-router-dom';\r\nimport NestedGijgoGrid from './../../../../../Core/Controls/GijgoGrid/nestedGijgoGrid';\r\nimport BreadCrumbs from './../../../../../Core/Controls/Breadcrumb/index';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport CommonGijgoGrid from './../../../../../Core/Controls/GijgoGrid/index';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport DialogComp from '../../../../../Core/Modal/dialogModal';\r\nimport { useState } from 'react';\r\nimport MotHistoryScreen from '../../MotHistoryScreen';\r\nimport ReactDOM from 'react-dom';\r\nimport { getReportsSalesDropdownsResolveData } from '../../../../../Core/Service/reportService';\r\n\r\nvar monthNames = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\r\nlet addCommas = (val) => {\r\n return val ? `£${val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '£0.00';\r\n};\r\n\r\nconst baseColumns = [\r\n { title: 'Reg Number', field: 'rn', width: 100, sortable: true },\r\n {\r\n title: 'Vehicle Description',\r\n field: 'vd',\r\n width: 250,\r\n sortable: true,\r\n\r\n cssClass: 'text-center'\r\n },\r\n { title: 'VSB No', field: 'sn', width: 80, sortable: true },\r\n {\r\n title: 'Invoice Date',\r\n field: 'ivd',\r\n width: 100,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'In Stock',\r\n field: 'isd',\r\n width: 100,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'RegDate',\r\n field: 'rd',\r\n width: 100,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Mileage',\r\n field: 'm',\r\n width: 80,\r\n\r\n sortable: true\r\n },\r\n { title: 'Status', field: 'acs', width: 50, sortable: true },\r\n { title: 'Q', field: 'qv', width: 50, sortable: true },\r\n\r\n {\r\n title: 'VAT Price',\r\n field: 'va',\r\n width: 90,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return addCommas(value);\r\n }\r\n },\r\n\r\n {\r\n title: 'Recon',\r\n field: 'rc',\r\n width: 90,\r\n sortable: true\r\n },\r\n {\r\n title: 'Total',\r\n field: 'total',\r\n width: 90,\r\n sortable: true,\r\n\r\n renderer: function (value, record) {\r\n return addCommas(value);\r\n }\r\n },\r\n {\r\n title: 'Age',\r\n field: 'age',\r\n width: 90,\r\n sortable: true\r\n },\r\n\r\n {\r\n title: 'Model Code',\r\n field: 'mdc',\r\n width: 90,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'modelRecords',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Franchise',\r\n field: 'fn',\r\n width: 70,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'franchiseRecords',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Selling Branch',\r\n width: 70,\r\n sortable: true,\r\n field: 'bn',\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'branchList',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n }\r\n];\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'Used Vehicle Stock', active: true }\r\n];\r\n\r\nconst UsedVehicleStock = (props) => {\r\n const [state, setState] = useState({ showMotHistory: false });\r\n\r\n const regNumberRendrer = (field) => (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showMotHistory: true, regNo: record?.rn, FranchiseCode: record?.franchiseCode }))}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const columns = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n\r\n let regNumberCol = tempCols.find((element) => element.field === 'rn');\r\n\r\n if (regNumberCol) {\r\n regNumberCol.renderer = regNumberRendrer({});\r\n }\r\n\r\n return tempCols;\r\n }, []);\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let PramFN = params.get('fn') || '';\r\n let PramBN = params.get('bn') || '';\r\n let PramMDC = params.get('mdc') || '';\r\n\r\n const baseUrl = `Sales/UsedVehicleStock`;\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={columns}\r\n getUrl={baseUrl}\r\n displayPagination={true}\r\n FilterdParamsValues={{ fn: PramFN, bn: PramBN, mdc: PramMDC }}\r\n downloadName=\"Used Vehicle Stock\"\r\n dropDownListProvider={getReportsSalesDropdownsResolveData}\r\n />\r\n \r\n \r\n {state.showMotHistory && (\r\n setState((st) => ({ ...st, showMotHistory: false }))} maxWidth=\"md\" fullWidth overflow={'auto'}>\r\n \r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default UsedVehicleStock;\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport BreadCrumbs from './../../../../../Core/Controls/Breadcrumb/index';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport { getReportsSalesDropdownsResolveData } from '../../../../../Core/Service/reportService';\r\n\r\nlet addCommas = (val) => {\r\n return val ? `£${val.toFixed(2).replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,')}` : '£0.00';\r\n};\r\n\r\nconst baseColumns = [\r\n {\r\n title: 'Department',\r\n field: 'dd',\r\n width: 90,\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'departmentCodes',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'WIP No.',\r\n field: 'wn',\r\n width: 100,\r\n sortable: true,\r\n\r\n cssClass: 'text-center'\r\n },\r\n {\r\n title: 'Raised',\r\n field: 'r',\r\n width: 100,\r\n sortable: true,\r\n // align: 'center',\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n { title: 'Account', field: 'ac', width: 100, sortable: true },\r\n {\r\n title: 'Phone No.',\r\n field: 'ph',\r\n width: 100,\r\n sortable: true,\r\n // align: 'center',\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n }\r\n },\r\n {\r\n title: 'Part Total',\r\n field: 'pt',\r\n width: 90,\r\n sortable: true,\r\n // align: 'right',\r\n renderer: function (value, record) {\r\n return addCommas(value);\r\n }\r\n },\r\n {\r\n title: 'Labour Total',\r\n field: 'lt',\r\n width: 90,\r\n sortable: true,\r\n align: 'right',\r\n renderer: function (value, record) {\r\n return addCommas(value);\r\n }\r\n },\r\n {\r\n title: 'Total',\r\n field: 't',\r\n width: 90,\r\n sortable: true,\r\n align: 'right',\r\n renderer: function (value, record) {\r\n return addCommas(value);\r\n }\r\n },\r\n\r\n {\r\n title: 'Address',\r\n field: 'addr',\r\n width: 200,\r\n sortable: true,\r\n align: 'center'\r\n },\r\n {\r\n title: 'Code',\r\n field: 'mdc',\r\n width: 90,\r\n sortable: true,\r\n align: 'right'\r\n },\r\n {\r\n title: 'Franchise',\r\n field: 'fc',\r\n width: 100,\r\n align: 'right',\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'franchiseRecords',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n {\r\n title: 'Branch',\r\n field: 'bn',\r\n width: 100,\r\n align: 'center',\r\n sortable: true,\r\n isDropDown: true,\r\n listIdFromAPIResponse: 'branchList',\r\n dropDownValueField: 'name',\r\n dropDownLableField: 'name'\r\n },\r\n { title: 'D', field: 'qv', width: 50, align: 'center', sortable: true }\r\n];\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Sales', active: true },\r\n { name: 'Sales Contingency Debt', active: true }\r\n];\r\n\r\nconst SalesContingencyDebt = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let PramFN = params.get('fn') || '';\r\n let PramBN = params.get('bn') || '';\r\n let PramDD = params.get('dd') || '';\r\n const baseUrl = `Sales/SalesContingencyDebt`;\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={baseColumns}\r\n getUrl={baseUrl}\r\n displayPagination={true}\r\n FilterdParamsValues={{ fn: PramFN, bn: PramBN, dd: PramDD }}\r\n downloadName={'Sales Contingency Debt'}\r\n dropDownListProvider={getReportsSalesDropdownsResolveData}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default SalesContingencyDebt;\r\n","import React, { useMemo } from 'react';\r\nimport { moment } from 'moment';\r\nimport { Grid, FormLabel } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport ReportGijgoGrid from '../../GijgoForReportsScreen';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\n\r\nconst baseColumns = [\r\n {\r\n field: 'ac',\r\n title: 'Account',\r\n filterable: false,\r\n sortable: false,\r\n width: 90\r\n // isCurrency: true\r\n },\r\n {\r\n field: 'cr',\r\n title: 'Reference',\r\n filterable: false,\r\n sortable: false,\r\n width: 180\r\n },\r\n {\r\n field: 'rn',\r\n title: 'Reg No',\r\n filterable: false,\r\n sortable: false,\r\n width: 100\r\n },\r\n {\r\n field: 'iname',\r\n title: 'Invoice Name',\r\n filterable: false,\r\n sortable: false,\r\n width: 250\r\n },\r\n {\r\n field: 'cn',\r\n title: 'Customer Name',\r\n filterable: false,\r\n sortable: false,\r\n width: 200\r\n },\r\n {\r\n field: 'bal',\r\n title: 'Balance',\r\n showColumnTotal: true,\r\n filterable: false,\r\n sortable: false,\r\n isCurrency: true,\r\n width: 120,\r\n align: 'right'\r\n },\r\n {\r\n field: 'id',\r\n title: 'Invoice Date',\r\n filterable: false,\r\n sortable: false,\r\n renderer: function (value, record) {\r\n return formatters.MonthShortFormatter(value);\r\n },\r\n width: 120\r\n },\r\n {\r\n field: 'age',\r\n title: 'Age',\r\n filterable: false,\r\n sortable: false,\r\n width: 60\r\n },\r\n {\r\n field: 'loc',\r\n title: 'Sold By',\r\n filterable: false,\r\n sortable: false,\r\n width: 100\r\n },\r\n {\r\n field: 'comm',\r\n title: 'Comm Number',\r\n filterable: false,\r\n sortable: false,\r\n width: 140\r\n },\r\n {\r\n field: 'sbn',\r\n title: 'Stockbook Number',\r\n filterable: false,\r\n sortable: false,\r\n width: 180\r\n },\r\n {\r\n field: 'dn',\r\n title: 'Invoice No',\r\n filterable: false,\r\n sortable: false,\r\n width: 120\r\n }\r\n];\r\n\r\nconst getCrumbs = (ParamsalesExec, ParamSalesExecCode, ParamAgeDays) => {\r\n let temp = {};\r\n let final = [\r\n { name: 'Home', path: '' },\r\n { name: `Vehicle Aged Debt By Salesexec`, path: '/sales/VehicleAgedDebtBySalesexec' }\r\n ];\r\n if (ParamsalesExec || ParamSalesExecCode || ParamAgeDays) {\r\n temp = {\r\n name: `${ParamsalesExec ? ParamsalesExec : ''} ${\r\n ParamAgeDays == '7'\r\n ? '(7 Days)'\r\n : ParamAgeDays == '14'\r\n ? '(8-14 Days)'\r\n : ParamAgeDays == '21'\r\n ? '(15-21 Days)'\r\n : ParamAgeDays == '22'\r\n ? '(Over 21 Days)'\r\n : ''\r\n }`,\r\n active: true\r\n };\r\n final = [...final, { ...temp }];\r\n }\r\n\r\n return final;\r\n};\r\n\r\nconst ViewDebtDetailsSalesexec = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamsalesExec = params.get('salesExec') || '';\r\n let ParamSalesExecCode = params.get('SalesExecCode') || '';\r\n let ParamAgeDays = params.get('AgeDays') || '';\r\n const baseUrl = `Sales/VehicleDebt?SalesExecCode=${ParamSalesExecCode}&AgeDays=${ParamAgeDays}`;\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res?.data?.list,\r\n total: res?.data?.total\r\n })}\r\n columns={baseColumns}\r\n getUrl={baseUrl}\r\n isShowTotal={true}\r\n hidePagination={true}\r\n hideFilterRow={true}\r\n />\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default ViewDebtDetailsSalesexec;\r\n","import { Grid, Paper } from '@material-ui/core';\r\nimport React from 'react';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport './WeeklyFlashReport.scss';\r\nimport PublicIcon from '@material-ui/icons/Public';\r\nimport moment from 'moment';\r\nimport { useEffect } from 'react';\r\nimport { getWeeklyFlashReport } from '../../../../../Core/Service/ReportScreens-service';\r\nimport { useState } from 'react';\r\n\r\nconst crumbs = (measuredesc) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'DOC', active: true },\r\n { name: measuredesc, active: true }\r\n];\r\n\r\nlet currentYear = moment().year();\r\n\r\nconst WeeklyFlashReport = (props) => {\r\n const [state, setState] = useState({ tableData: {} });\r\n\r\n const pullTableData = async () => {\r\n let res = await getWeeklyFlashReport();\r\n setState((st) => ({ ...st, tableData: res.data[0] }));\r\n };\r\n\r\n useEffect(() => {\r\n pullTableData();\r\n }, []);\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n New Truck Sales\r\n
\r\n
\r\n
Vehicle DescriptionNotesEst Profit
{vd}{n}{estimatedProfit}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
MTDYTDOrders{currentYear}{currentYear}% of{currentYear + 1}
Invoiced Budget Invoiced BudgetMTD YTDWIPTotal VolumeBudget VolumeBudget AchievedWIP
{state.tableData.invoiceTruckMTD}{state.tableData.budgetInvoiceTruckMTD}{state.tableData.invoiceTruckYTD}{state.tableData.budgetInvoiceTruckYTD}{state.tableData.orderTruckMTD}{state.tableData.orderTruckYTD}{state.tableData.orderTruckWIP}{state.tableData.totalVolumeTruck}{state.tableData.budgetVolumeTruck}{state.tableData.budgetAchievedTruck}{state.tableData.wIPTruck}
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n New Van Sales\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
MTDYTDOrders{currentYear}{currentYear}% of{currentYear + 1}
Invoiced Budget Invoiced BudgetMTD YTDWIPTotal VolumeBudget VolumeBudget AchievedWIP
{state.tableData.invoiceVanMTD}{state.tableData.budgetInvoiceVanMTD}{state.tableData.invoiceVanYTD}{state.tableData.budgetInvoiceVanYTD}{state.tableData.orderVanMTD}{state.tableData.orderVanYTD}{state.tableData.orderVanWIP}{state.tableData.totalVolumeVan}{state.tableData.budgetVolumeVan}{state.tableData.budgetAchievedVan}{state.tableData.wIPVan}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n New Maxus Van Sales\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
MTDYTDOrders{currentYear}{currentYear}% of{currentYear + 1}
Invoiced Budget Invoiced BudgetMTD YTDWIPTotal VolumeBudget VolumeBudget AchievedWIP
{state.tableData.invoiceMaxusMTD}{state.tableData.budgetInvoiceMaxusMTD}{state.tableData.invoiceMaxusYTD}{state.tableData.budgetInvoiceMaxusYTD}{state.tableData.orderMaxusMTD}{state.tableData.orderMaxusYTD}{state.tableData.orderMaxusWIP}{state.tableData.totalVolumeMaxus}{state.tableData.budgetVolumeMaxus}{state.tableData.budgetAchievedMaxus}{state.tableData.wIPMaxus}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Used Sales\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Used Truck Sales
MTDYTD
InvoicedBudgetInvoicedBudget
{state.tableData.invoiceUsedTruckMTD}{state.tableData.budgetUsedTruckMTD}{state.tableData.invoiceUsedTruckYTD}{state.tableData.budgetUsedTruckYTD}
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Used Van Sales
MTDYTD
InvoicedBudgetInvoicedBudget
{state.tableData.invoiceUsedVanMTD}{state.tableData.budgetInvoiceUsedVanMTD}{state.tableData.invoiceUsedVanYTD}{state.tableData.budgetInvoiceUsedVanYTD}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Used Truck StocksCurrent Wk(Prior Month)
Used Stock Units{state.tableData.truckUsedStockUnitsCurrentWk}{state.tableData.truckUsedStockUnitsPriorMonth}
Used Stock Value{state.tableData.truckUsedStockValueCurrentWk}{state.tableData.truckUsedStockValuePriorMonth}
Avg / vehicle{state.tableData.truckAvgvehicleCurrentWk}{state.tableData.truckAvgvehiclePriorMonth}
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Used Van StocksCurrent Wk(Prior Month)
Used Stock Units{state.tableData.vanUsedStockUnitsCurrentWk}{state.tableData.vanUsedStockUnitsPriorMonth}
Used Stock Value{state.tableData.vanUsedStockValueCurrentWk}{state.tableData.vanUsedStockValuePriorMonth}
Avg / vehicle{state.tableData.vanAvgvehicleCurrentWk}{state.tableData.vanAvgvehiclePriorMonth}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Aftersales\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Parts MTD % of Flex Budget
TradeWorkshopTotal
{state.tableData.aftersalesPartsMTDTrade}{state.tableData.aftersalesPartsMTDWorkshop}{state.tableData.aftersalesPartsMTDTotal}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Service MTD % of Flex Budget
Attended Hours{state.tableData.aftersalesAttendedHours}
Booked Hours{state.tableData.aftersalesServiceBookedHours}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Service Productivity
% of Budget Achieved
Open'g WIP{state.tableData.serviceProductivityOpenWIP}
Hours Sold{state.tableData.serviceProductivityHoursSold}
Current WIP{state.tableData.serviceProductivityCurrentWIP}
Prod. Hours{state.tableData.serviceProductivityProdHours}{state.tableData.serviceProductivityBudgetAchieved}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Forecast\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ForecastActualBudget% of Budget
Parts Gross Margin v Budget{state.tableData.forecastActualPartsGrossMargin}{state.tableData.forecastBudgetPartsGrossMargin}{state.tableData.forecastpercBudgetPartsGrossMargin}
Labour Revenue v Budget{state.tableData.forecastpercBudgetLabourRevenue}{state.tableData.forecastBudgetLabourRevenue}{state.tableData.forecastpercBudgetLabourRevenue}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Outstanding Cont.\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Current Wk(Prior Week)
Impacting on cash flow{state.tableData.outstandingContCurrentWkImpactingcashflow}{state.tableData.outstandingContPriorWeekImpactingcashflow}
Pending Registrations{state.tableData.outstandingContCurrentWkPendingRegistrations}{state.tableData.outstandingContPriorWeekPendingRegistrations}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Vehicle Debtors\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Current Wk(Prior Week)
Total Value{state.tableData.vehicleDebtorsCurrentWkTotalValue}{state.tableData.vehicleDebtorsPriorWeekTotalValue}
{`Value >30-days`}{state.tableData.vehicleDebtorsCurrentWk30daygreater}{state.tableData.vehicleDebtorsPriorWeek30daygreater}
{`Value >60-days`}{state.tableData.vehicleDebtorsCurrentWk60daygreater}{state.tableData.vehicleDebtorsPriorWeek60daygreater}
Reg + Not Deferred{state.tableData.vehicleDebtorsCurrentWkRegNotDeferred}{state.tableData.vehicleDebtorsPriorWeekRegNotDeferred}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Aged WIP\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {/* \r\n \r\n \r\n \r\n \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Current Week(Prior Week)
Current{state.tableData.agedWIPCurrentWkCurrent}{state.tableData.agedWIPCurrentWkCurrentperc}{state.tableData.agedWIPPriorWeekCurrent}
{`Value >30-days`}{state.tableData.agedWIPCurrentWk30daysgreater}{state.tableData.agedWIPCurrentWk30daysgreaterperc}{state.tableData.agedWIPPriorWeek30daysgreater}
{`Value >60-days`}{state.tableData.agedWIPCurrentWk60daysgreater}{state.tableData.agedWIPCurrentWk60daysgreaterperc}{state.tableData.agedWIPPriorWeek60daysgreater}
{`>90-days`}£10,88214.6%
Total{state.tableData.agedWIPCurrentWkTotal}{state.tableData.agedWIPCurrentWkTotalperc}{state.tableData.agedWIPPriorWeekTotal}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Cash Sales\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Current Week(Prior Week)
Current{state.tableData.cashSalesCurrentWkCurrent}{state.tableData.cashSalesCurrentWkCurrentperc}{state.tableData.cashSalesPriorWeekCurrent}
{`Value >30-days`}{state.tableData.cashSalesCurrentWk30daygreater}{state.tableData.cashSalesCurrentWk30daygreaterperc}{state.tableData.cashSalesPriorWeek30daygreater}
{`Value >60-days`}{state.tableData.cashSalesCurrentWk60daygreater}{state.tableData.cashSalesCurrentWk60daygreaterperc}{state.tableData.cashSalesPriorWeek60daygreater}
{`>90-days`}{state.tableData.cashSalesCurrentWk90daygreater}{state.tableData.cashSalesCurrentWk90daygreaterperc}{state.tableData.cashSalesPriorWeek90daygreater}
Total{state.tableData.cashSalesCurrentWkTotal}{state.tableData.cashSalesCurrentWkTotalperc}{state.tableData.cashSalesPriorWeekTotal}
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Queries\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
CountAmount
Current{state.tableData.queriesCurrentWkCurrent}{state.tableData.queriesCurrentWkCurrentperc}{state.tableData.queriesPriorWeekCurrent}
{`Value >30-days`}{state.tableData.queriesCurrentWk30daygreater}{state.tableData.queriesCurrentWk30daygreaterperc}{state.tableData.queriesPriorWeek30daygreater}
{`Value >60-days`}{state.tableData.queriesCurrentWk60daygreater}{state.tableData.queriesCurrentWk60daygreaterperc}{state.tableData.queriesPriorWeek60daygreater}
{`>90-days`}{state.tableData.queriesCurrentWk90daygreater}{state.tableData.queriesCurrentWk90daygreaterperc}{state.tableData.queriesPriorWeek90daygreater}
Total{state.tableData.queriesCurrentWkTotal}{state.tableData.queriesCurrentWkTotalperc}{state.tableData.queriesPriorWeekTotal}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n MTD Sales Gross Margin\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
BudgetActualVariance
New truck{state.tableData.mtdSalesGrossMarginNewtruckBudget}{state.tableData.mtdSalesGrossMarginNewtruckActual}{state.tableData.mtdSalesGrossMarginNewtruckVariance}
New Van{state.tableData.mtdSalesGrossMarginNewVanBudget}{state.tableData.mtdSalesGrossMarginNewVanActual}{state.tableData.mtdSalesGrossMarginNewVanVariance}
Used Van{state.tableData.mtdSalesGrossMarginUsedVanBudget}{state.tableData.mtdSalesGrossMarginUsedVanActual}{state.tableData.mtdSalesGrossMarginUsedVanVariance}
Used Truck{state.tableData.mtdSalesGrossMarginUsedTruckBudget}{state.tableData.mtdSalesGrossMarginUsedTruckActual}{state.tableData.mtdSalesGrossMarginUsedTruckVariance}
Total{state.tableData.mtdSalesGrossMarginTotalBudget}{state.tableData.mtdSalesGrossMarginTotalActual}{state.tableData.mtdSalesGrossMarginTotalVariance}
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport default WeeklyFlashReport;\r\n","import React from 'react';\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport { blue } from '@material-ui/core/colors';\r\nimport { border } from '@material-ui/system';\r\nimport { Grid } from '@material-ui/core';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#29308C',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14\r\n // borderRight: '3px solid white'\r\n },\r\n body: {\r\n fontSize: 11,\r\n border: '1px solid ',\r\n padding: 0,\r\n backgroundColor: '#29308C',\r\n color: theme.palette.common.white\r\n }\r\n}))(TableCell);\r\n\r\nconst SkyblueCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#1ECBE1',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\n\r\nconst EmptyCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: 'white',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n // border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\n\r\nconst WipCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#34B5C4',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\nconst EomCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#E54CDF',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n // root: {\r\n // '&:nth-of-type(odd)': {\r\n // backgroundColor: theme.palette.action.hover\r\n // }\r\n // }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n width: '100%'\r\n }\r\n});\r\n\r\nexport default function BudgetTableOne() {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n Invoicing (Hrs)\r\n Invoicing (£'s)\r\n Recovery Rate\r\n WIP\r\n EOM Forecast (£)\r\n \r\n \r\n \r\n \r\n Location\r\n \r\n \r\n \r\n Inv (MTD)\r\n \r\n \r\n Re-Fcast (MTD)\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n \r\n \r\n Inv (MTD)\r\n \r\n \r\n Re-Fcast (MTD)\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n \r\n \r\n Recovery Rate\r\n \r\n \r\n Re-Fcast\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n \r\n \r\n Pre Books\r\n \r\n \r\n 0 to 30\r\n \r\n \r\n 30+\r\n \r\n \r\n Wip Days\r\n \r\n \r\n Hours in WIP\r\n \r\n \r\n Parts Value in WIP (£)\r\n \r\n \r\n Avg Labour Hours value\r\n \r\n \r\n \r\n \r\n \r\n \r\n Invoice Projection\r\n \r\n \r\n Invoice Re-Fcast\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React from 'react';\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport { blue } from '@material-ui/core/colors';\r\nimport { border } from '@material-ui/system';\r\nimport { Grid } from '@material-ui/core';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#29308C',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n },\r\n body: {\r\n fontSize: 11,\r\n border: '1px solid ',\r\n padding: 0,\r\n backgroundColor: '#29308C',\r\n color: theme.palette.common.white\r\n }\r\n}))(TableCell);\r\n\r\nconst LightGreyCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#1ECBE1',\r\n color: theme.palette.common.black,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n },\r\n body: {\r\n fontSize: 11,\r\n border: '1px solid ',\r\n padding: 0,\r\n backgroundColor: '#d3d3d3',\r\n textAlign: 'center',\r\n color: theme.palette.common.black\r\n }\r\n}))(TableCell);\r\n\r\nconst SkyblueCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#1ECBE1',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\n\r\nconst EmptyCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: 'white',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n borderBottom: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n },\r\n body: {\r\n fontSize: 11,\r\n border: '1px solid',\r\n padding: 6,\r\n backgroundColor: 'white',\r\n textAlign: 'center',\r\n color: theme.palette.common.black\r\n }\r\n}))(TableCell);\r\n\r\nconst CellWithoutPadding = withStyles((theme) => ({\r\n body: {\r\n fontSize: 11,\r\n border: '1px solid black',\r\n padding: 0,\r\n backgroundColor: 'white',\r\n textAlign: 'center',\r\n color: theme.palette.common.black\r\n }\r\n}))(TableCell);\r\n\r\nconst LightSkyBlue = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#95D9FA',\r\n color: theme.palette.common.black,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\nconst LightYellowCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#CDE272',\r\n color: theme.palette.common.black,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\n\r\nconst GraphCell = withStyles((theme) => ({\r\n head: {\r\n fontSize: 11,\r\n border: '1px solid black',\r\n padding: 0,\r\n backgroundColor: 'white',\r\n textAlign: 'center',\r\n color: theme.palette.common.black\r\n },\r\n body: {\r\n fontSize: 11,\r\n border: '1px solid black',\r\n padding: '2px 6px',\r\n backgroundColor: 'white',\r\n // textAlign: 'center',\r\n color: theme.palette.common.black\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n // root: {\r\n // '&:nth-of-type(odd)': {\r\n // backgroundColor: theme.palette.action.hover\r\n // }\r\n // }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n width: '100%'\r\n }\r\n});\r\n\r\nexport const TargetTableOne = () => {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n EOM Productive Hours Forecast\r\n \r\n Revised Invoicing Target to reduce WIP\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Daily Productive Hrs Actual\r\n \r\n \r\n Projected ME Hours (Actual)\r\n \r\n \r\n Efficiency\r\n \r\n\r\n \r\n Live Forecast Target\r\n \r\n \r\n \r\n \r\n \r\n \r\n EOM Re-Fcast Budget 5% Stretch\r\n \r\n \r\n \r\n \r\n \r\n \r\n WIP Reduction\r\n \r\n \r\n Revised Monthly Invoicing Target\r\n \r\n \r\n Revised Daily Invoicing Targets\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const TargetTableTwo = () => {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Location\r\n Mon\r\n Tue\r\n Wed\r\n Thu\r\n Fri\r\n Graphs\r\n Ide\r\n \r\n \r\n\r\n \r\n \r\n -\r\n -\r\n -\r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n Totals\r\n -\r\n -\r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n Previous Week\r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const TargetTableThree = () => {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Location\r\n Mon\r\n Tue\r\n Wed\r\n Thu\r\n Fri\r\n Graphs\r\n \r\n \r\n \r\n \r\n -\r\n -\r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n Group (MTD)\r\n -\r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n Daily Invoicing\r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const TargetTableFour = () => {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n To Do\r\n {/* */}\r\n \r\n \r\n \r\n \r\n Actual\r\n \r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n \r\n \r\n {/* \r\n Actual\r\n \r\n */}\r\n \r\n Budget\r\n \r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n \r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n 0\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const TargetTableFive = () => {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Inv Variance\r\n Mon\r\n Tue\r\n Wed\r\n Thu\r\n Fri\r\n \r\n \r\n \r\n \r\n Revised Target\r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n Budget\r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const GraphTable = () => {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n Mon\r\n Tue\r\n Wed\r\n Thu\r\n Fri\r\n \r\n \r\n \r\n \r\n \r\n      30+\r\n \r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n \r\n      0 to 30\r\n \r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n \r\n {' '}\r\n      Pre Books\r\n \r\n -\r\n -\r\n -\r\n -\r\n -\r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n","import React from 'react';\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport { blue } from '@material-ui/core/colors';\r\nimport { border } from '@material-ui/system';\r\nimport { Grid } from '@material-ui/core';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#29308C',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14\r\n // borderRight: '3px solid white'\r\n },\r\n body: {\r\n fontSize: 11,\r\n border: '1px solid ',\r\n padding: 0,\r\n backgroundColor: '#29308C',\r\n color: theme.palette.common.white\r\n }\r\n}))(TableCell);\r\n\r\nconst SkyblueCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#1ECBE1',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\n\r\nconst EmptyCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: 'white',\r\n color: theme.palette.common.black,\r\n padding: 6,\r\n // border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n },\r\n body: {\r\n backgroundColor: 'white',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n // border: '1px solid black',\r\n fontSize: 11,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\n\r\nconst WipCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#34B5C4',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\nconst EomCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#E54CDF',\r\n color: theme.palette.common.white,\r\n padding: 6,\r\n border: '1px solid black',\r\n fontSize: 14,\r\n textAlign: 'center'\r\n // borderRight: '3px solid white'\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n // root: {\r\n // '&:nth-of-type(odd)': {\r\n // backgroundColor: theme.palette.action.hover\r\n // }\r\n // }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n width: '100%'\r\n }\r\n});\r\n\r\nexport default function BudgetTableTwo() {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n Attended Hours\r\n Productive Hours\r\n Efficiency (Sold/Taken hrs)\r\n Utilisation (Productive/Attended)\r\n Non Prod\r\n Productivity (Sold/Attended)\r\n EOM Forecast (£)\r\n \r\n \r\n \r\n \r\n Location\r\n \r\n \r\n \r\n Attended MTD\r\n \r\n \r\n Re-Fcast (MTD)\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n \r\n \r\n Productive MTD\r\n \r\n \r\n Re-Fcast (MTD)\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n \r\n \r\n Efficiency\r\n \r\n \r\n KPI Re-Fcast\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n {/* */}\r\n\r\n \r\n \r\n \r\n Utilisation\r\n \r\n \r\n KPI Re-Fcast\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Productivity\r\n \r\n \r\n KPI Re-Fcast\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n \r\n \r\n Invoice Projection\r\n \r\n \r\n Invoice Re-Fcast\r\n \r\n \r\n Variance\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n","import React from 'react';\r\nimport { Container, Grid, Typography } from '@material-ui/core';\r\nimport BudgetTableOne from './dashTableOne';\r\nimport './budgetStyle.scss';\r\nimport { BudgetGraph, WipGraph, WipGraphtwo } from './budgetGraph';\r\nimport BudgetTableTwo from './dasbordTabletwo';\r\nimport { TargetTableOne, TargetTableTwo, TargetTableThree, TargetTableFour, TargetTableFive } from './targetTabels';\r\nimport { lightGreen } from '@material-ui/core/colors';\r\n\r\nconst BudgetDashboard = () => {\r\n return (\r\n
\r\n \r\n \r\n
Dec
\r\n
\r\n \r\n
Current position Report
\r\n
\r\n \r\n
12/13/22
\r\n
\r\n \r\n {/*
Current position Report
*/}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
Variance on Budget Graph
\r\n
\r\n \r\n
Wip
\r\n
\r\n \r\n
Forecast
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
Target Calculations
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Hours in WIP This Week\r\n \r\n \r\n \r\n \r\n \r\n Invoicing\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default BudgetDashboard;\r\n","import React from 'react';\r\nimport { FormHelperText, Grid } from '@material-ui/core';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\n\r\nexport const CustDetails = React.memo((props) => {\r\n const { state, setState } = props;\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n return (\r\n \r\n \r\n \r\n {state.errors.service24CustomerName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\n\r\nexport const HomeAccDealer = React.memo((props) => {\r\n const { state, setState } = props;\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\n\r\nexport const RentalFleetDetails = React.memo((props) => {\r\n const { state, setState } = props;\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport { TextBoxShrink, SlideToggle } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\n\r\nexport const VehicleDetails = React.memo((props) => {\r\n const { state, setState } = props; //useContext(JobSheetContext);\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\n\r\nexport const RecoveryDetails = React.memo((props) => {\r\n const { state, setState } = props; //useContext(JobSheetContext);\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n return (\r\n \r\n \r\n {/* public bool? Service24Recovered { get; set; }\r\n public string Service24Status { get; set; }\r\n public string Service24PaymentTypeID { get; set; } \r\n public DateTime? { get; set; }\r\n public string Service24TechnicianSignature { get; set; }\r\n\r\n //service24RecoveryDistance\r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n","import React from 'react';\r\nimport { Checkbox, FormControlLabel, Grid } from '@material-ui/core';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\n\r\nexport const JobChecks = React.memo((props) => {\r\n const { state, setState } = props; //useContext(JobSheetContext);\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"Maintenance Booklet Checked?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Entitled to MobiloVan services?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Replacement Vehicle?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Vehicle return within 30 miles?\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Breakdown or starting assistance?\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n","import React, { useContext } from 'react';\r\nimport { Chip, Divider, FormControlLabel, Grid, Hidden, makeStyles, Radio, RadioGroup, FormLabel, Typography, FormHelperText } from '@material-ui/core';\r\nimport { get } from 'lodash';\r\nimport { CustomeSignPad } from '../../../../Core/SignaturePad';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport AppContext from '../../../../App/AppContext';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n '& .mauto': {\r\n margin: 'auto'\r\n }\r\n }\r\n}));\r\n\r\nexport const RepairType = React.memo((props) => {\r\n const classes = useStyles();\r\n const { state, setState } = props;\r\n const { userRoles } = useContext(AppContext);\r\n const isAuditor = userRoles.includes('auditor');\r\n\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else if (type === 'radio' && (value === 'true' || value === 'false')) {\r\n setState((st) => ({ ...st, [name]: value === 'true' }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n\r\n const GetTechnicianSign = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n ...val\r\n }));\r\n };\r\n\r\n const clearSign = (name) => {\r\n setState((st) => ({ ...st, [name]: undefined }));\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"The repairs carried out to your vehicle are of temporary nature and it is essential that a permanent repair is carried out as soon as possible.\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"The Dealer is not liable for any damages or loss arising from the use of the vehicle/component inconsistent with the temporary nature of the repair. This includes liability for consequential loss however caused.\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"The repairs carried out to your vehicle are not sufficient for it to be used legally on the road. They are to prevent further damage and to enable recovery of the vehicle.\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n label=\"The above done not release the vehicle to you for use on the road. The customer fully and effectively indemnifies the Dealer against all damage and claims that may arise from the customer taking the vehicle and using it against the advice. This includes liability for consequential loss however caused.\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Agreed Para A or B as above\r\n \r\n {!isAuditor && (\r\n \r\n \r\n \r\n Operator Signature\r\n {state.operatorSignedByName && ({` ${state.operatorSignedByName}`})}\r\n \r\n }\r\n sign={getField('opSignature')}\r\n name=\"service24OperatorSignature\"\r\n clearSig={() => clearSign('service24OperatorSignature')}\r\n />\r\n \r\n \r\n \r\n \r\n Technician Signature\r\n {state.technicianName && ({` ${state.technicianName}`})}\r\n \r\n }\r\n sign={getField('techSignature')}\r\n name=\"service24TechnicianSignature\"\r\n clearSig={() => clearSign('service24TechnicianSignature')}\r\n />\r\n {state.errors?.service24TechnicianSignatureErrorMsg}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n The Dealer does not exclude liability for death or personal injury arising from its negligence or breach of strict statutory liablitity\r\n

\r\n \r\n *Note to Dealer staff: incase of Para B. the vehicle and key are NOT to be handed over to the customer, It must be clear that the\r\n operator takes them from the counter/van against your wishes.\r\n \r\n
\r\n
\r\n \r\n );\r\n});\r\n","import React, { useEffect, useState,useContext } from 'react';\r\nimport { FormLabel, Grid, makeStyles } from '@material-ui/core';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\nimport { CustomeSignPad } from '../../../../Core/SignaturePad';\r\nimport AppContext from '../../../../App/AppContext';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n signFormControl: {\r\n border: '1px solid rgba(0, 0, 0, 0.23)',\r\n borderRadius: 4,\r\n '& > label': {\r\n background: 'white',\r\n padding: '0px 5px'\r\n },\r\n '& > canvas': {\r\n width: '100%'\r\n }\r\n },\r\n clearSign: {\r\n position: 'absolute',\r\n bottom: 10,\r\n right: 10\r\n }\r\n}));\r\n\r\nexport const DriverDetails = React.memo((props) => {\r\n const classes = useStyles();\r\n // const [hasSign, setHasSign] = useState(true);\r\n const { state, setState } = props; //useContext(JobSheetContext);\r\n // let canvasRef;\r\n const { userRoles } = useContext(AppContext);\r\n const isAuditor = userRoles.includes('auditor');\r\n\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n\r\n // const setSign = () => {\r\n // const service24DriverSignature = canvasRef.toDataURL();\r\n // console.log(service24DriverSignature);\r\n // setState((st) => ({ ...st, service24DriverSignature }));\r\n // };\r\n const GetTechnicianSign = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n ...val\r\n }));\r\n };\r\n const clearSign = () => {\r\n // canvasRef.clear();\r\n setState((st) => ({ ...st, service24DriverSignature: undefined }));\r\n };\r\n\r\n // useEffect(() => {\r\n // setHasSign(state.service24DriverSignature);\r\n // }, [canvasRef, state.service24DriverSignature]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n { !isAuditor && \r\n \r\n Signature\r\n {state.service24DriverDateSigned && (\r\n ({`On Behalf of customer:${state.driverName} ${state.service24DriverDateSigned}`})\r\n )}\r\n \r\n }\r\n sign={getField('driverSignature')}\r\n name=\"service24DriverSignature\"\r\n clearSig={clearSign}\r\n />\r\n }\r\n \r\n );\r\n});\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\n\r\nexport const BasicFooter = React.memo((props) => {\r\n const { state, setState } = props;\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getService24ByID = async (id) => {\r\n let res = await get(`Service24Jobs/GetDetails/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const getService24Dropdowns = async () => {\r\n let res = await get(`Service24Jobs/Dropdowns`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postService24 = async (data) => {\r\n let res = await post(`Service24Jobs`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import { get, post, put } from './http-calls';\r\n\r\nexport const getBtteryTestDetails = async (id, technicianJobId) => {\r\n let res = await get(`BatteryTests/${id}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postBtteryTestDetails = async (data) => {\r\n let res = await post('BatteryTests', data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import React, { useContext, useMemo, useEffect, useState, useRef } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport SignaturePad from 'react-signature-canvas';\r\nimport { TextBox, SecondaryButton, DialogContents, AppButtonGroup } from '../../../Core/FormInput';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport '../../technician/technician-app/TechnicianStyle.scss';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport formatters from '../../../Core/Grid/inputFormatter';\r\nimport { Backup, Mail, Visibility } from '@material-ui/icons';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport BorderColorIcon from '@material-ui/icons/BorderColor';\r\nimport { getBtteryTestDetails, postBtteryTestDetails } from '../../../Core/Service/batteryTest-service';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport InputAdornment from '@material-ui/core/InputAdornment';\r\nimport { FormHelperText, InputLabel } from '@material-ui/core';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\n\r\nconst SecondaryBatteryModal = ({ state, fieldChange, handel, styles }) => {\r\n return (\r\n <>\r\n \r\n \r\n Battery Manufacturer\r\n \r\n \r\n \r\n {state.secondaryErrors.batteryTestManufacturerID}\r\n \r\n \r\n \r\n Barcode (Mode Designation)\r\n \r\n {state.secondaryErrors.batteryTestBarcode}\r\n \r\n \r\n Capacity\r\n Ah\r\n }}\r\n />\r\n {state.secondaryErrors.batteryTestCapacity}\r\n \r\n\r\n \r\n Cold Test Current\r\n \r\n {state.secondaryErrors.batteryTestColdTestCurrent}\r\n \r\n\r\n \r\n MB Part Number\r\n \r\n {state.secondaryErrors.batteryTestMBPartNumber}\r\n \r\n \r\n \r\n \r\n Production Date (on negative terminal)\r\n \r\n \r\n \r\n {/* \r\n Weeks \r\n */}\r\n\r\n \r\n \r\n \r\n \r\n \r\n {state.secondaryErrors.batteryTestProductionWeek}\r\n \r\n \r\n
\r\n \r\n Visual Inspection\r\n \r\n \r\n \r\n \r\n \r\n External signs of leaks\r\n \r\n \r\n \r\n \r\n \r\n {state.secondaryErrors.batteryTestLeak}\r\n \r\n \r\n \r\n If yes, where is the leak:\r\n \r\n \r\n {state.secondaryErrors.batteryTestLeakPosition}\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Midronics Test\r\n \r\n \r\n \r\n \r\n \r\n Result\r\n \r\n \r\n\r\n \r\n \r\n \r\n {state.secondaryErrors.batteryTestMidtronicsTestResult}\r\n {/* \r\n \r\n setState((st) => ({\r\n ...st,\r\n open: true\r\n }))\r\n }\r\n >\r\n Secondary Battery\r\n \r\n */}\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n {/* \r\n Midronics Test\r\n */}\r\n \r\n \r\n Test Code\r\n \r\n {state.secondaryErrors.batteryTestTestCode}\r\n \r\n \r\n Damage Code\r\n \r\n {state.secondaryErrors.batteryTestDamageCode}\r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default SecondaryBatteryModal;\r\n","import {\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n Divider,\r\n FormControlLabel,\r\n Grid,\r\n IconButton,\r\n InputLabel,\r\n makeStyles,\r\n Radio,\r\n RadioGroup,\r\n Typography,\r\n withStyles\r\n} from '@material-ui/core';\r\nimport { Close } from '@material-ui/icons';\r\nimport React, { useEffect, useRef, useState } from 'react';\r\nimport { TextBox } from '../../../Core/FormInput';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport { DescriptionIcon } from '@material-ui/icons/Description';\r\nimport AddBoxIcon from '@material-ui/icons/AddBox';\r\nimport RemoveCircleIcon from '@material-ui/icons/RemoveCircle';\r\nimport SecondaryBatteryModal from './../../technician/BatteryTest/SecondaryBatteryModal';\r\nimport { SecondaryButton } from './../../../Core/FormInput/AppButton';\r\nimport moment, { relativeTimeRounding } from 'moment';\r\nimport { FieldWrappper } from '../../../Core/FieldWrapper';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.action.hover\r\n // color: theme.palette.common.white\r\n },\r\n body: {\r\n fontSize: 14\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(even)': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: 700\r\n }\r\n});\r\n\r\nconst PartDialog = (props) => {\r\n const { part, setPart, control } = props;\r\n\r\n const classes = useStyles();\r\n\r\n const addPartsRow = () => {\r\n setPart((st) => [\r\n ...st,\r\n {\r\n service24PartID: null,\r\n service24PartNumber: '',\r\n service24PartDescription: '',\r\n service24PartQuantity: 0,\r\n service24PartPrice: null\r\n }\r\n ]);\r\n };\r\n\r\n const removePartAt = (indx) => {\r\n setPart((st) => {\r\n const newSt = [...st];\r\n newSt.splice(indx, 1);\r\n return newSt;\r\n });\r\n };\r\n\r\n const handlepart = (index) => (e) => {\r\n let { name, value } = e.target;\r\n setPart((st) => {\r\n let newSt = [...st];\r\n let findIndex = [...st].find((n, i) => i === index);\r\n if (findIndex) {\r\n findIndex[name] = value;\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n const totalRepair = moment(control.service24RepairEndTime).diff(control.service24RepairStartTime, 'minute');\r\n let repairHours = Math.floor(totalRepair / 60);\r\n let repairMinutes = totalRepair % 60;\r\n const TotalRepairTime = control.service24RepairEndTime && totalRepair > 0 ? `${repairHours} hours ${repairMinutes} minutes` : totalRepair < 0 ? '' : null;\r\n\r\n const Traveltimestart = moment(control.service24RepairStartTime).diff(control.service24DrivingStartTime, 'minute');\r\n const TraveltimeEnd = moment(control.service24DrivingEndTime).diff(control.service24RepairEndTime, 'minute');\r\n\r\n let TravelDiff = Traveltimestart + TraveltimeEnd;\r\n let travelHours = Math.floor(TravelDiff / 60);\r\n let travelMinutes = TravelDiff % 60;\r\n\r\n const TotalTravelTime = control.service24DrivingEndTime && TravelDiff > 0 ? `${travelHours} hours ${travelMinutes} minutes` : TravelDiff < 0 ? '' : null;\r\n\r\n const TechTime = totalRepair + TravelDiff;\r\n\r\n let techHH = Math.floor(TechTime / 60);\r\n let techMM = TechTime % 60;\r\n\r\n const TotaltechTime = TotalTravelTime && TechTime > 0 ? `${techHH} hours ${techMM} minutes` : TravelDiff < 0 ? '' : null;\r\n\r\n const TotalMileage = control.service24DrivingEndTime && control.service24DrivingFinishMileage - control.service24DrivingStartMileage;\r\n\r\n return (\r\n
\r\n \r\n {part.map((row, index) => {\r\n return (\r\n \r\n \r\n
\r\n {index !== 0 && (\r\n {\r\n removePartAt(index);\r\n }}\r\n />\r\n )}\r\n  \r\n {index === part.length - 1 && (\r\n \r\n )}\r\n
\r\n
\r\n \r\n Part Number\r\n \r\n \r\n \r\n Description\r\n \r\n \r\n \r\n Quantity\r\n \r\n \r\n \r\n Price\r\n \r\n \r\n {index != part.length - 1 && (\r\n \r\n
\r\n
\r\n )}\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default PartDialog;\r\n","import React from 'react';\r\nimport { Grid } from '@material-ui/core';\r\nimport { TextBoxShrink } from '../../../../Core/FormInput';\r\nimport { get } from 'lodash';\r\n\r\nexport const BreakdownDefectRepair = React.memo((props) => {\r\n const { state, setState } = props; //useContext(JobSheetContext);\r\n const setField = (e) => {\r\n const { name, type, value, valueAsNumber, checked } = e.target;\r\n if (type === 'number') {\r\n setState((st) => ({ ...st, [name]: valueAsNumber }));\r\n } else if (type === 'checkbox') {\r\n setState((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n const getField = (name) => {\r\n return get(state, name);\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n","import { FormHelperText, Grid, InputLabel } from '@material-ui/core';\r\nimport { Close } from '@material-ui/icons';\r\nimport React, { useEffect, useRef, useState } from 'react';\r\nimport { TextBox } from './../../../../Core/FormInput';\r\n\r\nimport AddBoxIcon from '@material-ui/icons/AddBox';\r\nimport RemoveCircleIcon from '@material-ui/icons/RemoveCircle';\r\n\r\nimport moment, { relativeTimeRounding } from 'moment';\r\n\r\nconst ServiceTime = (props) => {\r\n const { service24, setService24, validation } = props;\r\n\r\n const addTimeRow = () => {\r\n setService24((st) => [\r\n ...st,\r\n {\r\n service24TimeID: null,\r\n service24Name: '',\r\n service24DrivingStartTime: '',\r\n service24DrivingEndTime: '',\r\n service24RepairStartTime: '',\r\n service24RepairEndTime: '',\r\n service24ServiceVan: '',\r\n service24DrivingStartMileage: null,\r\n service24DrivingFinishMileage: null,\r\n service24FinishPostCode: '',\r\n service24StartPostCode: ''\r\n }\r\n ]);\r\n };\r\n\r\n const removeTimeRow = (indx) => {\r\n setService24((st) => {\r\n const newSt = [...st];\r\n newSt.splice(indx, 1);\r\n return newSt;\r\n });\r\n };\r\n\r\n const handlepart = (index) => (e) => {\r\n let { name, value } = e.target;\r\n setService24((st) => {\r\n let newSt = [...st];\r\n let findIndex = [...st].find((n, i) => i === index);\r\n if (findIndex) {\r\n findIndex[name] = value;\r\n }\r\n\r\n return newSt;\r\n });\r\n };\r\n\r\n const TotalRepairTimeCal = (index) => {\r\n let totalRepair = '';\r\n let repairHours = '';\r\n let repairMinutes = '';\r\n let TotalRepairTime = '';\r\n let service24RepairStartTime = service24[index].service24RepairStartTime;\r\n let service24RepairEndTime = service24[index].service24RepairEndTime;\r\n\r\n if (service24RepairEndTime && service24RepairStartTime) {\r\n totalRepair = moment(service24RepairEndTime).diff(service24RepairStartTime, 'minute');\r\n repairHours = Math.floor(totalRepair / 60);\r\n repairMinutes = totalRepair % 60;\r\n TotalRepairTime = service24RepairEndTime && totalRepair > 0 ? `${repairHours} hours ${repairMinutes} minutes` : totalRepair < 0 ? '' : null;\r\n }\r\n return TotalRepairTime;\r\n };\r\n\r\n const TotalTravelTimeCal = (index) => {\r\n let Traveltimestart = '';\r\n let TraveltimeEnd = '';\r\n let TravelDiff = '';\r\n let travelHours = '';\r\n let travelMinutes = '';\r\n let TotalTravelTime = '';\r\n let service24RepairStartTime = service24[index].service24RepairStartTime;\r\n let service24DrivingStartTime = service24[index].service24DrivingStartTime;\r\n let service24DrivingEndTime = service24[index].service24DrivingEndTime;\r\n let service24RepairEndTime = service24[index].service24RepairEndTime;\r\n\r\n if (service24RepairStartTime && service24DrivingStartTime && service24DrivingEndTime && service24RepairEndTime) {\r\n Traveltimestart = moment(service24RepairStartTime).diff(service24DrivingStartTime, 'minute');\r\n TraveltimeEnd = moment(service24DrivingEndTime).diff(service24RepairEndTime, 'minute');\r\n TravelDiff = Traveltimestart + TraveltimeEnd;\r\n travelHours = Math.floor(TravelDiff / 60);\r\n travelMinutes = TravelDiff % 60;\r\n TotalTravelTime = service24DrivingEndTime && TravelDiff > 0 ? `${travelHours} hours ${travelMinutes} minutes` : TravelDiff < 0 ? '' : null;\r\n }\r\n return TotalTravelTime;\r\n };\r\n\r\n const TechTimeCal = (index) => {\r\n let totalRepair = '';\r\n let Traveltimestart = '';\r\n let TraveltimeEnd = '';\r\n let TravelDiff = '';\r\n let TechTime = '';\r\n let techHH = '';\r\n let techMM = '';\r\n let service24RepairEndTime = service24[index].service24RepairEndTime;\r\n let service24RepairStartTime = service24[index].service24RepairStartTime;\r\n let service24DrivingEndTime = service24[index].service24DrivingEndTime;\r\n let service24DrivingStartTime = service24[index].service24DrivingStartTime;\r\n let TotaltechTime = '';\r\n if (service24RepairEndTime && service24RepairStartTime && service24DrivingEndTime && service24DrivingStartTime) {\r\n totalRepair = moment(service24RepairEndTime).diff(service24RepairStartTime, 'minute');\r\n Traveltimestart = moment(service24RepairStartTime).diff(service24DrivingStartTime, 'minute');\r\n TraveltimeEnd = moment(service24DrivingEndTime).diff(service24RepairEndTime, 'minute');\r\n TravelDiff = Traveltimestart + TraveltimeEnd;\r\n\r\n TechTime = totalRepair + TravelDiff;\r\n techHH = Math.floor(TechTime / 60);\r\n techMM = TechTime % 60;\r\n TotaltechTime = TechTime > 0 ? `${techHH} hours ${techMM} minutes` : TravelDiff < 0 ? '' : null;\r\n }\r\n return TotaltechTime;\r\n };\r\n\r\n return (\r\n \r\n {service24.map((row, index) => {\r\n return (\r\n \r\n \r\n
\r\n {index !== 0 && (\r\n {\r\n removeTimeRow(index);\r\n }}\r\n />\r\n )}\r\n  \r\n {index === service24.length - 1 && (\r\n \r\n )}\r\n
\r\n
\r\n \r\n Name\r\n \r\n \r\n \r\n Driving Start Time\r\n \r\n {row.drivingStartTimeErrorMessage}\r\n \r\n\r\n \r\n Work Start Time\r\n \r\n {row.repairStartTimeErrorMessage}\r\n \r\n \r\n Work Completed End Time\r\n \r\n {row.repairEndTimeErrorMessage}\r\n \r\n \r\n Driving Finish Time\r\n \r\n {row.drivingEndTimeErrorMessage}\r\n \r\n \r\n \r\n \r\n Start Post Code\r\n \r\n \r\n \r\n Start Mileage\r\n \r\n {row.drivingStartMileageErrorMessage}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Finish Post Code\r\n \r\n \r\n \r\n Finish Mileage\r\n \r\n {row.repairEndMilageMessage}\r\n \r\n \r\n \r\n \r\n Service Van\r\n \r\n \r\n \r\n Total Repair Time\r\n \r\n \r\n \r\n Total Travel Time\r\n {' '}\r\n \r\n\r\n \r\n Technician Time\r\n \r\n \r\n \r\n Total Mileage\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n );\r\n};\r\n\r\nexport default ServiceTime;\r\n","import {\r\n Dialog,\r\n DialogContent,\r\n DialogTitle,\r\n Divider,\r\n FormControlLabel,\r\n Grid,\r\n IconButton,\r\n InputLabel,\r\n makeStyles,\r\n Radio,\r\n RadioGroup,\r\n Typography,\r\n withStyles\r\n} from '@material-ui/core';\r\nimport { Close } from '@material-ui/icons';\r\nimport React, { useEffect, useRef, useState } from 'react';\r\nimport { TextBox } from '../../../../Core/FormInput';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport { DescriptionIcon } from '@material-ui/icons/Description';\r\nimport AddBoxIcon from '@material-ui/icons/AddBox';\r\nimport RemoveCircleIcon from '@material-ui/icons/RemoveCircle';\r\nimport SecondaryBatteryModal from '../../../technician/BatteryTest/SecondaryBatteryModal';\r\nimport { SecondaryButton } from '../../../../Core/FormInput/AppButton';\r\nimport moment, { relativeTimeRounding } from 'moment';\r\nimport { FieldWrappper } from '../../../../Core/FieldWrapper';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.action.hover\r\n // color: theme.palette.common.white\r\n },\r\n body: {\r\n fontSize: 14\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(even)': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: 700\r\n }\r\n});\r\n\r\nconst WorkRequestedModal = (props) => {\r\n const { work, setWork, control } = props;\r\n\r\n const classes = useStyles();\r\n\r\n const addWorkRow = () => {\r\n setWork((st) => [\r\n ...st,\r\n {\r\n service24WorkID: null,\r\n service24WorkRequested: '',\r\n service24WorkReason: '',\r\n service24WorkAction: '',\r\n service24WorkTimeTaken: null\r\n }\r\n ]);\r\n };\r\n\r\n const removeWorkAt = (indx) => {\r\n setWork((st) => {\r\n const newSt = [...st];\r\n newSt.splice(indx, 1);\r\n return newSt;\r\n });\r\n };\r\n\r\n const handlwork = (index) => (e) => {\r\n let { name, value } = e.target;\r\n setWork((st) => {\r\n let newSt = [...st];\r\n let findIndex = [...st].find((n, i) => i === index);\r\n if (findIndex) {\r\n findIndex[name] = value;\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n const totalRepair = moment(control.service24RepairEndTime).diff(control.service24RepairStartTime, 'minute');\r\n let repairHours = Math.floor(totalRepair / 60);\r\n let repairMinutes = totalRepair % 60;\r\n const TotalRepairTime = control.service24RepairEndTime && totalRepair > 0 ? `${repairHours} hours ${repairMinutes} minutes` : totalRepair < 0 ? '' : null;\r\n\r\n const Traveltimestart = moment(control.service24RepairStartTime).diff(control.service24DrivingStartTime, 'minute');\r\n const TraveltimeEnd = moment(control.service24DrivingEndTime).diff(control.service24RepairEndTime, 'minute');\r\n\r\n let TravelDiff = Traveltimestart + TraveltimeEnd;\r\n let travelHours = Math.floor(TravelDiff / 60);\r\n let travelMinutes = TravelDiff % 60;\r\n\r\n const TotalTravelTime = control.service24DrivingEndTime && TravelDiff > 0 ? `${travelHours} hours ${travelMinutes} minutes` : TravelDiff < 0 ? '' : null;\r\n\r\n const TechTime = totalRepair + TravelDiff;\r\n\r\n let techHH = Math.floor(TechTime / 60);\r\n let techMM = TechTime % 60;\r\n\r\n const TotaltechTime = TotalTravelTime && TechTime > 0 ? `${techHH} hours ${techMM} minutes` : TravelDiff < 0 ? '' : null;\r\n\r\n const TotalMileage = control.service24DrivingEndTime && control.service24DrivingFinishMileage - control.service24DrivingStartMileage;\r\n\r\n return (\r\n
\r\n \r\n {work.map((row, index) => {\r\n return (\r\n \r\n \r\n
\r\n {index !== 0 && (\r\n {\r\n removeWorkAt(index);\r\n }}\r\n />\r\n )}\r\n  \r\n {index === work.length - 1 && (\r\n \r\n )}\r\n
\r\n
\r\n \r\n Work Requested\r\n \r\n \r\n \r\n Reason/Cause\r\n \r\n \r\n \r\n Corrective Action\r\n \r\n \r\n \r\n Time Taken\r\n \r\n \r\n {index != work.length - 1 && (\r\n \r\n
\r\n
\r\n )}\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default WorkRequestedModal;\r\n","import { Button, CircularProgress, Grid, Box, ButtonGroup, Typography, RadioGroup, FormControlLabel, Radio } from '@material-ui/core';\r\nimport { SecondaryButton, PrimaryButton, GreenButton } from '../../../Core/FormInput';\r\nimport React, { useEffect, useContext, useRef, useState } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { BreakdownLocation } from './ChildComp/BreakdownLocation';\r\nimport { CustDetails } from './ChildComp/CustomerDetails';\r\nimport { FieldWrappper } from '../../../Core/FieldWrapper';\r\nimport { HomeAccDealer } from './ChildComp/HomeAccDealer';\r\nimport { RentalFleetDetails } from './ChildComp/RentalFleetDetails';\r\nimport { VehicleDetails } from './ChildComp/VehicleDetails';\r\nimport { DefectSection } from './ChildComp/DefectSection';\r\nimport { RepairsCarriedOut } from './ChildComp/RepairsCarriedOut';\r\nimport { RecoveryDetails } from './ChildComp/RecoveryDetails';\r\nimport { JobChecks } from './ChildComp/JobChecks';\r\nimport { RepairType } from './ChildComp/RepairType';\r\nimport { DriverDetails } from './ChildComp/DriverDetails';\r\nimport { BasicFooter } from './ChildComp/BasicFooter';\r\nimport { getService24ByID, getService24Dropdowns, postService24 } from '../../../Core/Service/service24-service';\r\nimport PartDialog from './service24controlFrom';\r\nimport formatters from '../../../Core/Grid/inputFormatter';\r\nimport resizeImage from '../../../Core/CommonFunctions/base64ImgResizer';\r\nimport { TextBoxShrink } from '../../../Core/FormInput';\r\nimport { getDiagnosticSheetHeaderDetails } from '../../../Core/Service/diagnosticSheets';\r\nimport { BreakdownDefectRepair } from './ChildComp/BreakdownDefectRepair';\r\nimport ServiceTime from './ChildComp/serviceTime';\r\nimport WorkRequestedModal from './ChildComp/workRequested';\r\n// import { FieldWrappper } from './../../../Core/FieldWrapper/index';\r\n\r\nconst Service24Modal = (props) => {\r\n const { hideModal, showToast, userRoles, hideTopNavAndMenu, displayName } = useContext(AppContext);\r\n const isAuditor = userRoles.includes('auditor');\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const HeaderId = props.match.params.jobId;\r\n const [service24PartsVM, setservice24PartsVM] = useState([\r\n {\r\n service24PartID: null,\r\n service24PartNumber: '',\r\n service24PartDescription: '',\r\n service24PartQuantity: 0,\r\n service24PartPrice: null\r\n }\r\n ]);\r\n\r\n const [service24TimesVM, setService24TimesVM] = useState([\r\n {\r\n service24TimeID: null,\r\n service24Name: '',\r\n service24DrivingStartTime: '',\r\n service24DrivingEndTime: '',\r\n service24RepairStartTime: '',\r\n service24RepairEndTime: '',\r\n service24ServiceVan: '',\r\n service24DrivingStartMileage: null,\r\n service24DrivingFinishMileage: null,\r\n service24FinishPostCode: '',\r\n service24StartPostCode: ''\r\n }\r\n ]);\r\n\r\n const [service24WorkDetailsVM, setService24WorkDetailsVM] = useState([\r\n {\r\n service24WorkID: null,\r\n service24WorkRequested: '',\r\n service24WorkReason: '',\r\n service24WorkAction: '',\r\n service24WorkTimeTaken: null\r\n }\r\n ]);\r\n\r\n const [control, setControl] = useState({ service24PaymentTypes: [], service24PaymentTypeID: '' });\r\n\r\n // const [showPartDialog, setShowPartDialog] = useState(false);\r\n\r\n useEffect(async () => {\r\n fromStep && hideTopNavAndMenu();\r\n let res = await getService24Dropdowns();\r\n if (res.success) {\r\n setControl((st) => ({ ...st, service24PaymentTypes: res.data.service24PaymentTypes }));\r\n }\r\n let headerRes = await getDiagnosticSheetHeaderDetails(HeaderId);\r\n let headerdata = headerRes?.data?.headerDetails[0];\r\n setVehDetails((st) => ({\r\n ...st,\r\n showCircularLoader: true,\r\n wipNumber: headerdata.wipNumber,\r\n registration: headerdata.registration,\r\n service24ChassisNo: headerdata.chassisNumber,\r\n service24EngineNo: headerdata.engineNumber,\r\n service24RegDate: formatters.DateFormatter(headerdata.dateDueIn),\r\n service24OdometerReading: headerdata.mileageIn,\r\n service24RegNumber: headerdata.registration,\r\n service24VehicleType: headerdata.vehicleType,\r\n service24JobID: headerdata.service24ID\r\n }));\r\n if (!headerdata?.service24ID) {\r\n setCustomerDetails((st) => ({\r\n ...st,\r\n service24CustomerName: headerdata.customerName || '',\r\n service24CustomerAddress1: headerdata.address1 || '',\r\n service24CustomerAddress2: headerdata.address2 || '',\r\n service24CustomerCity: headerdata.city || '',\r\n service24CustomerPostCode: headerdata.postcode || '',\r\n service24CustomerOrderNo: headerdata.customerOrderNo || ''\r\n }));\r\n }\r\n }, []);\r\n const isTechnician = userRoles.includes('technician');\r\n\r\n const [basicHeaderDetails, setBasicHeaderDetails] = useState({\r\n date: '1989-10-22',\r\n time: '23:59'\r\n });\r\n const [customerDetails, setCustomerDetails] = useState({ errors: {} });\r\n const [homeAccDealer, setHomeAccDealer] = useState({});\r\n const [rentalFleetDetails, setRentalFleetDetails] = useState({});\r\n const [vehDetails, setVehDetails] = useState({ showCircularLoader: false });\r\n\r\n // const [breakdownLocation, setBreakdownLocation] = useState({});\r\n // const [defect, setDefect] = useState({});\r\n // const [repairsCarriedOut, setRepairsCarriedOut] = useState({});\r\n const [breakdownDefectRepairDefails, setBreakdownDefectRepairDefails] = useState({});\r\n\r\n const [recoveryDetails, setRecoveryDetails] = useState({});\r\n const [jobChecks, setJobChecks] = useState({});\r\n const [repairType, setRepairType] = useState({\r\n service24TechnicianName: isTechnician ? displayName : '',\r\n service24TemporaryRepair: false,\r\n service24IncompleteRepair: false,\r\n service24TechnicianSignature: ''\r\n });\r\n const [otherDetails, setOtherDetails] = useState({\r\n cacAdvisedDate: '1989-10-22',\r\n cacAdvisedTime: '23:59'\r\n });\r\n const [driversDetails, setDriversDetails] = useState({});\r\n const handleYesNo = (name, val) => {\r\n setRecoveryDetails((st) => ({ ...st, [name]: val }));\r\n };\r\n //let service24JobID = 'E1438FCC-6BDB-4C5B-8D20-D6A458DF4E78';\r\n // const hidePartDialog = () => setShowPartDialog(false);\r\n\r\n const setField = (e) => {\r\n const { name, type, value } = e.target;\r\n setBasicHeaderDetails((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n const handleInput = (e) => {\r\n let { name, value } = e.target;\r\n setControl((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n useEffect(async () => {\r\n if (vehDetails.service24JobID) {\r\n let res = await getService24ByID(vehDetails.service24JobID);\r\n let data = res?.data?.service24Jobs[0];\r\n if (res.success) {\r\n setVehDetails((st) => ({\r\n ...st,\r\n showCircularLoader: true,\r\n service24JobID: data.service24JobID,\r\n service24VehicleType: data.service24VehicleType,\r\n service24ChassisNo: data.service24ChassisNo,\r\n service24EngineNo: data.service24EngineNo,\r\n service24RegDate: formatters.DateFormatter(data.service24RegDate),\r\n service24Colour: data.service24Colour,\r\n service24GVW: data.service24GVW,\r\n service24Load: data.service24Load,\r\n service24RegNumber: data.service24RegNumber,\r\n service24Destination: data.service24Destination,\r\n service24TrailerOwner: data.service24TrailerOwner,\r\n service24TrailerNo: data.service24TrailerNo,\r\n service24OdometerReading: data.service24OdometerReading\r\n }));\r\n setBasicHeaderDetails((st) => ({ ...st, service24JobCaseNo: data.service24JobCaseNo }));\r\n setCustomerDetails((st) => ({\r\n ...st,\r\n service24CustomerName: data.service24CustomerName || '',\r\n service24CustomerAddress1: data.service24CustomerAddress1 || '',\r\n service24CustomerAddress2: data.service24CustomerAddress2 || '',\r\n service24CustomerCity: data.service24CustomerCity || '',\r\n service24CustomerPostCode: data.service24CustomerPostCode || '',\r\n service24CustomerContactName: data.service24CustomerContactName || '',\r\n service24CustomerPhone: data.service24CustomerPhone || '',\r\n service24CustomerOrderNo: data.service24CustomerOrderNo || ''\r\n }));\r\n setHomeAccDealer((st) => ({\r\n ...st,\r\n service24HomeAccountDealerName: data.service24HomeAccountDealerName,\r\n service24HomeAccountDealerContactName: data.service24HomeAccountDealerContactName,\r\n service24HomeAccountDealerOrderNo: data.service24HomeAccountDealerOrderNo,\r\n service24HomeAccountDealerLimit: data.service24HomeAccountDealerLimit || null\r\n }));\r\n setRentalFleetDetails((st) => ({\r\n ...st,\r\n service24RentalCompany: data.service24RentalCompany || '',\r\n service24RentalPhone: data.service24RentalPhone || '',\r\n service24RentalContactName: data.service24RentalContactName || '',\r\n service24RentalOrderNo: data.service24RentalOrderNo || ''\r\n }));\r\n // setBreakdownLocation((st) => ({\r\n // ...st,\r\n // service24BreakdownLocation: data.service24BreakdownLocation || ''\r\n // }));\r\n // setDefect((st) => ({\r\n // ...st,\r\n // service24DefectDescription: data.service24DefectDescription || ''\r\n // }));\r\n // setRepairsCarriedOut((st) => ({\r\n // ...st,\r\n // service24RepairDetails: data.service24RepairDetails || ''\r\n // }));\r\n setBreakdownDefectRepairDefails((st) => ({\r\n ...st,\r\n service24BreakdownLocation: data.service24BreakdownLocation || '',\r\n service24DefectDescription: data.service24DefectDescription || '',\r\n service24RepairDetails: data.service24RepairDetails || ''\r\n }));\r\n setRecoveryDetails((st) => ({\r\n ...st,\r\n service24Recovered: data.service24Recovered || false,\r\n service24RecoveryStartLocation: data.service24RecoveryStartLocation,\r\n service24RecoveryEndLocation: data.service24RecoveryEndLocation,\r\n service24RecoveryDistance: data.service24RecoveryDistance,\r\n service24RecoveryTowingCompany: data.service24RecoveryTowingCompany,\r\n service24RecoveryTowingContactName: data.service24RecoveryTowingContactName,\r\n service24RecoveryTowingPhone: data.service24RecoveryTowingPhone\r\n }));\r\n setJobChecks((st) => ({\r\n ...st,\r\n service24DateRepairCompleted: formatters.DateFormatter(data.service24DateRepairCompleted),\r\n service24MaintenanceBookletChecked: data.service24MaintenanceBookletChecked || false,\r\n service24EntitledToMobiloVanServices: data.service24EntitledToMobiloVanServices || false,\r\n service24ReplacementVehicle: data.service24ReplacementVehicle || false,\r\n service24BreakdownOrStartingAssistance: data.service24BreakdownOrStartingAssistance || false,\r\n service24VehicleReturnWithin30Miles: data.service24VehicleReturnWithin30Miles || false,\r\n service24AirTravel: data.service24AirTravel || null,\r\n service24RailTravel: data.service24RailTravel || null,\r\n service24Taxi: data.service24Taxi || null,\r\n service24PublicTransport: data.service24PublicTransport || null,\r\n service24Hotel: data.service24Hotel || null,\r\n service24Notes: data.service24Notes\r\n }));\r\n // const technicianSign = await resizeImage(data.service24TechnicianSignature);\r\n setRepairType((st) => ({\r\n ...st,\r\n service24TemporaryRepair: data.service24TemporaryRepair || false,\r\n service24IncompleteRepair: data.service24IncompleteRepair || false,\r\n service24TechnicianSignature: data.service24TechnicianSignature,\r\n techSignature: data.service24TechnicianSignature,\r\n service24TechnicianName: data.service24TechnicianName || '',\r\n technicianName: data.service24TechnicianName || '',\r\n service24OperatorSignature: data.service24OperatorSignature,\r\n opSignature: data.service24OperatorSignature,\r\n service24OperatorSignedByName: data.service24OperatorSignedByName || '',\r\n operatorSignedByName: data.service24OperatorSignedByName || ''\r\n }));\r\n setOtherDetails((st) => ({\r\n ...st,\r\n service24VehicleMobile: formatters.DateFormatter(data.service24VehicleMobile),\r\n service24CACAdvised: formatters.DateFormatter(data.service24CACAdvised)\r\n }));\r\n setDriversDetails((st) => ({\r\n ...st,\r\n service24DriverName: data.service24DriverName,\r\n driverName: data.service24DriverName,\r\n service24DriverPhone: data.service24DriverPhone,\r\n service24DriverSignature: data.service24DriverSignature,\r\n driverSignature: data.service24DriverSignature,\r\n service24DriverDateSigned: data.service24DriverDateSigned || null\r\n }));\r\n setservice24PartsVM(\r\n !res?.data?.service24Parts?.length\r\n ? [\r\n {\r\n service24PartID: null,\r\n service24PartNumber: '',\r\n service24PartDescription: '',\r\n service24PartQuantity: 0,\r\n service24PartPrice: null\r\n }\r\n ]\r\n : res?.data?.service24Parts\r\n );\r\n setService24WorkDetailsVM(\r\n !res?.data?.service24WorkDetails?.length\r\n ? [\r\n {\r\n service24WorkID: null,\r\n service24WorkRequested: '',\r\n service24WorkReason: '',\r\n service24WorkAction: null,\r\n service24WorkTimeTaken: null\r\n }\r\n ]\r\n : res?.data?.service24WorkDetails\r\n );\r\n setControl((st) => ({\r\n ...st,\r\n service24PaymentTypeID: data.service24PaymentTypeID\r\n }));\r\n setService24TimesVM(\r\n res?.data?.service24Times.length == 0\r\n ? [\r\n {\r\n service24TimeID: null,\r\n service24Name: '',\r\n service24DrivingStartTime: '',\r\n service24DrivingEndTime: '',\r\n service24RepairStartTime: '',\r\n service24RepairEndTime: '',\r\n service24ServiceVan: '',\r\n service24DrivingStartMileage: null,\r\n service24DrivingFinishMileage: null,\r\n service24FinishPostCode: '',\r\n service24StartPostCode: ''\r\n }\r\n ]\r\n : res?.data?.service24Times\r\n );\r\n }\r\n }\r\n }, [vehDetails.service24JobID]);\r\n\r\n const handleValidation = () => {\r\n let errors = {};\r\n let formIsValid = true;\r\n\r\n if (!customerDetails.service24CustomerName) {\r\n formIsValid = false;\r\n errors['service24CustomerName'] = 'Customer Name cannot be empty';\r\n }\r\n if (!repairType.service24TechnicianSignature) {\r\n formIsValid = false;\r\n errors['service24TechnicianSignatureErrorMsg'] = 'Technician Signature Is Required';\r\n }\r\n\r\n let list = [...service24TimesVM].map((m) => {\r\n let drivingStartTimeErrorMessage = '';\r\n let drivingEndTimeErrorMessage = '';\r\n let repairStartTimeErrorMessage = '';\r\n let repairEndTimeErrorMessage = '';\r\n let repairEndMilageMessage = '';\r\n let drivingStartMileageErrorMessage = '';\r\n\r\n // if (!m.service24DrivingStartTime) {\r\n // drivingStartTimeErrorMessage = 'Driving Start Time is Required';\r\n // formIsValid = false;\r\n // }\r\n\r\n // if (!m.service24DrivingEndTime) {\r\n // drivingEndTimeErrorMessage = 'Driving End Time is Required';\r\n // formIsValid = false;\r\n // }\r\n\r\n // if (!m.service24RepairStartTime) {\r\n // repairStartTimeErrorMessage = 'Work Start Time is Required';\r\n // formIsValid = false;\r\n // }\r\n\r\n // if (!m.service24RepairEndTime) {\r\n // repairEndTimeErrorMessage = 'Work End Time is Required';\r\n // formIsValid = false;\r\n // }\r\n if (m.service24DrivingFinishMileage) {\r\n if (!m.service24DrivingStartMileage) {\r\n drivingStartMileageErrorMessage = 'Start Mileage is Required';\r\n formIsValid = false;\r\n } else {\r\n if (+m.service24DrivingStartMileage > +m.service24DrivingFinishMileage) {\r\n repairEndMilageMessage = 'Finish Mileage should be greater than start Mileage';\r\n formIsValid = false;\r\n }\r\n }\r\n }\r\n\r\n return {\r\n ...m,\r\n drivingStartTimeErrorMessage,\r\n drivingEndTimeErrorMessage,\r\n repairStartTimeErrorMessage,\r\n repairEndTimeErrorMessage,\r\n repairEndMilageMessage,\r\n drivingStartMileageErrorMessage\r\n };\r\n });\r\n\r\n setService24TimesVM(list);\r\n setCustomerDetails((st) => ({ ...st, errors: errors }));\r\n setRepairType((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n const submithandler = async () => {\r\n if (handleValidation()) {\r\n let data = {\r\n service24JobID: vehDetails.service24JobID,\r\n service24JobCaseNo: basicHeaderDetails.service24JobCaseNo,\r\n service24JobHeaderRecordID: HeaderId,\r\n service24CustomerName: customerDetails.service24CustomerName || '',\r\n service24CustomerAddress1: customerDetails.service24CustomerAddress1 || '',\r\n service24CustomerAddress2: customerDetails.service24CustomerAddress2 || '',\r\n service24CustomerCity: customerDetails.service24CustomerCity || '',\r\n service24CustomerPostCode: customerDetails.service24CustomerPostCode || '',\r\n service24CustomerContactName: customerDetails.service24CustomerContactName || '',\r\n service24CustomerPhone: customerDetails.service24CustomerPhone || '',\r\n service24CustomerOrderNo: customerDetails.service24CustomerOrderNo || '',\r\n service24RegNumber: vehDetails.service24RegNumber,\r\n service24VehicleType: vehDetails.service24VehicleType,\r\n service24ChassisNo: vehDetails.service24ChassisNo,\r\n service24EngineNo: vehDetails.service24EngineNo,\r\n service24RegDate: vehDetails.service24RegDate,\r\n service24Colour: vehDetails.service24Colour,\r\n service24GVW: vehDetails.service24GVW,\r\n service24Load: vehDetails.service24Load,\r\n service24Destination: vehDetails.service24Destination,\r\n service24TrailerOwner: vehDetails.service24TrailerOwner,\r\n service24TrailerNo: vehDetails.service24TrailerNo,\r\n service24OdometerReading: vehDetails.service24OdometerReading,\r\n service24OdometerUnit: '', //service24OdometerUnit,not defined yet\r\n service24HomeAccountDealerName: homeAccDealer.service24HomeAccountDealerName,\r\n service24HomeAccountDealerContactName: homeAccDealer.service24HomeAccountDealerContactName,\r\n service24HomeAccountDealerOrderNo: homeAccDealer.service24HomeAccountDealerOrderNo,\r\n service24HomeAccountDealerLimit: homeAccDealer.service24HomeAccountDealerLimit || null,\r\n service24RentalCompany: rentalFleetDetails.service24RentalCompany || '',\r\n service24RentalPhone: rentalFleetDetails.service24RentalPhone || '',\r\n service24RentalContactName: rentalFleetDetails.service24RentalContactName || '',\r\n service24RentalOrderNo: rentalFleetDetails.service24RentalOrderNo || '',\r\n // service24BreakdownLocation: breakdownLocation.service24BreakdownLocation || '',\r\n // service24DefectDescription: defect.service24DefectDescription || '',\r\n // service24RepairDetails: repairsCarriedOut.service24RepairDetails || '',\r\n service24BreakdownLocation: breakdownDefectRepairDefails.service24BreakdownLocation || '',\r\n service24DefectDescription: breakdownDefectRepairDefails.service24DefectDescription || '',\r\n service24RepairDetails: breakdownDefectRepairDefails.service24RepairDetails || '',\r\n service24Recovered: recoveryDetails.service24Recovered || false,\r\n service24RecoveryStartLocation: recoveryDetails.service24RecoveryStartLocation,\r\n service24RecoveryEndLocation: recoveryDetails.service24RecoveryEndLocation,\r\n service24RecoveryDistance: recoveryDetails.service24RecoveryDistance,\r\n service24RecoveryTowingCompany: recoveryDetails.service24RecoveryTowingCompany,\r\n service24RecoveryTowingContactName: recoveryDetails.service24RecoveryTowingContactName,\r\n service24RecoveryTowingPhone: recoveryDetails.service24RecoveryTowingPhone,\r\n service24DateRepairCompleted: jobChecks.service24DateRepairCompleted || null,\r\n service24MaintenanceBookletChecked: jobChecks.service24MaintenanceBookletChecked || false,\r\n service24EntitledToMobiloVanServices: jobChecks.service24EntitledToMobiloVanServices || false,\r\n service24ReplacementVehicle: jobChecks.service24ReplacementVehicle || false,\r\n service24BreakdownOrStartingAssistance: jobChecks.service24BreakdownOrStartingAssistance || false,\r\n service24VehicleReturnWithin30Miles: jobChecks.service24VehicleReturnWithin30Miles || false,\r\n service24AirTravel: jobChecks.service24AirTravel || null,\r\n service24RailTravel: jobChecks.service24RailTravel || null,\r\n service24Taxi: jobChecks.service24Taxi || null,\r\n service24PublicTransport: jobChecks.service24PublicTransport || null,\r\n service24Hotel: jobChecks.service24Hotel || null,\r\n service24Notes: jobChecks.service24Notes,\r\n service24TemporaryRepair: repairType.service24TemporaryRepair || false,\r\n service24IncompleteRepair: repairType.service24IncompleteRepair || false,\r\n service24TechnicianSignature: repairType.service24TechnicianSignature,\r\n service24TechnicianName: repairType.service24TechnicianName || '',\r\n service24OperatorSignature: repairType.service24OperatorSignature,\r\n service24OperatorSignedByName: repairType.service24OperatorSignedByName || '',\r\n service24VehicleMobile: otherDetails.service24VehicleMobile || null,\r\n service24CACAdvised: otherDetails.service24CACAdvised || null,\r\n service24Status: '', // this is under part modal service24Status,\r\n service24PaymentTypeID: control.service24PaymentTypeID,\r\n service24DriverName: driversDetails.service24DriverName,\r\n service24DriverPhone: driversDetails.service24DriverPhone,\r\n service24DriverSignature: driversDetails.service24DriverSignature,\r\n service24DriverDateSigned: driversDetails.service24DriverDateSigned || null,\r\n service24PartsVM: service24PartsVM,\r\n service24WorkDetailsVM: service24WorkDetailsVM,\r\n service24TimeVM: service24TimesVM.map((m) => ({\r\n service24TimeID: m.service24TimeID,\r\n service24Name: m.service24Name,\r\n service24DrivingStartTime: m.service24DrivingStartTime,\r\n service24DrivingEndTime: m.service24DrivingEndTime,\r\n service24RepairStartTime: m.service24RepairStartTime,\r\n service24RepairEndTime: m.service24RepairEndTime,\r\n service24ServiceVan: m.service24ServiceVan,\r\n service24DrivingStartMileage: m.service24DrivingStartMileage,\r\n service24DrivingFinishMileage: m.service24DrivingFinishMileage,\r\n service24FinishPostCode: m.service24FinishPostCode,\r\n service24StartPostCode: m.service24StartPostCode\r\n }))\r\n };\r\n\r\n let res = await postService24(data);\r\n if (!res.success) {\r\n console.error(res);\r\n showToast(res.title ? res.title : 'Error Occurred');\r\n } else {\r\n hideModal();\r\n showToast(res.message);\r\n }\r\n if (res.success && fromStep) {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }\r\n }\r\n };\r\n\r\n const handelClose = () => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n };\r\n\r\n const RenderRecoveryHeader = () => {\r\n return (\r\n \r\n Recovery Details\r\n \r\n \r\n \r\n\r\n handleYesNo('service24Recovered', false)}\r\n >\r\n No\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n return (\r\n \r\n {!vehDetails.showCircularLoader ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n {/* {showPartDialog && (\r\n \r\n )} */}\r\n\r\n \r\n \r\n \r\n Reg. No:  {vehDetails?.registration}   WIP No:  {vehDetails?.wipNumber}\r\n \r\n \r\n \r\n \r\n {/* \r\n setShowPartDialog(true)} style={{ marginTop: 8 }}>\r\n Parts\r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {control.service24PaymentTypes.map((n) => {\r\n return } label={n.name} />;\r\n })}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n save\r\n \r\n \r\n \r\n \r\n Cancel\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default Service24Modal;\r\n","import { Grid, TableContainer } from '@material-ui/core';\r\n\r\nimport React, { useContext, useState } from 'react';\r\nimport { useEffect } from 'react';\r\n\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\n\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\n// import '../commonStyle.scss';\r\nimport AppContext from '../../../../../App/AppContext';\r\nimport { addReportingBudget, getReportingBudget } from '../../../../../Core/Service/ReportScreens-service';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: 1250,\r\n '& .MuiTableCell-root': {\r\n padding: '10px'\r\n }\r\n },\r\n tableRowStyle: {\r\n backgroundColor: '#E0E0E0'\r\n }\r\n});\r\n\r\nconst MonthShortNameList = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\r\n\r\nconst ReportingBudgetTable = (props) => {\r\n const [state, setState] = useState({ rows: [], calculatedRows: [], isActive: false, totals: {}, changeRecordIds: [], isChangeTrig: false });\r\n const { showToast } = useContext(AppContext);\r\n const classes = useStyles();\r\n\r\n const pullSalesTargetGridData = async () => {\r\n let res = await getReportingBudget(props?.type?.id, props.yearCode?.id);\r\n let temp = res.data;\r\n setState((st) => {\r\n return { ...st, rows: temp, isChangeTrig: false };\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n props.handleActionTriggerCheck(state.isChangeTrig);\r\n }, [state.isChangeTrig]);\r\n\r\n useEffect(() => {\r\n pullSalesTargetGridData();\r\n }, [props.yearCode?.id]);\r\n\r\n useEffect(() => {\r\n let tempArr = [...state.rows];\r\n let rowCount = tempArr.length;\r\n let colCalculation = {\r\n reportingBudgetJanTotal: 0,\r\n reportingBudgetFebTotal: 0,\r\n reportingBudgetMarTotal: 0,\r\n reportingBudgetAprTotal: 0,\r\n reportingBudgetMayTotal: 0,\r\n reportingBudgetJunTotal: 0,\r\n reportingBudgetJulTotal: 0,\r\n reportingBudgetAugTotal: 0,\r\n reportingBudgetSepTotal: 0,\r\n reportingBudgetOctTotal: 0,\r\n reportingBudgetNovTotal: 0,\r\n reportingBudgetDecTotal: 0,\r\n reportingBudgetTotalTotal: 0\r\n };\r\n tempArr.forEach((w) => {\r\n let totals = 0;\r\n MonthShortNameList.map((q) => {\r\n totals += w[`reportingBudget${q}`];\r\n });\r\n if (props.type.isPercentage == 'Y') {\r\n w.totals = totals / 12;\r\n } else {\r\n w.totals = totals;\r\n }\r\n colCalculation.reportingBudgetJanTotal += w.reportingBudgetJan;\r\n colCalculation.reportingBudgetFebTotal += w.reportingBudgetFeb;\r\n colCalculation.reportingBudgetMarTotal += w.reportingBudgetMar;\r\n colCalculation.reportingBudgetAprTotal += w.reportingBudgetApr;\r\n colCalculation.reportingBudgetMayTotal += w.reportingBudgetMay;\r\n colCalculation.reportingBudgetJunTotal += w.reportingBudgetJun;\r\n colCalculation.reportingBudgetJulTotal += w.reportingBudgetJul;\r\n colCalculation.reportingBudgetAugTotal += w.reportingBudgetAug;\r\n colCalculation.reportingBudgetSepTotal += w.reportingBudgetSep;\r\n colCalculation.reportingBudgetOctTotal += w.reportingBudgetOct;\r\n colCalculation.reportingBudgetNovTotal += w.reportingBudgetNov;\r\n colCalculation.reportingBudgetDecTotal += w.reportingBudgetDec;\r\n colCalculation.reportingBudgetTotalTotal += w.totals;\r\n });\r\n if (props.type.isPercentage == 'Y') {\r\n colCalculation.reportingBudgetJanTotal = colCalculation.reportingBudgetJanTotal / rowCount;\r\n colCalculation.reportingBudgetFebTotal = colCalculation.reportingBudgetFebTotal / rowCount;\r\n colCalculation.reportingBudgetMarTotal = colCalculation.reportingBudgetMarTotal / rowCount;\r\n colCalculation.reportingBudgetAprTotal = colCalculation.reportingBudgetAprTotal / rowCount;\r\n colCalculation.reportingBudgetMayTotal = colCalculation.reportingBudgetMayTotal / rowCount;\r\n colCalculation.reportingBudgetJunTotal = colCalculation.reportingBudgetJunTotal / rowCount;\r\n colCalculation.reportingBudgetJulTotal = colCalculation.reportingBudgetJulTotal / rowCount;\r\n colCalculation.reportingBudgetAugTotal = colCalculation.reportingBudgetAugTotal / rowCount;\r\n colCalculation.reportingBudgetSepTotal = colCalculation.reportingBudgetSepTotal / rowCount;\r\n colCalculation.reportingBudgetOctTotal = colCalculation.reportingBudgetOctTotal / rowCount;\r\n colCalculation.reportingBudgetNovTotal = colCalculation.reportingBudgetNovTotal / rowCount;\r\n colCalculation.reportingBudgetDecTotal = colCalculation.reportingBudgetDecTotal / rowCount;\r\n colCalculation.reportingBudgetTotalTotal = colCalculation.reportingBudgetTotalTotal / rowCount;\r\n }\r\n tempArr.push(colCalculation);\r\n setState((st) => {\r\n return { ...st, calculatedRows: tempArr };\r\n });\r\n }, [state.rows]);\r\n\r\n const gridInputChangeHandler = (branchID) => (e) => {\r\n let tempObj = [...state.rows];\r\n let changeRecordIds = [...state.changeRecordIds];\r\n let objIndex = tempObj.findIndex((w) => branchID == w.branchID);\r\n if (objIndex > -1) {\r\n changeRecordIds.push(branchID);\r\n tempObj[objIndex][e.target.name] = +e.target.value;\r\n }\r\n setState((st) => {\r\n return {\r\n ...st,\r\n rows: tempObj,\r\n isChangeTrig: true,\r\n changeRecordIds: [...new Set(changeRecordIds)]\r\n };\r\n });\r\n };\r\n\r\n const InputWrapper = (name, value, branchID) => {\r\n return ;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let filteredPostData = [...state.changeRecordIds].map((q) => {\r\n let obj = state.rows.find((p) => q == p.branchID);\r\n return {\r\n reportingBudgetID: obj.reportingBudgetID,\r\n reportingBudgetTypeID: props?.type?.id,\r\n reportingBudgetBranchID: obj.branchID,\r\n reportingBudgetYear: props.yearCode?.id,\r\n reportingBudgetJan: obj.reportingBudgetJan || 0,\r\n reportingBudgetFeb: obj.reportingBudgetFeb || 0,\r\n reportingBudgetMar: obj.reportingBudgetMar || 0,\r\n reportingBudgetApr: obj.reportingBudgetApr || 0,\r\n reportingBudgetMay: obj.reportingBudgetMay || 0,\r\n reportingBudgetJun: obj.reportingBudgetJun || 0,\r\n reportingBudgetJul: obj.reportingBudgetJul || 0,\r\n reportingBudgetAug: obj.reportingBudgetAug || 0,\r\n reportingBudgetSep: obj.reportingBudgetSep || 0,\r\n reportingBudgetOct: obj.reportingBudgetOct || 0,\r\n reportingBudgetNov: obj.reportingBudgetNov || 0,\r\n reportingBudgetDec: obj.reportingBudgetDec || 0\r\n };\r\n });\r\n\r\n let res = await addReportingBudget(filteredPostData);\r\n if (res.success) {\r\n showToast(res.message);\r\n await pullSalesTargetGridData();\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n props.childFunc.current = handleSubmit;\r\n }, [state.rows]);\r\n\r\n return (\r\n \r\n \r\n {/* \r\n \r\n \r\n Save\r\n \r\n \r\n */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {MonthShortNameList.map((p) => {\r\n return {p};\r\n })}\r\n \r\n Total\r\n \r\n \r\n \r\n \r\n {state.calculatedRows.map((q) => {\r\n if (!q.branchID) {\r\n return (\r\n \r\n Group Total\r\n {MonthShortNameList.map((p) => {\r\n return (\r\n {formatters.ToFixedSeparator(q[`reportingBudget${p}Total`])}\r\n );\r\n })}\r\n \r\n {formatters.ToFixedSeparator(q.reportingBudgetTotalTotal)}\r\n \r\n \r\n );\r\n } else {\r\n return (\r\n \r\n \r\n {q.branchShortName}\r\n \r\n {InputWrapper('reportingBudgetJan', q.reportingBudgetJan, q.branchID)}\r\n {InputWrapper('reportingBudgetFeb', q.reportingBudgetFeb, q.branchID)}\r\n {InputWrapper('reportingBudgetMar', q.reportingBudgetMar, q.branchID)}\r\n {InputWrapper('reportingBudgetApr', q.reportingBudgetApr, q.branchID)}\r\n {InputWrapper('reportingBudgetMay', q.reportingBudgetMay, q.branchID)}\r\n {InputWrapper('reportingBudgetJun', q.reportingBudgetJun, q.branchID)}\r\n {InputWrapper('reportingBudgetJul', q.reportingBudgetJul, q.branchID)}\r\n {InputWrapper('reportingBudgetAug', q.reportingBudgetAug, q.branchID)}\r\n {InputWrapper('reportingBudgetSep', q.reportingBudgetSep, q.branchID)}\r\n {InputWrapper('reportingBudgetOct', q.reportingBudgetOct, q.branchID)}\r\n {InputWrapper('reportingBudgetNov', q.reportingBudgetNov, q.branchID)}\r\n {InputWrapper('reportingBudgetDec', q.reportingBudgetDec, q.branchID)}\r\n {formatters.ToFixedSeparator(q.totals) || 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\nexport default ReportingBudgetTable;\r\n","import { FormLabel, Grid, TextField } from '@material-ui/core';\r\n\r\nimport { Autocomplete } from '@material-ui/lab';\r\nimport React, { useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport TabComponent from '../../../../../Core/Controls/Tabs';\r\nimport ReportingBudgetTable from './budgetTable';\r\nimport { getReportingBudgetScreenDropDown } from '../../../../../Core/Service/ReportScreens-service';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { SecondaryButton } from '../../../../../Core/FormInput';\r\nimport { useRef } from 'react';\r\n\r\nconst crumbs = (measuredesc) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Bugdet', active: true }\r\n];\r\n\r\nconst ReportingBudget = (props) => {\r\n const childFunc = useRef(null);\r\n const [state, setState] = useState({\r\n filterList: [],\r\n branchList: [],\r\n branchCode: props.branchCode || '',\r\n branchName: props.branchName || '',\r\n yearCode: { description: `${new Date().getFullYear()}`, id: `${new Date().getFullYear()}` },\r\n currentMonthDays: [],\r\n customerList: [],\r\n customerCode: {},\r\n filterData: [],\r\n budgetYear: [],\r\n budgetType: [],\r\n isValueChange: false\r\n });\r\n\r\n useEffect(async () => {\r\n let res = await getReportingBudgetScreenDropDown();\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.budgetYear = res.data.year.map((o) => {\r\n return { description: `${o.name}`, id: `${o.id}` };\r\n });\r\n newSt.budgetType = res.data.type || [];\r\n\r\n return newSt;\r\n });\r\n }, []);\r\n\r\n const handleAutoChange = (fieldName) => (e, val) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt[fieldName] = val;\r\n return newSt;\r\n });\r\n };\r\n\r\n const handleActionTriggerCheck = (value) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.isValueChange = value;\r\n return newSt;\r\n });\r\n };\r\n\r\n const tabs = state.budgetType.map((q) => {\r\n return {\r\n label: `${q.name}`,\r\n body: \r\n };\r\n });\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Select Year \r\n \r\n \r\n (typeof option === 'string' ? option : option.description)}\r\n renderInput={(params) => }\r\n />\r\n \r\n \r\n \r\n \r\n childFunc.current()} disabled={!state.isValueChange}>\r\n Save\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default ReportingBudget;\r\n","import React from 'react';\r\nimport { Grid, Typography } from '@material-ui/core';\r\nimport { CircularProgressbar, buildStyles } from 'react-circular-progressbar';\r\nimport './budget.scss';\r\n// import { DepartmentCard } from './budgetCardsUi_v2';\r\nimport ArrowDownwardIcon from '@material-ui/icons/ArrowDownward';\r\nimport CallMadeIcon from '@material-ui/icons/CallMade';\r\nimport ArrowUpwardIcon from '@material-ui/icons/ArrowUpward';\r\nimport { Label } from 'recharts';\r\nimport { BudgetSendBtn, SmallLinkedButton } from './budgetButton';\r\nimport { BasicTable } from './table';\r\n\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { useWindowSize } from '../../../../../Core/Controls/ScreenResolution';\r\n\r\nconst setPercentage = (profit, budget) => {\r\n let value = (profit / budget) * 100;\r\n return Math.round(value);\r\n};\r\n\r\nconst portalNicolJson = JSON.parse(localStorage.getItem('NicoleFilterData'));\r\n\r\nexport const DepartmentCard = (props) => {\r\n // let setWidthByScreenSize = () => {\r\n // let widthSize = 160;\r\n // if (WindowWidths > 1370) {\r\n // widthSize = 160;\r\n // } else if (WindowWidths >= 1280 && WindowWidths <= 1370) {\r\n // widthSize = 130;\r\n // } else if (WindowWidths >= 1187 && WindowWidths <= 1280) {\r\n // widthSize = 100;\r\n // } else if (WindowWidths <= 1187) {\r\n // widthSize = 80;\r\n // }\r\n\r\n // return widthSize;\r\n // };\r\n\r\n const { value, profit, budget } = props;\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n return (\r\n \r\n \r\n
\r\n = 50 && setPercentage(profit, budget) < 75\r\n ? '#ff9f00'\r\n : setPercentage(profit, budget) >= 75\r\n ? '#569101'\r\n : '#D92641',\r\n pathColor:\r\n setPercentage(profit, budget) < 50\r\n ? '#D92641'\r\n : setPercentage(profit, budget) >= 50 && setPercentage(profit, budget) < 75\r\n ? '#ff9f00'\r\n : setPercentage(profit, budget) >= 75\r\n ? '#569101'\r\n : '#D92641',\r\n textSize: '27px'\r\n })}\r\n />\r\n
\r\n
\r\n {/* */}\r\n\r\n \r\n
\r\n {props.dept}\r\n
\r\n
\r\n
Total Profit
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(profit)}
\r\n
\r\n\r\n
\r\n
Total Budget
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(budget)}
\r\n
\r\n
\r\n {/* */}\r\n
\r\n );\r\n};\r\n\r\nexport const DepartmentBudgetCard = (props) => {\r\n const { icon, value, label, profitVal, showLink } = props;\r\n return (\r\n
\r\n {showLink ? (\r\n
\r\n \r\n
\r\n ) : null}\r\n\r\n
\r\n {value || 0}\r\n
\r\n
{label || 'N/A'}
\r\n
\r\n BUDGET\r\n
\r\n \r\n {profitVal || 0}\r\n \r\n {icon === 'down' ? : }\r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nexport const ProfitLossCards = (props) => {\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n const { value, profit, budget, branchName, retailsUnits, motabilityUnits, tradeUnits, newUnits, usedUnits, branchID } = props;\r\n return (\r\n \r\n \r\n
\r\n
{branchName}
\r\n props.onRedirectFun(branchID)} />\r\n
\r\n
\r\n \r\n
\r\n = 50 && setPercentage(profit, budget) < 75\r\n ? '#ff9f00'\r\n : setPercentage(profit, budget) >= 75\r\n ? '#569101'\r\n : '#D92641',\r\n pathColor:\r\n setPercentage(profit, budget) < 50\r\n ? '#D92641'\r\n : setPercentage(profit, budget) >= 50 && setPercentage(profit, budget) < 75\r\n ? '#ff9f00'\r\n : setPercentage(profit, budget) >= 75\r\n ? '#569101'\r\n : '#D92641',\r\n textSize: '27px',\r\n dominantBaseline: 'central'\r\n })}\r\n />\r\n
\r\n
\r\n \r\n
\r\n
Total Profit
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(profit)}
\r\n
\r\n\r\n
\r\n
Total Budget
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(budget)}
\r\n
\r\n
\r\n {props.selectedFilterBtnId == 'New' || props.selectedFilterBtnId == 'Used' ? (\r\n \r\n
\r\n
Retail Units
\r\n
{formatters.ThousandSeparatorWithoutZero(retailsUnits)}
\r\n
\r\n\r\n
\r\n
{props.selectedFilterBtnId == 'New' ? 'Motability Units' : 'Trade Units'}
\r\n
\r\n {props.selectedFilterBtnId == 'New'\r\n ? formatters.ThousandSeparatorWithoutZero(motabilityUnits)\r\n : formatters.ThousandSeparatorWithoutZero(tradeUnits)}\r\n
\r\n
\r\n
\r\n ) : (\r\n \r\n
\r\n
New Units
\r\n
{formatters.ThousandSeparatorWithoutZero(newUnits)}
\r\n
\r\n\r\n
\r\n
Used Units
\r\n
{formatters.ThousandSeparatorWithoutZero(usedUnits)}
\r\n
\r\n
\r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport const ASalePandLCard = (props) => {\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n const { value, profit, budget } = props;\r\n return (\r\n \r\n \r\n
\r\n
{props.label}
\r\n \r\n
\r\n
\r\n \r\n
\r\n = 50 && value < 75 ? '#ff9f00' : value >= 75 ? '#569101' : '#D92641',\r\n pathColor: value < 50 ? '#D92641' : value >= 50 && value < 75 ? '#ff9f00' : value >= 75 ? '#569101' : '#D92641',\r\n textSize: '27px'\r\n })}\r\n />\r\n
\r\n
\r\n \r\n
\r\n
Total Profit
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(profit)}
\r\n
\r\n\r\n
\r\n
Total Budget
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(budget)}
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const DetailsCards = (props) => {\r\n const { up, value, label, profitVal } = props;\r\n return (\r\n
\r\n \r\n \r\n
{label || 'N/A'}
\r\n
\r\n \r\n
{value || 0}
\r\n
\r\n \r\n
BUDGET
\r\n
\r\n\r\n \r\n \r\n {profitVal || 0}\r\n \r\n {!up ? : }\r\n \r\n
\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const DetailsCardsWithoutBudget = (props) => {\r\n const { value, label, up, showBudget } = props;\r\n return (\r\n
\r\n \r\n \r\n
{label || 'N/A'}
\r\n
\r\n \r\n
\r\n \r\n {value || 0}\r\n \r\n {showBudget ? !up ? : : null}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const ProfitLossDetailsCards = (props) => {\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n const { data } = props;\r\n return (\r\n \r\n \r\n
\r\n
{props.label}
\r\n
\r\n
\r\n \r\n
\r\n
Total Profit
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(data?.profit)}
\r\n
\r\n\r\n
\r\n
Budget Variance
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(data?.variance)}
\r\n
\r\n
\r\n \r\n
\r\n
Total Budget
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(data?.budget)}
\r\n
\r\n\r\n
\r\n {data.ppu ? (\r\n <>\r\n
Total PPU
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(data?.ppu)}
\r\n \r\n ) : (\r\n <>\r\n
 
\r\n
 
\r\n \r\n )}\r\n
\r\n
\r\n \r\n
\r\n = 50 && setPercentage(data?.profit, data?.budget) < 75\r\n ? '#ff9f00'\r\n : setPercentage(data?.profit, data?.budget) >= 75\r\n ? '#569101'\r\n : '#D92641',\r\n pathColor:\r\n setPercentage(data?.profit, data?.budget) < 50\r\n ? '#D92641'\r\n : setPercentage(data?.profit, data?.budget) >= 50 && setPercentage(data?.profit, data?.budget) < 75\r\n ? '#ff9f00'\r\n : setPercentage(data?.profit, data?.budget) >= 75\r\n ? '#569101'\r\n : '#D92641',\r\n textSize: '27px'\r\n })}\r\n />\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport const UsedStocksCard = (props) => {\r\n const { CurrentStockValue, AverageStockValue, PreviousYearAverage } = props;\r\n const handleRedirect = (link, branchID) => {\r\n let searchQuery = `?isTrue=${true}`;\r\n let array = [];\r\n if (branchID) {\r\n array.push(branchID);\r\n }\r\n localStorage.setItem('NicoleFilterData', JSON.stringify({ ...portalNicolJson, groupIds: array }));\r\n props.history.push({\r\n pathname: link,\r\n search: searchQuery\r\n });\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{props.branch}
\r\n
\r\n \r\n
\r\n
Current Stock Value
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(CurrentStockValue)}
\r\n
\r\n
\r\n \r\n
\r\n
Average Stock Value
       \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(AverageStockValue)}\r\n
\r\n
\r\n\r\n
\r\n
Previous Year Average
   \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(PreviousYearAverage)}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n handleRedirect(props.stockLink, props.branchID)}\r\n >\r\n STOCK LIST   \r\n \r\n \r\n\r\n \r\n handleRedirect(props.priorityLink, props.branchID)}>\r\n OVERAGE   \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n {/* \r\n
{props.branch}
\r\n
\r\n \r\n
\r\n
Current Stock Value
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(CurrentStockValue)}
\r\n
\r\n
\r\n\r\n \r\n
\r\n handleRedirect(props.stockLink, props.branchID)}>\r\n STOCK LIST   \r\n \r\n\r\n handleRedirect(props.priorityLink, props.branchID)}>\r\n OVERAGE   \r\n \r\n
\r\n
\r\n \r\n
\r\n
Average Stock Value
       \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(AverageStockValue)}\r\n
\r\n
\r\n\r\n
\r\n
Previous Year Average
   \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(PreviousYearAverage)}\r\n
\r\n
\r\n
*/}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const UsedStocksCardTWO = (props) => {\r\n const { list } = props;\r\n return (\r\n <>\r\n {list.length > 0 ? (\r\n \r\n {list.map((m, index) => {\r\n return (\r\n \r\n \r\n \r\n {m.valuationDate1}\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue1)}\r\n \r\n\r\n {list.length - 1 == index ? (\r\n \r\n  \r\n \r\n ) : (\r\n = 0 ? '#569101' : '#E51A54' }}\r\n >\r\n {parseFloat(m.getCalculatedvalue).toFixed(2)}%\r\n {m.getCalculatedvalue >= 0 ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n // \r\n //
\r\n //
{m.valuationDate1}
\r\n //
{formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue1)}
\r\n // {list.length - 1 == index ? (\r\n //
 
\r\n // ) : (\r\n // = 0 ? '#569101' : '#E51A54', padding: 0 }}\r\n // >\r\n // {parseFloat(m.getCalculatedvalue).toFixed(2)}%  \r\n // {m.getCalculatedvalue >= 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
No Record Found
\r\n
\r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport const AgedStockCard = (props) => {\r\n const { data } = props;\r\n const handleRedirect = (link, branchID) => {\r\n let array = [];\r\n if (branchID) {\r\n array.push(branchID);\r\n }\r\n localStorage.setItem('NicoleFilterData', JSON.stringify({ ...portalNicolJson, groupIds: array }));\r\n props.history.push({\r\n pathname: link\r\n });\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n
{data.branch}
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(data.total)}
\r\n
\r\n \r\n \r\n \r\n handleRedirect(props.stockLink, props.branchID)}>\r\n STOCK LIST   \r\n \r\n \r\n \r\n handleRedirect(props.priorityLink, props.branchID)}>\r\n OVERAGE   \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Total CAP Clean\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(data.totalCapClean)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Total Variance  \r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(data.totalVariance)}\r\n \r\n {!true ? : }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Avg DIS
\r\n
\r\n {data.avgDis}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
Stock Turn
\r\n
\r\n {data.stockTurn}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n {/* \r\n \r\n
\r\n
{data.branch}
\r\n
{formatters.CurrencyThousandSeparatorWithoutZero(data.total)}
\r\n
\r\n
\r\n \r\n
\r\n handleRedirect(props.stockLink, props.branchID)}\r\n >\r\n STOCK LIST   \r\n \r\n\r\n handleRedirect(props.priorityLink, props.branchID)}>\r\n OVERAGE   \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
Total CAP Clean
      \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(data.totalCapClean)}\r\n
\r\n
\r\n\r\n
\r\n
Total Variance
         \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(data.totalVariance)}\r\n \r\n {!true ? : }\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
Avg DIS
\r\n
\r\n {data.avgDis}\r\n
\r\n
\r\n\r\n
\r\n
Stock Turn
\r\n
\r\n {data.stockTurn}\r\n
\r\n
\r\n
\r\n
\r\n */}\r\n \r\n );\r\n};\r\n\r\nexport const AgedStocksCardTWO = (props) => {\r\n const { list } = props;\r\n return (\r\n
\r\n \r\n {list.map((m) => {\r\n if (m.branchID === props.branchID) {\r\n return (\r\n \r\n
\r\n
{m.valuationDays1}
\r\n
{`${m.totalCount1} (${m.percent1}%)`}
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue1)}\r\n
\r\n
\r\n
\r\n );\r\n }\r\n })}\r\n
\r\n
\r\n );\r\n};\r\nexport const AgedStocksDayRangeCard = (props) => {\r\n const { list } = props;\r\n return (\r\n //
\r\n \r\n {list.map((m) => {\r\n if (m.branchID === props.branchID) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n 0 - 30 DAYS\r\n \r\n {`${m.totalCount0to30} (${m.totalPerc0to30}%)`}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue0to30)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 31 -60 DAYS\r\n \r\n {`${m.totalCount31to60} (${m.totalPerc31to60}%)`}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue31to60)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 61 - 90 DAYS\r\n \r\n {`${m.totalCount61to90} (${m.totalPerc61to90}%)`}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue61to90)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 91 - 120 DAYS\r\n \r\n {`${m.totalCount91to120} (${m.totalPerc91to120}%)`}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue91to120)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 121 - 150 DAYS\r\n \r\n {`${m.totalCount121to150} (${m.totalPerc121to150}%)`}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue121to150)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 150+ DAYS\r\n \r\n {`${m.totalCount150Plus} (${m.totalPerc150Plus}%)`}\r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(m.stockValue150Plus)}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n })}\r\n \r\n //
\r\n );\r\n};\r\n\r\nexport const SalesCard = (props) => {\r\n const { up, value, label, profitVal, subLabelOne, subLabelTwo } = props;\r\n return (\r\n
\r\n \r\n \r\n {label || 'N/A'}\r\n \r\n \r\n {formatters.ThousandSeparatorWithoutZero(value) || 0}\r\n \r\n\r\n \r\n
\r\n
{subLabelOne}
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(props.newProfit)}\r\n
\r\n
\r\n\r\n
\r\n
{subLabelTwo}
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(props.newPpu)}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import React from 'react';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport ArrowDownwardIcon from '@material-ui/icons/ArrowDownward';\r\nimport CallMadeIcon from '@material-ui/icons/CallMade';\r\nimport ArrowUpwardIcon from '@material-ui/icons/ArrowUpward';\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: '100%'\r\n },\r\n container: {\r\n maxHeight: 360,\r\n minHeight: 360\r\n }\r\n});\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n padding: 6\r\n // fontWeight: 700,\r\n // fontFamily: `Montserrat Regular`\r\n // backgroundColor: '#0e2132',\r\n // color: theme.palette.common.white\r\n }\r\n // body: {\r\n // fontSize: 12,\r\n // fontFamily: `Montserrat Regular`\r\n // }\r\n}))(TableCell);\r\n\r\nexport const BasicTable = (props) => {\r\n const classes = useStyles();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n CURRENT\r\n \r\n \r\n PRIOR YEAR\r\n \r\n \r\n DIFFERENCE\r\n \r\n \r\n \r\n \r\n {props.data?.map((row) => (\r\n \r\n \r\n {row.description}\r\n \r\n \r\n {row.current}\r\n \r\n \r\n {row.priorYear}\r\n \r\n \r\n {row.diff || 0} \r\n {false ? : }\r\n \r\n \r\n ))}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import React from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: 'flex',\r\n height: 600,\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n width: '100%'\r\n }\r\n}));\r\n\r\nexport default function CircularIndeterminate() {\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n}\r\n","import { Avatar, ButtonGroup } from '@material-ui/core';\r\nimport { Button, Collapse, FormLabel, Grid, Hidden, Typography } from '@material-ui/core';\r\nimport React from 'react';\r\n\r\nimport { useState } from 'react';\r\n// import { ProfitTable } from './profitlossTable';\r\nimport { useEffect } from 'react';\r\nimport moment from 'moment';\r\nimport ShowChartIcon from '@material-ui/icons/ShowChart';\r\n\r\nimport { getReportsDropdowns, getProfitLossbyID } from '../../../../../Core/Service/reportService';\r\nimport { FilterListIcon } from '@material-ui/icons/FilterList';\r\nimport { BudgetSendBtn, FilterBtn, LinkedButton, SmallLinkedButton } from '../BudgetCore/budgetButton';\r\nimport { ProfitLossCards, UsedStocksCard, UsedStocksCardTWO } from '../BudgetCore/budgetCardsUi_v2';\r\nimport ViewComfyIcon from '@material-ui/icons/ViewComfy';\r\nimport CallMadeIcon from '@material-ui/icons/CallMade';\r\nimport EventIcon from '@material-ui/icons/Event';\r\nimport { PandLLineChart } from '../BudgetCore/p&ldetailsChart';\r\nimport { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer, Label } from 'recharts';\r\n\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport { useHistory } from 'react-router-dom';\r\nimport CircularIndeterminate from '../BudgetCore/loader';\r\n\r\nimport { getUsedStockValuation } from '../../../../../Core/Service/ReportScreens-service';\r\nimport { useWindowSize } from '../../../../../Core/Controls/ScreenResolution';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\n\r\nlet filterBtnList = [\r\n { label: 'COMBINED', id: 'C' },\r\n { label: 'RETAIL', id: 'R' },\r\n { label: 'TRADE', id: 'T' }\r\n];\r\n\r\nconst crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Used Stock', active: true },\r\n { name: 'Used Stock Valuation', active: true }\r\n];\r\n\r\nconst UsedStockValuation = () => {\r\n const [state, setState] = useState({\r\n branches: [],\r\n tableRow: [],\r\n branchList: [],\r\n franchise: [],\r\n groupIds: [],\r\n franchiseIds: [],\r\n showTable: true,\r\n gpStock: {},\r\n mainData: [],\r\n selectedFilterBtn: filterBtnList[0].id,\r\n showLoader: true\r\n });\r\n\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n const portalNicolJson = JSON.parse(localStorage.getItem('NicoleFilterData'));\r\n\r\n const history = useHistory();\r\n\r\n const [temp, tempOption] = useState();\r\n\r\n const [table, setTable] = useState(false);\r\n\r\n const handleinput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }));\r\n };\r\n useEffect(async () => {\r\n let DropDownRes = await getReportsDropdowns();\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n branchList: DropDownRes.data.branch,\r\n franchise: DropDownRes.data.franchiseCode\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleTable = () => {\r\n setTable(!table);\r\n };\r\n\r\n useEffect(async () => {\r\n let combineData = [];\r\n let res = await getUsedStockValuation(state.selectedFilterBtn);\r\n if (res.success) {\r\n if (res?.data?.mainData != null && res?.data?.mainData.length > 0) {\r\n combineData = res?.data?.mainData.map((p) => {\r\n let weeklyDataByIdList = res?.data?.weeklyData.filter((q) => q.branchID == p.branchID);\r\n p.weeklyDataList = [...weeklyDataByIdList].sort(\r\n (a, b) => moment(b.valuationDate1).format('YYYYMMDD') - moment(a.valuationDate1).format('YYYYMMDD')\r\n );\r\n p.weeklyDataList = p.weeklyDataList.map((m, index) => ({\r\n ...m,\r\n getCalculatedvalue: ((m.stockValue1 - p.weeklyDataList[index + 1]?.stockValue1) / p.weeklyDataList[index + 1]?.stockValue1) * 100\r\n }));\r\n return p;\r\n });\r\n }\r\n }\r\n\r\n setState((st) => ({\r\n ...st,\r\n gpStock: res?.data?.gpStock[0],\r\n gpValueData: res?.data?.gpValue,\r\n mainData: combineData || [],\r\n showLoader: false\r\n }));\r\n }, [state.startDate, state.endDate, state.franchiseIds, state.groupIds, state.selectedFilterBtn]);\r\n\r\n const handleChanges = (event, value) => {\r\n tempOption((st) => ({ ...st, groupVal: value }));\r\n setState((st) => {\r\n const nst = { ...st, groupIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleChangesfranch = (event, value) => {\r\n tempOption((st) => ({ ...st, franchiseVal: value }));\r\n setState((st) => {\r\n const nst = { ...st, franchiseIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const [checked, setChecked] = useState(false);\r\n\r\n const handleChange = () => {\r\n setChecked((prev) => !prev);\r\n };\r\n\r\n const filterBtnChange = (id) => {\r\n setState((st) => ({\r\n ...st,\r\n selectedFilterBtn: id\r\n }));\r\n };\r\n\r\n const handleRedirect = (link) => {\r\n let searchQuery = `?isTrue=${true}`;\r\n history.push({\r\n pathname: link,\r\n search: searchQuery\r\n });\r\n localStorage.setItem('NicoleFilterData', JSON.stringify({ ...portalNicolJson, groupIds: [] }));\r\n };\r\n\r\n return (\r\n
\r\n {/* */}\r\n {state.showLoader ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n\r\n \r\n {filterBtnList.map((p) => {\r\n return (\r\n \r\n filterBtnChange(p.id)}>\r\n {p.label}\r\n \r\n \r\n );\r\n })}\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
GROUP STOCK
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
{state.gpStock.totalUnitStock}
\r\n
Total Units in Stock
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(state.gpStock.totalStockValue)}\r\n
\r\n
Total Stock 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 {formatters.CurrencyThousandSeparatorWithoutZero(state.gpStock.avgSIV)}\r\n
\r\n
Average SIV
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(state.gpStock.previousYearAvg)}\r\n
\r\n
Previous Year Average
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n handleRedirect('/usedStock')}>\r\n STOCK LIST   \r\n \r\n \r\n \r\n handleRedirect('/overagePriority')}>\r\n OVERAGE   \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
GROUP STOCK VALUE (YR)
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n {state.mainData.map((p) => {\r\n return (\r\n <>\r\n {/*
{p.branch}
*/}\r\n \r\n \r\n \r\n
\r\n
{p.units}
\r\n
Units
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default UsedStockValuation;\r\n","import React from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport TableSortLabel from '@material-ui/core/TableSortLabel';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport { TablePagination } from '@material-ui/core';\r\nimport ArrowDownwardIcon from '@material-ui/icons/ArrowDownward';\r\nimport ArrowUpwardIcon from '@material-ui/icons/ArrowUpward';\r\n\r\nfunction descendingComparator(a, b, orderBy) {\r\n if (b[orderBy] < a[orderBy]) {\r\n return -1;\r\n }\r\n if (b[orderBy] > a[orderBy]) {\r\n return 1;\r\n }\r\n return 0;\r\n}\r\n\r\nfunction getComparator(order, orderBy) {\r\n return order === 'desc' ? (a, b) => descendingComparator(a, b, orderBy) : (a, b) => -descendingComparator(a, b, orderBy);\r\n}\r\n\r\nfunction stableSort(array, comparator) {\r\n const stabilizedThis = array.map((el, index) => [el, index]);\r\n stabilizedThis.sort((a, b) => {\r\n const order = comparator(a[0], b[0]);\r\n if (order !== 0) return order;\r\n return a[1] - b[1];\r\n });\r\n return stabilizedThis.map((el) => el[0]);\r\n}\r\n\r\nconst headCells = [\r\n {\r\n id: 'stockNO',\r\n width: '8%',\r\n label: 'STOCK NO'\r\n },\r\n {\r\n id: 'regNo',\r\n width: '7%',\r\n label: 'REG NO'\r\n },\r\n {\r\n id: 'make',\r\n\r\n label: 'MAKE'\r\n },\r\n {\r\n id: 'model',\r\n\r\n label: 'MODEL'\r\n },\r\n {\r\n id: 'dor',\r\n width: '7%',\r\n label: 'DOR'\r\n },\r\n {\r\n id: 'dayInStock',\r\n width: '11%',\r\n label: 'DAYS IN STOCK'\r\n },\r\n {\r\n id: 'mileage',\r\n width: '7%',\r\n label: 'MILEAGE'\r\n },\r\n {\r\n id: 'standInValue',\r\n // width: '10%',\r\n label: 'STAND IN VALUE'\r\n },\r\n {\r\n id: 'capClean',\r\n // width: '22%',\r\n label: 'CAP CLEAN'\r\n },\r\n {\r\n id: 'variance',\r\n\r\n label: 'VARIANCE'\r\n }\r\n];\r\n\r\nfunction EnhancedTableHead(props) {\r\n const { classes, order, orderBy, onRequestSort } = props;\r\n const createSortHandler = (property) => (event) => {\r\n onRequestSort(event, property);\r\n };\r\n\r\n return (\r\n \r\n \r\n {headCells.map((headCell) => (\r\n \r\n \r\n {headCell.label}\r\n {orderBy === headCell.id ? (\r\n {order === 'desc' ? 'sorted descending' : 'sorted ascending'}\r\n ) : null}\r\n \r\n \r\n ))}\r\n \r\n \r\n );\r\n}\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n width: '100%'\r\n },\r\n paper: {\r\n width: '100%',\r\n marginBottom: theme.spacing(2)\r\n },\r\n table: {\r\n minWidth: 1450,\r\n '& .MuiTableCell-root': {\r\n padding: '16px 7px'\r\n }\r\n },\r\n visuallyHidden: {\r\n border: 0,\r\n clip: 'rect(0 0 0 0)',\r\n height: 1,\r\n margin: -1,\r\n overflow: 'hidden',\r\n padding: 0,\r\n position: 'absolute',\r\n top: 20,\r\n width: 1\r\n }\r\n}));\r\n\r\nexport default function UsedStocksTable(props) {\r\n const classes = useStyles();\r\n const [order, setOrder] = React.useState('asc');\r\n const [orderBy, setOrderBy] = React.useState('calories');\r\n const [page, setPage] = React.useState(0);\r\n const [rowsPerPage, setRowsPerPage] = React.useState(5);\r\n\r\n const handleRequestSort = (event, property) => {\r\n const isAsc = orderBy === property && order === 'asc';\r\n setOrder(isAsc ? 'desc' : 'asc');\r\n setOrderBy(property);\r\n };\r\n\r\n const handleChangePage = (event, newPage) => {\r\n setPage(newPage);\r\n };\r\n\r\n const handleChangeRowsPerPage = (event) => {\r\n setRowsPerPage(parseInt(event.target.value, 10));\r\n setPage(0);\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {stableSort(props.list, getComparator(order, orderBy))\r\n .slice(page * rowsPerPage, page * rowsPerPage + rowsPerPage)\r\n .map((row, index) => {\r\n const labelId = `enhanced-table-checkbox-${index}`;\r\n return (\r\n \r\n \r\n {row.stockNO}\r\n \r\n \r\n {row.regNo}\r\n \r\n \r\n {row.make}\r\n \r\n \r\n {row.model}\r\n \r\n \r\n {formatters.YearFormatter(row.dor)}\r\n \r\n \r\n {row.dayInStock}\r\n \r\n \r\n {row.mileage}\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(row.standInValue)}\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(row.capClean)}\r\n \r\n \r\n {formatters.CurrencyThousandSeparatorWithoutZero(row.capClean - row.standInValue)}\r\n {!true ? : }\r\n \r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n","import { Avatar, ButtonGroup } from '@material-ui/core';\r\nimport { Button, Collapse, FormLabel, Grid, Hidden, Typography } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { Multiselect, TextBox, DatePicker } from '../../../../../Core/FormInput';\r\nimport { useState } from 'react';\r\n// import { ProfitTable } from './profitlossTable';\r\nimport { useEffect } from 'react';\r\nimport moment from 'moment';\r\nimport ShowChartIcon from '@material-ui/icons/ShowChart';\r\n\r\nimport { getReportsDropdowns, getProfitLossbyID } from '../../../../../Core/Service/reportService';\r\nimport { FilterListIcon } from '@material-ui/icons/FilterList';\r\nimport { BudgetSendBtn, FilterBtn, LinkedButton, SmallLinkedButton } from '../BudgetCore/budgetButton';\r\nimport { ProfitLossCards, UsedStocksCard, UsedStocksCardTWO } from '../BudgetCore/budgetCardsUi_v2';\r\nimport ViewComfyIcon from '@material-ui/icons/ViewComfy';\r\nimport CallMadeIcon from '@material-ui/icons/CallMade';\r\nimport EventIcon from '@material-ui/icons/Event';\r\nimport { PandLLineChart } from '../BudgetCore/p&ldetailsChart';\r\nimport { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer, Label } from 'recharts';\r\nimport UsedStocksTable from './usedStockTable';\r\nimport {\r\n getVehicleProfileListDropDown,\r\n postUsedVehicleStockGetExcelFile,\r\n postUsedVehicleStockValuation\r\n} from '../../../../../Core/Service/ReportScreens-service';\r\n\r\nimport { useHistory } from 'react-router-dom';\r\nimport CircularIndeterminate from '../BudgetCore/loader';\r\nimport { useWindowSize } from '../../../../../Core/Controls/ScreenResolution';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\n\r\nconst crumbs = (ParamIsTrue) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Used Stock', active: true },\r\n ...(ParamIsTrue ? [{ name: 'Used Stock Valuation', path: '/UsedStockValuation' }] : []),\r\n { name: 'Used Vehicle Stock', active: true }\r\n];\r\nconst useStyles = makeStyles((theme) => ({\r\n reportScreenMultiSelect: {\r\n \"&.MuiAutocomplete-hasPopupIcon.MuiAutocomplete-hasClearIcon .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root']\": {\r\n paddingRight: '65px',\r\n height: '50px',\r\n backgroundColor: '#fff',\r\n paddingRight: '25px !important'\r\n }\r\n }\r\n}));\r\n\r\nconst UsedStock = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamIsTrue = params.get('isTrue') || false;\r\n const classes = useStyles();\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n const [state, setState] = useState({\r\n branches: [],\r\n tableRow: [],\r\n branchList: [],\r\n VehicleProfile: [],\r\n groupIds: JSON.parse(localStorage.getItem('NicoleFilterData'))?.groupIds || [],\r\n VehicleProfileIds: [],\r\n showTable: true,\r\n showLoader: true\r\n });\r\n\r\n const [stockData, setStockData] = useState({\r\n branchData: [],\r\n tableData: [],\r\n weeklyData: [],\r\n gpValueData: [],\r\n mainData: [],\r\n showLoader: true\r\n });\r\n\r\n const history = useHistory();\r\n\r\n const portalNicolJson = JSON.parse(localStorage.getItem('NicoleFilterData'));\r\n\r\n const [temp, tempOption] = useState({\r\n groupVal: [],\r\n VehicleProfileVal: []\r\n });\r\n\r\n useEffect(async () => {\r\n let DropDownRes = await getReportsDropdowns();\r\n let newRes = await getVehicleProfileListDropDown();\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n branchList: DropDownRes?.data.branch || [],\r\n vehicleList: newRes?.data.list\r\n }));\r\n }\r\n }, []);\r\n\r\n console.log(WindowWidths, 'WindowWidths');\r\n\r\n useEffect(() => {\r\n if (state.branchList.length > 0) {\r\n if (state.groupIds.length > 0) {\r\n tempOption((st) => ({\r\n ...st,\r\n groupVal: state.groupIds.map((w) => {\r\n let list = state.branchList.find((m) => w === m.id);\r\n return list;\r\n })\r\n }));\r\n }\r\n }\r\n }, [state.branchList]);\r\n\r\n useEffect(async () => {\r\n let data = {\r\n vehicleID: state.VehicleProfileIds,\r\n branchID: state.groupIds\r\n };\r\n let res = await postUsedVehicleStockValuation(data);\r\n if (res.success) {\r\n let combineData = [];\r\n if (res?.data?.mainData != null && res?.data?.mainData.length > 0) {\r\n combineData = res?.data?.mainData?.map((p) => {\r\n let weeklyDataByIdList = res?.data?.weeklyData.filter((q) => q.branchID == p.branchID);\r\n p.weeklyDataList = [...weeklyDataByIdList].sort(\r\n (a, b) => moment(b.valuationDate1).format('YYYYMMDD') - moment(a.valuationDate1).format('YYYYMMDD')\r\n );\r\n p.weeklyDataList = p.weeklyDataList.map((m, index) => ({\r\n ...m,\r\n getCalculatedvalue: ((m.stockValue1 - p.weeklyDataList[index + 1]?.stockValue1) / p.weeklyDataList[index + 1]?.stockValue1) * 100\r\n }));\r\n return p;\r\n });\r\n }\r\n\r\n setStockData((st) => ({\r\n ...st,\r\n mainData: combineData,\r\n tableData: res?.data?.tableData || [],\r\n weeklyData: res?.data?.weeklyData,\r\n gpValueData: res?.data?.gpStock,\r\n showLoader: false\r\n }));\r\n }\r\n }, [state.VehicleProfileIds, state.groupIds]);\r\n\r\n const handleChanges = (event, value) => {\r\n tempOption((st) => ({ ...st, groupVal: value }));\r\n localStorage.setItem('NicoleFilterData', JSON.stringify({ ...portalNicolJson, groupVal: value, groupIds: value.map((c) => c.id) }));\r\n setState((st) => {\r\n const nst = { ...st, groupIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleChangesfranch = (event, value) => {\r\n tempOption((st) => ({ ...st, VehicleProfileVal: value }));\r\n // localStorage.setItem('NicoleFilterData', JSON.stringify({ ...portalNicolJson, VehicleProfileVal: value, VehicleProfileIds: value.map((c) => c.id) }));\r\n\r\n setState((st) => {\r\n const nst = { ...st, VehicleProfileIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const downloadCSVWrapper = async () => {\r\n let data = {\r\n vehicleID: state.VehicleProfileIds,\r\n branchID: state.groupIds\r\n };\r\n await postUsedVehicleStockGetExcelFile(data, 'Used_Vehicle_Stock_Valuation');\r\n };\r\n\r\n return (\r\n
\r\n {/* */}\r\n {stockData.showLoader ? (\r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {WindowWidths > 1024 ? <>   DOWNLOAD CSV : ''}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n SELECT BRANCH\r\n \r\n \r\n \r\n \r\n \r\n VEHICLE PROFILE\r\n \r\n \r\n \r\n \r\n {/*
*/}\r\n \r\n\r\n \r\n \r\n
GROUP STOCK VALUE (YR)
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {stockData?.mainData?.map((p) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n
\r\n
{p.units}
\r\n
Units
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default UsedStock;\r\n","import { Avatar, ButtonGroup } from '@material-ui/core';\r\nimport { Button, Collapse, FormLabel, Grid, Hidden, Typography } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { Multiselect, TextBox, DatePicker } from '../../../../../Core/FormInput';\r\n\r\nimport { useState } from 'react';\r\n// import { ProfitTable } from './profitlossTable';\r\nimport { useEffect } from 'react';\r\nimport moment from 'moment';\r\nimport ShowChartIcon from '@material-ui/icons/ShowChart';\r\n\r\nimport { FilterListIcon } from '@material-ui/icons/FilterList';\r\nimport { BudgetSendBtn, FilterBtn, LinkedButton, SmallLinkedButton } from '../BudgetCore/budgetButton';\r\nimport { AgedStockCard, AgedStocksCardTWO, AgedStocksDayRangeCard, ProfitLossCards, UsedStocksCard, UsedStocksCardTWO } from '../BudgetCore/budgetCardsUi_v2';\r\nimport ViewComfyIcon from '@material-ui/icons/ViewComfy';\r\nimport CallMadeIcon from '@material-ui/icons/CallMade';\r\nimport EventIcon from '@material-ui/icons/Event';\r\nimport { PandLLineChart } from '../BudgetCore/p&ldetailsChart';\r\nimport { BarChart, Bar, Cell, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer } from 'recharts';\r\n// import UsedStocksTable from './usedStockTable';\r\n\r\nimport ArrowDownwardIcon from '@material-ui/icons/ArrowDownward';\r\n\r\nimport ArrowUpwardIcon from '@material-ui/icons/ArrowUpward';\r\nimport { getAgedStockValuation } from '../../../../../Core/Service/ReportScreens-service';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport { useHistory } from 'react-router-dom';\r\nimport CircularIndeterminate from '../BudgetCore/loader';\r\nimport { useWindowSize } from '../../../../../Core/Controls/ScreenResolution';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\n\r\nconst crumbs = () => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Used Stock', active: true },\r\n { name: 'Aged Vehicle Stock', active: true }\r\n];\r\n\r\nconst AgedStocks = () => {\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n const history = useHistory();\r\n const portalNicolJson = JSON.parse(localStorage.getItem('NicoleFilterData'));\r\n const [state, setState] = useState({ avgVehicle: [], mainData: [], vehilceSplitByDays: [], showLoader: true });\r\n\r\n useEffect(async () => {\r\n let res = await getAgedStockValuation();\r\n if (res.success) {\r\n let groupStock = res.data.gpStock[0];\r\n setState((st) => ({\r\n ...st,\r\n avgSIV: groupStock.avgSIV,\r\n totalCAPValue: groupStock.totalCAPValue,\r\n totalStockValue: groupStock.totalStockValue,\r\n totalUnitStock: groupStock.totalUnitStock,\r\n avgVehicle: res.data.avgVehicle,\r\n totalVariance: groupStock.totalCAPValue - groupStock.totalStockValue,\r\n mainData: res.data.mainData,\r\n vehilceSplitByDays: res.data.vehilceSplitByDays,\r\n showLoader: false\r\n }));\r\n }\r\n }, []);\r\n\r\n const handleRedirect = (link) => {\r\n localStorage.setItem('NicoleFilterData', JSON.stringify({ ...portalNicolJson, groupIds: [] }));\r\n history.push({\r\n pathname: link\r\n });\r\n };\r\n\r\n let barColor = {\r\n 1: '#569101',\r\n 2: '#FFBF00',\r\n 3: 'red'\r\n };\r\n\r\n return (\r\n
\r\n {state.showLoader ? (\r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n
GROUP STOCK
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
{state.totalUnitStock || 0}
\r\n
Total Units in Stock
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(state.totalStockValue)}\r\n
\r\n
Total Stock 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 {formatters.CurrencyThousandSeparatorWithoutZero(state.totalCAPValue)}\r\n
\r\n
Total CAP Clean
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(Math.abs(state.totalVariance))}\r\n \r\n {state.totalVariance < 0 ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n
Total Variance
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n handleRedirect('/usedStock')}>\r\n STOCK LIST   \r\n \r\n \r\n \r\n handleRedirect('/overagePriority')}>\r\n OVERAGE   \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
AVERAGE VEHICLE AGE PER SITE
{' '}\r\n \r\n \r\n {/* */}\r\n \r\n \r\n \r\n {/* */}\r\n {state.avgVehicle.map((entry, index) => {\r\n let colorCode;\r\n if (entry.count <= 50) {\r\n colorCode = 1;\r\n } else if (entry.count >= 50 && entry.count < 150) {\r\n colorCode = 2;\r\n } else if (entry.count >= 150) {\r\n colorCode = 3;\r\n }\r\n return (\r\n {\r\n // handleDetailpopUp(entry, 'VMRS');\r\n // }}\r\n />\r\n );\r\n })}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n {state.mainData.map((m) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n
\r\n
{m.units}
\r\n
Units
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n })}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default AgedStocks;\r\n","import { Avatar, ButtonGroup } from '@material-ui/core';\r\nimport { Button, Collapse, FormLabel, Grid, Hidden, Typography } from '@material-ui/core';\r\nimport React from 'react';\r\nimport { Multiselect, TextBox, DatePicker } from '../../../../../Core/FormInput';\r\nimport { useState } from 'react';\r\nimport { useEffect } from 'react';\r\nimport moment from 'moment';\r\nimport ShowChartIcon from '@material-ui/icons/ShowChart';\r\n\r\nimport { getReportsDropdowns, getProfitLossbyID } from '../../../../../Core/Service/reportService';\r\nimport { FilterListIcon } from '@material-ui/icons/FilterList';\r\nimport { BudgetSendBtn, FilterBtn, LinkedButton, SmallLinkedButton } from '../BudgetCore/budgetButton';\r\nimport { AgedStockCard, AgedStocksCardTWO, ProfitLossCards, UsedStocksCard, UsedStocksCardTWO } from '../BudgetCore/budgetCardsUi_v2';\r\nimport ViewComfyIcon from '@material-ui/icons/ViewComfy';\r\nimport CallMadeIcon from '@material-ui/icons/CallMade';\r\nimport EventIcon from '@material-ui/icons/Event';\r\nimport { PandLLineChart } from '../BudgetCore/p&ldetailsChart';\r\nimport { LineChart, BarChart, Bar, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer, Label } from 'recharts';\r\nimport UsedStocksTable from '../UsedVehicleStock/usedStockTable';\r\nimport { postOveragePriorityGetExcelFile, postOveragePriorityList } from '../../../../../Core/Service/ReportScreens-service';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport CircularIndeterminate from '../BudgetCore/loader';\r\nimport { useWindowSize } from '../../../../../Core/Controls/ScreenResolution';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n reportScreenMultiSelect: {\r\n \"&.MuiAutocomplete-hasPopupIcon.MuiAutocomplete-hasClearIcon .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root']\": {\r\n paddingRight: '65px',\r\n height: '50px',\r\n backgroundColor: '#fff',\r\n paddingRight: '25px !important'\r\n }\r\n }\r\n}));\r\nlet buttonsList = [\r\n { id: 'c', name: 'Combined' },\r\n { id: 'f', name: 'Franchise' },\r\n { id: 'n', name: 'Non-Franchise' },\r\n { id: 'r', name: 'Risk' }\r\n];\r\n\r\nconst crumbs = (ParamIsTrue) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Used Stock', active: true },\r\n ...(ParamIsTrue ? [{ name: 'Used Stock Valuation', path: '/UsedStockValuation' }] : []),\r\n { name: 'Overage Priority List', active: true }\r\n];\r\n\r\nconst OveragePriority = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamIsTrue = params.get('isTrue') || false;\r\n\r\n const portalNicolJson = JSON.parse(localStorage.getItem('NicoleFilterData'));\r\n const classes = useStyles();\r\n\r\n const [state, setState] = useState({\r\n branches: [],\r\n tableRow: [],\r\n branchList: [],\r\n franchise: [],\r\n groupIds: JSON.parse(localStorage.getItem('NicoleFilterData'))?.groupIds || [],\r\n franchiseIds: [],\r\n showTable: true,\r\n type: buttonsList[0].id,\r\n gpStock: [],\r\n tableData: [],\r\n showLoader: true\r\n });\r\n\r\n const [temp, tempOption] = useState({\r\n groupVal: []\r\n });\r\n\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n\r\n const handleinput = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }));\r\n };\r\n\r\n useEffect(async () => {\r\n let DropDownRes = await getReportsDropdowns();\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n branchList: DropDownRes.data.branch\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (state.branchList.length > 0) {\r\n tempOption((st) => ({\r\n ...st,\r\n groupVal: state.groupIds.map((w) => {\r\n let list = state.branchList.find((m) => w === m.id);\r\n return list;\r\n })\r\n }));\r\n }\r\n }, [state.branchList]);\r\n\r\n useEffect(async () => {\r\n let data = {\r\n branchID: state.groupIds,\r\n type: state.type\r\n };\r\n let res = await postOveragePriorityList(data);\r\n if (res.success) {\r\n let cardDetails = res.data.gpStock[0];\r\n setState((st) => ({\r\n ...st,\r\n gpStock: [\r\n {\r\n label: 'COMBINED',\r\n totalUnits: cardDetails.franchiseUnitStock + cardDetails.nonFranchiseUnitStock,\r\n standInValue: cardDetails.franchiseStandInValues + cardDetails.nonFranchiseStandInValues,\r\n totalCAPClean: cardDetails.franchiseCapClean + cardDetails.nonFranchiseCapClean,\r\n totalVariance: cardDetails.franchiseVariance + cardDetails.nonFranchiseVariance\r\n },\r\n {\r\n label: 'FRANCHISE (120 DAYS+)',\r\n totalUnits: cardDetails.franchiseUnitStock,\r\n standInValue: cardDetails.franchiseStandInValues,\r\n totalCAPClean: cardDetails.franchiseCapClean,\r\n totalVariance: cardDetails.franchiseCapClean - cardDetails.franchiseStandInValues\r\n },\r\n {\r\n label: 'NON-FRANCHISE (90 DAYS+)',\r\n totalUnits: cardDetails.nonFranchiseUnitStock,\r\n standInValue: cardDetails.nonFranchiseStandInValues,\r\n totalCAPClean: cardDetails.nonFranchiseCapClean,\r\n totalVariance: cardDetails.nonFranchiseCapClean - cardDetails.nonFranchiseStandInValues\r\n }\r\n ],\r\n tableData: res.data.tableData,\r\n showLoader: false\r\n }));\r\n }\r\n }, [state.groupIds, state.type]);\r\n\r\n const handleChanges = (event, value) => {\r\n tempOption((st) => ({ ...st, groupVal: value }));\r\n localStorage.setItem('NicoleFilterData', JSON.stringify({ ...portalNicolJson, groupIds: value.map((c) => c.id) }));\r\n setState((st) => {\r\n const nst = { ...st, groupIds: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleClick = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n type: val\r\n }));\r\n };\r\n\r\n const downloadCSVWrapper = async () => {\r\n let data = {\r\n type: state.type,\r\n branchID: state.groupIds\r\n };\r\n await postOveragePriorityGetExcelFile(data, 'Overage_Priority_List');\r\n };\r\n\r\n return (\r\n
\r\n {/* */}\r\n {state.showLoader ? (\r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {WindowWidths > 1024 ? <>   DOWNLOAD CSV : ''}\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n SELECT BRANCH\r\n \r\n \r\n \r\n \r\n\r\n \r\n {state.gpStock.map((p) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n
{p.label}
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
{p.totalUnits}
\r\n
Total Units
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(p.standInValue)}\r\n
\r\n
Stand In Value (SIV)
\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(p.totalCAPClean)}\r\n
\r\n
Total CAP Clean
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n {formatters.CurrencyThousandSeparatorWithoutZero(Math.abs(p.totalVariance))}\r\n
\r\n
Total Variance
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n );\r\n })}\r\n
\r\n\r\n \r\n {buttonsList.map((n) => {\r\n return (\r\n \r\n handleClick(n.id)}>\r\n {n.name?.toUpperCase()}\r\n \r\n \r\n );\r\n })}\r\n \r\n\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default OveragePriority;\r\n","import React from 'react';\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport { Grid } from '@material-ui/core';\r\nimport './part.scss';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: '#A0E8F4',\r\n color: theme.palette.common.black,\r\n padding: 0,\r\n fontSize: 12,\r\n border: '1px solid #1BB4C8',\r\n fontWeight: 700\r\n },\r\n body: {\r\n color: theme.palette.common.black,\r\n padding: 0,\r\n fontSize: 14,\r\n border: '1px solid #1BB4C8'\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableEmptyCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.common.white,\r\n color: theme.palette.common.white,\r\n padding: 0,\r\n border: 'none'\r\n },\r\n body: {\r\n fontSize: 14,\r\n padding: 0,\r\n border: '1px solid #1BB4C8'\r\n // border: 'none'\r\n }\r\n}))(TableCell);\r\n\r\nconst EmptyCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.common.white,\r\n color: theme.palette.common.white,\r\n padding: 0,\r\n border: 'none'\r\n },\r\n body: {\r\n fontSize: 12,\r\n padding: 0,\r\n // border: '1px solid #1BB4C8'\r\n border: 'none'\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n backgroundColor: '#A0E8F4'\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n width: '100%'\r\n }\r\n});\r\n\r\nconst MonthSummery = () => {\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Budget\r\n \r\n \r\n \r\n Actuals\r\n \r\n \r\n \r\n MTD VARIANCE\r\n \r\n \r\n \r\n RUN RATE PROJECTION\r\n \r\n \r\n \r\n BALANCE TO HIT BUDGET\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Total month\r\n \r\n \r\n Month to date 5 days\r\n \r\n \r\n Daily rate\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n Month to date 5 days\r\n \r\n \r\n Daily rate\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n Month to date 5 days\r\n \r\n \r\n Month to date 5 days\r\n \r\n {/* Daily rate */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Full month at run rate\r\n \r\n \r\n Full month budget\r\n \r\n \r\n Full month last year\r\n \r\n \r\n Variance to budget\r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n Based on MTD Actual\r\n \r\n \r\n Daily rate required\r\n \r\n \r\n Run rate improvement required\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n £\r\n \r\n \r\n £\r\n \r\n \r\n £\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n £\r\n \r\n \r\n £\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n £\r\n \r\n \r\n %\r\n \r\n {/* Daily rate */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n £\r\n \r\n \r\n £\r\n \r\n \r\n £\r\n \r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n £\r\n \r\n \r\n £\r\n \r\n \r\n %\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Knowsley Van\r\n \r\n Workshop\r\n \r\n \r\n \r\n 145,320\r\n \r\n \r\n 36,330\r\n \r\n \r\n 7,266\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n 35,962\r\n \r\n \r\n 7,192\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n (368)\r\n \r\n \r\n -1.0%\r\n \r\n {/* Daily rate */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 143,850\r\n \r\n \r\n 145,320\r\n \r\n \r\n 176,567\r\n \r\n \r\n (1,470)\r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n 109,358\r\n \r\n \r\n 7,291\r\n \r\n \r\n 1.4%\r\n \r\n \r\n \r\n \r\n \r\n \r\n Counter\r\n \r\n \r\n \r\n 145,320\r\n \r\n \r\n 36,330\r\n \r\n \r\n 7,266\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n 35,962\r\n \r\n \r\n 7,192\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n (368)\r\n \r\n \r\n -1.0%\r\n \r\n {/* Daily rate */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 143,850\r\n \r\n \r\n 145,320\r\n \r\n \r\n 176,567\r\n \r\n \r\n (1,470)\r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n 109,358\r\n \r\n \r\n 7,291\r\n \r\n \r\n 1.4%\r\n \r\n \r\n \r\n \r\n \r\n \r\n Total\r\n \r\n \r\n \r\n 145,320\r\n \r\n \r\n 36,330\r\n \r\n \r\n 7,266\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n 35,962\r\n \r\n \r\n 7,192\r\n \r\n \r\n \r\n \r\n \r\n \r\n {/* Total month */}\r\n \r\n (368)\r\n \r\n \r\n -1.0%\r\n \r\n {/* Daily rate */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n 143,850\r\n \r\n \r\n 145,320\r\n \r\n \r\n 176,567\r\n \r\n \r\n (1,470)\r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n 109,358\r\n \r\n \r\n 7,291\r\n \r\n \r\n 1.4%\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default MonthSummery;\r\n","import React, { useState } from 'react';\r\nimport { withStyles, makeStyles } from '@material-ui/core/styles';\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableCell from '@material-ui/core/TableCell';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport TableHead from '@material-ui/core/TableHead';\r\nimport TableRow from '@material-ui/core/TableRow';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport MonthSummery from './monthSummery';\r\nimport { Grid, Typography } from '@material-ui/core';\r\nimport './part.scss';\r\nimport { RadianGraphPart } from './radianGraph';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.action.hover,\r\n color: theme.palette.common.black,\r\n padding: 10,\r\n fontWeight: 700\r\n },\r\n body: {\r\n fontSize: 14,\r\n padding: 10\r\n }\r\n}))(TableCell);\r\n\r\nconst DiffTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: 'lightGrey',\r\n color: theme.palette.common.black,\r\n fontWeight: 700,\r\n padding: 10\r\n },\r\n body: {\r\n backgroundColor: 'lightGrey',\r\n color: theme.palette.common.black,\r\n fontSize: 14,\r\n fontWeight: 700,\r\n padding: 10\r\n }\r\n}))(TableCell);\r\n\r\nconst TotalTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: 'grey',\r\n color: theme.palette.common.black,\r\n fontWeight: 700,\r\n padding: 10\r\n },\r\n body: {\r\n fontWeight: 700,\r\n fontSize: 14,\r\n padding: 10\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableEmptyCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.common.white,\r\n color: theme.palette.common.white,\r\n padding: 10,\r\n border: 'none'\r\n },\r\n body: {\r\n fontSize: 14,\r\n padding: 10,\r\n border: 'none'\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(odd)': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nfunction createData(name, calories, fat, carbs, protein) {\r\n return { name, calories, fat, carbs, protein };\r\n}\r\n\r\nconst rows = [\r\n createData('Frozen yoghurt', 159, 6.0, 24, 4.0),\r\n createData('Ice cream sandwich', 237, 9.0, 37, 4.3),\r\n createData('Eclair', 262, 16.0, 24, 6.0),\r\n createData('Cupcake', 305, 3.7, 67, 4.3),\r\n createData('Gingerbread', 356, 16.0, 49, 3.9)\r\n];\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: 700\r\n }\r\n});\r\n\r\nconst HeadLinesDashboard = () => {\r\n const [state, setState] = useState({ showSummeryScreen: false });\r\n const classes = useStyles();\r\n\r\n const showSummenry = () => {\r\n setState((st) => ({\r\n ...st,\r\n showSummeryScreen: true\r\n }));\r\n };\r\n return (\r\n <>\r\n {!state.showSummeryScreen ? (\r\n
\r\n
\r\n \r\n {/* \r\n \r\n \r\n \r\n \r\n */}\r\n \r\n Total Parts Sales Counter/Workshop \r\n \r\n \r\n December 2022\r\n \r\n \r\n \r\n Working Days :   05\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n KVN\r\n KNT\r\n Dee\r\n TRA\r\n STO\r\n \r\n Total Group\r\n Difference\r\n \r\n \r\n \r\n \r\n Parts sales Counter\r\n Need\r\n showSummenry()}>\r\n £43,486\r\n \r\n \r\n £37,730\r\n \r\n \r\n £26,871\r\n \r\n \r\n £66,130\r\n \r\n \r\n £56,593\r\n \r\n \r\n \r\n £230,820\r\n \r\n \r\n \r\n\r\n \r\n Parts sales Counter\r\n Done\r\n \r\n £42,825\r\n \r\n \r\n £95,194\r\n \r\n \r\n £31,742\r\n \r\n \r\n £45,054\r\n \r\n \r\n £42,820\r\n \r\n \r\n \r\n £257,634\r\n \r\n £26,824\r\n \r\n\r\n \r\n Parts sales Workshop\r\n Need\r\n \r\n £36,330\r\n \r\n \r\n £47,732\r\n \r\n \r\n £51,754\r\n \r\n \r\n £57,981\r\n \r\n \r\n £58,307\r\n \r\n \r\n \r\n £252,104\r\n \r\n \r\n \r\n\r\n \r\n Parts sales Workshop\r\n Done\r\n \r\n £35,962\r\n \r\n \r\n £28,726\r\n \r\n \r\n £24,417\r\n \r\n \r\n £42,862\r\n \r\n \r\n £48,248\r\n \r\n \r\n \r\n £180,216\r\n \r\n \r\n -£71,887\r\n \r\n \r\n \r\n Profit \r\n Need\r\n \r\n £15,000\r\n \r\n \r\n £17,093\r\n \r\n \r\n £15,003\r\n \r\n \r\n £23,023\r\n \r\n \r\n £23,023\r\n \r\n \r\n \r\n £22,176\r\n \r\n \r\n \r\n \r\n Profit \r\n Done\r\n \r\n £14,989\r\n \r\n \r\n £18,775\r\n \r\n \r\n £12,002\r\n \r\n \r\n £18,615\r\n \r\n \r\n £18,558\r\n \r\n \r\n \r\n £82,938\r\n \r\n \r\n -£9,356\r\n \r\n \r\n \r\n Profit % \r\n \r\n \r\n 19.02%\r\n \r\n \r\n 15.15%\r\n \r\n \r\n 21.37%\r\n \r\n \r\n 21.17%\r\n \r\n \r\n 20.38%\r\n \r\n \r\n \r\n 18.94%\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default HeadLinesDashboard;\r\n","import React, { useEffect, useState } from 'react';\r\nimport moment from 'moment';\r\nimport { Grid, FormLabel, IconButton } from '@material-ui/core';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { TextBox } from '../../../../../Core/FormInput';\r\nimport { ExpBaseURL } from '../../../../../Core/Service/http-calls';\r\nimport { AppStorage } from '../../../../../Core/Service/storage-service';\r\nimport formatters from '../../../../../Core/Grid/inputFormatter';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { GetExcelFileFromEndpoint } from '../../../../../Core/Service/reportService';\r\nimport AppContext from '../../../../../App/AppContext';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { useContext } from 'react';\r\n\r\nconst techDetailsColumns = [\r\n { title: 'Date In', field: 'di', width: 110 },\r\n { title: 'Date Out', field: 'do', width: 110 },\r\n { title: 'Hour Taken', field: 'ht', width: 40, align: 'right', renderer: formatters.ToFixedSeparator },\r\n { title: 'Adj Mode', field: 'adj', width: 100, align: 'right' },\r\n { title: 'Shift', field: 'sn', width: 100, align: 'right' }\r\n];\r\nconst nominalColumns = [\r\n { title: 'Technician', field: 'rn', sortable: true },\r\n { field: 'totalIdleHours', title: 'Total Idle Hours', align: 'right', renderer: formatters.ToFixedSeparator },\r\n { field: 'productiveHours', title: 'Productive Hours', align: 'right', renderer: formatters.ToFixedSeparator },\r\n { field: 'nonProductiveHours', title: 'Non Productive Hours', align: 'right', renderer: formatters.ToFixedSeparator }\r\n];\r\n\r\nconst IdelCol = [\r\n { title: 'Idle Reason', field: 'id' },\r\n { field: 'totalIdleHours', title: 'Total Idle Hours', align: 'right', renderer: formatters.ToFixedSeparator },\r\n { field: 'productiveHours', title: 'Productive Hours', align: 'right', renderer: formatters.ToFixedSeparator },\r\n { field: 'nonProductiveHours', title: 'Non Productive Hours', align: 'right', renderer: formatters.ToFixedSeparator }\r\n];\r\n\r\nconst baseColumns = [\r\n { field: 'bn', title: 'Branch' },\r\n { field: 'totalIdleHours', title: 'Total Idle Hours', align: 'right', renderer: formatters.ToFixedSeparator },\r\n { field: 'productiveHours', title: 'Productive Hours', align: 'right', renderer: formatters.ToFixedSeparator },\r\n { field: 'nonProductiveHours', title: 'Non Productive Hours', align: 'right', renderer: formatters.ToFixedSeparator }\r\n];\r\n\r\nconst crumbs = [\r\n { name: 'Home', path: '/' },\r\n { name: 'Services', active: true },\r\n { name: 'Idle Time Analysis- Reasons', active: true }\r\n];\r\n\r\nvar $ = window.$;\r\nvar mainGrid, opGrid, techGrid, techDetailsGrid;\r\n\r\nconst IdleTimeAnalysis = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n\r\n let startDate = moment().startOf('month').format('YYYY-MM-DD');\r\n let endDate = moment().format('YYYY-MM-DD');\r\n\r\n const [state, setState] = useState({\r\n startDate: startDate,\r\n endDate: endDate\r\n });\r\n const fieldChange = (e) => {\r\n let { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n let token = AppStorage.getToken();\r\n const onSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n mainGrid.render(obj);\r\n };\r\n\r\n const onSuccessOperatorFunc = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n opGrid.render(obj);\r\n };\r\n\r\n const onSuccessTechFun = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n techGrid.render(obj);\r\n };\r\n\r\n const onSuccessTechDetailsFun = function (response) {\r\n var obj = {\r\n records: response.data.list,\r\n total: response.data.total\r\n };\r\n techDetailsGrid.render(obj);\r\n };\r\n let getUrl = `${ExpBaseURL}/api/services/IdleTimeAnalysis?Mode=R`;\r\n\r\n const PullSalesNominalData = async () => {\r\n window.$(`#IdleTimeAnalysis`).grid('destroy', true, true);\r\n mainGrid = $('#IdleTimeAnalysis').grid({\r\n primaryKey: 'branchID',\r\n dataSource: {\r\n url: getUrl,\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n success: onSuccessFunc\r\n },\r\n detailTemplate: '
',\r\n headerFilter: false,\r\n columns: baseColumns,\r\n pager: { limit: 10 }\r\n });\r\n mainGrid.on('dataBound', function (e, records, totalRecords) {\r\n var sumIdleHours = 0,\r\n sumProductiveHours = 0,\r\n sumNonProductiveHours = 0,\r\n $tfoot;\r\n $.each(records, function () {\r\n sumIdleHours += parseFloat(this.totalIdleHours);\r\n sumProductiveHours += parseFloat(this.productiveHours);\r\n sumNonProductiveHours += parseFloat(this.nonProductiveHours);\r\n });\r\n $tfoot = mainGrid.children('tfoot');\r\n $tfoot.children('tr[data-role=\"TotalAmount\"]').remove();\r\n $tfoot.children('tr[data-role=\"pager\"]').remove();\r\n $tfoot.prepend(\r\n ''\r\n );\r\n });\r\n mainGrid.on('detailExpand', function (e, $detailWrapper, branchID) {\r\n opGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID },\r\n headerFilter: false,\r\n primaryKey: 'ic',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/IdleTimeAnalysis?Mode=R`,\r\n headers: { Authorization: `Bearer ${token}`, domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host },\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n success: onSuccessOperatorFunc\r\n },\r\n columns: IdelCol,\r\n detailTemplate: '
Total' +\r\n formatters.ToFixedSeparator(sumIdleHours) +\r\n '' +\r\n formatters.ToFixedSeparator(sumProductiveHours) +\r\n '' +\r\n formatters.ToFixedSeparator(sumNonProductiveHours) +\r\n '
'\r\n });\r\n\r\n opGrid.on('detailExpand', function (e, $detailWrapper, ic) {\r\n techGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID, IdleCode: ic },\r\n headerFilter: false,\r\n primaryKey: 'rc',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/IdleTimeAnalysis?Mode=R`,\r\n headers: {\r\n Authorization: `Bearer ${token}`,\r\n domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host\r\n },\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n success: onSuccessTechFun\r\n },\r\n columns: nominalColumns,\r\n detailTemplate: '
'\r\n });\r\n techGrid.on('detailExpand', function (e, $detailWrapper, rc) {\r\n techDetailsGrid = $detailWrapper.find('table').grid({\r\n params: { branchID: branchID, IdleCode: ic, res: rc },\r\n headerFilter: false,\r\n primaryKey: 'rn',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/services/IdleTimeAnalysis?Mode=R`,\r\n headers: {\r\n Authorization: `Bearer ${token}`,\r\n domainName: window.location.host.includes('localhost') ? 'localhost' : window.location.host\r\n },\r\n data: { StartDate: state.startDate, EndDate: state.endDate },\r\n success: onSuccessTechDetailsFun\r\n },\r\n columns: techDetailsColumns\r\n });\r\n });\r\n });\r\n opGrid.on('detailCollapse', function (e, $detailWrapper, id) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n });\r\n\r\n mainGrid.on('detailCollapse', function (e, $detailWrapper, id) {\r\n $detailWrapper.find('table').grid('destroy', true, true);\r\n });\r\n mainGrid.reload();\r\n };\r\n useEffect(() => {\r\n PullSalesNominalData();\r\n }, [state.startDate, state.endDate, props.type]);\r\n const downloadCSVWrapper = async () => {\r\n showToast('Collating Data... This may take a while.');\r\n const data = mainGrid.data().params;\r\n let downloadURL = `services/IdleTimeAnalysis${getUrl.includes('?') ? '&' : '?'}fileType=excel&StartDate=${state.startDate}&EndDate=${state.endDate}`;\r\n for (let key in data) {\r\n if (data.hasOwnProperty(key)) {\r\n const value = data[key];\r\n downloadURL += `&${key}=${value}`;\r\n }\r\n }\r\n await GetExcelFileFromEndpoint(downloadURL, 'IdelTimeAnalysis');\r\n };\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n Start Date\r\n \r\n \r\n \r\n End Date\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n );\r\n};\r\nexport default IdleTimeAnalysis;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Container, Grid, Avatar, Typography, Button, ButtonGroup, CircularProgress } from '@material-ui/core';\r\nimport SpeedIcon from '@material-ui/icons/Speed';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { getReprtingAfterSaleDashboard } from '../../../Core/Service/ReportScreens-service';\r\nimport './ReportingScreensStyle.scss';\r\nimport {\r\n AfterSaleBranchCard,\r\n AfterSaleBranchCardPart,\r\n AfterSaleCombined,\r\n AfterSaleJobsDetails,\r\n AfterSaleSupercharge,\r\n AfterSaleYtdMtdSection\r\n} from './saleDashboardCard';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport moment from 'moment';\r\n// import { Typography from '@material-ui/core/Typography';\r\nfunction isFiniteCheck(str) {\r\n return isFinite(str) ? str.toFixed(2) : '0.00';\r\n}\r\n\r\nconst AfterSaleReportingDashboard = () => {\r\n const history = useHistory();\r\n const portalSettings = AppStorage.getPortalSetting();\r\n\r\n const isCommunicatorAllowed = AppStorage.getCommunicatorAllowed() && portalSettings.portalSettingCommunicatorEnabled;\r\n const RedirectToDash = (val) => {\r\n history.push({\r\n pathname: val\r\n });\r\n };\r\n\r\n const [state, setState] = useState({\r\n TotalSold: 0,\r\n TotalTaken: 0,\r\n TotalSale: 0,\r\n TotalCost: 0,\r\n YTDTotalSold: 0,\r\n YTDTotalTaken: 0,\r\n YTDTotalSale: 0,\r\n YTDTotalCost: 0,\r\n soldHoursArr: [],\r\n partsArr: [],\r\n mtdGrossProfit: 0,\r\n ytdGrossProfit: 0,\r\n mtdSaleValueCountP: 0,\r\n ytdSaleValueCountP: 0,\r\n mtdSaleValueCountWC: 0,\r\n ytdSaleValueCountWC: 0,\r\n showLoader: true\r\n // soldHoursArr: [],\r\n });\r\n\r\n const [partsData, setPartsData] = useState({\r\n partsCalculatedList: [],\r\n partsArr: [],\r\n uniqueBranchList: [],\r\n graphData: [],\r\n showLoader: true\r\n });\r\n const [surchargesData, setSurchargesData] = useState({ surchargesArr: [] });\r\n const [ytdMtdData, setYtdMtdData] = useState({ monthlyWIPsUniqueDateList: [], monthlyWIPsCombinedList: [] });\r\n\r\n useEffect(async () => {\r\n let res = await getReprtingAfterSaleDashboard();\r\n\r\n if (res.success) {\r\n let hoursSoldBudgetList = [...res.data?.hoursSoldBudgetList];\r\n let partsVOR = res.data?.partsVOR[0];\r\n let parts = [...res.data?.parts];\r\n let surcharges = [...res.data?.surcharges];\r\n let monthlyWIPs = [...res.data?.monthlyWIPs];\r\n let dailyWIPs = [...res.data?.dailyWIPs];\r\n\r\n if (monthlyWIPs.length > 0) {\r\n let monthlyWIPsCombinedList = [];\r\n let monthlyWIPsUniqueDateList = [];\r\n\r\n monthlyWIPs.forEach((p) => {\r\n monthlyWIPsUniqueDateList.push({ date: p.date, name: moment(p.date).format('MMM-YY'), Total: 0 });\r\n let objIndex = monthlyWIPsCombinedList.findIndex((q) => q.branchID === p.branchID);\r\n\r\n if (objIndex > -1) {\r\n monthlyWIPsCombinedList[objIndex].data.push({ ...p });\r\n } else {\r\n monthlyWIPsCombinedList.push({\r\n branchID: p.branchID,\r\n branchShortCode: p.branchShortCode,\r\n data: [{ ...p }]\r\n });\r\n }\r\n });\r\n monthlyWIPsUniqueDateList = [...new Map(monthlyWIPsUniqueDateList.map((item) => [item['date'], item])).values()];\r\n monthlyWIPs.forEach((p) => {\r\n let objIndex = monthlyWIPsUniqueDateList.findIndex((q) => q.date === p.date);\r\n\r\n if (objIndex > -1) {\r\n monthlyWIPsUniqueDateList[objIndex].Total += p.hours;\r\n }\r\n });\r\n\r\n let monthlyWIPsUniqueBranchList = [];\r\n let monthlyWIPsGrapgData = [];\r\n\r\n [...monthlyWIPs].forEach((q) => {\r\n monthlyWIPsUniqueBranchList.push(q.branchShortCode);\r\n\r\n let isIDExist = monthlyWIPsGrapgData.findIndex((t) => t.date == moment(q.date).format('MMM-YY'));\r\n if (isIDExist > -1) {\r\n monthlyWIPsGrapgData[isIDExist][q.branchShortCode] = q.hours;\r\n monthlyWIPsGrapgData[isIDExist].Total += q.hours;\r\n } else {\r\n monthlyWIPsGrapgData.push({\r\n date: moment(q.date).format('MMM-YY'),\r\n [q.branchShortCode]: q.hours,\r\n Total: 0 + +q.hours\r\n });\r\n }\r\n });\r\n monthlyWIPsUniqueBranchList = [...new Set(monthlyWIPsUniqueBranchList)];\r\n monthlyWIPsUniqueBranchList.push('Total');\r\n /////////\r\n\r\n let dailyWIPsCombinedList = [];\r\n let dailyWIPsUniqueDateList = [];\r\n\r\n [...dailyWIPs].forEach((p) => {\r\n dailyWIPsUniqueDateList.push({ date: p.date, name: moment(p.date).format('DD/MM/YY'), Total: 0 });\r\n let objIndex = dailyWIPsCombinedList.findIndex((q) => q.branchID === p.branchID);\r\n if (objIndex > -1) {\r\n dailyWIPsCombinedList[objIndex].data.push({ ...p });\r\n } else {\r\n dailyWIPsCombinedList.push({\r\n branchID: p.branchID,\r\n branchShortCode: p.branchShortCode,\r\n data: [{ ...p }]\r\n });\r\n }\r\n });\r\n dailyWIPsUniqueDateList = [...new Map(dailyWIPsUniqueDateList.map((item) => [item['date'], item])).values()];\r\n\r\n dailyWIPs.forEach((p) => {\r\n let objIndex = dailyWIPsUniqueDateList.findIndex((q) => q.date === p.date);\r\n\r\n if (objIndex > -1) {\r\n dailyWIPsUniqueDateList[objIndex].Total += p.hours;\r\n }\r\n });\r\n let dailyWIPsUniqueBranchList = [];\r\n let dailyWIPsGrapgData = [];\r\n\r\n [...dailyWIPs].forEach((q) => {\r\n dailyWIPsUniqueBranchList.push(q.branchShortCode);\r\n\r\n let isIDExist = dailyWIPsGrapgData.findIndex((t) => t.date == moment(q.date).format('DD/MM/YYYY'));\r\n if (isIDExist > -1) {\r\n dailyWIPsGrapgData[isIDExist][q.branchShortCode] = q.hours;\r\n // dailyWIPsGrapgData[isIDExist].Total += q.hours;\r\n } else {\r\n dailyWIPsGrapgData.push({\r\n date: moment(q.date).format('DD/MM/YYYY'),\r\n [q.branchShortCode]: q.hours\r\n // Total: 0 + +q.hours\r\n });\r\n }\r\n });\r\n dailyWIPsUniqueBranchList = [...new Set(dailyWIPsUniqueBranchList)];\r\n // dailyWIPsUniqueBranchList.push('Total');\r\n\r\n setYtdMtdData((pt) => ({\r\n ...pt,\r\n monthlyWIPsUniqueDateList: monthlyWIPsUniqueDateList || [],\r\n monthlyWIPsCombinedList: monthlyWIPsCombinedList || [],\r\n dailyWIPsCombinedList: dailyWIPsCombinedList || [],\r\n dailyWIPsUniqueDateList: dailyWIPsUniqueDateList || [],\r\n monthlyWIPsGrapgData: monthlyWIPsGrapgData || [],\r\n monthlyWIPsUniqueBranchList: monthlyWIPsUniqueBranchList || [],\r\n dailyWIPsGrapgData: dailyWIPsGrapgData || [],\r\n dailyWIPsUniqueBranchList: dailyWIPsUniqueBranchList || []\r\n }));\r\n }\r\n\r\n if (hoursSoldBudgetList.length > 0) {\r\n let TotalSold = 0;\r\n let TotalTaken = 0;\r\n let TotalSale = 0;\r\n let TotalCost = 0;\r\n let YTDTotalSold = 0;\r\n let YTDTotalTaken = 0;\r\n let YTDTotalSale = 0;\r\n let YTDTotalCost = 0;\r\n let MTDTotalBudget = 0;\r\n let YTDTotalBudget = 0;\r\n let mtdBudget = 0;\r\n let ytdBudget = 0;\r\n let totalCount = [...hoursSoldBudgetList].forEach(function (item) {\r\n TotalSold += item.mtdSold;\r\n TotalTaken += item.mtdTaken;\r\n TotalSale += item.mtdSale;\r\n TotalCost += item.mtdCost;\r\n YTDTotalSold += item.ytdSold;\r\n YTDTotalTaken += item.ytdTaken;\r\n YTDTotalSale += item.ytdSale;\r\n YTDTotalCost += item.ytdCost;\r\n MTDTotalBudget += item.mtdHoursBudget;\r\n YTDTotalBudget += item.ytdHoursBudget;\r\n mtdBudget += item.mtdBudget;\r\n ytdBudget += item.ytdBudget;\r\n // graphYAxis += item.mtdSold -item.mtdBudget;\r\n });\r\n\r\n var soldHoursArr = hoursSoldBudgetList.reduce((acc, obj) => {\r\n var index = acc.find((item) => item.bn === obj.bn);\r\n if (index) {\r\n index.mtdSold += obj.mtdSold;\r\n index.mtdTaken += obj.mtdTaken;\r\n index.mtdSale += obj.mtdSale;\r\n index.mtdCost += obj.mtdCost;\r\n index.ytdSold += obj.ytdSold;\r\n index.ytdTaken += obj.ytdTaken;\r\n index.ytdSale += obj.ytdSale;\r\n index.ytdCost += obj.ytdCost;\r\n\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n\r\n soldHoursArr = soldHoursArr.map((p, i) => {\r\n let recRateTable = p.mtdSale / p.mtdSold;\r\n let cal = p.mtdSold - p.mtdHoursBudget;\r\n let invPound = p.mtdSale - p.mtdBudget;\r\n let rec = p.mtdSale / p.mtdSold - p.mtdRecoveryRateBudget;\r\n let eff = (p.mtdSold / p.mtdTaken) * 100 - p.mtdEfficiencyBudget;\r\n return {\r\n ...p,\r\n recRateTable: recRateTable,\r\n invoicingHours: Math.round(cal),\r\n RecoveryRate: rec,\r\n invoicingPound: Math.round(invPound),\r\n efficiencyBud: Math.round(eff)\r\n };\r\n });\r\n\r\n setState((st) => ({\r\n ...st,\r\n TotalSold: TotalSold,\r\n TotalTaken: TotalTaken,\r\n TotalSale: TotalSale,\r\n TotalCost: TotalCost,\r\n YTDTotalSold: YTDTotalSold,\r\n YTDTotalTaken: YTDTotalTaken,\r\n YTDTotalSale: YTDTotalSale,\r\n YTDTotalCost: YTDTotalCost,\r\n soldHoursArr: soldHoursArr,\r\n MTDTotalBudget: MTDTotalBudget,\r\n YTDTotalBudget: YTDTotalBudget,\r\n mtdBudget: mtdBudget,\r\n ytdBudget: ytdBudget,\r\n partsVOR: partsVOR,\r\n showLoader: false\r\n }));\r\n }\r\n if (parts.length > 0) {\r\n let partsCalculatedList = parts.reduce((acc, obj) => {\r\n var index = acc.find((item) => item.dc === obj.dc);\r\n if (index) {\r\n index.mtdSaleValue += +obj.mtdSaleValue;\r\n index.ytdSaleValue += +obj.ytdSaleValue;\r\n index.mtdGrossProfit += obj.mtdGrossProfit;\r\n index.ytdGrossProfit += obj.ytdGrossProfit;\r\n index.mtdBudget += obj.mtdBudget;\r\n index.ytdBudget += obj.ytdBudget;\r\n index.mtdgpp += obj.mtdgpp;\r\n index.ytdgpp += obj.ytdgpp;\r\n return acc;\r\n }\r\n acc.push({ ...obj });\r\n return acc;\r\n }, []);\r\n\r\n let pratRowCount = parts.length;\r\n let totalCountObj = {\r\n dc: '',\r\n d: '',\r\n mtdSaleValue: 0,\r\n ytdSaleValue: 0,\r\n mtdGrossProfit: 0,\r\n ytdGrossProfit: 0,\r\n mtdBudget: 0,\r\n ytdBudget: 0,\r\n mtdgpp: 0,\r\n ytdgpp: 0\r\n };\r\n\r\n partsCalculatedList.forEach((p) => {\r\n totalCountObj.mtdSaleValue += p.mtdSaleValue;\r\n totalCountObj.ytdSaleValue += p.ytdSaleValue;\r\n totalCountObj.mtdGrossProfit += p.mtdGrossProfit;\r\n totalCountObj.ytdGrossProfit += p.ytdGrossProfit;\r\n totalCountObj.mtdBudget += p.mtdBudget;\r\n totalCountObj.ytdBudget += p.ytdBudget;\r\n totalCountObj.mtdgpp += p.mtdgpp;\r\n totalCountObj.ytdgpp += p.ytdgpp;\r\n });\r\n totalCountObj.mtdgpp = totalCountObj.mtdgpp / pratRowCount;\r\n totalCountObj.ytdgpp = totalCountObj.ytdgpp / pratRowCount;\r\n partsCalculatedList.unshift(totalCountObj);\r\n\r\n let partsTableCalculatedList = [];\r\n let uniqueBranchList = [];\r\n\r\n parts.forEach((p) => {\r\n uniqueBranchList.push({ bn: p.bn, branchID: p.branchID });\r\n let objIndex = partsTableCalculatedList.findIndex((q) => q.dc === p.dc);\r\n if (objIndex > -1) {\r\n partsTableCalculatedList[objIndex].data.push({ ...p });\r\n } else {\r\n partsTableCalculatedList.push({\r\n d: p.d,\r\n dc: p.dc,\r\n data: [{ ...p }]\r\n });\r\n }\r\n });\r\n uniqueBranchList = [...new Map(uniqueBranchList.map((item) => [item['branchID'], item])).values()];\r\n\r\n let graphData = {\r\n uniqueKeys: [],\r\n list: []\r\n };\r\n parts.forEach((p) => {\r\n graphData.uniqueKeys.push({ code: p.dc, name: p.d });\r\n let objIndex = graphData.list.findIndex((q) => q.branchID === p.branchID);\r\n if (objIndex > -1) {\r\n graphData.list[objIndex][`${p.dc}`] = +isFiniteCheck(p.mtdSaleValue - p.mtdBudget);\r\n } else {\r\n graphData.list.push({\r\n branchID: p.branchID,\r\n bn: p.bn,\r\n [`${p.dc}`]: +isFiniteCheck(p.mtdSaleValue - p.mtdBudget)\r\n });\r\n }\r\n });\r\n graphData.uniqueKeys = [...new Map(graphData.uniqueKeys.map((item) => [item['code'], item])).values()];\r\n\r\n setPartsData((pt) => ({\r\n ...pt,\r\n partsCalculatedList: partsCalculatedList || [],\r\n partsArr: partsTableCalculatedList || [],\r\n uniqueBranchList: uniqueBranchList || [],\r\n graphData: graphData || [],\r\n showLoader: false\r\n }));\r\n }\r\n if (surcharges.length > 0) {\r\n setSurchargesData((sr) => ({\r\n ...sr,\r\n surchargesArr: surcharges\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n return (\r\n
\r\n {state.showLoader ? (\r\n \r\n \r\n
\r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n {isCommunicatorAllowed && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default AfterSaleReportingDashboard;\r\n","import React from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport AppBar from '@material-ui/core/AppBar';\r\nimport Tab from '@material-ui/core/Tab';\r\nimport TabContext from '@material-ui/lab/TabContext';\r\nimport TabList from '@material-ui/lab/TabList';\r\nimport TabPanel from '@material-ui/lab/TabPanel';\r\nimport ReportingDashboard from './reportingDashboard';\r\nimport AfterSaleReportingDashboard from './afterSaleDashboard';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n flexGrow: 1,\r\n backgroundColor: theme.palette.background.paper,\r\n // background:'red',\r\n height: 'calc(100vh - 115px)'\r\n }\r\n}));\r\n\r\nconst RepotingTab = () => {\r\n const classes = useStyles();\r\n const [value, setValue] = React.useState('2');\r\n\r\n const handleChange = (event, newValue) => {\r\n setValue(newValue);\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default RepotingTab;\r\n","import { FormLabel, Grid, InputLabel } from '@material-ui/core';\r\nimport _ from 'lodash';\r\nimport moment from 'moment';\r\nimport React, { useEffect, useState } from 'react';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport { SelectBox, SingelSelect } from '../../../../../Core/FormInput';\r\nimport { getReportsDropdowns, GetShiftCalender, GetShiftCalenderScreenDropdowns } from '../../../../../Core/Service/reportService';\r\n\r\nfunction padLeft(nr, n, str) {\r\n return Array(n - String(nr).length + 1).join(str || '0') + nr;\r\n}\r\nconst months = moment.months();\r\n\r\nconst crumbs = (measuredesc) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Workshop', active: true },\r\n { name: 'Shift Calendar', active: true }\r\n];\r\n\r\nconst colorConfig = {\r\n 0: { color: '#dc3545', name: 'Dormant' },\r\n 3: { color: '#28a745', name: 'Active' },\r\n 2: { color: '#E829E8', name: 'PM commence' },\r\n 1: { color: '#33FFFF', name: 'AM continue' }\r\n};\r\n\r\nconst ShiftCalenderComp = () => {\r\n const [state, setState] = useState({\r\n data: {},\r\n branchList: [],\r\n shiftList: [],\r\n yearList: [],\r\n branchID: { id: '', name: '' },\r\n shiftID: { id: '', name: '' },\r\n yearID: { id: '', name: '' },\r\n screenMsg: 'Please Select The Branch'\r\n });\r\n const [calender, setCalender] = useState([]);\r\n\r\n useEffect(async () => {\r\n let DropDownRes = await getReportsDropdowns();\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n branchList: DropDownRes.data.branch\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(async () => {\r\n if (state.branchID?.id) {\r\n let DropDownRes = await GetShiftCalenderScreenDropdowns(state.branchID.id);\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n shiftList: DropDownRes.data.code.map((m) => ({ id: m.code, name: m.description })),\r\n yearList: DropDownRes.data.year.map((m) => ({ id: m.year, name: `${m.year}` })),\r\n screenMsg: 'Please Select Shift and Year'\r\n }));\r\n }\r\n }\r\n }, [state.branchID?.id]);\r\n\r\n useEffect(async () => {\r\n if (state.branchID?.id && state.shiftID?.id && state.yearID?.id) {\r\n const res = await GetShiftCalender(state.branchID.id, state.shiftID.id, state.yearID.id);\r\n let data = res.data.list.length > 0 ? res.data.list[0] : {};\r\n\r\n setState((st) => ({\r\n ...st,\r\n data: { ...data },\r\n screenMsg: res.data.list.length > 0 ? '' : 'No Record Found'\r\n }));\r\n }\r\n }, [state.branchID, state.shiftID, state.yearID]);\r\n\r\n useEffect(async () => {\r\n let localDaysCounter = 0;\r\n if (!_.isEmpty(state.data)) {\r\n var finalCalendar = [];\r\n\r\n months.forEach((month, monthIndex) => {\r\n var tempMonthData = [];\r\n\r\n const weekStartDate = moment([2022, monthIndex]).clone().startOf('month').startOf('isoWeek');\r\n const monthStartDate = moment([2022, monthIndex]).clone().startOf('month').subtract(1, 'd');\r\n\r\n const endDate = moment([2022, monthIndex]).clone().endOf('month');\r\n\r\n const day = weekStartDate.clone().subtract(1, 'day');\r\n\r\n while (day.isBefore(endDate, 'day')) {\r\n tempMonthData.push(\r\n Array(7)\r\n .fill(0)\r\n .map(() => {\r\n day.add(1, 'day');\r\n if (day.isAfter(monthStartDate, 'day') && day.isSameOrBefore(endDate, 'day')) {\r\n localDaysCounter += 1;\r\n return {\r\n day: day.clone().format('DD'),\r\n code: state.data[`active${padLeft(localDaysCounter, 3)}`]\r\n };\r\n } else {\r\n return null;\r\n }\r\n })\r\n );\r\n }\r\n finalCalendar.push({ monthName: month, monthData: tempMonthData });\r\n });\r\n setCalender(finalCalendar);\r\n } else {\r\n setCalender([]);\r\n }\r\n }, [state.data]);\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n if (name == 'branchID') {\r\n setCalender([]);\r\n }\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n\r\n if (name == 'branchID') {\r\n nst.shiftID = '';\r\n nst.yearID = '';\r\n nst.screenMsg = 'Please Select Shift and Year';\r\n }\r\n\r\n return nst;\r\n });\r\n };\r\n\r\n const singleSelectChange = (nm) => (ev, val) => {\r\n if (nm == 'branchID') {\r\n setCalender([]);\r\n }\r\n setState((st) => {\r\n let newSt = { ...st, [nm]: val };\r\n if (nm == 'branchID') {\r\n newSt.shiftID = { id: '', name: '' };\r\n newSt.yearID = { id: '', name: '' };\r\n newSt.screenMsg = 'Please Select Shift and Year';\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n Branch\r\n \r\n \r\n \r\n \r\n \r\n Shift\r\n \r\n \r\n \r\n \r\n \r\n Year\r\n \r\n \r\n */}\r\n\r\n \r\n \r\n Branch\r\n \r\n \r\n \r\n \r\n \r\n Shift\r\n \r\n \r\n \r\n \r\n \r\n Year\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {Object.keys(colorConfig).map(function (key, i) {\r\n return (\r\n \r\n
{colorConfig[key].name}
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n \r\n {calender.length > 0 ? (\r\n \r\n {calender.map((a, i) => (\r\n \r\n \r\n \r\n \r\n \r\n {a.monthName}\r\n
\r\n \r\n \r\n \r\n Mon\r\n Tue\r\n Wed\r\n Thu\r\n Fri\r\n Sat\r\n Sun\r\n \r\n {a.monthData.map((p) => (\r\n \r\n {p.map((q) => (\r\n \r\n {q !== null ? q.day : ''}\r\n \r\n ))}\r\n \r\n ))}\r\n \r\n \r\n ))}\r\n \r\n ) : (\r\n \r\n \r\n {state.screenMsg}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ShiftCalenderComp;\r\n","import { Grid } from '@material-ui/core';\r\nimport moment from 'moment';\r\nimport React from 'react';\r\nimport { useState } from 'react';\r\nimport { useEffect } from 'react';\r\n\r\nconst DailyHoursData = (props) => {\r\n const [state, setState] = useState({\r\n dayHoursList: [],\r\n reasonForXvail: []\r\n });\r\n\r\n useEffect(() => {\r\n let dayString = props.dayData.extraAvailability.active.split('');\r\n let uniqueCodes = [...new Set(dayString)];\r\n let filterdReasonForXvail = [];\r\n uniqueCodes.forEach((p) => {\r\n let obj = props.reasonForXvail.find((q) => q.code == p);\r\n if (obj) {\r\n filterdReasonForXvail.push({ ...obj });\r\n }\r\n });\r\n let startTime = moment().clone().startOf('date');\r\n let temp = dayString.map((o) => {\r\n return { time: `${startTime.format('HH:mm')} - ${startTime.add('m', 15).format('HH:mm')}`, code: o };\r\n });\r\n\r\n setState((st) => ({\r\n ...st,\r\n dayHoursList: temp,\r\n reasonForXvail: filterdReasonForXvail\r\n }));\r\n }, [props]);\r\n\r\n const getResoneData = (code) => {\r\n let obj = state.reasonForXvail.find((p) => p.code == code);\r\n return obj;\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n {state.reasonForXvail.map((q) => {\r\n return (\r\n \r\n
{q.description}
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n \r\n \r\n {state.dayHoursList.map((p) => {\r\n return (\r\n \r\n \r\n {p.time}\r\n
\r\n \r\n );\r\n })}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DailyHoursData;\r\n","import { FormLabel, Grid, InputLabel } from '@material-ui/core';\r\nimport _ from 'lodash';\r\nimport moment from 'moment';\r\nimport React, { useEffect, useState } from 'react';\r\nimport BreadCrumbs from '../../../../../Core/Controls/Breadcrumb';\r\nimport DialogComp from '../../../../../Core/Controls/Dialog/DialogComp';\r\nimport { SelectBox, SingelSelect } from '../../../../../Core/FormInput';\r\nimport { getReportsDropdowns, GetResourceCalendar, GetResourceCalendarScreenDropdowns } from '../../../../../Core/Service/reportService';\r\nimport DailyHoursData from './dailyHoursDataModal';\r\n\r\nfunction padLeft(nr, n, str) {\r\n return Array(n - String(nr).length + 1).join(str || '0') + nr;\r\n}\r\nconst months = moment.months();\r\n\r\nconst crumbs = (measuredesc) => [\r\n { name: 'Home', path: '/' },\r\n { name: 'Workshop', active: true },\r\n { name: 'Resource Calendar', active: true }\r\n];\r\n\r\nconst colorConfig = {\r\n 0: { colour: 'BLUE', textColor: '#fff', description: 'Holidays' },\r\n 1: { colour: '#00ff00', textColor: '#000', description: 'Able' },\r\n 2: { colour: '#E829E8', textColor: '#fff' },\r\n 3: { colour: '#28a745', textColor: '#fff' }\r\n};\r\n\r\nconst ResourceCalenderComp = () => {\r\n const [state, setState] = useState({\r\n data: {},\r\n branchList: [],\r\n shiftList: [],\r\n yearList: [],\r\n branchID: { id: '', name: '' },\r\n shiftID: { id: '', name: '' },\r\n yearID: { id: '', name: '' },\r\n reasonForXvail: [],\r\n extraAvailability: [],\r\n screenMsg: 'Please Select The Branch'\r\n });\r\n const [calender, setCalender] = useState([]);\r\n\r\n const getResoneData = (data) => {\r\n if (data.extraAvailability) {\r\n let obj = state.reasonForXvail.find((p) => p.code == data.code);\r\n return obj;\r\n } else {\r\n return colorConfig[data.code];\r\n }\r\n };\r\n\r\n useEffect(async () => {\r\n let DropDownRes = await getReportsDropdowns();\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n branchList: DropDownRes.data.branch\r\n }));\r\n }\r\n }, []);\r\n\r\n useEffect(async () => {\r\n if (state.branchID?.id) {\r\n let DropDownRes = await GetResourceCalendarScreenDropdowns(state.branchID.id);\r\n if (DropDownRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n shiftList: DropDownRes.data.code.map((m) => ({ id: m.code, name: m.nameDescription })),\r\n yearList: DropDownRes.data.year.map((m) => ({ id: m.year, name: `${m.year}` })),\r\n screenMsg: 'Please Select Resource and Year'\r\n }));\r\n }\r\n }\r\n }, [state.branchID?.id]);\r\n\r\n useEffect(async () => {\r\n if (state.branchID?.id && state.shiftID?.id && state.yearID?.id) {\r\n const res = await GetResourceCalendar(state.branchID?.id, state.shiftID?.id, state.yearID?.id);\r\n let data = res.data.branches !== null && res.data.branches.length > 0 ? res.data.branches[0] : {};\r\n let reasonForXvail = res.data.reasonForXvail || [];\r\n let extraAvailability = res.data.extraAvailability || [];\r\n setState((st) => ({\r\n ...st,\r\n data: { ...data },\r\n reasonForXvail: reasonForXvail,\r\n extraAvailability: extraAvailability,\r\n screenMsg: res.data.branches !== null && res.data.branches.length > 0 ? '' : 'No Record Found'\r\n }));\r\n }\r\n }, [state.branchID, state.shiftID, state.yearID]);\r\n\r\n useEffect(async () => {\r\n let localDaysCounter = 0;\r\n if (!_.isEmpty(state.data)) {\r\n var finalCalendar = [];\r\n\r\n months.forEach((month, monthIndex) => {\r\n var tempMonthData = [];\r\n\r\n const weekStartDate = moment([2022, monthIndex]).clone().startOf('month').startOf('isoWeek');\r\n const monthStartDate = moment([2022, monthIndex]).clone().startOf('month').subtract(1, 'd');\r\n\r\n const endDate = moment([2022, monthIndex]).clone().endOf('month');\r\n\r\n const day = weekStartDate.clone().subtract(1, 'day');\r\n\r\n while (day.isBefore(endDate, 'day')) {\r\n tempMonthData.push(\r\n Array(7)\r\n .fill(0)\r\n .map(() => {\r\n day.add(1, 'day');\r\n if (day.isAfter(monthStartDate, 'day') && day.isSameOrBefore(endDate, 'day')) {\r\n let code = '';\r\n localDaysCounter += 1;\r\n let obj = state.extraAvailability.find((p) => localDaysCounter == p.dayNumber);\r\n if (obj) {\r\n code = obj.active[0];\r\n } else {\r\n code = state.data[`active${padLeft(localDaysCounter, 3)}`];\r\n }\r\n return {\r\n day: day.clone().format('DD'),\r\n code: code,\r\n extraAvailability: obj\r\n };\r\n } else {\r\n return null;\r\n }\r\n })\r\n );\r\n }\r\n finalCalendar.push({ monthName: month, monthData: tempMonthData });\r\n });\r\n setCalender(finalCalendar);\r\n } else {\r\n setCalender([]);\r\n }\r\n }, [state.data]);\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n if (name == 'branchID') {\r\n setCalender([]);\r\n }\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n\r\n if (name == 'branchID') {\r\n nst.shiftID = '';\r\n nst.yearID = '';\r\n nst.screenMsg = 'Please Select Resource and Year';\r\n }\r\n\r\n return nst;\r\n });\r\n };\r\n\r\n const showDayDataModal = (data) => {\r\n setState((st) => ({\r\n ...st,\r\n showDayDataModal: true,\r\n dayData: data\r\n }));\r\n };\r\n const onShowDayDataModalClose = () => {\r\n setState((st) => ({\r\n ...st,\r\n showDayDataModal: false\r\n }));\r\n };\r\n\r\n const singleSelectChange = (nm) => (ev, val) => {\r\n if (nm == 'branchID') {\r\n setCalender([]);\r\n }\r\n setState((st) => {\r\n let newSt = { ...st, [nm]: val };\r\n if (nm == 'branchID') {\r\n newSt.shiftID = { id: '', name: '' };\r\n newSt.yearID = { id: '', name: '' };\r\n newSt.screenMsg = 'Please Select Resource and Year';\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n Branch\r\n \r\n \r\n \r\n \r\n \r\n Resource\r\n \r\n \r\n \r\n \r\n \r\n Year\r\n \r\n \r\n */}\r\n \r\n \r\n Branch\r\n \r\n \r\n \r\n \r\n \r\n Resource\r\n \r\n \r\n \r\n \r\n \r\n Year\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.reasonForXvail.map((j) => {\r\n return (\r\n \r\n
{j.description}
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n \r\n {calender.length > 0 ? (\r\n \r\n {calender.map((a, i) => (\r\n \r\n \r\n \r\n \r\n \r\n {a.monthName}\r\n
\r\n \r\n \r\n \r\n Mon\r\n Tue\r\n Wed\r\n Thu\r\n Fri\r\n Sat\r\n Sun\r\n \r\n {a.monthData.map((p) => (\r\n \r\n {p.map((q) => (\r\n showDayDataModal(q) : () => false}\r\n >\r\n {q !== null ? q.day : ''}\r\n \r\n ))}\r\n \r\n ))}\r\n \r\n \r\n ))}\r\n \r\n ) : (\r\n \r\n \r\n {state.screenMsg}\r\n \r\n \r\n )}\r\n \r\n \r\n {state.showDayDataModal && (\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default ResourceCalenderComp;\r\n","import React, { useContext, useEffect, useState } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport moment from 'moment';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport { ExpBaseURL } from '../../../Core/Service/http-calls';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\nimport '../../internal/dashboard/dashboard.scss'; //'./dashboard.scss';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { getBranchAndFranchise } from '../../../Core/Service/branch-screen-service';\r\n\r\nvar grid1;\r\nvar $ = window.$;\r\nlet storedFiltterValue = {};\r\nlet branchList = [];\r\nlet franchiseList = [];\r\nconst TechnicianGijgoGrid = (props) => {\r\n const token = AppStorage.getToken();\r\n const [state, setState] = useState({});\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n useEffect(async () => {\r\n if (token) {\r\n let res = await getBranchAndFranchise();\r\n if (res.success) {\r\n branchList = res.data.branches;\r\n franchiseList = res.data.franchiseRecords;\r\n pullArchivedJobsAndUpdateState();\r\n }\r\n } else {\r\n window.location = '/';\r\n AppStorage.performLogout();\r\n }\r\n }, [token, props.getUrl, props.filterList]);\r\n\r\n var GijgoFilterExtension = (function () {\r\n function DropdownFilter(grid, propertyName, dropdown, changeValueConversion) {\r\n var id = $(grid).attr('id');\r\n var rowXPath = '#' + id + ' thead tr[data-role=\"filter\"]';\r\n var filterRow = $(rowXPath);\r\n if ($(filterRow).length == 1) {\r\n var colXPath = 'th [data-field=\"' + propertyName + '\"]';\r\n var filterInput = $(filterRow).find(colXPath);\r\n if ($(filterInput).length) {\r\n $(filterInput).parent().addClass('grid-filter-select-th');\r\n $(dropdown).attr('data-field', propertyName);\r\n $(filterInput).replaceWith(dropdown);\r\n $(dropdown).on('change', function () {\r\n ChangeFilter(grid, propertyName, $(this), changeValueConversion);\r\n });\r\n }\r\n }\r\n }\r\n\r\n function ChangeFilter(grid, propertyName, ddl, changeValueConversion) {\r\n if (changeValueConversion) {\r\n var propArr = changeValueConversion(ddl, propertyName, grid);\r\n $(propArr).each(function (i, obj) {\r\n grid.data().params[obj.propertyName] = obj.value;\r\n });\r\n if (propArr.length) {\r\n grid.reload();\r\n }\r\n } else {\r\n grid.data().params[propertyName] = $(ddl).val();\r\n grid.reload();\r\n }\r\n }\r\n\r\n return {\r\n Dropdown: DropdownFilter\r\n };\r\n })();\r\n\r\n const pullArchivedJobsAndUpdateState = async () => {\r\n window.$('#grid').grid('destroy', true, true);\r\n\r\n const onSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.rows,\r\n total: response.data.total\r\n };\r\n props.getfilterReturnReasone(obj.records);\r\n grid1.render(obj);\r\n };\r\n\r\n grid1 = window.$('#grid').grid({\r\n primaryKey: 'wipNo',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/${props.getUrl}`,\r\n headers: { Authorization: `Bearer ${token}` },\r\n success: onSuccessFunc\r\n },\r\n width: '100%',\r\n headerFilter: {\r\n type: 'onchange'\r\n },\r\n columns: [...props.columns],\r\n pager: props.displayPagination ? { limit: 100 } : false\r\n });\r\n\r\n setTimeout(() => {\r\n storedFiltterValue = JSON.parse(localStorage.getItem('FiltterParams')) || {};\r\n props.columns.forEach((itm) => {\r\n if (storedFiltterValue) {\r\n var id = $(grid1).attr('id');\r\n var rowXPath = '#' + id + ' thead tr[data-role=\"filter\"]';\r\n var filterRow = $(rowXPath);\r\n if ($(filterRow).length == 1) {\r\n var colXPath = 'th [data-field=\"' + `${itm.field}` + '\"]';\r\n var filterInput = $(filterRow).find(colXPath);\r\n if ($(filterInput).length && storedFiltterValue[`${itm.field}`]) {\r\n $(filterInput).val(storedFiltterValue[`${itm.field}`]);\r\n grid1.data().params[itm.field] = storedFiltterValue[`${itm.field}`];\r\n }\r\n }\r\n }\r\n });\r\n if (storedFiltterValue.sortBy && storedFiltterValue.direction) {\r\n grid1.data().params.sortBy = storedFiltterValue.sortBy;\r\n grid1.data().params.direction = storedFiltterValue.direction;\r\n }\r\n grid1.reload();\r\n });\r\n\r\n grid1.on('dataBound', function (e, records, totalRecords) {\r\n let { page, limit, ...rest } = grid1.data().params;\r\n let tempArray = storedFiltterValue;\r\n for (const property in rest) {\r\n tempArray = {\r\n ...tempArray,\r\n [`${property}`]: rest[property]\r\n };\r\n }\r\n localStorage.setItem('FiltterParams', JSON.stringify(tempArray));\r\n\r\n var ddl = $('');\r\n var supCd = grid1.data().params.branchShortName || '';\r\n $(branchList).each(function (i, itm) {\r\n if (supCd.length > 0 && itm.branchShortName == supCd) {\r\n ddl.append(``);\r\n } else {\r\n ddl.append(``);\r\n }\r\n });\r\n GijgoFilterExtension.Dropdown(grid1, 'branchShortName', ddl);\r\n });\r\n\r\n grid1.on('rowDataBound', function (e, $row, id, record) {\r\n $row.css('background-color', `white`);\r\n if (record.returnReasonColourCode) {\r\n $row.css('background-color', `${record.returnReasonColourCode}`);\r\n } else {\r\n const dtDueIn = moment(record.dateDueIn).format('MM/DD/YYYY');\r\n const daysPast = moment().diff(dtDueIn, 'days');\r\n if (daysPast > 40) {\r\n $row.css('background-color', 'orange');\r\n } else if (daysPast > 5) {\r\n $row.css('background-color', 'yellow');\r\n }\r\n }\r\n });\r\n grid1.on('cellDataBound', function (e, $displayEl, id, column, record) {\r\n $displayEl.css('color', `${record.returnReasonTextColourCode}`);\r\n });\r\n // grid1.reload();\r\n };\r\n\r\n const downloadCSVWrapper = () => {\r\n grid1?.downloadCSV(`${props.currentWorkflowLabel}-${moment().format('DD-MMM-YYYY HH:mm')}.csv`);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\nexport default TechnicianGijgoGrid;\r\n","import React, { useEffect, useState, useContext, useMemo } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport { Link } from 'react-router-dom';\r\nimport { EvenSpaceButtonGroup } from '../../../Core/ButtonGroup';\r\nimport './TechnicianApp_screen.css';\r\nimport moment from 'moment';\r\nimport { getTechnicianJobs } from '../../../Core/Service/technician-service';\r\nimport { IconButton, Tooltip } from '@material-ui/core';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport { find } from 'lodash';\r\nimport { getWorkflows } from '../../../Core/Service/workflow-service';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport AssignmentIndIcon from '@material-ui/icons/AssignmentInd';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport Popover from '@material-ui/core/Popover';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport './TechnicianApp_screen.css';\r\n\r\nconst GridInfo = (props) => {\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n\r\n const handleClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const open = Boolean(anchorEl);\r\n const id = open ? 'simple-popover' : undefined;\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n {props?.filterReturnReasone.map((m) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n T\r\n \r\n \r\n \r\n   \r\n {m.returnReason || 'Due date'}\r\n \r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default GridInfo;\r\n","import React, { useEffect, useState, useContext, useMemo } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport { Link } from 'react-router-dom';\r\nimport { BasicButtonGroup, EvenSpaceButtonGroup } from '../../../Core/ButtonGroup';\r\nimport './TechnicianApp_screen.css';\r\nimport moment from 'moment';\r\nimport { getTechnicianJobs } from '../../../Core/Service/technician-service';\r\nimport { IconButton, Tooltip } from '@material-ui/core';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport { find } from 'lodash';\r\nimport { getWorkflows } from '../../../Core/Service/workflow-service';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport AssignmentIndIcon from '@material-ui/icons/AssignmentInd';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport Paper from '@material-ui/core/Paper';\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport Popover from '@material-ui/core/Popover';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport TechnicianGijgoGrid from './Grid';\r\nimport ReactDOM from 'react-dom';\r\nimport GridFilterModal from '../../internal/dashboard/FilterModal';\r\nimport { getGridFilterList, postGridFilterList } from '../../../Core/Service/workflow-service';\r\nimport FilterListIcon from '@material-ui/icons/FilterList';\r\nimport DialogComp from '../../../Core/Modal/dialogModal';\r\nimport GridInfo from './GridInfo';\r\nimport { getAllowedWorkflow } from '../../../Core/Service/workflow-service';\r\nimport MotHistoryScreen from '../../internal/ReportsScreens/MotHistoryScreen';\r\nimport ReportIcon from '@material-ui/icons/Report';\r\nimport StarIcon from '@material-ui/icons/Star';\r\nimport CustomerRating from '../../internal/dashboard/customerRating';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\n\r\nlet currentTechnicianId;\r\n\r\nconst useStyles = (props) =>\r\n makeStyles((thems) => {\r\n return {\r\n ...props\r\n };\r\n });\r\n\r\nconst isFalseValue = (val) => {\r\n if (val == false) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n};\r\n\r\nconst technicianJobBucket = [\r\n { id: 1, label: 'Jobs Assigned To You' },\r\n { id: 3, label: 'Jobs Assigned To Others' }\r\n // { id: 2, label: \"All other Jobs\" },\r\n];\r\n\r\nlet config = {\r\n wipNumber: {\r\n from: 'displayWIPNo',\r\n to: 'userGridColumnDisplayWIPNo'\r\n },\r\n registration: {\r\n from: 'displayVehicleReg',\r\n to: 'userGridColumnDisplayVehicleReg'\r\n },\r\n makeModel: {\r\n from: 'displayModel',\r\n to: 'userGridColumnDisplayModel'\r\n },\r\n customerName: {\r\n from: 'displayCustomer',\r\n to: 'userGridColumnDisplayCustomer'\r\n },\r\n dateDueIn: {\r\n from: 'displayDateDueIn',\r\n to: 'userGridColumnDisplayDateDueIn'\r\n },\r\n dateDueOut: {\r\n from: 'displayDateDueOut',\r\n to: 'userGridColumnDisplayDateDueOut'\r\n },\r\n returnReason: {\r\n from: 'displayReturnReason',\r\n to: 'userGridColumnDisplayReturnReason'\r\n },\r\n branchShortName: {\r\n from: 'displayBranch',\r\n to: 'userGridColumnDisplayBranch'\r\n },\r\n franchiseName: {\r\n from: 'displayFranchise',\r\n to: 'userGridColumnDisplayFranchise'\r\n },\r\n st: {\r\n from: 'displayJobDescription',\r\n to: 'userGridColumnDisplayJobDescription'\r\n },\r\n accountNo: {\r\n from: 'displayAccount',\r\n to: 'userGridColumnDisplayAccount'\r\n },\r\n createdBy: {\r\n from: 'displayCreatedBy',\r\n to: 'userGridColumnDisplayCreatedBy'\r\n },\r\n chassisNumber: {\r\n from: 'displayChassisNumber',\r\n to: 'UserGridColumnDisplayChassisNumber'\r\n },\r\n userName: {\r\n from: 'displayIsTechnician',\r\n to: 'UserGridColumnDisplayIsTechnician'\r\n },\r\n assigned: {\r\n from: 'displayAssignedDate',\r\n to: 'userGridColumnDisplayAssignedDate'\r\n },\r\n taken: {\r\n from: 'displayTimeTaken',\r\n to: 'userGridColumnDisplayTimeTaken'\r\n },\r\n status: {\r\n from: 'displayStatus',\r\n to: 'UserGridColumnDisplayStatus'\r\n },\r\n assignedDays: {\r\n from: 'displayAssignedDays',\r\n to: 'UserGridColumnDisplayAssignedDays'\r\n },\r\n owningOperator: {\r\n from: 'displayOwningOperator',\r\n to: 'UserGridDisplayColumnOwningOperator'\r\n }\r\n};\r\n\r\nconst TechnicianApp = (props) => {\r\n const [state, setState] = useState({\r\n technicianWorkflowId: undefined,\r\n rows: [],\r\n totalRec: 0,\r\n id: null,\r\n btnid: null,\r\n currentTechnicianId: null,\r\n tempObj: {},\r\n filterList: [],\r\n displayPagination: true,\r\n filterReturnReasone: [],\r\n technicianJobBucket: []\r\n });\r\n const { portalSettings, getUserPreference, isAppReaload } = useContext(AppContext);\r\n const canSetCustomerRating = AppStorage.getCanSetCustomerRating();\r\n\r\n let checkCurrentId = state.currentTechnicianId == 1 || state.currentTechnicianId == 3;\r\n let getURL = checkCurrentId ? `TechnicianJobs/${state.currentTechnicianId}` : `WorkflowJobs/GetWorkflow/${state.currentTechnicianId}`;\r\n\r\n const pullAndUpdateState = async () => {\r\n getWorkflows().then((res) => {\r\n if (res.success) {\r\n const wf = find(res.data, (w) => w.isTechnicianWorkflow);\r\n if (wf) {\r\n setState((st) => ({\r\n ...st,\r\n technicianWorkflowId: wf.id\r\n }));\r\n }\r\n }\r\n });\r\n };\r\n\r\n const pullGridFilterList = async () => {\r\n let data = getUserPreference();\r\n if (data) {\r\n setState((st) => ({\r\n ...st,\r\n appbarLocation: data.details[0].appbarLocation || 'T',\r\n languageCode: data.details[0].languageCode,\r\n languageData: data.languages,\r\n tempObj: data.details[0] || {},\r\n displayPagination: isFalseValue(data.details[0]?.displayPagination)\r\n }));\r\n }\r\n };\r\n\r\n useEffect(async () => {\r\n pullAndUpdateState();\r\n let res = await getAllowedWorkflow();\r\n let data = res?.data?.list?.table;\r\n const buttons = res?.data?.list?.table.map((w) => ({\r\n id: w.id,\r\n label: w.label,\r\n displayJobPriorityButton: w.displayJobPriorityButton == 'Y' ? true : false,\r\n displayCustomerRatingButton: w.displayCustomerRatingButton == 'Y' ? true : false\r\n }));\r\n setState((st) => ({\r\n ...st,\r\n technicianJobBucket: [{ id: 1, label: 'Jobs Assigned To You' }, { id: 3, label: 'Jobs Assigned To Others' }, ...buttons]\r\n }));\r\n }, []);\r\n const ratingList = {\r\n 1: ,\r\n 2: ,\r\n 3: \r\n };\r\n const custerRating = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n jobId: val.headerRecordID,\r\n workFlowData: val,\r\n showCustomerRating: true\r\n }));\r\n };\r\n const handleCustmer = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n customerMessage: val,\r\n displayCustomerMessage: true\r\n }));\r\n };\r\n const handleBtnClcik = (m) => {\r\n props.history.push(\r\n `/Job/${m.headerRecordID}/${checkCurrentId ? state.technicianWorkflowId : state.currentTechnicianId}/${m.technicianJobID}/${m.ownJob}`\r\n );\r\n };\r\n\r\n useEffect(() => {\r\n if (isAppReaload) {\r\n pullGridFilterList();\r\n }\r\n }, [isAppReaload]);\r\n\r\n const editButton = (id, val) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n {state.technicianWorkflowId && (\r\n handleBtnClcik(val)}>\r\n \r\n \r\n )}\r\n \r\n \r\n {canSetCustomerRating ? (\r\n <>\r\n {val.customerRatingIcon ? (\r\n \r\n custerRating(val)}>\r\n {ratingList[val.customerRatingIcon]}\r\n \r\n \r\n ) : (\r\n \r\n custerRating(val)}>\r\n \r\n \r\n \r\n )}\r\n \r\n ) : (\r\n state.displayCustomerRatingButton && (\r\n \r\n handleCustmer(val.customerRatingNotes)}>\r\n {ratingList[val.customerRatingIcon]}\r\n \r\n \r\n )\r\n )}\r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const regNumberRendrer = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n setState((st) => ({ ...st, showMotHistory: true, regNo: record?.registration, FranchiseCode: record?.f }))}\r\n style={{ cursor: 'pointer' }}\r\n >\r\n {value}\r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column_new = [\r\n {\r\n field: '',\r\n title: 'Action',\r\n sortable: false,\r\n filterable: false,\r\n renderer: editButton,\r\n width: 80\r\n },\r\n {\r\n field: 'wipNumber',\r\n title: `${portalSettings.portalSettingGridWIPNoLabel || 'WIP No'}`,\r\n sortable: true,\r\n width: 70\r\n },\r\n {\r\n field: 'registration',\r\n title: `${portalSettings.portalSettingGridVehicleRegLabel || 'Vehicle Reg'}`,\r\n renderer: regNumberRendrer,\r\n sortable: true,\r\n width: 90\r\n },\r\n {\r\n field: 'makeModel',\r\n title: `${portalSettings.portalSettingGridModelLabel || 'Model'}`,\r\n sortable: true,\r\n width: 200\r\n },\r\n {\r\n field: 'customerName',\r\n title: `${portalSettings.portalSettingGridCustomerNameLabel || 'Customer Name'}`,\r\n sortable: true,\r\n width: 200\r\n },\r\n {\r\n field: 'dateDueIn',\r\n title: `${portalSettings.portalSettingGridDateDueInLabel || 'Date Due In'}`,\r\n sortable: true,\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '';\r\n }\r\n },\r\n {\r\n field: 'dateDueOut',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridDateDueOutLabel || 'Date Due Out'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueOut != null) {\r\n return moment(record.dateDueOut).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '';\r\n }\r\n },\r\n {\r\n field: 'returnReason',\r\n title: `${portalSettings.portalSettingGridReturnReasonLabel || 'Return Reason'}`,\r\n sortable: true,\r\n width: 190\r\n },\r\n {\r\n field: 'chassisNumber',\r\n title: `${portalSettings.portalSettingGridChassisNumberLabel || 'Chassis Number'}`,\r\n sortable: true,\r\n width: 200\r\n },\r\n {\r\n field: 'branchShortName',\r\n title: `${portalSettings.portalSettingGridBranchLabel || 'Branch'}`,\r\n sortable: true,\r\n width: 120\r\n },\r\n { field: 'franchiseName', sortable: true, title: `${portalSettings.portalSettingGridFranchiseLabel || 'Franchise'}`, width: 160 },\r\n { field: 'st', sortable: true, title: `${portalSettings.portalSettingGridJobDescriptionLabel || 'Job Description'}`, width: 170 },\r\n { field: 'accountNo', sortable: true, title: `${portalSettings.portalSettingGridAccountLabel || 'Account'}`, width: 80 },\r\n {\r\n field: 'userName',\r\n title: 'Technician',\r\n sortable: true,\r\n width: 180\r\n },\r\n {\r\n field: 'assigned',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridAssignedDateLabel || 'Assigned Date'}`,\r\n width: 120,\r\n renderer: function (value, record) {\r\n if (record.assigned != null) {\r\n return moment(record.assigned).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '';\r\n }\r\n },\r\n {\r\n field: 'taken',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridTimeTakenLabel || 'Time Taken'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'status',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridStatusLabel || 'Status'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'assignedDays',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridAssignedDaysLabel || 'Assigned Days'}`,\r\n width: 100\r\n },\r\n {\r\n field: 'owningOperator',\r\n sortable: true,\r\n title: `${portalSettings.portalSettingGridOwningOperatorLabel || 'Owning Operator'}`,\r\n width: 100\r\n }\r\n ].map((c) => {\r\n let obj = {};\r\n if (c.title !== 'Action' && c.field !== 'registration') {\r\n obj.events = {\r\n click: function (e) {\r\n props.history.push(\r\n `/Job/${e.data.record.headerRecordID}/${checkCurrentId ? state.technicianWorkflowId : state.currentTechnicianId}/${\r\n e.data.record.technicianJobID\r\n }/${e.data.record.ownJob}`\r\n );\r\n }\r\n };\r\n if (Object.keys(state.tempObj).length > 0) {\r\n obj.hidden = !state.tempObj[config[c.field].from];\r\n } else {\r\n obj.hidden = false;\r\n }\r\n }\r\n return {\r\n ...c,\r\n ...obj,\r\n headerCssClass: 'gridHeader'\r\n };\r\n });\r\n\r\n if (state.currentTechnicianId == 1) {\r\n let isTechnicianIndex = column_new.findIndex((q) => q.field == 'userName');\r\n column_new.splice(isTechnicianIndex, 1);\r\n }\r\n\r\n const buttonClicked = async (btn) => {\r\n setState((st) => ({\r\n ...st,\r\n currentTechnicianId: btn.id,\r\n currentWorkflowLabel: btn.label,\r\n displayCustomerRatingButton: btn.displayCustomerRatingButton || false\r\n }));\r\n };\r\n\r\n const closeDialog = (res) => {\r\n setState((st) => ({ ...st, showFilter: false, displayCustomerMessage: false, showCustomerRating: false }));\r\n\r\n res && pullGridFilterList();\r\n };\r\n\r\n const handleOpen = () => {\r\n let tempArr = [...column_new].map((q) => {\r\n return {\r\n field: q.field,\r\n title: q.title,\r\n hidden: !q.hidden,\r\n fieldName: config[q.field]?.to\r\n };\r\n });\r\n // .filter((p) => (p.fieldName !== undefined ? p : null));\r\n tempArr.push({\r\n field: 'pagination',\r\n title: 'Pagination',\r\n hidden: state.displayPagination,\r\n fieldName: 'UserGridColumnDisplayPagination'\r\n });\r\n setState((st) => ({ ...st, showFilter: true, filterList: tempArr }));\r\n };\r\n\r\n const getfilterReturnReasone = (returnReasonelist) => {\r\n const uniqueReturnReasonelist = [...new Map(returnReasonelist.map((item) => [item['returnReason'], item])).values()];\r\n setState((st) => ({ ...st, filterReturnReasone: uniqueReturnReasonelist }));\r\n };\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {state.currentTechnicianId && state.technicianWorkflowId && (\r\n
\r\n \r\n
\r\n )}\r\n {state.showFilter ? (\r\n closeDialog(false)}>\r\n \r\n \r\n ) : null}\r\n {state.showMotHistory && (\r\n setState((st) => ({ ...st, showMotHistory: false }))} maxWidth=\"md\" fullWidth overflow={'auto'}>\r\n \r\n \r\n )}\r\n {state.showCustomerRating ? (\r\n closeDialog(false)} fullWidth>\r\n \r\n \r\n ) : null}\r\n {state.displayCustomerMessage ? (\r\n closeDialog(false)} fullWidth>\r\n \r\n {state.customerMessage}\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\nexport default TechnicianApp;\r\n","import { createContext, useCallback, useEffect, useState, useRef, useContext } from 'react';\r\nimport { getFailureCodes } from '../../../Core/Service/failureCode-service';\r\nimport { getWorkAccomplishCodes } from '../../../Core/Service/workaccomplished-service';\r\nimport { getTechWriteUp, AddTechWriteUp } from '../../../Core/Service/techWriteUp-service';\r\nimport moment from 'moment';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport AppContext from '../../../App/AppContext';\r\nimport formatters from '../../../Core/Grid/inputFormatter';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport jsPDF from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport _ from 'lodash';\r\nexport const TechWriteScreenContext = createContext();\r\n\r\nexport const TechWriteProvider = (props) => {\r\n const { hideModal, showToast, hideTopNavAndMenu, portalSettings, userRoles } = useContext(AppContext);\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const [inputList, setInputList] = useState([{ technicianNotesItemFault: '', technicianNotesItemDiagnosis: '', technicianNotesItemCause: '' }]);\r\n const isTechnician = userRoles.includes('technician');\r\n\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n\r\n const [masterData, setMasterData] = useState({\r\n failureCodes: [],\r\n workaccomplishcodes: []\r\n });\r\n const [selectedData, setSelectedData] = useState({\r\n selectedFailureCodes: [],\r\n selectedWorkAccomplishCodes: []\r\n });\r\n const signCanvas = useRef({});\r\n const clear = () => {\r\n if (state.imgtechniciansign) {\r\n setState((st) => ({\r\n ...st,\r\n imgtechniciansign: null,\r\n techniciansign: null\r\n }));\r\n } else {\r\n signCanvas.current.clear();\r\n }\r\n };\r\n const [state, setState] = useState({\r\n showModal: false,\r\n fontResize: 16,\r\n technicians: [],\r\n readingtaken: '',\r\n failurereason: [],\r\n timeout: '',\r\n date: '',\r\n timein: '',\r\n mileageout: '',\r\n mileagein: '',\r\n workaccomplished: [],\r\n techniciansign: null,\r\n imgtechniciansign: null,\r\n smoketest: false,\r\n serviceindicator: false,\r\n radiocode: false,\r\n wipNumber: '',\r\n timeclock: false,\r\n registration: '',\r\n id: null,\r\n fields: {},\r\n errors: {},\r\n showGrid: false,\r\n GridID: null,\r\n odometerUnitsVM: [],\r\n technicianNotesReadingUnit: null,\r\n showCircularLoader: true,\r\n technicianNotesJobID: props.match.params?.technicianJobId,\r\n newJOBId: null,\r\n technicianName: '',\r\n technicianDateSigned: '',\r\n teamLeaderName: '',\r\n teamLeaderDateSigned: ''\r\n });\r\n\r\n const handleValidation = () => {\r\n let fields = state.fields;\r\n let errors = {};\r\n const list = [...inputList];\r\n let formIsValid = true;\r\n if (state.date === 'Invalid date') {\r\n formIsValid = false;\r\n errors['date'] = 'Date cannot be empty';\r\n }\r\n if (!state.readingtaken) {\r\n formIsValid = false;\r\n errors['readingtaken'] = 'Reading taken cannot be empty';\r\n }\r\n if (list[0]['technicianNotesItemCause'] === '') {\r\n formIsValid = false;\r\n errors['cause'] = 'Cause cannot be empty';\r\n }\r\n if (list[0]['technicianNotesItemFault'] === '') {\r\n formIsValid = false;\r\n errors['complaint'] = 'Complaint cannot be empty';\r\n }\r\n if (list[0]['technicianNotesItemDiagnosis'] === '') {\r\n formIsValid = false;\r\n errors['cure'] = 'Cure cannot be empty';\r\n }\r\n if (!state.techniciansign) {\r\n formIsValid = false;\r\n errors['techniciansign'] = 'Technician signature cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n useEffect(() => {\r\n const selectedFailure = masterData.failureCodes.filter((w) => state.failurereason.indexOf(w.id) > -1);\r\n const selectedWorkAccomplish = masterData.workaccomplishcodes.filter((w) => state.workaccomplished.indexOf(w.id) > -1);\r\n setSelectedData((st) => ({\r\n ...st,\r\n selectedFailureCodes: selectedFailure,\r\n selectedWorkAccomplishCodes: selectedWorkAccomplish\r\n }));\r\n }, [state.failurereason, state.workaccomplished, masterData.failureCodes, masterData.workaccomplishcodes]);\r\n const Id = props.match.params.jobId;\r\n const isTechReadonly = props.match.params?.isTechReadonly;\r\n\r\n const DisplayGridState = (i) => {\r\n setState((st) => ({\r\n ...st,\r\n showGrid: true,\r\n GridID: i\r\n }));\r\n };\r\n const TechBtnClick = (id) => {\r\n if (state.technicianNotesJobID != id) {\r\n setState((st) => ({\r\n ...st,\r\n technicianNotesJobID: id\r\n }));\r\n }\r\n };\r\n useEffect(async () => {\r\n let res1 = await getWorkAccomplishCodes();\r\n if (res1.success) {\r\n const WorkAccomplishlist = res1.data.map((w) => ({\r\n id: w.workAccomplishedCodeID,\r\n name: w.workAccomplishedDescription\r\n }));\r\n setMasterData((st) => ({\r\n ...st,\r\n workaccomplishcodes: WorkAccomplishlist\r\n }));\r\n }\r\n let res = await getFailureCodes();\r\n if (res.success) {\r\n const failureCode = res.data.map((w) => ({\r\n id: w.failureCode,\r\n name: w.failureDescription\r\n }));\r\n setMasterData((st) => ({ ...st, failureCodes: failureCode }));\r\n }\r\n }, []);\r\n\r\n const canAmendTechWriteUpFlag = AppStorage.getCanAmendTechWriteUp();\r\n\r\n useEffect(async () => {\r\n let result = await getTechWriteUp(Id, state.technicianNotesJobID);\r\n const updatedUser = result?.data;\r\n\r\n if (updatedUser) {\r\n setState((st) => ({\r\n ...st,\r\n technicianNotesJobID: updatedUser.technicianJobID,\r\n newJOBId: updatedUser.technicianJobID,\r\n status: updatedUser.status,\r\n id: updatedUser.technicianNotesHeaderRecordID,\r\n registration: updatedUser.registration,\r\n technicianNotesItemCause: updatedUser.technicianNotestechnicianNotesItemCause,\r\n workaccomplished: updatedUser.techWorkAccomplished.map((m) => m.techWorkAccomplishedCodeID),\r\n failurereason: updatedUser.techFailureCodes.map((m) => m.techFailureCodeID),\r\n technicianNotesItemDiagnosis: updatedUser.technicianNotesActionTaken,\r\n date: formatters.DateFormatter(updatedUser.technicianNotesDate),\r\n readingtaken: updatedUser.technicianNotesReadingTaken || '',\r\n technicianNotesItemFault: updatedUser.technicianNotesFault,\r\n mileagein: updatedUser.technicianNotesMileageIn || '',\r\n mileageout: updatedUser.technicianNotesMileageOut || '',\r\n radiocode: updatedUser.technicianNotesRadioCodeReset,\r\n serviceindicator: updatedUser.technicianNotesServiceIndicatorReset,\r\n smoketest: updatedUser.technicianNotesSmokeTestPerformed,\r\n imgtechniciansign: updatedUser.technicianNotesTechnicianSignature,\r\n techniciansign: updatedUser.technicianNotesTechnicianSignature,\r\n imgteamleadersign: updatedUser.technicianNotesTeamLeaderSignature,\r\n timeclock: updatedUser.technicianNotesTimeClockReset,\r\n timein: pad(updatedUser.technicianNotesTimeIn).toString().replace('.', ':'),\r\n timeout: pad(updatedUser.technicianNotesTimeOut).toString().replace('.', ':'),\r\n wipNumber: updatedUser.wipNumber,\r\n odometerUnitsVM: updatedUser?.odometerUnitsVM?.map((w) => ({\r\n id: w.odometerUnitID,\r\n name: w.odometerUnitDescription\r\n })),\r\n technicianNotesReadingUnit: updatedUser.technicianNotesReadingUnit,\r\n technicians: updatedUser.technicians,\r\n isTechReadonly: !canAmendTechWriteUpFlag && (props.match.params?.technicianJobId == st.technicianNotesJobID && isTechReadonly == 'Y' ? false : true),\r\n showCircularLoader: false,\r\n technicianName: updatedUser.technicianNotesTechnicianName,\r\n technicianDateSigned: formatters.DateTimeFormatter(updatedUser.technicianNotesTechnicianDateSigned),\r\n teamLeaderName: updatedUser.technicianNotesTeamLeaderName,\r\n teamLeaderDateSigned: formatters.DateTimeFormatter(updatedUser.technicianNotesTeamLeaderDateSigned),\r\n customerName: updatedUser.customerName\r\n }));\r\n setInputList(\r\n !updatedUser.technicianNotesItem.length\r\n ? [{ technicianNotesItemFault: '', technicianNotesItemDiagnosis: '', technicianNotesItemCause: '' }]\r\n : updatedUser.technicianNotesItem\r\n );\r\n }\r\n }, [state.technicianNotesJobID]);\r\n\r\n function pad(n) {\r\n return n < 10 ? '0' + n : n;\r\n }\r\n const handleSubmit = async (val) => {\r\n let res = '';\r\n if (!portalSettings.portalSettingDisplaySubmitbutton) {\r\n if (handleValidation()) {\r\n res = await AddTechWriteUp(state, inputList, val);\r\n }\r\n } else {\r\n res = await AddTechWriteUp(state, inputList, val);\r\n }\r\n if (!res.success) {\r\n console.error(res);\r\n } else {\r\n hideModal();\r\n }\r\n showToast(res.message);\r\n if (res.success && fromStep) {\r\n setTimeout(() => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }, 1000);\r\n }\r\n };\r\n\r\n const GetTechnicianSign = (o) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n ...o\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const clearSig = (val) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.teamleadersign = null;\r\n return newSt;\r\n });\r\n };\r\n\r\n const handleCheck = (event) => {\r\n const { name, checked } = event.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: checked };\r\n return nst;\r\n });\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n let fields = state.fields;\r\n fields[name] = value;\r\n setState((st) => {\r\n return { ...st, [name]: value, fields: fields };\r\n });\r\n };\r\n const AutoWorkAccomplish = (event, value) => {\r\n setSelectedData((st) => ({\r\n ...st,\r\n selectedWorkAccomplishCodes: value\r\n }));\r\n setState((st) => {\r\n const nst = { ...st, workaccomplished: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const AutoFrChange = (event, value) => {\r\n setSelectedData((st) => ({ ...st, selectedFailureCodes: value }));\r\n setState((st) => {\r\n const nst = { ...st, failurereason: value.map((c) => c.id) };\r\n return nst;\r\n });\r\n };\r\n\r\n const showConfirmationModal = () => {\r\n if (handleValidation('S')) {\r\n setState((st) => ({ ...st, showConfirmModal: true }));\r\n }\r\n };\r\n\r\n const hideConfirmationModal = () => {\r\n setState((st) => ({ ...st, showConfirmModal: false }));\r\n };\r\n\r\n const GlobalCss = withStyles({\r\n '@global': {\r\n body: {\r\n fontSize: `${state.fontResize ? state.fontResize + 'px' : '0.875rem'}`\r\n },\r\n '.MuiFormLabel-root, .MuiTypography-body1, .MuiButton-root': {\r\n fontSize: `${state.fontResize ? state.fontResize + 'px' : '0.875rem'}`\r\n },\r\n '.MuiOutlinedInput-inputMarginDense': {\r\n fontSize: `${state.fontResize ? state.fontResize + 'px' : '0.875rem'}`,\r\n paddingTop: '4.1px',\r\n paddingBottom: '4.1px'\r\n },\r\n '.MuiOutlinedInput-multiline.MuiOutlinedInput-marginDense': {\r\n paddingTop: '4.1px',\r\n paddingBottom: '4.1px'\r\n }\r\n }\r\n })(() => null);\r\n\r\n const pullAndUpdateState = () => {\r\n setState((st) => ({\r\n ...st,\r\n showGrid: false\r\n }));\r\n };\r\n const getStandartdFromChild = (props) => {\r\n const list = [...inputList];\r\n list[state.GridID]['technicianNotesItemFault'] = props.complaint;\r\n list[state.GridID]['technicianNotesItemDiagnosis'] = props.cure;\r\n list[state.GridID]['technicianNotesItemCause'] = props.cause == null ? '' : props.cause;\r\n setInputList(list);\r\n };\r\n const handleInputChange = (e, index) => {\r\n const { name, value } = e.target;\r\n\r\n const list = [...inputList];\r\n list[index][name] = value;\r\n setInputList(list);\r\n };\r\n const handleRemoveClick = (index) => {\r\n const list = [...inputList];\r\n list.splice(index, 1);\r\n setInputList(list);\r\n };\r\n const handleAddClick = () => {\r\n setInputList([...inputList, { technicianNotesItemFault: '', technicianNotesItemCause: '', technicianNotesItemDiagnosis: '' }]);\r\n };\r\n\r\n const useDefaultSig = () => {\r\n let userSign = AppStorage.getSignature();\r\n if (userSign) {\r\n signCanvas.current.fromDataURL(AppStorage.getSignature());\r\n setState((st) => ({ ...st, techniciansign: AppStorage.getSignature() }));\r\n } else {\r\n showToast('User signature not found');\r\n }\r\n };\r\n const zoomOutFun = () => {\r\n setState((st) => ({ ...st, fontResize: st.fontResize - 1 }));\r\n };\r\n const zoomInFun = (val) => {\r\n setState((st) => ({ ...st, fontResize: st.fontResize + 1 }));\r\n };\r\n const printDocument = () => {\r\n let input = document.getElementById('divToPrint');\r\n let calMaxHeight;\r\n html2canvas(input, {\r\n onclone: (cloned) => {\r\n let textArea = cloned.getElementsByTagName('textarea');\r\n cloned.getElementById('zommContainer').style.display = 'none';\r\n let getHeight = [];\r\n for (var i = 0; i < textArea.length; i++) {\r\n getHeight.push(textArea[i].scrollHeight);\r\n }\r\n calMaxHeight = _.max(getHeight);\r\n for (var i = 0; i < textArea.length; i++) {\r\n const div = document.createElement('div');\r\n const textProp = textArea[i].getBoundingClientRect();\r\n div.innerText = textArea[i].value;\r\n div.style.padding = '2px -3px';\r\n div.style.height = `${calMaxHeight}px`; //`${textProp.height}px`;\r\n div.style.width = `${textProp.width}px`;\r\n div.style.textAlign = 'left';\r\n div.style.color = 'black';\r\n div.style.fontSize = 8;\r\n textArea[i].style.display = 'none';\r\n textArea[i].parentElement.append(div);\r\n }\r\n }\r\n }).then((canvas) => {\r\n const imgData = canvas.toDataURL('image/png');\r\n // const pdf = new jsPDF({\r\n // orientation: 'landscape'\r\n // });\r\n const pdf = new jsPDF('p', 'px', 'a4');\r\n const imgProps = pdf.getImageProperties(imgData);\r\n const pdfWidth = pdf.internal.pageSize.getWidth();\r\n\r\n const pdfHeight = (imgProps.height * pdfWidth) / imgProps.width;\r\n pdf.addImage(imgData, 'PNG', 0, 0, pdfWidth, pdfHeight + calMaxHeight);\r\n // pdf.save('download.pdf');\r\n pdf.save(`TechnitianWriteUp-WIP${state.wipNumber}-${moment().format('DD-MMM-YYYY-HH:mm')}.pdf`);\r\n });\r\n };\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","import React, { useContext } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport { TextBox, SecondaryButton, SecondaryCheckbox, DialogContents, CustomButton, Multiselect } from '../../../Core/FormInput';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { Link } from 'react-router-dom';\r\nimport NoteAddIcon from '@material-ui/icons/NoteAdd';\r\nimport { IconButton } from '@material-ui/core';\r\nimport DisplayGrid from './DisplayGrid';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport AddBoxIcon from '@material-ui/icons/AddBox';\r\nimport RemoveCircleIcon from '@material-ui/icons/RemoveCircle';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport { TechWriteProvider, TechWriteScreenContext } from './TechWriteProvider';\r\nimport Button from '@material-ui/core/Button';\r\nimport './TechnicianStyle.scss';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport { InputLabel } from '@material-ui/core';\r\nimport ConfirmationModal from '../../../Core/Controls/Dialog/ConfirmationModal';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport ZoomInIcon from '@material-ui/icons/ZoomIn';\r\nimport ZoomOutIcon from '@material-ui/icons/ZoomOut';\r\nimport { CustomeSignPad } from '../../../Core/SignaturePad';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\n\r\nconst TechWriteUp = (props) => {\r\n const {\r\n printDocument,\r\n TechBtnClick,\r\n fromStep,\r\n masterData,\r\n state,\r\n selectedData,\r\n clear,\r\n DisplayGridState,\r\n GetTechnicianSign,\r\n handleSubmit,\r\n handleCheck,\r\n fieldChange,\r\n AutoWorkAccomplish,\r\n GlobalCss,\r\n AutoFrChange,\r\n handleAddClick,\r\n handleRemoveClick,\r\n handleInputChange,\r\n getStandartdFromChild,\r\n pullAndUpdateState,\r\n inputList,\r\n portalSettings,\r\n showConfirmationModal,\r\n hideConfirmationModal,\r\n zoomOutFun,\r\n zoomInFun,\r\n clearSig,\r\n isTechnician\r\n } = useContext(TechWriteScreenContext);\r\n const hideBrace = state.technicianName || state.technicianDateSigned;\r\n const hideBrace2 = state.teamLeaderName || state.teamLeaderDateSigned;\r\n const ShowSubmit = state.status === 'TS'; //imgteamleadersign-Workshop controller Signature\r\n const canAmendTechWriteUpFlag = AppStorage.getCanAmendTechWriteUp();\r\n\r\n const TabBody = (jobID) => {\r\n return (\r\n <>\r\n \r\n \r\n \r\n Date\r\n \r\n \r\n {state.errors['date']}\r\n \r\n \r\n \r\n Odometer Reading\r\n \r\n \r\n {state.errors['readingtaken']}\r\n \r\n \r\n Odometer Reading Unit\r\n \r\n {state.odometerUnitsVM?.length > 0 &&\r\n state.odometerUnitsVM.map((option) => (\r\n \r\n {option.name}\r\n \r\n ))}\r\n \r\n \r\n \r\n {inputList.map((x, i) => (\r\n \r\n \r\n \r\n Complaint\r\n \r\n {\r\n DisplayGridState(i);\r\n }}\r\n style={{\r\n padding: '1px',\r\n marginTop: '-9px',\r\n marginLeft: '10px'\r\n }}\r\n disabled={state.isTechReadonly}\r\n >\r\n \r\n \r\n \r\n \r\n handleInputChange(e, i)}\r\n multiline\r\n disabled={state.isTechReadonly}\r\n rows={portalSettings.portalSettingTechnWriteupHeight || 4}\r\n />\r\n {state.errors['complaint']}\r\n \r\n\r\n \r\n \r\n Cause\r\n \r\n handleInputChange(e, i)}\r\n multiline\r\n rows={portalSettings.portalSettingTechnWriteupHeight || 4}\r\n />\r\n {state.errors['cause']}\r\n \r\n \r\n \r\n Cure\r\n \r\n {inputList.length !== 1 && (\r\n \r\n handleRemoveClick(i)} className=\"rightButton\">\r\n \r\n \r\n \r\n )}\r\n {inputList.length - 1 === i && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n handleInputChange(e, i)}\r\n multiline\r\n rows={portalSettings.portalSettingTechnWriteupHeight || 4}\r\n />\r\n {state.errors['cure']}\r\n \r\n \r\n ))}\r\n \r\n {!portalSettings.workflowStepOptionsAsButtonGroup && (\r\n <>\r\n \r\n Work Accomplished\r\n \r\n \r\n \r\n Failure Reasons\r\n \r\n \r\n \r\n )}\r\n\r\n \r\n
\r\n Diagnostic Road Test\r\n \r\n \r\n Mileage In\r\n \r\n \r\n \r\n Mileage Out\r\n \r\n \r\n \r\n Time In\r\n \r\n \r\n \r\n Time Out\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n }\r\n label=\"Smoke Test Performed\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Service Indicator Reset\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Radio Code Reset\"\r\n />\r\n \r\n \r\n \r\n }\r\n label=\"Time Clock Reset\"\r\n />\r\n \r\n \r\n \r\n Technician {hideBrace ? ({`${state.technicianName || ''} ${state.technicianDateSigned}`}) : ' Signature'}\r\n \r\n }\r\n sign={state.imgtechniciansign}\r\n name=\"techniciansign\"\r\n hideBtn={!isTechnician}\r\n clearSig={clearSig}\r\n />\r\n {state.errors['techniciansign']}\r\n \r\n\r\n {state.imgteamleadersign && (\r\n \r\n \r\n Workshop Controller\r\n {hideBrace2 ? ({`${state.teamLeaderName || ''} ${state.teamLeaderDateSigned}`}) : ' Signature'}\r\n \r\n }\r\n sign={state.imgteamleadersign}\r\n name=\"teamleadersign\"\r\n hideBtn={true}\r\n />\r\n \r\n )}\r\n {/* {!state.isTechReadonly && ( */}\r\n \r\n {!ShowSubmit\r\n ? !state.imgteamleadersign &&\r\n (isTechnician || canAmendTechWriteUpFlag) && (\r\n \r\n \r\n {'\\u{2800}'}\r\n handleSubmit('T')}>\r\n Save\r\n \r\n \r\n {portalSettings.portalSettingDisplaySubmitbutton && (\r\n \r\n {'\\u{2800}'}\r\n \r\n Submit\r\n \r\n \r\n )}\r\n \r\n )\r\n : null}\r\n \r\n {/* )} */}\r\n
\r\n {state.showConfirmModal ? (\r\n \r\n handleSubmit('S')}\r\n handleCancel={hideConfirmationModal}\r\n />\r\n \r\n ) : null}\r\n \r\n );\r\n };\r\n\r\n return (\r\n <>\r\n {state.showGrid ? : null}\r\n \r\n {!fromStep && (\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Technician App\r\n \r\n \r\n Technician Write-up\r\n \r\n \r\n )}\r\n
\r\n \r\n \r\n Registration Number:  {state.registration}\r\n \r\n WIP No:  {state.wipNumber}\r\n \r\n \r\n Customer:  {state.customerName}\r\n \r\n \r\n Zoom\r\n \r\n \r\n \r\n \r\n \r\n {state.showCircularLoader ? (\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n {state.technicians.map((m) => (\r\n
\r\n TechBtnClick(m.technicianJobID)}\r\n >\r\n {m.technician}\r\n \r\n
\r\n ))}\r\n\r\n {TabBody()}\r\n \r\n )}\r\n
\r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nconst Screen = (props) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\nexport default Screen;\r\n","import React, { useContext, useState, useEffect, useMemo, useRef } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, SecondaryButton, DialogContents, DialogTitles, Dialogs, UploadWithBadge } from '../../../Core/FormInput';\r\nimport '../../../Core/Modal/model.css';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport { getPartReqs, addPartReq } from '../../../Core/Service/partRequisitions-service';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport { IconButton } from '@material-ui/core';\r\nimport EditOutlinedIcon from '@material-ui/icons/EditOutlined';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { Link } from 'react-router-dom';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Button from '@material-ui/core/Button';\r\nimport './TechnicianStyle.scss';\r\nimport { CustomeSignPad } from '../../../Core/SignaturePad';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport { isInteger, some } from 'lodash';\r\nimport { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\nimport ConfirmationModal from '../../../Core/Controls/Dialog/ConfirmationModal';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport PartReqPhotoModal from './PartReqPhotoUploadmodal';\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport PartReqOtherInfo from './RequestorApproverIssuerInfo';\r\nimport { postPhotosByPartReqID } from '../../../Core/Service/partRequisitions-service';\r\n\r\nconst styles = {\r\n gridImage: { width: 60, height: 'auto', backgroundSize: 'cover', marginTop: '5%' },\r\n gridImageContainer: { width: '100%', textAlign: 'center' }\r\n};\r\n\r\nconst PartRequisitionsModal = (props) => {\r\n const { showToast, hideTopNavAndMenu, userRoles } = useContext(AppContext);\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const [windowWidths, windowHeight] = useWindowSize();\r\n\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n\r\n const [btnLoader, setBtnLoader] = useState({ btn1: false, btn2: false });\r\n\r\n const [state, setState] = useState({\r\n part: '',\r\n quantity: undefined,\r\n rows: [],\r\n partReq: [],\r\n isUpdate: false,\r\n partId: null,\r\n technicianJobId: null,\r\n technician: [],\r\n wipDetails: [],\r\n partReqTechnicianSignature: null,\r\n errors: {},\r\n imgPreview: false,\r\n signature: null,\r\n checkIssued: null,\r\n showImage: false\r\n });\r\n const Id = props.match.params.jobId;\r\n\r\n const GlobalCss = withStyles({\r\n '@global': {\r\n '.MuiOutlinedInput-inputMarginDense': {\r\n paddingTop: '4.1px',\r\n paddingBottom: '4.1px'\r\n }\r\n }\r\n })(() => null);\r\n\r\n const handleUpdatePart = (params) => {\r\n const row = params.value.row;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n id: params.value.row.id,\r\n part: row.partReqPartDescription,\r\n quantity: row.partReqQuantity,\r\n isUpdate: true,\r\n partId: params.value.row.id\r\n };\r\n return nst;\r\n });\r\n };\r\n const handleDeletePart = (params) => {\r\n const id = params.value.row.id;\r\n const newList = state.rows.filter((item) => item.id !== id);\r\n let newPartToSetIsDelete = {\r\n id: params.value.row.id,\r\n partReqPartDescription: params.value.row.partReqPartDescription,\r\n partReqQuantity: params.value.row.partReqQuantity,\r\n isDeleted: true\r\n };\r\n newList.push(newPartToSetIsDelete);\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n rows: newList\r\n };\r\n return nst;\r\n });\r\n };\r\n const setImgPreview = (val, data = null, date) => {\r\n setState((st) => ({ ...st, imgPreview: val, signature: data, sigDate: date }));\r\n };\r\n\r\n const changeQantity = (id, des, name) => (e) => {\r\n let changedArray = [...state.rows];\r\n // let temp = [...state.changedRecordIds];\r\n let objIndex = state.rows.findIndex((x) => x.id === id);\r\n changedArray[objIndex][name] = e.target.value;\r\n // let findIDExist = temp.find((a) => a == id);\r\n // if (!findIDExist) {\r\n // temp.push(id);\r\n // }\r\n setState((st) => ({\r\n ...st,\r\n rows: changedArray\r\n // changedRecordIds: temp\r\n }));\r\n };\r\n\r\n const onImagemodalClose = (res) => {\r\n setState((st) => ({ ...st, showImage: false, partId: null, desc: '' }));\r\n makeEmptyPhotos('oldPhoto');\r\n res && pullWorkflowAndUpdateState();\r\n };\r\n const [data, setData] = useState({ showInfo: false });\r\n const setShowInfo = (val) => {\r\n if (val.requestor) {\r\n setData((st) => ({\r\n ...st,\r\n showInfo: true,\r\n requestor: val.requestor,\r\n requestorSign: val.requestorSignature,\r\n requestorDate: val.requestedTime,\r\n issuer: val.issuer,\r\n issuerSign: val.issuerSignature,\r\n issuerDate: val.issuedTime,\r\n approver: val.approver,\r\n approverSign: val.approverSignature,\r\n approverDate: val.approvedTime\r\n }));\r\n }\r\n };\r\n\r\n const columns = [\r\n {\r\n field: 'partReqPartDescription',\r\n headerName: 'Part',\r\n flex: 1,\r\n renderCell: (params) => {\r\n return (\r\n \r\n );\r\n }\r\n },\r\n {\r\n field: 'partReqQuantity',\r\n headerName: 'Qty',\r\n width: 100,\r\n renderCell: (params) => {\r\n return (\r\n
\r\n {!params.row.partReqQuantity && *}\r\n \r\n
\r\n );\r\n }\r\n },\r\n { field: 'issueStatus', headerName: 'Issue Status', width: 230 },\r\n {\r\n field: '',\r\n headerName: '',\r\n width: 140,\r\n sortable: false,\r\n renderCell: (params) => (\r\n
= 0 ? 'pointer' : ''}` }}>\r\n 0 || 0}\r\n count={params.row.photosUploaded || 0}\r\n onClick={() =>\r\n params.row.photosUploaded >= 0 &&\r\n setState((st) => ({ ...st, partId: params.row.id, desc: params.row.partReqPartDescription, showImage: true }))\r\n }\r\n />\r\n setShowInfo(params.row)} />\r\n
\r\n )\r\n }\r\n ];\r\n const isTechnician = userRoles.includes('technician');\r\n const isAuditor = userRoles.includes('auditor');\r\n\r\n const new_columns = useMemo(() => {\r\n const tempCols = [...columns];\r\n if (state.checkIssued) {\r\n tempCols.splice(0, 2, { field: 'qnIssued', headerName: 'Issued', width: 140 });\r\n }\r\n return tempCols;\r\n }, [columns]);\r\n\r\n const technicianJobId = props.match.params?.technicianJobId;\r\n useEffect(async () => {\r\n setState((st) => ({\r\n ...st,\r\n technicianNotesJobID: technicianJobId\r\n }));\r\n }, []);\r\n\r\n useEffect(() => {\r\n pullWorkflowAndUpdateState();\r\n }, [state.technicianNotesJobID]);\r\n\r\n const TechBtnClick = (id) => {\r\n setState((st) => ({\r\n ...st,\r\n technicianNotesJobID: id\r\n }));\r\n };\r\n\r\n const pullWorkflowAndUpdateState = async () => {\r\n let result = await getPartReqs(Id, state.technicianNotesJobID);\r\n const Result = result.data?.partReqs?.map((row) => ({\r\n id: row.partReqID,\r\n partReqPartDescription: row.partReqPartDescription,\r\n partReqQuantity: row.partReqQuantity,\r\n isDeleted: false,\r\n disabled: row.issuerSignature && row.approverSignature,\r\n isApproved: row.isApproved,\r\n qnIssued: row.partReqIssuedQuantity,\r\n requestor: row.requestor,\r\n approver: row.approver,\r\n partReqStatusDescription: row.partReqStatusDescription,\r\n issuer: row.issuer,\r\n issueStatus: row.issueStatus,\r\n requestorSignature: row.requestorSignature,\r\n issuerSignature: row.issuerSignature,\r\n approverSignature: row.approverSignature,\r\n partReqId: row.partReqID,\r\n requestedTime: row.requestedTime,\r\n issuedTime: row.issuedTime,\r\n approvedTime: row.approvedTime,\r\n photosUploaded: row.photosUploaded,\r\n Photos: [],\r\n oldPhoto: []\r\n }));\r\n if (result.success) {\r\n setState((st) => ({\r\n ...st,\r\n rows: Result,\r\n technician: result.data?.technician,\r\n wipDetails: result.data?.wipDetails[0],\r\n checkIssued: some(result.data.partReqs, (r) => r.qnIssued)\r\n // technicianSignature: result.data.partReqs[0]?.partReqTechnicianSignature,\r\n // partReqTechnicianSignature: result.data.partReqs[0]?.partReqTechnicianSignature\r\n }));\r\n }\r\n if (!result.success) {\r\n showToast(result.message);\r\n }\r\n };\r\n\r\n const addPartToLocally = () => {\r\n if (state.quantity === null) {\r\n showToast('Quantity is required');\r\n } else {\r\n let newPartToAdd = {\r\n partReqPartDescription: state.part,\r\n partReqQuantity: state.quantity,\r\n qnIssued: '-',\r\n isDeleted: +state.quantity === 0,\r\n ...(state.partId && { partReqId: state.partId || null })\r\n };\r\n setState((st) => ({\r\n ...st,\r\n rows: state.rows.filter((item) => item.id !== state.partId)\r\n }));\r\n setState((st) => {\r\n newPartToAdd.id = st.rows.length === 0 ? 1 : Math.max(...st.rows.map((c) => c.id)) + 1;\r\n return {\r\n ...st,\r\n rows: [...st.rows, newPartToAdd],\r\n part: '',\r\n quantity: '',\r\n isUpdate: false,\r\n partId: undefined\r\n };\r\n });\r\n }\r\n };\r\n\r\n const validations = (mode) => {\r\n const { partReqTechnicianSignature } = state;\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (!partReqTechnicianSignature) {\r\n errors.partReqTechnicianSignature = 'Technician signature is required';\r\n formIsValid = false;\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return formIsValid;\r\n };\r\n\r\n const handelAddPartToServer = async (mode) => {\r\n if (isTechnician) {\r\n if (state.rows?.length > 0) {\r\n addPart(mode);\r\n } else {\r\n showToast('Please add least one part');\r\n }\r\n } else {\r\n addPart(mode);\r\n }\r\n };\r\n const addPart = async (mode) => {\r\n mode == 'save' ? setBtnLoader((st) => ({ ...st, btn2: true })) : setBtnLoader((st) => ({ ...st, btn1: true }));\r\n const data = {\r\n partReqTechnicianSignature: state.partReqTechnicianSignature,\r\n partReqsAddVM: state.rows.map((c) => ({\r\n partReqQuantity: c.partReqQuantity,\r\n partReqPartDescription: c.partReqPartDescription,\r\n isDeleted: c.isDeleted,\r\n partReqId: c.partReqId\r\n })),\r\n mode: mode\r\n };\r\n let res1 = await postPhotosByPartReqID(state.rows);\r\n let res = await addPartReq(Id, data, state.technicianNotesJobID);\r\n if (!res.success) {\r\n console.error(res);\r\n }\r\n showToast(res.message);\r\n if (res.success && fromStep) {\r\n mode == 'save' ? setBtnLoader((st) => ({ ...st, btn2: false })) : setBtnLoader((st) => ({ ...st, btn1: false }));\r\n setTimeout(() => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }, 1000);\r\n }\r\n };\r\n\r\n const showConfirmationModal = () => {\r\n if (validations()) {\r\n setState((st) => ({ ...st, showConfirmModal: true }));\r\n }\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n return { ...st, [name]: value };\r\n });\r\n };\r\n\r\n const signChange = (e) => {\r\n setState((st) => {\r\n return { ...st, ...e };\r\n });\r\n };\r\n\r\n const clearSig = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n partReqTechnicianSignature: null\r\n }));\r\n };\r\n\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No parts available
\r\n
\r\n );\r\n }\r\n\r\n const gridheight = `calc(100vh - ${isTechnician ? '348px' : '274px'})`;\r\n\r\n const inputFile = useRef(null);\r\n\r\n const upload = async (e) => {\r\n const files = Array.from(e.target.files);\r\n\r\n files.map((file) => {\r\n const reader = new FileReader();\r\n reader.readAsText(file);\r\n\r\n reader.onload = () => {\r\n const res = reader.result.split('\\n');\r\n res.splice(0, 1);\r\n\r\n res.map((row) => {\r\n const parts = row.split('|');\r\n\r\n const partDesc = parts[0] + ' - ' + parts[1] + ' - ' + parts[5];\r\n const quantity = parts[2];\r\n\r\n if (row == '' || quantity == '') return;\r\n\r\n let newPartToAdd = {\r\n partReqPartDescription: partDesc,\r\n partReqQuantity: quantity % 1 == 0 ? Math.trunc(quantity) : quantity,\r\n qnIssued: '-'\r\n };\r\n\r\n setState((st) => {\r\n newPartToAdd.id = st.rows.length === 0 ? 1 : Math.max(...st.rows.map((c) => c.id)) + 1;\r\n return {\r\n ...st,\r\n rows: [...st.rows, newPartToAdd],\r\n part: '',\r\n quantity: '',\r\n isUpdate: false,\r\n partId: undefined\r\n };\r\n });\r\n });\r\n };\r\n\r\n reader.onerror = () => {\r\n console.log('Error reading .xfr File');\r\n };\r\n });\r\n };\r\n\r\n const makeEmptyPhotos = (name) => {\r\n let changedArray = [...state.rows];\r\n let objIndex = state.rows.findIndex((x) => x.partReqId === state.partId);\r\n changedArray[objIndex][name] = [];\r\n setState((st) => ({ ...st, rows: changedArray }));\r\n };\r\n const setPhotos = (name) => {\r\n setState((st) => ({ ...st, name }));\r\n };\r\n\r\n return (\r\n
\r\n \r\n {!fromStep && (\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Technician App\r\n \r\n \r\n Part Requisitions\r\n \r\n \r\n )}\r\n \r\n \r\n {state.technician.map((m) => (\r\n
\r\n TechBtnClick(m.technicianJobID)}\r\n >\r\n {m.technician}\r\n \r\n
\r\n ))}\r\n
\r\n
\r\n \r\n \r\n {data.showInfo && setData((st) => ({ ...st, showInfo: false }))} />}\r\n {state.showImage && (\r\n onImagemodalClose(false)} fullWidth maxWidth=\"lg\">\r\n pullWorkflowAndUpdateState()}\r\n desc={state.desc}\r\n onClose={onImagemodalClose}\r\n onImageChange={setPhotos}\r\n rows={state.rows}\r\n />\r\n \r\n )}\r\n {state.imgPreview ? (\r\n setImgPreview(false)} fullWidth maxWidth=\"md\">\r\n
\r\n
{state.sigDate}
\r\n {'stamp'}\r\n
\r\n
\r\n ) : null}\r\n \r\n Registration Number:  {state.wipDetails?.registration}   WIP No:  {state.wipDetails?.wipNumber}\r\n \r\n {isTechnician ? (\r\n <>\r\n \r\n handelAddPartToServer('save')} className=\"setFullWidth\">\r\n Save\r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n\r\n \r\n \r\n Part\r\n \r\n \r\n \r\n Quantity\r\n \r\n \r\n \r\n \r\n Add\r\n \r\n \r\n \r\n upload(e)}\r\n style={{ display: 'none' }}\r\n accept=\".xfr\"\r\n ref={inputFile}\r\n />\r\n inputFile.current.click()}>\r\n Import Shopping List\r\n \r\n \r\n \r\n \r\n ) : null}\r\n \r\n item.isDeleted !== true)}\r\n disableColumnMenu={true}\r\n showColumnRightBorder={true}\r\n pageSize={100}\r\n />\r\n
\r\n \r\n {!isAuditor && (\r\n \r\n \r\n {state.errors['partReqTechnicianSignature']}\r\n \r\n )}\r\n \r\n {state.showConfirmModal ? (\r\n setState((st) => ({ ...st, showConfirmModal: false }))} maxWidth=\"sm\">\r\n handelAddPartToServer('submit')}\r\n handleCancel={() => setState((st) => ({ ...st, showConfirmModal: false }))}\r\n />\r\n \r\n ) : null}\r\n \r\n );\r\n};\r\n\r\nexport default PartRequisitionsModal;\r\n","import { createContext, useCallback, useEffect, useState, useRef, useContext } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { getDefectByID, defectPostdata } from '../../../Core/Service/defectTech-service';\r\nimport { find } from 'lodash';\r\nimport _ from 'lodash';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport { arrayExpression } from '@babel/types';\r\n\r\nexport const DefectScreenContext = createContext();\r\n\r\nexport const DefectProvider = (props) => {\r\n const { hideModal, showToast, hideTopNavAndMenu, userRoles } = useContext(AppContext);\r\n const isTechnician = userRoles.includes('technician');\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const [inputList, setInputList] = useState([\r\n { defectDescription: '', defectReportedCategoryID: '', defectCreatedUserSignature: null, defectActionedCategoryID: '' }\r\n ]);\r\n\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n\r\n const signCanvas = useRef({});\r\n const clear = () => {\r\n if (state.imgtechniciansign) {\r\n setState((st) => ({\r\n ...st,\r\n imgtechniciansign: null,\r\n techniciansign: null\r\n }));\r\n } else {\r\n signCanvas.current.clear();\r\n }\r\n };\r\n const [state, setState] = useState({\r\n technicians: [],\r\n defectActionedCategories: [],\r\n techniciansign: null,\r\n imgtechniciansign: null,\r\n wipNumber: '',\r\n registration: '',\r\n id: null,\r\n errors: {},\r\n showCircularLoader: true,\r\n technicianNotesJobID: props.match.params?.technicianJobId,\r\n defectReportedCategories: [],\r\n defectHeaderRecordID: props.match.params.jobId || null,\r\n headerRecords: {},\r\n userID: null,\r\n flag: true,\r\n createdUser: null,\r\n defectDateCreated: null\r\n });\r\n\r\n const handleValidation = (val) => {\r\n let errors = {};\r\n const list = [...inputList];\r\n let formIsValid = true;\r\n if (val === 'submit') {\r\n if (list[0]['defectDescription'] === '') {\r\n formIsValid = false;\r\n errors['defectDescription'] = 'Description cannot be empty';\r\n }\r\n if (!state.techniciansign) {\r\n formIsValid = false;\r\n errors.sign = 'Technician Signature is required';\r\n }\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n const Id = props.match.params.jobId;\r\n\r\n const handleBtn = (val, id, name) => {\r\n let changedArray = [...inputList];\r\n changedArray[id][name] = val[name];\r\n setInputList(changedArray);\r\n };\r\n\r\n const TechBtnClick = (userID) => {\r\n setState((newSt) => {\r\n let st = { ...newSt };\r\n if (userID === st.logedInuserID) {\r\n st.flag = true;\r\n } else st.flag = false;\r\n if (st.activeUser === userID) {\r\n st.showCircularLoader = false;\r\n } else {\r\n st.showCircularLoader = true;\r\n }\r\n st.activeUser = userID;\r\n st.userID = userID;\r\n return st;\r\n });\r\n };\r\n\r\n const useDefaultSig = () => {\r\n let userSign = AppStorage.getSignature();\r\n if (userSign) {\r\n signCanvas.current.fromDataURL(AppStorage.getSignature());\r\n setState((st) => ({ ...st, techniciansign: AppStorage.getSignature() }));\r\n } else {\r\n showToast('User signature not found');\r\n }\r\n };\r\n\r\n useEffect(async () => {\r\n if (Id) {\r\n let res = await getDefectByID(Id, state.userID);\r\n if (res.success) {\r\n const btnList = res.data.defectReportedCategories;\r\n if (res.data.defects) {\r\n setInputList(\r\n !res.data.defects.length\r\n ? [{ defectDescription: '', defectReportedCategoryID: '', defectCreatedUserSignature: null, defectActionedCategoryID: '' }]\r\n : res.data.defects\r\n );\r\n }\r\n\r\n let header = res.data.headerRecords[0];\r\n const rw = find(res.data.technician, (t) => t.userID === header.loginUserId);\r\n let techArr = [...res.data.technician];\r\n if (isTechnician) {\r\n if (!rw) {\r\n techArr.unshift({ userID: header.loginUserId, technicianName: header.loginUserName });\r\n }\r\n if (header.loginUserId !== techArr[0].userID) {\r\n techArr.map((m) => {\r\n if (m.userID === techArr[0].userID) {\r\n techArr.splice(0, 0, { userID: header.loginUserId, technicianName: header.loginUserName });\r\n }\r\n });\r\n }\r\n }\r\n let CurrentUser = techArr[0]?.userID;\r\n var arrayOfObjAfter = _.uniqBy(techArr, 'userID');\r\n\r\n setState((st) => {\r\n let newSt = { ...st };\r\n if (!newSt.activeUser) {\r\n newSt.activeUser = CurrentUser;\r\n newSt.flag = true;\r\n }\r\n newSt.defectReportedCategories = btnList;\r\n newSt.defectActionedCategories = res.data?.defectActionedCategories;\r\n newSt.showCircularLoader = false;\r\n // newSt.imgtechniciansign = res.data.defects[0]?.defectCreatedUserSignature || null;\r\n // newSt.techniciansign = res.data.defects[0]?.defectCreatedUserSignature || null;\r\n newSt.createdUser = res.data.defects[0]?.createdUser || null;\r\n newSt.defectDateCreated = res.data.defects[0]?.defectDateCreated || null;\r\n newSt.technicians = arrayOfObjAfter;\r\n newSt.headerRecords = res.data.headerRecords[0];\r\n newSt.logedInuserID = header.loginUserId;\r\n return newSt;\r\n });\r\n }\r\n }\r\n }, [state.userID]);\r\n\r\n const handleSubmit = async (val) => {\r\n const defectVM = inputList.map((m) => ({\r\n userSignature: m.checkDefectCreatedUserSignature ? state.techniciansign : m.defectCreatedUserSignature,\r\n defectID: m.defectID || null,\r\n description: m.defectDescription,\r\n reportedCategoryID: m.defectReportedCategoryID,\r\n actionedCategoryID: m.defectActionedCategoryID\r\n }));\r\n if (handleValidation(val)) {\r\n let data = {\r\n defectHeaderRecordID: state.defectHeaderRecordID,\r\n mode: 'A',\r\n defectVM: defectVM\r\n };\r\n\r\n let res = await defectPostdata(data);\r\n if (res.success) {\r\n showToast(res.message);\r\n if (fromStep) {\r\n setTimeout(() => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }, 1000);\r\n }\r\n } else {\r\n showToast(res.error);\r\n }\r\n }\r\n };\r\n const GetTechnicianSign = () => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n techniciansign: signCanvas.current.toDataURL()\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const handleInputChange = (e, index) => {\r\n const { name, value } = e.target;\r\n const list = [...inputList];\r\n // if (name == 'defectDescription' || name == 'defectReportedCategoryID' || name == 'defectActionedCategoryID') {\r\n // list[index]['defectCreatedUserSignature'] = null;\r\n // list[index]['checkDefectCreatedUserSignature'] = true;\r\n // }\r\n list[index][name] = value;\r\n setInputList(list);\r\n };\r\n const handleRemoveClick = (index) => {\r\n const list = [...inputList];\r\n list.splice(index, 1);\r\n setInputList(list);\r\n };\r\n const handleAddClick = () => {\r\n setInputList([...inputList, { defectDescription: '', defectReportedCategoryID: '' }]);\r\n };\r\n\r\n const handleCheck = (event, index) => {\r\n const { name, checked } = event.target;\r\n const list = [...inputList];\r\n list[index][name] = checked;\r\n setInputList(list);\r\n };\r\n\r\n const showModal = (value) => {\r\n setState((st) => ({\r\n ...st,\r\n showSignature: true,\r\n signature: value\r\n }));\r\n };\r\n\r\n const closeDialog = () => {\r\n setState((st) => ({\r\n ...st,\r\n showSignature: false\r\n }));\r\n };\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","import { Button, CircularProgress, DialogContent, Grid, Tooltip, FormLabel, IconButton, Box } from '@material-ui/core';\r\nimport { TextBox, SecondaryButton, CustomButton, AppButtonGroup, SecondaryCheckbox } from '../../../Core/FormInput';\r\nimport React, { useEffect, useContext } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport AddBoxIcon from '@material-ui/icons/AddBox';\r\nimport RemoveCircleIcon from '@material-ui/icons/RemoveCircle';\r\nimport { DefectProvider, DefectScreenContext } from './defectProvider';\r\nimport SignaturePad from 'react-signature-canvas';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport BorderColorIcon from '@material-ui/icons/BorderColor';\r\nimport { useHistory } from 'react-router-dom';\r\nimport '../../internal/defect-wc/defect.scss';\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport DialogComp from '../.././../Core/Modal/dialogModal';\r\nimport { Table, TableBody, TableCell, TableContainer, TableHead, TableRow, Paper } from '@material-ui/core';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n fontSize: 16,\r\n padding: 8,\r\n color: '#f50057'\r\n },\r\n body: {\r\n fontSize: 14,\r\n padding: 6\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(odd)': {\r\n backgroundColor: '#F5F5F5'\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n marginTop: 15\r\n },\r\n table: {\r\n minWidth: '100%'\r\n },\r\n title: {\r\n color: '#f50057',\r\n marginLeft: 8,\r\n marginTop: 8,\r\n marginBottom: 8\r\n },\r\n paper: {\r\n padding: theme.spacing(2),\r\n color: theme.palette.text.secondary,\r\n border: '1px solid rgba(0,0,0,0.2)',\r\n minWidth: '1000px'\r\n },\r\n axelTitles: {\r\n textAlign: 'center',\r\n color: '#f50057',\r\n width: '100%'\r\n },\r\n headings: {\r\n color: '#f50057',\r\n margin: 0,\r\n marginLeft: -4,\r\n marginBottom: 20\r\n },\r\n checkContainer: {\r\n '& .MuiFormControlLabel-root': {\r\n marginLeft: '0px',\r\n marginRight: '0px'\r\n }\r\n }\r\n}));\r\n\r\nconst AddDefects = (props) => {\r\n const {\r\n useDefaultSig,\r\n TechBtnClick,\r\n signCanvas,\r\n fromStep,\r\n state,\r\n clear,\r\n GetTechnicianSign,\r\n handleSubmit,\r\n handleAddClick,\r\n handleRemoveClick,\r\n handleInputChange,\r\n inputList,\r\n handleBtn,\r\n isTechnician,\r\n handleCheck,\r\n showModal,\r\n closeDialog\r\n } = useContext(DefectScreenContext);\r\n\r\n const { hideModal, showToast, hideTopNavAndMenu } = useContext(AppContext);\r\n const isReadonly = state.imgtechniciansign ? true : false;\r\n const history = useHistory();\r\n\r\n const classes = useStyles();\r\n\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n return (\r\n
\r\n \r\n \r\n \r\n Reg. No:  {state.headerRecords.registration}  WIP No:  {state.headerRecords.wipNumber}\r\n \r\n  \r\n {/* {state.technicians.map((m) => (\r\n
\r\n \r\n
\r\n ))} */}\r\n {state.showCircularLoader ? (\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n Sign\r\n \r\n \r\n Defect\r\n \r\n \r\n Serviceable\r\n \r\n \r\n Action\r\n \r\n \r\n Created By\r\n \r\n {/* */}\r\n \r\n \r\n \r\n \r\n {inputList.map((x, i) => {\r\n return (\r\n \r\n \r\n handleCheck(e, i)}\r\n value={x?.checkDefectCreatedUserSignature}\r\n name=\"checkDefectCreatedUserSignature\"\r\n />\r\n }\r\n />\r\n \r\n \r\n handleInputChange(e, i)}\r\n disabled={!state.flag}\r\n placeholder=\"Defect Description\"\r\n />\r\n {state.errors['defectDescription']}\r\n \r\n \r\n {' '}\r\n {state.defectReportedCategories && (\r\n handleBtn(e, i, 'defectReportedCategoryID')}\r\n options={state.defectReportedCategories}\r\n disabled={!state.flag}\r\n valuePropertyName=\"defectReportedCategoryID\"\r\n textPropertyName=\"defectReportedCategoryDescription\"\r\n />\r\n )}\r\n \r\n \r\n {state.defectActionedCategories && (\r\n handleBtn(e, i, 'defectActionedCategoryID')}\r\n options={state.defectActionedCategories}\r\n valuePropertyName=\"defectActionedCategoryID\"\r\n textPropertyName=\"defectActionedCategoryDescription\"\r\n />\r\n )}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n {x.createdUser}\r\n \r\n \r\n \r\n {\r\n showModal(x.defectCreatedUserSignature);\r\n }}\r\n style={{ cursor: 'pointer', marginTop: 10 }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.flag && isTechnician && (\r\n
\r\n {inputList.length !== 1 && (\r\n \r\n handleRemoveClick(i)}\r\n // className=\"rightButton\"\r\n style={{\r\n margin: '-16px 0px -17px 0px',\r\n padding: 1\r\n }}\r\n >\r\n \r\n \r\n \r\n )}\r\n {inputList.length - 1 === i && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n )}\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n Technician Signature  \r\n {(state.defectDateCreated || state.createdUser) && (\r\n ( {`${state.createdUser || ' '} ${state.defectDateCreated}`} )\r\n )}\r\n {!state.imgtechniciansign && (\r\n \r\n )}\r\n  \r\n {!state.imgtechniciansign && (\r\n \r\n )}\r\n \r\n {state.imgtechniciansign ? (\r\n \r\n ) : (\r\n <>\r\n {\r\n GetTechnicianSign();\r\n }}\r\n canvasProps={{\r\n className: 'signatureCanvas'\r\n }}\r\n />\r\n {state.errors.sign}\r\n \r\n )}\r\n {/* {state.errors['techniciansign']} */}\r\n \r\n {state.flag && isTechnician && (\r\n <>\r\n \r\n handleSubmit('save')}>\r\n Save\r\n \r\n \r\n \r\n handleSubmit('submit')}>\r\n Sign-Off\r\n \r\n \r\n\r\n \r\n history.goBack()}>\r\n Cancel\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n
\r\n
\r\n {state.showSignature ? (\r\n \r\n \"my\r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\n\r\nconst Screen = (props) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\nexport default Screen;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getBrakeReport = async (headerId) => {\r\n let res = await get(`BrakeReports/${headerId}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const postBrakeReport = async (data) => {\r\n let res = await post(`BrakeReports`, data, { useAuthToken: true });\r\n return res;\r\n};","import { createContext, useEffect, useState, useRef, useContext } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { getBrakeReport, postBrakeReport } from '../../../../Core/Service/BrakeDiscPadWear-service';\r\nimport { AppStorage } from '../../../../Core/Service/storage-service';\r\nimport formatters from '../../../../Core/Grid/inputFormatter';\r\nimport SignaturePad from 'react-signature-canvas';\r\nimport moment from 'moment';\r\n\r\nexport const BrakeDiscPadScreenContext = createContext();\r\n\r\nexport const BrakeDiscPadProvider = (props) => {\r\n const { showToast } = useContext(AppContext);\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n\r\n const handleValidation = () => {\r\n let errors = {};\r\n const list = [...inputList];\r\n let formIsValid = true;\r\n if (list[0]['brakeReportItemAxlePosition'] === '') {\r\n formIsValid = false;\r\n errors['brakeReportItemAxlePosition'] = 'Axel position cannot be empty';\r\n }\r\n if (list[0]['brakeReportItemNearSideBrakePadWear'] === '') {\r\n formIsValid = false;\r\n errors['brakeReportItemNearSideBrakePadWear'] = 'Brake pad wear cannot be empty';\r\n }\r\n // if (list[0]['brakeReportItemNearSideBrakeDiscThickness'] === '') {\r\n // formIsValid = false;\r\n // errors['brakeReportItemNearSideBrakeDiscThickness'] = 'Thickness cannot be empty';\r\n // }\r\n // if (list[0]['brakeReportItemNearSideBrakeDiscThicknessLimit'] === '') {\r\n // formIsValid = false;\r\n // errors['brakeReportItemNearSideBrakeDiscThicknessLimit'] = 'Limit cannot be empty';\r\n // }\r\n if (list[0]['brakeReportItemNearSideReasonForRenewal'] === '') {\r\n formIsValid = false;\r\n errors['brakeReportItemNearSideReasonForRenewal'] = 'Reason for renewal cannot be empty';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n errors: errors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n const DatendSignValidation = () => {\r\n let errors = {};\r\n let formIsValid = true;\r\n if (state.brakeReportDate === 'Invalid date' || !state.brakeReportDate) {\r\n formIsValid = false;\r\n errors['brakeReportDate'] = 'Date cannot be empty';\r\n }\r\n if (!state.techniciansign) {\r\n let userSign = AppStorage.getSignature();\r\n if (!userSign) {\r\n formIsValid = false;\r\n errors['techniciansign'] = 'Signature cannot be empty';\r\n }\r\n }\r\n setState((st) => ({\r\n ...st,\r\n DatendSign: errors\r\n }));\r\n return formIsValid;\r\n };\r\n let data = {\r\n brakeReportItemNearSideBrakePadWear: '',\r\n brakeReportItemAxlePosition: '',\r\n brakeReportItemNearSideBrakeDiscThickness: '',\r\n brakeReportItemNearSideBrakeDiscThicknessLimit: '',\r\n brakeReportItemNearSidePhoto: null,\r\n brakeReportItemNearSideReasonForRenewal: '',\r\n brakeReportItemOffSideBrakePadWear: '',\r\n brakeReportItemOffSideBrakeDiscThickness: '',\r\n brakeReportItemOffSideBrakeDiscThicknessLimit: '',\r\n brakeReportItemOffSideReasonForRenewal: '',\r\n brakeReportItemOffSidePhoto: null,\r\n brakeReportItemID: null\r\n };\r\n\r\n // const signCanvas = useRef({});\r\n\r\n const [inputList, setInputList] = useState([{ ...data }, { ...data }, { ...data }]);\r\n\r\n const [state, setState] = useState({\r\n showAdd: true,\r\n DatendSign: {},\r\n headerRecords: {},\r\n brakeReportID: null,\r\n fields: {},\r\n errors: {},\r\n brakeReportDate: moment().format('YYYY-MM-DD'),\r\n hideSign: null,\r\n brakeReportHeaderID: props.match.params?.jobId,\r\n showLogo: false,\r\n logoValue: null,\r\n index: null,\r\n logoName: null,\r\n axelPosition: '',\r\n showCircularLoader: true,\r\n brakeReportDateCreated: null,\r\n techncianName: null,\r\n techniciansign: null\r\n });\r\n\r\n const [btnLoader, setBtnLoader] = useState(false);\r\n\r\n useEffect(async () => {\r\n if (state.brakeReportHeaderID) {\r\n let res = await getBrakeReport(state.brakeReportHeaderID);\r\n if (res.success) {\r\n const updatedUser = res?.data;\r\n setInputList(\r\n !updatedUser.brakeReportItems.length\r\n ? [{ ...data }, { ...data }, { ...data }]\r\n : updatedUser.brakeReportItems.map((c, i) => ({ ...c, id: i + 1 }))\r\n );\r\n\r\n let brakeReports = res?.data?.brakeReports[0];\r\n setState((st) => ({\r\n ...st,\r\n brakeReportID: brakeReports?.brakeReportID || null,\r\n brakeReportDate: brakeReports?.brakeReportDate ? formatters.DateFormatter(brakeReports?.brakeReportDate) : moment().format('YYYY-MM-DD'),\r\n techniciansign: brakeReports?.brakeReportSignature,\r\n hideSign: brakeReports?.brakeReportSignature,\r\n brakeReportDateCreated: brakeReports?.brakeReportDateCreated,\r\n techncianName: brakeReports?.techncianName,\r\n headerRecords: res.data?.headerRecords[0],\r\n // showAdd: updatedUser.brakeReportItems.length > 0 ? false : true,\r\n showAdd: true,\r\n showCircularLoader: false\r\n }));\r\n }\r\n }\r\n }, []);\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n return { ...st, [name]: value };\r\n });\r\n };\r\n\r\n const handleInputChange = (e, index) => {\r\n const { name, value } = e.target;\r\n const list = [...inputList];\r\n list[index]['id'] = index + 1;\r\n list[index][name] = value;\r\n setInputList(list);\r\n };\r\n\r\n const handleRemoveClick = (index) => {\r\n const list = [...inputList];\r\n list.splice(index, 1);\r\n setInputList(list);\r\n };\r\n\r\n let handleImage = (event, i) => {\r\n const { name } = event.target;\r\n let reader = new FileReader();\r\n const list = [...inputList];\r\n reader.onload = (e) => {\r\n const { result } = e.target;\r\n list[i][name] = result;\r\n setInputList(list);\r\n };\r\n reader.readAsDataURL(event.target.files[0]);\r\n };\r\n\r\n let RemoveImage = () => {\r\n const list = [...inputList];\r\n list[state.index][state.logoName] = null;\r\n setInputList(list);\r\n setState((st) => ({\r\n ...st,\r\n logoValue: null\r\n }));\r\n };\r\n\r\n let UploadNewImage = (val) => {\r\n const list = [...inputList];\r\n list[state.index][state.logoName] = val;\r\n setInputList(list);\r\n setState((st) => ({\r\n ...st,\r\n logoValue: val\r\n }));\r\n };\r\n\r\n const showImage = (i, name) => {\r\n const list = [...inputList];\r\n setState((st) => ({\r\n ...st,\r\n showLogo: true,\r\n logoValue: list[i][name],\r\n axelPosition: list[i]['brakeReportItemAxlePosition'],\r\n index: i,\r\n logoName: name\r\n }));\r\n };\r\n\r\n const hideImage = () => {\r\n setState((st) => ({\r\n ...st,\r\n showLogo: false,\r\n logoValue: null,\r\n index: null,\r\n logoName: null\r\n }));\r\n };\r\n\r\n const handleAddClick = () => {\r\n setInputList([\r\n ...inputList,\r\n {\r\n brakeReportItemID: null,\r\n brakeReportItemNearSideBrakePadWear: '',\r\n brakeReportItemAxlePosition: '',\r\n brakeReportItemNearSideBrakeDiscThickness: '',\r\n brakeReportItemNearSideBrakeDiscThicknessLimit: '',\r\n brakeReportItemNearSidePhoto: null,\r\n brakeReportItemNearSideReasonForRenewal: '',\r\n brakeReportItemOffSideBrakePadWear: '',\r\n brakeReportItemOffSideBrakeDiscThickness: '',\r\n brakeReportItemOffSideBrakeDiscThicknessLimit: '',\r\n brakeReportItemOffSidePhoto: null,\r\n brakeReportItemOffSideReasonForRenewal: ''\r\n }\r\n ]);\r\n };\r\n\r\n const clearSig = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n techniciansign: null\r\n }));\r\n };\r\n\r\n const signChange = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n ...val\r\n }));\r\n };\r\n\r\n const handleSubmit = async () => {\r\n setBtnLoader(true);\r\n let list = [];\r\n let temp = inputList.filter((m) => {\r\n delete m['id'];\r\n list.push(m);\r\n });\r\n const obj = {\r\n brakeReportItems: list,\r\n brakeReportID: state.brakeReportID,\r\n brakeReportHeaderID: state.brakeReportHeaderID,\r\n brakeReportDate: state.brakeReportDate,\r\n brakeReportSignature: state.techniciansign || AppStorage.getSignature()\r\n };\r\n if (handleValidation()) {\r\n if (DatendSignValidation()) {\r\n let res = await postBrakeReport(obj);\r\n if (res.success) {\r\n showToast(res.message);\r\n if (fromStep) {\r\n setTimeout(() => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }, 1000);\r\n }\r\n } else {\r\n showToast(res.error ? res.error : res.title);\r\n }\r\n }\r\n }\r\n setBtnLoader(false);\r\n };\r\n\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","import React, { useState } from 'react';\r\nimport { IconButton, Tooltip } from '@material-ui/core';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport Box from '@material-ui/core/Box';\r\nimport { DialogContents, Dialogs, SecondaryButton, DialogTitles } from '../../../../Core/FormInput';\r\nimport './viewAxel.scss';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport { Backup } from '@material-ui/icons';\r\nimport getResizedImage from '../../../../Core/CommonFunctions/imageResizer';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n paper: { minWidth: '500px', maxWidth: '500px' }\r\n}));\r\nconst ViewAxel = (props) => {\r\n // let handleImage = (event, i) => {\r\n // const { name } = event.target;\r\n // let reader = new FileReader();\r\n // reader.onload = (e) => {\r\n // const { result } = e.target;\r\n // props.UploadNewImage(result);\r\n // };\r\n // reader.readAsDataURL(event.target.files[0]);\r\n // };\r\n\r\n let handleImage = (event) => {\r\n if (event.target.files[0].type.includes('image')) {\r\n getResizedImage(event.target.files[0], (fileUrl) => {\r\n props.UploadNewImage(fileUrl);\r\n });\r\n }\r\n };\r\n\r\n const handleClose = () => {\r\n props.onFormSubmit();\r\n };\r\n const classes = useStyles();\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Axel: {props.title}\r\n \r\n \r\n {props.logoValue ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
{props.logoValue && \"wheel\"}
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\nexport default ViewAxel;\r\n","import React, { useContext, useEffect, useState } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport SignaturePad from 'react-signature-canvas';\r\nimport { TextBox, SecondaryButton, CustomButton, DialogContents } from '../../../../Core/FormInput';\r\nimport { useWindowSize } from '../../../../Core/Controls/ScreenResolution';\r\nimport AddBox from '@material-ui/icons/AddBox';\r\nimport RemoveCircle from '@material-ui/icons/RemoveCircle';\r\nimport { BrakeDiscPadProvider, BrakeDiscPadScreenContext } from './BrakeDiscPadWearProvider';\r\nimport BorderColorIcon from '@material-ui/icons/BorderColor';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport { Tooltip } from '@material-ui/core';\r\nimport { Backup, Visibility } from '@material-ui/icons';\r\nimport ViewAxel from './ViewAxel';\r\nimport { CustomeSignPad } from '../../../../Core/SignaturePad';\r\n\r\nconst GlobalCss = withStyles({\r\n '@global': {\r\n '.MuiOutlinedInput-input': {\r\n padding: '9.5px 4px'\r\n },\r\n '.MuiFormLabel-root': {\r\n fontSize: '14px',\r\n color: 'black',\r\n fontWeight: '50'\r\n }\r\n }\r\n})(() => null);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n input: {\r\n '& input[type=number]': {\r\n '-moz-appearance': 'textfield'\r\n },\r\n '& input[type=number]::-webkit-outer-spin-button': {\r\n '-webkit-appearance': 'none',\r\n margin: 0\r\n },\r\n '& input[type=number]::-webkit-inner-spin-button': {\r\n '-webkit-appearance': 'none',\r\n margin: 0\r\n }\r\n },\r\n box_container: {\r\n height: '120px',\r\n border: '1px solid rgba(0, 0, 0, 0.15)',\r\n display: 'block',\r\n boxShadow: '0px 0px 0px 0px rgba(0, 0, 0, 0.15)',\r\n color: 'red',\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis'\r\n },\r\n Leadersign: {\r\n border: '1px solid black',\r\n width: '100%',\r\n height: ' 130px'\r\n }\r\n}));\r\n\r\nconst StyleInput = (props) => {\r\n const classes = useStyles();\r\n return ;\r\n};\r\n\r\nconst getStripedStyle = (index) => {\r\n return { background: index % 2 ? 'rgb(151 133 133 / 6%)' : 'rgb(158 158 158 / 20%)' };\r\n};\r\nconst BrakeDiscPadWear = (props) => {\r\n const {\r\n state,\r\n useDefaultSig,\r\n handleAddClick,\r\n handleRemoveClick,\r\n handleInputChange,\r\n inputList,\r\n fieldChange,\r\n handleSubmit,\r\n handleImage,\r\n showImage,\r\n hideImage,\r\n RemoveImage,\r\n signChange,\r\n clearSig,\r\n btnLoader\r\n } = useContext(BrakeDiscPadScreenContext);\r\n const { hideTopNavAndMenu, userRoles } = useContext(AppContext);\r\n const isAuditor = userRoles.includes('auditor');\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n const classes = useStyles();\r\n\r\n const [widths] = useWindowSize();\r\n const tabView = widths < 1350 ? true : false;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n Reg No:  {state.headerRecords?.registration}  WIP No:  {state.headerRecords?.wipNumber}\r\n \r\n \r\n \r\n Date\r\n \r\n \r\n \r\n {state.DatendSign['brakeReportDate']}\r\n \r\n \r\n {inputList.map((x, i) => (\r\n \r\n \r\n \r\n  \r\n \r\n \r\n Axle Position\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n NEARSIDE\r\n \r\n \r\n \r\n Brake Pad Wear\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n Disc Thickness\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n Disc Limit\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n \r\n \r\n Reason for renewal\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n  \r\n {x.brakeReportItemNearSidePhoto ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n OFFSIDE\r\n \r\n \r\n \r\n Brake Pad Wear\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n Disc Thickness\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n Disc Limit\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n \r\n \r\n Reason for renewal  \r\n {inputList.length !== 1 && state.showAdd && (\r\n handleRemoveClick(i)}\r\n toolTipTitle=\"Remove Row\"\r\n />\r\n )}\r\n {inputList.length - 1 === i && state.showAdd && (\r\n \r\n )}\r\n handleInputChange(e, i)}\r\n />\r\n \r\n \r\n  \r\n {x.brakeReportItemOffSidePhoto ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {state.errors && i == 0 && {Object.values(state.errors)[0]}}\r\n \r\n \r\n ))}\r\n\r\n \r\n \r\n {'\\u{2800}'}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n Warranty / R&M and many other companies require brake pad measurements in MM, please be sure to put readings down.\r\n \r\n \r\n Also, the wear level & wear limit of the discs should always be filled in when replacing. This is always in MM.\r\n \r\n \r\n
\r\n
\r\n {!isAuditor && \r\n \r\n \r\n {state.DatendSign['techniciansign']}\r\n \r\n }\r\n
\r\n \r\n \r\n Save\r\n \r\n
\r\n {state.showLogo && }\r\n
\r\n );\r\n};\r\nconst Screen = (props) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\nexport default Screen;\r\n","import React, { useContext, useMemo, useEffect, useState, useRef } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FormLabel from '@material-ui/core/FormLabel';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport SignaturePad from 'react-signature-canvas';\r\nimport { TextBox, SecondaryButton, DialogContents, AppButtonGroup, PrimaryButton, CustomButton } from '../../../Core/FormInput';\r\nimport { Button, IconButton } from '@material-ui/core';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport MenuItem from '@material-ui/core/MenuItem';\r\nimport '../../technician/technician-app/TechnicianStyle.scss';\r\nimport CircularProgress from '@material-ui/core/CircularProgress';\r\nimport formatters from '../../../Core/Grid/inputFormatter';\r\nimport { Backup } from '@material-ui/icons';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport BorderColorIcon from '@material-ui/icons/BorderColor';\r\nimport { getBtteryTestDetails, postBtteryTestDetails } from '../../../Core/Service/batteryTest-service';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport InputAdornment from '@material-ui/core/InputAdornment';\r\nimport { InputLabel } from '@material-ui/core';\r\nimport SecondaryBatteryModal from './SecondaryBatteryModal';\r\nimport getResizedImage from '../../../Core/CommonFunctions/imageResizer';\r\nimport { CustomeSignPad } from '../../../Core/SignaturePad';\r\nimport CloudDownloadIcon from '@material-ui/icons/CloudDownload';\r\nimport html2canvas from 'html2canvas';\r\nimport jsPDF from 'jspdf';\r\nimport _ from 'lodash';\r\nimport moment from 'moment';\r\n\r\nlet styles = {\r\n required: {\r\n color: 'red',\r\n fontSize: 13,\r\n float: 'left'\r\n }\r\n};\r\n\r\nconst BatteryTest = (props) => {\r\n const { hideModal, showToast, hideTopNavAndMenu, userRoles } = useContext(AppContext);\r\n const isAuditor = userRoles.includes('auditor');\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const signCanvas = useRef({});\r\n const signteamleaderCanvas = useRef({});\r\n const Id = props.match.params.jobId;\r\n\r\n const [state, setState] = useState({\r\n errors: {},\r\n showCircularLoader: true,\r\n fields: {},\r\n teamleadersign: null,\r\n odometerUnitsVM: [],\r\n batteryManufacturers: [],\r\n batteryTestResults: [],\r\n list: [{}, {}],\r\n yesNoOptions: [\r\n {\r\n id: true,\r\n name: 'Yes'\r\n },\r\n {\r\n id: false,\r\n name: 'No'\r\n }\r\n ],\r\n signAvailable: AppStorage.getSignature() === 'absent' ? false : true,\r\n isDefaultSig: false,\r\n open: false,\r\n primaryErrors: {},\r\n secondaryErrors: {},\r\n secBettry: false\r\n });\r\n\r\n useEffect(async () => {\r\n fromStep && hideTopNavAndMenu();\r\n let result = await getBtteryTestDetails(Id);\r\n const Data = result.data;\r\n if (result.success) {\r\n let batteryManufacturers = result.data.batteryManufacturers;\r\n let odometerUnits = result.data.odometerUnits;\r\n let batteryTest = result.data.batteryTest;\r\n let headerRecords = result.data.headerRecords[0];\r\n let batteryTestResults = result.data.batteryTestResults;\r\n setState((st) => {\r\n const nst = { ...st };\r\n if (batteryTest.length > 0) {\r\n let bettryTestList = batteryTest.map((m) => ({\r\n batteryTestBarcode: m.batteryTestBarcode || null,\r\n batteryTestManufacturerID: m.batteryTestManufacturerID?.toString() || null,\r\n batteryTestCapacity: m.batteryTestCapacity || null,\r\n batteryTestId: m.batteryTestId,\r\n batteryTestMBPartNumber: m.batteryTestMBPartNumber || null,\r\n batteryTestColdTestCurrent: m.batteryTestColdTestCurrent || null,\r\n batteryTestProductionWeek: m.batteryTestProductionWeek || null,\r\n batteryTestProductionYear: m.batteryTestProductionYear || null,\r\n batteryTestLeak: m.batteryTestLeak.toString(),\r\n batteryTestLeakPosition: m.batteryTestLeakPosition || null,\r\n batteryTestMidtronicsTestResult: m.batteryTestMidtronicsTestResult || null,\r\n batteryTestTestCode: m.batteryTestTestCode || null,\r\n batteryTestDamageCode: m.batteryTestDamageCode || null,\r\n batteryTestPrintoutImage: m.batteryTestPrintoutImage || null,\r\n batteryTestIsSecondBattery: m.batteryTestIsSecondBattery || false\r\n }));\r\n nst.list = [...bettryTestList];\r\n nst.batterySignature = result.data.batteryTest[0]?.batteryTestSignature;\r\n nst.batteryTestSignature = result.data.batteryTest[0]?.batteryTestSignature;\r\n nst.isDefaultSig = result.data.batteryTest[0]?.batteryTestSignature ? true : false;\r\n nst.batteryTestDate = formatters.DateFormatter(result.data.batteryTest[0]?.batteryTestDate);\r\n\r\n nst.headerRecordID = result.data.batteryTest[0]?.headerRecordID;\r\n nst.batteryTestOdometerReading = result.data.batteryTest[0]?.batteryTestOdometerReading;\r\n nst.batteryTestOdometerUnit = result.data.batteryTest[0]?.batteryTestOdometerUnit;\r\n }\r\n nst.batteryManufacturers = batteryManufacturers;\r\n nst.batteryTestResults = batteryTestResults;\r\n nst.odometerUnitsVM = odometerUnits?.map((w) => ({\r\n id: w.odometerUnitID,\r\n name: w.odometerUnitDescription\r\n }));\r\n nst.headerRecordsInfo = headerRecords;\r\n nst.showCircularLoader = false;\r\n\r\n return nst;\r\n });\r\n }\r\n }, []);\r\n const fieldChange = (val) => (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n let newSt = { ...st };\r\n if (!val) {\r\n newSt[name] = value;\r\n }\r\n if (val === 1) {\r\n newSt.list[0][name] = value;\r\n }\r\n if (val === 2) {\r\n newSt.list[1][name] = value;\r\n newSt.secBettry = true;\r\n }\r\n\r\n return newSt;\r\n });\r\n };\r\n\r\n const useDefaultSig = () => {\r\n setState((st) => ({ ...st, isDefaultSig: true, batteryTestSignature: AppStorage.getSignature() }));\r\n };\r\n\r\n const clearSig = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n batteryTestSignature: null,\r\n batterySignature: null\r\n }));\r\n };\r\n\r\n // const GetTechnicianSign = () => {\r\n // setState((st) => {\r\n // const nst = {\r\n // ...st,\r\n // batteryTestSignature: signCanvas.current.toDataURL()\r\n // };\r\n // return nst;\r\n // });\r\n // };\r\n\r\n const handel = (param) => (val) => {\r\n let objKey = Object.keys(val);\r\n setState((st) => {\r\n let newSt = { ...st };\r\n if (param === 1) {\r\n newSt.list[0][objKey] = val[objKey];\r\n }\r\n if (param === 2) {\r\n newSt.list[1][objKey] = val[objKey];\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n const GetTechnicianSign = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n ...val\r\n }));\r\n };\r\n\r\n const clearLeaderSign = () => {\r\n if (state.isDefaultSig) {\r\n setState((st) => ({\r\n ...st,\r\n isDefaultSig: false,\r\n batteryTestSignature: ''\r\n }));\r\n } else {\r\n signCanvas?.current.clear();\r\n setState((st) => ({\r\n ...st,\r\n batteryTestSignature: null\r\n }));\r\n }\r\n };\r\n\r\n let handleImage = (param) => (event) => {\r\n if (event.target.files[0].type.includes('image')) {\r\n getResizedImage(event.target.files[0], (fileUrl) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n if (param === 1) {\r\n newSt.list[0].batteryTestPrintoutImage = fileUrl;\r\n }\r\n if (param === 2) {\r\n newSt.list[1].batteryTestPrintoutImage = fileUrl;\r\n }\r\n return newSt;\r\n });\r\n });\r\n } else {\r\n showToast('Wrong file selected');\r\n }\r\n };\r\n\r\n const setVal = () => {\r\n setState((st) => ({ ...st, open: true }));\r\n };\r\n\r\n const clearImage = (val) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n if (val === 1) {\r\n newSt.list[0].batteryTestPrintoutImage = null;\r\n }\r\n if (val === 2) {\r\n newSt.list[1].batteryTestPrintoutImage = null;\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n const handleValidation = () => {\r\n let primary = state.list[0];\r\n let secondary = state.list[1];\r\n let primaryErrors = {};\r\n let secondaryErrors = {};\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n if (state.batteryTestDate === 'Invalid date' || !state.batteryTestDate) {\r\n formIsValid = false;\r\n errors.batteryTestDate = 'Date cannot be empty';\r\n }\r\n if (!state.batteryTestOdometerReading) {\r\n formIsValid = false;\r\n errors.batteryTestOdometerReading = 'Odometer Reading is required';\r\n }\r\n if (!state.batteryTestSignature) {\r\n formIsValid = false;\r\n errors.batteryTestSignature = 'Signature is required';\r\n }\r\n\r\n if (primary) {\r\n if (!primary.batteryTestManufacturerID) {\r\n formIsValid = false;\r\n primaryErrors.batteryTestManufacturerID = 'Please select battery manufacturer';\r\n }\r\n\r\n if (!primary.batteryTestProductionWeek) {\r\n formIsValid = false;\r\n primaryErrors.batteryTestProductionWeek = 'Week and Year is required';\r\n }\r\n if (!primary.batteryTestProductionYear) {\r\n formIsValid = false;\r\n primaryErrors.batteryTestProductionWeek = 'Week and Year is required';\r\n } else if (!/^(199\\d|20[0-2]\\d|2030)$/.test(primary.batteryTestProductionYear)) {\r\n formIsValid = false;\r\n primaryErrors.batteryTestProductionWeek = 'Please enter a valid year 1990-2030';\r\n }\r\n if (!primary.batteryTestLeak) {\r\n primaryErrors.batteryTestLeak = 'This field is required';\r\n formIsValid = false;\r\n } else if (primary.batteryTestLeak === 'true' && !primary.batteryTestLeakPosition) {\r\n primaryErrors.batteryTestLeakPosition = 'This field is required';\r\n formIsValid = false;\r\n }\r\n if (!primary.batteryTestMidtronicsTestResult) {\r\n primaryErrors.batteryTestMidtronicsTestResult = 'Please select Midtronics Test Result';\r\n formIsValid = false;\r\n }\r\n if (!primary.batteryTestPrintoutImage) {\r\n primaryErrors.batteryTestPrintoutImage = 'Please upload Receipt';\r\n formIsValid = false;\r\n }\r\n }\r\n if (state.secBettry) {\r\n if (secondary) {\r\n if (!secondary.batteryTestManufacturerID) {\r\n formIsValid = false;\r\n secondaryErrors.batteryTestManufacturerID = 'Please select battery manufacturer';\r\n }\r\n\r\n if (!secondary.batteryTestProductionWeek) {\r\n formIsValid = false;\r\n secondaryErrors.batteryTestProductionWeek = 'Week and Year is required';\r\n }\r\n if (!secondary.batteryTestProductionYear) {\r\n formIsValid = false;\r\n secondaryErrors.batteryTestProductionWeek = 'Week and Year is required';\r\n } else if (!/^(199\\d|20[0-2]\\d|2030)$/.test(secondary.batteryTestProductionYear)) {\r\n formIsValid = false;\r\n secondaryErrors.batteryTestProductionWeek = 'Please enter a valid year 1990-2030';\r\n }\r\n if (!secondary.batteryTestLeak) {\r\n secondaryErrors.batteryTestLeak = 'This field is required';\r\n formIsValid = false;\r\n } else if (secondary.batteryTestLeak === 'true' && !secondary.batteryTestLeakPosition) {\r\n secondaryErrors.batteryTestLeakPosition = 'This field is required';\r\n formIsValid = false;\r\n }\r\n if (!secondary.batteryTestMidtronicsTestResult) {\r\n secondaryErrors.batteryTestMidtronicsTestResult = 'Please select Midtronics Test Result';\r\n formIsValid = false;\r\n }\r\n if (!secondary.batteryTestPrintoutImage) {\r\n secondaryErrors.batteryTestPrintoutImage = 'Please upload Receipt';\r\n formIsValid = false;\r\n }\r\n }\r\n }\r\n\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n primaryErrors: primaryErrors,\r\n secondaryErrors: secondaryErrors\r\n }));\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let bettryTestList = state.list.map((m) => ({\r\n batteryTestBarcode: m.batteryTestBarcode || null,\r\n batteryTestManufacturerID: m.batteryTestManufacturerID || null,\r\n batteryTestCapacity: m.batteryTestCapacity || null,\r\n batteryTestMBPartNumber: m.batteryTestMBPartNumber || null,\r\n batteryTestColdTestCurrent: m.batteryTestColdTestCurrent || null,\r\n batteryTestProductionWeek: m.batteryTestProductionWeek || null,\r\n batteryTestProductionYear: m.batteryTestProductionYear || null,\r\n batteryTestLeak: m.batteryTestLeak,\r\n batteryTestLeakPosition: m.batteryTestLeakPosition || null,\r\n batteryTestMidtronicsTestResult: m.batteryTestMidtronicsTestResult || null,\r\n batteryTestTestCode: m.batteryTestTestCode || null,\r\n batteryTestDamageCode: m.batteryTestDamageCode || null,\r\n batteryTestPrintoutImage: m.batteryTestPrintoutImage || null,\r\n batteryTestId: m.batteryTestId || null,\r\n batteryTestIsSecondBattery: m.batteryTestIsSecondBattery || false\r\n }));\r\n\r\n if (handleValidation()) {\r\n let data = {\r\n headerRecordID: Id,\r\n batteryTestDate: state.batteryTestDate,\r\n batteryTestOdometerReading: state.batteryTestOdometerReading,\r\n batteryTestOdometerUnit: state.batteryTestOdometerUnit,\r\n batteryTestSignature: state.batteryTestSignature,\r\n batteryTestsListVM: bettryTestList\r\n };\r\n\r\n let res = await postBtteryTestDetails(data);\r\n if (res.success) {\r\n showToast(res.data.message);\r\n if (fromStep) {\r\n setTimeout(() => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }, 1000);\r\n }\r\n } else {\r\n console.error(res);\r\n }\r\n }\r\n };\r\n\r\n const printDocument = () => {\r\n let input = document.getElementById('divToPrint');\r\n let calMaxHeight;\r\n\r\n html2canvas(input, {\r\n onclone: (cloned) => {\r\n let textArea = cloned.getElementsByTagName('textarea');\r\n cloned.getElementById('zommContainer').style.display = 'none';\r\n let getHeight = [];\r\n for (var i = 0; i < textArea.length; i++) {\r\n getHeight.push(textArea[i].scrollHeight);\r\n }\r\n calMaxHeight = _.max(getHeight);\r\n for (var i = 0; i < textArea.length; i++) {\r\n const div = document.createElement('div');\r\n const textProp = textArea[i].getBoundingClientRect();\r\n div.innerText = textArea[i].value;\r\n div.style.padding = '2px -3px';\r\n div.style.height = `${calMaxHeight + textProp.height}px`;\r\n div.style.width = `${textProp.width}px`;\r\n div.style.textAlign = 'left';\r\n div.style.color = 'black';\r\n div.style.fontSize = 8;\r\n textArea[i].style.display = 'none';\r\n textArea[i].parentElement.append(div);\r\n }\r\n }\r\n }).then((canvas) => {\r\n const imgData = canvas.toDataURL('image/png');\r\n const pdf = new jsPDF('l', 'px', 'a4');\r\n const imgProps = pdf.getImageProperties(imgData);\r\n const pdfWidth = pdf.internal.pageSize.getWidth();\r\n const pdfHeight = (imgProps.height * pdfWidth) / imgProps.width;\r\n pdf.addImage(imgData, 'PNG', 0, 0, pdfWidth, pdfHeight);\r\n pdf.save(`BatteryTest-${moment().format('DD-MMM-YYYY-HH:mm')}.pdf`);\r\n });\r\n };\r\n\r\n return (\r\n <>\r\n
\r\n \r\n {state.showCircularLoader ? (\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n Registration Number:  {state.headerRecordsInfo.registration}\r\n   WIP No:  {state.headerRecordsInfo.wipNumber}\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n Date\r\n \r\n \r\n {state.errors['batteryTestDate']}\r\n \r\n \r\n \r\n Odometer Reading\r\n \r\n \r\n {state.errors['batteryTestOdometerReading']}\r\n \r\n \r\n Odometer Reading Unit\r\n \r\n {state.odometerUnitsVM?.length > 0 &&\r\n state.odometerUnitsVM.map((option) => (\r\n \r\n {option.name}\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n setState((st) => ({\r\n ...st,\r\n open: false\r\n }))\r\n }\r\n >\r\n Primary Battery\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {!state.open ? (\r\n <>\r\n \r\n \r\n Battery Manufacturer\r\n \r\n \r\n \r\n {state.primaryErrors.batteryTestManufacturerID}\r\n \r\n \r\n\r\n \r\n Barcode (Mode Designation)\r\n \r\n {/* {state.errors['batteryTestBarcode']} */}\r\n \r\n \r\n Capacity\r\n Ah\r\n }}\r\n />\r\n {state.errors['batteryTestCapacity']}\r\n \r\n\r\n \r\n Cold Test Current\r\n \r\n {state.errors['batteryTestColdTestCurrent']}\r\n \r\n\r\n \r\n MB Part Number\r\n \r\n {state.errors['batteryTestMBPartNumber']}\r\n \r\n \r\n \r\n \r\n Production Date (on negative terminal)\r\n \r\n \r\n \r\n {/* \r\n Weeks \r\n */}\r\n\r\n \r\n \r\n \r\n \r\n \r\n {state.primaryErrors.batteryTestProductionWeek}\r\n \r\n \r\n
\r\n \r\n Visual Inspection\r\n \r\n \r\n \r\n \r\n \r\n External signs of leaks\r\n \r\n \r\n \r\n \r\n \r\n {state.primaryErrors.batteryTestLeak}\r\n \r\n \r\n \r\n If yes, where is the leak:\r\n \r\n \r\n {state.primaryErrors.batteryTestLeakPosition}\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Midronics Test\r\n \r\n \r\n \r\n \r\n \r\n Result\r\n \r\n \r\n\r\n \r\n \r\n \r\n {state.primaryErrors.batteryTestMidtronicsTestResult}\r\n {/* \r\n \r\n setState((st) => ({\r\n ...st,\r\n open: true\r\n }))\r\n }\r\n >\r\n Secondary Battery\r\n \r\n */}\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n
\r\n {/* \r\n Midronics Test\r\n */}\r\n \r\n \r\n Test Code\r\n \r\n {state.errors['batteryTestTestCode']}\r\n \r\n \r\n Damage Code\r\n \r\n {state.errors['batteryTestDamageCode']}\r\n \r\n \r\n
\r\n
\r\n \r\n ) : (\r\n \r\n )}\r\n\r\n {!isAuditor && \r\n \r\n }\r\n
\r\n
\r\n \r\n {!state.open ? (\r\n \r\n \r\n Receipt\r\n \r\n\r\n \r\n {state.list[0]?.batteryTestPrintoutImage && (\r\n \r\n \r\n clearImage(1)} />\r\n \r\n \r\n )}\r\n \r\n {state.list[0]?.batteryTestPrintoutImage ? (\r\n \r\n ) : (\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

No Receipt Found

\r\n
\r\n )}\r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n Receipt\r\n \r\n\r\n \r\n {state.list[1]?.batteryTestPrintoutImage && (\r\n \r\n \r\n clearImage(2)} />\r\n \r\n \r\n )}\r\n \r\n {state.list[1]?.batteryTestPrintoutImage ? (\r\n \r\n ) : (\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n

No Receipt Found

\r\n \r\n )}\r\n
\r\n
\r\n \r\n )}\r\n {state.primaryErrors.batteryTestPrintoutImage}\r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n};\r\nexport default BatteryTest;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getTyreCheckByID = async (headerID, id) => {\r\n let res;\r\n if (id) {\r\n res = await get(`TyreConditions?HeaderRecordID=${headerID}&TyreConditionID=${id}`, { useAuthToken: true });\r\n } else {\r\n res = await get(`TyreConditions?HeaderRecordID=${headerID}`, { useAuthToken: true });\r\n }\r\n return res;\r\n};\r\n\r\nexport const postTyreCheck = async (data) => {\r\n let res = await post(`TyreConditions`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import { createContext, useCallback, useEffect, useState, useRef, useContext } from 'react';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { InputLabel, Typography, FormControlLabel, Radio, RadioGroup } from '@material-ui/core';\r\nimport { getTyreCheckByID, postTyreCheck } from '../../../../Core/Service/tyreCheckService';\r\nimport { AppStorage } from '../../../../Core/Service/storage-service';\r\nimport moment from 'moment';\r\nimport formatters from '../../../../Core/Grid/inputFormatter';\r\n\r\nexport const TyreChecksContaxt = createContext();\r\n\r\nexport const TyreCheckProvider = (props) => {\r\n const { hideModal, showToast, hideTopNavAndMenu, userRoles } = useContext(AppContext);\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const [inputList, setInputList] = useState([{ tyreConditionDefectDescription: '' }]);\r\n const [state, setState] = useState({\r\n editTyreAxlesVM: [],\r\n tyreAxlesVM: [],\r\n remainingAxle: [],\r\n tyreConditionHeaderRecordID: props.match.params.jobId || null,\r\n tyreConditionID: null,\r\n errors: {}\r\n });\r\n\r\n const signCanvas = useRef({});\r\n\r\n const GetTechnicianSign = () => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n techniciansign: signCanvas.current.toDataURL()\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n useEffect(async () => {\r\n let res = await getTyreCheckByID(state.tyreConditionHeaderRecordID, state.tyreConditionID);\r\n if (res.success) {\r\n let data = res.data.details[0];\r\n let defectsData = res.data.tyreConditionDefects;\r\n // let getAxle = [];\r\n // if (res.data.tyreAxles) {\r\n // let IsAxel1 = res.data.tyreAxles.find((x) => x.axleNumber === 1);\r\n // let IsAxel2 = res.data.tyreAxles.find((x) => x.axleNumber === 2);\r\n // let IsAxel3 = res.data.tyreAxles.find((x) => x.axleNumber === 3);\r\n // let IsAxel4 = res.data.tyreAxles.find((x) => x.axleNumber === 4);\r\n // if (!IsAxel1) {\r\n // IsAxel1 = { axleNumber: 1 };\r\n // }\r\n // if (!IsAxel2) {\r\n // IsAxel2 = { axleNumber: 2 };\r\n // }\r\n // if (!IsAxel3) {\r\n // IsAxel3 = { axleNumber: 3 };\r\n // }\r\n // if (!IsAxel4) {\r\n // IsAxel4 = { axleNumber: 4 };\r\n // }\r\n // getAxle = [IsAxel1, IsAxel2, IsAxel3, IsAxel4];\r\n // }\r\n\r\n // let remainingAxle = [...getAxle];\r\n // remainingAxle.shift();\r\n\r\n if (data.tyreConditionID) {\r\n setState((st) => ({\r\n ...st,\r\n registration: data.registration,\r\n wipNumber: data.wipNumber,\r\n customerName: data.customerName,\r\n tyreConditionID: data.tyreConditionID,\r\n tyreConditionHeaderRecordID: data.tyreConditionHeaderRecordID,\r\n tyreConditionFrontTyreSize: data.tyreConditionFrontTyreSize,\r\n tyreConditionRearTyreSize: data.tyreConditionRearTyreSize,\r\n tyreConditionDateOfTachoGraph: formatters.DateFormatter(data?.tyreConditionDateOfTachoGraph),\r\n tyreConditionWindscreenCondition: data.tyreConditionWindscreenCondition,\r\n tyreConditionWindscreenConditionDescription: data.tyreConditionWindscreenConditionDescription,\r\n techniciansign: data.tyreConditionTechnicianSignature,\r\n imgtechniciansign: data.tyreConditionTechnicianSignature,\r\n tyreAxlesVM: [...res.data.tyreAxles]\r\n }));\r\n\r\n setInputList(!defectsData.length ? [{ tyreConditionDefectDescription: '' }] : defectsData);\r\n } else {\r\n setState((st) => ({\r\n ...st,\r\n registration: data.registration,\r\n wipNumber: data.wipNumber,\r\n customerName: data.customerName\r\n }));\r\n }\r\n }\r\n }, [state.tyreConditionID]);\r\n\r\n const clear = () => {\r\n if (state.imgtechniciansign) {\r\n setState((st) => ({\r\n ...st,\r\n imgtechniciansign: null,\r\n techniciansign: null\r\n }));\r\n } else {\r\n signCanvas.current.clear();\r\n }\r\n };\r\n\r\n const useDefaultSig = () => {\r\n let userSign = AppStorage.getSignature();\r\n if (userSign) {\r\n signCanvas.current.fromDataURL(AppStorage.getSignature());\r\n setState((st) => ({ ...st, techniciansign: AppStorage.getSignature() }));\r\n } else {\r\n showToast('User signature not found');\r\n }\r\n };\r\n\r\n const handleInputChange = (e, index) => {\r\n const { name, value } = e.target;\r\n const list = [...inputList];\r\n list[index][name] = value;\r\n setInputList(list);\r\n };\r\n\r\n const handleAddClick = () => {\r\n setInputList([...inputList, { tyreConditionDefectDescription: '' }]);\r\n };\r\n const handleRemoveClick = (index) => {\r\n const list = [...inputList];\r\n list.splice(index, 1);\r\n setInputList(list);\r\n };\r\n\r\n const YesNoRadio = (props) => {\r\n return (\r\n
\r\n \r\n } label=\"Yes\" />\r\n } label=\"No\" />\r\n \r\n
\r\n );\r\n };\r\n\r\n const inputChange = useCallback((e) => {\r\n const { name, value, type } = e.target;\r\n if (value === 'true' && type.toLowerCase() === 'radio') {\r\n setState((st) => ({ ...st, [name]: true }));\r\n } else if (value === 'false' && type.toLowerCase() === 'radio') {\r\n setState((st) => ({ ...st, [name]: false }));\r\n } else {\r\n setState((st) => ({ ...st, [name]: value }));\r\n }\r\n }, []);\r\n\r\n const handleInputs = (axelNo) => (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n let ax = st.tyreAxlesVM.find((a) => a.axleNumber === axelNo);\r\n if (!ax) {\r\n ax = { axleNumber: axelNo };\r\n st.tyreAxlesVM.push(ax);\r\n }\r\n ax[name] = value;\r\n\r\n return { ...st, tyreAxlesVM: [...st.tyreAxlesVM] };\r\n });\r\n };\r\n\r\n const Validations = () => {\r\n let fromValid = true;\r\n let errors = {};\r\n if (!state.tyreConditionWindscreenCondition) {\r\n if (!state.tyreConditionWindscreenConditionDescription) {\r\n errors.message = 'Description is required';\r\n fromValid = false;\r\n }\r\n }\r\n\r\n setState((st) => ({ ...st, errors: errors }));\r\n return fromValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n let finalAxle = state.tyreAxlesVM.map((ax) => ({\r\n axleNumber: +ax.axleNumber || null,\r\n nsBrakeLineRemaining: +ax.nsBrakeLineRemaining || null,\r\n osBrakeLineRemaining: +ax.osBrakeLineRemaining || null,\r\n nsTreadDepth: +ax.nsTreadDepth || null,\r\n osTreadDepth: +ax.osTreadDepth || null,\r\n nsFrontTreadDepth: +ax.nsFrontTreadDepth || null,\r\n osFrontTreadDepth: +ax.osFrontTreadDepth || null,\r\n nsTyrePressure: +ax.nsTyrePressure || null,\r\n osTyrePressure: +ax.osTyrePressure || null,\r\n nsFrontTyrePressure: +ax.nsFrontTyrePressure || null,\r\n osFrontTyrePressure: +ax.osFrontTyrePressure || null,\r\n nsBrakeTemperatureAxle: +ax.nsBrakeTemperatureAxle || null,\r\n osBrakeTemperatureAxle: +ax.osBrakeTemperatureAxle || null\r\n }));\r\n\r\n if (Validations()) {\r\n let data = {\r\n tyreConditionID: state.tyreConditionID || null,\r\n tyreConditionHeaderRecordID: state.tyreConditionHeaderRecordID || null,\r\n tyreConditionFrontTyreSize: state.tyreConditionFrontTyreSize || null,\r\n tyreConditionRearTyreSize: state.tyreConditionRearTyreSize || null,\r\n tyreConditionDateOfTachoGraph: state.tyreConditionDateOfTachoGraph || null,\r\n tyreConditionWindscreenCondition: state.tyreConditionWindscreenCondition,\r\n tyreConditionWindscreenConditionDescription: state.tyreConditionWindscreenConditionDescription || null,\r\n tyreConditionTechnicianSignature: state.techniciansign || null,\r\n tyreAxlesVM: finalAxle,\r\n tyreConditionDefectsVM: inputList\r\n };\r\n\r\n let res = await postTyreCheck(data);\r\n if (res.success) {\r\n showToast(res.message);\r\n if (fromStep) {\r\n setTimeout(() => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }, 1000);\r\n }\r\n }\r\n if (res.errors) { \r\n for (const [key, value] of Object.entries(res?.errors)) {\r\n showToast(`${key}: ${value}`);\r\n }\r\n } else {\r\n showToast(res.message);\r\n }\r\n }\r\n };\r\n return (\r\n \r\n {props.children}\r\n \r\n );\r\n};\r\n","import React from 'react';\r\nimport singleAxel from './VehicleDiagrams/images1.png';\r\nimport doubleAxelOne from './VehicleDiagrams/axImage01.png';\r\nimport doubleAxelTwo from './VehicleDiagrams/azImage02.png';\r\nimport doubleAxelThree from './VehicleDiagrams/axImage03.png';\r\nimport { TextBox, SecondaryButton, CustomButton, AppButtonGroup } from '../../../../Core/FormInput';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { InputLabel } from '@material-ui/core';\r\n\r\nconst style = {\r\n axOS: {\r\n marginTop: '45px'\r\n },\r\n axOS2: {\r\n marginTop: '152px'\r\n },\r\n ax2OS: {\r\n marginTop: '-18px'\r\n },\r\n ax2OS2: {\r\n marginTop: '0px'\r\n },\r\n ax2NS: { marginTop: '135px' },\r\n ax2Break: { marginBottom: '5px' },\r\n axBreakHeading: { textAlign: 'center' }\r\n};\r\n\r\nexport const SingleAxle = (props) => {\r\n const { state, axNO } = props;\r\n const axle1 = state.tyreAxlesVM?.find((st) => st.axleNumber === axNO);\r\n return (\r\n \r\n \r\n

AXLE 1

\r\n
\r\n \r\n \r\n \r\n \r\n Depth*\r\n \r\n\r\n \r\n \r\n Depth*\r\n \r\n\r\n \r\n \r\n \r\n Brakelining*\r\n \r\n \r\n Brakelining*\r\n \r\n \r\n \r\n \r\n Pressure*\r\n \r\n \r\n \r\n Pressure*\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport const CustomAxle = (props) => {\r\n const { state, axNO } = props;\r\n let ax = state.tyreAxlesVM?.find((m) => m.axleNumber === axNO);\r\n return (\r\n \r\n

{props.axleTitle}

\r\n \r\n \r\n \r\n \r\n Depth*\r\n \r\n \r\n \r\n {/* Depth* */}\r\n \r\n \r\n \r\n Depth*\r\n \r\n \r\n \r\n {/* Depth* */}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Brakelining*\r\n \r\n \r\n \r\n \r\n Brakelining*\r\n \r\n \r\n \r\n \r\n \r\n \r\n Pressure*\r\n \r\n \r\n \r\n {/* Pressure* */}\r\n \r\n \r\n \r\n Pressure*\r\n \r\n \r\n \r\n {/* Pressure* */}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\n// export const EditAxle = (props) => {\r\n// const { state } = props;\r\n// return (\r\n// \r\n//

AXLE{state.axleNumber}

\r\n// \r\n// \r\n// \r\n// \r\n// Depth*\r\n// \r\n// \r\n// \r\n// Depth*\r\n// \r\n// \r\n// \r\n// Depth*\r\n// \r\n// \r\n// \r\n// Depth*\r\n// \r\n// \r\n// \r\n// \r\n// \r\n// \r\n// Brakelining*\r\n// \r\n// \r\n// \r\n// \r\n// Brakelining*\r\n// \r\n// \r\n// \r\n// \r\n// \r\n// \r\n// Pressure*\r\n// \r\n// \r\n// \r\n// Pressure*\r\n// \r\n// \r\n// \r\n// Pressure*\r\n// \r\n// \r\n// \r\n// Pressure*\r\n// \r\n// \r\n// \r\n// \r\n// \r\n// {/* */}\r\n//
\r\n// );\r\n// };\r\n","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAI0AAABRCAYAAADvoiXxAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAMSSURBVHhe7dzLqhpBFIXh8o6CgigIguBM8f1fRkQcCIqgHEG8XxJXUwYjHjjb2NVx7/VBky4dZNB/qsqOdurXlaO/DIdDt16v/eh7+XzedbtdP7Ij7f8k+jFGQ2KMhsQYDYkxGhJjNCTGaEiM0ZAYoyExRkNijIbEGA2JMRoSYzQkxmhIjNGQGKN5At9Lu1wu7ng8RsfhcIiO2xjvWf7uGqO5czqd3GQycavVKjpHGPdx3MZ4D/Hs9/vosIZf9/QQymg0imYUqWazGR1WMJqr2WzmxuOxH72m0Wi4VqvlR7qZjwbLEY53qNfrrt1u+5Fepvc0X19fbwsG5vP5P89Yn8BsNNjAxnGBsdQtl0s/0slsNNPp9KVN709gQ30+n/1IH5PRYBnBERcE885l739jMpoQFxTLlNZ7OOaiwf2YuJalR4vFwp/pYi6akBcSs43GvY2paHAB49zLPMLft9ls/EgPU9FgaQotZKShmIomifsnGu/ZmIomiaUCS5S2T1GMJoDtduvPdDATTZIbUs40HyrJj77aPkGZiSbUDT0LTO1pkqItWEZDYoyGxBhNAHjesCZmoknywmWzWX+mA6MJgDPNhyoUCi6TyfhRWKVSyZ/pYGpPk9TFYzQfrFwu+7NwisViYjNcXBhNzCqVij/Tw1w0of/V12o1f6aHqWgAv7kOBZ+atO1ngNHESOuTJMxFg+UpxJKBWQYPBNDIXDSAGSDuvY3m59WYjAY3+uK8qNhwa51lwGQ0gL1NHB/BsSxpf0aN2WgAF/fd/y+Ep2FhJtPMdDS4uJ1O523hIMJqtepHevGZe1f4tUC/33/5a5nYVGOG0byPucdoPPxaAY8gwY/2JbAvwgyjfUm6x2geYNYZDAZut9v5V55LpVLRf0b2ej3/ih2m9zTPYMZADLlcLvrGHZaedDr958BreA8HxhYxmm9gJkEUiAah3A68hvcsYzQkxmhIjNGQGKMhMUZDYoyGxBgNiTEaEmM0JMZoSIzRkBijITFGQ2KMhsQYDYkxGhJjNCTGaEiM0ZAYoyEh534Dro8Yg7Uu3YAAAAAASUVORK5CYIJVNxErAAAAAElFTkSuQmCCgg==\"","export default \"data:image/png;base64,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\"","import React, { useEffect, useContext } from 'react';\r\nimport { TyreChecksContaxt, TyreCheckProvider } from './tyreChecksProvider';\r\nimport AddBoxIcon from '@material-ui/icons/AddBox';\r\nimport RemoveCircleIcon from '@material-ui/icons/RemoveCircle';\r\nimport { TextBox, SecondaryButton, CustomButton, AppButtonGroup } from '../../../../Core/FormInput';\r\nimport AppContext from '../../../../App/AppContext';\r\nimport { Button, CircularProgress, DialogContent, Grid, Tooltip, FormLabel, IconButton, InputLabel, Typography } from '@material-ui/core';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport BorderColorIcon from '@material-ui/icons/BorderColor';\r\nimport SignaturePad from 'react-signature-canvas';\r\nimport { SingleAxle, CustomAxle, EditAxle } from './tyreAxle';\r\nimport InputAdornment from '@material-ui/core/InputAdornment';\r\nimport { useHistory } from 'react-router-dom';\r\nimport moment from 'moment';\r\n\r\nconst TyreChecks = () => {\r\n const {\r\n state,\r\n fromStep,\r\n inputList,\r\n handleAddClick,\r\n handleRemoveClick,\r\n handleInputChange,\r\n useDefaultSig,\r\n signCanvas,\r\n GetTechnicianSign,\r\n clear,\r\n YesNoRadio,\r\n handleInputs,\r\n inputChange,\r\n handleSubmit\r\n } = useContext(TyreChecksContaxt);\r\n const { hideModal, showToast, hideTopNavAndMenu } = useContext(AppContext);\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n const history = useHistory();\r\n return (\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {' '}\r\n Registration Number:  {state.registration}\r\n \r\n \r\n {' '}\r\n WIP No:  {state.wipNumber}\r\n \r\n \r\n Company : \r\n {state.customerName}\r\n \r\n \r\n \r\n \r\n {/* \r\n Size and Type of Tyre\r\n */}\r\n \r\n Size & Type of Tyre (Front)\r\n \r\n \r\n \r\n Size & Type of Tyre (Rear)\r\n \r\n \r\n \r\n Date of Tachograph (Last Callibration)\r\n \r\n \r\n \r\n Windscreen Condition Okay?\r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.errors?.message}\r\n \r\n \r\n \r\n \r\n \r\n handleInputs(1)} state={state} axNO={1} />\r\n handleInputs(2)} axNO={2} state={state} />\r\n handleInputs(3)} axNO={3} state={state} />\r\n handleInputs(4)} axNO={4} state={state} />\r\n \r\n \r\n {inputList?.map((x, i) => (\r\n \r\n \r\n Defect\r\n handleInputChange(e, i)}\r\n InputProps={{\r\n endAdornment: (\r\n \r\n <>\r\n {inputList.length !== 1 && (\r\n handleRemoveClick(i)}\r\n />\r\n )}\r\n {inputList.length - 1 === i && (\r\n \r\n )}\r\n \r\n \r\n )\r\n }}\r\n />\r\n \r\n \r\n ))}\r\n \r\n\r\n \r\n \r\n Technician Signature  \r\n {!state.imgtechniciansign && }\r\n  \r\n {!state.imgtechniciansign && }\r\n \r\n {state.imgtechniciansign ? (\r\n \r\n ) : (\r\n <>\r\n {\r\n GetTechnicianSign();\r\n }}\r\n canvasProps={{\r\n className: 'signatureCanvas'\r\n }}\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n history.goBack()}>\r\n Cancel\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nconst Screen = (props) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\nexport default Screen;\r\n","import React from 'react';\r\nimport { Grid, Avatar, Typography, Paper, TableBody, Table, TableCell, TableContainer, TableHead, TableRow } from '@material-ui/core';\r\nimport DriveEtaIcon from '@material-ui/icons/DriveEta';\r\nimport { PureComponent } from 'react';\r\nimport { BarChart, Bar, Cell, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer, Label, ComposedChart } from 'recharts';\r\nimport { LineChart, Line, PieChart, Pie, Sector, LabelList } from 'recharts';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\n\r\n// import { Tooltip } from '@material-ui/core';\r\nconst useStyles = makeStyles({\r\n table: {\r\n border: '1px solid #d3d3d3',\r\n minHeight: 250\r\n }\r\n});\r\n\r\nconst COLORS = [\r\n '#0074D9',\r\n '#FF4136',\r\n '#2ECC40',\r\n '#FF851B',\r\n '#7FDBFF',\r\n '#B10DC9',\r\n '#FFDC00',\r\n '#001f3f',\r\n '#39CCCC',\r\n '#01FF70',\r\n '#85144b',\r\n '#F012BE',\r\n '#3D9970',\r\n '#111111',\r\n '#AAAAAA'\r\n];\r\n\r\nconst barColors = {\r\n 0: '#0074D9',\r\n 1: '#FF4136',\r\n 2: '#2ECC40',\r\n 3: '#FF851B',\r\n 4: '#7FDBFF',\r\n 5: '#B10DC9',\r\n 6: '#FFDC00',\r\n 7: '#001f3f',\r\n 8: '#39CCCC',\r\n 9: '#01FF70',\r\n 10: '#85144b',\r\n 11: '#F012BE',\r\n 12: '#3D9970',\r\n 13: '#111111',\r\n 14: '#AAAAAA'\r\n};\r\n\r\nexport const DashboardTemplets = (props) => {\r\n return (\r\n
\r\n \r\n \r\n \r\n {!props.currency ? : £}\r\n \r\n \r\n \r\n \r\n {props.val}\r\n \r\n \r\n {props.title}\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport const SalesBarChart = (props) => {\r\n return (\r\n <>\r\n {props.data?.length > 0 ? (\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {props.totalVal ? (\r\n \r\n {/* */}\r\n {props.data.map((entry, index) => (\r\n {\r\n props.onClick && props.onClick(entry.name);\r\n }}\r\n style={{ cursor: 'pointer' }}\r\n />\r\n ))}\r\n \r\n ) : (\r\n \r\n {' '}\r\n {props.data.map((entry, index) => (\r\n {\r\n props.onClick && props.onClick(entry.name);\r\n }}\r\n style={{ cursor: 'pointer' }}\r\n />\r\n ))}\r\n \r\n )}\r\n \r\n \r\n ) : (\r\n \r\n No Record found\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport const SalePieChart = (props) => {\r\n return (\r\n <>\r\n {props.data?.length > 0 ? (\r\n <>\r\n \r\n \r\n \r\n {props?.data?.map((entry, index) => (\r\n {\r\n props.onClick && props.onClick(entry.name);\r\n }}\r\n style={{ cursor: `${props.onClick ? 'pointer' : ''}` }}\r\n />\r\n ))}\r\n \r\n \r\n {/* */}\r\n \r\n
\r\n {props?.data?.map((m, i) => {\r\n let color = COLORS[i];\r\n return (\r\n
\r\n
\r\n {' '}\r\n
\r\n
 {m.name}
\r\n
 ({m.value})
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n \r\n ) : (\r\n \r\n No Record found\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport const SalesLineChart = (props) => {\r\n return (\r\n <>\r\n {props.data?.length > 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 No Record found\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport const SalesTable = (props) => {\r\n const classes = useStyles();\r\n return (\r\n \r\n \r\n \r\n \r\n {props.t1 ? 'VehicleType' : 'Salesperson'}\r\n Sold\r\n \r\n \r\n \r\n {props?.rows?.length > 0 ? (\r\n props?.rows?.map((row) => (\r\n \r\n \r\n {row.name}\r\n \r\n {row.value}\r\n \r\n ))\r\n ) : (\r\n \r\n No record found\r\n \r\n )}\r\n \r\n
\r\n \r\n );\r\n};\r\n","import { get } from './http-calls';\r\nimport { memoize } from 'lodash';\r\n\r\nexport const getsalesDashBoard = memoize(async () => {\r\n let res = await get(`Sales/SalesDashboard`, { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getUsedVehicle = memoize(async () => {\r\n let res = await get(`Sales/SaleUsedVehicleDashBoard`, { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getNewVehicle = memoize(async () => {\r\n let res = await get(`Sales/SaleNewVehicleDashBoard`, { useAuthToken: true });\r\n return res;\r\n});\r\n\r\nexport const getVehicleContingency = memoize(async () => {\r\n let res = await get(`Sales/SaleContingencyDashBoard`, { useAuthToken: true });\r\n return res;\r\n});\r\nexport const getOrderVehicle = memoize(async () => {\r\n let res = await get(`Sales/NewVehicleOrdersDashBoard`, { useAuthToken: true });\r\n return res;\r\n});\r\n","import React from 'react';\r\nimport { Grid, Avatar, Typography, Paper, CircularProgress } from '@material-ui/core';\r\nimport DriveEtaIcon from '@material-ui/icons/DriveEta';\r\nimport { DashboardTemplets, SalesBarChart, SalesLineChart, SalesTable, SalePieChart } from './dashboardTemplates';\r\nimport ReactSpeedometer from 'react-d3-speedometer';\r\nimport { getsalesDashBoard, getUsedVehicle, getNewVehicle, getVehicleContingency, getOrderVehicle } from './../../../../../Core/Service/salesDasboard-service';\r\nimport { useEffect } from 'react';\r\nimport { useState } from 'react';\r\nimport { useHistory } from 'react-router-dom';\r\n// import { CircularProgress } from '@material-ui/core/CircularProgress';\r\n\r\nconst SalesDashboard = () => {\r\n const [state, setState] = useState({\r\n usedVehicleFrenchise: [],\r\n usedVehicleBranch: [],\r\n usedVehicleModelCode: [],\r\n newVehicleStatus: [],\r\n newVehicleModel: [],\r\n newVehicleModelCode: [],\r\n contBranch: [],\r\n contDepartment: [],\r\n contFranchise: [],\r\n orderYear: [],\r\n orderMonth: [],\r\n orderCount: [],\r\n vehicleType_Sold: [],\r\n salePerson_Sold: [],\r\n UsedLoader: true,\r\n NewOrderLoader: true,\r\n NewLoader: true,\r\n ContiLoader: true\r\n });\r\n\r\n const pullOrderData = async () => {\r\n let res = await getOrderVehicle();\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n orderYear: res.data?.table.map((m) => ({\r\n name: m.orderYear,\r\n val: m.sold\r\n })),\r\n orderMonth: res.data?.table1.map((m) => ({\r\n name: m.orderMonthName,\r\n val: m.sold\r\n })),\r\n orderCount: res.data?.table3.map((m) => ({\r\n name: m.modelDescription,\r\n total: m.vehicleCount\r\n })),\r\n vehicleType_Sold: res.data?.table2.map((m) => ({\r\n name: m.modelAnalysisCode,\r\n value: m.vehicleCount\r\n })),\r\n salePerson_Sold: res.data?.table4.map((m) => ({\r\n name: m.salesperson,\r\n value: m.totalSold\r\n })),\r\n progress: 100,\r\n NewOrderLoader: false\r\n }));\r\n }\r\n };\r\n\r\n const pullUsedVehicleData = async () => {\r\n let usedVehicleRes = await getUsedVehicle();\r\n\r\n if (usedVehicleRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n usedVehicleFrenchise: usedVehicleRes.data?.table.map((m) => ({\r\n name: m.franchiseName,\r\n total: m.numberOfVehicles,\r\n value: m.totalValue\r\n })),\r\n usedVehicleBranch: usedVehicleRes.data?.table1.map((m) => ({\r\n name: m.branchShortName,\r\n total: m.numberOfVehicles,\r\n value: m.totalValue\r\n })),\r\n usedVehicleModelCode: usedVehicleRes.data?.table2.map((m) => ({\r\n name: m.modelCode,\r\n total: m.numberOfVehicles,\r\n totalvalue: m.totalValue\r\n })),\r\n totalUsedVehicleCount: usedVehicleRes.data?.table3[0].totalVehicleCount,\r\n progress: 25,\r\n UsedLoader: false\r\n }));\r\n }\r\n };\r\n\r\n const pullNewVehicleData = async () => {\r\n let newVehicleRes = await getNewVehicle();\r\n if (newVehicleRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n newVehicleStatus: newVehicleRes.data?.table.map((m) => ({\r\n name: m.statusDescription,\r\n total: m.vehicleCount\r\n })),\r\n newVehicleModel: newVehicleRes.data?.table1.map((m) => ({\r\n name: m.modelAnalysisCode,\r\n value: m.vehicleCount\r\n })),\r\n newVehicleModelCode: newVehicleRes.data?.table2.map((m) => ({\r\n name: m.modelDescription,\r\n total: m.vehicleCount\r\n })),\r\n totalNewVehicleCount: newVehicleRes.data?.table3[0].totalVehicleCount,\r\n progress: 50,\r\n NewLoader: false\r\n }));\r\n }\r\n };\r\n\r\n const pullcontingencyData = async () => {\r\n let res = await getVehicleContingency();\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n contBranch: res.data?.table.map((m) => ({\r\n name: m.branchShortName,\r\n total: m.total\r\n })),\r\n contDepartment: res.data?.table1.map((m) => ({\r\n name: m.departmentDescription,\r\n total: m.total\r\n })),\r\n contFranchise: res.data?.table2.map((m) => ({\r\n name: m.franchiseName,\r\n total: m.total\r\n })),\r\n\r\n contTotalCount: `£${res.data?.table3[0].total}`,\r\n progress: 75,\r\n ContiLoader: false\r\n }));\r\n }\r\n };\r\n const history = useHistory();\r\n\r\n useEffect(async () => {\r\n pullUsedVehicleData();\r\n pullNewVehicleData();\r\n pullcontingencyData();\r\n pullOrderData();\r\n }, []);\r\n const GotoNewVehicleOrder = (val) => {\r\n console.log(val, 'val');\r\n let searchQuery = `?mc=${val}`;\r\n history.push({\r\n pathname: `/sales/VehicleNewOrder`,\r\n search: searchQuery\r\n });\r\n };\r\n const GoToUsedVehicleOrder = (name) => (val) => {\r\n let searchQuery = `?${name}=${val}`;\r\n history.push({\r\n pathname: `/sales/UsedVehicleStock`,\r\n search: searchQuery\r\n });\r\n };\r\n const GoToNewVehicleStockExcludingWIP = (name, url) => (val) => {\r\n ///sales/SalesContingencyDebt\r\n let searchQuery = `?${name}=${val}`;\r\n history.push({\r\n pathname: `/sales/${url}`,\r\n search: searchQuery\r\n });\r\n };\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n New Vehicle Order\r\n \r\n \r\n {state.NewOrderLoader ? (\r\n
\r\n \r\n \r\n
\r\n
\r\n ) : (\r\n <>\r\n \r\n
\r\n \r\n New Vehicle Order Year\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n New Vehicle Order Month\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n New Vehicle Order Count\r\n \r\n \r\n
\r\n {/* */}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n Used Vehicle\r\n \r\n \r\n {state.UsedLoader ? (\r\n
\r\n \r\n \r\n
\r\n \r\n ) : (\r\n <>\r\n \r\n
\r\n \r\n Vehicle by Franchise\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {/* NEW VEHICLE ORDERS MONTH */}\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Vehicle by Branch\r\n \r\n \r\n
\r\n {/* */}\r\n
\r\n \r\n
\r\n \r\n {/* NEW VEHICLE ORDERS MONTH */}\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Vehicle by model codes\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Total model by model codes\r\n \r\n \r\n
\r\n {/* */}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n New Vehicle\r\n \r\n \r\n {state.NewLoader ? (\r\n
\r\n \r\n \r\n
\r\n \r\n ) : (\r\n <>\r\n \r\n
\r\n \r\n Vehicles count by status\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {/* NEW VEHICLE ORDERS MONTH */}\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Vehicle count by model\r\n \r\n \r\n
\r\n {/* */}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Sales Contingency Debt\r\n \r\n \r\n {state.ContiLoader ? (\r\n
\r\n \r\n \r\n
\r\n \r\n ) : (\r\n <>\r\n \r\n
\r\n \r\n Sales branch total\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Sales Departments total\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Sales Franchise total\r\n \r\n \r\n
\r\n {/* */}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport default SalesDashboard;\r\n","import React from 'react';\r\nimport { makeStyles } from '@material-ui/core/styles';\r\nimport AppBar from '@material-ui/core/AppBar';\r\nimport Tab from '@material-ui/core/Tab';\r\nimport TabContext from '@material-ui/lab/TabContext';\r\nimport TabList from '@material-ui/lab/TabList';\r\nimport TabPanel from '@material-ui/lab/TabPanel';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n flexGrow: 1,\r\n backgroundColor: theme.palette.background.paper\r\n }\r\n}));\r\n\r\nexport const CustomTab = (props) => {\r\n const { TabScreen1, TabScreen2, TabScreen3 } = props;\r\n const classes = useStyles();\r\n const [value, setValue] = React.useState('1');\r\n\r\n const handleChange = (event, newValue) => {\r\n setValue(newValue);\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n \r\n {' '}\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Grid, Avatar, Typography, Paper, Tabs, Tab, CircularProgress } from '@material-ui/core';\r\nimport { DashboardTemplets, SalesBarChart, SalesLineChart, SalesTable, SalePieChart } from '../Dashboard/dashboardTemplates';\r\nimport ReactSpeedometer from 'react-d3-speedometer';\r\nimport { CustomTab } from './tabViewScreen';\r\n\r\nimport { getUsedVehicle, getNewVehicle, getVehicleContingency, getOrderVehicle } from './../../../../../Core/Service/salesDasboard-service';\r\n\r\nconst TabScreen1 = (props) => {\r\n return (\r\n \r\n \r\n
\r\n \r\n Vehicle Count By Status\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Vehicle Count By Model Analysis Code\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Vehicle Count By Model\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\nconst TabScreen2 = (props) => {\r\n return (\r\n \r\n \r\n
\r\n \r\n Vehicle By Franchise\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Total Value By Franchise\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Vehicle By Branch\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Total Value By branch\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Vehicle By Model Codes\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Total Value By Model Codes\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\nconst TabScreen3 = (props) => {\r\n return (\r\n \r\n \r\n
\r\n \r\n Sales Branches Total\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Sales Department Total\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Sales Franchise Total\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst SalesDashboard = () => {\r\n const [state, setState] = useState({\r\n usedVehicleFrenchise: [],\r\n usedVehicleBranch: [],\r\n usedVehicleModelCode: [],\r\n newVehicleStatus: [],\r\n newVehicleModel: [],\r\n newVehicleModelCode: [],\r\n contBranch: [],\r\n contDepartment: [],\r\n contFranchise: [],\r\n showLoader: true\r\n });\r\n const pullUsedVehicleData = async () => {\r\n let usedVehicleRes = await getUsedVehicle();\r\n\r\n if (usedVehicleRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n usedVehicleFrenchise: usedVehicleRes.data?.table.map((m) => ({\r\n name: m?.franchiseName,\r\n total: m?.numberOfVehicles,\r\n totalvalue: m?.totalValue\r\n })),\r\n usedVehicleBranch: usedVehicleRes.data?.table1.map((m) => ({\r\n name: m?.branchShortName,\r\n total: m?.numberOfVehicles,\r\n totalvalue: m?.totalValue\r\n })),\r\n usedVehicleModelCode: usedVehicleRes.data?.table2.map((m) => ({\r\n name: m?.modelCode,\r\n total: m?.numberOfVehicles,\r\n totalvalue: m?.totalValue\r\n })),\r\n totalUsedVehicleCount: usedVehicleRes.data?.table3[0].totalVehicleCount\r\n }));\r\n }\r\n };\r\n\r\n const pullNewVehicleData = async () => {\r\n let newVehicleRes = await getNewVehicle();\r\n if (newVehicleRes.success) {\r\n setState((st) => ({\r\n ...st,\r\n newVehicleStatus: newVehicleRes.data?.table.map((m) => ({\r\n name: m?.statusDescription,\r\n total: m?.vehicleCount\r\n })),\r\n newVehicleModel: newVehicleRes.data?.table1.map((m) => ({\r\n name: m?.modelAnalysisCode,\r\n total: m?.vehicleCount\r\n })),\r\n newVehicleModelCode: newVehicleRes.data?.table2.map((m) => ({\r\n name: m?.modelDescription,\r\n total: m?.vehicleCount\r\n })),\r\n totalNewVehicleCount: newVehicleRes.data?.table3[0].totalVehicleCount,\r\n showLoader: false\r\n }));\r\n }\r\n };\r\n\r\n const pullcontingencyData = async () => {\r\n let res = await getVehicleContingency();\r\n if (res.success) {\r\n setState((st) => ({\r\n ...st,\r\n contBranch: res.data?.table.map((m) => ({\r\n name: m?.branchShortName,\r\n total: m?.total\r\n })),\r\n contDepartment: res.data?.table1.map((m) => ({\r\n name: m?.departmentDescription,\r\n total: m?.total\r\n })),\r\n contFranchise: res.data?.table2.map((m) => ({\r\n name: m?.franchiseName,\r\n total: m?.total\r\n })),\r\n\r\n contTotalCount: `£${res.data?.table3[0].total}`\r\n }));\r\n }\r\n };\r\n\r\n useEffect(async () => {\r\n pullUsedVehicleData();\r\n pullNewVehicleData();\r\n pullcontingencyData();\r\n // pullOrderData();\r\n }, []);\r\n\r\n return (\r\n
\r\n {state.showLoader ? (\r\n
\r\n
\r\n \r\n
\r\n
\r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n TabScreen1(state)} TabScreen2={() => TabScreen2(state)} TabScreen3={() => TabScreen3(state)} />\r\n \r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default SalesDashboard;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getHandOverDetails = async (ID) => {\r\n let res = await get(`handoversheet/${ID}`, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const saveHandOverSheets = async (ID, data) => {\r\n let res = await post(`handoversheet/${ID}`, data, { useAuthToken: true });\r\n return res;\r\n};\r\n","import {\r\n Checkbox,\r\n FormControlLabel,\r\n FormHelperText,\r\n FormLabel,\r\n Grid,\r\n InputLabel,\r\n Table,\r\n TableBody,\r\n TableCell,\r\n TableContainer,\r\n TableHead,\r\n TableRow\r\n} from '@material-ui/core';\r\nimport React, { useContext, useEffect } from 'react';\r\nimport { useState } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, CustomButton, SecondaryButton } from '../../../Core/FormInput';\r\nimport { getDiagnosticSheetHeaderDetails } from '../../../Core/Service/diagnosticSheets';\r\nimport { makeStyles, withStyles } from '@material-ui/core/styles';\r\nimport AddBox from '@material-ui/icons/AddBox';\r\n\r\nimport RemoveCircle from '@material-ui/icons/RemoveCircle';\r\nimport { getHandOverDetails, saveHandOverSheets } from '../../../Core/Service/handOverSheet-service';\r\nimport moment from 'moment/moment';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\n\r\nconst getStripedStyle = (index) => {\r\n return { background: index % 2 ? 'rgb(151 133 133 / 6%)' : 'rgb(158 158 158 / 20%)' };\r\n};\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.action.hover\r\n // color: theme.palette.common.white\r\n },\r\n body: {\r\n fontSize: 14,\r\n padding: '5px',\r\n verticalAlign: 'top'\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:nth-of-type(even)': {\r\n backgroundColor: theme.palette.action.hover\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles({\r\n table: {\r\n minWidth: 900\r\n }\r\n});\r\n\r\nconst HandOverSheetScreen = (props) => {\r\n const { hideModal, hideTopNavAndMenu, showToast, portalSettings } = useContext(AppContext);\r\n const classes = useStyles();\r\n\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const headerId = props?.match?.params?.jobId;\r\n\r\n const [state, setState] = useState({ showAdd: true });\r\n\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n\r\n useEffect(async () => {\r\n let headerRes = await getDiagnosticSheetHeaderDetails(headerId);\r\n\r\n setState((st) => ({ ...st, headerRecords: headerRes?.data?.headerDetails[0] || {} }));\r\n }, [headerId]);\r\n\r\n useEffect(async () => {\r\n let res = await getHandOverDetails(headerId);\r\n if (res.success) {\r\n const updatedUser = res?.data;\r\n setInputList(\r\n !updatedUser.handoverSheetAddVM.length\r\n ? [{ ...data }]\r\n : updatedUser.handoverSheetAddVM.map((c, i) => ({\r\n ...c,\r\n id: i + 1,\r\n handoverSheetRepairRequired: c.repairRequired,\r\n handoverSheetAuthorised: c.authorised,\r\n handoverSheetActionComment: c.actionComment,\r\n handoverSheetActioned: c.actioned,\r\n isDisabled: (!AppStorage.getCanAmendToDoList()) && (c.actioned ? true : false)\r\n }))\r\n );\r\n }\r\n }, []);\r\n let data = {\r\n handoverSheetID: null,\r\n handoverSheetRepairRequired: '',\r\n handoverSheetAuthorised: null,\r\n handoverSheetActionComment: '',\r\n handoverSheetActioned: false\r\n };\r\n const [inputList, setInputList] = useState([{ ...data }]);\r\n const [btnLoader, setBtnLoader] = useState(false);\r\n \r\n const handleInputChange = (e, index) => {\r\n const { name, value } = e.target;\r\n const list = [...inputList];\r\n list[index]['id'] = index + 1;\r\n list[index][name] = value;\r\n setInputList(list);\r\n };\r\n const handleCheckbox = (event, index) => {\r\n const { name, checked } = event.target;\r\n const list = [...inputList];\r\n list[index]['id'] = index + 1;\r\n list[index][name] = checked;\r\n if (name == 'handoverSheetAuthorised' && checked == false) {\r\n list[index].handoverSheetActioned = false;\r\n }\r\n setInputList(list);\r\n };\r\n const handleAddClick = () => {\r\n setInputList([{ ...data }, ...inputList]);\r\n };\r\n // console.log(inputList, 'inputList.length - 1 === i ? true : false');\r\n const handleRemoveClick = (index) => {\r\n const list = [...inputList];\r\n list.splice(index, 1);\r\n setInputList(list);\r\n };\r\n\r\n const handleValidation = () => {\r\n let formIsValid = true;\r\n const list = [...inputList].map((q) => {\r\n if (!q.handoverSheetRepairRequired) {\r\n q.errorHandoverSheetRepairRequired = 'Please Enter Repair Required';\r\n formIsValid = false;\r\n } else {\r\n q.errorHandoverSheetRepairRequired = '';\r\n }\r\n return { ...q };\r\n });\r\n setInputList(list);\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (handleValidation()) {\r\n setBtnLoader(true)\r\n const obj = {\r\n handoverSheetAddVM: inputList.map((q) => {\r\n return {\r\n handoverSheetID: q.handoverSheetID || null,\r\n handoverSheetRepairRequired: q.handoverSheetRepairRequired,\r\n handoverSheetAuthorised: q.handoverSheetAuthorised,\r\n handoverSheetActionComment: q.handoverSheetActionComment,\r\n handoverSheetActioned: q.handoverSheetActioned\r\n };\r\n }),\r\n handoverSheetSignature: null\r\n };\r\n let res = await saveHandOverSheets(headerId, obj);\r\n if (res.success) {\r\n showToast(res.message);\r\n if (fromStep) {\r\n setTimeout(() => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }, 1000);\r\n }\r\n } else {\r\n showToast(res.error);\r\n }\r\n }\r\n setBtnLoader(false)\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n Reg No:  {state.headerRecords?.registration}  WIP No:  {state.headerRecords?.wipNumber}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Repair Required\r\n \r\n \r\n Authorised\r\n \r\n \r\n Actioned\r\n \r\n Comments\r\n \r\n \r\n \r\n \r\n {inputList.map((x, i) => {\r\n return (\r\n \r\n \r\n {x.isDisabled ? (\r\n
{x.handoverSheetRepairRequired}
\r\n ) : (\r\n handleInputChange(e, i)}\r\n disabled={x.isDisabled}\r\n />\r\n )}\r\n {x.createdBy && (\r\n {`Created By ${x.createdBy}-${moment(x.dateCreated).format(\r\n 'LLL'\r\n )}`}\r\n )}\r\n {x.errorHandoverSheetRepairRequired && (\r\n \r\n {x.errorHandoverSheetRepairRequired}\r\n \r\n )}\r\n
\r\n \r\n {x.authorisedBy ? (\r\n
\r\n {x.authorisedBy}\r\n {moment(x.dateAuthorised).format('DD-MMM-YY')}\r\n
\r\n ) : (\r\n handleCheckbox(e, i)}\r\n name=\"handoverSheetAuthorised\"\r\n disabled={x.isDisabled}\r\n />\r\n )}\r\n
\r\n \r\n {x.actionedBy ? (\r\n
\r\n {x.actionedBy}\r\n {moment(x.dateActioned).format('DD-MMM-YY')}\r\n
\r\n ) : (\r\n handleCheckbox(e, i)}\r\n name=\"handoverSheetActioned\"\r\n // disabled={!x.handoverSheetAuthorised || x.isDisabled}\r\n disabled={x.isDisabled ? x.isDisabled : !x.handoverSheetAuthorised}\r\n />\r\n )}\r\n
\r\n \r\n {x.isDisabled ? (\r\n
{x.handoverSheetActionComment}
\r\n ) : (\r\n handleInputChange(e, i)}\r\n disabled={x.isDisabled}\r\n />\r\n )}\r\n
\r\n \r\n {inputList.length !== 1 && state.showAdd && !x.isDisabled && (\r\n handleRemoveClick(i)}\r\n toolTipTitle=\"Remove Row\"\r\n />\r\n )}\r\n {i === 0 && state.showAdd && }\r\n \r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n \r\n Save\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default HandOverSheetScreen;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getLiftCheckList = async (headerId) => {\r\n let res = await get(`LiftChecks/LiftChecks/${headerId}`, { useAuthToken : true }); \r\n return res;\r\n}\r\n\r\nexport const addUpdateLiftCheckList = async (data) =>{\r\n let res = await post(`LiftChecks/LiftChecks`, data, { useAuthToken : true }); \r\n return res;\r\n}","import { FormLabel, Grid, Typography } from '@material-ui/core';\r\nimport { Alert } from '@material-ui/lab';\r\nimport React, { useContext, useEffect, useState } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { TextBox, YesNoButton } from '../../../Core/FormInput';\r\nimport { Radio } from '@material-ui/core';\r\nimport { RadioGroup } from '@material-ui/core';\r\nimport { FormControlLabel } from '@material-ui/core';\r\nimport { SecondaryButton } from '../../../Core/FormInput';\r\nimport { addUpdateLiftCheckList, getLiftCheckList } from '../../../Core/Service/LiftCheck-service';\r\n\r\nconst LiftCheckList = (props) => {\r\n const { hideModal, hideTopNavAndMenu, showToast, portalSettings } = useContext(AppContext);\r\n\r\n const urlParams = new URLSearchParams(props.location.search.toLowerCase());\r\n const navigateToDashboard = urlParams.get('navigate') === 'true';\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n const headerId = props?.match?.params?.jobId;\r\n\r\n const [state, setState] = useState({\r\n checkedLiftingArms: \"\",\r\n checkedPads: \"\",\r\n checkedPillarLiftLocks: \"\",\r\n checkedWeight: \"\",\r\n chocksUsed: \"\",\r\n comments: \"\",\r\n frameStructurallySound: \"\",\r\n locatedStopControl: \"\",\r\n name: \"\",\r\n\r\n errors: {}\r\n });\r\n\r\n useEffect(() => {\r\n fromStep && hideTopNavAndMenu();\r\n }, []);\r\n\r\n useEffect(async () => {\r\n let res = await getLiftCheckList(headerId);\r\n if (res.data[0]) {\r\n const data = res.data[0]\r\n setState((st) => ({\r\n ...st,\r\n id: data.liftCheckId,\r\n checkedLiftingArms: data.liftCheckCheckedLiftingArms ? \"Yes\" : \"No\",\r\n checkedPads: data.liftCheckCheckedPads ? \"Yes\" : \"No\",\r\n checkedPillarLiftLocks: data.liftCheckCheckedPillarLiftLocks ? \"Yes\" : \"No\",\r\n checkedWeight: data.liftCheckCheckedWeight ? \"Yes\" : \"No\",\r\n chocksUsed: data.liftCheckChocksUsed ? \"Yes\" : \"No\",\r\n comments: data.liftCheckComments,\r\n frameStructurallySound: data.liftCheckFrameStructurallySound ? \"Yes\" : \"No\",\r\n locatedStopControl: data.liftCheckLocatedStopControl ? \"Yes\" : \"No\",\r\n name: data.liftCheckName,\r\n }));\r\n }\r\n }, [headerId]);\r\n\r\n const handleValidation = () => {\r\n let formIsValid = true;\r\n let errors = {};\r\n\r\n const {\r\n checkedLiftingArms,\r\n checkedPads,\r\n checkedPillarLiftLocks,\r\n checkedWeight,\r\n chocksUsed,\r\n frameStructurallySound,\r\n locatedStopControl,\r\n name\r\n } = state;\r\n\r\n if (checkedLiftingArms == \"\") {\r\n formIsValid = false;\r\n errors[\"checkedLiftingArms\"] = \"This field is mandatory\";\r\n }\r\n if (checkedPads == \"\") {\r\n formIsValid = false;\r\n errors[\"checkedPads\"] = \"This field is mandatory\";\r\n }\r\n if (checkedPillarLiftLocks == \"\") {\r\n formIsValid = false;\r\n errors[\"checkedPillarLiftLocks\"] = \"This field is mandatory\";\r\n }\r\n if (checkedWeight == \"\") {\r\n formIsValid = false;\r\n errors[\"checkedWeight\"] = \"This field is mandatory\";\r\n }\r\n if (chocksUsed == \"\") {\r\n formIsValid = false;\r\n errors[\"chocksUsed\"] = \"This field is mandatory\";\r\n }\r\n if (frameStructurallySound == \"\") {\r\n formIsValid = false;\r\n errors[\"frameStructurallySound\"] = \"This field is mandatory\";\r\n }\r\n if (locatedStopControl == \"\") {\r\n formIsValid = false;\r\n errors[\"locatedStopControl\"] = \"This field is mandatory\";\r\n }\r\n if (name == \"\") {\r\n formIsValid = false;\r\n errors[\"name\"] = \"This field is mandatory\";\r\n }\r\n\r\n setState((st) => ({\r\n ...st,\r\n errors: errors,\r\n }));\r\n\r\n return formIsValid;\r\n };\r\n\r\n const handleSubmit = async () => {\r\n if (handleValidation()) {\r\n const data = {\r\n LiftCheckId: state.id ? state.id : null,\r\n LiftCheckHeaderRecordId: headerId,\r\n LiftCheckCheckedLiftingArms: state.checkedLiftingArms == \"Yes\",\r\n LiftCheckCheckedPads: state.checkedPads == \"Yes\",\r\n LiftCheckCheckedPillarLiftLocks: state.checkedPillarLiftLocks == \"Yes\",\r\n LiftCheckCheckedWeight: state.checkedWeight == \"Yes\",\r\n LiftCheckChocksUsed: state.chocksUsed == \"Yes\",\r\n LiftCheckFrameStructurallySound: state.frameStructurallySound == \"Yes\",\r\n LiftCheckLocatedStopControl: state.locatedStopControl == \"Yes\",\r\n LiftCheckComments: state.comments,\r\n LiftCheckName: state.name,\r\n }\r\n const res = await addUpdateLiftCheckList(data);\r\n if (res.success) {\r\n showToast(res.data.message);\r\n if (fromStep) {\r\n setTimeout(() => {\r\n window.top.postMessage({ type: navigateToDashboard ? 'navigate-dashboard' : 'close-modal' }, '*');\r\n }, 1000);\r\n }\r\n } else {\r\n showToast(res.error);\r\n }\r\n }\r\n };\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }))\r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Daily Lift Check List\r\n \r\n \r\n \r\n \r\n \r\n It is important that before a lift is used in the workshop the technician inspects the lift\r\n to ensure it is in good working order. This checklist helps to ensure the correct areas are checked.\r\n If you answer no to any of the following questions, please report the defect to your supervisor or\r\n Workshop Controller immediately and ensure there is a sign which confirms the lift is 'out of use' until fixed.\r\n \r\n \r\n \r\n\r\n \r\n * Required\r\n \r\n\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n 1. Name\r\n \r\n \r\n \r\n {state.errors[\"name\"]}\r\n \r\n \r\n\r\n \r\n \r\n 2. Is the frame structurally sound?\r\n \r\n
\r\n \r\n } label=\"Yes\" />\r\n
\r\n } label=\"No\" />\r\n \r\n \r\n {state.errors[\"frameStructurallySound\"]}\r\n \r\n
\r\n\r\n \r\n \r\n 3. Have you checked to make sure the lifting capacity of the lift is rated higher than the weight of the vehicle you are intending to lift?\r\n \r\n
\r\n \r\n } label=\"Yes\" />\r\n
\r\n } label=\"No\" />\r\n \r\n \r\n {state.errors[\"checkedWeight\"]}\r\n \r\n
\r\n\r\n \r\n \r\n 4. Have you located the stop control?\r\n \r\n
\r\n \r\n } label=\"Yes\" />\r\n
\r\n } label=\"No\" />\r\n \r\n \r\n {state.errors[\"locatedStopControl\"]}\r\n \r\n
\r\n\r\n \r\n \r\n 5. Have you checked the lifting arms and are they functioning correctly?\r\n \r\n
\r\n \r\n } label=\"Yes\" />\r\n
\r\n } label=\"No\" />\r\n \r\n \r\n {state.errors[\"checkedLiftingArms\"]}\r\n \r\n
\r\n\r\n \r\n \r\n 6. Please confirm that you have checked the condition of the pads\r\n \r\n
\r\n \r\n } label=\"Yes\" />\r\n
\r\n } label=\"No\" />\r\n \r\n \r\n {state.errors[\"checkedPads\"]}\r\n \r\n
\r\n\r\n \r\n \r\n 7. Confirm that you have checked pillar lift locks have been activated before moving under vehicle\r\n \r\n
\r\n \r\n } label=\"Yes\" />\r\n
\r\n } label=\"No\" />\r\n \r\n \r\n {state.errors[\"checkedPillarLiftLocks\"]}\r\n \r\n
\r\n\r\n \r\n \r\n 8. Confirm that you have used chocks. If not available, inform the workshop controller to locate some before the lift is used.\r\n \r\n
\r\n \r\n } label=\"Yes, and in use\" />\r\n
\r\n } label=\"None available - discussed with workshop controller\" />\r\n \r\n \r\n {state.errors[\"chocksUsed\"]}\r\n \r\n
\r\n\r\n \r\n \r\n 9. Use this space to make any comments/issues following your lift check.\r\n \r\n \r\n \r\n\r\n \r\n Save\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default LiftCheckList;\r\n","import React, { useEffect } from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { Link } from 'react-router-dom';\r\nimport { grid } from 'gijgo';\r\nimport { AppStorage } from './../../Core/Service/storage-service';\r\nimport './dashboard.scss';\r\nimport { IconButton } from '@material-ui/core';\r\nimport ArrowForwardIosIcon from '@material-ui/icons/ArrowForwardIos';\r\nimport moment from 'moment';\r\nimport { ExpBaseURL } from './../../Core/Service/http-calls';\r\nvar $ = window.$;\r\n\r\nconst JobDetails = (props) => {\r\n let dateDueInFulterValue = {\r\n 1: `${new Date().getMonth() + 1}/${new Date().getFullYear()}`,\r\n 2: new Date().getFullYear(),\r\n 3: new Date().getFullYear() - 1,\r\n 4: ''\r\n };\r\n\r\n const token = AppStorage.getToken();\r\n useEffect(async () => {\r\n if (token) {\r\n pullJobDetailsAndUpdateState();\r\n } else {\r\n window.location = '/';\r\n AppStorage.performLogout();\r\n }\r\n }, [token]);\r\n const pullJobDetailsAndUpdateState = async () => {\r\n const onSuccessFunc = function (response) {\r\n var obj = {\r\n records: response.data.rows,\r\n total: response.data.total\r\n };\r\n grid1.render(obj);\r\n };\r\n\r\n const redirectToDetails = (record) => {\r\n props.history.push(`/Job/${record.headerRecordID}/${record.workflowID}`);\r\n };\r\n\r\n const editButton = (vl, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n redirectToDetails(record)}>\r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n const GridID = props.match.params.id;\r\n let paramValues = dateDueInFulterValue[GridID];\r\n\r\n var grid1 = window.$('#grid').grid({\r\n primaryKey: 'Id',\r\n dataSource: {\r\n url: `${ExpBaseURL}/api/CustomerJobs?ShowRecord=${GridID}`,\r\n data: { dateDueIn: paramValues },\r\n headers: { Authorization: `Bearer ${token}` },\r\n success: onSuccessFunc\r\n },\r\n headerFilter: {\r\n type: 'onchange'\r\n },\r\n columns: [\r\n {\r\n title: 'Action',\r\n field: 'id',\r\n renderer: editButton,\r\n width: 30,\r\n filterable: false\r\n },\r\n {\r\n title: 'WIP Number',\r\n field: 'wipNo',\r\n width: 100,\r\n sortable: true\r\n },\r\n {\r\n title: 'Vehicle Reg',\r\n field: 'registration',\r\n width: 100,\r\n sortable: true\r\n },\r\n {\r\n title: 'Model',\r\n field: 'makeModel',\r\n width: 100,\r\n sortable: true\r\n },\r\n {\r\n title: 'Branch',\r\n field: 'branchShortName',\r\n width: 100,\r\n sortable: true\r\n },\r\n {\r\n title: 'Date Due In',\r\n field: 'dateDueIn',\r\n width: 90,\r\n sortable: false,\r\n type: 'date',\r\n cssClass: 'text-center',\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD/MM/YYYY');\r\n }\r\n return '';\r\n }\r\n },\r\n {\r\n title: 'Date Due Out',\r\n field: 'dateDueOut',\r\n width: 90,\r\n sortable: false,\r\n type: 'date',\r\n cssClass: 'text-center',\r\n renderer: function (value, record) {\r\n if (record.dateDueOut != null) {\r\n return moment(record.dateDueOut).format('DD/MM/YYYY');\r\n }\r\n return '';\r\n }\r\n }\r\n ].map((c) => {\r\n if (c.title !== 'Action') {\r\n c.events = {\r\n click: function (e) {\r\n props.history.push(`/Job/${e.data.record.headerRecordID}/${e.data.record.workflowID}`);\r\n }\r\n };\r\n }\r\n return {\r\n ...c,\r\n headerCssClass: 'gridHeader'\r\n };\r\n }),\r\n pager: { limit: 20 }\r\n });\r\n setTimeout(() => {\r\n var id = $(grid1).attr('id');\r\n var rowXPath = '#' + id + ' thead tr[data-role=\"filter\"]';\r\n var filterRow = $(rowXPath);\r\n var colXPath = 'th [data-field=\"' + `${'dateDueIn'}` + '\"]';\r\n var filterInput = $(filterRow).find(colXPath);\r\n $(filterInput).val(paramValues);\r\n grid1.data().params['dateDueIn'] = paramValues;\r\n grid1.reload();\r\n });\r\n grid1.on('dataBound', function (e, records, totalRecords) {});\r\n };\r\n return (\r\n
\r\n >\" aria-label=\"breadcrumb\">\r\n \r\n Home\r\n \r\n \r\n {props.match.params.name}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\nexport default JobDetails;\r\n","import React, { useEffect, useContext, useState, useMemo } from 'react';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { DataGrid, GridOverlay } from '@material-ui/data-grid';\r\nimport { IconButton } from '@material-ui/core';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport { SecondaryButton } from '../../../Core/FormInput/index';\r\nimport '../../admin/User Management/UserManagement.css';\r\nimport { getAllUsers } from '../../../Core/Service/admin-service';\r\nimport SetPassByAdminModal from '../../admin/User Management/SetPassByAdmin';\r\nimport LockIcon from '@material-ui/icons/Lock';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Breadcrumbs from '@material-ui/core/Breadcrumbs';\r\nimport { Link } from 'react-router-dom';\r\nimport { TextBox } from '../../../Core/FormInput';\r\nimport { some } from 'lodash';\r\nimport { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\n\r\nlet searchTimer;\r\n\r\nconst ResetPasswordBYInternal = (props) => {\r\n const { loggedIn, showModal, showToast } = useContext(AppContext);\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n const [state, setState] = useState({\r\n show: false,\r\n showAddUserModal: false,\r\n rows_new: [],\r\n users: [],\r\n filterText: '',\r\n filteredRows: []\r\n });\r\n\r\n const pullUserAndUpdateState = async () => {\r\n let res = await getAllUsers();\r\n if (res.success) {\r\n setState((st) => ({ ...st, rows_new: [...res.data] }));\r\n }\r\n if (!res.success) {\r\n showToast(res.message);\r\n }\r\n };\r\n\r\n useEffect(async () => {\r\n if (loggedIn) {\r\n pullUserAndUpdateState();\r\n } else {\r\n props.history.push('/login');\r\n }\r\n }, []);\r\n\r\n const closeResetModal = (val) => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showResetModal: val\r\n };\r\n return nst;\r\n });\r\n };\r\n const handelResetPass = (props) => {\r\n const user = props.value.row;\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n showResetModal: true,\r\n users: user\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n const Arrow = (props) => {\r\n return (\r\n <>\r\n \r\n handelResetPass(props)}>\r\n \r\n \r\n \r\n \r\n );\r\n };\r\n\r\n const baseColumns = [\r\n {\r\n field: 'id',\r\n headerName: 'ID',\r\n sortable: false,\r\n hide: true\r\n },\r\n {\r\n field: '',\r\n headerName: 'Action',\r\n sortable: false,\r\n width: 100,\r\n\r\n renderCell: (params) => \r\n },\r\n { field: 'displayName', headerName: 'Name', flex: 0.6 },\r\n // { field: 'phoneNo', headerName: 'Phone Number', flex: 0.6 },\r\n {\r\n field: 'email',\r\n headerName: 'Email',\r\n flex: 1\r\n }\r\n // {\r\n // field: 'userRole',\r\n // headerName: 'User Type',\r\n // flex: 0.4\r\n // },\r\n // {\r\n // field: 'isActive',\r\n // headerName: 'Is Active',\r\n // flex: 0.5,\r\n // valueGetter: (params) => (params.value ? 'Yes' : 'No')\r\n // }\r\n ];\r\n function CustomNoRowsOverlay() {\r\n return (\r\n \r\n
No user available
\r\n
\r\n );\r\n }\r\n const setFilterText = (e) => {\r\n const vl = e.target.value;\r\n setState((st) => ({ ...st, filterText: vl }));\r\n searchTimer && clearTimeout(searchTimer);\r\n searchTimer = setTimeout(() => {\r\n setFilteredRow();\r\n }, 500);\r\n };\r\n\r\n const setFilteredRow = () => {\r\n setState((st) => {\r\n const newSt = { ...st };\r\n const { rows_new, filterText } = newSt;\r\n let filterd = [];\r\n filterd = [...rows_new];\r\n if (filterText.trim().length > 0) {\r\n filterText\r\n .trim()\r\n .split(' ')\r\n .map((t) => t.trim().toLowerCase())\r\n .forEach((src) => {\r\n filterd = filterd.filter((rw) => some(rw, (vl) => `${vl}`.toLowerCase().includes(src)));\r\n });\r\n }\r\n newSt.filteredRows = filterd;\r\n return newSt;\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n setFilteredRow();\r\n }, [state.rows_new]);\r\n\r\n const column_new = useMemo(() => {\r\n const tempCols = [...baseColumns];\r\n tempCols.splice(5, 0, {\r\n field: 'userRole',\r\n headerName: 'User Type',\r\n flex: 0.4\r\n });\r\n if (WindowWidths > 750) {\r\n tempCols.splice(6, 0, { field: 'isLocked', headerName: 'Is Locked?', flex: 0.5, valueGetter: (params) => (params.value ? 'Yes' : 'No') });\r\n tempCols.splice(7, 0, {\r\n field: 'isActive',\r\n headerName: 'Is Active?',\r\n flex: 0.5,\r\n valueGetter: (params) => (params.value ? 'Yes' : 'No')\r\n });\r\n }\r\n return tempCols;\r\n }, [WindowWidths]);\r\n\r\n return (\r\n
\r\n {state.showResetModal ? : null}\r\n >\" aria-label=\"breadcrumb\" style={{ fontSize: '0.85rem' }}>\r\n \r\n Home\r\n \r\n \r\n Reset Password\r\n \r\n \r\n
\r\n \r\n {/* table start*/}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n\r\n {/* table end*/}\r\n \r\n
\r\n \r\n );\r\n};\r\nexport default ResetPasswordBYInternal;\r\n","import { useMemo, useState } from 'react';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport { Grid } from '@material-ui/core';\r\nimport SendMessageModal from './sendMessageModal';\r\nimport moment from 'moment';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\nimport ReactDOM from 'react-dom';\r\nimport { CustomIconButton, SquareButton } from '../../../Core/FormInput/AppButton';\r\nimport ReportGijgoGrid from '../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport ListAltIcon from '@material-ui/icons/ListAlt';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\n\r\nconst baseColumns = [\r\n {\r\n title: 'Action',\r\n field: 'action',\r\n width: 70,\r\n filterable: false\r\n },\r\n { field: 'wipNumber', sortable: true, title: `${'WIP No'}`, width: 70 },\r\n { field: 'registration', sortable: true, title: `${'Vehicle Reg'}`, width: 90 },\r\n { field: 'st', sortable: true, title: `${'Job Description'}`, width: 170 },\r\n { field: 'makeModel', sortable: true, title: `${'Model'}`, width: 200 },\r\n // {\r\n // field: 'dateDueIn',\r\n // sortable: true,\r\n // title: `${'Due Date In'}`,\r\n // type: 'dateTime',\r\n // width: 135,\r\n // renderer: function (value, record) {\r\n // if (record.dateDueIn != null) {\r\n // return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n // }\r\n // return '-';\r\n // }\r\n // },\r\n // {\r\n // field: 'dateDueOut',\r\n // sortable: true,\r\n // title: `${'Date Due Out'}`,\r\n // type: 'dateTime',\r\n // width: 135,\r\n // renderer: function (value, record) {\r\n // if (record.dateDueOut != null) {\r\n // return moment(record.dateDueOut).format('DD-MMM-YYYY HH:mm');\r\n // }\r\n // return '-';\r\n // }\r\n // },\r\n { field: 'branchShortName', sortable: true, title: `${'Branch'}`, width: 120 },\r\n {\r\n field: 'status',\r\n sortable: true,\r\n title: `${'Status'}`,\r\n width: 100\r\n }\r\n];\r\n\r\nconst screenName = {\r\n S: 'Site Vehicles',\r\n V: 'VOR Vehicles',\r\n W: 'Workshop Vehicles',\r\n A: 'Jobs Approved',\r\n VOR: 'VOR Vehicles',\r\n BOOKED: 'Bookings',\r\n CHECKIN: 'Checked In',\r\n WORKSHOP: 'Workshop',\r\n APARTS: 'Awaiting Parts',\r\n ATA: 'Awaiting Technical Assistance',\r\n AUTH: 'Awaiting Authority',\r\n AFON: 'Awaiting Full Order',\r\n PE: 'Parts Escalation',\r\n PA: 'Parts Arrived',\r\n A: 'Approved by customer',\r\n SUB: 'Waiting Sub Work',\r\n WC: 'Work Completed',\r\n CHECKEDOUT: 'Checked Out',\r\n QC: 'Awaiting QC',\r\n ACOLLECTION: 'Awaiting Collection',\r\n REBOOKING: 'Rebooking',\r\n COLLECTED: 'Collected'\r\n};\r\n\r\nconst crumbs = (paramStatus, val, menuPermissionCounter) => {\r\n let list = [{ name: 'Home', path: '/' }];\r\n if (menuPermissionCounter !== 1) {\r\n list.push({ name: 'Communicator', path: '/communicator_dash' });\r\n }\r\n if (paramStatus) {\r\n list.push({ name: `${screenName[paramStatus]}`, active: true });\r\n } else {\r\n list.push({ name: screenName[val], active: true });\r\n }\r\n return list;\r\n};\r\n\r\nconst CustSiteVehicles = (props) => {\r\n const search = window.location.search;\r\n const params = new URLSearchParams(search);\r\n let ParamStatus = params.get('status') || '';\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n const [show, setShow] = useState({\r\n showSendMessageModal: false\r\n });\r\n\r\n const HandelSendMessage = (val) => {\r\n setShow((st) => ({\r\n ...st,\r\n showSendMessageModal: true,\r\n headerRecordID: val.headerRecordID,\r\n reg: val.registration,\r\n wip: val.wipNumber\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n HandelSendMessage(record)} toolTipTitle=\"Add Action Log\">\r\n \r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n\r\n if (props.status == 'A') {\r\n col.splice(\r\n 2,\r\n 0,\r\n { field: 'approvedNo', sortable: true, title: `${'Order No'}`, width: 120 },\r\n {\r\n field: 'approvedDate',\r\n sortable: true,\r\n title: `${'Approved Date'}`,\r\n type: 'dateTime',\r\n width: 145,\r\n renderer: function (value, record) {\r\n if (record.approvedDate != null) {\r\n return moment(record.approvedDate).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n }\r\n );\r\n } else {\r\n col.splice(\r\n 5,\r\n 0,\r\n {\r\n field: 'dateDueIn',\r\n sortable: true,\r\n title: `${'Date Due In'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n {\r\n field: 'dateDueOut',\r\n sortable: true,\r\n title: `${'Date Due Out'}`,\r\n // type: 'date',\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueOut != null) {\r\n return moment(record.dateDueOut).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n }\r\n );\r\n }\r\n return col;\r\n }, []);\r\n\r\n const handleClose = (res) => {\r\n let newSt = {};\r\n newSt.showSendMessageModal = false;\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setShow((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n const rowDataStyle = (record) => {\r\n if (record.highPriority) {\r\n return {\r\n ['background-color']: '#C4463B'\r\n };\r\n }\r\n return false;\r\n };\r\n const colDataStyle = (record) => {\r\n if (record.highPriority) {\r\n return {\r\n ['color']: 'white'\r\n };\r\n }\r\n return false;\r\n };\r\n\r\n const getUrl = `Communicators?ShowJobs=${ParamStatus || props.status}`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res.data.list,\r\n total: res.data.total\r\n })}\r\n columns={column}\r\n getUrl={getUrl}\r\n displayPagination={true}\r\n isReload={show.isReload}\r\n setRowStyleOnCondition={true}\r\n setRowStyleFunction={rowDataStyle}\r\n setColStyleOnCondition={true}\r\n setColStyleFunction={colDataStyle}\r\n />\r\n \r\n \r\n\r\n {show.showSendMessageModal ? (\r\n handleClose(false)} fullWidth maxWidth=\"lg\">\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\nexport default CustSiteVehicles;\r\n","import { useMemo, useState } from 'react';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport { FormLabel, Grid, TextField, Tooltip } from '@material-ui/core';\r\nimport SendMessageModal from './sendMessageModal';\r\nimport moment from 'moment';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\nimport ReactDOM from 'react-dom';\r\nimport { CustomIconButton, SquareButton } from '../../../Core/FormInput/AppButton';\r\nimport ReportGijgoGrid from '../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport ListAltIcon from '@material-ui/icons/ListAlt';\r\nimport BookingsScreen from '../../internal/Communicator/Bookings';\r\nimport { SlideToggle } from '../../../Core/FormInput';\r\nimport { Autocomplete } from '@material-ui/lab';\r\nimport formatters from '../../../Core/Grid/inputFormatter';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\n\r\nconst years = () => {\r\n const years = [];\r\n const d = new Date();\r\n let startYear = d.getFullYear() - 10;\r\n let endYear = d.getFullYear() + 10;\r\n\r\n while (endYear - startYear >= 0) {\r\n years.push({ description: `${startYear}`, id: `${startYear}` });\r\n startYear = startYear + 1;\r\n }\r\n return years;\r\n};\r\n\r\nconst baseColumns = [\r\n {\r\n title: 'Action',\r\n field: 'action',\r\n width: 70,\r\n filterable: false\r\n },\r\n { field: 'wipNumber', sortable: true, title: `${'WIP No'}`, width: 70 },\r\n { field: 'registration', sortable: true, title: `${'Vehicle Reg'}`, width: 90 },\r\n { field: 'st', sortable: true, title: `${'Job Description'}`, width: 170 },\r\n { field: 'makeModel', sortable: true, title: `${'Model'}`, width: 200 },\r\n {\r\n field: 'dateDueIn',\r\n sortable: true,\r\n title: `${'Due Date In'}`,\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n {\r\n field: 'dateDueOut',\r\n sortable: true,\r\n title: `${'Date Due Out'}`,\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueOut != null) {\r\n return moment(record.dateDueOut).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n { field: 'branchShortName', sortable: true, title: `${'Branch'}`, width: 120 },\r\n {\r\n field: 'status',\r\n sortable: true,\r\n title: `${'Status'}`,\r\n width: 100\r\n }\r\n];\r\n\r\nconst screenName = {\r\n S: 'Site Vehicles',\r\n V: 'VOR Vehicles',\r\n W: 'Workshop Vehicles'\r\n};\r\n// const crumbs = (val) => {\r\n// return [\r\n// { name: 'Home', path: '/' },\r\n// { name: 'Communicator', path: '/communicator_dash' },\r\n// { name: 'Bookings', active: true }\r\n// ];\r\n// };\r\n\r\nconst crumbs = (menuPermissionCounter) => {\r\n let list = [{ name: 'Home', path: '/' }];\r\n if (menuPermissionCounter !== 1) {\r\n list.push({ name: 'Communicator', path: '/communicator_dash' });\r\n }\r\n list.push({ name: 'Bookings', active: true });\r\n return list;\r\n};\r\n\r\nconst CustBookings = (props) => {\r\n const monthsList = formatters.constantMonthList();\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n\r\n const [show, setShow] = useState({\r\n showSendMessageModal: false,\r\n isGrid: true,\r\n monthCode: monthsList[`${new Date().getMonth()}`],\r\n yearCode: { description: `${new Date().getFullYear()}`, id: `${new Date().getFullYear()}` }\r\n });\r\n\r\n const HandelSendMessage = (val) => {\r\n setShow((st) => ({\r\n ...st,\r\n showSendMessageModal: true,\r\n headerRecordID: val.headerRecordID,\r\n reg: val.registration,\r\n wip: val.wipNumber\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n HandelSendMessage(record)} toolTipTitle=\"Add Action Log\">\r\n \r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n return col;\r\n }, []);\r\n\r\n const handleClose = (res) => {\r\n let newSt = {};\r\n newSt.showSendMessageModal = false;\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setShow((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n const handleInput = (e) => {\r\n const { name, value, type, checked } = e.target;\r\n if (type === 'checkbox') {\r\n setShow((st) => ({ ...st, [name]: checked }));\r\n } else {\r\n setShow((st) => ({ ...st, [name]: value }));\r\n }\r\n };\r\n\r\n const handleAutoChange = (fieldName) => (e, val) => {\r\n setShow((st) => {\r\n let newSt = { ...st };\r\n newSt[fieldName] = val;\r\n return newSt;\r\n });\r\n };\r\n\r\n const getUrl = `CustUserCommunicator/Booking?Month=${show.monthCode.id}&Year=${show.yearCode.id}`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n {show.isGrid ? (\r\n \r\n \r\n \r\n Select Month\r\n (typeof option === 'string' ? option : option.description)}\r\n renderInput={(params) => }\r\n />\r\n \r\n \r\n Select Year\r\n (typeof option === 'string' ? option : option.description)}\r\n renderInput={(params) => }\r\n />\r\n \r\n \r\n \r\n ({\r\n records: res.data.list,\r\n total: res.data.total\r\n })}\r\n columns={column}\r\n getUrl={getUrl}\r\n displayPagination={true}\r\n isReload={show.isReload}\r\n />\r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n \r\n {show.showSendMessageModal ? (\r\n handleClose(false)} fullWidth maxWidth=\"lg\">\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\nexport default CustBookings;\r\n","import React, { useState } from 'react';\r\nimport { Grid, InputLabel, FormHelperText } from '@material-ui/core';\r\nimport { TextBox } from '../../../Core/FormInput';\r\nimport { SecondaryButton } from './../../../Core/FormInput/AppButton';\r\nimport { postApprovedJob } from '../../../Core/Service/CustUserCommunicator/communicator-service';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { useContext } from 'react';\r\nimport { CustomeSignPad } from '../../../Core/SignaturePad';\r\n\r\nconst ApproveJobModal = (props) => {\r\n const { showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n error: {}\r\n });\r\n\r\n const GetTechnicianSign = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n ...val\r\n }));\r\n };\r\n\r\n const clearSig = (val) => {\r\n setState((st) => ({\r\n ...st,\r\n customerSignature: null\r\n }));\r\n };\r\n\r\n let Validation = () => {\r\n let isValid = true;\r\n let error = {};\r\n if (!state.customerOrderReference) {\r\n isValid = false;\r\n error.customerOrderReference = 'Message is required';\r\n }\r\n if (!state.customerSignature) {\r\n isValid = false;\r\n error.customerSignature = 'Signature is required';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n error: error\r\n }));\r\n return isValid;\r\n };\r\n\r\n const SubmitMessage = async () => {\r\n if (Validation()) {\r\n let data = {\r\n customerOrderReference: state.customerOrderReference,\r\n headerRecordID: props.headerRecordID,\r\n customerSignature: state.customerSignature\r\n };\r\n\r\n let res = await postApprovedJob(data);\r\n if (res.success) {\r\n showToast(`Job approved successfully`);\r\n props.onClose(true);\r\n } else {\r\n showToast(res.message);\r\n }\r\n }\r\n };\r\n\r\n const handleFieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => ({ ...st, [name]: value }));\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n Approval Order Number\r\n \r\n \r\n {state.error.customerOrderReference}\r\n \r\n \r\n \r\n {state.error.customerSignature}\r\n \r\n \r\n \r\n Approve\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default ApproveJobModal;\r\n","import { useMemo, useState } from 'react';\r\nimport DialogComp from '../../../Core/Controls/Dialog/DialogComp';\r\nimport { Grid } from '@material-ui/core';\r\nimport SendMessageModal from './sendMessageModal';\r\nimport ApproveJobModal from './approveJobModal';\r\nimport moment from 'moment';\r\nimport BreadCrumbs from '../../../Core/Controls/Breadcrumb';\r\nimport ReactDOM from 'react-dom';\r\nimport { CustomIconButton, SquareButton } from '../../../Core/FormInput/AppButton';\r\nimport ReportGijgoGrid from '../../internal/ReportsScreens/GijgoForReportsScreen';\r\nimport ListAltIcon from '@material-ui/icons/ListAlt';\r\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\r\nimport CheckBoxIcon from '@material-ui/icons/CheckBox';\r\nimport DoneOutlineIcon from '@material-ui/icons/DoneOutline';\r\nimport DoneIcon from '@material-ui/icons/Done';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\n\r\nconst baseColumns = [\r\n {\r\n title: 'Action',\r\n field: 'action',\r\n width: 70,\r\n filterable: false\r\n },\r\n { field: 'wipNumber', sortable: true, title: `${'WIP No'}`, width: 70 },\r\n { field: 'registration', sortable: true, title: `${'Vehicle Reg'}`, width: 90 },\r\n { field: 'st', sortable: true, title: `${'Job Description'}`, width: 170 },\r\n { field: 'makeModel', sortable: true, title: `${'Model'}`, width: 200 },\r\n {\r\n field: 'dateDueIn',\r\n sortable: true,\r\n title: `${'Due Date In'}`,\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueIn != null) {\r\n return moment(record.dateDueIn).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n {\r\n field: 'dateDueOut',\r\n sortable: true,\r\n title: `${'Date Due Out'}`,\r\n type: 'dateTime',\r\n width: 135,\r\n renderer: function (value, record) {\r\n if (record.dateDueOut != null) {\r\n return moment(record.dateDueOut).format('DD-MMM-YYYY HH:mm');\r\n }\r\n return '-';\r\n }\r\n },\r\n { field: 'branchShortName', sortable: true, title: `${'Branch'}`, width: 120 },\r\n {\r\n field: 'status',\r\n sortable: true,\r\n title: `${'Status'}`,\r\n width: 100\r\n }\r\n];\r\n\r\nconst crumbs = (menuPermissionCounter) => {\r\n let list = [{ name: 'Home', path: '/' }];\r\n\r\n if (menuPermissionCounter !== 1) {\r\n list.push({ name: 'Communicator', path: '/communicator_dash' });\r\n }\r\n\r\n list.push({ name: 'Awaiting Authority', active: true });\r\n\r\n return list;\r\n};\r\n\r\nconst CustAwaitingAuthority = (props) => {\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n\r\n const [show, setShow] = useState({\r\n showSendMessageModal: false,\r\n awaitingAuthModal: false\r\n });\r\n\r\n const HandelSendMessage = (name, val) => {\r\n setShow((st) => ({\r\n ...st,\r\n [name]: true,\r\n headerRecordID: val.headerRecordID,\r\n reg: val.registration,\r\n wip: val.wipNumber\r\n }));\r\n };\r\n\r\n const editButton = (value, record) => {\r\n const spn = document.createElement('span');\r\n const lnk = (\r\n \r\n \r\n HandelSendMessage('showSendMessageModal', record)} toolTipTitle=\"Send Message\">\r\n \r\n \r\n \r\n \r\n HandelSendMessage('awaitingAuthModal', record)} toolTipTitle=\"Approve Job\">\r\n \r\n \r\n \r\n \r\n );\r\n ReactDOM.render(lnk, spn);\r\n return spn;\r\n };\r\n\r\n const column = useMemo(() => {\r\n let col = [...baseColumns];\r\n let colAction = col.find((m) => m.field === 'action');\r\n if (colAction) {\r\n colAction.renderer = editButton;\r\n }\r\n return col;\r\n }, []);\r\n\r\n const handleClose = (res) => {\r\n let newSt = {};\r\n newSt.showSendMessageModal = false;\r\n newSt.awaitingAuthModal = false;\r\n if (res) {\r\n newSt.isReload = new Date();\r\n }\r\n setShow((st) => ({\r\n ...st,\r\n ...newSt\r\n }));\r\n };\r\n\r\n const getUrl = `CustUserCommunicator/AwaitingAuthority`;\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n ({\r\n records: res.data.list,\r\n total: res.data.total\r\n })}\r\n columns={column}\r\n getUrl={getUrl}\r\n displayPagination={true}\r\n isReload={show.isReload}\r\n />\r\n \r\n \r\n\r\n {show.showSendMessageModal ? (\r\n handleClose(false)} fullWidth maxWidth=\"lg\">\r\n \r\n \r\n ) : null}\r\n {show.awaitingAuthModal ? (\r\n handleClose(false)} fullWidth maxWidth=\"sm\">\r\n \r\n \r\n ) : null}\r\n
\r\n );\r\n};\r\nexport default CustAwaitingAuthority;\r\n","import React, { useEffect, useContext, useState } from 'react';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport AppContext from '../../../App/AppContext';\r\nimport { Link } from 'react-router-dom';\r\nimport { Avatar, Card, CardContent, Typography, Container } from '@material-ui/core';\r\nimport '../../Auditor/Dashboard/dashboard.scss';\r\nimport EmailIcon from '@material-ui/icons/Email';\r\nimport DescriptionIcon from '@material-ui/icons/Description';\r\nimport PeopleIcon from '@material-ui/icons/People';\r\nimport { getCommunicatorDash } from '../../../Core/Service/CustUserCommunicator/communicator-service';\r\nimport LocalShippingIcon from '@material-ui/icons/LocalShipping';\r\nimport DriveEtaIcon from '@material-ui/icons/DriveEta';\r\nimport TimerIcon from '@material-ui/icons/Timer';\r\nimport { RenderTiles } from '../CustCommonDash';\r\nimport { AppStorage } from '../../../Core/Service/storage-service';\r\nimport CollectionsBookmarkIcon from '@material-ui/icons/CollectionsBookmark';\r\nimport LibraryAddCheckIcon from '@material-ui/icons/LibraryAddCheck';\r\nimport BookIcon from '@material-ui/icons/Book';\r\nimport ShoppingCartIcon from '@material-ui/icons/ShoppingCart';\r\nimport GroupWorkIcon from '@material-ui/icons/GroupWork';\r\nimport EqualizerIcon from '@material-ui/icons/Equalizer';\r\nimport AssistantIcon from '@material-ui/icons/Assistant';\r\nimport AddShoppingCartIcon from '@material-ui/icons/AddShoppingCart';\r\nimport RemoveShoppingCartIcon from '@material-ui/icons/RemoveShoppingCart';\r\nimport WorkIcon from '@material-ui/icons/Work';\r\nimport DeviceHubIcon from '@material-ui/icons/DeviceHub';\r\nimport GraphicEqIcon from '@material-ui/icons/GraphicEq';\r\nimport LaptopChromebookIcon from '@material-ui/icons/LaptopChromebook';\r\nimport DepartureBoardIcon from '@material-ui/icons/DepartureBoard';\r\nimport FlightLandIcon from '@material-ui/icons/FlightLand';\r\nimport ThumbUpIcon from '@material-ui/icons/ThumbUp';\r\nimport BuildIcon from '@material-ui/icons/Build';\r\nimport DateRangeIcon from '@material-ui/icons/DateRange';\r\nimport EventAvailableIcon from '@material-ui/icons/EventAvailable';\r\nimport PersonIcon from '@material-ui/icons/Person';\r\nimport { SecondaryButton } from '../../../Core/FormInput';\r\nimport BookingRequestedModal from '../bookingRequested/bookingRequestedModal';\r\nimport DialogComp from '../../../Core/Modal/dialogModal';\r\nimport CancelPresentationIcon from '@material-ui/icons/CancelPresentation';\r\nimport SendIcon from '@material-ui/icons/Send';\r\nimport ScheduleIcon from '@material-ui/icons/Schedule';\r\nimport NotesIcon from '@material-ui/icons/Notes';\r\nimport CommentIcon from '@material-ui/icons/Comment';\r\n\r\nconst CustCommunicatorDash = (props) => {\r\n const [state, setState] = useState({\r\n InvoiceData: [],\r\n eWIPData: [],\r\n communicatorData: [],\r\n communicatorLog: []\r\n });\r\n const { showToast, userRoles } = useContext(AppContext);\r\n const isCustomer = userRoles.includes('customer');\r\n const isInternal = userRoles.includes('internal');\r\n useEffect(async () => {\r\n let communicator = await getCommunicatorDash();\r\n let communicatorLog = communicator?.data?.communicatorLog || [];\r\n if (communicator.success) {\r\n setState((st) => ({\r\n ...st,\r\n communicatorData: communicator.data?.list[0],\r\n communicatorLog: communicatorLog.map((m, i) => ({\r\n id: `action${i}`,\r\n name: m.cb,\r\n color: '#3498db',\r\n icon: ,\r\n count: m.count,\r\n url: '/Openactionlog',\r\n logID: m.id\r\n }))\r\n }));\r\n }\r\n if (!communicator.success) {\r\n showToast(communicator.message);\r\n }\r\n }, [state.isReload]);\r\n\r\n const CommunicatorMemberSecOne = [\r\n {\r\n id: 1,\r\n name: 'VOR Vehicles',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.vorVehiclesCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=VOR` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 2,\r\n name: 'Awaiting Approval',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.awaitingAuthorityCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=AUTH` }\r\n },\r\n {\r\n id: 3,\r\n name: 'Awaiting Parts',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.awaitingPartsCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=APARTS` }\r\n },\r\n // {\r\n // id: 4,\r\n // name: 'Awaiting Full Order',\r\n // color: '#dc3545',\r\n // icon: ,\r\n // count: state.communicatorData.awaitingFullOrderNumberCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=AFON` },\r\n // isShowCustomer: true\r\n // },\r\n // {\r\n // id: 5,\r\n // name: 'Awaiting QC',\r\n // color: '#dc3545',\r\n // icon: ,\r\n // count: state.communicatorData.awaitingQCCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=QC` }\r\n // },\r\n {\r\n id: 6,\r\n name: 'Awaiting Technical Assistance',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.awaitingTechnicalAssistanceCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=ATA` }\r\n },\r\n {\r\n id: 7,\r\n name: 'Waiting SubWork',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.waitingSubWorkCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=SUB` }\r\n },\r\n {\r\n id: 8,\r\n name: 'In Query',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.queryCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=Q` }\r\n },\r\n {\r\n id: 9,\r\n name: 'Part Back Order, ETA > 72 hrs',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.partsBackOrderCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=PB` }\r\n },\r\n {\r\n id: 17,\r\n name: 'NOX',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.noxCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=NOX` }\r\n }\r\n // {\r\n // id: 8,\r\n // name: 'Rebooking',\r\n // color: '#dc3545',\r\n // icon: ,\r\n // count: state.communicatorData.forRebookCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=REBOOKING` }\r\n // },\r\n // {\r\n // id: 9,\r\n // name: 'Parts Escalation',\r\n // color: '#dc3545',\r\n // icon: ,\r\n // count: state.communicatorData.partsEscalationCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=PE` }\r\n // }\r\n ];\r\n\r\n const CommunicatorMemberSecTwo = [\r\n {\r\n id: 11,\r\n name: 'Checked In',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.checkedInCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=CHECKIN` }\r\n },\r\n {\r\n id: 12,\r\n name: 'Check In - WSL not set',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.wslNotSet,\r\n url: { pathname: '/SiteVehicles', search: `?status=WSLNOTSET` }\r\n },\r\n {\r\n id: 13,\r\n name: 'Workshop',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.workshopCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=WORKSHOP` }\r\n },\r\n {\r\n id: 14,\r\n name: 'Site Vehicles',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.siteVehiclesCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=S` },\r\n isShowCustomer: true\r\n }\r\n // {\r\n // id: 20,\r\n // name: 'My Action Log',\r\n // color: '#3498db',\r\n // icon: ,\r\n // count: state.communicatorData.awaitingAuthorityCount,\r\n // url: '/Openactionlog'\r\n // }\r\n ];\r\n\r\n const ActionLogList = [\r\n // {\r\n // id: 20,\r\n // name: ,\r\n // color: '#3498db',\r\n // icon: ,\r\n // count: state.communicatorData.awaitingAuthorityCount,\r\n // url: '/Openactionlog'\r\n // },\r\n {\r\n id: 21,\r\n name: 'My Action Log',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.awaitingAuthorityCount,\r\n url: '/Openactionlog'\r\n }\r\n ];\r\n\r\n const CommunicatorMemberSecThree = [\r\n // {\r\n // id: 14,\r\n // name: 'Checked Out',\r\n // color: '#2ecc71',\r\n // icon: ,\r\n // count: state.communicatorData.checkedOutCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=CHECKEDOUT` }\r\n // },\r\n // {\r\n // id: 15,\r\n // name: 'Parts Arrived',\r\n // color: '#2ecc71',\r\n // icon: ,\r\n // count: state.communicatorData.partsArrivedCount,\r\n // url: { pathname: '/SiteVehicles', search: `?status=PA` }\r\n // },\r\n {\r\n id: 16,\r\n name: 'Jobs Approved',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.jobsApprovedCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=A` }\r\n },\r\n {\r\n id: 17,\r\n name: 'Work Completed',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.workCompletedCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=WC` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 18,\r\n name: ' Awaiting Collection',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.awaitingCollectionCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=ACOLLECTION` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 1,\r\n name: 'Awaiting Authority',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.awaitingAuthorityCount,\r\n url: isInternal ? { pathname: '/SiteVehicles', search: `?status=AUTH` } : '/AwaitingAuthority',\r\n isShowCustomer: true\r\n }\r\n ];\r\n\r\n const CommunicatorBookingsSec = [\r\n {\r\n id: 10,\r\n name: 'Bookings',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingCount,\r\n url: { pathname: '/SiteVehicles', search: `?status=BOOKED` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 10,\r\n name: isInternal ? 'Request Received' : 'Request Sent',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingRequestCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=1` },\r\n isShowCustomer: true\r\n },\r\n\r\n ...(!isInternal\r\n ? [\r\n {\r\n id: 10,\r\n name: 'Re-Schedule Received',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingReScheduleReceivedSentCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=2` }\r\n },\r\n {\r\n id: 10,\r\n name: 'Re-Schedule Sent',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingReScheduleSentCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=3` },\r\n isShowCustomer: true\r\n }\r\n ]\r\n : [\r\n {\r\n id: 10,\r\n name: 'Re-Schedule Sent',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingReScheduleSentCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=2` }\r\n },\r\n\r\n {\r\n id: 10,\r\n name: 'Re-Schedule Received',\r\n color: '#3498db',\r\n icon: ,\r\n count: state.communicatorData.bookingReScheduleReceivedSentCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=3` },\r\n isShowCustomer: true\r\n }\r\n ]),\r\n\r\n {\r\n id: 10,\r\n name: 'Booking Confirmed',\r\n color: '#2ecc71',\r\n icon: ,\r\n count: state.communicatorData.bookingConfirmedCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=4` },\r\n isShowCustomer: true\r\n },\r\n {\r\n id: 10,\r\n name: 'Booking Cancelled',\r\n color: '#dc3545',\r\n icon: ,\r\n count: state.communicatorData.bookingCancelCount,\r\n url: { pathname: '/BookingsRequesteList', search: `?status=5` },\r\n isShowCustomer: true\r\n }\r\n ];\r\n\r\n const bookingReqShowModal = () => {\r\n setState((st) => ({ ...st, isBookingRequesteModal: true }));\r\n };\r\n\r\n const closeModal = (val) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n newSt.isBookingRequesteModal = false;\r\n if (val) {\r\n newSt.isReload = new Date();\r\n }\r\n return newSt;\r\n });\r\n };\r\n\r\n const CommunicatorHeaderComp = () => {\r\n return (\r\n
\r\n {/* Bookings */}\r\n
\r\n Request Booking\r\n
\r\n
\r\n );\r\n };\r\n\r\n return (\r\n
\r\n \r\n {AppStorage.getCommunicatorAllowed() && (\r\n <>\r\n {isCustomer ? (\r\n <>\r\n \r\n p.isShowCustomer\r\n )}\r\n />\r\n \r\n \r\n p.isShowCustomer)} label={CommunicatorHeaderComp()} />\r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n {state.isBookingRequesteModal && (\r\n // closeModal(false)} maxWidth=\"md\" fullWidth overflow=\"auto\">\r\n \r\n // \r\n )}\r\n
\r\n );\r\n};\r\nexport default CustCommunicatorDash;\r\n","import { get, post, put } from \"./http-calls\";\r\n\r\nexport const changeUserPassword = async (currentpass, newpassword, confirm) => {\r\n let res = await post(`/changePassword`, {\r\n currentPassword: currentpass,\r\n newPassword: newpassword,\r\n confirmPassword: confirm,\r\n }, { useAuthToken: true });\r\n return res;\r\n};\r\n\r\nexport const SetUserPassword = async (newpassword, confirm,id,token) => { \r\n let res = await post(`/setNewPassword/${id}`, {\r\n newPassword: newpassword,\r\n confirmPassword: confirm,\r\n passwordResetToken: token\r\n });\r\n return res;\r\n};\r\n","export const TypeOfAuth = {\r\n NonAuth: 0,\r\n Auth: 1,\r\n Both: 2,\r\n};","import * as Components from \"./../../../../Components\";\r\nimport PasswordReset from \"../../../Modal/PasswordReset\"\r\nimport { TypeOfAuth } from './../menu-auth-type';\r\n\r\nexport default [{\r\n label: \"Home\",\r\n path: \"/\",\r\n exact: true,\r\n component: Components.home,\r\n authType: TypeOfAuth.NonAuth,\r\n}, {\r\n label: \"Login\",\r\n path: \"/login\",\r\n hidden: true,\r\n component: Components.login,\r\n authType: TypeOfAuth.NonAuth,\r\n}\r\n, {\r\n label: \"Reset Password\",\r\n path: \"/ResetPassword/:id\",\r\n hidden: true,\r\n component: PasswordReset,\r\n authType: TypeOfAuth.NonAuth,\r\n}\r\n];","import React, { useContext, useState } from \"react\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport AppContext from \"../../App/AppContext\";\r\nimport { PasswordBox, SecondaryButton, PrimaryButton } from \"./../FormInput\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { SetUserPassword } from \"../Service/changePassword-service\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport \"./model.css\";\r\n\r\nconst ResetPasswordModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n new: \"\",\r\n confirm: \"\",\r\n enableChange: false,\r\n });\r\n\r\n const handleClose = () => {\r\n // hideModal();\r\n props.history.push(\"/\");\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n nst.enableChange =\r\n nst.new &&\r\n nst.confirm &&\r\n nst.new === nst.confirm;\r\n return nst;\r\n });\r\n };\r\n\r\n const handleChangePassword = async (e) => {\r\n e.preventDefault();\r\n if (state.new && state.confirm) {\r\n const res = await SetUserPassword(\r\n state.new,\r\n state.confirm,\r\n props.match.params.id,\r\n window.location.search.substring(1)\r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n // showToast(res.messages);\r\n }\r\n else\r\n {\r\n showToast(res.message);\r\n props.history.push(\"/\");\r\n }\r\n \r\n } else {\r\n showToast(\"New password and confirm password is required.\");\r\n }\r\n hideModal();\r\n };\r\n return (\r\n \r\n \r\n \r\n Reset Password\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ResetPasswordModal;\r\n","import * as Components from './../../../../Components';\r\nimport { TypeOfAuth } from './../menu-auth-type';\r\nimport { Navbar } from './../../Navbar';\r\nimport LoyaltyIcon from '@material-ui/icons/Loyalty';\r\nimport ForumIcon from '@material-ui/icons/Forum';\r\nimport ReceiptIcon from '@material-ui/icons/Receipt';\r\nimport SettingsIcon from '@material-ui/icons/Settings';\r\nimport LabelImportantIcon from '@material-ui/icons/LabelImportant';\r\nimport BuildIcon from '@material-ui/icons/Build';\r\nimport PersonIcon from '@material-ui/icons/Person';\r\nimport HomeIcon from '@material-ui/icons/Home';\r\n\r\nexport default [\r\n {\r\n label: 'Home',\r\n path: '/',\r\n exact: true,\r\n component: Components.home,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Branches',\r\n path: '/branches',\r\n exact: true,\r\n component: Components.Braches,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Users',\r\n path: '/users',\r\n component: Components.userManagement,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'eWIP',\r\n authType: TypeOfAuth.Both,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'QC',\r\n path: '/',\r\n authType: TypeOfAuth.Both,\r\n children: [\r\n {\r\n label: 'Results Lists',\r\n path: '/results-lists',\r\n component: Components.QCResultsList,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Items',\r\n path: '/items',\r\n component: Components.QCItems,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Workflows',\r\n path: '/workflow',\r\n component: Components.workflow,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'OCR Documents',\r\n path: '/ocrdocuments',\r\n component: Components.ocrDocuments,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Web Forms',\r\n path: '/webform',\r\n component: Components.WebForm,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Dynamic Forms',\r\n path: '/DynamicFormsList',\r\n component: Components.DynamicFormsList,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Lists',\r\n path: '/',\r\n authType: TypeOfAuth.Both,\r\n children: [\r\n {\r\n label: 'Failure Notes',\r\n path: '/Lists/failurenotes',\r\n exact: true,\r\n component: Components.FailureNotes,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Std Tech Write-ups',\r\n path: '/standard-write-up',\r\n component: Components.StandardTechWriteUp,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Work Accomplished Codes',\r\n path: '/Lists/workaccomplishedcode',\r\n exact: true,\r\n component: Components.WorkAccomplishedCode,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Workflow Steps List',\r\n path: '/Lists/workflowttepslist',\r\n exact: true,\r\n component: Components.WorkflowStepsList,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Battery Results',\r\n path: '/Lists/BatteryResults',\r\n exact: true,\r\n component: Components.BatteryResults,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Defect Reported Categories',\r\n path: '/defect-reported-categories',\r\n component: Components.DefectReportedCategories,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Defect Actioned Category',\r\n path: '/DefectActionCategories',\r\n component: Components.DefectActionedCategories,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Battery Manufacturers',\r\n path: '/Lists/BatteryManufacturers',\r\n exact: true,\r\n component: Components.BatteryManufacturers,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Video Categories',\r\n path: '/Lists/VideoCategories',\r\n exact: true,\r\n component: Components.VideoCategories,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Videos',\r\n path: '/Lists/Videos',\r\n exact: true,\r\n component: Components.Videos,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'VOR Types',\r\n exact: true,\r\n path: '/Communicator/vortypes',\r\n component: Components.VorTypes,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Translations',\r\n path: '/Translations',\r\n exact: true,\r\n component: Components.Translations,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Diagnostic Sheets',\r\n authType: TypeOfAuth.Both,\r\n children: [\r\n { label: 'Faults', path: '/diagnostic_faults', component: Components.DiagnosticFaults, authType: TypeOfAuth.Auth },\r\n {\r\n label: 'Engine Faults',\r\n path: '/diagnosticEngineFaults',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Noise Apparents',\r\n path: '/diagnosticNoiseApparents',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Locations',\r\n path: '/diagnosticLocations',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Communicator',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Branch Parameters',\r\n exact: true,\r\n path: '/Communicator/BranchParameters',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Booking Request Status',\r\n exact: true,\r\n path: '/Communicator/BookingRequestStatus',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Notifications Groups',\r\n exact: true,\r\n path: '/Communicator/setVehicleNotification',\r\n component: Components.AdminVehicleNotification,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Vehicle Status Update',\r\n exact: true,\r\n path: '/Communicator/smsstatusupdate',\r\n component: Components.SMSStatusUpdate,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Invoices',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Customers',\r\n exact: true,\r\n path: '/invoice/Customers',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Branches',\r\n exact: true,\r\n path: '/invoice/Branches',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Branch Status Email',\r\n exact: true,\r\n path: '/invoice/BranchStatusEmail',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'OCR Documents To Process',\r\n path: '/ocrdocumentstoprocess/:name/:ocrDocId',\r\n hidden: true,\r\n exact: true,\r\n component: Components.OcrDocumentToProcess,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'OCR Documents Field',\r\n path: '/ocrdocumentsfield/:ocrDocId',\r\n hidden: true,\r\n exact: true,\r\n component: Components.OcrDocumentField,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Settings',\r\n path: '/Settings',\r\n icon: ,\r\n exact: true,\r\n component: Components.Settings,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Ticker Messages',\r\n path: '/ticker_Messages',\r\n icon: ,\r\n exact: true,\r\n component: Components.KipMessages,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Workflow Steps List Option',\r\n path: '/workflowstplistops/:listID',\r\n component: Components.WorkflowStepsListOptions,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true,\r\n exact: true\r\n },\r\n {\r\n label: 'Logout',\r\n path: '/logout',\r\n hidden: true,\r\n component: Components.logout,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Workflow Steps',\r\n hidden: true,\r\n exact: true,\r\n path: '/steps/:workflowId',\r\n component: Components.workflowSteps,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Return Reason',\r\n hidden: true,\r\n exact: true,\r\n path: '/returnreason/:workflowId',\r\n component: Components.ReturnReason,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Dynamic Form Fields',\r\n hidden: true,\r\n exact: true,\r\n path: '/DynamicForm/:DynamicFormID',\r\n component: Components.DynamicFormFields,\r\n authType: TypeOfAuth.Auth\r\n },\r\n];\r\n","import * as Components from './../../../../Components';\r\nimport { TypeOfAuth } from './../menu-auth-type';\r\nimport ReceiptIcon from '@material-ui/icons/Receipt';\r\nimport AssignmentIndIcon from '@material-ui/icons/AssignmentInd';\r\nimport BookmarksIcon from '@material-ui/icons/Bookmarks';\r\nimport EmojiTransportationIcon from '@material-ui/icons/EmojiTransportation';\r\nimport ForumIcon from '@material-ui/icons/Forum';\r\nimport DepartureBoardIcon from '@material-ui/icons/DepartureBoard';\r\nimport LoyaltyIcon from '@material-ui/icons/Loyalty';\r\nimport HomeIcon from '@material-ui/icons/Home';\r\nimport VideoLibraryIcon from '@material-ui/icons/VideoLibrary';\r\nimport FileCopyIcon from '@material-ui/icons/FileCopy';\r\nimport PaymentIcon from '@material-ui/icons/Payment';\r\nimport RemoveFromQueueIcon from '@material-ui/icons/RemoveFromQueue';\r\nimport SendIcon from '@material-ui/icons/Send';\r\nimport RateReviewIcon from '@material-ui/icons/RateReview';\r\nimport SpeakerNotesIcon from '@material-ui/icons/SpeakerNotes';\r\n\r\nexport default [\r\n {\r\n label: 'Dashboard',\r\n path: '/',\r\n exact: true,\r\n component: Components.CustCommonDash,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'eWIP',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n path: '/cust_dashboard',\r\n exact: true,\r\n component: Components.CustDashboard,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Videos',\r\n path: '/Lists/Videos',\r\n exact: true,\r\n component: Components.Videos,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n\r\n {\r\n label: 'Invoices',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n // {\r\n // label: 'Customers',\r\n // exact: true,\r\n // path: '/invoice/Customers',\r\n // component: () => ,\r\n // authType: TypeOfAuth.Auth\r\n // },\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n path: '/invoice/dashboard',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'All Invoices',\r\n exact: true,\r\n path: '/invoice/allInvoices',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Outstanding',\r\n exact: true,\r\n path: '/invoice/Invoice_Outstanding',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Paid',\r\n exact: true,\r\n path: '/invoice/Invoice_Paid',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Queried',\r\n exact: true,\r\n path: '/invoice/Invoice_Queried',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Messages Sent',\r\n exact: true,\r\n path: '/invoice/messagesSent',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Messages Received',\r\n exact: true,\r\n path: '/invoice/messagesReceived',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Customer',\r\n path: '/Customer/:name/:id',\r\n exact: true,\r\n hidden: true,\r\n component: Components.JobDetails,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Workflow Job',\r\n hidden: true,\r\n exact: true,\r\n path: '/job/:jobId/:workflowId',\r\n component: Components.workflowJobDetails,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'BookingsList',\r\n path: '/BookingsRequesteList',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: ,\r\n hidden: true\r\n },\r\n {\r\n label: 'Logout',\r\n path: '/logout',\r\n hidden: true,\r\n component: Components.logout,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Communicator',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n path: '/communicator_dash',\r\n exact: true,\r\n component: Components.CustCommunicatorDash,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Site Vehicles',\r\n path: '/SiteVehicles',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'VOR Vehicles',\r\n path: '/VORVehicles',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Awaiting Authority',\r\n path: '/AwaitingAuthority',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: Components.CustAwaitingAuthority,\r\n icon: \r\n },\r\n {\r\n label: 'Jobs Approved',\r\n path: '/JobsApproved',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Bookings',\r\n path: '/bookings',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: Components.CustBookings,\r\n icon: \r\n }\r\n ]\r\n }\r\n];\r\n","import Card from '@material-ui/core/Card';\r\nimport CardContent from '@material-ui/core/CardContent';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Container from '@material-ui/core/Container';\r\nimport React, { useEffect, useContext, useState } from 'react';\r\nimport AppContext from '../../App/AppContext';\r\nimport { Link } from 'react-router-dom';\r\nimport { getCustomerDashboard } from '../../Core/Service/customer-services';\r\nimport './dashboard.scss';\r\nimport { RenderTiles } from './CustCommonDash';\r\nimport { AppStorage } from '../../Core/Service/storage-service';\r\n\r\nexport default function Album() {\r\n const portalSettings = AppStorage.getPortalSetting();\r\n const [state, setState] = useState({\r\n rows_new: []\r\n });\r\n const { showToast } = useContext(AppContext);\r\n useEffect(async () => {\r\n let res = await getCustomerDashboard();\r\n if (res.success) {\r\n setState((st) => ({ ...st, rows_new: res.data }));\r\n }\r\n if (!res.success) {\r\n showToast(res.message);\r\n }\r\n }, []);\r\n const cards = [\r\n {\r\n id: 1,\r\n name: 'Current Month',\r\n color: '#3498db',\r\n count: state.rows_new.currentMonth,\r\n url: '/Customer/Current Month/1'\r\n },\r\n {\r\n id: 2,\r\n name: 'Current Year',\r\n color: '#2ecc71',\r\n count: state.rows_new.currentYear,\r\n url: '/Customer/Current Year/2'\r\n },\r\n {\r\n id: 3,\r\n name: 'Last Year',\r\n color: '#dc3545',\r\n count: state.rows_new.preYear,\r\n url: '/Customer/Last Year/3'\r\n },\r\n {\r\n id: 4,\r\n name: 'Total',\r\n color: '#868e96',\r\n count: state.rows_new.total,\r\n url: '/Customer/Total/4'\r\n }\r\n ];\r\n return (\r\n //
\r\n // \r\n // \r\n // {cards.map((option) => (\r\n // \r\n // \r\n // \r\n // \r\n // {option.name}\r\n // {option.count}\r\n // \r\n // \r\n // \r\n // \r\n // ))}\r\n // \r\n // \r\n //
\r\n
\r\n \r\n {AppStorage.getWIPAllowed() && portalSettings.portalSettingeWIPEnabled && (\r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n );\r\n}\r\n","import * as Components from './../../../../Components';\r\nimport { TypeOfAuth } from './../menu-auth-type';\r\nimport HomeIcon from '@material-ui/icons/Home';\r\nimport ArchiveIcon from '@material-ui/icons/Archive';\r\nimport VideoLibraryIcon from '@material-ui/icons/VideoLibrary';\r\nimport DashboardIcon from '@material-ui/icons/Dashboard';\r\nimport AirplayIcon from '@material-ui/icons/Airplay';\r\nimport Dashboard from './../../../../Components/internal/dashboard/dashboard';\r\nimport AssessmentIcon from '@material-ui/icons/Assessment';\r\nimport ForumIcon from '@material-ui/icons/Forum';\r\nimport ReceiptIcon from '@material-ui/icons/Receipt';\r\nimport PieChartIcon from '@material-ui/icons/PieChart';\r\nimport BubbleChartIcon from '@material-ui/icons/BubbleChart';\r\nimport AttachMoneyIcon from '@material-ui/icons/AttachMoney';\r\nimport EuroIcon from '@material-ui/icons/Euro';\r\nimport DescriptionIcon from '@material-ui/icons/Description';\r\nimport EmojiEventsIcon from '@material-ui/icons/EmojiEvents';\r\nimport SpeedIcon from '@material-ui/icons/Speed';\r\nimport WebIcon from '@material-ui/icons/Web';\r\nimport BuildIcon from '@material-ui/icons/Build';\r\nimport DragIndicatorIcon from '@material-ui/icons/DragIndicator';\r\nimport SendIcon from '@material-ui/icons/Send';\r\nimport SmsIcon from '@material-ui/icons/Sms';\r\nimport AssignmentTurnedInIcon from '@material-ui/icons/AssignmentTurnedIn';\r\nimport LiveHelpIcon from '@material-ui/icons/LiveHelp';\r\nimport AssignmentIndIcon from '@material-ui/icons/AssignmentInd';\r\nimport FolderSpecialIcon from '@material-ui/icons/FolderSpecial';\r\nimport BookmarksIcon from '@material-ui/icons/Bookmarks';\r\nimport WorkIcon from '@material-ui/icons/Work';\r\nimport BookIcon from '@material-ui/icons/Book';\r\nimport EmojiTransportationIcon from '@material-ui/icons/EmojiTransportation';\r\nimport DepartureBoardIcon from '@material-ui/icons/DepartureBoard';\r\nimport DriveEtaIcon from '@material-ui/icons/DriveEta';\r\nimport LoyaltyIcon from '@material-ui/icons/Loyalty';\r\nimport FileCopyIcon from '@material-ui/icons/FileCopy';\r\nimport PaymentIcon from '@material-ui/icons/Payment';\r\nimport RemoveFromQueueIcon from '@material-ui/icons/RemoveFromQueue';\r\nimport RateReviewIcon from '@material-ui/icons/RateReview';\r\nimport SpeakerNotesIcon from '@material-ui/icons/SpeakerNotes';\r\nimport AccountBoxIcon from '@material-ui/icons/AccountBox';\r\nexport default [\r\n // {\r\n // label: 'Home',\r\n // path: '/',\r\n // exact: true,\r\n // component: Components.Dashbord,\r\n // authType: TypeOfAuth.Auth,\r\n // hidden: true,\r\n // icon: \r\n // },\r\n {\r\n label: 'eWIP',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Home',\r\n path: '/eWIPDashboard',\r\n exact: true,\r\n component: Components.Dashbord,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n icon: ,\r\n authType: TypeOfAuth.Auth,\r\n dontFlatListChildren: true,\r\n isDynamicChildren: 'eWipDashboard',\r\n children: [\r\n // {\r\n // label: 'Service Advisor',\r\n // path: '/dashboard/sa',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Awaiting Arrival',\r\n // path: '/dashboard/aa',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Workshop Control',\r\n // path: '/dashboard/wc',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Parts Advisor',\r\n // path: '/dashboard/pa',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Technician App',\r\n // path: '/dashboard/ta',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Back Office',\r\n // path: '/dashboard/bo',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // }\r\n ]\r\n },\r\n {\r\n label: 'Special Equipments',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n path: '/Lists/SpecialEquipment/Dash',\r\n exact: false,\r\n component: Components.SpecialEquipmentDash,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Special Equipments',\r\n path: '/Lists/SpecialEquipment',\r\n exact: false,\r\n component: Components.SpecialEquipment,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Archived Jobs',\r\n path: '/archivedjobs',\r\n exact: true,\r\n component: Components.ArchivedJobs,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n\r\n {\r\n label: 'QC Jobs',\r\n // hidden: true,\r\n icon: ,\r\n exact: true,\r\n path: '/qc_jobs',\r\n component: Components.QCJobsDashboard,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Videos',\r\n path: '/Lists/Videos',\r\n exact: true,\r\n component: Components.Videos,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Dashboard Detail',\r\n path: '/dashgrid',\r\n exact: true,\r\n component: Components.dashboard,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n\r\n {\r\n label: 'Communicator',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n path: '/communicator_dash',\r\n exact: true,\r\n component: Components.CustCommunicatorDash,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Open Action Log',\r\n path: '/Openactionlog',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: Components.OpenActionLog,\r\n icon: \r\n },\r\n\r\n {\r\n label: 'Site Vehicles',\r\n path: '/SiteVehicles',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'VOR Vehicles',\r\n path: '/VORVehicles',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Workshop Vehicles',\r\n path: '/WorkshopVehicles',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Check In - WSL not set',\r\n path: '/CheckInWSLNotSet',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Jobs Approved',\r\n path: '/JobsApproved',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Bookings',\r\n path: '/bookings',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: Components.BookingsScreen,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Reports',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Group Dashboard',\r\n exact: true,\r\n path: '/ReportsDashboard',\r\n component: Components.MiniViewReportingDashboard,\r\n // component: Components.RepotingTab,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Detail Dashboard',\r\n exact: true,\r\n path: '/RepotingTab',\r\n component: Components.RepotingTab,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Budget Dashboard',\r\n exact: true,\r\n path: '/budget',\r\n component: Components.BudgetScreen,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Profit & Loss',\r\n exact: true,\r\n path: '/profitloss',\r\n component: Components.ProfitLoss,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Aged Measures',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n path: '/AgedMeasures',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Account Queries',\r\n exact: true,\r\n path: '/AgedMeasures/AccountQueries',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Account Queries By Department',\r\n exact: true,\r\n path: '/AgedMeasures/AccountQueriesByDepartment',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Aged Debt - Branch',\r\n exact: true,\r\n path: '/AgedMeasures/AgedDebt-Branch',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Aged Debt - Company',\r\n exact: true,\r\n path: '/AgedMeasures/AgedDebt-Company',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Cash',\r\n exact: true,\r\n path: '/AgedMeasures/Cash',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Cash By Department',\r\n exact: true,\r\n path: '/AgedMeasures/CashByDepartment',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Surcharges',\r\n exact: true,\r\n path: '/AgedMeasures/DirtyUnits',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Fuso Stock',\r\n exact: true,\r\n path: '/AgedMeasures/NewFusoStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Maxus Vans',\r\n exact: true,\r\n path: '/AgedMeasures/NewMaxusVans',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Truck Stock',\r\n exact: true,\r\n path: '/AgedMeasures/NewTruckStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Van Stock',\r\n exact: true,\r\n path: '/AgedMeasures/NewVanStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'R&M',\r\n exact: true,\r\n path: '/AgedMeasures/R&M',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Fuso Stock',\r\n exact: true,\r\n path: '/AgedMeasures/UsedFusoStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Maxus Vans',\r\n exact: true,\r\n path: '/AgedMeasures/UsedMaxusVans',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Non-franchise Stock',\r\n exact: true,\r\n path: '/AgedMeasures/UsedNon-franchiseStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Truck Stock',\r\n exact: true,\r\n path: '/AgedMeasures/UsedTruckStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Van Stock',\r\n exact: true,\r\n path: '/AgedMeasures/UsedVanStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Vehicle Debt',\r\n exact: true,\r\n path: '/AgedMeasures/VehicleDebt',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Warranty',\r\n exact: true,\r\n path: '/AgedMeasures/Warranty',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Work In Progress',\r\n exact: true,\r\n path: '/AgedMeasures/WorkInProgress',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Work In Progress by Departement',\r\n exact: true,\r\n path: '/AgedMeasures/WorkInProgressbyDepartement',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n // {\r\n // label: 'New Services',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // icon: ,\r\n // children: [\r\n // {\r\n // label: 'Dashboard',\r\n // exact: true,\r\n // path: '/budget_dashboard',\r\n // component: Components.BudgetDashboard,\r\n // authType: TypeOfAuth.Auth,\r\n // icon: \r\n // }\r\n // ]\r\n // },\r\n {\r\n label: 'DOC',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Weekly Flash Report',\r\n exact: true,\r\n path: '/Docs/WeeklyFlashReport',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Used Stock',\r\n children: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Used Stock Valuation',\r\n exact: true,\r\n path: '/UsedStockValuation',\r\n component: Components.UsedStockValuation,\r\n authType: TypeOfAuth.Auth\r\n // icon: \r\n },\r\n {\r\n label: 'Used Vehicle Stock',\r\n exact: true,\r\n path: '/usedStock',\r\n component: Components.UsedStock,\r\n authType: TypeOfAuth.Auth\r\n // icon: \r\n },\r\n {\r\n label: 'Aged Vehicle Stock',\r\n exact: true,\r\n path: '/agedStocks',\r\n component: Components.AgedStocks,\r\n authType: TypeOfAuth.Auth\r\n // icon: \r\n },\r\n {\r\n label: 'Overage Priority List',\r\n exact: true,\r\n path: '/overagePriority',\r\n component: Components.OveragePriority,\r\n authType: TypeOfAuth.Auth\r\n // icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Sales',\r\n children: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Sales Dashboard',\r\n exact: true,\r\n path: '/sales/dashboard',\r\n component: Components.SalesDashboard,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Sales Dashboard V2',\r\n exact: true,\r\n path: '/sales/dashboardtwo',\r\n component: Components.SalesDashboardTwo,\r\n authType: TypeOfAuth.Auth\r\n },\r\n\r\n {\r\n label: 'New Vehicle Profit Report',\r\n exact: true,\r\n path: '/sales/NewVehicleProfitReport',\r\n component: Components.NewVehicleProfitReport,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Vehicle Profit Report',\r\n exact: true,\r\n path: '/sales/UsedVehicleProfitReport',\r\n component: Components.UsedVehicleProfitReport,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Account Queries by Salesexec',\r\n exact: true,\r\n path: '/sales/AccountQueriesbySalesexec',\r\n component: Components.AccountQueriesbySalesexec,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Aged Measures Work - Progress',\r\n exact: true,\r\n path: '/sales/AgedMeasuresWorkingProgress',\r\n component: Components.AgedMeasuresWorkingProgress,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Sales Work In Progress',\r\n exact: true,\r\n path: '/sales/SalesWorkInProgress',\r\n component: Components.SalesWorkinProgress,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Registration Reports',\r\n exact: true,\r\n path: '/sales/RegistrationReports',\r\n component: Components.RegistrationReports,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Vehicle Stock (Excluding WIP)',\r\n exact: true,\r\n path: '/sales/NewVehicleStockExcludingWIP',\r\n component: Components.VehicleStocksExWip,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Vehicle Order',\r\n exact: true,\r\n path: '/sales/VehicleNewOrder',\r\n component: Components.VehicleNewOrder,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Outstanding Invoices',\r\n exact: true,\r\n path: '/sales/OutstandingInvoices',\r\n component: Components.OutstandingInvoices,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Sales Contingency Debt',\r\n exact: true,\r\n path: '/sales/SalesContingencyDebt',\r\n component: Components.SalesContingencyDebt,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Vehicle Stock',\r\n exact: true,\r\n path: '/sales/UsedVehicleStock',\r\n component: Components.UsedVehicleStock,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Vehicle Aged Debt By Salesexec',\r\n exact: true,\r\n path: '/sales/VehicleAgedDebtBySalesexec',\r\n component: Components.VehicleAgedDebtBySalesexec,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Services',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n // {\r\n // label: 'Dashboard',\r\n // exact: true,\r\n // path: '/service/dashboard',\r\n // component: Components.ServiceDashboard,\r\n // authType: TypeOfAuth.Auth\r\n // },\r\n {\r\n label: 'Consumables',\r\n exact: true,\r\n path: '/Services/Consumables',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Idle Time Analysis',\r\n exact: true,\r\n path: '/Services/IdleTimeAnalysis',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Idle Time Analysis-Reason',\r\n exact: true,\r\n path: '/Services/IdleTimeAnalysisReason',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Invoiced Hours',\r\n exact: true,\r\n path: '/Services/InvoicedHours',\r\n component: Components.InvoicedHours,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Mobilovan',\r\n exact: true,\r\n path: '/Services/Mobilovan',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'NPW Rectification',\r\n exact: true,\r\n path: '/Services/NPWRectification',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Parts Warranty Write Off',\r\n exact: true,\r\n path: '/Services/PartsWarrantyWriteOff',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Service Warranty Write Off',\r\n exact: true,\r\n path: '/Services/ServiceWarrantyWriteOff',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Technician Efficiency',\r\n exact: true,\r\n path: '/Services/Efficiency',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Parts',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n // {\r\n // label: 'Dashboard',\r\n // exact: true,\r\n // path: '/parts/dashboard',\r\n // component: Components.HeadLinesDashboard\r\n // },\r\n {\r\n label: 'Parts',\r\n exact: true,\r\n path: '/parts/PartsSales/P',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Trade Centre',\r\n exact: true,\r\n path: '/parts/PartsSales/B',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Workshop',\r\n exact: true,\r\n path: '/parts/PartsSales/w',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Car Express',\r\n exact: true,\r\n path: '/parts/PartsSales/f',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Total',\r\n exact: true,\r\n path: '/parts/PartsSales/A',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used',\r\n exact: true,\r\n path: '/parts/PartsSales/U',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Workshop',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Shift Calendar',\r\n exact: true,\r\n path: '/ShiftCalendar',\r\n component: Components.ShiftCalenderComp,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Resource Calendar',\r\n exact: true,\r\n path: '/ResourceCalendar',\r\n component: Components.ResourceCalenderComp,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n // {\r\n // label: 'WIP Hours',\r\n // exact: true,\r\n // path: '/wipHours',\r\n // component: Components.WipHours,\r\n // authType: TypeOfAuth.Auth,\r\n // icon: \r\n // },\r\n {\r\n label: 'Budget',\r\n exact: true,\r\n path: '/ReportingBudget',\r\n component: Components.ReportingBudget,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Invoices',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n path: '/invoice/dashboard',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Customers',\r\n exact: true,\r\n path: '/invoice/Customers',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'All Invoices',\r\n exact: true,\r\n path: '/invoice/allInvoices',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Outstanding',\r\n exact: true,\r\n path: '/invoice/Invoice_Outstanding',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Paid',\r\n exact: true,\r\n path: '/invoice/Invoice_Paid',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Queried',\r\n exact: true,\r\n path: '/invoice/Invoice_Queried',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Messages Sent',\r\n exact: true,\r\n path: '/invoice/messagesSent',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Messages Received',\r\n exact: true,\r\n path: '/invoice/messagesReceived',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'MOT HISTORY',\r\n // hidden: true,\r\n icon: ,\r\n exact: true,\r\n path: '/MotHistoryAndRoadTax',\r\n component: Components.MotHistoryScreen,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'BookingsList',\r\n path: '/BookingsRequesteList',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: ,\r\n hidden: true\r\n },\r\n {\r\n label: 'GetAgedMeasuresDirtyUnits',\r\n exact: true,\r\n path: '/AgedMeasures/GetAgedMeasuresDirtyUnits',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'ViewDebtDetailsSalesexec',\r\n exact: true,\r\n path: '/sales/ViewDebtDetailsSalesexec',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'GetAgedMeasuresRanMWarrantyCashGen',\r\n exact: true,\r\n path: '/AgedMeasures/GetAgedMeasuresRanMWarrantyCashGen',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'GetUsedAndNewVehicleDebt',\r\n exact: true,\r\n path: '/AgedMeasures/GetUsedAndNewVehicleDebt',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'EnquirieList',\r\n exact: true,\r\n path: '/AgedMeasures/EnquirieList',\r\n component: Components.EnquirieList,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'Workflow Job',\r\n path: '/job/:jobId/:workflowId',\r\n component: Components.workflowJobDetails,\r\n hidden: true,\r\n exact: true,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Tech Dashboard Detail',\r\n path: '/techDashgrid',\r\n exact: true,\r\n component: Components.TechDashboardGrid,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'Logout',\r\n path: '/logout',\r\n hidden: true,\r\n component: Components.logout,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'HistoryModal',\r\n path: '/SpecialEquipmentHistoryModal',\r\n hidden: true,\r\n component: Components.SpecialEquipmentHistoryModal,\r\n authType: TypeOfAuth.Auth\r\n }\r\n];\r\n","import * as Components from \"./../../../../Components\";\r\nimport { TypeOfAuth } from './../menu-auth-type';\r\n\r\nexport default [{\r\n label: \"Home\",\r\n path: \"/\",\r\n exact: true,\r\n component: Components.AuditorDashboard,\r\n authType: TypeOfAuth.Auth,\r\n },\r\n {\r\n label: 'Videos',\r\n path: '/Lists/Videos',\r\n exact: true,\r\n component: Components.Videos,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: \"Logout\",\r\n path: \"/logout\",\r\n hidden: true,\r\n component: Components.logout,\r\n authType: TypeOfAuth.Auth,\r\n },\r\n {\r\n label: \"Auditor\",\r\n path: \"/Auditor/:name/:id\",\r\n exact: true,\r\n hidden: true,\r\n component: Components.AuditorJobDetails,\r\n authType: TypeOfAuth.Auth,\r\n },\r\n {\r\n label: \"Workflow Job\",\r\n hidden: true,\r\n exact: true,\r\n path: \"/job/:jobId/:workflowId\",\r\n component: Components.workflowJobDetails,\r\n authType: TypeOfAuth.Auth,\r\n }\r\n];","import * as Components from './../../../../Components';\r\nimport { TypeOfAuth } from './../menu-auth-type';\r\n\r\nexport default [\r\n {\r\n label: 'Technician App',\r\n path: '/',\r\n exact: true,\r\n component: Components.technicianApp,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Videos',\r\n path: '/Lists/Videos',\r\n exact: true,\r\n component: Components.Videos,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Workflow Job',\r\n hidden: true,\r\n exact: true,\r\n path: '/job/:jobId/:workflowId/:technicianJobId?/:isTechReadonly?',\r\n component: Components.workflowJobDetails,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Logout',\r\n path: '/logout',\r\n hidden: true,\r\n component: Components.logout,\r\n authType: TypeOfAuth.Auth\r\n }\r\n];\r\n","import * as Components from './../../../../Components';\r\nimport { TypeOfAuth } from './../menu-auth-type';\r\n\r\nexport default [\r\n {\r\n label: 'Technician Write-Up',\r\n hidden: true,\r\n exact: true,\r\n path: '/technicianwriteup/:jobId/:technicianJobId?/:isTechReadonly?',\r\n component: Components.TechWriteUp,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Part Requisitions',\r\n hidden: true,\r\n exact: true,\r\n path: '/partrequisitions/:jobId/:technicianJobId?/:isTechReadonly?',\r\n component: Components.PartRequisitionsModal,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Part Requisitions',\r\n hidden: true,\r\n exact: true,\r\n path: '/partreq-approve/:jobId/:technicianJobId?/:isTechReadonly?',\r\n component: Components.ApprovePartRequisitions,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Part Requisitions',\r\n hidden: true,\r\n exact: true,\r\n path: '/partreq-qty-issue/:jobId/:technicianJobId?/:isTechReadonly?',\r\n component: Components.PartRequisitionsIssueQty,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Quality Control',\r\n hidden: true,\r\n exact: true,\r\n path: '/qc/:jobId',\r\n component: Components.QualityControlSheet,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Customer Consultation',\r\n hidden: true,\r\n exact: true,\r\n path: '/customerconsultation/:jobId',\r\n component: Components.CustomerConsultation,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Special Equipment',\r\n hidden: true,\r\n exact: true,\r\n path: '/specialequipment/:jobId',\r\n component: Components.SpecialEquipmentWebForm,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Lift Check List',\r\n hidden: true,\r\n exact: true,\r\n path: '/liftchecklist/:jobId',\r\n component: Components.LiftCheckList,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Tech Write-Up',\r\n hidden: true,\r\n exact: true,\r\n path: '/techwriteupadvisor/:jobId/:technicianJobId?',\r\n component: Components.TechWrite_Up,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Assign Technician',\r\n hidden: true,\r\n exact: true,\r\n path: '/assign-technician/:jobId',\r\n component: Components.AssignTechnician,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Battery Test',\r\n hidden: true,\r\n exact: true,\r\n path: '/batterytest/:jobId',\r\n component: Components.BatteryTest,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Defect',\r\n hidden: true,\r\n exact: true,\r\n path: '/defectsworkshopcontroller/:jobId/:isReadOnly?',\r\n component: Components.DefectWC,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Defects',\r\n hidden: true,\r\n exact: true,\r\n path: '/defects/:jobId',\r\n component: Components.AddDefects,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Break Disc Pad Wear Evaluation',\r\n hidden: true,\r\n exact: true,\r\n path: '/brakediscpadwear/:jobId/:technicianJobId?/:isTechReadonly?',\r\n component: Components.BrakeDiscPadWear,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Diagnostic Charges',\r\n hidden: true,\r\n exact: true,\r\n path: '/diagnosticcharges/:jobId',\r\n component: Components.DiagnosticCharge,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Tyre Check',\r\n hidden: true,\r\n exact: true,\r\n path: '/tyrecheck/:jobId',\r\n component: Components.TyreChecks,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Service 24',\r\n hidden: true,\r\n exact: true,\r\n path: '/technican/service24/:jobId',\r\n component: Components.Service24Modal,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Diagnostic Sheet',\r\n hidden: true,\r\n // icon: ,\r\n exact: true,\r\n path: '/diagnosticSheet/:jobId',\r\n component: Components.DiagnosticSheets,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Hand Over Sheet',\r\n hidden: true,\r\n exact: true,\r\n path: '/handOverSheetScreen/:jobId',\r\n component: Components.HandOverSheetScreen,\r\n authType: TypeOfAuth.Auth\r\n }\r\n];\r\n","export default __webpack_public_path__ + \"static/media/tree.1d45ee2e.png\";","import { Card, Grid, Typography, Box } from '@material-ui/core';\r\nimport React, { useEffect, useState, useLayoutEffect } from 'react';\r\nimport TreeImg from '../../Core/Header/tree.png';\r\nimport { useWindowSize } from '../../Core/Controls/ScreenResolution';\r\n\r\nconst TreesGrid = (props) => {\r\n const [state, setState] = useState({\r\n val: null,\r\n styleObj: { float: 'left', padding: 10 }\r\n });\r\n\r\n const Card = () => {\r\n return (\r\n \r\n \r\n \r\n );\r\n };\r\n const [widths, heights] = useWindowSize();\r\n let resolution = 947 - heights;\r\n let screen = 750 - resolution;\r\n\r\n useEffect(() => {\r\n setState((st) => ({\r\n ...st,\r\n val: props.match?.params.count || null\r\n }));\r\n\r\n setState((st) => {\r\n let newSt = { ...st };\r\n let obj = { float: 'right', padding: 5 };\r\n let count = props.match?.params.count;\r\n if (count <= 30) {\r\n obj.width = 180;\r\n obj.height = 230;\r\n }\r\n if (count > 30 && count <= 100) {\r\n obj.width = 100;\r\n obj.height = 120;\r\n }\r\n if (count >= 100 && count <= 200) {\r\n obj.width = 77;\r\n obj.height = 84;\r\n }\r\n if (count >= 200 && count <= 300) {\r\n obj.width = 58;\r\n obj.height = 60;\r\n }\r\n if (count >= 300 && count <= 475) {\r\n obj.width = 45;\r\n obj.height = 50;\r\n }\r\n if (count >= 475 && count <= 880) {\r\n obj.width = 35;\r\n obj.height = 30;\r\n }\r\n if (count > 880) {\r\n obj.width = 20;\r\n obj.height = 30;\r\n }\r\n newSt.styleObj = obj;\r\n return newSt;\r\n });\r\n }, [props.match?.params.count]);\r\n\r\n var arr = [];\r\n var elements = [];\r\n for (var i = 0; i < state.val; i++) {\r\n elements.push();\r\n }\r\n\r\n const count = state.val <= 1 ? 'tree' : 'trees';\r\n\r\n return (\r\n
\r\n {elements.length !== 0 ? (\r\n <>\r\n \r\n {elements}\r\n \r\n\r\n \r\n
\r\n You have saved {state.val} {count}\r\n
\r\n \r\n ) : (\r\n
\r\n \r\n \r\n You are on your way to help environment by reducing printed papers\r\n \r\n
\r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default TreesGrid;\r\n","import { get, post } from './http-calls';\r\n\r\nexport const getMenuItems = async () => {\r\n let res = await get(`NavigationMenus/RoleBasedMenu`, { useAuthToken: true });\r\n return res;\r\n};\r\n","import { unAuthMenu, adminMenu, customerMenu, internalUserMenu, auditorMenu, technicianMenu, webFormRoutes } from './menu';\r\nimport TreeImgGallery from '../../Components/_shared/treeImgGallery';\r\nimport ResetPasswordBYInternal from '../../Components/internal/resetPassword';\r\nimport OpenActionLog from '../../Components/internal/Communicator/OpenActionLogs';\r\nimport SiteVehicles from '../../Components/internal/Communicator/SiteVehicles';\r\nimport BookingsScreen from '../../Components/internal/Communicator/Bookings';\r\nimport * as Components from '../../Components';\r\nimport AssessmentIcon from '@material-ui/icons/Assessment';\r\nimport ForumIcon from '@material-ui/icons/Forum';\r\nimport RotateLeftIcon from '@material-ui/icons/RotateLeft';\r\nimport LockIcon from '@material-ui/icons/Lock';\r\nimport { getMenuItems } from './../Service/menuService';\r\nimport { AppStorage } from '../Service/storage-service';\r\n\r\nimport { TypeOfAuth } from './menu/menu-auth-type';\r\n\r\nconst EwipMenus = ['Dashboard Detail', 'Archived Jobs', 'Videos', 'Dashboard', 'QC Jobs'];\r\n\r\nexport const getMenuForRole = (roles, isLoggedIn) => {\r\n const portalSettings = AppStorage.getPortalSetting();\r\n let menus = [];\r\n if (!isLoggedIn) {\r\n menus.push(...unAuthMenu);\r\n } else {\r\n const isCommunicatorAllowed = AppStorage.getCommunicatorAllowed() && portalSettings.portalSettingCommunicatorEnabled;\r\n const isInvoiceAllowed = AppStorage.getInvoiceAllowed() && portalSettings.portalSettingInvoiceEnabled;\r\n const isReportingAllowed = AppStorage.getReportingAllowed() && portalSettings.portalSettingReportingEnabled;\r\n const isWIPAllowed = AppStorage.getWIPAllowed() && portalSettings.portalSettingeWIPEnabled;\r\n const isSpecialEquipmentAllowed = AppStorage.getSpecialEquipmentAllowed() && portalSettings.portalSettingSpecialEquipmentEnabled;\r\n let menuPermissionCounter = AppStorage.menuPermissionCounter();\r\n const isReportingBudgetDashboardAllowed = AppStorage.getReportingBudgetDashboardAllowed();\r\n const isReportingAgedMeasureAllowed = AppStorage.getReportingAgedMeasureAllowed();\r\n const isReportingDOCAllowed = AppStorage.getReportingDOCAllowed();\r\n const isReportingPartsAllowed = AppStorage.getReportingPartsAllowed();\r\n const isReportingSalesAllowed = AppStorage.getReportingSalesAllowed();\r\n const isReportingServiceAllowed = AppStorage.getReportingServiceAllowed();\r\n const isReportingKPIsAllowed = AppStorage.getReportingKPIsAllowed();\r\n const isReportingWorkShopAllowed = AppStorage.getReportingWorkShopAllowed();\r\n const isReportingBudget = AppStorage.getReportingBudgetAccess();\r\n const isDynamicFormAllowed = portalSettings.portalSettingDynamicFormEnabled;\r\n const getDefaultInternalDashboard = AppStorage.getDefaultInternalDashboard();\r\n let reportingMenuScreenConfig = [\r\n { label: 'Budget Dashboard', isAllowed: isReportingBudgetDashboardAllowed },\r\n { label: 'Profit & Loss', isAllowed: isReportingBudgetDashboardAllowed },\r\n { label: 'Aged Measures', isAllowed: isReportingAgedMeasureAllowed },\r\n { label: 'DOC', isAllowed: isReportingDOCAllowed },\r\n { label: 'Sales', isAllowed: isReportingSalesAllowed },\r\n { label: 'Services', isAllowed: isReportingServiceAllowed },\r\n { label: 'Parts', isAllowed: isReportingPartsAllowed },\r\n { label: 'Budget', isAllowed: isReportingBudget }\r\n ];\r\n const dashboards = [\r\n { label: 'eWIP', path: '/eWIPDashboard', allowed: isWIPAllowed, id: 1 },\r\n { label: 'Reports', path: '/ReportsDashboard', allowed: isReportingAllowed, id: 2 },\r\n { label: 'Invoices', path: '/invoice/dashboard', allowed: isInvoiceAllowed, id: 3 },\r\n { label: 'Communicator', path: '/communicator_dash', allowed: isCommunicatorAllowed, id: 4 }\r\n ];\r\n\r\n roles.forEach((role) => {\r\n switch (role) {\r\n case 'admin':\r\n //For admin we used PortalSetting Validations\r\n menus.push(...adminMenu);\r\n if (!portalSettings.portalSettingCommunicatorEnabled) {\r\n let Communicator = menus.findIndex((m) => m.label == 'Communicator');\r\n menus.splice(Communicator, 1);\r\n }\r\n if (!portalSettings.portalSettingeWIPEnabled) {\r\n let AdmineWIPMenus = menus.findIndex((m) => m.label == 'eWIP');\r\n menus.splice(AdmineWIPMenus, 1);\r\n } else {\r\n if (!isDynamicFormAllowed) {\r\n let eWIPIndex = menus.findIndex((m) => m.label == 'eWIP');\r\n if (eWIPIndex > -1) {\r\n menus[eWIPIndex].children = menus[eWIPIndex].children.filter((m) => m.path != '/DynamicFormsList');\r\n }\r\n }\r\n }\r\n if (!portalSettings.portalSettingInvoiceEnabled) {\r\n let AdminInvoice = menus.findIndex((m) => m.label == 'Invoices');\r\n menus.splice(AdminInvoice, 1);\r\n }\r\n\r\n break;\r\n case 'customer':\r\n menus.push(...customerMenu);\r\n if (!isCommunicatorAllowed) {\r\n let Communicator = menus.findIndex((m) => m.label == 'Communicator');\r\n menus.splice(Communicator, 1);\r\n }\r\n if (!isWIPAllowed) {\r\n let eWIP = menus.findIndex((m) => m.label == 'eWIP');\r\n menus.splice(eWIP, 1);\r\n }\r\n if (!isInvoiceAllowed) {\r\n let InternalInvoice = menus.findIndex((m) => m.label == 'Invoices');\r\n menus.splice(InternalInvoice, 1);\r\n }\r\n\r\n if (menuPermissionCounter == 1) {\r\n menus = [...menus].flatMap((elem) => {\r\n if (elem.children && elem.children.length > 0 && !elem.dontFlatListChildren) {\r\n if (isWIPAllowed) {\r\n let DahboardMenuIndex = elem.children.findIndex((p) => p.path === '/cust_dashboard');\r\n if (DahboardMenuIndex >= 0) {\r\n elem.children.splice(DahboardMenuIndex, 1);\r\n }\r\n }\r\n if (isInvoiceAllowed) {\r\n let DahboardMenuIndex = elem.children.findIndex((p) => p.path === '/invoice/dashboard');\r\n if (DahboardMenuIndex >= 0) {\r\n elem.children.splice(DahboardMenuIndex, 1);\r\n }\r\n } else if (isCommunicatorAllowed) {\r\n let DahboardMenuIndex = elem.children.findIndex((p) => p.path === '/communicator_dash');\r\n if (DahboardMenuIndex >= 0) {\r\n elem.children.splice(DahboardMenuIndex, 1);\r\n }\r\n }\r\n return elem.children;\r\n } else {\r\n return elem;\r\n }\r\n });\r\n }\r\n\r\n break;\r\n case 'internal':\r\n menus.push(...internalUserMenu);\r\n if (!isWIPAllowed) {\r\n let eWIP = menus.findIndex((m) => m.label == 'eWIP');\r\n menus.splice(eWIP, 1);\r\n }\r\n\r\n if (isWIPAllowed && !isSpecialEquipmentAllowed) {\r\n let eWIPIndex = menus.findIndex((m) => m.label == 'eWIP');\r\n menus[eWIPIndex].children = menus[eWIPIndex].children.filter((m) => m.label != 'Special Equipments');\r\n }\r\n\r\n if (!isCommunicatorAllowed) {\r\n let Communicator = menus.findIndex((m) => m.label == 'Communicator');\r\n menus.splice(Communicator, 1);\r\n }\r\n\r\n if (!isReportingAllowed) {\r\n let ReportsIndex = menus.findIndex((m) => m.label == 'Reports');\r\n menus.splice(ReportsIndex, 1);\r\n } else {\r\n let ReportsIndex = menus.findIndex((m) => m.label == 'Reports');\r\n reportingMenuScreenConfig.forEach((k) => {\r\n if (!k.isAllowed) {\r\n let reportingMenuScreenIndex = menus[ReportsIndex].children.findIndex((m) => m.label == k.label);\r\n if (reportingMenuScreenIndex >= 0) {\r\n menus[ReportsIndex].children.splice(reportingMenuScreenIndex, 1);\r\n }\r\n }\r\n });\r\n }\r\n if (!isInvoiceAllowed) {\r\n let InternalInvoice = menus.findIndex((m) => m.label == 'Invoices');\r\n menus.splice(InternalInvoice, 1);\r\n }\r\n\r\n if (menuPermissionCounter == 1) {\r\n menus = [...menus].flatMap((elem) => {\r\n if (elem.children && elem.children.length > 0 && !elem.dontFlatListChildren) {\r\n dashboards.forEach((m) => {\r\n if (m.allowed) {\r\n const dashboardMenuIndex = elem.children.findIndex((p) => p.path === m.path);\r\n if (dashboardMenuIndex >= 0) {\r\n elem.children[dashboardMenuIndex].path = '/';\r\n }\r\n }\r\n });\r\n return elem.children;\r\n } else {\r\n return elem;\r\n }\r\n });\r\n } else {\r\n dashboards.forEach((item) => {\r\n if (item.allowed) {\r\n if (getDefaultInternalDashboard == 'null') {\r\n const allowedDashboards = dashboards.filter((item) => item.allowed);\r\n const topAllowedDashboard = allowedDashboards.find((item) => item.path && item.path !== '/');\r\n if (topAllowedDashboard) {\r\n const menuIndex = menus.findIndex((p) => p.label === topAllowedDashboard.label);\r\n const dashboardMenuIndex = menus[menuIndex].children.findIndex((p) => p.path === topAllowedDashboard.path);\r\n if (dashboardMenuIndex >= 0) {\r\n menus[menuIndex].children[dashboardMenuIndex].path = '/';\r\n }\r\n }\r\n } else if (getDefaultInternalDashboard == item.id) {\r\n const menuIndex = menus.findIndex((p) => p.label === item.label);\r\n const dashboardMenuIndex = menus[menuIndex].children.findIndex((p) => p.path === item.path);\r\n if (dashboardMenuIndex >= 0) {\r\n menus[menuIndex].children[dashboardMenuIndex].path = '/';\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n if (AppStorage.getCanResetPassword()) {\r\n menus.push({\r\n label: 'Reset Password',\r\n icon: ,\r\n exact: true,\r\n path: '/resetpassword',\r\n component: (props) => ,\r\n authType: TypeOfAuth.Auth\r\n });\r\n }\r\n break;\r\n case 'auditor':\r\n menus.push(...auditorMenu);\r\n break;\r\n case 'technician':\r\n menus.push(...technicianMenu);\r\n break;\r\n }\r\n });\r\n menus.push(...webFormRoutes);\r\n\r\n menus.push({\r\n path: '/treeImgs/:count',\r\n hidden: true,\r\n component: (props) => ,\r\n authType: TypeOfAuth.Auth\r\n });\r\n }\r\n\r\n return menus.filter((m) => m.authType === TypeOfAuth.Both || m.authType === (isLoggedIn ? TypeOfAuth.Auth : TypeOfAuth.NonAuth));\r\n};\r\n","import { Dialog, DialogActions, DialogTitle, FormHelperText, FormLabel, Grid, InputLabel, Tooltip } from '@material-ui/core';\r\nimport SignaturePad from 'react-signature-canvas';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport React, { useRef, useState, useEffect, useContext } from 'react';\r\nimport { DefaultButton, PrimaryButton, SecondaryButton, SelectBox } from '../FormInput';\r\nimport { AppStorage } from '../Service/storage-service';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport { IconButton, Box } from '@material-ui/core';\r\nimport AppContext from '../../App/AppContext';\r\nconst appbarData = [\r\n {\r\n id: 'T',\r\n name: 'Top'\r\n },\r\n {\r\n id: 'S',\r\n name: 'Side'\r\n }\r\n];\r\nexport const UserSignatureReminder = (props) => {\r\n const checkStatus = (value) => {\r\n if (value === 1) {\r\n props.closeSign();\r\n props.onClose();\r\n } else if (value === 2 || value === 3) {\r\n props.postData(null, value);\r\n props.onClose();\r\n }\r\n };\r\n return (\r\n <>\r\n \r\n Do you want to set the default signature?\r\n \r\n \r\n \r\n checkStatus(1)} fullWidth>\r\n Yes\r\n \r\n \r\n \r\n checkStatus(2)} fullWidth>\r\n No\r\n \r\n \r\n \r\n checkStatus(3)} variant=\"contained\" fullWidth style={{ background: '#5a5a5a', color: 'white' }}>\r\n Later\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst UserSignature = (props) => {\r\n const [state, setState] = useState({ userSignature: null, signAvailable: true, appbarLocation: 'T' });\r\n const signCanvas = useRef();\r\n const { portalSettings, userRoles } = useContext(AppContext);\r\n\r\n function updateDashboardList(portalSettings) {\r\n const updatedList = [];\r\n if (portalSettings.portalSettingeWIPEnabled) {\r\n updatedList.push({ id: 1, name: 'eWIP' });\r\n }\r\n if (portalSettings.portalSettingReportingEnabled) {\r\n updatedList.push({ id: 2, name: 'Reporting' });\r\n }\r\n if (portalSettings.portalSettingInvoiceEnabled) {\r\n updatedList.push({ id: 3, name: 'Invoices' });\r\n }\r\n if (portalSettings.portalSettingCommunicatorEnabled) {\r\n updatedList.push({ id: 4, name: 'Communicator' });\r\n }\r\n setState((st) => ({ ...st, DashboardList: updatedList }));\r\n }\r\n\r\n const clear = () => {\r\n setState((st) => ({\r\n ...st,\r\n userSignature: null,\r\n signAvailable: false,\r\n imgSrc: null\r\n }));\r\n if (signCanvas?.current !== undefined) {\r\n signCanvas?.current?.clear();\r\n }\r\n };\r\n\r\n const GetuserSignature = () => {\r\n setState((st) => {\r\n const nst = {\r\n ...st,\r\n userSignature: signCanvas.current.toDataURL()\r\n };\r\n return nst;\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n updateDashboardList(portalSettings);\r\n let navBarLocationValue = 'T';\r\n let getLocalAppbar = localStorage.getItem('_AppbarLocation_');\r\n if (getLocalAppbar && getLocalAppbar != 'undefined' && getLocalAppbar != 'null') {\r\n navBarLocationValue = getLocalAppbar || 'T';\r\n }\r\n setState((st) => ({\r\n ...st,\r\n imgSrc: AppStorage.getSignature(),\r\n signAvailable: AppStorage.getSignature(),\r\n defaultInternalDashboard: AppStorage.getDefaultInternalDashboard(),\r\n appbarLocation: navBarLocationValue\r\n }));\r\n }, []);\r\n\r\n const handleData = async () => {\r\n props.postData(state.signAvailable ? state.signAvailable : state.userSignature, 1, state.defaultInternalDashboard, state.appbarLocation);\r\n (state.userSignature || state.signAvailable) && props.onClose();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n console.log(value, 'value');\r\n setState((st) => ({\r\n ...st,\r\n [name]: value\r\n }));\r\n };\r\n return (\r\n \r\n \r\n \r\n My Settings\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {userRoles.includes('internal') && (\r\n <>\r\n \r\n Home Dashboard\r\n \r\n \r\n \r\n Appbar\r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n Signature\r\n \r\n \r\n \r\n \r\n
\r\n {state.signAvailable ? (\r\n \"Signature\"\r\n ) : (\r\n
\r\n {\r\n GetuserSignature();\r\n }}\r\n clearOnResize={false}\r\n />\r\n
\r\n )}\r\n \r\n
\r\n {!state.userSignature && !state.imgSrc && (\r\n \r\n Please draw your signature inside the box\r\n \r\n )}\r\n \r\n \r\n SAVE\r\n \r\n \r\n \r\n \r\n CANCEL\r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default UserSignature;\r\n","import React, { useContext, useMemo, useEffect } from 'react';\r\nimport clsx from 'clsx';\r\nimport { makeStyles, useTheme } from '@material-ui/core/styles';\r\nimport Drawer from '@material-ui/core/Drawer';\r\nimport Button from '@material-ui/core/Button';\r\nimport List from '@material-ui/core/List';\r\nimport Divider from '@material-ui/core/Divider';\r\nimport ListItem from '@material-ui/core/ListItem';\r\nimport ListItemIcon from '@material-ui/core/ListItemIcon';\r\nimport ListItemText from '@material-ui/core/ListItemText';\r\nimport InboxIcon from '@material-ui/icons/MoveToInbox';\r\nimport MailIcon from '@material-ui/icons/Mail';\r\nimport ExpandLess from '@material-ui/icons/ExpandLess';\r\nimport ExpandMore from '@material-ui/icons/ExpandMore';\r\nimport _ from 'lodash';\r\nimport { Link, NavLink } from 'react-router-dom';\r\nimport Collapse from '@material-ui/core/Collapse';\r\nimport AppContext from '../../App/AppContext';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n list: {\r\n width: 250,\r\n backgroundColor: (props) => `${props.portalMenuBarBackgroundColour}`,\r\n height: '100%',\r\n '&::-webkit-scrollbar': {\r\n width: '0.4em'\r\n },\r\n '&::-webkit-scrollbar-track': {\r\n boxShadow: 'inset 0 0 6px rgba(0,0,0,0.00)',\r\n webkitBoxShadow: 'inset 0 0 6px rgba(0,0,0,0.00)'\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n backgroundColor: 'rgba(0,0,0,.1)',\r\n outline: '1px solid slategrey'\r\n }\r\n },\r\n fullList: {\r\n width: 'auto'\r\n },\r\n linknav: {\r\n textDecoration: 'none',\r\n color: (props) => `${props.portalMenuBarTextColour}`,\r\n fontSize: '15px'\r\n },\r\n nested: {\r\n paddingLeft: theme.spacing(2),\r\n backgroundColor: (props) => `${props.portalMenuBarBackgroundColour}`\r\n }\r\n}));\r\n\r\nexport default function TemporaryDrawer(props) {\r\n const [state, setState] = React.useState({});\r\n const { portalSettings } = useContext(AppContext);\r\n\r\n const theme = useTheme();\r\n const classes = useStyles(portalSettings);\r\n\r\n const handleClick = (item) => {\r\n setState((st) => ({ ...st, [item]: !st[item] }));\r\n };\r\n\r\n const handler = (children, isFiltered) => {\r\n let currentNav = isFiltered ? _.orderBy(children, [(c) => c.label.toLowerCase()], ['asc']) : children;\r\n return currentNav?.map((subOption, index) => {\r\n if (!subOption.children) {\r\n return (\r\n
\r\n \r\n \r\n {subOption.label}\r\n \r\n \r\n
\r\n );\r\n }\r\n return (\r\n
\r\n handleClick(subOption.label)} title={subOption.label}>\r\n {subOption.label}\r\n \r\n {state[subOption.label] ? : }\r\n \r\n \r\n \r\n {handler(subOption.children, true)}\r\n \r\n
\r\n );\r\n });\r\n };\r\n\r\n return (\r\n
\r\n \r\n {handler(\r\n props.currentMenus.filter((m) => !m.hidden),\r\n false\r\n )}\r\n \r\n
\r\n );\r\n}\r\n","import React from 'react';\r\nimport { getTickers } from './../Service/KPI_message-service';\r\nimport { useEffect } from 'react';\r\nimport { useState } from 'react';\r\nimport { useWindowSize } from '../Controls/ScreenResolution';\r\n\r\nexport const TickerDisplayMessage = () => {\r\n const [screenWidth, screenHeight] = useWindowSize();\r\n const [message, setMessage] = useState('');\r\n useEffect(async () => {\r\n let res = await getTickers();\r\n if (res.success) {\r\n let array = [];\r\n res.data.list.forEach((m) => {\r\n array.push(`${m.message}`);\r\n array.push();\r\n });\r\n\r\n let newstring = array.join(` 💠 `);\r\n setMessage(newstring);\r\n }\r\n }, []);\r\n\r\n return (\r\n 1050 ? 390 : screenWidth > 960 ? 300 : screenWidth > 895 ? 220 : screenWidth > 850 ? 170 : 100,\r\n display: screenWidth > 775 ? 'block' : 'none',\r\n marginTop: 8,\r\n font: 'message-box',\r\n fontSize: '15px'\r\n }}\r\n >\r\n {message && (\r\n \r\n {' '}\r\n 💠 {message}\r\n \r\n )}\r\n \r\n );\r\n};\r\n","import * as Components from './../../../../Components';\r\nimport { TypeOfAuth } from './../menu-auth-type';\r\nimport HomeIcon from '@material-ui/icons/Home';\r\nimport ArchiveIcon from '@material-ui/icons/Archive';\r\nimport VideoLibraryIcon from '@material-ui/icons/VideoLibrary';\r\nimport DashboardIcon from '@material-ui/icons/Dashboard';\r\nimport AirplayIcon from '@material-ui/icons/Airplay';\r\nimport Dashboard from './../../../../Components/internal/dashboard/dashboard';\r\nimport AssessmentIcon from '@material-ui/icons/Assessment';\r\nimport ForumIcon from '@material-ui/icons/Forum';\r\nimport ReceiptIcon from '@material-ui/icons/Receipt';\r\nimport PieChartIcon from '@material-ui/icons/PieChart';\r\nimport BubbleChartIcon from '@material-ui/icons/BubbleChart';\r\nimport AttachMoneyIcon from '@material-ui/icons/AttachMoney';\r\nimport EuroIcon from '@material-ui/icons/Euro';\r\nimport DescriptionIcon from '@material-ui/icons/Description';\r\nimport EmojiEventsIcon from '@material-ui/icons/EmojiEvents';\r\nimport SpeedIcon from '@material-ui/icons/Speed';\r\nimport WebIcon from '@material-ui/icons/Web';\r\nimport BuildIcon from '@material-ui/icons/Build';\r\nimport DragIndicatorIcon from '@material-ui/icons/DragIndicator';\r\nimport SendIcon from '@material-ui/icons/Send';\r\nimport SmsIcon from '@material-ui/icons/Sms';\r\nimport AssignmentTurnedInIcon from '@material-ui/icons/AssignmentTurnedIn';\r\nimport LiveHelpIcon from '@material-ui/icons/LiveHelp';\r\nimport AssignmentIndIcon from '@material-ui/icons/AssignmentInd';\r\nimport FolderSpecialIcon from '@material-ui/icons/FolderSpecial';\r\nimport BookmarksIcon from '@material-ui/icons/Bookmarks';\r\nimport WorkIcon from '@material-ui/icons/Work';\r\nimport BookIcon from '@material-ui/icons/Book';\r\nimport EmojiTransportationIcon from '@material-ui/icons/EmojiTransportation';\r\nimport DepartureBoardIcon from '@material-ui/icons/DepartureBoard';\r\nimport DriveEtaIcon from '@material-ui/icons/DriveEta';\r\nimport LoyaltyIcon from '@material-ui/icons/Loyalty';\r\nimport FileCopyIcon from '@material-ui/icons/FileCopy';\r\nimport PaymentIcon from '@material-ui/icons/Payment';\r\nimport RemoveFromQueueIcon from '@material-ui/icons/RemoveFromQueue';\r\nimport RateReviewIcon from '@material-ui/icons/RateReview';\r\nimport SpeakerNotesIcon from '@material-ui/icons/SpeakerNotes';\r\nimport AccountBoxIcon from '@material-ui/icons/AccountBox';\r\nexport default [\r\n // {\r\n // label: 'Home',\r\n // path: '/',\r\n // exact: true,\r\n // component: Components.Dashbord,\r\n // authType: TypeOfAuth.Auth,\r\n // hidden: true,\r\n // icon: \r\n // },\r\n {\r\n label: 'eWIP',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Home',\r\n path: '/eWIPDashboard',\r\n exact: true,\r\n component: Components.Dashbord,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n icon: ,\r\n authType: TypeOfAuth.Auth,\r\n dontFlatListChildren: true,\r\n isDynamicChildren: 'eWipDashboard',\r\n children: [\r\n // {\r\n // label: 'Service Advisor',\r\n // path: '/dashboard/sa',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Awaiting Arrival',\r\n // path: '/dashboard/aa',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Workshop Control',\r\n // path: '/dashboard/wc',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Parts Advisor',\r\n // path: '/dashboard/pa',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Technician App',\r\n // path: '/dashboard/ta',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // },\r\n // {\r\n // label: 'Back Office',\r\n // path: '/dashboard/bo',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // component: () => {\r\n // return ;\r\n // }\r\n // }\r\n ]\r\n },\r\n {\r\n label: 'Special Equipments',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n path: '/Lists/SpecialEquipment/Dash',\r\n exact: false,\r\n component: Components.SpecialEquipmentDash,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Special Equipments',\r\n path: '/Lists/SpecialEquipment',\r\n exact: false,\r\n component: Components.SpecialEquipment,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Archived Jobs',\r\n path: '/archivedjobs',\r\n exact: true,\r\n component: Components.ArchivedJobs,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n\r\n {\r\n label: 'QC Jobs',\r\n // hidden: true,\r\n icon: ,\r\n exact: true,\r\n path: '/qc_jobs',\r\n component: Components.QCJobsDashboard,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Videos',\r\n path: '/Lists/Videos',\r\n exact: true,\r\n component: Components.Videos,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Dashboard Detail',\r\n path: '/dashgrid',\r\n exact: true,\r\n component: Components.dashboard,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n\r\n {\r\n label: 'Communicator',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n path: '/communicator_dash',\r\n exact: true,\r\n component: Components.CustCommunicatorDash,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Open Action Log',\r\n path: '/Openactionlog',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: Components.OpenActionLog,\r\n icon: \r\n },\r\n\r\n {\r\n label: 'Site Vehicles',\r\n path: '/SiteVehicles',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'VOR Vehicles',\r\n path: '/VORVehicles',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Workshop Vehicles',\r\n path: '/WorkshopVehicles',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Check In - WSL not set',\r\n path: '/CheckInWSLNotSet',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Jobs Approved',\r\n path: '/JobsApproved',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: \r\n },\r\n {\r\n label: 'Bookings',\r\n path: '/bookings',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: Components.BookingsScreen,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Reports',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n path: '/ReportsDashboard',\r\n component: Components.RepotingTab,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n\r\n {\r\n label: 'Budget Dashboard',\r\n exact: true,\r\n path: '/budget',\r\n component: Components.BudgetScreen,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Profit & Loss',\r\n exact: true,\r\n path: '/profitloss',\r\n component: Components.ProfitLoss,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Aged Measures',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n path: '/AgedMeasures',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Account Queries',\r\n exact: true,\r\n path: '/AgedMeasures/AccountQueries',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Account Queries By Department',\r\n exact: true,\r\n path: '/AgedMeasures/AccountQueriesByDepartment',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Aged Debt - Branch',\r\n exact: true,\r\n path: '/AgedMeasures/AgedDebt-Branch',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Aged Debt - Company',\r\n exact: true,\r\n path: '/AgedMeasures/AgedDebt-Company',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Cash',\r\n exact: true,\r\n path: '/AgedMeasures/Cash',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Cash By Department',\r\n exact: true,\r\n path: '/AgedMeasures/CashByDepartment',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Surcharges',\r\n exact: true,\r\n path: '/AgedMeasures/DirtyUnits',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Fuso Stock',\r\n exact: true,\r\n path: '/AgedMeasures/NewFusoStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Maxus Vans',\r\n exact: true,\r\n path: '/AgedMeasures/NewMaxusVans',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Truck Stock',\r\n exact: true,\r\n path: '/AgedMeasures/NewTruckStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Van Stock',\r\n exact: true,\r\n path: '/AgedMeasures/NewVanStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'R&M',\r\n exact: true,\r\n path: '/AgedMeasures/R&M',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Fuso Stock',\r\n exact: true,\r\n path: '/AgedMeasures/UsedFusoStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Maxus Vans',\r\n exact: true,\r\n path: '/AgedMeasures/UsedMaxusVans',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Non-franchise Stock',\r\n exact: true,\r\n path: '/AgedMeasures/UsedNon-franchiseStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Truck Stock',\r\n exact: true,\r\n path: '/AgedMeasures/UsedTruckStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Van Stock',\r\n exact: true,\r\n path: '/AgedMeasures/UsedVanStock',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Vehicle Debt',\r\n exact: true,\r\n path: '/AgedMeasures/VehicleDebt',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Warranty',\r\n exact: true,\r\n path: '/AgedMeasures/Warranty',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Work In Progress',\r\n exact: true,\r\n path: '/AgedMeasures/WorkInProgress',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Work In Progress by Departement',\r\n exact: true,\r\n path: '/AgedMeasures/WorkInProgressbyDepartement',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n // {\r\n // label: 'New Services',\r\n // exact: true,\r\n // authType: TypeOfAuth.Auth,\r\n // icon: ,\r\n // children: [\r\n // {\r\n // label: 'Dashboard',\r\n // exact: true,\r\n // path: '/budget_dashboard',\r\n // component: Components.BudgetDashboard,\r\n // authType: TypeOfAuth.Auth,\r\n // icon: \r\n // }\r\n // ]\r\n // },\r\n {\r\n label: 'DOC',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Weekly Flash Report',\r\n exact: true,\r\n path: '/Docs/WeeklyFlashReport',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Used Stock',\r\n children: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Used Stock Valuation',\r\n exact: true,\r\n path: '/UsedStockValuation',\r\n component: Components.UsedStockValuation,\r\n authType: TypeOfAuth.Auth\r\n // icon: \r\n },\r\n {\r\n label: 'Used Vehicle Stock',\r\n exact: true,\r\n path: '/usedStock',\r\n component: Components.UsedStock,\r\n authType: TypeOfAuth.Auth\r\n // icon: \r\n },\r\n {\r\n label: 'Aged Vehicle Stock',\r\n exact: true,\r\n path: '/agedStocks',\r\n component: Components.AgedStocks,\r\n authType: TypeOfAuth.Auth\r\n // icon: \r\n },\r\n {\r\n label: 'Overage Priority List',\r\n exact: true,\r\n path: '/overagePriority',\r\n component: Components.OveragePriority,\r\n authType: TypeOfAuth.Auth\r\n // icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Sales',\r\n children: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Sales Dashboard',\r\n exact: true,\r\n path: '/sales/dashboard',\r\n component: Components.SalesDashboard,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Sales Dashboard V2',\r\n exact: true,\r\n path: '/sales/dashboardtwo',\r\n component: Components.SalesDashboardTwo,\r\n authType: TypeOfAuth.Auth\r\n },\r\n\r\n {\r\n label: 'New Vehicle Profit Report',\r\n exact: true,\r\n path: '/sales/NewVehicleProfitReport',\r\n component: Components.NewVehicleProfitReport,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Vehicle Profit Report',\r\n exact: true,\r\n path: '/sales/UsedVehicleProfitReport',\r\n component: Components.UsedVehicleProfitReport,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Account Queries by Salesexec',\r\n exact: true,\r\n path: '/sales/AccountQueriesbySalesexec',\r\n component: Components.AccountQueriesbySalesexec,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Aged Measures Work - Progress',\r\n exact: true,\r\n path: '/sales/AgedMeasuresWorkingProgress',\r\n component: Components.AgedMeasuresWorkingProgress,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Sales Work In Progress',\r\n exact: true,\r\n path: '/sales/SalesWorkInProgress',\r\n component: Components.SalesWorkinProgress,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Registration Reports',\r\n exact: true,\r\n path: '/sales/RegistrationReports',\r\n component: Components.RegistrationReports,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Vehicle Stock (Excluding WIP)',\r\n exact: true,\r\n path: '/sales/NewVehicleStockExcludingWIP',\r\n component: Components.VehicleStocksExWip,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'New Vehicle Order',\r\n exact: true,\r\n path: '/sales/VehicleNewOrder',\r\n component: Components.VehicleNewOrder,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Outstanding Invoices',\r\n exact: true,\r\n path: '/sales/OutstandingInvoices',\r\n component: Components.OutstandingInvoices,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Sales Contingency Debt',\r\n exact: true,\r\n path: '/sales/SalesContingencyDebt',\r\n component: Components.SalesContingencyDebt,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used Vehicle Stock',\r\n exact: true,\r\n path: '/sales/UsedVehicleStock',\r\n component: Components.UsedVehicleStock,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Vehicle Aged Debt By Salesexec',\r\n exact: true,\r\n path: '/sales/VehicleAgedDebtBySalesexec',\r\n component: Components.VehicleAgedDebtBySalesexec,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Services',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n path: '/service/dashboard',\r\n component: Components.ServiceDashboard,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Consumables',\r\n exact: true,\r\n path: '/Services/Consumables',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Idle Time Analysis',\r\n exact: true,\r\n path: '/Services/IdleTimeAnalysis',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Idle Time Analysis-Reason',\r\n exact: true,\r\n path: '/Services/IdleTimeAnalysisReason',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Invoiced Hours',\r\n exact: true,\r\n path: '/Services/InvoicedHours',\r\n component: Components.InvoicedHours,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Mobilovan',\r\n exact: true,\r\n path: '/Services/Mobilovan',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'NPW Rectification',\r\n exact: true,\r\n path: '/Services/NPWRectification',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Parts Warranty Write Off',\r\n exact: true,\r\n path: '/Services/PartsWarrantyWriteOff',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Service Warranty Write Off',\r\n exact: true,\r\n path: '/Services/ServiceWarrantyWriteOff',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Technician Efficiency',\r\n exact: true,\r\n path: '/Services/Efficiency',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Parts',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n // {\r\n // label: 'Dashboard',\r\n // exact: true,\r\n // path: '/parts/dashboard',\r\n // component: Components.HeadLinesDashboard\r\n // },\r\n {\r\n label: 'Parts',\r\n exact: true,\r\n path: '/parts/PartsSales/P',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Trade Centre',\r\n exact: true,\r\n path: '/parts/PartsSales/B',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Workshop',\r\n exact: true,\r\n path: '/parts/PartsSales/w',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Car Express',\r\n exact: true,\r\n path: '/parts/PartsSales/f',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Total',\r\n exact: true,\r\n path: '/parts/PartsSales/A',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Used',\r\n exact: true,\r\n path: '/parts/PartsSales/U',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth\r\n }\r\n ]\r\n },\r\n {\r\n label: 'Workshop',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Shift Calendar',\r\n exact: true,\r\n path: '/ShiftCalendar',\r\n component: Components.ShiftCalenderComp,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Resource Calendar',\r\n exact: true,\r\n path: '/ResourceCalendar',\r\n component: Components.ResourceCalenderComp,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n // {\r\n // label: 'WIP Hours',\r\n // exact: true,\r\n // path: '/wipHours',\r\n // component: Components.WipHours,\r\n // authType: TypeOfAuth.Auth,\r\n // icon: \r\n // },\r\n {\r\n label: 'Budget',\r\n exact: true,\r\n path: '/ReportingBudget',\r\n component: Components.ReportingBudget,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'Invoices',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n icon: ,\r\n children: [\r\n {\r\n label: 'Dashboard',\r\n exact: true,\r\n path: '/invoice/dashboard',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Customers',\r\n exact: true,\r\n path: '/invoice/Customers',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'All Invoices',\r\n exact: true,\r\n path: '/invoice/allInvoices',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Outstanding',\r\n exact: true,\r\n path: '/invoice/Invoice_Outstanding',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Paid',\r\n exact: true,\r\n path: '/invoice/Invoice_Paid',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Invoices Queried',\r\n exact: true,\r\n path: '/invoice/Invoice_Queried',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Messages Sent',\r\n exact: true,\r\n path: '/invoice/messagesSent',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n },\r\n {\r\n label: 'Messages Received',\r\n exact: true,\r\n path: '/invoice/messagesReceived',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n icon: \r\n }\r\n ]\r\n },\r\n {\r\n label: 'MOT HISTORY',\r\n // hidden: true,\r\n icon: ,\r\n exact: true,\r\n path: '/MotHistoryAndRoadTax',\r\n component: Components.MotHistoryScreen,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'BookingsList',\r\n path: '/BookingsRequesteList',\r\n exact: true,\r\n authType: TypeOfAuth.Auth,\r\n component: () => ,\r\n icon: ,\r\n hidden: true\r\n },\r\n {\r\n label: 'GetAgedMeasuresDirtyUnits',\r\n exact: true,\r\n path: '/AgedMeasures/GetAgedMeasuresDirtyUnits',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'ViewDebtDetailsSalesexec',\r\n exact: true,\r\n path: '/sales/ViewDebtDetailsSalesexec',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'GetAgedMeasuresRanMWarrantyCashGen',\r\n exact: true,\r\n path: '/AgedMeasures/GetAgedMeasuresRanMWarrantyCashGen',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'GetUsedAndNewVehicleDebt',\r\n exact: true,\r\n path: '/AgedMeasures/GetUsedAndNewVehicleDebt',\r\n component: () => ,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'EnquirieList',\r\n exact: true,\r\n path: '/AgedMeasures/EnquirieList',\r\n component: Components.EnquirieList,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'Workflow Job',\r\n path: '/job/:jobId/:workflowId',\r\n component: Components.workflowJobDetails,\r\n hidden: true,\r\n exact: true,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'Tech Dashboard Detail',\r\n path: '/techDashgrid',\r\n exact: true,\r\n component: Components.TechDashboardGrid,\r\n authType: TypeOfAuth.Auth,\r\n hidden: true\r\n },\r\n {\r\n label: 'Logout',\r\n path: '/logout',\r\n hidden: true,\r\n component: Components.logout,\r\n authType: TypeOfAuth.Auth\r\n },\r\n {\r\n label: 'HistoryModal',\r\n path: '/SpecialEquipmentHistoryModal',\r\n hidden: true,\r\n component: Components.SpecialEquipmentHistoryModal,\r\n authType: TypeOfAuth.Auth\r\n }\r\n];\r\n","import React, { useContext, useMemo, useEffect } from 'react';\r\nimport { AppBar, Toolbar, Button, useScrollTrigger, Slide, MenuItem, MenuList, Paper, Divider, Collapse } from '@material-ui/core';\r\nimport { makeStyles, fade } from '@material-ui/core/styles';\r\nimport { Link, NavLink } from 'react-router-dom';\r\nimport ExpandLess from '@material-ui/icons/ExpandLess';\r\nimport ExpandMore from '@material-ui/icons/ExpandMore';\r\nimport _ from 'lodash';\r\nimport Popover from '@material-ui/core/Popover';\r\nimport { SecondaryButton, CustomButton } from '../FormInput';\r\nimport VpnKeyIcon from '@material-ui/icons/VpnKey';\r\nimport ExitToAppIcon from '@material-ui/icons/ExitToApp';\r\nimport ClickAwayListener from '@material-ui/core/ClickAwayListener';\r\nimport BorderColorIcon from '@material-ui/icons/BorderColor';\r\nimport { getMenuForRole } from './_menu';\r\nimport AppContext from '../../App/AppContext';\r\nimport { AppStorage } from '../Service/storage-service';\r\nimport MySignature, { UserSignatureReminder } from '../Modal/SignatureModal';\r\nimport { postSignature, postSignatureStatus } from '../Service/login-service';\r\nimport InputBase from '@material-ui/core/InputBase';\r\nimport SearchIcon from '@material-ui/icons/Search';\r\nimport moment from 'moment';\r\nimport Popper from '@material-ui/core/Popper';\r\nimport Fade from '@material-ui/core/Fade';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { getDataByEwipNo } from '../Service/common-service';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport MenuIcon from '@material-ui/icons/Menu';\r\nimport TemporaryDrawer from './Drawer';\r\nimport KeyboardArrowUpIcon from '@material-ui/icons/KeyboardArrowUp';\r\nimport KeyboardArrowDownIcon from '@material-ui/icons/KeyboardArrowDown';\r\nimport Drawer from '@material-ui/core/Drawer';\r\nimport { useWindowSize } from '../Controls/ScreenResolution';\r\nimport { WorkflowDash, PartSales } from '../../Components';\r\nimport { Label } from 'recharts';\r\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\r\nimport ChevronLeftIcon from '@material-ui/icons/ChevronLeft';\r\nimport { TickerDisplayMessage } from './ticker';\r\nimport { TableContainer } from '@material-ui/core';\r\nimport { Table } from '@material-ui/core';\r\nimport { TableHead } from '@material-ui/core';\r\nimport { TableBody } from '@material-ui/core';\r\nimport { TableRow } from '@material-ui/core';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { TableCell } from '@material-ui/core';\r\nimport formatters from '../Grid/inputFormatter';\r\nimport InternalMenusToConvertDynamic from '../Root/menu/roles-menu/reportingMenu';\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.action.hover\r\n },\r\n body: {\r\n fontSize: 14\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:hover': {\r\n backgroundColor: theme.palette.action.hover,\r\n cursor: 'pointer'\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n table: {\r\n width: 800\r\n },\r\n root: {\r\n flexGrow: 0\r\n },\r\n title: {\r\n flexGrow: 1,\r\n fontSize: '15px'\r\n },\r\n linknav: {\r\n textDecoration: 'none',\r\n color: (props) => `${props.portalMenuBarTextColour}`,\r\n backgroundColor: (props) => `${props.portalMenuBarBackgroundColour}`,\r\n fontSize: '15px'\r\n },\r\n labelBtn: {\r\n color: (props) => `${props.portalMenuBarTextColour}`,\r\n textTransform: 'none',\r\n textDecoration: 'none',\r\n fontSize: '15px'\r\n },\r\n logoutBtn: {\r\n display: 'inline-flex',\r\n VerticalAlign: 'text-bottom',\r\n BoxSizing: 'inherit',\r\n textAlign: 'center',\r\n alignItems: 'center',\r\n textDecoration: 'none',\r\n cursor: 'pointer',\r\n marginLeft: 1\r\n },\r\n app_toolbar: {\r\n height: '45px',\r\n minHeight: '45px',\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n padding: '0px 10px'\r\n },\r\n search: {\r\n position: 'relative',\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: fade(theme.palette.common.white, 0.15),\r\n '&:hover': {\r\n backgroundColor: fade(theme.palette.common.white, 0.25)\r\n },\r\n marginRight: theme.spacing(2),\r\n marginLeft: 0,\r\n marginTop: (props) => (props.WindowWidths > 750 ? 4 : 12),\r\n width: '180px !important',\r\n maxHeight: '30px',\r\n [theme.breakpoints.up('sm')]: {\r\n marginLeft: theme.spacing(3),\r\n width: 'auto'\r\n }\r\n },\r\n searchIcon: {\r\n padding: theme.spacing(0, 0.9),\r\n height: '100%',\r\n position: 'absolute',\r\n pointerEvents: 'none',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n inputRoot: {\r\n color: 'inherit'\r\n },\r\n inputInput: {\r\n padding: '4px 8px 8px 0px', //theme.spacing(1, 1, 1, 0),\r\n // vertical padding + font size from searchIcon\r\n paddingLeft: `calc(1em + ${theme.spacing(4)}px)`,\r\n transition: theme.transitions.create('width'),\r\n width: '100%',\r\n [theme.breakpoints.up('md')]: {\r\n width: '20ch'\r\n }\r\n },\r\n drawerPaper: {\r\n top: '60px',\r\n '&::-webkit-scrollbar': {\r\n width: '0.4em'\r\n },\r\n '&::-webkit-scrollbar-track': {\r\n boxShadow: 'inset 0 0 6px rgba(0,0,0,0.00)',\r\n webkitBoxShadow: 'inset 0 0 6px rgba(0,0,0,0.00)'\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n backgroundColor: 'rgba(0,0,0,.1)',\r\n outline: '1px solid slategrey'\r\n }\r\n }\r\n}));\r\n\r\nfunction HideOnScroll(props) {\r\n const { children } = props;\r\n const trigger = useScrollTrigger();\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nconst AppbarComponent = (props) => {\r\n const [state, setState] = React.useState({ open2: null, WorkflowJobs: [], left: false });\r\n const {\r\n loggedIn,\r\n userRoles,\r\n displayName,\r\n lastLogin,\r\n showToast,\r\n portalSettings,\r\n showModal,\r\n showTopNavAndMenu,\r\n hideShowTopNav,\r\n isTopNav,\r\n tempMenus,\r\n reportingMenus\r\n } = useContext(AppContext);\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n let tempPortalSettings = { ...portalSettings };\r\n tempPortalSettings.WindowWidths = WindowWidths;\r\n const classes = useStyles(tempPortalSettings);\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const [anchorEl2, setAnchorEl2] = React.useState(null);\r\n const [anchorEl3, setAnchorEl3] = React.useState(null);\r\n const [openSign, setOpenSign] = React.useState(false);\r\n const [openSignRem, setOpenSignRem] = React.useState(false);\r\n const [searchAnchorEl, setSearchAnchorEl] = React.useState(null);\r\n let history = useHistory();\r\n const isCommunicatorAllowed = AppStorage.getCommunicatorAllowed();\r\n const isInvoiceAllowed = AppStorage.getInvoiceAllowed();\r\n const isReportingAllowed = AppStorage.getReportingAllowed();\r\n const isWIPAllowed = AppStorage.getWIPAllowed() && portalSettings.portalSettingeWIPEnabled;\r\n let menuPermissionCounter = isCommunicatorAllowed + isInvoiceAllowed + isReportingAllowed + isWIPAllowed;\r\n const isReportingAgedMeasureAllowed = AppStorage.getReportingAgedMeasureAllowed();\r\n const isReportingPartsAllowed = AppStorage.getReportingPartsAllowed();\r\n\r\n useEffect(() => {\r\n if (loggedIn && AppStorage.getSignNotifiedStatus() === 0 && AppStorage.getSignatureStatus() != 1 && AppStorage.getSignatureStatus() != 2) {\r\n setOpenSignRem(true);\r\n AppStorage.setSignNotifiedStatus('set');\r\n }\r\n }, []);\r\n let isAdmin = userRoles.includes('admin');\r\n\r\n const getWipDataById = async (wipNo) => {\r\n const res = await getDataByEwipNo(wipNo);\r\n if (res.success) {\r\n console.log(res);\r\n setState((st) => ({ ...st, WorkflowJobs: res.data.jobsDetails }));\r\n } else {\r\n setState((st) => ({ ...st, WorkflowJobs: [] }));\r\n }\r\n };\r\n\r\n const handleChange = (event) => {\r\n if (event.target.value.length > 4) {\r\n getWipDataById(event.target.value);\r\n setSearchAnchorEl(event.currentTarget);\r\n } else {\r\n setSearchAnchorEl(null);\r\n }\r\n };\r\n\r\n const handleClick = (item) => (e) => {\r\n setState((st) => ({ ...st, [item]: !st[item], id2: item }));\r\n setAnchorEl2(e.currentTarget);\r\n };\r\n\r\n const handleCollaps = (item) => (e) => {\r\n setState((st) => ({ ...st, [item]: !st[item], id2: item }));\r\n setAnchorEl3(e.currentTarget);\r\n };\r\n\r\n const handleClose = (item, coll) => {\r\n setState((st) => ({ ...st, [item]: null }));\r\n if (!coll) {\r\n setAnchorEl2(null);\r\n } else {\r\n setAnchorEl3(null);\r\n }\r\n };\r\n\r\n const handleCloseSearch = (data) => {\r\n history.push(`/Job/${data.headerRecordID}/${data.workFlowID}`);\r\n setSearchAnchorEl(null);\r\n setState((st) => ({ ...st, WorkflowJobs: [] }));\r\n };\r\n\r\n const open = Boolean(anchorEl);\r\n const open2 = Boolean(anchorEl2);\r\n\r\n const id = open ? 'simple-popover' : undefined;\r\n const handlePopupClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handlePopupClose = () => {\r\n setAnchorEl(null);\r\n };\r\n const showPasswordChangeModal = (e) => {\r\n e.preventDefault();\r\n showModal('PasswordChange');\r\n };\r\n\r\n const currentMenus = useMemo(() => {\r\n let menus = getMenuForRole(userRoles, loggedIn);\r\n if (isWIPAllowed) {\r\n let dashMenus = [];\r\n if (tempMenus.menus.length > 0) {\r\n dashMenus = tempMenus.menus.map((x) => {\r\n return {\r\n label: `${x.label}`,\r\n path: `/dashboard/${x.id}`,\r\n exact: true,\r\n authType: 1,\r\n component: () => {\r\n return ;\r\n }\r\n };\r\n });\r\n }\r\n if (menuPermissionCounter == 1) {\r\n let isDash = menus.findIndex((p) => p.isDynamicChildren === 'eWipDashboard');\r\n if (tempMenus.menus.length > 0 && isDash >= 0) {\r\n menus[isDash].children = dashMenus;\r\n }\r\n } else {\r\n let iseWIPMenu = menus.findIndex((p) => p.label === 'eWIP');\r\n let isDash = menus[iseWIPMenu].children.findIndex((p) => p.isDynamicChildren === 'eWipDashboard');\r\n if (tempMenus.menus.length > 0 && isDash >= 0) {\r\n menus[iseWIPMenu].children[isDash].children = dashMenus;\r\n }\r\n }\r\n }\r\n if (isReportingAllowed) {\r\n let ReportsIndex = InternalMenusToConvertDynamic.findIndex((m) => m.label == 'Reports');\r\n let findAgedMeasureMenuIndex = InternalMenusToConvertDynamic[ReportsIndex]?.children?.findIndex((m) => m.label == 'Aged Measures');\r\n let tempAgedMeasureChildren = InternalMenusToConvertDynamic[ReportsIndex]?.children[findAgedMeasureMenuIndex]?.children;\r\n const agedMeasureMenus = [];\r\n const PartsMenus = [];\r\n\r\n if (reportingMenus.menus.length > 0) {\r\n let menusFromAPI = reportingMenus.menus;\r\n if (tempAgedMeasureChildren?.length > 0) {\r\n for (let j = 0; j < menusFromAPI.length; j++) {\r\n for (let i = 0; i < tempAgedMeasureChildren?.length; i++) {\r\n if (tempAgedMeasureChildren[i].label === menusFromAPI[j].label) {\r\n agedMeasureMenus.push({\r\n ...tempAgedMeasureChildren[i],\r\n path: menusFromAPI[j].path,\r\n label: menusFromAPI[j].menuLabel\r\n });\r\n }\r\n }\r\n }\r\n }\r\n for (let j = 0; j < menusFromAPI.length; j++) {\r\n if (menusFromAPI[j].parentMenu == 'Part') {\r\n PartsMenus.push({\r\n exact: true,\r\n authType: 1,\r\n path: menusFromAPI[j].path,\r\n label: menusFromAPI[j].menuLabel,\r\n component: () => {\r\n return ;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n let isReportingMenu = menus.findIndex((p) => p.label === 'Reports');\r\n if (isReportingMenu > -1) {\r\n if (isReportingAgedMeasureAllowed || isReportingPartsAllowed) {\r\n let isReportingMenu = menus.findIndex((p) => p.label === 'Reports');\r\n if (isReportingMenu >= 0) {\r\n let agedMeasuresIndex = menus[isReportingMenu].children.findIndex((p) => p.label === 'Aged Measures');\r\n let partsIndex = menus[isReportingMenu].children.findIndex((p) => p.label === 'Parts');\r\n if (isReportingAgedMeasureAllowed && agedMeasuresIndex >= 0) {\r\n menus[isReportingMenu].children[agedMeasuresIndex].children = agedMeasureMenus.length > 0 ? agedMeasureMenus : [];\r\n }\r\n if (isReportingPartsAllowed && partsIndex >= 0) {\r\n menus[isReportingMenu].children[partsIndex].children = PartsMenus.length > 0 ? PartsMenus : [];\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return menus;\r\n }, [loggedIn, tempMenus, reportingMenus]);\r\n\r\n const closeSign = () => {\r\n setOpenSign(!openSign);\r\n };\r\n const closeSignRem = () => {\r\n setOpenSignRem(false);\r\n };\r\n\r\n const postSignData = async (sign, id, defaultInternalDashboard, appbarLocation) => {\r\n const data = {\r\n signature: sign,\r\n AppbarLocation: appbarLocation,\r\n defaultInternalDashboard: defaultInternalDashboard\r\n };\r\n console.log('from appbar ');\r\n let resSign = await postSignature(data);\r\n let resStatus = id && (await postSignatureStatus(id));\r\n if (resSign) {\r\n if (resSign?.success) {\r\n AppStorage.setSignature(sign);\r\n AppStorage.setUserGridColumnAppbarLocation(appbarLocation);\r\n\r\n localStorage.setItem('_defaultInternalDashboard_', defaultInternalDashboard);\r\n showToast('User Settings Updated Successfully!');\r\n } else {\r\n showToast(resSign?.message || 'Something went wrong!');\r\n }\r\n }\r\n };\r\n\r\n const toggleDrawer = (anchor, open) => (event) => {\r\n if (event.type === 'keydown' && (event.key === 'Tab' || event.key === 'Shift')) {\r\n return;\r\n }\r\n setState({ ...state, [anchor]: open });\r\n };\r\n\r\n const handler = (children, isFiltered) => {\r\n let currentNav = isFiltered ? _.orderBy(children, [(c) => c.label.toLowerCase()], ['asc']) : children;\r\n return currentNav.map((m, index) => {\r\n if (!m.children) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n return (\r\n
\r\n \r\n handleClose(m.label)}\r\n anchorOrigin={{\r\n vertical: 'bottom',\r\n horizontal: 'center'\r\n }}\r\n transformOrigin={{\r\n vertical: 'top',\r\n horizontal: 'center'\r\n }}\r\n >\r\n \r\n handleClose(m.label)}>\r\n \r\n {m.children.map((n, index) => {\r\n if (n.children) {\r\n return (\r\n <>\r\n \r\n
\r\n \r\n {n.label}\r\n\r\n {!state[n.label] ? : }\r\n \r\n
\r\n
\r\n handleClose(n.label, true)}\r\n anchorEl={anchorEl3}\r\n open={Boolean(state[n.label])}\r\n >\r\n \r\n {n.children.map((a) => {\r\n return (\r\n handleClose(m.label, true)}>\r\n \r\n handleClose(n.label, true)}\r\n >\r\n {a.label}\r\n \r\n \r\n \r\n );\r\n })}\r\n
\r\n \r\n \r\n );\r\n } else {\r\n return (\r\n handleClose(m.label)}>\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n })}\r\n \r\n
\r\n
\r\n {/* */}\r\n \r\n
\r\n );\r\n });\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n
\r\n {WindowWidths < 1469 && loggedIn ? (\r\n
\r\n \r\n \r\n \r\n
\r\n ) : (\r\n
\r\n {handler(\r\n currentMenus.filter((m) => !m.hidden),\r\n false\r\n )}\r\n
\r\n )}\r\n {loggedIn && !isAdmin && isWIPAllowed && (\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n WIP No\r\n \r\n \r\n Vehicle Reg\r\n \r\n \r\n Customer Name\r\n \r\n \r\n Workflow\r\n \r\n \r\n Return Reason\r\n \r\n \r\n Branch\r\n \r\n \r\n Due Date In\r\n \r\n \r\n \r\n \r\n {console.log(state.WorkflowJobs)}\r\n {state.WorkflowJobs.map((w, index) => {\r\n return (\r\n handleCloseSearch(w)}>\r\n \r\n
{w.wipNumber}
\r\n
\r\n \r\n
{w.regNumber}
\r\n
\r\n \r\n
{w.customer}
\r\n
\r\n \r\n
{w.workflow}
\r\n
\r\n \r\n
{w.returnReason}
\r\n
\r\n \r\n
{w.branch}
\r\n
\r\n \r\n
{formatters.DateTimeFormatter(w.dateDueIn)}
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n {loggedIn ? (\r\n
\r\n \r\n \r\n \r\n
\r\n {isTopNav ? (\r\n hideShowTopNav(false)}\r\n toolTipTitle=\"Hide Portal Info\"\r\n IconColor=\"white\"\r\n />\r\n ) : (\r\n hideShowTopNav(true)}\r\n toolTipTitle=\"Show Portal Info\"\r\n IconColor=\"white\"\r\n />\r\n )}\r\n
\r\n
\r\n {displayName}\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n Logout\r\n \r\n \r\n {!isAdmin && (\r\n \r\n \r\n My Settings\r\n \r\n )}\r\n \r\n \r\n Change Password\r\n \r\n \r\n {/* */}\r\n        \r\n Version 2.4.8\r\n \r\n \r\n \r\n
\r\n ) : (\r\n \r\n Login\r\n \r\n )}\r\n
\r\n
\r\n \r\n
\r\n {openSign && }\r\n {!isAdmin && openSignRem && }\r\n\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default AppbarComponent;\r\n","import React, { useContext, useMemo, useEffect } from 'react';\r\nimport { Route, Switch } from 'react-router-dom';\r\nimport { getMenuForRole } from './_menu';\r\nimport AppbarComponent from './Appbar';\r\nimport AppContext from '../../App/AppContext';\r\nimport { WorkflowDash, PartSales } from '../../Components';\r\nimport { AppStorage } from '../Service/storage-service';\r\nimport InternalMenusToConvertDynamic from '../Root/menu/roles-menu/reportingMenu';\r\n\r\nexport let Navbar = (props) => {\r\n const { loggedIn, userRoles, showTopNavAndMenu, tempMenus, portalSettings, reportingMenus } = useContext(AppContext);\r\n const isCommunicatorAllowed = AppStorage.getCommunicatorAllowed();\r\n const isInvoiceAllowed = AppStorage.getInvoiceAllowed();\r\n const isReportingAllowed = AppStorage.getReportingAllowed();\r\n const isWIPAllowed = AppStorage.getWIPAllowed() && portalSettings.portalSettingeWIPEnabled;\r\n let menuPermissionCounter = isCommunicatorAllowed + isInvoiceAllowed + isReportingAllowed + isWIPAllowed;\r\n const isReportingAgedMeasureAllowed = AppStorage.getReportingAgedMeasureAllowed();\r\n const isReportingPartsAllowed = AppStorage.getReportingPartsAllowed();\r\n\r\n const currentMenus = useMemo(() => {\r\n let menus = getMenuForRole(userRoles, loggedIn);\r\n if (isWIPAllowed) {\r\n let dashMenus = [];\r\n if (tempMenus.menus.length > 0) {\r\n dashMenus = tempMenus.menus.map((x) => {\r\n return {\r\n label: `${x.label}`,\r\n path: `/dashboard/${x.id}`,\r\n exact: true,\r\n authType: 1,\r\n component: () => {\r\n return ;\r\n }\r\n };\r\n });\r\n }\r\n if (menuPermissionCounter == 1) {\r\n let isDash = menus.findIndex((p) => p.isDynamicChildren === 'eWipDashboard');\r\n if (tempMenus.menus.length > 0 && isDash >= 0) {\r\n menus[isDash].children = dashMenus;\r\n }\r\n } else {\r\n let iseWIPMenu = menus.findIndex((p) => p.label === 'eWIP');\r\n let isDash = menus[iseWIPMenu].children.findIndex((p) => p.isDynamicChildren === 'eWipDashboard');\r\n if (tempMenus.menus.length > 0 && isDash >= 0) {\r\n menus[iseWIPMenu].children[isDash].children = dashMenus;\r\n }\r\n }\r\n }\r\n if (isReportingAllowed) {\r\n let ReportsIndex = InternalMenusToConvertDynamic.findIndex((m) => m.label == 'Reports');\r\n let findAgedMeasureMenuIndex = InternalMenusToConvertDynamic[ReportsIndex]?.children?.findIndex((m) => m.label == 'Aged Measures');\r\n let tempAgedMeasureChildren = InternalMenusToConvertDynamic[ReportsIndex]?.children[findAgedMeasureMenuIndex]?.children;\r\n const agedMeasureMenus = [];\r\n const PartsMenus = [];\r\n\r\n if (reportingMenus.menus.length > 0) {\r\n let menusFromAPI = reportingMenus.menus;\r\n if (tempAgedMeasureChildren?.length > 0) {\r\n for (let j = 0; j < menusFromAPI.length; j++) {\r\n for (let i = 0; i < tempAgedMeasureChildren?.length; i++) {\r\n if (tempAgedMeasureChildren[i].label === menusFromAPI[j].label) {\r\n agedMeasureMenus.push({\r\n ...tempAgedMeasureChildren[i],\r\n path: menusFromAPI[j].path,\r\n label: menusFromAPI[j].menuLabel\r\n });\r\n }\r\n }\r\n }\r\n }\r\n for (let j = 0; j < menusFromAPI.length; j++) {\r\n if (menusFromAPI[j].parentMenu == 'Part') {\r\n PartsMenus.push({\r\n exact: true,\r\n authType: 1,\r\n path: menusFromAPI[j].path,\r\n label: menusFromAPI[j].menuLabel,\r\n component: () => {\r\n return ;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n let isReportingMenu = menus.findIndex((p) => p.label === 'Reports');\r\n if (isReportingMenu > -1) {\r\n if (isReportingAgedMeasureAllowed || isReportingPartsAllowed) {\r\n let isReportingMenu = menus.findIndex((p) => p.label === 'Reports');\r\n if (isReportingMenu >= 0) {\r\n let agedMeasuresIndex = menus[isReportingMenu].children.findIndex((p) => p.label === 'Aged Measures');\r\n let partsIndex = menus[isReportingMenu].children.findIndex((p) => p.label === 'Parts');\r\n if (isReportingAgedMeasureAllowed && agedMeasuresIndex >= 0) {\r\n menus[isReportingMenu].children[agedMeasuresIndex].children = agedMeasureMenus.length > 0 ? agedMeasureMenus : [];\r\n }\r\n if (isReportingPartsAllowed && partsIndex >= 0) {\r\n menus[isReportingMenu].children[partsIndex].children = PartsMenus.length > 0 ? PartsMenus : [];\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return menus;\r\n }, [loggedIn, tempMenus, reportingMenus]);\r\n\r\n useEffect(() => {\r\n const urlParams = new URLSearchParams(window.location.search.toLowerCase());\r\n const fromStep = urlParams.get('fromstep') === 'true';\r\n if (fromStep && !loggedIn) {\r\n window.top.postMessage({ type: 'trigger-logout' }, '*');\r\n }\r\n }, []);\r\n\r\n return (\r\n <>\r\n {showTopNavAndMenu && }\r\n
\r\n \r\n {currentMenus.map((m, i) => {\r\n return m.children ? (\r\n m.children.map((a) => {\r\n return a.children ? (\r\n a.children.map((b) => {\r\n const [url, params] = b.path.split('?');\r\n return ;\r\n })\r\n ) : (\r\n \r\n );\r\n })\r\n ) : (\r\n \r\n );\r\n })}\r\n \r\n
\r\n \r\n );\r\n};\r\n","export default __webpack_public_path__ + \"static/media/tree.1d45ee2e.png\";","import { get, post } from './http-calls';\r\nimport { memoize } from 'lodash';\r\nexport const getSavePaperData = async () => {\r\n let res = await get('Jobdocuments/DocumentsProcessed', { useAuthToken: true });\r\n return res;\r\n};\r\n","import React, { useState, useEffect } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport Badge from '@material-ui/core/Badge';\r\nimport TreeImg from './assests/tree.png';\r\nimport { getSavePaperData } from '../../Core/Service/saveTree-service';\r\n\r\nconst TreeImgLogo = () => {\r\n const [state, setState] = useState({\r\n val: 0\r\n });\r\n useEffect(async () => {\r\n let res = await getSavePaperData();\r\n let ResData = res.data.documents[0]?.documentsProcessed;\r\n saveTrees(ResData);\r\n }, [state.val]);\r\n\r\n const saveTrees = (values) => {\r\n setState((st) => {\r\n let newSt = { ...st };\r\n if (values >= 12000) {\r\n let treeVal = values / 12000;\r\n let newVal = Math.round(treeVal);\r\n newSt.val = newVal;\r\n } else {\r\n newSt.val = 0;\r\n }\r\n return newSt;\r\n });\r\n };\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\nexport default TreeImgLogo;\r\n","import React, { useContext, useMemo } from 'react';\r\nimport clsx from 'clsx';\r\nimport { makeStyles, useTheme, fade } from '@material-ui/core/styles';\r\nimport Drawer from '@material-ui/core/Drawer';\r\nimport AppBar from '@material-ui/core/AppBar';\r\nimport Toolbar from '@material-ui/core/Toolbar';\r\nimport List from '@material-ui/core/List';\r\nimport CssBaseline from '@material-ui/core/CssBaseline';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Divider from '@material-ui/core/Divider';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport MenuIcon from '@material-ui/icons/Menu';\r\nimport ChevronLeftIcon from '@material-ui/icons/ChevronLeft';\r\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\r\nimport ListItem from '@material-ui/core/ListItem';\r\nimport ListItemIcon from '@material-ui/core/ListItemIcon';\r\nimport ListItemText from '@material-ui/core/ListItemText';\r\nimport InboxIcon from '@material-ui/icons/MoveToInbox';\r\nimport MailIcon from '@material-ui/icons/Mail';\r\nimport { Link, NavLink, Route, Switch, useHistory } from 'react-router-dom';\r\nimport ExpandLess from '@material-ui/icons/ExpandLess';\r\nimport ExpandMore from '@material-ui/icons/ExpandMore';\r\nimport { Collapse, Fade, Grid, InputBase, MenuItem, MenuList, Paper, Popover, Popper } from '@material-ui/core';\r\nimport { useWindowSize } from '../Controls/ScreenResolution';\r\nimport AppContext from '../../App/AppContext';\r\nimport { getMenuForRole } from './_menu';\r\nimport { WorkflowDash, PartSales } from '../../Components';\r\nimport SearchIcon from '@material-ui/icons/Search';\r\nimport { getDataByEwipNo } from '../Service/common-service';\r\nimport moment from 'moment';\r\nimport { CustomButton, SecondaryButton } from '../FormInput';\r\nimport KeyboardArrowUpIcon from '@material-ui/icons/KeyboardArrowUp';\r\nimport KeyboardArrowDownIcon from '@material-ui/icons/KeyboardArrowDown';\r\nimport ExitToAppIcon from '@material-ui/icons/ExitToApp';\r\nimport BorderColorIcon from '@material-ui/icons/BorderColor';\r\nimport VpnKeyIcon from '@material-ui/icons/VpnKey';\r\nimport MySignature, { UserSignatureReminder } from '../Modal/SignatureModal';\r\nimport { postSignature, postSignatureStatus } from '../Service/login-service';\r\nimport { AppStorage } from '../Service/storage-service';\r\nimport { TypeOfAuth } from './menu/menu-auth-type';\r\nimport LoyaltyIcon from '@material-ui/icons/Loyalty';\r\nimport { TickerDisplayMessage } from './ticker';\r\nimport { TableContainer } from '@material-ui/core';\r\nimport { Table } from '@material-ui/core';\r\nimport { TableHead } from '@material-ui/core';\r\nimport { TableBody } from '@material-ui/core';\r\nimport { TableRow } from '@material-ui/core';\r\nimport { withStyles } from '@material-ui/core/styles';\r\nimport { TableCell } from '@material-ui/core';\r\nimport formatters from '../Grid/inputFormatter';\r\nimport InternalMenusToConvertDynamic from '../Root/menu/roles-menu/reportingMenu';\r\n\r\nconst drawerWidth = 240;\r\n\r\nconst StyledTableCell = withStyles((theme) => ({\r\n head: {\r\n backgroundColor: theme.palette.action.hover\r\n },\r\n body: {\r\n fontSize: 14\r\n }\r\n}))(TableCell);\r\n\r\nconst StyledTableRow = withStyles((theme) => ({\r\n root: {\r\n '&:hover': {\r\n backgroundColor: theme.palette.action.hover,\r\n cursor: 'pointer'\r\n }\r\n }\r\n}))(TableRow);\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n table: {\r\n maxWidth: 800\r\n },\r\n root: {\r\n display: 'flex'\r\n },\r\n appBar: {\r\n top: '60px',\r\n height: '45px',\r\n zIndex: theme.zIndex.drawer + 1,\r\n transition: theme.transitions.create(['width', 'margin'], {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen\r\n })\r\n },\r\n appBarShift: {\r\n marginLeft: drawerWidth,\r\n width: `calc(100% - ${drawerWidth}px)`,\r\n transition: theme.transitions.create(['width', 'margin'], {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.enteringScreen\r\n })\r\n },\r\n menuButton: {\r\n marginRight: 36\r\n },\r\n hide: {\r\n display: 'none'\r\n },\r\n drawer: {\r\n width: drawerWidth,\r\n flexShrink: 0,\r\n whiteSpace: 'nowrap'\r\n },\r\n drawerOpen: {\r\n backgroundColor: (props) => `${props.portalMenuBarBackgroundColour}`,\r\n width: drawerWidth,\r\n transition: theme.transitions.create('width', {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.enteringScreen\r\n })\r\n },\r\n drawerClose: {\r\n backgroundColor: (props) => `${props.portalMenuBarBackgroundColour}`,\r\n transition: theme.transitions.create('width', {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen\r\n }),\r\n overflowX: 'hidden',\r\n width: theme.spacing(0) + 1,\r\n [theme.breakpoints.up('sm')]: {\r\n width: theme.spacing(7) + 1\r\n }\r\n },\r\n toolbar: {\r\n [theme.breakpoints.up('sm')]: {\r\n width: theme.spacing(7) + 1\r\n },\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'flex-end',\r\n padding: theme.spacing(0, 1),\r\n // necessary for content to be below app bar\r\n ...theme.mixins.toolbar\r\n },\r\n app_toolbar: {\r\n height: '45px',\r\n minHeight: '45px',\r\n display: 'flex',\r\n // justifyContent: 'space-between',\r\n padding: '0px 10px'\r\n },\r\n content: {\r\n flexGrow: 1,\r\n // padding: theme.spacing(3)\r\n overflow: 'auto',\r\n height: 'calc(100vh - 60px)'\r\n },\r\n drawerPaper: {\r\n top: '60px',\r\n '&::-webkit-scrollbar': {\r\n width: '0.4em'\r\n },\r\n '&::-webkit-scrollbar-track': {\r\n boxShadow: 'inset 0 0 6px rgba(0,0,0,0.00)',\r\n webkitBoxShadow: 'inset 0 0 6px rgba(0,0,0,0.00)'\r\n },\r\n '&::-webkit-scrollbar-thumb': {\r\n backgroundColor: 'rgba(0,0,0,.1)',\r\n outline: '1px solid slategrey'\r\n }\r\n },\r\n\r\n labelBtn: {\r\n color: (props) => `${props.portalMenuBarTextColour}`,\r\n textTransform: 'none',\r\n textDecoration: 'none',\r\n fontSize: '15px'\r\n },\r\n menuIcon: {\r\n minWidth: '40px'\r\n },\r\n logoutBtn: {\r\n display: 'inline-flex',\r\n VerticalAlign: 'text-bottom',\r\n BoxSizing: 'inherit',\r\n textAlign: 'center',\r\n alignItems: 'center',\r\n textDecoration: 'none',\r\n cursor: 'pointer',\r\n marginLeft: 1\r\n },\r\n search: {\r\n position: 'relative',\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: fade(theme.palette.common.white, 0.15),\r\n '&:hover': {\r\n backgroundColor: fade(theme.palette.common.white, 0.25)\r\n },\r\n marginRight: theme.spacing(2),\r\n marginLeft: 0,\r\n marginTop: (props) => (props.WindowWidths > 750 ? 4 : 0),\r\n width: '180px !important',\r\n maxHeight: '30px',\r\n [theme.breakpoints.up('sm')]: {\r\n marginLeft: theme.spacing(3),\r\n width: 'auto'\r\n }\r\n },\r\n searchIcon: {\r\n padding: theme.spacing(0, 0.9),\r\n height: '100%',\r\n position: 'absolute',\r\n pointerEvents: 'none',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n inputRoot: {\r\n color: 'inherit'\r\n },\r\n inputInput: {\r\n padding: '4px 8px 8px 0px', //theme.spacing(1, 1, 1, 0),\r\n // vertical padding + font size from searchIcon\r\n paddingLeft: `calc(1em + ${theme.spacing(4)}px)`,\r\n transition: theme.transitions.create('width'),\r\n width: '100%',\r\n [theme.breakpoints.up('md')]: {\r\n width: '20ch'\r\n }\r\n },\r\n linknav: {\r\n backgroundColor: (props) => `${props.portalMenuBarBackgroundColour}`,\r\n textDecoration: 'none',\r\n color: (props) => `${props.portalMenuBarTextColour}`,\r\n fontSize: '15px'\r\n },\r\n activeLink: {\r\n '& .MuiTypography-root': {\r\n color: '#f50057 !important'\r\n }\r\n },\r\n itemText: {\r\n color: (props) => `${props.portalMenuBarTextColour}`,\r\n '& span, & svg': {\r\n fontSize: '0.83rem',\r\n color: (props) => `${props.portalMenuBarTextColour}`\r\n }\r\n },\r\n ChevronRightIconBtn: {\r\n color: (props) => `${props.portalMenuBarTextColour}`\r\n }\r\n}));\r\n\r\nexport default function MiniDrawer(props) {\r\n const { loggedIn, userRoles, displayName, lastLogin, showToast, portalSettings, showModal, showTopNavAndMenu, hideShowTopNav, reportingMenus, tempMenus } =\r\n useContext(AppContext);\r\n\r\n const classes = useStyles(portalSettings);\r\n\r\n const theme = useTheme();\r\n const [screenWidth, screenHeight] = useWindowSize();\r\n const [open, setOpen] = React.useState((localStorage.getItem('_sideBarIsOpen_') || '').toUpperCase() === 'TRUE' || false);\r\n const [state, setState] = React.useState({\r\n isError404: false,\r\n WorkflowJobs: []\r\n });\r\n const [searchAnchorEl, setSearchAnchorEl] = React.useState(null);\r\n const [anchorEl, setAnchorEl] = React.useState(null);\r\n const [openSign, setOpenSign] = React.useState(false);\r\n const isCommunicatorAllowed = AppStorage.getCommunicatorAllowed();\r\n const isInvoiceAllowed = AppStorage.getInvoiceAllowed();\r\n const isReportingAllowed = AppStorage.getReportingAllowed();\r\n const isWIPAllowed = AppStorage.getWIPAllowed() && portalSettings.portalSettingeWIPEnabled;\r\n let menuPermissionCounter = isCommunicatorAllowed + isInvoiceAllowed + isReportingAllowed + isWIPAllowed;\r\n let history = useHistory();\r\n const isReportingAgedMeasureAllowed = AppStorage.getReportingAgedMeasureAllowed();\r\n const isReportingPartsAllowed = AppStorage.getReportingPartsAllowed();\r\n\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n let isAdmin = userRoles.includes('admin');\r\n const isInternal = userRoles.includes('internal');\r\n const currentMenus = useMemo(() => {\r\n let menus = getMenuForRole(userRoles, loggedIn);\r\n // if (menuPermissionCounter > 1) {\r\n // let firstmenu = menus.find((p) => p.children.length > 0);\r\n // setState((st) => ({ ...st, [`${firstmenu.label}`]: true }));\r\n // }\r\n\r\n if (isWIPAllowed) {\r\n let dashMenus = [];\r\n if (tempMenus.menus.length > 0) {\r\n dashMenus = tempMenus.menus.map((x) => {\r\n return {\r\n label: `${x.label}`,\r\n path: `/dashboard/${x.id}`,\r\n exact: true,\r\n authType: 1,\r\n component: () => {\r\n return ;\r\n }\r\n };\r\n });\r\n }\r\n if (menuPermissionCounter == 1) {\r\n let isDash = menus.findIndex((p) => p.isDynamicChildren === 'eWipDashboard');\r\n if (tempMenus.menus.length > 0 && isDash >= 0) {\r\n menus[isDash].children = dashMenus;\r\n }\r\n } else {\r\n let iseWIPMenu = menus.findIndex((p) => p.label === 'eWIP');\r\n let isDash = menus[iseWIPMenu]?.children?.findIndex((p) => p?.isDynamicChildren === 'eWipDashboard');\r\n if (tempMenus?.menus?.length > 0 && isDash >= 0) {\r\n menus[iseWIPMenu].children[isDash].children = dashMenus;\r\n }\r\n }\r\n }\r\n if (isReportingAllowed) {\r\n let ReportsIndex = InternalMenusToConvertDynamic.findIndex((m) => m.label == 'Reports');\r\n let findAgedMeasureMenuIndex = InternalMenusToConvertDynamic[ReportsIndex]?.children?.findIndex((m) => m.label == 'Aged Measures');\r\n let tempAgedMeasureChildren = InternalMenusToConvertDynamic[ReportsIndex]?.children[findAgedMeasureMenuIndex]?.children;\r\n const agedMeasureMenus = [];\r\n const PartsMenus = [];\r\n\r\n if (reportingMenus.menus.length > 0) {\r\n let menusFromAPI = reportingMenus.menus;\r\n if (tempAgedMeasureChildren?.length > 0) {\r\n for (let j = 0; j < menusFromAPI.length; j++) {\r\n for (let i = 0; i < tempAgedMeasureChildren?.length; i++) {\r\n if (tempAgedMeasureChildren[i].label === menusFromAPI[j].label) {\r\n agedMeasureMenus.push({\r\n ...tempAgedMeasureChildren[i],\r\n path: menusFromAPI[j].path,\r\n label: menusFromAPI[j].menuLabel\r\n });\r\n }\r\n }\r\n }\r\n }\r\n for (let j = 0; j < menusFromAPI.length; j++) {\r\n if (menusFromAPI[j].parentMenu == 'Part') {\r\n PartsMenus.push({\r\n exact: true,\r\n authType: 1,\r\n path: menusFromAPI[j].path,\r\n label: menusFromAPI[j].menuLabel,\r\n component: () => {\r\n return ;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n let isReportingMenu = menus.findIndex((p) => p.label === 'Reports');\r\n if (isReportingMenu > -1) {\r\n if (isReportingAgedMeasureAllowed || isReportingPartsAllowed) {\r\n let isReportingMenu = menus.findIndex((p) => p.label === 'Reports');\r\n if (isReportingMenu >= 0) {\r\n let agedMeasuresIndex = menus[isReportingMenu].children.findIndex((p) => p.label === 'Aged Measures');\r\n let partsIndex = menus[isReportingMenu].children.findIndex((p) => p.label === 'Parts');\r\n if (isReportingAgedMeasureAllowed && agedMeasuresIndex >= 0) {\r\n menus[isReportingMenu].children[agedMeasuresIndex].children = agedMeasureMenus.length > 0 ? agedMeasureMenus : [];\r\n }\r\n if (isReportingPartsAllowed && partsIndex >= 0) {\r\n menus[isReportingMenu].children[partsIndex].children = PartsMenus.length > 0 ? PartsMenus : [];\r\n }\r\n }\r\n }\r\n }\r\n }\r\n return menus;\r\n }, [loggedIn, tempMenus, reportingMenus]);\r\n\r\n const handleDrawerOpen = (isFlag) => {\r\n if (isFlag == true) {\r\n localStorage.setItem('_sideBarIsOpen_', true);\r\n }\r\n setOpen(true);\r\n };\r\n\r\n const handleDrawerClose = (isFlag) => {\r\n if (isFlag == true) {\r\n localStorage.setItem('_sideBarIsOpen_', false);\r\n }\r\n\r\n setOpen(false);\r\n };\r\n\r\n const handleClick = (item) => {\r\n setState((st) => ({ ...st, [item]: !st[item] }));\r\n handleDrawerOpen();\r\n };\r\n\r\n const getWipDataById = async (wipNo) => {\r\n const res = await getDataByEwipNo(wipNo);\r\n if (res.success) {\r\n setState((st) => ({ ...st, WorkflowJobs: res.data.jobsDetails }));\r\n }\r\n };\r\n\r\n const handleChange = (event) => {\r\n if (event.target.value.length > 4) {\r\n getWipDataById(event.target.value);\r\n setSearchAnchorEl(event.currentTarget);\r\n } else {\r\n setSearchAnchorEl(null);\r\n }\r\n };\r\n\r\n const handleCloseSearch = (data) => {\r\n history.push(`/Job/${data.headerRecordID}/${data.workFlowID}`);\r\n setSearchAnchorEl(null);\r\n setState((st) => ({ ...st, WorkflowJobs: [] }));\r\n };\r\n\r\n const handler = (children, isFiltered, isIcon) => {\r\n let currentNav = children;\r\n // isFiltered ? _.orderBy(children, [(c) => c.navigationMenuLabel.toLowerCase()], ['asc']) : children;\r\n return currentNav?.map((subOption, index) => {\r\n if (!subOption.children) {\r\n return (\r\n
\r\n \r\n 1200 ? handleDrawerOpen : !open ? handleDrawerOpen : handleDrawerClose}\r\n >\r\n {isIcon ? (\r\n \r\n {subOption.icon}\r\n \r\n ) : (\r\n ''\r\n )}\r\n {!open && !isIcon ?
: ''}\r\n {subOption.label}\r\n \r\n
\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n handleClick(subOption.label)} title={subOption.label}>\r\n {isIcon ? (\r\n \r\n {subOption.icon}\r\n \r\n ) : (\r\n ''\r\n )}\r\n {!open && !isIcon ?
: ''}\r\n {subOption.label}\r\n \r\n {state[subOption.label] ? : }\r\n \r\n
\r\n \r\n {handler(subOption.children, true, false)}\r\n \r\n
\r\n );\r\n });\r\n };\r\n const openInfo = Boolean(anchorEl);\r\n const id = openInfo ? 'simple-popover' : undefined;\r\n const handlePopupClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n const handlePopupClose = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const closeSign = () => {\r\n setOpenSign(!openSign);\r\n };\r\n\r\n const showPasswordChangeModal = (e) => {\r\n e.preventDefault();\r\n showModal('PasswordChange');\r\n };\r\n\r\n const postSignData = async (sign, id, defaultInternalDashboard, appbarLocation) => {\r\n const data = {\r\n signature: sign,\r\n AppbarLocation: appbarLocation,\r\n defaultInternalDashboard: defaultInternalDashboard\r\n };\r\n console.log('from leftbar ');\r\n\r\n let resSign = await postSignature(data);\r\n let resStatus = id && (await postSignatureStatus(id));\r\n if (resSign) {\r\n if (resSign?.success) {\r\n AppStorage.setSignature(sign);\r\n AppStorage.setUserGridColumnAppbarLocation(appbarLocation);\r\n localStorage.setItem('_defaultInternalDashboard_', defaultInternalDashboard);\r\n\r\n showToast('User Settings Updated Successfully!');\r\n } else {\r\n showToast(resSign?.message || 'Something went wrong!');\r\n }\r\n }\r\n };\r\n\r\n return (\r\n
\r\n {showTopNavAndMenu && (\r\n \r\n \r\n \r\n \r\n {loggedIn && (\r\n handleDrawerOpen(true)}\r\n edge=\"start\"\r\n style={{ padding: '0px', marginLeft: '7px' }}\r\n className={clsx(classes.menuButton, {\r\n [classes.hide]: open\r\n })}\r\n >\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {loggedIn && !isAdmin && isWIPAllowed && (\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n {({ TransitionProps }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n WIP No\r\n \r\n \r\n Vehicle Reg\r\n \r\n \r\n Customer Name\r\n \r\n \r\n Workflow\r\n \r\n \r\n Return Reason\r\n \r\n \r\n Branch\r\n \r\n \r\n Due Date In\r\n \r\n \r\n \r\n \r\n {state.WorkflowJobs.map((w, index) => {\r\n return (\r\n handleCloseSearch(w)}>\r\n \r\n
{w.wipNumber}
\r\n
\r\n \r\n
{w.regNumber}
\r\n
\r\n \r\n
{w.customer}
\r\n
\r\n \r\n
{w.workflow}
\r\n
\r\n \r\n
{w.returnReason}
\r\n
\r\n \r\n
{w.branch}
\r\n
\r\n \r\n
{formatters.DateTimeFormatter(w.dateDueIn)}
\r\n
\r\n
\r\n );\r\n })}\r\n
\r\n
\r\n
\r\n \r\n
\r\n )}\r\n \r\n
\r\n )}\r\n
\r\n \r\n
\r\n {loggedIn ? (\r\n
\r\n {/*
\r\n {isTopNav ? (\r\n hideShowTopNav(false)}\r\n toolTipTitle=\"Hide Portal Info\"\r\n IconColor=\"white\"\r\n />\r\n ) : (\r\n hideShowTopNav(true)}\r\n toolTipTitle=\"Show Portal Info\"\r\n IconColor=\"white\"\r\n />\r\n )}\r\n
*/}\r\n \r\n \r\n \r\n  \r\n \r\n \r\n \r\n {displayName}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Logout\r\n \r\n \r\n {!isAdmin && (\r\n \r\n \r\n My Settings\r\n \r\n )}\r\n \r\n \r\n Change Password\r\n \r\n \r\n {/* */}\r\n        \r\n Version 2.4.8\r\n \r\n \r\n \r\n
\r\n ) : (\r\n \r\n Login\r\n \r\n )}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n )}\r\n {openSign && }\r\n {loggedIn && showTopNavAndMenu && (\r\n \r\n
\r\n handleDrawerClose(true)} className={classes.ChevronRightIconBtn}>\r\n {theme.direction === 'rtl' ? : }\r\n \r\n
\r\n \r\n \r\n {handler(\r\n currentMenus.filter((m) => !m.hidden),\r\n false,\r\n true\r\n )}\r\n \r\n \r\n )}\r\n
\r\n {showTopNavAndMenu &&
}\r\n {/* 775 ? 'none' : 'block',\r\n marginTop: -15\r\n // backgroundColor: portalSettings.portalMenuBarBackgroundColour,\r\n // color: portalSettings.portalMenuBarTextColour\r\n }}\r\n >\r\n \r\n */}\r\n\r\n \r\n {currentMenus.map((m, i) => {\r\n return m.children ? (\r\n m.children.map((a) => {\r\n return a.children ? (\r\n a.children.map((b) => {\r\n const [url, params] = b.path.split('?');\r\n\r\n return ;\r\n })\r\n ) : (\r\n \r\n );\r\n })\r\n ) : (\r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n );\r\n}\r\n","import { PhoneIphone, AccessTime, Email } from '@material-ui/icons';\r\nimport React, { useContext, useMemo } from 'react';\r\nimport { BrowserRouter, NavLink } from 'react-router-dom';\r\nimport AppContext from '../../App/AppContext';\r\nimport { Navbar } from '../Root/Navbar';\r\nimport TreeImgLogo from '../../Components/_shared/treeImgesLogo';\r\nimport { useWindowSize } from '../Controls/ScreenResolution';\r\nimport MiniDrawer from '../Root/LeftDrawer';\r\nimport { useEffect } from 'react';\r\nimport { useState } from 'react';\r\n// import { useWindowSize } from '../../../Core/Controls/ScreenResolution';\r\n\r\nexport let Header = (props) => {\r\n const { portalSettings, showTopNavAndMenu, loggedIn, isTopNav, getUserPreference } = useContext(AppContext);\r\n const [WindowWidths, WindowHeights] = useWindowSize();\r\n const [menuType, setMenuType] = useState('T');\r\n const img = !!portalSettings.portalSettingMainLogo ? portalSettings.portalSettingMainLogo : `${process.env.PUBLIC_URL}/${portalSettings.portalSettingLogo}`;\r\n\r\n const navBarPreferences = () => {\r\n if (localStorage.getItem('_AppbarLocation_') && localStorage.getItem('_AppbarLocation_') != 'undefined') {\r\n return localStorage.getItem('_AppbarLocation_');\r\n } else {\r\n return portalSettings.portalSettingMenuType;\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n setMenuType(navBarPreferences());\r\n }, [localStorage.getItem('_AppbarLocation_')]);\r\n\r\n return (\r\n \r\n
\r\n {showTopNavAndMenu && (\r\n \r\n \r\n \r\n \r\n {[\r\n { text: 'Call US', value: portalSettings.portalSettingCallUs, icon: PhoneIphone, link: 'tel:' + portalSettings.callUs },\r\n { text: 'Opening Time', value: portalSettings.portalSettingOpeningTime, icon: AccessTime },\r\n {\r\n text: 'Email US',\r\n value: portalSettings.portalSettingEmailUs,\r\n icon: Email,\r\n link: 'mailto:' + portalSettings.portalSettingEmailUs + '?subject=eWIP Query',\r\n isDynamicDisplay: true\r\n }\r\n ].map((c, i) => (\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n ))}\r\n {loggedIn && portalSettings.portalSettingeWIPEnabled && (\r\n
750 ? 30 : 0 }}>\r\n \r\n
\r\n )}\r\n
\r\n )}\r\n {menuType === 'S' ? : }\r\n \r\n
\r\n );\r\n};\r\n","import React, { useContext } from 'react'\r\nimport { Slide, Snackbar } from '@material-ui/core';\r\nimport AppContext from '../../App/AppContext';\r\n\r\nfunction TransitionUp(props) {\r\n return ;\r\n}\r\n\r\nexport const Toast = props => {\r\n const { snackbar_open, snackbar_message, hideToast } = useContext(AppContext);\r\n return \r\n}","import React, { useContext, useState } from \"react\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport AppContext from \"../../App/AppContext\";\r\nimport { PasswordBox, SecondaryButton, PrimaryButton } from \"./../FormInput\";\r\nimport { makeStyles } from \"@material-ui/core/styles\";\r\nimport { changeUserPassword } from \"../Service/changePassword-service\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport \"./model.css\";\r\n\r\nconst PasswordChangeModal = (props) => {\r\n const { hideModal, showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n current: \"\",\r\n new: \"\",\r\n confirm: \"\",\r\n enableChange: false,\r\n });\r\n\r\n const handleClose = () => {\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n nst.enableChange =\r\n nst.current &&\r\n nst.new &&\r\n nst.confirm &&\r\n nst.new === nst.confirm;\r\n return nst;\r\n });\r\n };\r\n\r\n const handleChangePassword = async (e) => {\r\n e.preventDefault();\r\n if (state.new && state.confirm) {\r\n const res = await changeUserPassword(\r\n state.current,\r\n state.new,\r\n state.confirm\r\n );\r\n if (!res.success) {\r\n console.error(res);\r\n // showToast(res.messages);\r\n }\r\n showToast(res.messages);\r\n } else {\r\n showToast(\"New password and confirm password is required.\");\r\n }\r\n hideModal();\r\n };\r\n return (\r\n \r\n \r\n \r\n Change Password\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default PasswordChangeModal;\r\n","import React, { useContext,useState } from 'react';\r\nimport Dialog from '@material-ui/core/Dialog';\r\nimport DialogActions from '@material-ui/core/DialogActions';\r\nimport DialogContent from '@material-ui/core/DialogContent';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport AppContext from '../../App/AppContext';\r\nimport {SecondaryButton, PrimaryButton} from './../FormInput'\r\n\r\nconst DeleteModal = props => {\r\n const { hideModal } = useContext(AppContext);\r\n\r\n const handleClose = () => {\r\n hideModal();\r\n };\r\n\r\n return \r\n Delete\r\n \r\n Are you sure do you want to delete this item\r\n \r\n \r\n Cancel\r\n Delete\r\n \r\n \r\n}\r\n\r\nexport default DeleteModal;","import React, { useContext, useState } from \"react\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogTitle from \"@material-ui/core/DialogTitle\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport AppContext from \"../../App/AppContext\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport { TextBox, SecondaryButton, PrimaryButton } from \"./../FormInput\";\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\n\r\nconst ServiceAdvCust = (props) => {\r\n const { hideModal } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n reporteddefect: \"\",\r\n problem: \"\",\r\n warning: \"\",\r\n repairs: \"\",\r\n modifications: \"\",\r\n fault: \"\",\r\n operating_conditions: \"\",\r\n person: \"\",\r\n enableChange: false,\r\n });\r\n\r\n const handleClose = () => {\r\n hideModal();\r\n };\r\n const handleSubmit = () => {\r\n hideModal();\r\n };\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n const nst = { ...st, [name]: value };\r\n nst.enableChange =\r\n nst.repairs && nst.modifications && nst.fault && nst.person;\r\n return nst;\r\n });\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Service Advisor Customer Consultation\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Submit\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ServiceAdvCust;\r\n","import {post} from './http-calls';\r\n\r\nexport const ForgotPassword = async (email)=>{\r\n let res = await post('/resetPassword', {\r\n \"email\": email,\r\n });\r\n return res;\r\n}","import React, { useContext, useState } from \"react\";\r\nimport AppContext from \"../../App/AppContext\";\r\nimport {\r\n TextBox,\r\n SecondaryButton,\r\n DialogContents,\r\n DialogTitles,\r\n Dialogs,\r\n} from \"./../FormInput\";\r\nimport \"./model.css\";\r\nimport { ForgotPassword } from \"../Service/forgotPassword-service\"\r\nimport CloseIcon from \"@material-ui/icons/Close\";\r\nimport { IconButton } from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\n\r\nconst ForgotPasswordModal = (props) => {\r\n const { hideModal,showToast } = useContext(AppContext);\r\n const [state, setState] = useState({\r\n email: \"\",\r\n });\r\n\r\n const handleClose = () => {\r\n hideModal();\r\n };\r\n\r\n const fieldChange = (e) => {\r\n const { name, value } = e.target;\r\n setState((st) => {\r\n return { ...st, [name]: value };\r\n });\r\n };\r\n const handleResetPass = async (e) => {\r\n e.preventDefault();\r\n if (state.email) {\r\n const res = await ForgotPassword(state.email);\r\n if (!res.success) {\r\n showToast(res.message)\r\n hideModal();\r\n }\r\n else{\r\n showToast(res.message);\r\n hideModal();\r\n }\r\n }\r\n else {\r\n showToast('Email address is required.');\r\n hideModal();\r\n }\r\n }\r\n return (\r\n \r\n \r\n \r\n Forgot Password?\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Enter the email address associated with your account\r\n \r\n \r\n \r\n Reset Password\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default ForgotPasswordModal;\r\n","import { useContext } from \"react\";\r\nimport AppContext from \"../../App/AppContext\";\r\nimport PasswordChange from \"./PasswordChange\";\r\nimport DeleteModal from \"./DeleteModal\";\r\nimport ServiceAdvCust from \"./ServiceAdvCust\";\r\nimport ForgotPassword from \"./ForgotPassword\"\r\n\r\nfunction getModalToShow(visibleModalId) {\r\n switch (visibleModalId) {\r\n case \"PasswordChange\":\r\n return PasswordChange;\r\n case \"DeleteModal\":\r\n return DeleteModal;\r\n case \"ServiceAdvCust\":\r\n return ServiceAdvCust;\r\n case \"ForgotPassword\":\r\n return ForgotPassword;\r\n }\r\n}\r\nconst ProfileModal = (props) => {\r\n const { visibleModalId } = useContext(AppContext);\r\n const ModalToShow = getModalToShow(visibleModalId);\r\n return <>{ModalToShow && };\r\n};\r\nexport { ProfileModal };\r\n","import React, { useState, useEffect, Suspense } from 'react';\r\nimport './App.scss';\r\nimport { Header } from './../Core/Header';\r\nimport AppContext from './AppContext';\r\nimport { AppStorage } from '../Core/Service/storage-service';\r\nimport { Toast } from './../Core/Toast';\r\nimport { get, httpVerbEmitter } from '../Core/Service/http-calls';\r\nimport { ProfileModal } from '../Core/Modal';\r\nimport { getAllowedWorkflow } from '../Core/Service/workflow-service';\r\nimport { getGridFilterList } from '../Core/Service/workflow-service';\r\nimport { Customi18 } from '../Core/Controls/i18react/customei18';\r\nimport { getMenuItems } from '../Core/Service/menuService';\r\n\r\nconst Loader = () => (\r\n
\r\n
loading...
\r\n
\r\n);\r\n\r\nfunction App() {\r\n const portalSettings = AppStorage.getPortalSetting() || { expired: true };\r\n const isWIPAllowed = AppStorage.getWIPAllowed() && portalSettings.portalSettingeWIPEnabled;\r\n const isReportingAllowed = AppStorage.getReportingAllowed() && portalSettings.portalSettingReportingEnabled;\r\n\r\n const [contextState, setContextState] = useState({\r\n loggedIn: AppStorage.isLoggedIn(),\r\n userRoles: AppStorage.getUserRoles(),\r\n displayName: AppStorage.getName(),\r\n lastLogin: AppStorage.getLastLogin(),\r\n canOverrideMandatorySteps: AppStorage.getCanOverrideMandatorySteps(),\r\n canAssignJobsToAuditor: AppStorage.getCanAssignJobsToAuditor(),\r\n canResetPassword: AppStorage.getCanResetPassword(),\r\n portalSettings: portalSettings,\r\n snackbar_open: false,\r\n snackbar_message: '',\r\n visibleModalId: '',\r\n showTopNavAndMenu: true,\r\n isTopNav: true\r\n });\r\n const { i18n } = Customi18();\r\n const [tempMenus, setTempMenus] = useState({ menus: [], role: '', menuName: '' });\r\n const [reportingMenus, setReportingMenus] = useState({ menus: [], role: '', menuName: '' });\r\n\r\n const [isAppReaload, setisAppReaload] = useState(null);\r\n\r\n const showToast = (msg) => {\r\n setContextState((st) => ({ ...st, snackbar_open: true, snackbar_message: msg }));\r\n };\r\n\r\n const hideToast = () => {\r\n setContextState((st) => ({ ...st, snackbar_open: false, snackbar_message: null }));\r\n };\r\n\r\n const showModal = (modalId) => {\r\n setContextState((st) => ({ ...st, visibleModalId: modalId }));\r\n };\r\n\r\n const hideModal = () => {\r\n setContextState((st) => ({ ...st, visibleModalId: '' }));\r\n };\r\n\r\n const hideTopNavAndMenu = () => {\r\n setContextState((st) => ({ ...st, showTopNavAndMenu: false }));\r\n };\r\n\r\n const hideShowTopNav = (val) => {\r\n setContextState((st) => ({ ...st, isTopNav: val }));\r\n };\r\n\r\n useEffect(() => {\r\n async function getPortalSetting() {\r\n if (portalSettings.expired) {\r\n const res = await get(`portalSetting`);\r\n if (res.data.details[0]) {\r\n AppStorage.setPortalSetting(res.data.details[0]);\r\n setContextState((st) => ({ ...st, portalSettings: AppStorage.getPortalSetting() }));\r\n }\r\n } else {\r\n setContextState((st) => ({ ...st, portalSettings: AppStorage.getPortalSetting() }));\r\n }\r\n }\r\n getPortalSetting();\r\n\r\n const listenMsg = ({ data }) => {\r\n if (data.type === 'trigger-logout') {\r\n AppStorage.performLogout();\r\n window.location = '/';\r\n }\r\n };\r\n window.addEventListener('message', listenMsg);\r\n return () => {\r\n window.removeEventListener('message', listenMsg);\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n window.document.title = portalSettings.portalSettingTitle || 'eWIP';\r\n }, [contextState.portalSettings]);\r\n\r\n httpVerbEmitter.addEventListener((e) => {\r\n console.log('from app', e);\r\n });\r\n\r\n useEffect(async () => {\r\n if (contextState.loggedIn && isWIPAllowed) {\r\n setUserPreference();\r\n }\r\n if (contextState.loggedIn && contextState.userRoles == 'internal') {\r\n if (isWIPAllowed) {\r\n let res = await getAllowedWorkflow();\r\n setTempMenus({ menus: res.data.list.table, menuName: 'Dashboard' });\r\n }\r\n if (isReportingAllowed) {\r\n let ReportsMenus = await getMenuItems();\r\n setReportingMenus({ menus: ReportsMenus.data?.list, menuName: 'Reporting' });\r\n }\r\n }\r\n }, []);\r\n\r\n const setUserPreference = async () => {\r\n let res = await getGridFilterList();\r\n if (res.success) {\r\n i18n.changeLanguage(res.data?.details[0]?.languageCode || 'en');\r\n localStorage.setItem('_userPreference_', JSON.stringify(res.data));\r\n setisAppReaload(new Date());\r\n }\r\n };\r\n\r\n const getUserPreference = () => {\r\n return JSON.parse(localStorage.getItem('_userPreference_'));\r\n };\r\n\r\n return (\r\n }>\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nexport default App;\r\n","import React, { useLayoutEffect, useState } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport langLabel from '../../../Lang.Labels.json';\r\n\r\nexport const Customi18 = () => {\r\n const { t, i18n } = useTranslation();\r\n // const setLanguage = (langCode) => {\r\n // i18n.changeLanguage(langCode || 'en');\r\n // };\r\n\r\n return { t, i18n, langLabel };\r\n};\r\n","const reportWebVitals = onPerfEntry => {\r\n if (onPerfEntry && onPerfEntry instanceof Function) {\r\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\r\n getCLS(onPerfEntry);\r\n getFID(onPerfEntry);\r\n getFCP(onPerfEntry);\r\n getLCP(onPerfEntry);\r\n getTTFB(onPerfEntry);\r\n });\r\n }\r\n};\r\n\r\nexport default reportWebVitals;\r\n","import i18n from 'i18next';\r\nimport Backend from 'i18next-http-backend';\r\nimport LanguageDetector from 'i18next-browser-languagedetector';\r\nimport { initReactI18next } from 'react-i18next';\r\n// import temp from '/locales/en/common.json';\r\n\r\nlet lngs = ['en', 'pl'];\r\n// array will have exact name of files inside public/locales/[lang code]\r\nlet localesFiles = ['common', 'navbar'];\r\n\r\n// resource will be populated by above arrays - lang and locales files.\r\nconst resources = {};\r\n\r\nlngs.forEach((lng) => {\r\n resources[lng] = {};\r\n Promise.all(\r\n localesFiles.map((fileName) => {\r\n return fetch(`/locales/${lng}/${fileName}.json`)\r\n .then((resp) => resp.json())\r\n .then((resJson) => [fileName, resJson]);\r\n })\r\n ).then((fileNameJsonList) => {\r\n fileNameJsonList.forEach((nmRes) => {\r\n let resJson = nmRes[1];\r\n let tempObj = {};\r\n Object.keys(resJson).forEach((k) => {\r\n tempObj[k.replace(/\\s+/, '')] = resJson[k];\r\n });\r\n resources[lng][nmRes[0]] = tempObj;\r\n });\r\n });\r\n});\r\n\r\ni18n\r\n // load translation using http -> see /public/locales\r\n // learn more: https://github.com/i18next/i18next-http-backend\r\n .use(Backend)\r\n // detect user language\r\n // learn more: https://github.com/i18next/i18next-browser-languageDetector\r\n .use(LanguageDetector)\r\n // pass the i18n instance to react-i18next.\r\n .use(initReactI18next)\r\n // init i18next\r\n // for all options read: https://www.i18next.com/overview/configuration-options\r\n .init({\r\n resources,\r\n\r\n // Set default namespace\r\n // defaultNS: 'common',\r\n\r\n lng: 'en',\r\n // debug: true,\r\n // whitelist: Languages,\r\n interpolation: {\r\n escapeValue: false // not needed for react as it escapes by default\r\n }\r\n });\r\n\r\nexport default i18n;\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport './App/index.css';\r\nimport App from './App/App.jsx';\r\nimport reportWebVitals from './App/reportWebVitals';\r\nimport './App/i18n';\r\nimport PackageJson from '../package.json';\r\nimport { AppStorage } from './Core/Service/storage-service';\r\n\r\nconst DevApp = () => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst ProdApp = () => {\r\n return ;\r\n};\r\n\r\nwindow._ENV_ = Object.assign(window._ENV_ || {}, { app_version: PackageJson.version });\r\nif (AppStorage.isLoggedIn() && window._ENV_.app_version !== AppStorage.getLoggedInUIVersion()) {\r\n AppStorage.performLogout();\r\n}\r\n\r\nReactDOM.render(process.env.NODE_ENV === 'production' ? : , document.getElementById('root'));\r\n\r\n// If you want to start measuring performance in your app, pass a function\r\n// to log results (for example: reportWebVitals(console.log))\r\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\r\nreportWebVitals();\r\n"],"sourceRoot":""}